Multi-agent system

An agent is a program that meets the following criteria (according to Jennings and Wooldridge):

Autonomy: Agents operate autonomously, without external manipulation.
Social interaction: Agents interact with the user and with other agents. Communication takes place on a semantic level beyond the execution of a set of commands.
Reactivity (Aware Objects): Agents perceive their environment and react to changes in a timely and adapted manner.
Proactive action: Agents not only react to the environment, but are also able to act purposefully and proactively.

An M. provides the environment within which agents can be initiated and instantiated, and enables the agents to communicate with each other, etc.

Source: logipedia / Fraunhofer IML