Managing interaction between users and agents in a multiagent storytelling environment Mark Riedl, C.J.Saretto and R.Michael Young From the Proceedings.

Slides:



Advertisements
Similar presentations
Use Case Diagrams Damian Gordon.
Advertisements

Lectures on File Management
Use Case & Use Case Diagram
Dynamic Modeling. Dynamic Modeling with UML Interaction diagram –Dynamic behavior of a set of objects arranged in time sequence –Interaction between objects.
The Zebra Striped Network Filesystem. Approach Increase throughput, reliability by striping file data across multiple servers Data from each client is.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Chapter 12: Expert Systems Design Examples
Conversation Form l One path through a use case that emphasizes interactions between an actor and the system l Can show optional and repeated actions l.
1 Soar as a Story Director Brian Magerko University of Michigan.
Banker’s Algorithm Implementation in CPN Tools Michal Žarnay Department of Transportation Networks University of Žilina, Slovakia.
The Architecture Design Process
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
Requirements Elicitation Chapter 4. Establishing Requirements Two questions –What is the purpose of the system –What is inside and what is outside the.
IPv6 Mobility David Bush. Correspondent Node Operation DEF: Correspondent node is any node that is trying to communicate with a mobile node. This node.
Introduction to Databases Transparencies
IP layer restoration and network planning based on virtual protection cycles 2000 IEEE Journal on Selected Areas in Communications Reporter: Jyun-Yong.
Modeling System Events Adapted from: Systems Analysis and Design in a Changing World, 2nd Edition by John W. Satzinger, Robert Jackson and Stephen Burd.
Software Testing and Quality Assurance
Lesson 6. Refinement of the Operator Model This page describes formally how we refine Figure 2.5 into a more detailed model so that we can connect it.
Lesson 1: Configuring Network Load Balancing
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
Transaction. A transaction is an event which occurs on the database. Generally a transaction reads a value from the database or writes a value to the.
Memory Management Last Update: July 31, 2014 Memory Management1.
CMPT 275 Software Engineering
Distributed Deadlocks and Transaction Recovery.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Chapter 3 Use Cases.
WMS systems manage and coordinate several independent subtasks. The coordination problems get even more serious when the subtasks are performed on separate.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
(C) 2009 J. M. Garrido1 Object Oriented Simulation with Java.
European Network of Excellence in AI Planning Intelligent Planning & Scheduling An Innovative Software Technology Susanne Biundo.
Addressing design Goals  We decompose the system to address complexity  Assigning each subsystem to team to work on  But we also need to address system.
Computer Science CPSC 322 Lecture 3 AI Applications 1.
© American Association of Artificial Intelligence 2002 Sex, Lies and Video Games: An Interactive Storytelling Prototype Marc Cavazza, Fred Charles, Steve.
Interaction Modeling. Overview The class model describes the objects in a system and their relationships, the state model describes the life cycles of.
Interaction Modeling. Introduction (1) Third leg of the modeling tripod. It describes interaction within a system. The class model describes the objects.
Topics for Today Task planning for non-player characters Coping with player character interactions and their effect on narrative In Hamlet on the Holodeck,
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
Linux Operations and Administration
1 Modeling interactions and behavior Lecturer Dr. Mai Fadel.
Unit-1 Introduction Prepared by: Prof. Harish I Rathod
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Failure Analysis Requirements Maintenance. Anticipating Failure ● We cannot engineer away all possible failures – System only has partial control over.
SECURE WEB APPLICATIONS VIA AUTOMATIC PARTITIONING S. Chong, J. Liu, A. C. Myers, X. Qi, K. Vikram, L. Zheng, X. Zheng Cornell University.
PLANNING How To Best Meet Your Mission We must plan for the future, because people who stay in the present will remain in the past. Abraham Lincoln.
Artificial Intelligence 2005/06 Partially Ordered Plans - or: "How Do You Put Your Shoes On?"
Union-find Algorithm Presented by Michael Cassarino.
37 Copyright © 2007, Oracle. All rights reserved. Module 37: Executing Workflow Processes Siebel 8.0 Essentials.
1 Kyung Hee University Statecharts Spring Kyung Hee University Specifying Objects’ Behaviour  Interaction diagrams show message-passing behaviour.
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
Introducing Project Management Update December 2011.
On-board Timeline Validation and Repair: A Feasibility Study Maria Fox, Derek Long University of Strathclyde, Glasgow, UK Les Baldwin, Graham Wilson, Mark.
Interpersonal Relationships in Group Interaction in CSCW Environments Yang Cao, Golha Sharifi, Yamini Upadrashta, Julita Vassileva University of Saskatchewan,
A Genetic Algorithm Approach To Interactive Narrative Generation TeongJoo Ong and John Leggett Texas A&M University.
State Modeling. Events An event is an occurrence at a point in time, such as user depresses left button or.
Mike Graves Summer 2005 University of Texas at Dallas Implicit Invocation: The Task Control Architecture Mike Graves CS6362 Term Paper Dr. Lawrence Chung.
Systems Analysis and Design in a Changing World, Fourth Edition
A Lattice Model of Secure Information Flow By Dorothy E. Denning Presented by Drayton Benner March 22, 2000.
CSC 411/511: DBMS Design Dr. Nan WangCSC411_L12_JDBC_MySQL 1 Transations.
CSCI 383 Object-Oriented Programming & Design Lecture 20 Martin van Bommel.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
Time Management.  Time management is concerned with OS facilities and services which measure real time.  These services include:  Keeping track of.
Interstage BPM v11.2 1Copyright © 2010 FUJITSU LIMITED CREATING A SIMPLE PROCESS.
Configuring the User and Computer Environment Using Group Policy Lesson 8.
Studio modeling basics
Bob Wray, Charles Newton, Victor Hung, Norb Timpko 7 Jun 2017
Design for Quality Design for Quality and Safety Design Improvement
Presentation transcript:

Managing interaction between users and agents in a multiagent storytelling environment Mark Riedl, C.J.Saretto and R.Michael Young From the Proceedings of the Second International Conference on Autonomous Agents and Multi- Agent Systems, June, 2003.

Question

An approach to manage the interaction of human users with computer-controlled agents in an interactive narrative-oriented system.

Research on Interactive Narrative Systems John Laird, University of Michigan. Interactive Computer Games. Michael Mateas & Joe Bates, Carnegie- Mellon. OZ research group: character-based, “believable agents” Marc Cavazza, University of Teesside. Character-based. Voice recognition. R.Michael Young, NC State Univ. Liquid Narrative research group. Mimesis project.

Liquid Narrative Interactive experiences within 3D virtual worlds where the action in these worlds are Structured as a compelling story, Generated automatically each time a user interacts with the world, Conveyed to the user using effective narrative discourse, and Significantly altered by and adapted to the user’s interaction during the course of the story

Question refined

How narrative mediation works Story = a setting + a beginning + an end + series of actions with consequences (coherence: user comprehends the relationships between events) Setting = the virtual world Beginning = the state of the virtual world when the user enters it as an actor (initial state) End = a set of conditions that must all be satisfied (goal state)

How narrative mediation works User can choose any available action Most actions do not alter the plan Consistent: matches a prescribed action Constituent: none of its effects interact with any of the plan’s remaining structure But some do Exceptional: one or more of its effects threatens the conditions in the world required for future actions

Accomodation Small changes to narrative plan Requires replanning

Intervention System must detect exceptions and respond in a manner which preserves coherence of the narrative and preserves the user’s sense of control Replace user’s exceptional action with an instance of an action called a failure mode A failure mode has the same nature as the exceptional action, but effects of the failure mode produce results that do not conflict with any of the causal structure of the plan.

An Example The story is set on a small island. There is a vending machine on the island as well as a drawbridge leading off the island. The vending machine and drawbridge are both coin operated. There is a player character named Bob on the island.

The Beginning and End The story begins with Bob on the island. Bob has a coin in his possession. OnIsland(Bob) At(Start, Bob) Has(Coin1, Bob) The story ends when Bob successfully travels off the island. ~OnIsland(Bob)

Failure Modes

Initial Plan bridge example

User’s actions: User (Bob) decides to go to vending machine and put coin in the vending machine. Problem: Bob will need coin later for the bridge

Controller’s choices Intervene by substituting the failure mode Refund for Buy. Intervene by substituting the failure mode BrokenBuy for Buy. Accommodate the action Buy, but create a new subplot that results in the drawbridge being open. Perhaps place a new coin in the world for Bob to find, or create a new character to open the bridge for Bob.

Revised plan bridge example

Implementation: The Mimesis System  Mimesis Controller (MC) = the planner and the intelligent controller  A modified version of Unreal Tournament (UT) = Mimesus Unreal Tournament Server (MUTS) UT is procedural (does not utilize any formal model of the characters, setting or actions) modifications to UT are written in UnrealScript which is Java-like (object-oriented)

UnrealScript Class

Longbow hierarchical partial-order causal link planner (or DPOCL: Decompositional Partial-Order Causal-Link Planner) Generates a plan by determining a series of actions (including user’s) which when applied to the initial a state of the problem space in a given order will lead to the goal state. Similar to partial-order, causal link and HTN-style planning systems. Contains explicitly marked temporal relationships between all actions. Contains causal links between 2 plan steps when the first step establishes a condition needed by the second step. Temporal and causal structure can be used to determine when a user’s action might interfere with the soundness of the plan’s future actions.

A DPOCL Action

Planning for Exceptions Mimesis generates a narrative plan specifying all actions of the story world Causal structure of the narrative plan is analyzed for possible exceptions For every causal link, MC identifies every action that 1. could be performed by the user during the interval spanned by the link, and 2. the action results in the opposite effect of the causal link. For every causal link/user-performed action pair, the MC creates an entry in the mediation policy.

Bank Example Sam, the character controlled by the user, is a nighttime guard at a bank. The bank has a vault in which there is a large amount of gold. One night that Sam is on duty, the bank owner comes into the bank, opens the vault and begins removing the gold. Sam’s suspicions are aroused and Sam takes action to stop the bank owner from removing the gold.

A Narrative Plan bank example

Mediation Policy failure modes are not shown

Example of accommodation (Policy B) Sam has a key that opens the vault. Sam goes to the vault and opens the vault before the bank owner arrives. If this exception were not detected by the Mediator, the bank owner would attempt to open the vault even though the vault door was open.

Revised Plan bank example

Low-level control of Exception Management Mediator: an UnrealScript object. Intercepts the requests from players to the server for an action. Players inform Mediator of any event that occurs to them, e.g., bumping into a wall, or another character coming into view Execution Monitor: responsible for driving the story’s action by building a DAG

Mediator Execution Monitor passes commands for actions from the user to the Mediator. Compares each user action to the mediation policy for the current plan. User actions that do not match the action of any entry in the policy whose interval covers the current time point are consistent or constituent and are relayed back to the Execution Monitor. Constituent actions are added to the execution DAG and allowed to execute. User actions which match an entry are characterized as exceptions and are handled by accommodation or intervention. Informs the MC of the nature of the exception and its response.

Execution Monitor Receives the narrative plan from the MC at startup and creates from it a DAG of execution order. Nodes are the operations that all agents are to perform throughout the duration of the narrative Arcs represent a restriction that the source node must successfully complete before the destination node’s operation can begin. Schedules execution based on the DAG: executes actions with no unexecuted predecessors. Updates the DAG to reflect the completion status of all actions that have finished Cannot execute user actions. Instead creates a placeholder operation whose execution suspends until the Execution Monitor detects that the user has achieved the intended operation’s success conditions.

Exception DAG ambush example

Production of New Mediation Policy When the Mediator accommodates, the MC produces a new mediation policy for the new narrative plan. When the Mediator intervenes, the MC might produce a new mediation policy because the user might decide to repeat the action that gave rise to the current exception.

Choosing between Accommodation and Intervention QUALITATIVELY Accommodation can lead to replanning which could lead to actions that are left with no causal role in the plan. This can damage the overall coherence of the story. Intervention can cause the user to become aware that his/her actions are restricted (especially true when the user repeatedly attempts to perform the same exceptional action) QUANTITATIVELY Whenever a new plan is constructed, a heuristic function is called to rank the narrative structure of the story world that would result from using the new plan against the narrative structure of the story worlds that would result from using the original narrative plan with an intervention. Each possible failure mode is considered.

Heuristic Function Takes 3 arguments: history: the plan fragment that has executed in the story world leading up to the exception action: either the proposed failure mode or the exceptional action future: a plan fragment specifying the action in the story yet to occur. The highest ranked action sequence is added as the response entry in the policy for the exception being analyzed.

Run-Time Management  The MUTS gets a mediation policy at start up and after every exception.  The MC does not generate them as needed.  Instead proactively computes policies for plans other than the one that is currently executing during periods when the user executes sequences of actions that are consistent and constituent (downtimes).  Policy trees are constructed: node = pairs a narrative plan and its mediation policy arc = connects an exception in the source node’s policy to a new plan/policy pair that is to be used as the exception ‘s response.  Trees are searched in breadth-first order (dependent on which exception will occur first) or best-fit order (dependent on which exception is most likely to occur first).

Future work Dealing with a sequence of actions which build up to an exception Assisted intervention – other characters, or a sequence of actions

Some Results

References R. Michael Young, Mark O.Riedl, Mark Branly, Arnav Jhala, R.J. Martin, C.J. Saretto, An architecture for integrating plan-based behavior generation with interactive game environments. Submitted for Publication in Journal of Game Development. C.J. Saretto, R. Michael Young, Mediation in Mimeses Liquid Narratives C.J. Saretto. Mediating User Interaction in Narrative-Structured Virtual Environments. Masters Thesis. NC State University M. Cavazza, F. Charles, S.J. Mead. Character-based interactive story- telling. IEEE Intelligent System, 17(4),

Plan Space

Actor-based conference

Initial hypothesis hero example

Failure Mode bridge example

Converting a DOPCL Plan

Example of Mediation Plan

An Example bridge

Architecture

Discourse Plan

Complete Discourse Plan

DPOCL Operators bridge example

A Plan gun example

DPOCL Plan Fragment ambush example

Longbow and DOPCL ambush example

A Plan Operator bank example

User interaction