Games and Agents: Designing Intelligent Game Play

31
Universiteit Utrecht Games and Agents: Designing Intelligent Game Play

description

Games and Agents: Designing Intelligent Game Play. Contents. Agents for games? Connecting agent technology and game technology Challenges Infrastructural stance Conceptual stance Design stance Conclusions. Agents or scripted characters?. Do we need agents?. Agents for Games?. - PowerPoint PPT Presentation

Transcript of Games and Agents: Designing Intelligent Game Play

Page 1: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Games and Agents:Designing Intelligent Game Play

Page 2: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht April 21, 2023 2

Contents

• Agents for games?• Connecting agent technology and

game technology• Challenges• Infrastructural stance• Conceptual stance• Design stance• Conclusions

Page 3: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht April 21, 2023 3

Agents or scripted characters?

Page 4: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Do we need agents?

April 21, 2023 4

Page 5: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Agents for Games?

• Assume that we want to use agents for creating “intelligent” characters in games.

• Can we use Agent Technology to implement those agents in the games?

• I.e. can we make use of all the tools, techniques and platforms that are developed to implement intelligent agents for the incorporation of agents in games?

• If so, what do we need to do to couple the agent and game technologies?

• Or do we have to start from scratch and develop everything again specially for the game environment?

April 21, 2023 5

Page 6: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Game Engines and AgentsClient side approach

Physics Engine

Animation Engine

Graphics Engine

Input module

Game logic/loop

Sound Engine

Agents

Page 7: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Example: Gamebots

April 21, 2023 7

Page 8: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Multi Agent Systems

Environment

Environment

Environment

AgentAgent Platform

Agent

Agent

Agent

Communication ManagerUser Interface

Environment

Page 9: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Game Engines and AgentsServer side approach

April 21, 2023 9

AgentifiedCharacter

AgentifiedCharacter

AgentifiedCharacter

Physics Engine

Animation Engine

Graphics Engine

Game Engine

Sound Engine

Page 10: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Example: Quake

April 21, 2023 10

Page 11: Games and Agents: Designing Intelligent Game Play

[email protected]@cs.uu.nl

Gam

es a

nd A

gent

sG

ames

and

Age

nts

Games plus Agents

GE, 23.01.08

AgentAgent Platform

Agent

Agent

Agent

Communication ManagerUser Interface

Physics Engine

Animation Engine

Graphics Engine

Game logic/loop

Sound Engine

Input module GE Environment MAS

Control?

Page 12: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Challenges

•Synchronization•Filtering•Communication

April 21, 2023 12

Page 13: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Stances

•Infrastructure•Conceptual•Design

April 21, 2023 13

Page 14: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Solutions

April 21, 2023 14

Infrastructure Conceptual Design

SynchronizationEvent

QueuesTimestamps

Filtering HLA Ontology

CommunicationCommunication

QueueACM

Interaction Patterns

Page 15: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Infrastructural stance: issues

•Information from GE to agents•Actions from agents to GE•Communication between agents

through GE•Time

April 21, 2023 15

Page 16: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Infrastructure: middleware with event queues

April 21, 2023 16

Agent Platform Game Engine

Succeeded?

Requested action

Page 17: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Conceptual stance: issues

•Ontological mapping•Perception and Action•Communication

April 21, 2023 17

Page 18: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Data representation

• Problem: Different data concepts in GE and MAS• World state vs. strategic abstraction level

• Solution: Translation-step during agent sensing on GE-side

• Design issue: Suitable abstraction level (not too low, not too high)

Conceptual Aspects Technical Aspects

- interpretability- efficiency- communication-costs

Page 19: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Control over Perception

• Problem: Perceptual attention for agents• Cannot attend to all information from the environment

• Filtering cannot be performed by GE or MAS alone

• Solution: Subscription-based filtering mechanism• Agent controls sensing: what and when to sense

• Design issue: Balance flow of sensory information (not too much, not too little)

Conceptual Aspects Technical Aspects

- goal-directed/ stimulus-driven

- performance MAS- performance GE- communication-costs

Page 20: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Control over Action Realization

• Problem: Different nature of actions in typical GE and MAS environments

• Modality + Duration

• Solution: Action mechanism for body control + feedback channel

• Dispatch, abort, feedback about status

• Define actions at functional level

• Design issue: Suitable abstraction-level (not too low, not too high)

Conceptual Aspects Technical Aspects

- control- individuality

- efficiency- communication-costs

Page 21: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Communication

• Problem: Different communication in MAS and GE• Method: communicative intent (direct) vs. verbal and nonverbal

communicative behavior (indirect)

• Communication channel: reliable vs. unreliable

• Solution: Communication mechanism.• Allow MAS-communication through simulation environment

• Design issue: Choose method: behavior or intent

Conceptual Aspects Technical Aspects

- interpretability - complexity- efficiency

Page 22: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Middleware Approach

• Bridge conceptual gap using a middleware• Design problems not responsibility of GE or MAS

• Middleware to provide technical facilities:• Translate data representations• Perception/action/communication mechanisms

• Don’t restrict designers in their IVA design, but offer technical solutions to help them realizing their design

• Performance determined by how the facilities are used

• Middleware itself is not part of the IVA design!

• CIGA Framework developed to follow this design approach

Page 23: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

CIGA Framework

• Physical Interface: Connect to simulation environments• E.g. CORE, (UT, CryEngine, Ogre, Delta3D, etc)

• Cognitive Interface: Connect to agent systems• E.g. Jadex, 2APL, BT-based MAS, etc

• Connection Mechanism: Internal message-passing system• Introduced for flexibility and portability• E.g. TCP/IP, Java/C++ bridge

• Ontology Model: contract between GE and MAS• E.g. Specify ontology using: Protégé, custom ontology editors

Page 24: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Games plus Agents

GE, 23.01.08

AgentAgent Platform

Agent

Agent

Agent

Communication ManagerUser Interface

Physics Engine

Animation Engine

Graphics Engine

Game logic/loop

Sound Engine

Event queues

Ontological mapping

DynamicEvent subscription

AGE

Page 25: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Design stance: issues

• How intelligent can an agent behave (boundaries):• Story line

• Game rules (including communication)

• Environment (UI and look and feel)

• Roles

April 21, 2023 25

Page 26: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

IVA Design Issues

• IVA-design is distributed• Physical-layer + Cognitive-layer

• Physical aspects vs. Cognitive aspects

• Cannot design these layers independently

Page 27: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

Design games using OperA

• OperA specifies the boundaries of the behavior of the roles in the game

• OperA indicates landmarks that should be reached that can be used to specify the learning goals

• Agents can fill in the roles in different ways:• Scripted character

• BDI agent

• …

April 21, 2023 27

Page 28: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

OperA example: storyline

April 21, 2023 28

Emergencycall

Createteam

Ambulance

Extinguishfire

Get tolocation

Evaluate situation

start

end

Savevictim

Expert

Page 29: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

OperA example: Scene

April 21, 2023 29

Interaction Scene: save victimRoles Leading_firefighter(1), door_opener(1), fire_extinguisher(1), ambulance(2),

victim(3),

Trigger H people, T victim perceive(H,T)

Results r1 = T victim, safe(T)

InteractionPatterns

PATTERN(r1) = { DONE(T, at(H,T)) BEFORE DONE(B, secure_area), DONE(B, secure_area) BEFORE DeadlineH),

DONE(M, stabilise(H) BEFORE Dead(H)) DONE(T, transport_to_ambulance(H))

}

Norms PERMITTED(E, blow_obstacles)OBLIGED(M,stabilise(T) BEFORE Dead(T))OBLIGED (B, extinguish_fire BEFORE transport(H))

Page 30: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht

OperA example: Roles in a game

April 21, 2023 30

Role: leading firefighter

Objectives Fire_under_control, victims_save

Sub-objectives

{get_to_disaster_location, situation_assessment, plan_of_attack, extinguish_fire, rescue_victims}

Rights Command_team_members, order_ambulance, get_experts

Norms OBLIGED inform(headquarters,plan_of_attack) BEFORE NOW+10IF DO safe(victim) or DO extinguish(fire) THEN PERMITTED damage(building)OBLIGED ensure_safety(team)OBLIGED safe(victims) BEFORE extinguish(fire)

Page 31: Games and Agents: Designing Intelligent Game Play

Universiteit Utrecht April 21, 2023 31

Conclusions

• Intelligence by design only• Several stances needed to cover the connection

between games and agents• Need for a middleware between AT and GE• Infrastructure “easy”• Conceptual connection is domain dependent• Design using an OperA like methodology seems

promising

• What agent technology to use?• What should be done by the agent and what by

the game engine?• Intelligence?