csc 9010 spring 2011. paula matuszek intelligent agents overview slides based in part on hwee tou...
Post on 19-Jan-2018
216 Views
Preview:
DESCRIPTION
TRANSCRIPT
CSC 9010 Spring 2011. Paula Matuszek
Intelligent Agents Overview
Slides based in part on Hwee Tou Ng, aima.eecs.berkeley.edu/slides-ppt, which are in turn based on Russell, aima.eecs.berkeley.edu/slides-pdf.
2CSC 9010 Spring 2011. Paula Matuszek
Agents• An agent is anything that can be viewed as
perceiving its environment through sensors and acting upon that environment through actuators
• Human agent: eyes, ears, and other organs for sensors; hands, legs, mouth, and other body parts for actuators
• Robotic agent: cameras and infrared range finders for sensors; various motors for actuators
• Scooter: touch and rotation sensors; wheels
3CSC 9010 Spring 2011. Paula Matuszek
Agents and environments
• The agent function maps from percept histories to actions:
[f: P* A]• The agent program runs on the physical
architecture to produce f• agent = architecture + program
4CSC 9010 Spring 2011. Paula Matuszek
Vacuum-cleaner world
• Percepts: location and contents, e.g., [A,Dirty]
• Actions: Left, Right, Suck, NoOp
5CSC 9010 Spring 2011. Paula Matuszek
A vacuum-cleaner agentPercept sequence Action
[A,Clean] Right[A, Dirty] Suck[B, Clean] Left[B, Dirty] Suck
[A, Clean],[A, Clean] Right[A, Clean],[A, Dirty] Suck
… …
6CSC 9010 Spring 2011. Paula Matuszek
Rational agents• An agent should strive to "do the right thing",
based on what it can perceive and the actions it can perform. The right action is the one that will cause the agent to be most successful
• Performance measure: An objective criterion for success of an agent's behavior
• E.g., performance measure of a vacuum-cleaner agent could be amount of dirt cleaned up, amount of time taken, amount of electricity consumed, amount of noise generated, etc.
7CSC 9010 Spring 2011. Paula Matuszek
Rational agents• Rational Agent: For each possible percept
sequence, a rational agent should select an action that is expected to maximize its performance measure, given the evidence provided by the percept sequence and whatever built-in knowledge the agent has.
• Thus, rationality depends on– performance measure that defines success– prior knowledge of the environment– actions the agent can perform– percept sequence to date
8CSC 9010 Spring 2011. Paula Matuszek
Rational agents• Rationality is distinct from omniscience
(all-knowing with infinite knowledge)• Agents can perform actions in order to
modify future percepts so as to obtain useful information (information gathering, exploration)
• An agent is autonomous if its behavior is determined by its own experience (with ability to learn and adapt)
9CSC 9010 Spring 2011. Paula Matuszek
Task Environment• An agent operates within some task
environment, not in a blank world.• This environment includes:
– what the agent is trying to do– what resources it has to do it
• The nature of the environment affects how we design an appropriate agent.
9
10
CSC 9010 Spring 2011. Paula Matuszek
PEAS: Specifying an Agent's World• The task environment for an agent can be completely
specified by defining four things:– Performance measure: How do we assess whether
we are doing the right thing?– Environment: What is the world we are in?– Actuators: How do we affect the world we are in?– Sensors: How do we perceive the world we are in?
This PEAS specification gives us the information we need to design a rational agent.
11
CSC 9010 Spring 2011. Paula Matuszek
PEAS: Taxi Driver• Consider, e.g., the task of designing an
automated taxi driver:– Performance measure: Safe, fast, legal,
comfortable trip, maximize profits– Environment: Roads, other traffic, pedestrians,
customers– Actuators: Steering wheel, accelerator, brake,
signal, horn– Sensors: Cameras, sonar, speedometer, GPS,
odometer, engine sensors, keyboard
12
CSC 9010 Spring 2011. Paula Matuszek
PEAS: • Agent: Lego Scooter• Performance: number of seconds it keeps
moving without getting stuck• Environment: Flat surface with objects but
no dropoffs.• Actuators: Motors which turn two wheels• Sensors: touch sensors, rotation sensors
12
13
CSC 9010 Spring 2011. Paula Matuszek
PEAS• Agent: Medical diagnosis system
– Performance measure: – Environment:– Actuators:– Sensors:
14
CSC 9010 Spring 2011. Paula Matuszek
PEAS• Agent: Medical diagnosis system• Performance measure: Healthy patient,
minimize costs, lawsuits• Environment: Patient, hospital, staff• Actuators: Screen display (questions, tests,
diagnoses, treatments, referrals)• Sensors: Keyboard (entry of symptoms,
findings, patient's answers)
15
CSC 9010 Spring 2011. Paula Matuszek
PEAS• Agent: Interactive English tutor• Performance measure: • Environment: • Actuators: • Sensors:
16
CSC 9010 Spring 2011. Paula Matuszek
PEAS• Agent: Interactive English tutor• Performance measure: Maximize student's
score on test• Environment: Set of students• Actuators: Screen display (exercises,
suggestions, corrections)• Sensors: Keyboard
17
CSC 9010 Spring 2011. Paula Matuszek
Agent functions and programs• An agent is completely specified by the
agent function mapping percept sequences to actions
• A rational agent function maximizes the average performance for a given environment class
• Aim: find a way to implement the rational agent function concisely
18
CSC 9010 Spring 2011. Paula Matuszek
Agent types• Four basic types in order of increasing
generality:• Simple reflex agents• Model-based reflex agents• Goal-based agents• Utility-based agents
19
CSC 9010 Spring 2011. Paula Matuszek
Simple reflex agents
20
CSC 9010 Spring 2011. Paula Matuszek
Simple reflex Vacuum Agentfunction REFLEX-VACUUM-AGENT ([location, status]) return an
actionif status == Dirty then return Suckelse if location == A then return Rightelse if location == B then return Left
• Observe the world, choose an action, implement action, done.
• Problems if environment is not fully-observable.• Depending on performance metric, may be inefficient.• Even this simple agent can have a knowledge base, in
the form of condition-action rules.
21
CSC 9010 Spring 2011. Paula Matuszek
Model-Based Agents• Suppose moving has a cost?• If a square stays clean once it is clean, then
this algorithm will be extremely inefficient.• A very simple improvement would be
– Record when we have cleaned a square – Don’t go back once we have cleaned both.
• We have built a very simple model.
22
CSC 9010 Spring 2011. Paula Matuszek
Reflex Agents with State
23
CSC 9010 Spring 2011. Paula Matuszek
Reflex Agents with State More complex agent with model: a square can get dirty again.Function REFLEX_VACUUM_AGENT_WITH_STATE ([location, status]) returns an
action. last-cleaned-A and last-cleaned-B initially declared = 100.
Increment last-cleaned-A and last-cleaned-B.
if status == Dirty then return Suck
if location == A
then
set last-cleaned-A to 0
if last-cleaned-B > 3 then return right else no-op
else
set last-cleaned-B to 0
if last-cleaned-A > 3 then return left else no-op
The value we check last-cleaned against could be modified. Could track how often we find dirt to compute value
24
CSC 9010 Spring 2011. Paula Matuszek
Model-Based = Reflex Plus State• Maintain an internal model of the state of the
environment• Over time update state using world knowledge
– How the world changes– How actions affect the world
• Agent can operate more efficiently• More effective than a simple reflex agent for
partially observable environments• May use a KB for both condition-action rules and
what world/actions do.
25
CSC 9010 Spring 2011. Paula Matuszek
Goal-based agents
26
CSC 9010 Spring 2011. Paula Matuszek
Goal-Based Agent• Agent has some information about
desirable situations• Needed when a single action cannot reach
desired outcome• Therefore performance measure needs to
take into account "the future".• Typical model for search and planning.
27
CSC 9010 Spring 2011. Paula Matuszek
Utility-based agents
28
CSC 9010 Spring 2011. Paula Matuszek
Utility-Based Agents• Possibly more than one goal, or more than
one way to reach it• Some are better, more desirable than others• There is a utility function which captures
this notion of "better". • Utility function maps a state or sequence of
states onto a metric.
29
CSC 9010 Spring 2011. Paula Matuszek
Learning agents
30
CSC 9010 Spring 2011. Paula Matuszek
Learning Agents• All agents have methods for selection actions.• Learning agents can modify these methods.• Performance element: any of the previously
described agents• Learning element: makes changes to actions• Critic: evaluates actions, gives feedback to
learning element• Problem generator: suggests actions
31
CSC 9010 Spring 2011. Paula Matuszek
Summary• We can view most intelligent systems as agents.• An agent operates in a world which can be
described by its Performance measure, Environment, Actuators, and Sensors.
• A rational agent chooses actions which maximize its performance measure, given the information it has.
• Agents range in complexity from simple reflex agents to complex utility-based and learning agents.
top related