230 likes | 423 Views
Modeling Teamwork in Multi-Agent Systems: The CAST Architecture. Dr. Thomas Ioerger, Jianwen Yin, and Michael Miller Computer Science, Texas A&M University March 21, 2001. Agenda. Teamwork CAST MALLET DIARG Dynamic Role Selection Conclusions. What is a Team?. Definition of a Team
E N D
Modeling Teamwork in Multi-Agent Systems: The CAST Architecture Dr. Thomas Ioerger, Jianwen Yin, and Michael Miller Computer Science, Texas A&M University March 21, 2001
Agenda • Teamwork • CAST • MALLET • DIARG • Dynamic Role Selection • Conclusions
What is a Team? • Definition of a Team • A group of entities that are working together to achieve a shared (or common) goal • Team needs • Coordination • Sharing of information • Distributed decision-making • Focus of (human) teamwork optimizations • Situational awareness • Communications efficiency • Effectiveness of group decision-making
Previous work on Teamwork • Multi-agent teams • Cohen & Levesque’s joint intention theory • Planning and plan specification/recognition • Team-oriented programming • STEAM based on SOAR by Tambe based on joint-intentions • Grosz’s Shared Plans • Psy. Research on Human Team-Training • Shared mental models
Issues in Multi-Agent Team Training System Design • How to represent a team? (Team ontology and MALLET) • How to effectively reason about other team members’ roles and beliefs to collaborate? • How to initiate communication? (DIARG)
Shared Mental Model • Team structure: roles • responsibilities for individual steps in plans • mutual belief assumption • Team process = team plan • use Petri Nets as an approximate finite and computable model of team process • use the token flow in Petri Nets to monitor and track the plan execution) B A start D end C
From teamwork to agent model • A compositional multi-agent architecture
CAST (Collaborative Agents for Simulating Teamwork) • Model effective teamwork by capturing team structures and teamwork process • Enable agents in a team to have flexibility for adapting the team to changes in the environment
Team Process and Structure Related Domain Knowledge in MALLET CAST MALLET Parser and offline DIARG Petri Nets Reactive Action Rules and Agent Beliefs in JARE Information Flows JARE CAST Kernel Java Implementation for Domain Related OPs Actor Interface Env. Simulator CAST Architecture
MALLET (Multi-Agent Logic Language for Encoding Teamwork) • Basic Object Type Predicates • Actions and Plans • Responsibilities • Capabilities • Belief • Communication
MALLET Specification • Team plans • role specifications (with constraints) • process specification (team-plan make-dinner (?entrée) (role shopper ?X (has-money ?X)) (role cook ?Y ) (process (if (need-ingredients ?entree) (sequence (do ?X (go-to store)) (do ?X (buy-ingredients ?entrée))) (parallel (do ?Y (prepare ?entrée)) (do ?X set-table)) (forall ?Z (team-member ?Z) (do ?Z eat)) (do-all (clean-up dishes)))) // an `AND’ team-operator
Team Operators • Joint actions & coop-mode • and: lifting a couch together • xor/or : hitting a volleyball • Team operator • team, co-mode, arguments • precond, postcond
Responsibilities • Responsibilities are relationships between a set of roles, a goal, and a stage, represented as Responsibility(<role-set>, <goal>, stage) • Redundant responsibilities: Or- responsibility(<role-set>, <goal>, stage) • Shared competitive responsibilities: Xor-responsibility(<role-set>, <goal>, stage) • Shared complementary responsibilities: And- responsibility(<role-set>, <goal>, stage)
Capabilities • Capabilities are relationships between roles and actions, which is represented as Capability(<role-set>, <action>) • Backup capability: Or- capability(<role-set>, <action>) • Shared competitive capability: Xor- capability(<role-set>, <action>) • Shared conflicting capability: And- capability(<role-set>, <action>)
Three Major Algorithms • Petri Net generation algorithm • DIARG • Dynamic role selection
Petri Nets • place/transition Petri nets vs. PrT nets • propositional first-order predicate • PrT nets vs. logic programs • happy(x) cat(x), purrs(x). • Concurrence • Firing rule vs. meta-predicates
sub-net sub-net start end sub-net start sub-net end Petri Net Generation • Sequential process • Parallel process
Petri Net Generation (Cont.) • If process sub-net Then cond else cond sub-net start end
DIARG (Dynamic Inter-Agent Rule Generator) • Proactive information exchange • inferring what might be needed for others to complete their (current) tasks • Proactively provide timely information • Reduce communication overhead • Examines needers and providers of information in order to allow dynamic generation of information flow
Dynamic Role Selection • Whenever there is a choice on who performs an action (i.e.role redundancy) • Postpone role selection until reach the individual plan or individual operator level • Might need to communicate to… • resolve ambiguities of responsibility • synchronize for joint actions • Advantages • Provide flexibility in team formation • Others can play “backup” role, in case of failure • Improve teamwork efficiency, Balance workload
Future Work • Simulating more dynamic teams • handling failures, load-balancing, delegation, unreliable agents • Handling more types of communication • resolving conflicting information • situation assessment (cognitive models) • Reasoning about agent capabilities • Goal regression and planning • User-modeling: inferring state/beliefs/intent from monitoring actions
Conclusions • First version (CAST 1.0) running now • see demo • Target domains: Team Training • AWACS • Fire Fighting • Army Brigade Operations Staff • NASA Flight Controllers
Acknowledgements • Dr. Richard Volz, Dr. John Yen, Dr. Dianxiang Xu • Heejin Lim, Sen Cao, Yue Zhou, Xueqi Cheng, Colby Johnson