Patterns and protocols for agent-oriented software development

Agent-oriented software engineering is faced with challenges that impact on the adoption of agent technology by the wider software engineering community. This is generally due to lack of adequate comprehension of the concepts of agent technology. This thesis is based on the premise that the comprehension of the concepts of and the adoption of agent technology can be improved. Two approaches are explored: the first approach is the analysis and structuring of the interactions in multiagent systems; the second approach is sharing of experiences of what works and what does not in agent-oriented software engineering using software patterns. While analysis of interactions in multiagent systems improves the understanding of the behaviour of multiagent systems, sharing multiagent system development experience improves the understanding of the concepts of agent technology as well as the challenges that face the engineering of multiagent systems. It is therefore believed that interaction analysis and experience sharing can enhance the comprehension of agent technology and hence, the adoption of the technology by the wider community of software practitioners. This thesis addresses the challenges facing agent-oriented software engineering by presenting a dedicated approach for developing agent interaction protocols to guide the interactions in a multiagent system; and a comprehensive framework for classifying, analyzing and describing agent-oriented patterns for the purpose of sharing multiagent systems development experiences. Department of Computer Science and Software Engineering Faculty of Engineering The University of Melbourne AUSTRALIA

[1]  Michael Winikoff,et al.  Prometheus: a methodology for developing intelligent agents , 2002, AAMAS '02.

[2]  Charles J. Petrie,et al.  JATLite: A Java Agent Infrastructure with Message Routing , 2000, IEEE Internet Comput..

[3]  Victor R. Lesser,et al.  Cooperative Multiagent Systems: A Personal View of the State of the Art , 1999, IEEE Trans. Knowl. Data Eng..

[4]  Danny B. Lange,et al.  Agent design patterns: elements of agent application design , 1998, AGENTS '98.

[5]  Michael Luck,et al.  Agent technology: Enabling next generation computing , 2003 .

[6]  Scott A. DeLoach Analysis and Design of Multiagent Systems Using Hybrid Coordination Media , 2002 .

[7]  Akihiko Ohsuga,et al.  Agent system development method based on agent patterns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[8]  Steven Y. Goldsmith,et al.  An Autonomous Manufacturing Collective for Job Shop Scheduling , 1998 .

[9]  Sylvain Sauvage,et al.  MAS Oriented Patterns , 2001, CEEMAS.

[10]  Michael Weiss Patterns for e-Commerce Agent Architectures: Using Agents as Delegates , 2001 .

[11]  Max Jacobson,et al.  A Pattern Language: Towns, Buildings, Construction , 1981 .

[12]  Jürgen Lind,et al.  Iterative Software Engineering for Multiagent Systems: The MASSIVE Method , 2001 .

[13]  Michael Georgeff,et al.  Intelligent Real-Time Network Management , 1991 .

[14]  John Mylopoulos,et al.  A Social Organization Perspective on Software Architectures , 2001 .

[15]  Jean-Luc Koning Compiling a Conversation Policy's Implementation from its Validated Specification Model , 2000, PDPTA.

[16]  Keith C. C. Chan,et al.  Applying agent technology to software process modeling and process-centered software engineering environment , 2005, SAC '05.

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

[18]  M.-P. Huget,et al.  Interaction protocol design: application to an agent-based teleteaching project , 2003, The Second IEEE International Conference on Cognitive Informatics, 2003. Proceedings..

[19]  Weiming Shen,et al.  An Agent-Based Approach for Manufacturing Enterprise Integration and Supply Chain Management , 1998, PROLAMAT.

[20]  Alain Pirotte,et al.  Social Patterns for Designing Multiagent Systems , 2003, SEKE.

[21]  Sanya Liu,et al.  Agent architecture for agent-based supply chain integration & coordination , 2003, SOEN.

[22]  James A. Cunningham,et al.  Achieving Common Interaction Protocols in Open Agent Environments , 2003 .

[23]  John Mylopoulos,et al.  Architectural Styles for Information Systems: An Organizational Perspective , 2000 .

[24]  Iris Reinhartz-Berger,et al.  A Domain Engineering Approach to Specifying and Applying Reference Models , 2005, EMISA.

[25]  Michael P. Georgeff,et al.  Modelling and Design of Multi-Agent Systems , 1997, ATAL.

[26]  Nicholas R. Jennings,et al.  Agent-Based Business Process Management , 1996, Int. J. Cooperative Inf. Syst..

[27]  Scott A. DeLoach,et al.  Analysis and Design using MaSE and agentTool , 2001 .

[28]  Leon Sterling,et al.  Provisional Agreement Protocol for Global Transportation Scheduling , 2005, Applications of Agent Technology in Traffic and Transportation.

[29]  Leon Sterling,et al.  Design of agent-oriented pattern templates , 2006, Australian Software Engineering Conference (ASWEC'06).

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

[31]  Dov Dori,et al.  Single-model method for specifying multi-agent systems , 2003, AAMAS '03.

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

[33]  Qiang Yang,et al.  Architectural Design Patterns for Multiagent Coordination , 1999 .

[34]  Amal El Fallah Seghrouchni,et al.  A Formal Study of Interactions in Multi-agent Systems , 1999, Int. J. Comput. Their Appl..

[35]  Jean-Luc Koning,et al.  Requirement Analysis for Interaction Protocols , 2003, CEEMAS.

[36]  Bernhard Bauer,et al.  Agent UML : A formalism for specifying multiagent interaction , 2001 .

[37]  Hyacinth S. Nwana,et al.  Software agents: an overview , 1996, The Knowledge Engineering Review.

[38]  Leon Sterling,et al.  Improving goal and role oriented analysis for agent based systems , 2005, 2005 Australian Software Engineering Conference.

[39]  Nicholas R. Jennings,et al.  ADEPT: an agent-based approach to business process management , 1998, SGMD.

[40]  Leon Sterling,et al.  ROADMAP: extending the gaia methodology for complex open systems , 2002, AAMAS '02.

[41]  Scott A. DeLoach,et al.  An Overview of the Multiagent Systems Engineering Methodology , 2000, AOSE.

[42]  Xu Wang,et al.  Extended Modeling Languages for Interaction Protocol Design , 2001, AOSE.

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

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

[45]  Michael Luck,et al.  Agent technology, Computing as Interaction: A Roadmap for Agent Based Computing , 2005 .

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

[47]  David Harel,et al.  Come, let's play - scenario-based programming using LSCs and the play-engine , 2003 .

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

[49]  Leon Sterling,et al.  A meta-model for intelligent adaptive multi-agent systems in open environments , 2003, AAMAS '03.

[50]  Nicholas R. Jennings,et al.  Developing Agent Interaction Protocols Using Graphical and Logical Methodologies , 2003, PROMAS.

[51]  Mercedes Garijo Ayestaran,et al.  Analysis and Design of Multiagent Systems Using MAS-Common KADS , 1997, ATAL.

[52]  Nicholas R. Jennings,et al.  The Gaia Methodology for Agent-Oriented Analysis and Design , 2000, Autonomous Agents and Multi-Agent Systems.

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

[54]  Russell Corfman,et al.  An overview of patterns , 1998 .

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

[56]  T. Ishida,et al.  A Trading Agent Competition for the Research Community , 1999 .

[57]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[58]  Yun Peng,et al.  Agent communication languages: the current landscape , 1999, IEEE Intell. Syst..

[59]  Onn Shehory,et al.  Evaluation of modeling techniques for agent-based systems , 2001, AGENTS '01.

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

[61]  C. Heinze Modelling Intention Recognition for Intelligent Agent Systems , 2004 .

[62]  Michael Winikoff,et al.  Comparing Agent-Oriented Methodologies , 2003, AOIS.

[63]  Roberto A. Flores,et al.  Towards the Standardization of Multi-Agent Systems Architectures: An Overview , 1999 .

[64]  C SchmidtDouglas Using design patterns to develop reusable object-oriented communication software , 1995 .

[65]  Leon Sterling,et al.  An agent design pattern classification scheme: capturing the notions of agency in agent design patterns , 2004, 11th Asia-Pacific Software Engineering Conference.

[66]  Leon Sterling,et al.  A Dedicated Approach for Developing Agent Interaction Protocols , 2004, PRIMA.

[67]  Michael Weiss,et al.  Patterns for Motivating an Agent-Based Approach , 2003, ER.

[68]  Jürgen Lind,et al.  Patterns in Agent-Oriented Software Engineering , 2002, AOSE.

[69]  Datong Chen,et al.  Towards automatic analysis of social interaction patterns in a nursing home environment from video , 2004, MIR '04.

[70]  Franco Zambonelli,et al.  Developing multiagent systems: The Gaia methodology , 2003, TSEM.

[71]  Adrian R. Pearce,et al.  Plan Recognition in Military Simulation: Incorporating Machine Learning with Intelligent Agents , 1999 .

[72]  John McCormick,et al.  Rapid Application Development Using Agent Itinerary Patterns , 2000 .

[73]  Leon Sterling,et al.  Improved template for agent pattern description , 2005, IEEE/WIC/ACM International Conference on Intelligent Agent Technology.

[74]  John Mylopoulos,et al.  Multi-Agent Architectures as Organizational Structures , 2006, Autonomous Agents and Multi-Agent Systems.

[75]  Martin Peschke,et al.  Design and Validation of Computer Protocols , 2003 .

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

[77]  Sylvain S Auvage,et al.  MAS Development : Reusing through Agent Oriented Design Patterns , 2004 .

[78]  Yves Demazeau,et al.  FLIP: a platform to integrate embodied agent technology , 2003, IEEE/WIC International Conference on Intelligent Agent Technology, 2003. IAT 2003..

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

[80]  Enric Plaza,et al.  Conversation Protocols: Modeling and Implementing Conversations in Agent-Based Systems , 2000, Issues in Agent Communication.

[81]  Mark Klein,et al.  An exception-handling architecture for open electronic marketplaces of contract net software agents , 2000, EC '00.

[82]  Leon Sterling,et al.  From single static to multiple dynamic combinatorial auctions , 2005, IEEE/WIC/ACM International Conference on Intelligent Agent Technology.

[83]  Jörg P. Müller,et al.  Unifying Control in a Layered Agent Architecture , 2011, ICMAS.

[84]  Michael Wooldridge,et al.  Agent technology: foundations, applications, and markets , 1998 .

[85]  Pattie Maes,et al.  Agents that reduce work and information overload , 1994, CACM.

[86]  Onn Shehory,et al.  A Framework for Evaluating Agent-Oriented Methodologies , 2003, AOIS.

[87]  Shamimabi Paurobally Rational agents and the processes and states of negotiation , 2002 .

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

[89]  Iyad Rahwan,et al.  Architectures for Negotiating Agents , 2003, CEEMAS.

[90]  Jörg P. Müller,et al.  The agent architecture InteRRaP : concept and application , 1993 .

[91]  Onn Shehory,et al.  Towards industrially applicable modeling technique for agent-based systems , 2002, AAMAS '02.

[92]  Aaron Kershenbaum,et al.  Mobile Agents: Are They a Good Idea? , 1996, Mobile Object Systems.

[93]  James O. Coplien Software design patterns: common questions and answers , 1998 .

[94]  Lakhmi C. Jain,et al.  Collaborative agent learning using hybrid neurocomputing , 2005, IADIS AC.

[95]  Ralf König State-Based Modeling Method for Multiagent Conversation Protocols and Decision Activities , 2002, Agent Technologies, Infrastructures, Tools, and Applications for E-Services.

[96]  Michael Wooldridge,et al.  Desiderata for agent argumentation protocols , 2002, AAMAS '02.

[97]  Marian H. Nodine,et al.  Constructing Robust Conversation Policies in Dynamic Agent Communities , 2000, Issues in Agent Communication.

[98]  John Mylopoulos,et al.  Organizational Patterns for Early Requirements Analysis , 2003, CAiSE.

[99]  Arthur C. Graesser,et al.  Is it an Agent, or Just a Program?: A Taxonomy for Autonomous Agents , 1996, ATAL.

[100]  Nicholas R. Jennings,et al.  Software Engineering with Agents: Pitfalls and Pratfalls , 1999, IEEE Internet Comput..

[101]  Danny Weyns,et al.  Agent implementation patterns , 2002, OOPSLA 2002.

[102]  Pattie Maes,et al.  Kasbah: An Agent Marketplace for Buying and Selling Goods , 1996, PAAM.

[103]  Nicholas R. Jennings,et al.  Re-use of Interaction Protocols for Agent-Based Control Applications , 2002, AOSE.

[104]  Linda Rising Design patterns: elements of reusable architectures , 1998 .

[105]  Michael Luck,et al.  A Conceptual Framework for Agent Definition and Development , 2001, Comput. J..

[106]  Nicholas R. Jennings,et al.  DESIRE: Modelling Multi-Agent Systems in a Compositional Formal Framework , 1997, Int. J. Cooperative Inf. Syst..

[107]  Sylvain Sauvage,et al.  Design Patterns for Multiagent Systems Design , 2004, Mexican International Conference on Artificial Intelligence.