cosecivi'14 - separating the autonomous behaviors and coordination of npcs
TRANSCRIPT
![Page 1: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/1.jpg)
SEPARATING THE AUTONOMOUS BEHAVIORS
AND COORDINATION REGIMES OF
NON-PLAYER CHARACTERS
Gonzalo Milla-Millán and Juan Fdez-Olivares
Department of Computer Science and Artificial Intelligence, CITIC-UGR, University
of Granada, Spain
![Page 2: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/2.jpg)
A Motivating Example
A motivating example (extracted from [1]):
Jerry and George want to leave a room, and so they
independently walk towards the door, which can only fit
one person through at a time. Jerry graciously permits
George to leave first.
![Page 3: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/3.jpg)
Overview
Goals:
Reduce the authoring effort in Interactive Storytelling (IS) systems (bottleneck in the development process)
Provide story variability (improves user’s experience)
Means:
Separate the autonomous behaviors of NPCs from their coordinations regimes
Authoring framework to encapsulate the knowledge and allow for its reuse
Narrative engine to use the encapsulated knowledge in order to automatically generate varied stories
Implementation using Hierarchical Task Network (HTN) planning
![Page 4: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/4.jpg)
Authoring Framework
Physical Aspects of the virtual world
Context Model (a room with a door, positions of the NPCs, etc.)
Autonomous NPCs present in the world (Jerry and George)
Basic capabilities performable by NPCs that can alter the world (walk-to-door, cross-door)
Goal-oriented and context-dependent autonomous behaviors ( Leave-room : (walk-door cross-door) || (cross-door) )
Coordination regimes
Interdependencies (require-door-available / not-require-door-available)
Operational Relationships ( (Jerry < George) || (George < Jerry) )
![Page 5: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/5.jpg)
Authoring Framework
The physical aspects of the virtual world are common
Behavior profiles and coordination regimes are encoded separatedly, relying on the common physical aspects of the virtual world.
Behavior profiles are collections of goal-oriented autonomous behaviors, which can be organized in libraries and assigned to NPCs.
Coordination Regimes are encoded separatedly from the autonomous behaviors and can also be grouped in libraries.
![Page 6: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/6.jpg)
Decentralized Narrative Engine
n Actor agents + 1 Performance Director (Actor != NPC)
1. The Performance Director (PD) sends to each actor her narrative goal (e.g., leave room)
2. Each Actor (A) sends back to the PD her intended autonomous behavior (e.g., walk-door cross-door)
3. The PD applies the Coordination Regime (e.g., require-door-available + (Jerry < George)) to the set of intended autonomous behaviors proposed by each actor
4. The output is a coordinated story
![Page 7: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/7.jpg)
Authoring using HTN planning
![Page 8: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/8.jpg)
Authoring using HTN planning
![Page 9: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/9.jpg)
Authoring using HTN planning
Door
availability
is NOT
managed
![Page 10: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/10.jpg)
Authoring using HTN planning
![Page 11: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/11.jpg)
Authoring using HTN planning
Door
availability
IS managed
![Page 12: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/12.jpg)
Authoring using HTN planning
;; The virtual world is represented using ground predicates according
;; to the context model
(init:
(NPC-in-room jerry room1) (NPC-in-room george room1)…)
;; The narrative goals are represented using ground goal tasks
(:goal
(task-goal (Leave-room jerry)))
![Page 13: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/13.jpg)
Narrative Generation using HTN
planning
Examples of Coordinated Stories
1. ( ( [ (1 walk J D) (1 walk G D) ] ) (2 cross J D) (3 cross G D) )
2. ( ( [ (1 walk J D) (1 walk G D) ] ) (2 cross G D) (3 cross J D) )
3. ( ( [ (1 walk J D) (1 walk G D) ] ) ( [ (2 cross J D) (2 cross G D) ] ) )
World
![Page 14: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/14.jpg)
Conclusion
Separation of autonomous behaviors from coordination regimes
Reduce authoring effort (by allowing reuse of knowledge)
Provide story variability
Authoring framework
Decentralized narrative engine
Use of HTN planning by both the actors and performance director agents ensures the compliance of the generated narrative with the constraints imposed by
The behavior profiles of the involved NPCs
The applicable coordination regime
![Page 15: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/15.jpg)
Future Work
More complex behaviors for NPCs ([2])
Consider more types of interdependencies ([1])
Integration with a Game Engine (Unity3D)
Integration of the player (continual planning approach: execution + monitoring + repair/replan)
Dynamic management of the applicable coordination regime (operational relationships that evolve along time, interdependencies managed according to an evaluation function for the dramatic value of the narrative, etc…)
Different layers of knowledge for interaction (e.g., social relationships)
![Page 16: CoSECiVi'14 - Separating the autonomous behaviors and coordination of NPCs](https://reader033.vdocuments.mx/reader033/viewer/2022060204/559f6c311a28ab0d1e8b4869/html5/thumbnails/16.jpg)
Bibliography
1. Smith, B. L.; Tamma, V. & Wooldridge, M. An ontology for
coordination. Applied Artificial Intelligence, Taylor &
Francis, 2011, 25, 235-265
2. Paul, R.; Charles, D.; McNeill, M. & McSherry, D. MIST: an
interactive storytelling system with variable character
behavior Interactive Storytelling, Springer, 2010, 4-15