这是indexloc提供的服务,不要输入任何密码
Skip to content

On the definition of a Multi-Agent System and its implication on Agent 2 Agent communications #863

@liar666

Description

@liar666

Dear all,

  • Context

(Intelligent) Agents[fn:1] & (Traditional) Multi-Agent Systems (MAS)[fn:2] exists since the 1980s. For decades, many researchers/academics worked on clearly defining the concepts (and differentiating them from other existing concepts like: Objects, Components, Services…), conceptualizing such systems and creating theories, techniques & tools for Multi-Agent Programming (MAOP)[fn:4] [fn:5]. Unfortunately, these works did not attract the interest of (most of) the industry. Maybe due to the barrier of entry for new Users/Developers, related to the fact it was new programming paradigm, with a lot (of theory & tool practice) to learn. It might also be due to the fact that, at the end of previous century, computing power was limited, whereas MAS required to run a decision engine for each agent, when decision engine where compute-heavy at that time.

Nowadays, we hear a lot about "(AI) Agents" & "Multi(-AI) Agent Systems" from the "Agentic AI"[fn:3] community. Drawing a huge interest from the industrial community. Maybe, because they are based on LLMs, which are able to interact using natural language, lowering a lot the barrier of entry for new Users or Developers, and which a computing power that is sufficient to even run those LLMs on most standard Desktop PCs.

  • Problem

However, like most researchers that have participated in the (Traditional) Multi-Agent System domain almost from its beginning, I cannot retain myself to see lots of "re-invention of the wheel" and limits in what is proposed in the "new" "Agentic AI" approach.

Thus, I feel the urge to advise the "Agentic AI" developers to have a look at what was done earlier in MAS. In particular, there are many problems that MCP or A2A do not address.

  • (Traditional) MAS Definition

(Sorry for the Traditional MAS researchers, to which this section might look like a very basic introductory course to Multi-Agent Systems — and partially too much popularized).

Multi-Agents Systems (MAS) are composed of five entities (VOWEL framework[fn:8]): A(gent), E(nvironment), I(nteraction), O(rganization), U(ser)

  • Agents: the basic block of a MAS.
    The most basic definition of an Agent is an /"entity able to perceive and react to its environment"/ (Notice this definition is compatible with the reinforcement learning approach) [fn:1].
    As for the "Intelligent" Agents, Russel & Norvig and Weiss defined various categories of agents [fn:6] [fn:7], in the early days, based on how they work. Unfortunately, these categories are too tightly coupled with the inner working of the agents, thus might be incomplete/obsolete with respect to what has been developed since they have been created. So, many people preferred to take the option to describe Agents in terms of "external" properties (Florea/Boissier [fn:9] [fn:5], but of course they are related to the preceding categories).
    Below is an over-simplified description, just to make you understand the core concepts:

    • (Re)Active: An Agent is able to react/respond to external stimuli
    • Pro-Active: An Agent is able to take action on it own (i.e. they are /more than just/ reactive like Objects or Components)
    • Autonomous: An Agent is able to decide to assign its own goals (i.e. they are not programmed by telling they /how/ to reach an expected state of the world, but on /what/ state of the world they should desire and they manage by themselves to find how to reach this goal)
    • Social: An Agent is able to interact with another Agent and it knows its place in the society
    • Situated/Embodied: An Agent is embedded and has a "corpse" (can be virtual) that has limited means to perceive & act on the environment

    Notice that these aspects are strongly related to the concepts A/E/I/O/U, that I've used as higher level for the current bullet points. That is because, when you observe/design MAS, you can take two
    different points of view
    : either the /Individual/ point of view (you are "inside" the Agent and can access its internal workings) or the /System/Societal/ point-of-view (you are outside the system, seeing the Agents as Black Boxes). These are the two sides of the same coin.

    Autonomy can be considered with respect to the different aspects of the system: the other Agents, the Environment, the Organization, the Interactions, or the User/Developer. In order to act autonomously with respect to $x$, an agent needs to be able to model $x$, reason about $x$ and, within other things, refuse what $x$ proposed.

  • Environment: The medium in which the Agents "live" (can be virtual).
    It imposes /constraints/ on what the Agent can/cannot see/do. Environments can have different natures/properties like [fn:6] [fn:7]:

    • Known or not
    • Observable or not
    • Deterministic, Stochastic…
    • Sequential, Episodic…
    • Static or Dynamic
    • Discrete or Continuous
  • Interactions: The way the agents communicate with one another.
    It could be through the Environment, like ants using pheromones. It can be in/direct, using body/verbal language…
    As for direct verbal communication, theories issued from linguistics [fn:18] [fn:19], tell us that, as communications are public/can be overheard by others, they are very /similar to actions/. Thus they can be defined as "Speech /Acts/" [fn:10] or "Social /Commitments/" [fn:13].

    For (Intelligent) Agents to be able to reach their goals, they need to display complex multi-agent behaviors, like collaboration/cooperation/coordination. To do so, they need a rich manner to communicate, thus a large variety of Speech Acts/Commitments. E.g. FIPA has defined a library of 22 such different "types" of messages that Agents can exchange [fn:10] [fn:11] [fn:12].

  • Organization: The society in which the Agents live.
    (NOTE: There are many formalizations for defining Organizations in the Traditional MAS literature, I will try to give the most common points (based on MOÏSE+ [fn:14]).)

    • Structural aspect: Agents can play different /Roles/ in different /Groups/
    • Functional aspect: These /Roles/ can be defined by /Missions/ to fulfill and /Goals/ to reach
    • Normative aspect: In each Group, each Agent can be Obliged/Permitted/Forbidden to play a given /Role/
    • Dynamic aspect: The relations between the Agents, the Groups and the Roles, as well as the permissions attached to them can evolve over time. Similarly the Missions and Goals related to a Role can change over time.
  • User:
    There have been some discussions about if the User should be considered as a separate entity from the MAS or included into it.
    In some systems, the user could be represented as an Agent, as it is able to interact with the other agents (in the same way as any other agent). In other systems, it is rather a "God" that imposes goals and rules to Agents (by design, thus non-breakable) or constraints on the Environment/Organization, but it is not modeled explicitly in the system and cannot be reasoned upon.
    Similarly one can discuss the position of the "Developer" with respect to the MAS.

Due to the above properties, MAS are generally considered:

  • /Decentralized/: The /data/, but also the /control/, are distributed among the Agents.
  • /Open/: Any agent can enter or leave the system at any time.

A side effect of these properties is that Agents can be developed/configured by different Developers/Users. Thus, in the same system, we can find Agents with different (or even competing) goals.

  • Agentic AI vs Traditional MAS

** From the individual point-of-view

In the Agentic AI framework, Agents are generally developed by a single User/Developer to solve a task on his behalf. There are no agents with competing goals in the system. The most typical example to illustrate the differences in view is the famous application of the "travel agency" (ironically both used to illustrate FIPA [fn:10] and Open AI's Operator Agent [fn:21]), where in Traditional MAS the travel agency and the tourist would be considered two agents with competitive goals, whereas in Agentic AI, the travel agency is seen as a tool (the website), without any goal on its own.

In Agentic AI, "autonomy" is defined by the fact that Agents /solve a task for the User/Developer and provide him with an answer without interacting with him in the process/. Most of the time, the User/Developer creates/interacts with a "Manager" Agent which splits the work into sub-tasks and delegates them to other "sub task"-Agents. This implies that Agents (e.g. "sub task" Agents) could be considered autonomous with respect to the User/Developer. But they are not autonomous with respect to the other dimensions of a MAS (A, E, I, O). For instance, a "sub task"-Agent cannot not refuse a delegated task from the Manager Agent, thus it is not autonomous with respect to this Agent (i.e. the "A" dimension of the MAS). Even with respect to the User/Developer, Agents cannot refuse a delegated task, thus their autonomy is quite limited.

In Traditional MAS, the decision making process for the Agents, the core of agents, which defines their decision capabilities/engine, were either from the "symbolic AI" approach (based on mathematical logics, ontologies, knowledge graphs\ldots{}), or from the "numerical AI" (machine learning). Works trying to integrate both approaches were very scarce. With the appearance of LLMs, AI Agents can display both capabilities: learning capabilities (few shot[fn:15]), and reasoning [fn:17] (even if the latter is probably not as strongly logical as what exists in symbolic AI[fn:16]).

Agentic AI bring powerful new capabilities with natural language interaction, which makes it easier for the User/Developer to (re)"program" the system, using natural language, whereas Traditional MAS platforms required to understand complex concepts and practical usage of tools and frameworks.

** From the societal point-of-view

From a system perspective, Traditional MAS and Agentic AI differ in their approach to the Environment, Interactions, and Organization.

Traditional MAS Environments are often physical and managed via a middleware, and show rich varieties in properties (discrete/continuous, deterministic/stochastic\ldots{}), while Agentic AI Environments are primarily the Web and structured around tools/API use.

Traditional MAS Interactions are very rich (cf. FIPA defines 22 types of communications) and allow for complex multi-agent behaviours, like coordination/cooperation/collaboration. Agentic AI Interactions are less flexible: they mostly consists in tasks delegation. Agents have no native means of refusing a message.

In Agentic AI, Agents are orchestrated, i.e. the User/Developer (or a "Manager" Agent) defines a fixed workflow, where each Agent has a single, static, implicit role, generally defined as a task to execute and not a goal to reach. AI Agent cannot model or reason about the Organization they belong to. They do no decide on their groups/roles/missions/goals, they cannot change these elements dynamically, these are assigned to them from outside.

** Summary

In summary, here are the pros and cons (direction for improvements) of Agentic AI:

⊕ In Agentic AI, interactions (mostly with the User/Developer) is based on natural language, allowing the User/Developer to (re)program the system in natural language. Thus, the domain has a lower entry barrier as Traditional MAOP, which require to master many concepts and tools.
⊕ In Agentic AI the decision process of Agent is based on LLMs and is able to perform at the same time some forms of learning and some forms of reasoning. While in Traditional MAS, it was rare that Agents could use both Symbolic IA (logics) and Numeric AI (Machine Learning) at the same time.

⊖ "Autonomy" in Agentic AI has a very limited meaning. It is only considered with respect to User/Developer, not with respect to other Agents/Environment/Interaction/Organization. Even with respect to User/Developer, the meaning of "autonomy" is quite limited, since the whole system is designed by a single User/Developer and agents pursue a general goal set by him. They are not that autonomous, as they do not decide on their own goals.
⇒ Agentic AI needs to add the ability for the Agents to model and reason about the other Agents, the Environment, the Interactions with the others, and the Organization.
⇒ Agents should be developed with the idea that other agents exists in the system that were developed by other Users/Developers, thus may have different (or even competing) goals.

⊖ In Agentic AI, the Environment is generally the Web and the only way Agents can interact with it is by manipulating tools through API, with protocols like MCP.
⇒ Agentic AI still need modeling more complex and richer environments, and the Agents to be able to model and reason about it.

⊖ In Agentic AI, with the A2A protocol, Interaction are reduced to task delegation. The recipient cannot natively refuse a delegated task. Agents cannot easily build upon rich Interactions to show complex behaviors like coordination/cooperation/collaboration, which would define a true multi-agent actions.
⇒ Agentic AI interactions are too limited and need to be enriched to allow complex multi-Agent collaboration/cooperation/coordination.

⊖ In Agentic AI, there are no Organization, only orchestration.
⇒ AI Agents should be provided the ability to model and reason about their place in the society and not just be imposed a task to be executed in a workflow decided externally.

  • Resources

Good sources for MAS works:

  • Footnotes

[fn:1] https://en.wikipedia.org/wiki/Intelligent_agent
[fn:2] https://en.wikipedia.org/wiki/Multi-agent_system
[fn:3] https://en.wikipedia.org/wiki/Agentic_AI
[fn:4] https://en.wikipedia.org/wiki/Agent-oriented_programming
[fn:5] https://mitpress.mit.edu/9780262044578/multi-agent-oriented-programming/
[fn:6] https://en.wikipedia.org/wiki/Artificial_Intelligence:_A_Modern_Approach
[fn:7] https://mitpress.mit.edu/9780262533874/multiagent-systems/
[fn:8] Y. Demazeau, "From Cognitive Interactions to Collective Behaviour in Agent-Based Systems", 1st Eur. Conf. on. Cognitive Science, Saint-Malo, France, pp. 117-132
[fn:9] https://turing.cs.pub.ro/auf2/html/chapters/chapter1/chapter_1_1_1.html
[fn:10] http://www.fipa.org/repository/cas.php3
[fn:11] http://www.fipa.org/specs/fipa00037/index.html
[fn:12] http://www.fipa.org/specs/fipa00037/SC00037J.pdf
[fn:13] https://link.springer.com/chapter/10.1007/10722777_3
[fn:14] https://dl.acm.org/doi/10.1504/IJAOSE.2007.016266
[fn:15] https://arxiv.org/abs/2005.14165
[fn:16] https://ml-site.cdn-apple.com/papers/the-illusion-of-thinking.pdf
[fn:17] https://magazine.sebastianraschka.com/p/understanding-reasoning-llms
[fn:18] https://archive.org/details/HowToDoThingsWithWordsAUSTIN
[fn:19] https://archive.org/details/speechactsessayi0000sear
[fn:20] https://theses.hal.science/file/index/docid/786141/filename/2007_these_C_Carabelea.pdf
[fn:21] https://openai.com/index/introducing-operator/

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions