Skip to main content
Log in

Rapid Prototyping of Large Multi-Agent Systems Through Logic Programming

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. M. Alberti, M. Gavanelli, E. Lamma, P. Mello and P. Torroni, Modeling interactions using social integrity constraints: A resource sharing case study, in: Declarative Agents Languages and Technologies (DALT), Lecture Notes in Computer Science (Springer, 2004).

  2. J.J. Alferes, P. Dell'Acqua, E. Lamma, J.A. Leite, L.M. Pereira and F. Riguzzi, A logic based approach to multi-agent systems, ALP Newsletter 14(3) (2001).

  3. K.R. Apt, From Logic Programming to Prolog (Prentice-Hall, U.K., 1997).

    Google Scholar 

  4. A.W. Biermann, Automatic programming, in: Encyclopedia of Artificial Intelligence, Vol. 1 (Wiley, New York, 1992).

    Google Scholar 

  5. A.W. Bowles, D. Robertson, W.W. Vasconcelos, M. Vargas-Vera and D. Bental, Applying prolog programming techniques, International Journal of Human-Computer Studies 41(3) (1994) 329–350.

    Google Scholar 

  6. M. Bozzano, G. Delzanno, M. Martelli, V. Mascardi and F. Zini, Logic programming & multi-agent systems: A synergic combination for applications and semantics, in: The Logic Programming Paradigm: a 25-Year Perspective (Springer, 1999) pp. 5–32.

  7. I. Bratko, Prolog Programming for Artificial Intelligence, 3rd ed. (Longman Higher Education, 2000)

  8. G. Bucci and E. Vicario, Rapid prototyping through communicating Petri nets, in: Proc. 3rd Int'l Workshop on Rapid System Prototyping, ed. N. Kanopoulos, Los Alamitos, CA, USA (1994) pp. 58–75.

  9. R. Budde, K. Kuhlenkamp, L. Mathiassen and H. Züllighoven (eds.), Approaches to Prototyping (Springer, New York, 1984).

    Google Scholar 

  10. N. Carriero and D. Gelernter, Linda in context, Communications of the ACM 32(4) (1989) 444–458.

    Google Scholar 

  11. A. Chavez and P.Maes, Kasbah: An agent marketplace for buying and selling goods, in: Proc. 1st Int'l Conf. on the Practical Applic. of Intell. Agents & Multi-Agent Technology (PAAM '96), Blackpool, UK (1996).

  12. T.H. Cormen, C.E. Leiserson and R.L. Rivest, Introduction to Algorithms (MIT Press, Cambridge, MA, 1990).

    Google Scholar 

  13. P. Dart, E. Kazmierczak, L. Sterling, M. Martelli, V. Mascardi, F. Zini and V.S. Subrahmanian, Combining logical agents with rapid prototyping for engineering distributed applications, in: Proc. 9th Software Tech. & Engineering Practice (STEP'99), Pittsburgh, PA (1999).

  14. M. d'Inverno and M. Luck, Understanding Agent Systems (Springer, Berlin, 2001).

    Google Scholar 

  15. M. Ducassé and J. Noyé, Logic programming environments: Dynamic program analysis and debugging, Journal of Logic Programming 19, 20 (1994) 351–384.

    Google Scholar 

  16. M. Esteva, D. de La Cruz and C. Sierra, ISLANDER: an electronic institution editor, in: Proc. 1st Int'l Joint Conf. on Autonomous Agents & Multi-Agent Systems (AAMAS 2002), Bologna, Italy (2002).

  17. M. Esteva, J. Padget and C. Sierra, Formalizing a language for institutions and norms, in: Intelligent Agents VIII, eds. M. Tambe and J.-J. Meyer, Lecture Notes in Artificial Intelligence, Vol. 2333 (Springer, Berlin, 2001).

    Google Scholar 

  18. M. Esteva, J.-A. Rodríguez-Aguilar, C. Sierra, P. Garcia and J.L. Arcos, On the formal specification of electronic institutions, in: Agent Mediated E-Commerce, eds. F. Dignum and C. Sierra, Lecture Notes in Artificial Intelligence, Vol. 1991 (Springer, Berlin, 2001).

    Google Scholar 

  19. P. Flener, K.-K. Lau, M. Ornaghi and J. Richardson, An abstract formalisation of correct schemas for program synthesis, Journal of Symbolic Computation 30(1) (2000).

  20. A. Franklin and A. Graesser, Is it an agent, or just a program?, in: Intelligent Agents III (Springer, Berlin, 1997).

    Google Scholar 

  21. N.E. Fuchs, Specifications are (preferably) executable, Software Engineering Journal (1992) 323–334.

  22. P. Garcia, E. Gimenez, L. Godo and J.A. Rodriguez-Aguilar, Bidding Strategies for Trading Agents in Auction-Based Tournaments, Lecture Notes in Computer Science, Vol. 1571 (1999).

  23. T.S. Gegg-Harrison, Learning prolog in a schema-based environment, Instructional Science 20 (1991) 173–192.

    Google Scholar 

  24. A.T. Goldberg, Knowledge-based programming: A survey of program design and construction techniques, IEEE Transactions on Software Engineering SE-12(7) (1986) 752–768.

    Google Scholar 

  25. V.S. Gordon and J.M. Bieman, Rapid prototyping: Lessons learned, IEEE Software 12(1) (1995) 85–95.

    Google Scholar 

  26. C.M. Harland, Supply chain management: Relationships, chains and networks, British Journal of Management 7 (1996) 63–80.

    Google Scholar 

  27. W. Hasselbring, Programming languages and systems for prototyping concurrent applications, ACM Computing Surveys 32(1) (2000) 43–79.

    Google Scholar 

  28. P.M. Hill and J. Gallagher, Meta-programming in logic progamming, in: Handbook of Logic in Artificial Intelligence and Logic Programming, Vol. 5 (1998) pp. 421–498.

    Google Scholar 

  29. J.E. Hopcroft and J.D. Ullman, Introduction to Automata Theory, Languages and Computation (Addison-Wesley, Reading, MA, 1979).

    Google Scholar 

  30. N.R. Jennings and M.Wooldridge, Agent-oriented software engineering, in: Handbook of Agent Technology (AAAI/MIT Press, 2000).

  31. W.H. Kautz, E.A. Voorhees and T.A. Jeeves, Automatic programming systems, Communications of the ACM 1(8) (1958) 6–8.

    Google Scholar 

  32. G.E. Kersten and S. Szpakowicz, Negotiation in distributed artificial intelligence: Drawing from human experience, in: Proc. 27th Annual Hawaii Int'l Conf. on System Sciences, eds. J.F. Nunamaker and R.H. Sprague, Los Alamitos, CA (1994) pp. 258–270.

  33. M. Kirschenbaum, S. Michaylov and L. Sterling, Skeletons and techniques as a normative view of developing logic programs, Australian Computer Science Communications 18(1) (1996) 163–178.

    Google Scholar 

  34. R.A. Kowalski and F. Sadri, From logic programming towards multi-agent systems, Annals of Mathematics and Articial Intelligence 25(3-4) (1999) 391–419.

    Google Scholar 

  35. Luqi, Computer aided system prototyping, in: Proc. 1st Int'l Workshop on Rapid System Prototyping, Los Alamitos, CA (1992) pp. 50–57.

  36. M. Martelli, V. Mascardi and F. Zini, Specification and simulation of multi-agent systems in CaseLP, in: Proc. of APPIA-GULP-PRODE (L'Aquila, Italy, 1992).

    Google Scholar 

  37. E-Institutor Project: Islander graphical editor, IIIA-CSIC, Bellaterra, Catalonia, Spain (2002), http://e-institutor.iiia.csic.es/e-institutor/software/islander.html.

  38. C. Musciano and B. Kennedy, HTML & XHTML: The Definitive Guide, 4th ed. (O'Reilly, 2000).

  39. P. Noriega, Agent-mediated auctions: The fishmarket metaphor, Ph.D. thesis, Institut d'Investigació en Intel.ligència Artificial (IIIA), Consejo Superior de Investigaciones Científicas (CSIC), Campus UAB, Bellaterra, Spain (1997).

    Google Scholar 

  40. S. Parsons, C. Sierra and N.R. Jennings, Agents that reason and negotiate by arguing, Journal of Logic and Computation 8(3) (1998) 261–292.

    Google Scholar 

  41. J.L. Peterson, Petri nets, Computing Surveys 9(3) (1977) 223–252.

    Google Scholar 

  42. S. Polovina and J. Heaton, An introduction to conceptual graphs, AI Expert (1992) 36–43.

  43. M. Proietti and A. Pettorossi, Transformations of logic programs: Foundations and techniques, Journal of Logic Programming 19, 20 (1994) 261–320.

    Google Scholar 

  44. C. Rich and Y.A. Feldman, Seven layers of knowledge representation and reasoning in support of software development, IEEE Transactions on Software Engineering 18(6) (1992) 451–469.

    Google Scholar 

  45. D. Robertson, A simple Prolog techniques editor for novice users, in: 3rd Annual Conference on Logic Programming, Edinburgh, Scotland (1991).

  46. J.A. Rodríguez-Aguilar, On the design and construction of agent-mediated electronic institutions, Ph.D. thesis, IIIA-CSIC, Spain (2001).

    Google Scholar 

  47. SICS, SICStus Prolog user's manual, Swedish Institute of Computer Science (2000), http://www. sics.se/sicstus.

  48. C. Sierra, J. Sabater, J. Agustí and P. Garcia, Evolutionary computation and multiagent systems design, in: Proc. 1st Int'l Joint Conf. on Autonomous Agents & Multi-Agent Systems (AAMAS 2002) (Bologna, Italy, 2002).

  49. L. Sterling and M. Kirschenbaum, Applying techniques to skeletons, in: Constructing Logic Programs (Wiley, London, 1993).

    Google Scholar 

  50. L. Sterling and E. Shapiro, The Art of Prolog: Advanced Programming Techniques, 2nd ed. (MIT Press, 1994).

  51. L.S. Sterling and R.D. Beer, Meta-interpreters for expert system construction, Journal of Logic Programming 6(1-2) (1989) 163–178.

    Google Scholar 

  52. V.S. Subrahmanian, P. Bonatti, J. Dix, T. Eiter, S. Kraus, F. Ozcan and R. Ross, Heterogeneous Agent Systems (MIT Press/AAAI Press, Cambridge, MA, 2000).

    Google Scholar 

  53. M. Tsvetovatyy and M. Gini, Towards a virtual marketplace: Architecture and strategies, in: Proc. 1st Int'l Conf. on the Practical Applic. of Intell. Agents & Multi-Agent Technology (PAAM '96), Blackpool, UK (1996).

  54. M.H. Van Emden and R.A. Kowalski, The semantics of predicate logic as a programming language, Journal of ACM 23(4) (1976) 733–742.

    Google Scholar 

  55. W.W. Vasconcelos, Expressive global protocols via logic-based electronic institutions, in: Proc. 2nd Int'l Joint Conf. on Autonomous Agents & Multi-Agent Systems (AAMAS 2003), Melbourne, Australia. A longer version appears as Tech. Report AUCS/TR0301, Department of Computing Science, University of Aberdeen, UK (2003).

    Google Scholar 

  56. W.W. Vasconcelos, Logic-based electronic institutions, in: Proc. Declarative Agent Languages and Technologies (DALT'03), Melbourne, Australia, Lecture Notes in Artificial Intelligence (Springer, 2003).

  57. W.W. Vasconcelos and N.E. Fuchs, An opportunistic approach for logic program analysis and optimisation using enhanced schema-based transformations, Lecture Notes in Computer Science, Vol. 1048 (Springer, 1996).

  58. W.W.Vasconcelos and N.E. Fuchs, Prolog program development via enhanced schema-based transformations, Technical report, Department of Artificial Intelligence, University of Edinburgh. Presented at the 7thWorkshop on Logic Programming Environments, held in conjunction with ILPS'95, Seattle, USA (1996).

  59. W.W. Vasconcelos and E.X. Meneses, A practical approach for logic program analysis and transformation, Lecture Notes in Computer Science, Vol. 1793 (Springer, 2000).

  60. W.W. Vasconcelos, D. Robertson, J. Agustí, C. Sierra, M. Wooldridge, S. Parsons, C. Walton and J. Sabater, A lifecycle for models of large multi-agent systems, in: Proc. 2nd Int'l Workshop on Agent-Oriented Soft. Eng. (AOSE-2001), Lecture Notes in Computer Science, Vol. 2222 (Springer, 2001).

  61. W.W. Vasconcelos, J. Sabater, C. Sierra and J. Querol, Skeleton-based agent development for electronic institutions, in: Proc. 1st Int'l Joint Conf. on Autonomous Agents & Multi-Agent Systems (AAMAS 2002), Bologna, Italy (2002).

  62. W.W. Vasconcelos, C. Sierra and M. Esteva, An approach to rapid prototyping of large multi-agent systems, in: Proc. 17th IEEE Int'l Conf. on Automated Software Engineering (ASE 2002), Edinburgh, UK (2002) pp. 13–22.

  63. W.W., Vasconcelos, C. Sierra and M. Esteva, An environment for rapid prototyping of large multi-agent systems, Technical report, http://www.dai.ed.ac.uk/groups/ssp/slie. Presented at AAMAS 2002 Demonstration Session, Bologna, Italy (2002).

  64. N. Wirth, Program development by stepwise refinement, Communications of the ACM 14(4) (1971) 221–227.

    Google Scholar 

  65. M. Wooldridge, An Introduction to MultiAgent Systems (Wiley, London, 2002).

    Google Scholar 

  66. H. Xu and S.M. Shatz, ADK: An agent development kit based on a formal design model for multiagent systems, Automated Software Engineering 10 (2003) 337–365.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to W. Vasconcelos.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Vasconcelos, W., Robertson, D., Sierra, C. et al. Rapid Prototyping of Large Multi-Agent Systems Through Logic Programming. Annals of Mathematics and Artificial Intelligence 41, 135–169 (2004). https://doi.org/10.1023/B:AMAI.0000031194.57352.e7

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/B:AMAI.0000031194.57352.e7

Keywords

Navigation