In the previous posts, we looked at the Rational Agent and the operating environment. In this post we would try to study the nature of the environment.
The environment is the Task Environment (problem) for which the Rational Agent is the solution. Any task environment is characterised on the basis of PEAS.
- Performance – What is the performance characteristic which would either make the agent successful or not. For example, as per the previous example clean floor, optimal energy consumption might be performance measures.
- Environment – Physical characteristics and constraints expected. For example, wood floors, furniture in the way etc
- Actuators – The physical or logical constructs which would take action. For example for the vacuum cleaner, these are the suction pumps
- Sensors – Again physical or logical constructs which would sense the environment. From our previous example, these are cameras and dirt sensors.
Rational Agents could be physical agents like the one described above or it could also be a program that operates in a non-physical environment like an operating system. Imagine a bot web site operator designed to scan Internet news sources and show the interesting items to its users, while selling advertising space to generate revenue.
As another example, consider an online tutoring system
|Math E learning system||SLA defined score on the test||Student, Teacher, parents||Computer display system for exercises, corrections, feedback||Keyboard, Mouse|
Environments can further be classified into various buckets. This would help determine the intelligence which would need to be built in the agent. These are
- Observable – Full or Partial? If the agents sensors get full access then they do not need to pre-store any information. Partial may be due to inaccuracy of sensors or incomplete information about an environment, like limited access to enemy territory
- Number of Agents – For the vacuum cleaner, it works in a single agent environment but for driver-less taxis, every driver-less taxi is a separate agent and hence multi agent environment
- Deterministic – The number of unknowns in the environment which affect the predictability of the environment. For example, floor space for cleaning is mostly deterministic, the furniture is where it is most of the time but taxi driving on a road is non-deterministic.
- Discrete – Does the agent respond when needed or does it have to continuously scan the environment. Driver-less is continuous, online tutor is discrete
- Static – How often does the environment change. Can the agent learn about the environment and always do the same thing?
- Episodic – If the response to a certain precept is not dependent on the previous one i.e. it is stateless (static methods in Java) then it is discrete. If the decision taken now influences the future decisions then it is a sequential environment.
Hence to summarise
- An agent is something that perceives and acts in an environment.
- The performance measure evaluates the behaviour of the agent in an environment.
- A rational agent acts so as to maximise the expected value of the performance measure.
- A task environment specification includes the PEAS i.e. performance measure, the external environment, the actuators, and the sensors.
- Task environments vary along several significant dimensions. In designing an agent, the first step must always be to specify the task environment as fully as possible.