Software Architectures and Multi-Agent Systems
Résumé
Multi-agent systems (MAS) are software systems constituted of autonomous and independent entities in interaction. Realizing an application in the form of a MAS is an architectural response which takes into account certain major requirements, such as complexity, distribution, scalability, dynamicity, or even adaptation. This chapter presents the basic concepts of MAS, then positions them as a software architecture style which essentially concerns the ``Component and Connector'' category of views. Its principal unique features concern the abstraction level, modes of coupling between entities, autonomy and decentralization. However, MAS is more than just an architecture style; more precisely, it covers a family of architectural styles depending on the varied nature of the entities and of their relations. An architectural gap between the design and implementation of MAS results from this variation. The last part of this chapter shows how to fill this gap, by defining two architectural views (macro-level and micro-level) and by relying on a software component model for realization.