Crash failure detection in asynchronous agent communication languages

Agent Communication Languages (ACLs) have been developed to provide a way for agents to communicate with each other supporting cooperation in Multi-Agent Systems (MAS). In the past few years many ACLs have been proposed for MAS and new standards are emerging such as the ACL developed by the Foundation for Intelligent Physical Agents (FIPA). Despite these efforts, an important issue in the research on ACLs is still open and concerns how these languages should deal with failures of agents in asynchronous MAS. The Fault Tolerant Agent Communication Language ($$\mathbb{FT}$$-$$\mathbb{ACL}$$) presented in this paper addresses this issue dealing with crash failures of agents. $$\mathbb{FT}$$-$$\mathbb{ACL}$$ provides high-level communication primitives which support a fault-tolerant anonymous interaction protocol designed for open MAS. We present a formal semantics for $$\mathbb{FT}$$-$$\mathbb{ACL}$$ and a formal specification of the underlying agent architecture. This formal framework allows us to prove that the ACL satisfies a set of well defined knowledge-level programming requirements. To illustrate the language features we show how $$\mathbb{FT}$$-$$\mathbb{ACL}$$ can be effectively used to write high-level executable specifications of fault tolerant protocols, such as the Contract Net one.

[1]  Kuo-Ming Chao,et al.  A Flexible Approach to Exception Handling in Open Multi-agent Systems , 2003 .

[2]  Jean-Jacques Lévy,et al.  A Calculus of Mobile Agents , 1996, CONCUR.

[3]  K. V. S. Prasad Specification and Proof of a Simple Fault Tolerant System in CCS , 1984 .

[4]  Timothy W. Finin,et al.  KQML as an agent communication language , 1994, CIKM '94.

[5]  Roberto M. Amadio,et al.  An Asynchronous Model of Locality, Failure and Process Mobility , 1997, COORDINATION.

[6]  Michael Luck,et al.  A Manifesto for Agent Technology: Towards Next Generation Computing , 2004, Autonomous Agents and Multi-Agent Systems.

[7]  Mark Klein,et al.  Exception handling in agent systems , 1999, AGENTS '99.

[8]  Sam Toueg,et al.  Unreliable failure detectors for reliable distributed systems , 1996, JACM.

[9]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[10]  Munindar P. Singh Agent Communication Languages: Rethinking the Principles , 2003, Communication in Multiagent Systems.

[11]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[12]  Gianluigi Zavattaro,et al.  An Algebra of Actors , 1997, FMOODS.

[13]  James Riely,et al.  Distributed processes and location failures , 2001, Theor. Comput. Sci..

[14]  Joseph Y. Halpern,et al.  Knowledge and common knowledge in a distributed environment , 1984, JACM.

[15]  Uwe Nestmann,et al.  Unreliable Failure Detectors via Operational Semantics , 2003, ASIAN.

[16]  Milind Tambe,et al.  Robust Agent Teams via Socially-Attentive Monitoring , 2000, J. Artif. Intell. Res..

[17]  Mauro Gaspari,et al.  Concurrency and Knowledge-Level Communication in Agent Languages , 1998, Artif. Intell..

[18]  Nicola Dragoni,et al.  An object based algebra for specifying a fault tolerant software architecture , 2005, J. Log. Algebraic Methods Program..

[19]  Luca Simoncini,et al.  Formally Verifying Fault Tolerant System Designs , 2000, Comput. J..

[20]  Mark Klein,et al.  Using Domain-Independent Exception Handling Services to Enable Robust Open Multi-Agent Systems: The Case of Agent Death , 2003, Autonomous Agents and Multi-Agent Systems.

[21]  Gianluigi Zavattaro,et al.  An Actor Algebra for Specifying Distributed Systems: The Hurried Philosophers Case Study , 2001, Concurrent Object-Oriented Programming and Petri Nets.

[22]  Mark Klein,et al.  Towards robust multi-agent systems: handling communication exceptions in double auctions , 2004, Proceedings of the Third International Joint Conference on Autonomous Agents and Multiagent Systems, 2004. AAMAS 2004..

[23]  Mukesh Singhal,et al.  Deadlock detection in distributed systems , 1989, Computer.

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

[25]  Gianluigi Zavattaro,et al.  Process Algebraic Specification of the New Asynchronous CORBA Messaging Service , 1999, ECOOP.

[26]  J. Sadock Speech acts , 2007 .

[27]  Uwe Nestmann,et al.  Modeling Consensus in a Process Calculus , 2003, CONCUR.

[28]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[29]  Roberto M. Amadio,et al.  Localities and Failures (Extended Abstract) , 1994, FSTTCS.

[30]  R. Amadio,et al.  Localities and Failures , 1995 .

[31]  Davide Sangiorgi,et al.  Communicating and Mobile Systems: the π-calculus, , 2000 .

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

[33]  Brahim Chaib-draa,et al.  Trends in Agent Communication Language , 2002, Comput. Intell..

[34]  Sape Mullender,et al.  Distributed systems , 1989 .

[35]  Robin Milner Functions as Processes , 1990, ICALP.

[36]  G. SmithR. The Contract Net Protocol , 1980 .

[37]  Mauro Gaspari,et al.  An ACL for a Dynamic System of Agents , 2002, Comput. Intell..