Model checking for ACL compliance verification

The problem of checking that agents correctly implement the semantics of an agent communication language has become increasingly important as agent technology makes its transition from the research laboratory to field-tested applications. In this paper, we show how model checking techniques can be applied this problem. Model checking is a technique developed within the formal methods community for automatically verifying that finite-state concurrent systems implement temporal logic specifications. We first describe a variation of the MABLE multiagent BDI programming language, which permits the semantics (pre- and post-conditions) of ACL performatives to be defined separately from a system where these semantics are used. We then show how assertions defining compliance to the semantics of an ACL can be captured as claims about MABLE agents, expressed using MABLE's associated assertion language. In this way, compliance to ACL semantics reduces to a conventional model checking problem. We illustrate our approach with a number of short case studies.

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

[2]  Yoav Shoham Agent-Oriented Programming , 1993, Artif. Intell..

[3]  Michael Wooldridge,et al.  Model checking multi-agent systems with MABLE , 2002, AAMAS '02.

[4]  Anand S. Rao,et al.  Decision Procedures for BDI Logics , 1998, J. Log. Comput..

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

[6]  Tim Finin,et al.  KQML - A Language and Protocol for Knowledge and Information Exchange , 1994 .

[7]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[8]  Michael Wooldridge,et al.  Verifiable semantics for agent communication languages , 1998, Proceedings International Conference on Multi Agent Systems (Cat. No.98EX160).

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

[10]  Munindar P. Singh The Intentions of Teams: Team Structure, Endodeixis, and Exodeixis , 1998, ECAI.

[11]  Hong Zhu,et al.  Agent oriented programming based on SLABS , 2005, 29th Annual International Computer Software and Applications Conference (COMPSAC'05).

[12]  Munindar P. Singh Agent Communication Languages: Rethinking the Principles , 1998, Computer.

[13]  Gerard J. Holzmann,et al.  Design and validation of computer protocols , 1991 .

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

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

[16]  Joseph Y. Halpern,et al.  A Guide to Completeness and Complexity for Modal Logics of Knowledge and Belief , 1992, Artif. Intell..

[17]  Jeremy V. Pitt,et al.  A Protocol-Based Semantics for an Agent Communication Language , 1999, IJCAI.

[18]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[19]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[20]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .