E N V I R O N M E N T S

When we talk about an environment we are describing the particular situation in which an agent is present.

Agents do not normally have complete control over their environments but more likely have partial control. This means that they can influence the environment. In turn, changes to the environment will directly affect the agents in the environment.

Environments are generally said to be non-deterministic. That is to say actions performed in certain environments can fail. Also, an agent performing the same task in two identical environments may result in completely different outcomes.

An agent in an environment will have a pre-programmed set of abilities that it can apply to different situations that it may come across in its environment. These abilities are called
effectoric capabilities. From the diagram on agents you can see that the agent has a sensor that is obviously affected by the environment. The agent can use information from this sensor along with information already known in order to decide which action to perform. Obviously not all actions can be performed in every situation. For example, an agent may have the ability to ‘open door’ but can only do so if the door is unlocked. The fact the door must be unlocked before the action can be performed is called a precondition.

The biggest problem associated with agents in an environment is deciding which action to perform at a given instance to maximise its chance of completing its goal or at least working towards it. The complexity of the decision making process is affected by the properties of an environment.

Russell and Norvig suggest the following environment properties:-

Accessible/inaccessible: 
 This refers to the possibility for an agent to obtain complete and accurate information about the environment’s state.

Examples:
Inaccessible environment:
physical world: information about any event on earth
Accessible environment: empty room which state is defined by its temperature and agents can measure it.


Determinism/non-determinism:
In a deterministic environment any action has a single guaranteed effect, and no failure or uncertainty. On the contrary is a non-deterministic environment. In this environment, the same task performed twice may produce different results or may even fail completely.

Examples:
Non-deterministic environment
: physical world: Robot on Mars
Deterministic environment: Tic Tac Toe game


Episodic/non-episodic:
In an episodic environment, each agent’s performance is the result of a series of independent tasks performed. There is no link between the agent’s performance and other different scenarios. In other words, the agent decides which action is best to take, it will only consider the task at hand and doesn’t have to consider the effect it may have on future tasks.

Examples:
Episodic environment:
mail sorting system
Non-episodic environment: chess game


Static/Dynamic:
An environment is static if only the actions of an agent modify it. It is dynamic on the other hand if other processes are operating on it.

Examples:
Dynamic environment:
physical world
Static environment: empty office with no moving objects


Discrete/Continuous:
An environment is said to be discrete if there are a finite number of actions that can be performed within it.

Examples:
Discrete environment:
A game of chess or checkers where there are a set number of moves.
Continuous environment: Taxi driving. There could be a route from to anywhere to anywhere else.


The more complex an environment is, the harder it is to decide which action to perform. The most complex environment is one that is inaccessible, non-deterministic, non-episodic, dynamic and continuous.