Chapter 2 continue
Intelligent Agents
1
Contents will be
covered
• Describe what an intelligent agent is?
• Agents and environments
• Rationality
• PEAS (Performance measure, Environment, Actuators,
Sensors)
• Environment types
• Problem formulation
• Structure of the Intelligent Agent 2
Intelligent Agent
• An intelligent agent has the following features
o Accommodate new problem solving rules
incrementally
o Able to analyze itself in terms of behavior, error
and success
o Learn and improve through interaction with the
environment
o Learn quickly from vast amount of data
3
Intelligent Agent
• I want to build a robot that will
– Clean my house
– Information filtering agents
– Cook when I don’t want to
– Wash my clothes
– Cut my hair
– Fix my car (or take it to be fixed)
– Take a note when I am in a meeting
– Handle my emails
i.e. do the things that I don’t feel like doing…
• AI is the science of building machines (agents) that act rationally
with respect to a goal.
4
Types of Intelligent Agents
• Software agents:
– also called a softbot (software robot)
– It is an agent that interacts with a software environment by issuing
commands and interpreting the environments feedback.
– Softbots effectors are commands (e.g. mv or compress in UNIX
shell) to change the external environments state.
– E.g. mail handling agent, information filtering agent
• Physical agents
– are robots that operates in the physical world and can perceive and
manipulate objects in that world
5
Agent
• Agent is something that perceives its environment
through SENSORS and acts upon that environment
through EFFECTORS.
• The agent is assumed to exist in an environment in which
it perceives and acts
• An agent is rational since it does the right thing to
achieve the specified goal.
6
Agent
Human beings Robot
Sensors Eyes, Ears, Nose, Cameras, Scanners, Mic,
Tongue, Skin infrared range finders
Effectors Hands, Legs, Various Motors
Mouth (artificial hand, artificial
leg), Speakers, Radio
7
How Agents should act?
• A rational agent should strive to "do the right thing", based
on what it can perceive and the actions it can perform.
– What does right thing mean? It is an action that will cause the
agent to be most successful and is expected to maximize goal
achievement, given the available information
• A rational agent is not omniscient
– An Omniscient agent knows the actual outcome of its actions, and
can act accordingly, but in reality omniscience is impossible.
– Rational agents take action with expected success, where as
omniscient agent take action with 100% sure of its success
– Are human beings Omniscient or Rational agent?
8
Example: Is the agent Rational?
• Alex was walking along the road to Bus Station; He saw an old
friend across the street. There was no traffic.
• So, being rational, he started to cross the street.
• Meanwhile a big banner falls off from above and before he
finished crossing the road, he was flattened.
Was Alex irrational to cross the street?
• This points out that rationality is concerned with expected
success, given what has been perceived.
–Crossing the street was rational, because most of the time,
the crossing would be successful, and there was no way you
could have foreseen the falling banner.
–The EXAMPLE shows that we can not blame an agent for failing
to take into account something it could not perceive. Or for failing
to take an action that it is incapable of taking. 9
Examples of agents in different types of
applications
Agent type Percepts Actions Goals Environment
Symptoms, Questions, tests, Healthy Patient,
Medical patient's treatments patients, hospital
diagnosis system answers minimize costs
Interactive Typed words, Write exercises, Maximize Set of
English tutor questions, suggestions, student's score students,
suggestions corrections on exams materials
Part-picking Pixels of Place parts in Conveyor belts
robot varying Pick up parts and correct bins with parts
intensity sort into bins
Pixels
Satellite image Print a Correct Images from
intensity,
analysis system categorization of categorization orbiting
color
scene satellite
Refinery Temperature, Open, close Maximize Refinery
controller pressure valves; adjust purity, yield,
readings temperature safety
10
Rationality vs. Omniscience
• Rational agent acts so as to achieve one's goals, given one's
beliefs (one that does the right thing).
– What does right thing mean? one that will cause the agent to be most
successful and is expected to maximize goal achievement, given the
available information
• An Omniscient agent knows the actual outcome of its actions,
and can act accordingly, but in reality omniscience is impossible.
• Rational agents take action with expected success, where
as omniscient agent take action with 100% sure of its
success
• Is human beings Omniscient or Rational agent? 11
Example
• You are walking along the road to Arat-kilo; You see an old
friend across the street. There is no traffic.
• So, being rational, you start to cross the street.
• Meanwhile a big banner falls off from above and before you
finish crossing the road, you are flattened.
Were you irrational to cross the street?
• This points out that rationality is concerned with expected
success, given what has been perceived.
–Crossing the street was rational, because most of the time,
the crossing would be successful, and there was no way you
could have foreseen the falling banner.
–The EXAMPLE shows that we can not blame an agent for failing
to take into account something it could not perceive. Or for failing
to take an action that it is incapable of taking. 12
Rational agent
• In summary what is rational at any given point depends on four things.
I. Perception: -
Everything that the agent has perceived so far concerning the current
scenario in the environment 9percept sequence till now)
II. Prior Knowledge:
What an agent already knows about the environment
III. Action:
The actions that the agent can perform back to the environment
IV. Performance measure:
The performance measure that defines degrees of success of the agent
• Therefore in designing an intelligent agent, one has to remember PEAS
(Performance, Environment, Actuators, Sensors) framework.
13
Performance measure
• How do we decide whether an agent is successful or not?
– Establish a standard of what it means to be successful in an
environment and use it to measure the performance
– A rational agent should do whatever action is expected to
maximize its performance measure, on the basis of the
evidence provided by the percept sequence and whatever built-
in knowledge the agent has.
• What is the performance measure for “crossing the road”?
• What about “Chess Playing”?
14
Cont’d
Agent Type Performanc Environme Actuators Sensors
e measure nt
Taxi driver Safe: fast, Roads, other Steering, Cameras,
legal, traffic, accelerator, sonar,
comfortable pedestrians, brake, signal, speedometer,
trip, Customers horn, display GPS,
maximize odometer,
profits accelerometer
,
engine
Display sensors,
Medical Patient, questions, key board
diagnosis hospital, tests,
system Healthy staff diagnoses,
patient, treatments, Keyboard
minimize referrals entry 15
costs, of symptoms,
Reading Assignment (for next
class)
• Consider the need to design a “taxi driver agent” that
serves in Addis Ababa City;
– Identify sensors, effectors, goals, environment and
performance measure that should be integrated for the agent
to be successful in its operation?
– Note: The taxi driver needs to know where it is? What else is
on the road? How fast it has to drive? How to communicate
with the passengers and other vehicles?
16
Designing an agent
• A physical agent has two parts: architecture + program
• Architecture
– Runs the programs
– Makes the percept from the sensors available to the programs
– Feeds the program’s action choices to the effectors
• Programs
– Accepts percept from an environment and generates actions
• Before designing an agent program, we need to know the
possible percept and actions
– By enabling a learning mechanism, the agent could have a
degree of autonomy, such that it can reason and take decision
17
Program Skeleton of Agent
function SKELETON-AGENT (percept) returns action
static: knowledge, the agent’s memory of the world
knowledge UPDATE-KNOWLEDGE(knowledge,percept)
action SELECT-BEST-ACTION(knowledge)
knowledge UPDATE-KNOWLEDGE (knowledge, action)
return action
On each invocation, the agent’s knowledge base is updated
to reflect the new percept, the best action is chosen, and the
fact that the action taken is also stored in the knowledge base.
The knowledge base persists from one invocation to the next.
NOTE: Performance measure is not part of the agent
18
Classes of Environments
•Actions are done by the agent on the environment.
Environments provide percepts to an agent.
•Agent perceives and acts in an environment. Hence in order
to design a successful agent , the designer of the agent has
to understand the type of the environment it interacts with.
•Properties of Environments:
–Fully observable vs. partially observable
–Deterministic vs. stochastic
–Episodic vs. non-episodic
–Static vs. Dynamic
–Discrete vs. continuous
19
Fully observable vs. partially
observable
• Does the agent’s sensory see the complete state of the
environment?
– If an agent has access to the complete state of the environment,
then the environment is accessible or fully observable.
• An environment is effectively accessible if the sensors
detect all aspects that are relevant to the choice of action.
• Taxi driving is partially observable
– Any example of fully observable?
20
Deterministic vs. stochastic
• Is there a unique mapping from one state to
another state for a given action?
• The environment is deterministic if the next
state is completely determined by
– the current state of the environment and
– the actions selected by the agents.
• Taxi driving is non-deterministic (i.e. stochastic)
– Any example of deterministic?
21
Episodic vs. Sequential
• Does the next “episode” or event depend on the actions taken in
previous episodes?
• In an episodic environment, the agent's experience is
divided into "episodes".
– Each episode consists of the agent perceiving and then acting.
The quality of its action depends just on the episode itself.
• In sequential environment the current decision could
affect all future decisions
• Taxi driving is sequential
• Any example of Episodic? 22
Static vs. Dynamic
• Can the world change while the agent is thinking?
– If the environment can change while the agent is on purpose,
then we say the environment is dynamic for that agent
– otherwise it is static.
• Taxi driving is dynamic
– Any example of static?
23
Discrete vs. Continuous
• Are the distinct percepts & actions limited or unlimited?
– If there are a limited number of distinct, clearly
defined percepts and actions, we say the environment
is discrete.
• Taxi driving is continuous
– Any example of discrete?
24
Environment Types
Below are lists of properties of a number of familiar environments
Problems Observable Deterministic Episodic Static Discrete
Crossword Yes Yes No Yes Yes
Puzzle
Part-picking No No Yes No No
robot
Web shopping No No No No Yes
program
Tutor No No No Yes Yes
Medical Diagnosis No No No No No
Taxi driving No No No No No
•Hardest case: a environment that is inaccessible, sequential, non-
deterministic, dynamic, continuous. 25
Types of agents
Simple reflex agents
•works by finding a rule whose condition matches the
current situation (as defined by the percept) and then
doing the action associated with that rule.
E.g. If the car in front brakes, and its brake lights come on,
then the driver should notice this and initiate braking,
–Some processing is done on the visual input to establish the
condition. If "The car in front is braking"; then this triggers some
established connection in the agent program to the action "initiate
braking". We call such a connection a condition-action rule written
as: If car-in-front-is breaking then initiate-braking.
•Humans also have many such conditions. Some of which are learned
responses. Some of which are innate (inborn) responses
–Blinking when something approaches the eye. 26
Structure of a simple reflex agent
Simple Reflex Agent sensors
Environment
What the world
is like now
Condition - What action I
should do now
action rules
effectors
function SIMPLE-REFLEX-AGENT(percept) returns action
static: rules, a set of condition-action rules
state INTERPRET-INPUT (percept)
rule RULE-MATCH (state,rules)
action RULE-ACTION [rule]
return action
27
Model-Based Reflex Agent
• This is a reflex agent with internal state.
– It keeps track of the world that it can’t see now.
• It works by finding a rule whose condition matches the current situation (as
defined by the percept and the stored internal state)
– If the car is a recent model -- there is a centrally mounted brake light.
With older models, there is no centrally mounted, so what if the agent
gets confused?
Is it a parking light? Is it a brake light? Is it a turn signal light?
– Some sort of internal state should be in order to choose an action.
– The camera should detect two red lights at the edge of the vehicle go
ON or OFF simultaneously.
• The driver should look in the rear-view mirror to check on the location of
near by vehicles. In order to decide on lane-change the driver needs to
know whether or not they are there. The driver sees, and there is already
stored information, and then does the action associated with that rule.
28
Structure of Model-Based reflex agent
State sensors
How the world evolves What the world
Environment
is like now
What my actions do
Condition - action rules
What action I
should do now
effectors
function REFLEX-AGENT-WITH-STATE (percept) returns action
static: state, a description of the current world state
rules, a set of condition-action rules
state UPDATE-STATE (state, percept)
rule RULE-MATCH (state, rules)
action RULE-ACTION [rule]
state UPDATE-STATE (state, action)
return action 29
Goal based agents
• Choose actions that achieve the goal (an agent with explicit
goals)
• Involves consideration of the future:
• Knowing about the current state of the environment is not
always enough to decide what to do.
For example, at a road junction, the taxi can turn left, right or
go straight.
• The right decision depends on where the taxi is trying to get to.
As well as a current state description, the agent needs some
sort of goal information, which describes situations that are
desirable. E.g. being at the passenger's destination.
• The agent may need to consider long sequences, twists and
turns to find a way to achieve a goal.
30
Structure of a Goal-based agent
State sensors
How the world evolves What the world
is like now
Environment
What my actions do
What it will be like
if I do action A
Goals
What action I
should do now
effectors
function GOAL_BASED_AGENT (percept) returns action
state UPDATE-STATE (state, percept)
action SELECT-ACTION [state, goal]
state UPDATE-STATE (state, action)
return action 31
Utility based agents
• Goals are not really enough to generate high quality behavior.
For e.g., there are many action sequences that will get the taxi to its
destination, thereby achieving the goal. Some are quicker, safer, more
reliable, or cheaper than others. We need to consider Speed and safety
• When there are several goals that the agent can aim for, non of
which can be achieved with certainty.
• Utility provides a way in which the likelihood of success can be
weighed up against the importance of the goals. An agent that
possesses an explicit utility function can make rational decisions.
32
Structure of a utility-based agent
State sensors
How the world evolves What the world is like
now
What my actions do
Environment
What it will be like if I
do action A
Utility How happy I will be in
such as a state
What action I should do
now
effectors
function UTILITY_BASED_AGENT (percept) returns action
state UPDATE-STATE (state, percept)
action SELECT-OPTIMAL_ACTION [state, goal]
state UPDATE-STATE (state, action)
return action 33
Discussion
• Knowledge-based System (5): in various domain: legal; medical; agriculture
– Case-based reasoning; Fuzzy reasoning; probabilistic reasoning; Ontology-based
Knowledge System
• Optical Character Recognition (OCR) system : (4)
– for Braille documents; printed historical documents; handwritten documents
– Script identification
• Application of OCR: (2)
– bank-check reader; passport reader, postal OCR, etc.
• Speech Analysis (3)
– Speech Recognition; Speech synthesis, Speaker recognition
• Natural Language Processing (1)
– machine translation; lexical analysis, lexical synthesis, part-of-speech tagging, stemming,
parsing, Word sense disambiguation
• Natural language generation (8): Corpora and Statistical Methods
• Security (9)
– Face recognition; Signature recognition, Writer identification.
• Knowledge extraction: concept extraction from natural texts (i.e. legacy text;
medical text) (7)
• information filtering agent, information extraction, etc. (6)
34
35