What is a Multi-Agent System?

Multi-agent systems are those made up of many interacting computing elements, called agents, that interact with each other by the exchange of messages through some computer network infrastructure. They are quite a new concept to computer science - they have been studied since about 1980, until the sub-field was more widely recognised during the mid-1990s. Since then, due to the belief that these systems are an ideal software through which we can exploit all the options that large distributed systems offer,such as the Internet, Multi-Agent Systems have experienced rapid growth, with their ideas being applied in several domains.

In order for agents to interact successfully, they need to be able to cooperate, coordinate and negotiate. Hence,as an emerging advancement into distributed artificial intelligence, Multi-Agent Systems promote the concept of coordination and communication of computational agents.However, like any other system,there exist common objections to Multi-Agent Systems.


So, what is an Agent?

An agent is a computer system situated in some environment, capable of taking independent action on behalf of its user or owner to achieve objectives.This means,that it knows by itself how it is to achieve its design aims;it doesn't need to be told what to do. The users or owners will usually have different goals,so we can say that agents are computational,information processing entities.

Properties of Agents

We do need to take into account, however,the two main problems associated with building agents.One is that of agent design, which concerns the way in which we can build agents, capable of operating independently,and autonomously in order to successfully carry out the tasks that they are delegated;the second one is that of society design, and this is about building agents that are able to interact with other agents through different ways (i.e. cooperation, coordination, and negotiation),to carry out delegated tasks,specially when their interests differ.

A Multi-Agent System at work

The above diagram illustrates a multi-agent system that is used to compute a mathematical formula.The formula is separated into its various mathematical parts and each component is calculated by a separate agent.The agent that initially breaks up the formula will also be responsible for combining the various parts once these are evaluated, and outputting the final answer to the user.


An Agent at work


Multi-agent System at work

 

 

The diagram helps summarise the way agents operate in the system. The agent takes the input from the environment, and produces the actions that affect it as output.This interaction is typically a continous, non-terminating one.