Main Page | See live article | Alphabetical index

Artificial intelligence agent

To be considered a bonafide agent, and agent (software, hardware or otherwise) must exhibit the behavioural qualities of agenthood. Essentially this means perceiving the software environment through sensors and acting on the environment through actuators. This must be accomplished autonomously.

A mail transfer agent for example decides when to transfer and deliver the mail, and does so asynchronously and independently from the behaviours of other agents in the system.

Agents generally --and including some software agents-- have the ability to learn and to reason, logically or otherwise. They may discover facts and rules about the world or about others and may assess and argue these truths and may alter their ontology.

= Agent Environments =

Environments in which agents operate can be defined in different ways. It is helpful to view the following definitions as referring to the way the environment appears from the point of view of the agent itself.

Observable & partially observable

In order for an agent to be considered an agent some part of the environment - relevant to the action being considered - must be observable. In some cases (particularly in software) all of the environment will be observable by the agent. This, while useful to the agent, will generally only be true only of relatively simple environments.

Deterministic, stochastic & strategic

An environment that is fully deterministic is one in which the subsequent state of the environment is wholly dependent on the preceding state and the actions of the agent. If an element of interference or uncertainty occurs then the environment is stochastic. Note that a deterministic yet partially observable environment will appear to be stochastic to the agent.

And environment state wholly determined by the preceding state and the actions of multiple agents is called strategic.

Episodic & sequential

This refers to the task environment of the agent. If each task that the agent must perform does not rely upon past performance, and will not effect future performance then it is episodic. Otherwise it is sequential.

Static & dynamic

A static environment, as the name suggests, is one that does not change from one state to the next while the agent is considering its course of action. In other words - the only changes to the environment as those caused by the agent itself. A dynamic environment will change - and thus if an agent does not respond in a timely manner, this counts as a choice to do nothing.

Discrete & continuous

This distinction refers to whether or not the environment is composed of a finite or infinite number of possible states. A discrete environment will have a finite number of possible states, however, if this number is extrememly high, then it becomes virtually continuous from the agents perspective.

Single-agent & multiple agent

An environment is only considered multiple agent if the agent under consideration must act co operatively with another agent to achieve some task or goal. Otherwise another agent is simply viewed as a stochastically behaving part of the environment.

Overview of environments

Observable------rising order of complexity--> Partially observable
Deterministic ----------------------------------> Stochastic
Episodic----------------------------------------> Sequential
Static------------------------------------------> Dynamic
Discrete----------------------------------------> Continuous
Single-agent------------------------------------> Multiple agent

See also:

Reference books:
Russell, S., & Norvig, R. (2003) Artificial Intelligence: A Modern Approach, 2nd edition Prentice Hall: New Jersey