Programming Multi-Agent Systems in AgentSpeak using Jason (Wiley Series in Agent Technology)

Preface. 1 Introduction. 1.1 Autonomous Agents. 1.2 Characteristics of Agents. 1.3 Multi-Agent Systems. 1.4 Hello World! 2 The BDI Agent Model. 2.1 Agent-Oriented Programming. 2.2 Practical Reasoning. 2.3 A Computational Model of BDI Practical Reasoning. 2.4 The Procedural Reasoning System. 2.5 Agent Communication. 3 The Jason Agent Programming Language. 3.1 Beliefs. 3.2 Goals. 3.3 Plans. 3.4 Example: A Complete Agent Program. 3.5 Exercises. 4 Jason Interpreter. 4.1 The Reasoning Cycle. 4.2 Plan Failure. 4.3 Interpreter Configuration and Execution Modes. 4.4 Pre-Defined Plan Annotations. 4.5 Exercises. 5 Environments. 5.1 Support for Defining Simulated Environments. 5.2 Example: Running a System of Multiple Situated Agents. 5.3 Exercises. 6 Communication and Interaction. 6.1 Available Performatives. 6.2 Informal Semantics of Receiving Messages. 6.3 Example: Contract Net Protocol. 6.4 Exercises. 7 User-Defined Components. 7.1 Defining New Internal Actions. 7.2 Customising the Agent Class. 7.3 Customising the Overall Architecture. 7.4 Customising the Belief Base. 7.5 Pre-Processing Directives. 7.6 Exercises. 8 Advanced Goal-Based Programming. 8.1 BDI Programming. 8.2 Declarative (Achievement) Goal Patterns. 8.3 Commitment Strategy Patterns. 8.4 Other Useful Patterns. 8.5 Pre-Processing Directives for Plan Patterns. 9 Case Studies. 9.1 Case Study I: Gold Miners. 9.2 Case Study II: Electronic Bookstore. 10 Formal Semantics. 10.1 Semantic Rules. 10.2 Semantics of Message Exchange in a Multi-Agent System. 10.3 Semantic Rules for Receiving Messages. 10.4 Semantics of the BDI Modalities for AgentSpeak. 11 Conclusions. 11.1 Jason and Agent-Oriented Programming. 11.2 Ongoing Work and Related Research. 11.3 General Advice on Programming Style and Practice. A Reference Guide. A.1 EBNF for the Agent Language. A.2 EBNF for the Multi-Agent Systems Language. A.3 Standard Internal Actions. A.4 Pre-Defined Annotations. A.5 Pre-Processing Directives. A.6 Interpreter Configuration. Bibliography.

[1]  John R. Searle,et al.  Speech Acts: An Essay in the Philosophy of Language , 1970 .

[2]  C. Raymond Perrault,et al.  Elements of a Plan-Based Theory of Speech Acts , 1979, Cogn. Sci..

[3]  Reid G. Smith,et al.  The Contract Net Protocol: High-Level Communication and Control in a Distributed Problem Solver , 1980, IEEE Transactions on Computers.

[4]  Ivan Bratko,et al.  Prolog Programming for Artificial Intelligence , 1986 .

[5]  Leon Sterling,et al.  The Art of Prolog - Advanced Programming Techniques, 2nd Ed , 1986 .

[6]  Joseph Sifakis,et al.  Specification and Development of Reactive Systems - Response , 1986, IFIP Congress.

[7]  Vladimir Lifschitz,et al.  ON THE SEMANTICS OF STRIPS , 1987 .

[8]  Michael E. Bratman,et al.  Intention, Plans, and Practical Reason , 1991 .

[9]  W. F. Clocksin,et al.  Programming in Prolog, 3rd Edition , 1987 .

[10]  John Wylie Lloyd,et al.  Foundations of Logic Programming , 1987, Symbolic Computation.

[11]  D. Dennett The Intentional Stance. , 1987 .

[12]  David J. Israel,et al.  Plans and resource‐bounded practical reasoning , 1988, Comput. Intell..

[13]  Randall Davis,et al.  Negotiation as a Metaphor for Distributed Problem Solving , 1988, Artificial Intelligence.

[14]  Hector J. Levesque,et al.  Intention is Choice with Commitment , 1990, Artif. Intell..

[15]  Michael P. Georgeff,et al.  Commitment and Effectiveness of Situated Agents , 1991, IJCAI.

[16]  Anand S. Rao,et al.  Modeling Rational Agents within a BDI-Architecture , 1997, KR.

[17]  Yoav Shoham,et al.  Agent-Oriented Programming , 1992, Artif. Intell..

[18]  Timothy W. Finin,et al.  Specification of the KQML Agent-Communication Language , 1993 .

[19]  Timothy W. Finin,et al.  A semantics approach for KQML—a general purpose communication language for software agents , 1994, CIKM '94.

[20]  Munindar P. Singh Multiagent Systems - A Theoretical Framework for Intentions, Know-How, and Communications , 1994, Lecture Notes in Computer Science.

[21]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[22]  Timothy W. Finin,et al.  Evaluation of KQML as an Agent Communication Language , 1995, ATAL.

[23]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[24]  C. Badcock,et al.  Simulating Societies: The Computer Simulation of Social Phenomena , 1995 .

[25]  N. Gilbert,et al.  Artificial Societies: The Computer Simulation of Social Life , 1995 .

[26]  A. S. Roa,et al.  AgentSpeak(L): BDI agents speak out in a logical computable language , 1996 .

[27]  Milind Tambe,et al.  Agent Architectures for Flexible, Practical Teamwork , 1997, AAAI/IAAI.

[28]  Timothy W. Finin,et al.  Semantics and Conversations for an Agent Communication Language , 1997, IJCAI.

[29]  Michael J. Prietula,et al.  Simulating organizations: computational models of institutions and groups , 1998 .

[30]  Michael Luck,et al.  Engineering AgentSpeak(L): A Formal Computational Model , 1998, J. Log. Comput..

[31]  Marcus J. Huber JAM: a BDI-theoretic mobile agent architecture , 1999, AGENTS '99.

[32]  Paolo Busetta,et al.  Structuring BDI Agents in Functional Clusters , 1999, ATAL.

[33]  Hector J. Levesque,et al.  ConGolog, a concurrent programming language based on the situation calculus , 2000, Artif. Intell..

[34]  Nicholas R. Jennings,et al.  On agent-based software engineering , 2000, Artif. Intell..

[35]  José Júlio Alferes,et al.  MINERVA - A Dynamic Logic Programming Agent Architecture , 2001, ATAL.

[36]  Michael Wooldridge,et al.  The control of reasoning in resource-bounded agents , 2001, The Knowledge Engineering Review.

[37]  Victor R. Lesser,et al.  AgentSpeak(XL): efficient intention selection in BDI agents via decision-theoretic task scheduling , 2002, AAMAS '02.

[38]  Michael Winikoff,et al.  Declarative and procedural goals in intelligent agent systems , 2002, KR 2002.

[39]  Philip R. Cohen,et al.  Direct execution of team specifications in STAPLE , 2002, AAMAS '02.

[40]  Davide Ancona,et al.  Coo-BDI: Extending the BDI Model with Cooperativity , 2003, DALT.

[41]  Barbara Messing,et al.  An Introduction to MultiAgent Systems , 2002, Künstliche Intell..

[42]  João Leite,et al.  Evolving knowledge bases : specification and semantics , 2003 .

[43]  Keith L. Clark,et al.  Go! for multi-threaded deliberative agents , 2003, AAMAS '03.

[44]  Álvaro F. Moreira,et al.  Extending the Operational Semantics of a BDI Agent-Oriented Programming Language for Introducing Speech-Act Based Communication , 2003, DALT.

[45]  M. Winikoff,et al.  Detecting & Avoiding Interference Between Goals in Intelligent Agents , 2003, IJCAI.

[46]  Jürgen Dix,et al.  Programming Multi-Agent Systems , 2003, Lecture Notes in Computer Science.

[47]  Hector J. Levesque,et al.  Rational interaction as the basis for communication , 2003 .

[48]  Davide Ancona,et al.  Coo-AgentSpeak: cooperation in AgentSpeak through plan exchange , 2004, Proceedings of the Third International Joint Conference on Autonomous Agents and Multiagent Systems, 2004. AAMAS 2004..

[49]  Viviana Mascardi,et al.  Logic-based specification languages for intelligent software agents , 2003, Theory and Practice of Logic Programming.

[50]  Michael Winikoff,et al.  Developing intelligent agent systems - a practical guide , 2004, Wiley series in agent technology.

[51]  Shin Nakajima,et al.  The SPIN Model Checker : Primer and Reference Manual , 2004 .

[52]  Rafael H. Bordini,et al.  ELMS: An Environment Description Language for Multi-agent Simulation , 2004, E4MAS.

[53]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[54]  Daniel Moldt,et al.  Goal Representation for BDI Agent Systems , 2004, PROMAS.

[55]  Olivier Boissier,et al.  Using the Moise+ for a Cooperative Framework of MAS Reorganisation , 2004, SBIA.

[56]  Karen L. Myers,et al.  The SPARK agent framework , 2004, Proceedings of the Third International Joint Conference on Autonomous Agents and Multiagent Systems, 2004. AAMAS 2004..

[57]  Frank Dignum,et al.  Enacting and Deacting Roles in Agent Programming , 2004, AOSE.

[58]  Paolo Traverso,et al.  Automated planning - theory and practice , 2004 .

[59]  Álvaro F. Moreira,et al.  Proving BDI Properties of Agent-Oriented Programming Languages: The asymmetry thesis principles in AgentSpeak(L) , 2004, Annals of Mathematics and Artificial Intelligence.

[60]  Michael Wooldridge,et al.  The dMARS Architecture: A Specification of the Distributed Multi-Agent Reasoning System , 2004, Autonomous Agents and Multi-Agent Systems.

[61]  Evelina Lamma,et al.  The SOCS Computational Logic Approach to the Specification and Verification of Agent Societies , 2004, Global Computing.

[62]  Frank van Harmelen,et al.  A semantic web primer , 2004 .

[63]  Michael Wooldridge,et al.  Model checking rational agents , 2004, IEEE Intelligent Systems.

[64]  Michael Wooldridge,et al.  The theory and practice of intention reconsideration , 2004, J. Exp. Theor. Artif. Intell..

[65]  Munindar P. Singh,et al.  Service-Oriented Computing: Semantics, Processes, Agents , 2010 .

[66]  Brian Logan,et al.  Resource-Bounded Belief Revision and Contraction , 2005, DALT.

[67]  Mehdi Dastani,et al.  Programming Multi-Agent Systems in 3APL , 2005, Multi-Agent Programming.

[68]  Agostino Poggi,et al.  JADE - A Java Agent Development Framework , 2005, Multi-Agent Programming.

[69]  Álvaro F. Moreira,et al.  MAS-SOC: a Social Simulation Platform Based on Agent-Oriented Programming , 2005, J. Artif. Soc. Soc. Simul..

[70]  Álvaro F. Moreira,et al.  Agent-Oriented Programming with Underlying Ontological Reasoning , 2005, DALT.

[71]  Amal El Fallah Seghrouchni,et al.  CLAIM and SyMPA: A Programming Environment for Intelligent and Mobile Agents , 2005, Multi-Agent Programming.

[72]  Mehdi Dastani,et al.  Semantics of declarative goals in agent programming , 2005, AAMAS '05.

[73]  John Thangarajah,et al.  Managing the Concurrent Execution of Goals in Intelligent Agents , 2005 .

[74]  Winfried Lamersdorf,et al.  Jadex: A BDI Reasoning Engine , 2005, Multi-Agent Programming.

[75]  Michael Fisher,et al.  Temporal Development Methods for Agent-Based Systems , 2005 .

[76]  Michael Winikoff,et al.  JACKTM Intelligent Agents: An Industrial Strength Platform , 2005, Multi-Agent Programming.

[77]  Francesca Toni,et al.  Multi-agent Systems in Computational Logic: Challenges and Outcomes of the SOCS Project , 2005, CLIMA.

[78]  Jürgen Dix,et al.  IMPACT: A Multi-Agent Framework with Declarative Semantics , 2005, Multi-Agent Programming.

[79]  Jürgen Dix,et al.  The Second Contest on Multi-Agent Systems Based on Computational Logic , 2006, CLIMA.

[80]  Rafael H. Bordini,et al.  Using Jason to Implement a Team of Gold Miners , 2006, CLIMA.

[81]  Rafael H. Bordini,et al.  Spatially Distributed Normative Objects , 2006, COIN@AAMAS/ECAI.

[82]  Rafael H. Bordini,et al.  Automating Belief Revision for AgentSpeak , 2006, DALT.

[83]  Christian Lebiere,et al.  Cognition and Multi-Agent Interaction: From Cognitive Modeling to Social Simulation , 2006 .

[84]  M. B. van Riemsdijk,et al.  Cognitive agent programming : A semantic approach , 2006 .

[85]  Rafael Heitor Bordini,et al.  Verifying Multi-agent Programs by Model Checking , 2006, Autonomous Agents and Multi-Agent Systems.

[86]  João Leite,et al.  A Survey of Programming Languages and Platforms for Multi-Agent Systems , 2006, Informatica.

[87]  Lin Padgham,et al.  Hierarchical planning in BDI agent programming languages: a formal approach , 2006, AAMAS '06.

[88]  Michael Wooldridge,et al.  Programming Declarative Goals Using Plan Patterns , 2006, DALT.

[89]  Valentin Goranko,et al.  Logic in Computer Science: Modelling and Reasoning About Systems , 2007, J. Log. Lang. Inf..

[90]  M. Wooldridge,et al.  On the Formal Semantics of Speech-Act Based Communication in an Agent-Oriented Programming Language , 2007, J. Artif. Intell. Res..

[91]  Paolo Torroni,et al.  COMPUTATIONAL LOGICS AND AGENTS: A ROAD MAP OF CURRENT TECHNOLOGIES AND FUTURE TRENDS , 2007, Comput. Intell..

[92]  Csr Young,et al.  How to Do Things With Words , 2009 .