Title: Collaboration with Agents in VR Environments
1Collaboration with Agents in VR Environments
- Ján CÃger
- jan.ciger_at_epfl.ch
- Virtual Reality Laboratory, EPFL
2Outline
- Introduction
- Motivation
- Objectives
- Related work
- Research results
- Symbolic representation of the VRE
- Collaboration model
- Collaborative problem solving
- Multi-agent simulation framework
3Outline
- Case studies
- Box world, Eye tracking
- Virtual guide
- Natural language interface
- Interface for problem solving
- Declarative story specification for VRET
- Riot in the city
- Conclusions Future work
4Motivation
- Problems of current VR applications
- Single purpose, hardwired
- User unable to choose own approach/pace
- Difficult to extend and reuse components
- No plugplay for new objects
- Lack high-level metadata
- Impossible or very difficult to reason about
5Motivation
- User's control over VR applications with virtual
characters - Strong
- Everything scripted, predefined
- Common in games
- Very complex, laborious to develop
- Weak
- Autonomous characters, agents
- Non-deterministic, problematic for therapy,
training, storytelling
6Motivation
- User's control over VR applications with virtual
characters - Intermediate ?
- Characters smart enough to be able to do the
boring parts alone - Characters controllable enough to keep the user
in charge - Neither scripting and neither fully autonomous
agents are suitable
7Objectives
- Unified semantic representation of the VRE
- Enable reasoning
- Enable reusability of components
- Different modes of control
- Let the user choose his pace, method
- Let the user retain control
8Objectives
- Collaboration problem solving
- Let the machine do the hard/boring work
- Machine should be smart enough to be able to
find the solution by itself
9Related work
- Semantic information for animation/reasoning
- Object-specific reasoning (Levison 1996)
- Informed environment (Farenc 1999)
- Parametrized action representation (Badler 2000)
- Task definition language (Vosinakis 2003)
- Smart objects (Kallmann 2001, Abaci 2005)
10Related work
- Human-agent
- STEVE (Rickel 1997)
- Jacob (Evers 2000)
- Intelligent guide (Doyle 1997)
11Related work
- Collaborative systems
- Agent-agent or mixed
- STEAM, TEAMCORE, RoboCup (Tambe 1997-2000)
- NASA training systems (Miller 2000)
12Related work
- Theories techniques - collaboration
- Partial Global Planning (Durfee 1991)
- Joint intentions (Jennings 1992-2000)
- Shared plans (Grosz 1999, Rich 1997)
- Task delegation
- Theory - Ioerger 2001
- Open Agent Architecture - Cohen 1994, Martin 1999
13Related work
- Action (non-)planning
- GOLOG (Lespérance 1999)
- Cognitive modelling (Funge 1999)
- Hierarchical planners (Baxter 2000, Alonso 2000)
- Action planning (iterative)
- BDI (Bratman 1987)
- Rule-based (Soar Newell, 80-ties)
- Procedural Reasoning System (Georgeff 1992)
- ItPlanS (Badler 1994)
14Related work
- Action planning (propositional)
- STRIPS (Fikes 1971)
- UCPOP (Penberthy 1992)
- Prodigy (Veloso 1995)
- Graphplan (Blum 1997)
- Sensory Graphplan (Weld 1998)
- Fast Forward (Hoffmann 2001, 2003)
15Outline
- Introduction
- Motivation
- Objectives
- Related work
- Research results
- Symbolic representation of the VRE
- Collaboration model
- Collaborative problem solving
- Multi-agent simulation framework
16Symbolic representation of the VRE
- Environment representation
- State - Gino is ready
- Qualitative relationships - A is adjacent to B
- Quantitative properties - Agent A is 30
thirsty - General rules - Agent cannot be in two places at
the same time - Partial vs. full observability
17Symbolic representation of the VRE
- State, qualitative and quantitative properties
- Predicates, PDDL notation
- (blue sky)
- Numeric fluents functions of arity N
- (distance ?x ?y)
- Closed world assumption
18Symbolic representation of the VRE
- Rules of the game - axioms/invariants
- If the agent is near object he has to be at the
same place as the object
(implies (and (near ?agent ?object)
(at ?object ?place) (not (at ?agent
?place))) (not (near ?agent ?object)))
19Symbolic representation of the VRE
- Task representation
- Imperative
- Specify both goal and solution method
- Declarative
- Specify only goal, solution is up to the recipient
(move A X Y)
(at A Y)
20Symbolic representation of the VRE
- Action semantics
- STRIPS derived (PDDL 2.1 subset), operators
- Preconditions (when is the action allowed)
- Effects (what are the results of the action)
(action preparepush params (?X ?Y) precond
(and (at ?X ?P) (at ?Y ?P)
(agent ?X) (place ?P))
effect (pushing ?X ?Y))
21Symbolic representation of the VRE
- Challenges
- De-coupling between animation and semantics
- Actions can have side-effects
- Human-agent communication
- Common language?
- Translators
22Collaboration model
- Facilitator
- delegated computing by Cheyer Martin
- Simplified facilitator
- Simpler
- Faster
- - No automatic taskdecomposition
23Collaboration model
- Facilitator
- Global store of the world state
- Data vs. procedural solvables
- Request matching against available capabilities
- Request matching
- Unification
- Simple compound requests
24Collaboration model
- Teamwork
- No notion of team in OAA-like systems
- By design nobody knows his collaborators
- Works well for service agents
- Impractical for VR, human-like characters
- Solution - explicit dynamic team creation
- No need to predefine/hardwire the team
- Agent commits to the team
25Collaboration model
- Team forming
- Modification of Contract Net protocol
26Collaboration model
- Team roles
- Teammate
- Leader
- Coordinates activities
- Fits better the human-agent case
- Most common hierarchy in human society
- Manager vs. employee
- Military chain of command
27Collaboration model
- Position of the human user
- Direct interaction
- I will do it myself
- Teamwork with one or multiple collaborators
- Help me with this, please
- High level teamwork
- I want this to be true ...
28Collaborative problem solving
29Collaborative problem solving
- Planning
- Delegated actions
- Speculative planning
- somebody will be able to do it
- Delegate the responsibility for the task
- Protoagents
- Dummy agents used for planning
- Enable planning before team is available
- Substituted for real agents after the team is
formed - Plan using protoagents generic plan
30Collaborative problem solving
- Protoagents
- self denotes the agent requesting planning
- Recruiting teammate maps protoagent to real agent
- Disbanding team undefines the mapping
- Delegated action operator can be instantiated
only for already recruited agent - Forces team forming during planning
31Collaborative problem solving
- Multi-stage planning
- Leader receives task
- Leader plans and creates team-plan using
delegated actions - Team member can plan further to elaborate the
delegated action
32Collaborative problem solving
- Object-specific planning
- Agents can learn new actions by exploration
- Extension of smartobjects
- Semantic informationis added
- Properties
- Possible actions(operator animation)
33Multi-agent simulation framework
- Implementation of the presented concepts
- Visualization and animation engine
- VHD or Delta3D
- Facilitator
- Planning agents
- Auxiliary agents
- Application/domain specific agents
34Multi-agent simulation framework
- Implementation of the presented concepts
35Multi-agent simulation framework
- Ghosts puppets
- Puppet is an abstraction layer
- Ghost is an agent (autonomous or interface)
- Puppet is body, ghost is the brain
- Ghost can assert control over puppet(s) possess
it
36Multi-agent simulation framework
- Ghosts puppets
- Controllability
- User/agent can take over errant character
- Additional stimulation by trainer/therapist
- Control sharing exchange
- Assisted interaction
- Information access
- Access low level information in a generic way
37Multi-agent simulation framework
- Ghost's activity loop
- Sensing
- Autonomous activity
- Fail-safe execution
- Repeat
- If nothing to do
- Wait for delegated task
- Perform idle activity
38Multi-agent simulation framework
- Technology
- Python - agents
- CORBA - communications
- C/C - planner, visualization
- Qt toolkit, PyGame UI agents, HW interfaces
39Outline
- Case studies
- Box world, Eye tracking
- Virtual guide
- Natural language interface
- Interface for problem solving
- Declarative story specification for VRET
- Riot in the city
- Conclusions Future work
40Case studies
- Box World
- Simple testbed
- Validate the facilitator concept
- Move boxes around
- Door needs to be opened by partner (agent or
human)
41Case studies
- Eye tracking ghost
- Two modes
- Follow my gaze!
- Go there!
- Evaluate usability of gaze tracking
42Case studies
43Case studies
- Virtual guide
- Let the user explore virtual museum
- Multimodal interface
- Two modes
- Direct exploration
- Follow the guide
- Let the user choose his own way
44Case studies
45Case studies
- Natural language interface
- Experimental translator agent
- Translate written English to task specification
- Chat-like interface
46Case studies
- Interface for problem solving
- Attempt to make generic interface to the
framework - Suports
- Introspection
- Action scheduling
- Action pre-validation
- Task delegation
- Grants full observability to the user (god mode)
47Case studies
- Interface for problem solving
48Case studies
- Declarative story specification for VR exposure
therapy - Requirements Believable, Reproducible,
Controllable - Non-expert user
- I want this to happen, arrange it!
- I want this amount of stimuli
- Action scheduler
49Case studies
- Declarative story specification for VR exposure
therapy - Virtual bar (social phobia treatment)
- Variable amount of background activity
50Case studies
- Riot in the city
- Mockup of a training system for crowd management
- Two modes of control
- Direct user is the policeman at the scene
- Indirect user is the commander coordinating the
forces - Units are smart able to solve high-level tasks
- Block this street!
- Protect this building!
51Case studies
52Case studies
53Case studies
- Riot in the city
- Large scale scenario
- 90 agents
- 1000 people in the crowd
- 20 policemen, 20 cars
- Parallel execution of certain actions (movement)
- Breaks total ordering, potential problem
- Multiple planners (performance)
54Outline
- Case studies
- Box world, Eye tracking
- Virtual guide
- Natural language interface
- Interface for problem solving
- Declarative story specification VRET
- Riot in the city
- Conclusions Future work
55Conclusions Future work
- Summary of the research
- Different control modes
- Ghosts puppets enable multiple modes selectable
at runtime - User is given choice
- It is possible to intervene manually, if needed
- Task delegation
- Difficult or boring tasks can be given to the
machine
56Conclusions Future work
- Summary of the research
- Automatic sub-task solving
- Agents capable to solve sub-problems
autonomously - Teamwork
- Collaboration with others helps solve tasks
unsolvable otherwise - Delegated actions
- Team planning
57Conclusions Future work
- Contributions
- The ghost puppets framework
- Knowledge and semantic information representation
in the virtual environment - A multi-agent collaborative simulation framework
based on task delegation, facilitation and
planning - Delegated actions in standard STRIPS-like
planners - Object-speci?c planning
58Conclusions Future work
- Future work
- Problem of state consistency
- Side effects
- Disconnect between reality and computed state
- Sub-teams
- Agent leading a smaller team focused on a
subproblem - Agent autonomy vs. controlability
- Agent's desires and goals of the user may be
contradictory
59Conclusions Future work
- Future work
- Facilitator improvements
- Better data storage backend (faster unification)
- Multiple facilitators with replication
- Data partitioning, deeply recursive queries
60- Thank you for your attention ...