Agents

From Simulace.info
Revision as of 20:24, 24 January 2018 by Hram00 (talk | contribs)
Jump to: navigation, search

Agents definition

First of all, when talking about agents and multi-agent systems we should try to define what an agent is, however there is no one strict definition, a variety of different definitions exists. Some of them are quite simple, others are much more demanding. All strongly influenced by their background. A different definition will be used in area of artificial intelligence than in area of software engineering. A simple but clear and well understandable definition comes from S. Russel and P. Norvig:

“An agent is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through effectors”.

Another, more precise definition that extends the one above is from P. Maess:

“Autonomous agents are computational systems that inhabit some complex dynamic environment, sense and act autonomously in this environment, and by doing so realize a set of goals or tasks for which they are deigned”

The second definition specifies the kind of agents we are interested in (it talks about computational agents which belongs to the area of engineering and has nothing to with natural agents from the field of biology such as human). It also says the agent are autonomous, which means they have a control over their actions and operate without direct interventions of other entities. Last difference from previous definition is that they are acting in order to achieve some specific goals.

Agent hram00.png

An example of an agent according to a previous description is a thermostat. A simple autonomous device which is supposed to maintain temperature in a room. Maintaining the temperature is its goal. It contains a sensor to check what an actual temperature in the room is, a memory to remember what the desired temperature is and the values from the sensor and a decision-making function which compares the measured temperature with the desired one (making this decision is an action) and based on the result (using domain knowledge what to do when actual temperature is lower/higher that desired temperature) commands to turn the heating or the air conditioner on/off (commanding the heating is an effector).

Very similar specific definition is almost twenty years old and comes from G. Weiss (1999)

“An agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives”

From those three definitions we can see that an agent can be almost anything but in many cases, it is more specified and only a certain kind of agents is acceptable for a certain problem.


Agents characteristics

Communication and environment perception are two basic characteristics of agents. They might look very similar but in some situations it is better to distinguish them. Agents use their senses to perform perception and thank to it they obtain unstructured information from their environment whereas during communication, two or more agents are sending and receiving structured information to and from each other. This ability is crucial for a group of agents to work as a system. It would not be possible without communication. Communication is also necessary prerequisite for more advanced interactive abilities of agents such as cooperation, coordination or competition, also called social abilities.

Next one of basic characteristics of agents is reactiveness. Thanks to previous abilities, agents can perceive or receive an information but it’s the same important that they can react to it. They can perform different actions based on a decision they made. The decision-making process can be simple but also very complicated and sophisticated, depend on specific agents. After deciding what to do, agents act towards the environment or other agents.

Another characteristic is an autonomy, which means each agent can decide solely, acts without external intervention and has control over its actions. When they are supposed to act autonomously, they need to have some goals that they try to achieve to be able to make decisions. We say, they are goal-oriented.

Last characteristic mentioned here is initiative. Agents do not only act when they are asked to but also autonomously on their own initiative to fulfil their objectives.