Abstract
Systems composed of interacting autonomous agents offer a promising software engineering approach for developing applications in complex domains. However, this multiagent system paradigm introduces a number of new abstractions and design/development issues when compared with more traditional approaches to software development. Accordingly, new analysis and design methodologies, as well as new tools, are needed to effectively engineer such systems. Against this background, the contribution of this article is twofold. First, we synthesize and clarify the key abstractions of agent-based computing as they pertain to agent-oriented software engineering. In particular, we argue that a multiagent system can naturally be viewed and architected as a computational organization, and we identify the appropriate organizational abstractions that are central to the analysis and design of such systems. Second, we detail and extend the Gaia methodology for the analysis and design of multiagent systems. Gaia exploits the aforementioned organizational abstractions to provide clear guidelines for the analysis and design of complex and open software systems. Two representative case studies are introduced to exemplify Gaia's concepts and to show its use and effectiveness in different types of multiagent system.
- Abelson, H., Allen, D., Coore, D., Hanson, C., Homsy, G., Knight, T., Napal, R., Rauch, E., Sussmann, G., and Weiss, R. 2000. Amorphous computing. Commun. ACM 43, 5 (May), 43--50.]] Google ScholarDigital Library
- Babaoglu, O., Meling, H., and Montresor, A. 2002. Anthill: A framework for the development of agent-based peer-to-peer systems. In Proceedings of the 22nd International Conference on Distributed Computing Systems (Vienna, Austria). IEEE Computer Society Press, Los Alamitos, Calif., pp. 15--22.]] Google ScholarDigital Library
- Bass, L., Clements, P., and Kazman, R. 2003. Software Architectures in Practice (2nd Ed.). Addison-Wesley, Reading, Mass.]] Google ScholarDigital Library
- Bauer, B., Muller, J. P., and Odell, J. 2001. Agent UML: A formalism for specifying multiagent software systems. Int. J. Softw. Eng. Knowl. Eng. 11, 3 (Apr.), 207--230.]]Google ScholarCross Ref
- Berners-Lee, T., Hendler, J., and Lassila, O. 2001. The semantic web. Sci. Amer. May.]]Google Scholar
- Bonabeau, E., Dorigo, M., and Theraulaz, G. 1999. Swarm Intelligence. From Natural to Artificial Systems. Oxford University Press, Oxford, U.K.]] Google ScholarDigital Library
- Booch, G. 1994. Object-Oriented Analysis and Design (2nd ed.). Addison-Wesley, Reading, Mass.]] Google ScholarDigital Library
- Bresciani, P., Perini, A., Giorgini, P., Giunchiglia, F., and Mylopoulos, J. 2001. A knowledge level software engineering methodology for agent oriented programming. In Proceedings of the 5th International Conference on Autonomous Agents (Montreal, Ont., Canada, June). ACM, New York, pp. 648--655.]] Google ScholarDigital Library
- Bussmann, S. 1998. Agent-oriented programming of manifacturing control tasks. In Proceedings of the 3rd International Conference on Multi-Agent Systems (Paris, France, June). IEEE Computer Society Press, Los Alamitos, Calif., pp. 57--63.]] Google ScholarDigital Library
- Cabri, G., Ferrari, L., and Leonardi, L. 2003. Enabling mobile agents to dynamically assume roles. In Proceedings of the 2003 ACM Symposium on Applied Computing (Melbourne, Fla., Mar.). ACM, New York, pp. 56--60.]] Google ScholarDigital Library
- Cabri, G., Leonardi, L., and Zambonelli, F. 2000. Mobile-agent coordination models for internet applications. IEEE Comput. 33, 2 (Feb.), 52--58.]] Google ScholarDigital Library
- Cabri, G., Leonardi, L., and Zambonelli, F. 2002. Engineering mobile agent applications via context-dependent coordination. IEEE Trans. Softw. Eng. 28, 11 (Nov.), 1034--1051.]] Google ScholarDigital Library
- Caire, G., Coulier, W., Garijo, F., Gomez, J., Pavon, J., Leal, F., Chainho, P., Kearney, P., Stark, J., Evans, R., and Massonet, P. 2002. Agent-oriented analysis using message/uml. In Proceedings of the 2nd International Workshop on Agent-Oriented Software Engineering. Lecture Notes in Computer Science, vol. 2222. Springer Verlag, New York, pp. 119--135.]] Google ScholarDigital Library
- Castro, J., Kolp, M., and Mylopoulos, J. 2002. Towards requirements-driven information systems engineering: The tropos project. Inf. Syst. 27, 6 (June), 365--389.]] Google ScholarDigital Library
- Ciancarini, P., Omicini, A., and Zambonelli, F. 2000. Multiagent systems engineering: The coordination viewpoint. In Intelligents Agents VI: Agent Theories, Architectures, and Languages. Lecture Notes in Computer Science, vol. 1767. Springer-Verlag, New York, pp. 250--259.]] Google ScholarDigital Library
- Coleman, D., Arnold, P., Bodoff, S., Dollin, D., Gilchrist, H., Hayes, F., and Jeremas, P. 1994. Object-Oriented Development: The FUSION Method. Prentice-Hall International, Hemel Hampstead U.K.]] Google ScholarDigital Library
- Collinot, A., Drogoul, A., and Benhamou, P. 1996. Agent-oriented design of a soccer robot team. In Proceedings of the 2nd International Conference on Multi-Agent Systems (Kyoto, Japan). IEEE Computer Society Press, Los Alamitos, Calif.]]Google Scholar
- Demazeau, Y., and Rocha Costa, A. C. 1996. Populations and organizations in open multi-agent systems. In Proceedings of the 1st National Symposium on Parallel and Distributed AI.]]Google Scholar
- Esteva, M., Rodriguez-Aguilar, J. A., Sierra, C., Garcia, P., and Arcos, J. L. 2001. On the formal specifications of agent institutions. In Agent-Mediated Electronic Commerce. Lecture Notes in Computer Science, vol. 1991. Springer-Verlag, New York, pp. 126--147.]] Google ScholarDigital Library
- Estrin, D., Culler, D., Pister, K., and Sukjatme, G. 2002. Connecting the physical world with pervasive networks. IEEE Perv. Comput. 1, 1, 59--69.]] Google ScholarDigital Library
- Ferber, J. and Gutknecht, O. 1998. A meta-model for the analysis and design of organizations in multi-agent systems. In Proceedings of the 3rd International Conference on Multi-Agent Systems (Paris, France). IEEE Computer Society Press, Los Alamitos, Calif., pp. 128--135.]] Google ScholarDigital Library
- Foster, I. and Kesselman, C. (Eds.). 1999. The Grid: Blueprint for a New Computing Infrastructure. Morgan-Kaufmann, San Francisco, Calif.]] Google ScholarDigital Library
- Fox, M. S. 1981. An organizational view of distributed systems. IEEE Trans. Syst. Man, Cybernet. 11, 1 (Jan.), 70--80.]]Google ScholarCross Ref
- Handy, C. 1976. Understanding Organizations. Penguin Books, London, UK.]]Google Scholar
- Hattori, F., Ohguro, T., Yokoo, M., Matsubara, S., and Yoshida, S. 1999. Socialware: Multiagent systems for supporting network communities. Communi. ACM 42, 3 (Mar.), 55--61.]] Google ScholarDigital Library
- Iglesias, C., Garijo, M., and Gonzales, J. 1999. A survey of agent-oriented methodologies. In Intelligents Agents IV: Agent Theories, Architectures, and Languages. Lacture Notes in Artificial Intelligence, vol. 1555. Springer-Verlag, New York, pp. 317--330.]] Google ScholarDigital Library
- Jennings, N. R. 2001. An agent-based approach for building complex software systems. Commun. ACM, 44, 4 (Apr.), 35--41.]] Google ScholarDigital Library
- Juan, T., Pierce, A., and Sterling, L. 2002. Roadmap: Extending the gaia methodology for complex open systems. In Proceedings of the 1st ACM Joint Conference on Autonomous Agents and Multi-Agent Systems (Bologna, Italy, July). ACM, New York, pp. 3--10.]] Google ScholarDigital Library
- Kendall, E. A. 2001. Agent software engineering with role modelling. In Proceedings of the 1st International Workshop on Agent-Oriented Software Engineering. Lecture Notes in Computer Science, vol. 1957. Springer-Verlag, New York, pp. 163--170.]] Google ScholarDigital Library
- Kephart, J. O. and Chess, D. M. 2003. The vision of autonomic computing. IEEE Comput. 36, 1, (Jan.), 41--50.]] Google ScholarDigital Library
- Kolp, M., Giorgini, P., and Mylopoulos, J. 2002. A goal-based organizational perspective on multiagent architectures. In Intelligent Agents VIII: Agent Theories, Architectures, and Languages. Lecture Notes in Artificial Intelligence, vol. 2333. Springer-Verlag, New York, pp. 128--140.]] Google ScholarDigital Library
- Leer, G. and Hefferman, D. 2002. Expanding automotive electronic systems. IEEE Comput. 35, 1 (Jan.), 88--93.]] Google ScholarDigital Library
- Lind, J. 2001. Iterative Software Engineering for Multiagent Systems: The MASSIVE Method. Lecture Notes in Computer Science, vol. 1994. Springer-Verlag, Berlin, Germany.]]Google Scholar
- Maes, P. 1994. Agents that reduce work and information overload. Commun. ACM 37, 7 (July), 30--40.]] Google ScholarDigital Library
- Mamei, M., Zambonelli, F., and Leonardi, L. 2003. Distributed motion coordination in co-fields. In Proceedings of the 6th Symposium on Autonomous Decentralized Systems (Pisa, Italy, Apr.). IEEE Computer Society Press, Los Alamitos, Calif., pp. 63--70.]] Google ScholarDigital Library
- Manna, Z. and Pnueli, A. 1995. Temporal Verification of Reactive Systems---Safety. Springer-Verlag, Berlin, Germany.]] Google ScholarDigital Library
- Mataric, M. 1992. Integration of representation into goal-driven behavior-based robots. IEEE Trans. Rob. Automat. 8, 3 (Dec.), 59--69.]]Google ScholarCross Ref
- Mintzberg, H. 1979.The Structuring of Organizations: A Synthesis of the Research. Prentice-Hall, Englewood Cliffs, N.J.]]Google Scholar
- Moses, Y. and Tennenholtz, M. 1995. Artificial social systems. Comput. Artif. Intel. 14, 3, 533--562.]]Google Scholar
- Mylopoulos, J., Chung, L., and Yu, E. 1999. From object-oriented to goal-oriented requirements analysis. Communi. ACM 42, 1 (Jan.), 31--37.]] Google ScholarDigital Library
- Noriega, P. 1997. Agent-mediated Auctions: The Fishmarket Metaphor. Ph.D Thesis, Universitat Autonoma de Barcelona, Barcelona, Spain.]]Google Scholar
- Odell, J., Van Dyke Parunak, H., and Bock, C. 2001. Representing agent interaction protocols in UML. In Proceedings of the 1st International Workshop on Agent-Oriented Software Engineering. Lecture Notes in Computer Science, vol. 1957. Springer-Verlag, New York, pp. 121--140.]] Google ScholarDigital Library
- Parunak, V. 1997. Go to the ant: Engineering principles from natural agent systems. Ann. Oper. Res. 75, 69--101.]]Google ScholarCross Ref
- Ricci, A., Omicini, A., and Denti, E. 2002. Agent coordination infrastructures for virtual enterprises and workflow. Int. J. Coop. Inf. Syst. 11, 3 (Sept.), 335--380.]]Google ScholarCross Ref
- Ripeani, M., Iamnitchi, A., and Foster, I. 2002. Mapping the gnutella network. IEEE Internet Comput. 6, 1 (Jan.), 50--57.]] Google ScholarDigital Library
- Rumbaugh, J., Jacobson, I., and Booch, G. 1998. The Unified Modeling Language Reference Manual. Addison-Wesley, Reading, Mass.]] Google ScholarDigital Library
- Schwabe, D., Guimaraer, R. M., and Rossi, G. 2002. Cohesive design of personalized web applications. IEEE Internet Comput. 6, 2 (Apr.), 34--43.]] Google ScholarDigital Library
- Shaw, M., DeLine, R., Klein, D., Ross, T., Young, D., and Zelesnik, G. 1995. Abstractions for software architecture and tools to support them. IEEE Trans. Softw. Eng. 21, 4 (Apr.), 314--335.]] Google ScholarDigital Library
- Shaw, M. and Garlan, D. 1996. Software Architectures: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs, N.J.]] Google ScholarDigital Library
- Shehory, O. and Sturm, A. 2001. Evaluation of modeling techniques for agent-based systems. In Proceedings of the 5th International Conference on Autonomous Agents (Montreal, Ont., Canada, June). ACM, New York, pp. 624--631.]] Google ScholarDigital Library
- Simon, H. A. 1957. Models of Man. Wiley, New York.]]Google Scholar
- Smith, R. G. 1980. The contract net protocol: High level communication and control in a distributed problem solver. IEEE Trans. Comput. 29, 12 (Dec.), 1104--1113.]]Google Scholar
- Tahara, Y., Ohsuga, A., and Honiden, S. 1999. Agent system development based on agent patterns. In Proceedings of the 21st International Conference on Software Engineering (Los Angeles, Calif., May). ACM, New York, pp. 356--367.]] Google ScholarDigital Library
- Tennenhouse, D. 2000. Embedding the Internet: Proactive computing. Commun. ACM 43, 5 (May), 36--42.]] Google ScholarDigital Library
- Wood, M., DeLoach, S. A., and Sparkman, C. 2001. Multiagent system engineering. Int. J. Softw. Eng. Knowl. Eng. 11, 3 (Apr.), 231--258.]]Google Scholar
- Wooldridge, M. 1997. Agent-based software engineering. IEE Proc. Softw. Eng. 144, 1 (Feb.), 26--37.]]Google ScholarCross Ref
- Wooldridge, M. 2000. Reasoning about Rational Agents. MIT Press, Cambridge, Mass.]]Google Scholar
- Wooldridge, M. 2002. An Introduction to Multiagent Systems. Wiley, New York.]] Google ScholarDigital Library
- Wooldridge, M. and Jennings, N. R. 1995. Intelligent agents: Theory and practice. Knowl. Eng. Rev. 10, 2, 115--152.]]Google ScholarCross Ref
- Wooldridge, M., Jennings, N. R., and Kinny, D. 2000. The Gaia methodology for agent-oriented analysis and design. J. Autonom. Agents Multi-Agent Syst. 3, 3, 285--312.]] Google ScholarDigital Library
- Zambonelli, F., Jennings, N. R., Omicini, A., and Wooldridge, M. 2001a. Agent-oriented software engineering for internet applications. In Coordination of Internet Agents: Models, Technologies, and Applications. Springer-Verlag, Berlin, Germany, pp. 326--346.]] Google ScholarDigital Library
- Zambonelli, F., Jennings, N. R., and Wooldridge, M. 2001b. Organizational rules as an abstraction for the analysis and design of multi-agent systems. Int. J. Softw. Knowl. Eng. 11, 3 (Apr.), 303--328.]]Google Scholar
- Zambonelli, F. and Parunak, H. V. D. 2003. Signs of a revolution in computer science and software engineering. In Proceedings of the 3rd International Workshop on Engineering Societies in the Agents World. Lecture Notes in Computer Science, vol. 2577. Springer-Verlag, New York, pp. 13--28.]]Google Scholar
Index Terms
- Developing multiagent systems: The Gaia methodology
Recommendations
Contributions to the emergence and consolidation of Agent-oriented Software Engineering
Many of the issues addressed with multi-agent approaches, such as distributed coordination and self-organization, are now becoming part of industrial and business systems. However, Multiagent Systems (MASs) are still not widely adopted in industry owing ...
Organizing Multiagent Systems
Despite all the research done in the last years on the development of methodologies for designing MAS, there is no methodology suitable for the specification and design of MAS in complex domains where both the agent view and the organizational view can ...
MOBMAS: A methodology for ontology-based multi-agent systems development
Ontologies offer significant benefits to multi-agent systems: interoperability, reusability, support for multi-agent system (MAS) development activities (such as system analysis and agent knowledge modeling) and support for MAS operation (such as agent ...
Comments