Multi-agent AI, non-AI multi-agents, and actors. Adaptability and autonomy

This article is an attempt at my personal generalization and highlighting the differences over the zoo of modern technologies, in which the terms: multi-agent AI, non-AI multi-agents, and actors are used in one form or another. As well as the interest in applicability to the domain of planning - logistics, production. Scheduling. With an emphasis on futurism =)

What the article is about

This article is an attempt at my personal generalization and highlighting of differences over the zoo of modern technologies, in which the following terms are used in one way or another: multi-agent AI (ollama, meta, camel), non-AI multi-agents (MAS, emergence, swarm intelligence) and actors (Akka, asynchrony, messages). As well as the interest in applicability to the domain of planning - logistics, production. Scheduling. With an emphasis on futurism =)

Multi-agent AI

What is multi-agent AI? One possible definition:

Multiagent Systems are AI platforms that include several independent and interactive agents capable of solving different tasks. Agents can be AI models, software, robots, and much more. Their joint application will allow solving complex tasks, whereas ordinary AI is focused on creating agents for specific use cases.

More on RBC:
https://trends.rbc.ru/trends/industry/66d0687c9a79471445e8265c?from=copy

Multi-agent AI can include, in one way or another, RPA robots that automate some specific human processes, especially if these robots are assembled into connected processes

Under the hood, this is the interaction of neural networks/LLMs of varying degrees of intelligence, improved by all sorts of "magic" (not fully studied by me) like fine tuning, embedding, RAG, RLHF.

+ tools that these neural networks/LLMs themselves use API, UI, and others.

As well as various auxiliary tools like verifiers, which, as I recently read in an article, are the main tool in the quest for AGI:

Here is a simple algorithm proposed in the article: we generate a bunch of answer options, then choose the one that passed the verifier (for programming these are unit tests). https://habr.com/ru/articles/873110/

The main direction in which the most progress is currently being made, both as a whole and in parts, is development. A good article-translation on this topic:

A brief overview and translation of the study Large Language Model-Based Agents for Software Engineering: A Survey, which is dedicated to the application of intelligent agents based on large language models (LLM) in development. The authors analyze 106 works, classifying them by tasks and architecture.

https://habr.com/ru/companies/bothub/articles/842816/

These statements by the well-known Sam Altman are also interesting:

CEO of OpenAI, Sam Altman, believes that multi-agent systems are the next stage in the development of AI. In his recent interview, he highlighted only 5 stages of AI development:

  1. Chatbots. This is the usual ChatGPT as we know it;

  2. Reasoners (reasoning chatbots) <- after the release of model o1 from OpenAI, we are here;

  3. Agent systems that can manage large processes;

  4. Innovators – AI that can make scientific discoveries;

  5. And finally, entire organizations consisting of AI agents.

    https://habr.com/ru/news/850542/

Conclusions:

Multi-agent AI, for some, it's "networks of RPA robots on steroids," for others, it's various autopilots. In general, when we want to teach an algorithm to think and perform actions like a human - ideally better. Whether it's playing chess, development, accounting, or lawyers. And in the future, quite possibly entire organizations.

Technologies:

  • metaGPT

  • Swarm

  • camelAi

  • Ollama

  • LangChain

Non-AI Multi-Agents

A small disclaimer regarding the attempt to call these multi-agent systems non-AI. No matter how much I read about classical multi-agent systems (most often various scientific articles), I almost never encountered attempts to call such systems and agents AI. Therefore, to separate today's hyped multi-agents from yesterday's "non-starters," we will allow ourselves to call them "Non-AI Multi-Agents" =)

Multi-agent system (MAS, Eng. Multi-agent system) is a system formed by several interacting intelligent agents

Before the hype with multi-agent AI, there were mainly academic studies on the creation of systems - in which it was proposed to look at the Agent-oriented paradigm as opposed to the OOP paradigm. Namely, to give objects - behavior and the ability to negotiate with each other in parallel without blocking. This is very much in line with the next section of this article, namely about "Actors".

As I understand the value of such systems. In the current "Industry 3/4", there is data and there are systems in which they are stored, a person with the help of his expertise or some linear optimization mechanisms of the objective function tries to get some solutions. Which, in turn, can go as input data for another person and system or another part of the system.

The agent approach solves/tries to solve a fairly large range of tasks (from the answer of Yandex.Neuro):

  • Intelligent Agents. MAS are used in the field of artificial intelligence and expert systems, where each agent represents a separate knowledge or expert area. This may include decision support systems, monitoring systems, and information processing.

  • Distributed Optimization. MAS are applied to solve complex optimization problems, where each agent performs separate calculations or searches for a solution, and then combines the results to achieve a global optimum. Examples include route planning tasks, solving combinatorial problems, and resource optimization.

  • Robotics. Each agent can represent a separate robot or even a separate part of a robot. Such systems allow robots to cooperate in performing complex tasks, such as collective exploration or search and rescue.

  • Internet of Things. MAS can be used to manage a network of connected Internet of Things devices. Each agent can represent a separate device and interact with other agents to jointly perform tasks, such as smart home or energy management.

Searching for information in this area often leads to a huge amount of rather outdated knowledge. Often these are scientific articles. The leader in this direction seemed to be Samara State University. And the company that has achieved something in this direction turned out to be:

The "Knowledge Genesis" group of companies, by the way, has a large library of articles on research in this area.

https://www.kg.ru/library/articles/

Presentation that I liked on this topic:

http://www.machinelearning.ru/wiki/images/4/42/SkobelevMMPR201927.pdf

They also have a beautiful video showing this presentation and there is a piece about a beautiful video of how it works.

The ideas of translating logistics and production planning into "Industry 5.0" seem very interesting. Where a human expert (business user) manages the system constraints, and agents based on negotiations (auctions) try to find in parallel mode - "equilibrium disequilibrium"/"disequilibrium equilibrium".

In the process of creating the system, such entities appear as:

  • Order agent

  • Resource agents

  • Broker agents

  • Contract agents

  • etc.

The main problem is that I have not tried to do this in any form yet, and it is not very clear which agents are needed. There is no hype, no articles (except scientific ones), and no "how to cook" books either.

Technologies (all quite outdated):

  • Jade

  • FIPAOS

  • Zeus

  • JACAMO

Conclusions: The technology/approach is interesting but did not gain popularity at the time, I suspect due to excessive complexity or other reasons. Current multi-agent system planning solutions are already being created on "Actors"

Actors

I really liked this article about actors, and I want to take the explanation about them from this article:

But these principles give the developer, first of all, a way to look at their subject area differently. Working with the Actor Model, we begin to see in the subject area not just some objects with some properties. We begin to see objects with their own behavior. As well as ways of communication of these objects with other such objects.

It turns out that we first learn to detect actors in the subject area itself. And then we get the opportunity to painlessly transfer these actors to objects within our code.

And this is exactly what the Actor Model is valuable for: we have the opportunity to operate with the same concepts both in relation to the subject area and in relation to the program implementation.

  • an actor is an entity with behavior;

  • actors respond to incoming messages;

  • upon receiving a message, an actor can:

    • send a number of messages to other actors;

    • create a number of new actors;

    • define a new behavior for itself to handle subsequent messages.

https://habr.com/ru/articles/342316/

And here there is a kind of mixing of concepts, that for the implementation of non-AI agents we need to use actors. More precisely, those parts of programming languages, libraries, frameworks that make it possible to implement them (asynchrony, message exchange). To my disappointment, actors are used in many places in principle, but there are almost no mentions of the "planning" domain.

Conclusions: Software is written on actors in principle, I read that sometimes people spit on what is written later =) . But nevertheless, it is not a completely vague path to try to create something.

Tools:

  • Akka (java) with a free fork

  • Akka.net

  • Erlang

  • Other languages with special libraries (C++, Python, Java, Dart)

Thoughts on the concept of the future

There is a suspicion that frameworks of trained multi-agent AI planning capable of working as autopilots (advisors) for current business users and their systems will appear earlier. Than successful solutions on non-AI/multi-agent actors.

But the question arises, what is more effective? Teach AI to work like a human with the same tools? Or divide systems into AI agents - who select constraints, suggest options for unblocking bottlenecks, up to the analysis of "what-if" to build new production facilities nearby.

And entrust the detailed planning to "non-AI agents" with simple behavior and intentions (finite automata). An analogy with a hive, an anthill, even a game of StarCraft - where there are simple units that do not need the intelligence of a great chess player, but at the same time some autonomy in decision-making, unlike full control.

And somewhere in all this there is a person who verifies the results of the work. And so that this is not a game in vain, memory and the ability to learn are needed. But where to place it in this case? Multi-agent AI, non-AI, or both? =)

And the main advantage compared to the current industry, it seems to me, will be the ability to instantly adapt to changes that have arisen. To autonomize the factories of the future Industry 5.0 (where the plant is managed by a small cool team). And do not particularly climb with all these agents into existing factories, because they are effective exactly as much as the components (tools, resources, people) are effective.

Comments