Multiagent systems: structure, principles of construction, application. Artificial Intelligence

The goal of multi-agent systems (MAS) is the coordination of independent processes. An agent is a computer entity in the form of a program or a robot. An agent can be considered autonomous, because it is able to adapt when changing its environment. MAS consists of a set of computer processes that occur simultaneously and exist at the same time, share common resources and communicate with each other. A key issue in MAS is the formalization of coordination between agents.

Definition of multiagent systems

Definition of multiagent systems

MAC is a promising approach to developing software for applications in complex areas where interacting application components are autonomous and distributed, work in dynamic and uncertain environments, must comply with some organizational rules and laws, and can join and leave the multi-agent system at runtime.

Examples of such applications are systems that manage and optimize the production and distribution of electricity between consumers or systems that optimally plan goods in transport systems. The development of multi-agent systems requires the creation of separate agents, organizations and environments.

Programming languages ​​provide software constructs for implementing individual agents in terms of social and cognitive concepts, such as information, goals, options, norms, emotions and decision-making rules.

From the point of view of social and organizational concepts, multi-agent organizations have roles, are endowed with norms, communication protocols, and resources that are subject to monitoring. The developed programming languages ​​and frameworks are used to create agent-based simulations for many sectors of continuous production: electricity, metallurgy, healthcare, the Internet, transport, traffic management and the creation of serious games.

MAS differ from single-agent systems in that there are several agents in them that simulate each other's goals and actions. In a general scenario, there may be direct interaction between agents. From the point of view of a single agent, multi-agent systems differ from systems with a single agent most significantly in that the dynamics of the environment can be determined by other agents. In addition to the uncertainty that may be inherent in the domain, other agents deliberately affect the environment in unpredictable ways.

Thus, all MAS can be considered as having dynamic media, which is typical for modern multi-agent systems. There can be any number of agents with varying degrees of heterogeneity, with / or without direct communication.

MAC Architecture

MAC Architecture

Agents must be equipped with a cognitive model:

  • beliefs;
  • desire;
  • intentions.

On the one hand, he reads “Beliefs” about the environment, which are the result of his knowledge and perceptions, and on the other hand, a set of “Desires”. Crossing these two sets, they get a new set of "Intentions", which are then directly translated into actions.

Agents must have a communication system. There are several specialized languages ​​for this purpose: Language Query and Manipulation Language (KQML). Recently, the FIPA-ACL standard created by the FIPA Foundation for Intelligent Physical Agents is common. This last principle of constructing multiagent systems is based on the theory of speech acts.

The problem of adaptation is a thorny issue, which is currently the subject of numerous studies. You can give an example of some viruses, both biological and computer, capable of adapting to a mutant environment.

Finally, an effective implementation of MAS, although not strictly speaking part of the system architecture, deserves attention using many programming languages ​​that were developed to study artificial intelligence. In particular, the LISP language is mentioned. These architectural elements apply to a system composed of cognitive agents.

Categories or models of agents

The classification of agents is established according to two criteria: cognitive agents or reagents that exhibit, on the one hand, teleonomic behavior, or reflex. The distinction that can be made between cognitive and reactive is, in fact, a representation of the world accessible to the agent. If an individual is endowed with a “symbolic representation” of the world from which he can formulate reasoning, then they speak of a cognitive agent, whereas if he has only a “sub-symbolic representation”, that is, limiting his perceptions, they speak of a reactive agent. This cognitive and reactive difference corresponds to two theoretical schools of multi-agent systems.

The first supports the fundamental approach of “smart” agents for cooperation from a sociological point of view. In the second, the possibility of the emergence of "smart" behavior of a set of non-intelligent agents (ant type) is studied. The second difference between behavioral behavior and reflex separates intentional behavior, the pursuit of explicit goals, from perceptual behavior. Thus, agent trends can be clearly expressed in agents or, conversely, come from the environment. A table grouping various types of agents:

  1. Cognitive agents.
  2. Reactive agents.
  3. Telenomic behavior.
  4. Intentional agents.
  5. Managed Agents
  6. Reflex behavior.
  7. Agents "modules".
  8. Tropical agents.

Cognitive agents are mostly intentional, that is, they have fixed goals that they are trying to accomplish. However, agents are sometimes used, called modules, that have an idea of ​​their “universe” without specific goals. They could serve, for example, to answer questions from other agents in the "universe."

Reagents can be divided into drives and tropical agents. The instinctive agent will have a fixed mission and trigger behavior if he sees that the environment no longer matches his intended purpose. The tropical agent responds only to the local state of the environment, for example, if it is light, then it runs. The source of motivation in the internal case of driving agents who have a “mission” refers only to the environment.

Organizational paradigms

Organizational paradigms

With the development of such systems, various organizational paradigms have been developed. These structures of multi-agent systems establish the framework for relationships and interactions between agents.

Hierarchies. In this model, agents are hierarchical in accordance with the structure of the tree in which each node is an agent and has an authority link on its child nodes. This model destroys the overall task of the system.

The holarchy is approaching a hierarchy. There is no authority relationship between an agent and its subgroup.

A coalition is a temporary alliance of agents that come together and collaborate because their personal interests meet. The value of the coalition must be greater than the sum of the individual values ​​of the components of the agents.

Congregations are very similar to coalitions and teams. However, they are designed to be permanent and, as a rule, have several goals to achieve. In addition, agents can enter and leave congregations and simultaneously belong to several.

Society is a collection of diverse agents that interact and communicate. They have different goals, do not have the same level of rationality and the same opportunities, but they all obey the general laws (norms).

Federation agents give part of their autonomy to the delegate of their group. Group agents interact only with their delegate, who, in turn, interacts with delegates from other groups.

Sales agents offer products that buyer's agents may claim. This type of organization allows, for example, to simulate real markets and compare different trading strategies.

Matrix organization agents are hierarchical. However, unlike the hierarchy presented above, when an agent submits to only a few other agents, these in one matrix organization may be subject to several others.

Combinations - This combined organization mixes many of the styles presented above. This can be, for example, a coalition or a hierarchy of teams.

Artificial intelligence

Artificial Intelligence

The goal of cognitive science - to understand the nature and work of artificial intelligence - is that it processes internal information to make it focused. Many concepts satisfy this description: people, computers, robots, sensor systems, the list is endless. One of the types of such a system of particular interest to cognitive scientists is an artificial independent agent that acts on information.

An intelligent agent (IA) is able to make decisions based on its experience and can choose actions in different situations. As the term “artificial” suggests, the type of autonomous agents of interest is not something that nature created. Consequently, an artificial agent is all that is created by people, capable of actions on the basis of the information that he perceives, his own experiences, decisions and actions.

The field of non-natural intelligence provides technical skills for translating the desired types of agents into a programming language, related software and the corresponding architecture (hardware and related software) for implementing an agent in a real or simulated world.

Environment of the world of perception

Environment of the world of perception

An agent is everything that receives the medium through sensors and acts on it through effectors, which sounds simple enough. This agent definition covers a wide range of machines: from thermostats to objects that can actually learn a small repertoire of behavior.

Sensors are tools used by an agent to collect information about their world. The keyboard and camcorder can act as sensors if they are associated with an agent program. At the end of the system response, performers are tools used by an agent to influence the environment. Examples of effectors are a monitor, a printer, and a robotic arm.

Typically, the environment is the domain or world of the agent. These domains, at least for now, should be limited to specific types of situations in order to avoid the unlimited possibilities of the everyday world.

Autonomous Impact System

Autonomous Impact System

An autonomous agent is "a system inside and part of the environment that perceives this environment and acts on it over time, in order to implement its own agenda and in order to influence what it feels in the future." This definition of Franklin and Greisser reflects all the basic functions of intelligent agents, except for their sociability. This provides a good approximation of the main features of a wide variety of IAs that are under development.

Such agents feel their surroundings. But here, sensory data or perceptions include not only data about other objects, but also the influence of the agent itself on the state of affairs in the environment. Sensors can be organic, such as eyes and ears, and their neural processors, or artificial, such as video and audio processors, embedded in a digital computer. The environment can be a very limited area, such as enclosed space, or very complex, such as the stock market or a set of asteroids. Sensors must match the types of objects with which the agent interacts.

Reflex interaction type

Reflector agent has a more complex mechanism. Instead of a direct dynamic relationship to the environment, he searches for what he should do in the list of rules. The reflex agent responds to a given perception with a programmed response. Even if there are thousands of possible reactions to this perception, the agent has a built-in list of rules of action for the situation to fulfill those reactions that have already been considered by the programmer. The rule of the situation is basically a hypothetical imperative.

Reflex agents are really not very bright. They simply can not cope with the new product. An intelligent agent contains the functions of its less complex relatives, but it is not so limited. It acts in accordance with the agenda. It has a set of goals that it is actively pursuing. An agent based on the goal has an idea of ​​the current state of the environment and how this environment usually works. It pursues basic strategies or goals that cannot be immediately achieved. This makes the agent active, not just reactive.

Target Functional Utility

More complex agents use a service measure for various possible actions that can be performed in the environment. This sophisticated scheduler is a service-based agent. A service-based agent will evaluate each scenario to see how it reaches certain criteria with respect to getting a good result. Things such as the probability of success, the resources needed to complete the scenario, the importance of an achievable goal, the time it takes, can be taken into account in calculating utility functions.

Since a programmer cannot, as a rule, predict all the states of the world that an agent will encounter, the number of rules that would have to be written for a reflex agent would be astronomical even in very simple areas, for example, planning meetings or arranging transport routes and supplies .

Basic control cycle

Based on the definition of an intelligent agent, we can consider the basic control cycle written by agent theorist Michael Wooladrich in 2000:

  • keep peace;
  • update the internal model of the world;
  • achieve a deliberate intention;
  • use means / goals to get a plan for intentions;
  • implement the plan;
  • complete the process.

This model needs some interpretation. An agent observes the world - this means that he, using his sensors, collects perceptions. The sensor may be a keyboard attached to a digital computer, or a visual processor attached to a robot. This may be all that allows the agent to collect ideas about the world. Updating the internal model means that the agent adds a new perception to its sequence of perceptions and programmed information about the world.

Multi-Agent Development Platforms

Multi-Agent Development Platforms

AnyLogic is an open source multi-agent and multi-component CORMAS modeling software based on the object-oriented SmallTalk programming language.

DoMIS - a tool for designing multi-agent systems, focused on the "operational control of complex systems" and based on the design method of B-ADSC.

JACK is a programming language and development environment for cognitive agents, developed by Agent Oriented Software as an agent-oriented extension of the Java language.

GAMA is an open source modeling platform (LGPL) that offers a spatially explicit agent-based modeling environment using GIS data to describe agents and their environment.

JADE (Java Agent DEVELOPMENT) is the basis for the development of multi-agent open source systems, and based on the Java language.

Seven standard models

In the evolutionary research process, there is a greater contribution to how to create a system that is reliable and represents a higher level of quality. The tendency to continue is to complement or expand existing methods that have managed to consolidate decision-making within the framework of development.

The methodological standard allows, in an understandable and simple way, to create the MAC, not only using a natural language, but also using description templates that help in the specification of the system.

The methodological standard proposes seven models of problems or their solutions for building the MAC:

  1. A scenario model that describes a company or organization.
  2. A model of goals and objectives defines and describes the organic structure.
  3. The agent model defines people and autonomous systems.
  4. A role model associates goals and objectives with a specific agent.
  5. The organizational model describes the environment with which an individual agent is associated.
  6. The interaction model describes the relationship, emphasizing their coordination of agents.
  7. .

. , , , . , , . , , .

, - , . () , . .

Examples of multi-agent systems in the gaming industry are numerous and diverse. They are used in video games and in films, including the MASSIVE software, for example, to simulate the movement of a crowd, in the Lord of the Rings trilogy. They can also be used by companies, for example, to track the behavior of customers browsing websites.

MACs are also used in the world of finance. For example, the MetaTrader 4 platform allows the use of expert agents in automated trading that follow Forex courses

Advantages of using the system

In IA research, agent-based systems technology was seen as a new paradigm for conceptualizing, designing, and implementing software systems. Advantages of the multi-agent MAS approach:

  1. Distributes computing resources and capabilities in a network of interconnected agents.
  2. Allows interconnection and interoperability of several existing legacy systems.
  3. It covers various areas, including aircraft maintenance, e-wallets for book purchases, military clearance, wireless communications and communications, military logistics planning, a supply chain management system, joint mission planning, and financial portfolio management.

In research, the agent-based IA technology was perceived as a new paradigm for the conceptualization, design, implementation and multi-agent training of software systems.

Thus, MAS is a loosely coupled network of software agents that interact to solve problems that go beyond the individual capabilities or knowledge of each problem performer.

Source: https://habr.com/ru/post/F6064/


All Articles