@vintcessun: The barrier to developing multi-agent systems is too high; those who haven't studied Agent theory dare not touch it. As a result, project implementation is difficult, and teams can only rely on a few experts. This paper directly takes mature architectural patterns from distributed systems (publish-subscribe, message queues, etc.) and defines a minimal set of Agent concepts mapped onto them. Even students with no DS experience can use it...
Summary
This paper proposes directly mapping mature architectural patterns from distributed systems (such as publish-subscribe and message queues) to multi-agent systems to lower the development barrier. It was validated in a course: even students with no distributed systems experience could get started with gRPC and RabbitMQ, achieving an average score above 80%.
View Cached Full Text
Cached at: 06/02/26, 07:37 PM
The barrier to entry for developing multi-agent systems is too high. Anyone who hasn’t studied Agent theory simply dares not touch it. As a result, project implementation becomes difficult, and teams have to rely on a few experts. This paper directly takes the mature architectural patterns of distributed systems (publish-subscribe, message queues, etc.), defines a minimal set of Agent concepts, and maps them on top. Even students with no DS experience can get started with gRPC and RabbitMQ, achieving an average score of over 80%. This approach of reusing engineering patterns is far more practical than reinventing the wheel.
Leveraging the Learning Curve: Reusing Existing Architectural Patterns to Design and Implement MAS
Source: https://arxiv.org/html/2606.00287 \history
This is the authors’ accepted manuscript of the article published in IEEE Access. The final published version is available athttps://doi.org/10.1109/ACCESS.2025.3546526.
\tfootnote
This study was financed in part by the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - Brazil (CAPES) - Finance Code 001
and ANAROSA A. F. BRANDÃOEscola Politécnica da USP, São Paulo, Brazil (e-mail: {arthur.casals,anarosa.brandao}@usp.br)
Abstract
Recent advancements in AI have led to the development of specialized systems related to multi-agent systems (MAS). However, the inherently collaborative nature of agents is often overlooked, and many of these specialized systems are used as components by other AI systems. From a software engineering perspective, this context can benefit from aligning the architectural characteristics of distributed systems with the inherently distributed nature of MAS. We propose that introducing a minimal set of agent-related concepts into the Distributed Systems (DS) domain can improve the engineering of modern MAS by leveraging techniques from DS engineering with established agent theory. In this study, we recapitulated the common origins of MAS and DS by drawing architectural parallels to establish a unified engineering approach. We then defined a minimal set of agent concepts to perform two practical studies on leveraging MAS development. First, we incorporated these concepts into a DS architectural pattern to design a distributed MAS. We then used these concepts in a graduate course to teach MAS engineering to students with no prior knowledge of agent theory. The learning outcomes from both courses included successful MAS implementation using DS tools and techniques. Although more than two-thirds of these students had no practical experience in developing distributed systems, the average final grade in both courses was above 80%, thus validating our approach. Finally, we discuss how this study supports the development of advanced systems using modern AI techniques consistently with established agent-related research while leveraging established DS techniques and concepts.
Index Terms:
Architectural Patterns, Distributed Systems, Multi-Agent Systems, Entity-Component-Systems
IIntroduction
In 1995, Russell and Norvig[Russell:1995:AIM:193191]stated that “AI is the study of agents”. The agent concept is also used in Distributed Artificial Intelligence (DAI)[gasser2014distributed]. Fikes[fikes1982commitment]first described the basis for autonomous and cooperative problem-solving in 1982, laying the foundation for agents as autonomous entities used for problem solving.
The main concern of DAI is to find a “collaborative solution of global problems by distributed entities”[gasser2014distributed]. In this case, entities can possess different natures and levels of complexity, includingreasoning- thus characterizing the ”intelligent” aspect. The problem-solving process is based on the concept ofinformation sharing.Collaborationarises from shared information being necessary for entities to solve the problems at hand. Simultaneously, the problem isglobaland common to all the entities involved in the problem-solving process. Finally, the process is considereddistributedbecause the entities involved in the problem-solving process can exist in different locations, as determined by logical or geographical separation.
These concepts were also summarized by Demazeau and Müller[muller1990decentralized], who introduced the concept ofDecentralized Artificial Intelligence(DzAI). In their article, they state that DzAI “is concerned withthe activity of an autonomous agent in a multi-agent world.” The focus of DzAI is to model autonomous agents that can solvetheir problemsor achieve their goals. By being able to possess multiple goals, it is also taken into account that (i) the agent might have to deal with multiple and sometimes contradictory sources of information, and (ii) all of their goals have to be mapped according to the agent’s own restrictions in terms of perceiving and acting over the environment.
Agents can be organized in communities known asmulti-agent systems(MAS), which are systems composed of multiple agents that interact among themselves in a single environment[Russell:1995:AIM:193191]to solve complex problems. Regardless of their nature, problems in MAS may possess different degrees of complexity, and they can be divided into subproblems (or goals) individually assigned to each agent in the system[ferber1999multi]. MAS are often related to or merged with modern DAI concepts due to their origin and characteristics. In 1996, Parunak[parunak1996applications]stated that structuring a DAI system would require designing both the agent and system architecture, explicitly describing the added value of an MAS in an industrial scenario. The author also stated the benefits of replacing centralized control systems and databases with an MAS whenever a control distribution would be desirable. Modern DAI is categorized as MAS and distributed problem-solving[gasser2014distributed]. MAS focuses on how agents coordinate their knowledge and activities, whereas distributed problem-solving focuses on decomposing problems and synthesizing solutions.
Owing to their inherently distributed mechanisms, it is easy to trace a parallel between MAS anddistributed systems. A distributed system (DS) is “a collection of autonomous computing elements that appear to its users as a single coherent system”[steen2017distributed]. Similar to MAS, their components concurrently interact with each other to achieve a common goal. Additionally, their computing elements (nodes) can behave independently.
Among the existing distributed systems currently used on a large scale, the World Wide Web (WWW) is one of the most widely used and developed ones. It was created in 1994 by Tim Berners-Lee as a loosely coupled distributed system for sharing documents[berners1994world], focusing on user-generated content and ease of use. A few years later, the author introduced the concept of the Semantic Web[berners2001semantic], extending his original work by adding semantics to the existing data format representation. This extension allows information on the World Wide Web to be understandable to humans and software entities. Designing systems for the Semantic Web involves not only creating systems with distributed capabilities but also systems capable of sharing and reusing knowledge, which is also part of the focus of MAS. From this point on, we will refer to the Semantic Web simply as “the Web” and systems designed for the Web as “web-based systems.”
Although there are many different architectures for distributed systems[steen2017distributed], web-based systems host some of the most complex use cases for the development of distributed systems because they can be designed for a massive number of simultaneous users that are geographically distributed and make use of both local and distributed resources. In addition, DS can be built with web interfaces, so they can either access existing systems or data on the Web or be accessed by other systems using Web protocols. In our context, this is the case for systems such as ChatGPT111https://chat.openai.com/and Midjourney222https://www.midjourney.com/, which can be used by other systems via API access and Discord333https://discord.com/integration. In either case, each system instance is treated as a software agent with different capabilities and responsibilities, similar to a heterogeneous MAS. While there are many plugins and third-party tools that address the use of multiple instances of such systems as a ”multi-agent” tool, most of them do not relate to the existing multi-agent research, neither in general nor in its subfields (e.g., coordination, communication, and collaboration).
Designing an MAS from a DS perspective means taking a minimum set of MAS elements and bringing them to the context of a DS. Interestingly, the majority of existing work related to the Web in the MAS domain adopts the opposite perspective: Web technologies (and their related elements) are brought to the context of MAS. We do not intend to argue about the absolute number of web-based distributed system implementation rates when compared with MAS, nor to speculate why or if one is easier to implement than the other. It is a fact, however, that a myriad of tools, libraries, and frameworks are available for the implementation of DS over the Web[webber2010rest]that encapsulate the specialized knowledge necessary to design distributed systems.
If we emulate the same scenario in the current MAS context, one could argue that the MAS community lacks the abundance of tools or frameworks available for distributed systems. The existing tools and MASs are almost exclusive to the agent community; all extensions are exclusive to other MAS and Agent frameworks, and many of the frameworks have not yet been used to deploy an MAS in production[mascardifantastic]. In addition, none of the most popular MAS frameworks eliminate the need for specialized knowledge, such as goals and plans, or how the system can be implemented considering different organizations, artifacts, and collaborating agents.
The objective of the present work is to propose an approach that uses both existing MAS research and modern DS engineering techniques to leverage the learning curve currently necessary for developing MAS. To achieve this objective, we need to analyze the common evolution of MAS and DS to establish a minimum set of MAS concepts that can be introduced into the DS domain and effectively used to build new AI systems.
Once this minimal conceptual set is established, its viability must be tested. This analysis was conducted in two practical studies. First, we used this minimal conceptual set in conjunction with a specific DS architectural pattern to design a distributed MAS. In the second study, we used both the conceptual set and the previous use case to teach graduate students without any previous knowledge about MAS and Agents to design and implement MAS using DS techniques. These courses took place on two different occasions.
This paper is organized as follows: SectionII (https://arxiv.org/html/2606.00287#S2)presents our study on the parallels between DS and MAS, with an emphasis on the architectural and communication aspects. In SectionIII (https://arxiv.org/html/2606.00287#S3), we explore existing work related to our research, focusing on the use of web technologies in conjunction with MAS. SectionIV (https://arxiv.org/html/2606.00287#S4)describes our approach in designing MAS in the context of DS, including our approach for determining a minimal conceptual set of topics in agent theory, the incorporation of such concepts into the DS domain, and practical studies performed to explore our approach. This section also includes the learning outcomes of both the courses. We conclude this paper in SectionV (https://arxiv.org/html/2606.00287#S5)with our final considerations and future research directions.
IIDistributed Systems and MAS
According to Steen and Tanenbaum[steen2017distributed], distributed systems can be divided intohigh-performance distributed computing,distributed information, andpervasive systems, depending on their purpose. According to the authors, the reasons for designing a DS should meet four specific goals: (i) making resources easily accessible; (ii) making distribution transparent by hiding the fact that resources are distributed across a network; (iii) offering components that can be easily used by, or integrated into other systems; and (iv) being scalable in size, geographic distribution, or number of administrative organizations (following the scalability dimensions proposed by Neuman[ord1994scale]).
Similarly, Russell and Norvig[Russell:1995:AIM:193191]stated that MAS is designed to solve problems that are beyond the capabilities of individual agents or monolithic systems. As mentioned before, multi-agent systems are inherently distributed, solving problems through the cooperation and interoperation of multiple agents. Individual agents can be used not only for distributed task allocation but also for wrapping and providing access to legacy systems. Agents can also use distributed resources to retrieve and coordinate information from multiple sources. In addition, agents are highly reusable and composable[bergenti2002discussion]. Similar to distributed systems, MAS can be built for high-performance computing tasks[leitao2013parallelising,rousset2016survey], disseminating information across multiple nodes[chen2000distributed], and for ubiquitous blending with the environment[su2011jade].
We trace a parallel between DS and MAS in this paper because while they share multiple elements in their history, both are seen and used differently by the software engineering community. In particular, Web-based distributed systems are widely used and adopted by many software engineers and organizations across the globe, whereas MAS is not yet mainstream. While we do not have the tools (or data) to affirm that this is because of one reason or another, it is also a fact that the existing resources related to Web-based DS aredistributed systems implemented from a Web perspective. This means that elements related to the DS research field were introduced and implemented in the context of the Web. Because the Web itself evolved as a distributed system, it is difficult to define the line that separates bringing one context into another. However, it is relatively easy to perceive that most distributed systems theory is shielded from the average web systems engineer. From this perspective, taking MAS elements and bringing them to the context of DS engineering could potentially leverage the development of MAS.
In the following paragraphs, we analyze the main aspects of designing a DS and establish a parallel with the MAS design aspects. These aspects revolve around two specific topics: (i) architecture and (ii) communication. One characteristic common to both DS and MAS is that all the other engineering aspects - from coordination to handling failures - depend on the system’s architecture and communication. It can be argued that ”available resources” (hardware, auxiliary systems, communication bandwidth, etc.) are also a primary topic when designing MAS and DS. However, because resource analysis is a fundamental part of designing the system architecture in the first place, we do not need to address it. This analysis aims to create a baseline for existing work in both domains, which will later be used to establish the minimal MAS conceptual set mentioned previously. The DS aspects analyzed were based on the organization proposed by Steen and Tanenbaum[steen2017distributed].
II-AArchitecture
Software architectures represent how software components are logically organized and how they should interact with each other[bass2003software]. They use architectural styles to organize system components and make their inherent complexities manageable and understandable. An architectural style “is formulated in terms of components, the way in which components are connected to each other, the data exchanged between components, and finally how these elements are jointly configured into a system”[steen2017distributed]. The components and their relationshi
Similar Articles
To truly master Multi-Agent architecture, the best method is to build it from scratch. I recommend Victor Dibia's open-source project designing-multiagent-systems (companion code repository for the book). The project includes a teaching framework built from scratch called PicoAgents...
This article recommends Victor Dibia's open-source project designing-multiagent-systems, which includes a teaching framework built from scratch called PicoAgents, for in-depth understanding of multi-agent system architecture.
@Russell3402: https://x.com/Russell3402/status/2056331558223786416
This article delves into the division of labor design in multi-agent systems, including trigger mechanisms, topology structures, and call chains, analyzing the engineering practices of systems such as Codex, Claude Code, OpenClaw, and Hermes Agent.
This article systematically reviews AI Agent architecture and engineering practices, covering control flow, context engineering, tool design, memory, multi-agent organization, evaluation, tracing, and security. It is based on the OpenClaw implementation and emphasizes the critical role of Harness (testing and validation infrastructure) for system stability.
This article systematically reviews AI Agent architecture and engineering practices, covering control flow, context engineering, tool design, memory, multi-agent organization, evaluation, tracing, and security. It is based on the OpenClaw implementation and emphasizes the critical role of Harness (testing and validation infrastructure) for system stability.
@mylifcc: Recently came across Google Cloud's reference architecture for "Multi-tenant Agent AI Systems". After reading it, I found it very insightful for indie developers and small teams looking to productionize Agents. It's not about how to prompt, but how to build enterprise-level multi-agent systems securely and scalably. ...
Sharing 5 key takeaways from Google Cloud's multi-tenant agent AI system reference architecture, which is inspiring for indie developers and small teams to productionize Agents.
@AxtonLiu: https://x.com/AxtonLiu/status/2073791557547794579
This article discusses the concept of Agent OS, emphasizing the division of tasks into multiple workstations (fetch, refine, verify, confirm) through specialization, each managed by an independent Agent to achieve controllable automation. The author uses the example of digesting browser tabs to demonstrate how specialization isolates context, responsibility, and risks, ensuring the accuracy and reliability of AI output.