Logic-based specification languages for intelligent software agents

The research field of Agent-Oriented Software Engineering (AOSE) aims to find abstractions, languages, methodologies and toolkits for modeling, verifying, validating and prototyping complex applications conceptualized as Multiagent Systems (MASs). A very lively research sub-field studies how formal methods can be used for AOSE. This paper presents a detailed survey of six logic-based executable agent specification languages that have been chosen for their potential to be integrated in our ARPEGGIO project, an open framework for specifying and prototyping a MAS. The six languages are $\textsf{ConGolog}$, $\textsf{AGENT-0}$, the $\textsf{IMPACT}$ agent programming language, $\textsf{DyLOG}$, Concurrent $\textsf{METATEM}$ and ${\cal E}_{hhf}$. For each executable language, the logic foundations are described and an example of use is shown. A comparison of the six languages and a survey of similar approaches complete the paper, together with considerations of the advantages of using logic-based languages in MAS modeling and prototyping.

[1]  Clare Dixon,et al.  Reasoning about agents in the KARO framework , 2001, Proceedings Eighth International Symposium on Temporal Representation and Reasoning. TIME 2001.

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

[3]  Giorgio Delzanno,et al.  Proofs as computations in linear logic , 2001, Theor. Comput. Sci..

[4]  Viviana Mascardi,et al.  Customizing AOSE methodologies by reusing AOSE features , 2003, AAMAS '03.

[5]  John-Jules Ch. Meyer,et al.  Formalising Motivational Attitudes of Agents , 1995, ATAL.

[6]  Phillip C.-Y. Sheu,et al.  Formal Specification and Verification , 1997 .

[7]  Michael Fisher,et al.  A Survey of Concurrent METATEM - the Language and its Applications , 1994, ICTL.

[8]  Hector Muñoz-Avila,et al.  IMPACTing SHOP: Putting an AI Planner Into a Multi-Agent Environment , 2003, Annals of Mathematics and Artificial Intelligence.

[9]  Tran Cao Son,et al.  Adapting Golog for Composition of Semantic Web Services , 2002, KR.

[10]  Koen V. Hindriks,et al.  A Formal Embedding of AgentSpeak(L) in 3APL , 1998, Australian Joint Conference on Artificial Intelligence.

[11]  V. S. Subrahmanian,et al.  Heterogeneous Active Agents, I: Semantics , 1999, Artif. Intell..

[12]  David Poole,et al.  The Independent Choice Logic for Modelling Multiple Agents Under Uncertainty , 1997, Artif. Intell..

[13]  Michael Fisher,et al.  Concurrent METATEM - A Language for Modelling Reactive Systems , 1993, PARLE.

[14]  V. S. Subrahmanian,et al.  Heterogeneous Active Agents, II: Algorithms and Complexity , 1999, Artif. Intell..

[15]  Viviana Mascardi,et al.  Multi-agent Systems Development as a Software Engineering Enterprise , 1999, PADL.

[16]  Michael Fisher,et al.  The abc of rational agent modelling , 2002, AAMAS '02.

[17]  Hector J. Levesque,et al.  The cognitive agents specification language and verification environment for multiagent systems , 2002, AAMAS '02.

[18]  Michael Fisher,et al.  A Resolution Method for Temporal Logic , 1991, IJCAI.

[19]  Hector J. Levesque,et al.  Specifying communicative multi-agent systems , 1998 .

[20]  H. Van Dyke Parunak,et al.  Representing Agent Interaction Protocols in UML , 2000, AOSE.

[21]  Robert B. Ross,et al.  Impact: a platform for collaborating agents , 1999, IEEE Intell. Syst..

[22]  Laura Giordano,et al.  An Abductive Proof Procedure for Reasoning About Actions in Modal Logic Programming , 1996, NMELP.

[23]  Hector J. Levesque,et al.  Specifying Communicative Multi-Agent Systems (Invited Paper) , 1997, Agents and Multi-Agent Systems Formalisms, Methodologies, and Applications.

[24]  Francesca Toni,et al.  Combining Introspection and Communication with Rationality and Reactivity in Agents , 1998, JELIA.

[25]  Anand S. Rao,et al.  AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language , 1996, MAAMAW.

[26]  Jürgen Dix,et al.  Heterogenous Active Agents , 2000 .

[27]  Bernhard Bauer,et al.  Extending UML for agents , 2000 .

[28]  Michael Fisher,et al.  Organising Logic-Based Agents , 2002, FAABS.

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

[30]  Alberto Martelli,et al.  Reasoning about Self and Others: Communicating Agents in a Model Action Logic , 2003, ICTCS.

[31]  Michael Wooldridge,et al.  Reasoning about rational agents , 2000, Intelligent robots and autonomous agents.

[32]  Michael Wooldridge,et al.  Agent-Oriented Software Engineering: The State of the Art , 2009, AOSE.

[33]  Hans Tompits,et al.  A Framework for Declarative Update Specifications in Logic Programs , 2001, IJCAI.

[34]  Robert A. Kowalski,et al.  Abduction Compared with Negation by Failure , 1989, ICLP.

[35]  Giorgio Delzanno,et al.  A Linear Logic Specification for Chimera , 1997 .

[36]  Viviana Mascardi,et al.  Error-Tolerant Agents , 2002, Computational Logic: Logic Programming and Beyond.

[37]  Michael Fisher,et al.  Flexible Agent Grouping In Executable Temporal Logic , 1999 .

[38]  Evelina Lamma,et al.  Cooperation and Competition in ALIAS: A Logic Framework for Agents that Negotiate , 2004, Annals of Mathematics and Artificial Intelligence.

[39]  Michael Fisher,et al.  Representing Abstract Agent Architectures , 1998, ATAL.

[40]  Viviana Mascardi,et al.  Combining logical agents with rapid prototyping for engineering distributed applications , 1999, STEP '99. Proceedings Ninth International Workshop Software Technology and Engineering Practice.

[41]  V. S. Subrahmanian,et al.  Heterogeneous active agents, III: Polynomially implementable agents , 2000, Artif. Intell..

[42]  Peter A. Flach Transactions and Change in Logic Databases , 1998 .

[43]  Nicholas R. Jennings,et al.  Intelligent agents: theory and practice , 1995, The Knowledge Engineering Review.

[44]  S. Rebecca Thomas,et al.  The PLACA Agent Programming Language , 1995, ECAI Workshop on Agent Theories, Architectures, and Languages.

[45]  José Júlio Alferes,et al.  Evolving Logic Programs , 2002, JELIA.

[46]  Laura Giordano,et al.  Reasoning about Complex Actions with Incomplete Knowledge: A Modal Approach , 2001, ICTCS.

[47]  Michael Fisher,et al.  Concurrent MetateM Processes - A Language for Distributed AI , 1991 .

[48]  Viviana Mascardi,et al.  Specification and Simulation of Multi-Agent Systems in CaseLP , 1999, APPIA-GULP-PRODE.

[49]  Viviana Mascardi,et al.  Logic Programming and Multi-Agent Systems: A Synergic Combination for Applications and Semantics , 1999, The Logic Programming Paradigm.

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

[51]  Kenneth A. Ross,et al.  Unfounded sets and well-founded semantics for general logic programs , 1988, PODS.

[52]  Satoru Araki FIPA ACL Message Structure Specification , 2000 .

[53]  Natarajan Shankar,et al.  PVS: Combining Specification, Proof Checking, and Model Checking , 1996, FMCAD.

[54]  Robert A. Kowalski,et al.  From logic programming towards multi‐agent systems , 1999, Annals of Mathematics and Artificial Intelligence.

[55]  Dale Miller,et al.  Forum: A Multiple-Conclusion Specification Logic , 1996, Theor. Comput. Sci..

[56]  Hector-Neri Castañeda,et al.  Thinking and Doing: The Philosophical Foundations of Institutions , 1975 .

[57]  Hector J. Levesque,et al.  An Embedding of ConGolog in 3APL , 2000, ECAI.

[58]  Michele Bugliesi,et al.  Object calculi in linear logic , 2000, J. Log. Comput..

[59]  H. Levesque,et al.  Legolog : Inexpensive Experiments in Cognitive Robotics , 2000 .

[60]  Laura Giordano,et al.  Dealing with Concurrent Actions in Modal Action Logics , 1998, ECAI.

[61]  Laura Giordano,et al.  Ramification and causality in a modal action logic , 2000, J. Log. Comput..

[62]  Cristina Baroglio,et al.  Applying logic inference techniques for gaining flexibility and adaptivity in tutoring systems , 2003 .

[63]  Michael Fisher,et al.  Implementing BDI-like Systems by Direct Execution , 1997, IJCAI.

[64]  Victor W. Marek,et al.  The Logic Programming Paradigm: A 25-Year Perspective , 2011 .

[65]  D. Carbogim,et al.  Contract-based Negotiation via Argumentation (preliminary Report) , 1999 .

[66]  Michael Fisher,et al.  Concurrent METATEM as a Coordination Language , 1997, COORDINATION.

[67]  Jorg P. Muller,et al.  The Design of Intelligent Agents: A Layered Approach , 1996 .

[68]  A. Martelli,et al.  Modeling Agents in a Logic Action , 2000 .

[69]  Robert A. Kowalski,et al.  Towards a Unified Agent Architecture that Combines Rationality with Reactivity , 1996, Logic in Databases.

[70]  Peter Edwards,et al.  Agent-K: An Integration of AOP & KQML , 1994 .

[71]  Hector J. Levesque,et al.  GOLOG: A Logic Programming Language for Dynamic Domains , 1997, J. Log. Program..

[72]  Jerzy Tiuryn,et al.  Logics of Programs , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[73]  Dov M. Gabbay,et al.  METATEM: A Framework for Programming in Temporal Logic , 1989, REX Workshop.

[74]  V. S. Subrahmanian,et al.  Heterogeneous Active Agents , 1998 .

[75]  Raymond Reiter,et al.  Some contributions to the metatheory of the situation calculus , 1999, JACM.

[76]  Koen V. Hindriks,et al.  Semantics of Communicating Agents Based on Deduction and Abduction , 2000, Issues in Agent Communication.

[77]  Zohar Manna,et al.  Logics of Programs , 1981, Lecture Notes in Computer Science.

[78]  Julie A. Adams,et al.  Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence , 2001, AI Mag..

[79]  Andreas Blass,et al.  A Game Semantics for Linear Logic , 1992, Ann. Pure Appl. Log..

[80]  S. Brison The Intentional Stance , 1989 .

[81]  Chitta Baral,et al.  Reasoning agents in dynamic domains , 2000 .

[82]  Murray Shanahan,et al.  Reinventing Shakey , 2001 .

[83]  Hector J. Levesque,et al.  Foundations for the Situation Calculus , 1998, Electron. Trans. Artif. Intell..

[84]  Frank Dignum,et al.  A Programming Language for Cognitive Agents Goal Directed 3APL , 2003, PROMAS.

[85]  Alberto Martelli,et al.  Reasoning about Conversation Protocols in a Logic-Based Agent Language , 2003, AI*IA.

[86]  Michael Wooldridge,et al.  Agent-based software engineering , 1997, IEE Proc. Softw. Eng..

[87]  Nicholas R. Jennings,et al.  A Roadmap of Agent Research and Development , 2004, Autonomous Agents and Multi-Agent Systems.

[88]  Clare Dixon,et al.  Verification within the KARO Agent Theory , 2000, FAABS.

[89]  Michael Wooldridge,et al.  Executable Temporal Logic for Distributed A.I , 2002 .

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

[91]  Floriano Zini,et al.  Caselp, A Rapid Prototyping Environment For Agent Based Software , 2001 .

[92]  Laura Giordano,et al.  A Modal Programming Language for Representing Complex Actions , 1998 .

[93]  Saul A. Kripke,et al.  Semantical Analysis of Modal Logic I Normal Modal Propositional Calculi , 1963 .

[94]  Tran Cao Son,et al.  Extending Answer Set Planning with Sequence, Conditional, Loop, Non-Deterministic Choice, and Procedure Constructs , 2001, Answer Set Programming.

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

[96]  James Odell,et al.  Objects and Agents Compared , 2002, J. Object Technol..

[97]  Daniel Marcu,et al.  Distributed Software Agents and Communication in the Situation Calculus , 1995 .

[98]  Michael Wooldridge,et al.  On the Formal Specification and Verification of Multi-Agent Systems , 1997, Int. J. Cooperative Inf. Syst..

[99]  Anand S. Rao,et al.  BDI Agents: From Theory to Practice , 1995, ICMAS.

[100]  Michael Fisher,et al.  Programming Resource-Bounded Deliberative Agents , 1999, IJCAI.

[101]  Marcelo Finger,et al.  Metatem at work: modelling reactive systems using executable temporal logic , 1993 .

[102]  Klaus Fischer,et al.  A Layered Agent Calculus with Cocurrent, Continuous Processes , 1997, ATAL.

[103]  Hector-Neri Castañeda,et al.  Thinking and Doing , 1975 .

[104]  Michael Fisher,et al.  An Introduction to Executable Modal and Temporal Logics , 1993, Executable Modal and Temporal Logics.

[105]  M. Baldoni Normal Multimodal Logics: Automatic Deduction and Logic Programming Extension , 1998 .

[106]  Koen V. Hindriks,et al.  Control Structures of Rule-Based Agent Languages , 1998, ATAL.

[107]  Paulo Quaresma,et al.  Modelling Agent Interaction in Logic Programming , 1998 .

[108]  Viviana Mascardi,et al.  Specification of Heterogeneous Agent Architectures , 2000, ATAL.

[109]  José Júlio Alferes,et al.  LUPS - A Language for Updating Logic Programs , 1999, LPNMR.

[110]  Michael Fisher,et al.  Automata representations for Concurrent METATEM , 1997, Proceedings of TIME '97: 4th International Workshop on Temporal Representation and Reasoning.

[111]  Michael Fisher,et al.  A Normal Form for First-Order Temporal Formulae , 1992, CADE.

[112]  Paul McNamara,et al.  Deontic logic , 2006, Logic and the Modalities in the Twentieth Century.

[113]  Jörg P. Müller,et al.  A Pragmatic BDI Architecture , 1997, ATAL.

[114]  Hector J. Levesque,et al.  On the Semantics of Deliberation in IndiGolog — from Theory to Implementation , 2002, Annals of Mathematics and Artificial Intelligence.

[115]  J. McCarthy Situations, Actions, and Causal Laws , 1963 .

[116]  Ray Reiter,et al.  On knowledge-based programming with sensing in the situation calculus , 2001, ACM Trans. Comput. Log..

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

[118]  Patrick Lincoln,et al.  Linear logic , 1992, SIGA.