Rapid Prototyping of Large Multi-Agent Systems Through Logic Programming

  • Authors:
  • W. Vasconcelos;D. Robertson;C. Sierra;M. Esteva;J. Sabater;M. Wooldridge

  • Affiliations:
  • Department of Computing Science, University of Aberdeen, Aberdeen AB24 3UE, United Kingdom e-mail: wvasconcelos@acm.org;Centre for Intelligent Systems and their Applications (CISA), Division of Informatics, University of Edinburgh, Appleton Tower, Crichton Street, Edinburgh EH8 9LE, United Kingdom e-mail: d ...;Artificial Intelligence Research Institute (IIIA), Consejo Superior de Investigaciones Científicas (CSIC), Campus UAB, 08193, Bellaterra, Catalonia, Spain e-mail: sierra@iiia.csic.es< ...;Artificial Intelligence Research Institute (IIIA), Consejo Superior de Investigaciones Científicas (CSIC), Campus UAB, 08193, Bellaterra, Catalonia, Spain e-mail: marc@iiia.csic.esjsabater@iiia.csic.e ...;Department of Computer Science, University of Liverpool, Liverpool L69 7ZF, United Kingdom e-mail: mjw@csc.liv.ac.uk

  • Venue:
  • Annals of Mathematics and Artificial Intelligence
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Prototyping is a valuable technique to help software engineers explore the design space while gaining insight on the dynamics of the system. In this paper, we describe a method for rapidly building prototypes of large multi-agent systems using logic programming. Our method advocates the use of a description of all permitted interactions among the components of the system, that is, the protocol, as the starting specification. The protocol is represented in a way that allows us to automatically check for desirable properties of the system to be built. We then employ the same specification to synthesise agents that will correctly follow the protocol. These synthesised agents are simple logic programs that engineers can further customise into more sophisticated software. Our choice of agents as logic programs allows us to provide semi-automatic support for the customisation activity. In our method, a prototype is a protocol with a set of synthesised and customised agents. Executing the prototype amounts to having these agents enact the protocol. We have implemented and described a distributed platform to simulate prototypes.