Lecture
An agent is everything that can be considered as perceiving one's environment through sensors and acting on this environment with the help of actuators.
This simple idea is illustrated in the figure below. A person considered as an agent has eyes, ears, and other sensory organs, and the executive mechanisms for him are his arms, legs, mouth, and other parts of his body.
A robot acting as an agent may have video cameras and infrared rangefinders as sensors, and its actuators may be different engines. The software acting as an agent receives keystroke codes, file contents and network packets as input sensory data, and its impact on the environment results in the software displaying data on the screen, recording files and transmitting network packets. We accept the general assumption that each agent can perceive his own actions (but not always their results).

We use the term perception to refer to sensory data received by an agent at any particular point in time. The sequence of acts of perception of an agent is the complete history of everything that was ever perceived by an agent.
Generally speaking, the choice by an agent of action at any particular point in time may depend on the entire sequence of acts of perception observed up to this point in time. If it is possible to determine which action will be chosen by the agent in response to any possible sequence of acts of perception, a more or less precise definition of the agent may be given.
From the point of view of mathematics, this is equivalent to the statement that the behavior of an agent can be described using an agent function that maps any particular sequence of acts of perception to an action.
The task of tabulating an agent function that describes any particular agent can be considered; for most agents, this would be a very large table (in fact, infinite) if the limit on the length of the sequences of perception acts, which should be taken into account in the table, is not set.
Conducting experiments with a certain agent, such a table can, in principle, be designed by checking all possible sequences of acts of perception and recording what actions the agent performs in response.
Such a table, of course, is an external description of the agent. The internal description consists in determining which function of an agent for a given artificial agent is realized using an agent program. It is important to distinguish the last two concepts.
The agent function is an abstract mathematical description, and the agent program is a concrete implementation operating within the framework of the agent architecture.
| The sequence of acts of perception | Act |
| [A, Clean] | Right |
| [A, dirty] | Suck |
| [In, Clean] | Left |
| [In, Dirty] | Suck |
| [A, Clean], [A, Clean] | Right |
| [A, Clean], [A, Dirty] | Suck |
| ... | ... |
| [A, Clean], [A, Clean], [A, Clean] | Right |
| [A, Clean], [A, Clean], [A, Dirty] | Suck |
| ... | ... |
Based on the table, it can be concluded that for the vacuum cleaner world it is possible to define different agents by filling the right column of this table in different ways. Therefore, the obvious question is: “What is the correct way to fill this table?” In other words, what makes an agent good or bad, intelligent or not meeting the criteria for intellectualism?
Comments