intelligent agents - university of iowahomepage.divms.uiowa.edu/.../spring17/notes/2-agents.pdf ·...

45
CS:4420 Artificial Intelligence Spring 2017 Intelligent Agents Cesare Tinelli The University of Iowa Copyright 2004–17, Cesare Tinelli and Stuart Russell a a These notes were originally developed by Stuart Russell and are used with permission. They are copyrighted material and may not be used in other course settings outside of the University of Iowa in their current or modified form without the express written consent of the copyright holders. CS:4420 Spring 2017 – p.1/36

Upload: others

Post on 29-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

CS:4420 Artificial Intelligence

Spring 2017

Intelligent Agents

Cesare Tinelli

The University of Iowa

Copyright 2004–17, Cesare Tinelli and Stuart Russell a

aThese notes were originally developed by Stuart Russell and are used with permission. They are

copyrighted material and may not be used in other course settings outside of the University of Iowa in their

current or modified form without the express written consent of the copyright holders.

CS:4420 Spring 2017 – p.1/36

Page 2: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Readings

• Chap. 2 of [Russell and Norvig, 2012]

CS:4420 Spring 2017 – p.2/36

Page 3: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Intelligent Agents

• An agent is a system that perceives its environment throughsensors and acts upon that environment through effectors.

• A rational agent is an agent whose acts try to maximize someperformance measure.

CS:4420 Spring 2017 – p.3/36

Page 4: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Agents and Environments

Agent Sensors

Actuators

Environm

ent

Percepts

Actions

?

Agents include humans, robots, softbots, thermostats, etc.

CS:4420 Spring 2017 – p.4/36

Page 5: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Agents as Mappings

An agent can be seen as a mapping between percept sequences andactions.

f : Percept∗ −→ Action

The agent program runs on a physical architecture to produce f

The less an agents relies on its built-in knowledge, as opposed to thecurrent percept sequence, the more autonomous it is

CS:4420 Spring 2017 – p.5/36

Page 6: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Vacuum-cleaner world

A B

Percepts: location and contents, e.g., [A,Dirty ]

Actions: Left , Right , Suck , NoOp

CS:4420 Spring 2017 – p.6/36

Page 7: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

A vacuum-cleaner agent

Percept sequence Action

[A,Clean] Right

[A,Dirty] Suck

[B,Clean] Left

[B,Dirty] Suck

[A,Clean], [A,Clean] Right

[A,Clean], [A,Dirty] Suck

.

.

....

function Reflex-Vacuum-Agent( [location,status]) returns action

if status = Dirty then return Suck

else if location = A then return Right

else if location = B then return Left

CS:4420 Spring 2017 – p.7/36

Page 8: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

More Examples of Artificial Agents

Agent Type Percepts Actions Goals Environment

Medical diagnosissystem

Symptoms,findings, patient’sanswers

Questions, tests,treatments

Healthy patient,minimize costs

Patient, hospital

Satellite imageanalysis system

Pixels of varyingintensity, color

Print acategorization ofscene

Correctcategorization

Images fromorbiting satellite

Part-picking robot Pixels of varyingintensity

Pick up parts andsort into bins

Place parts incorrect bins

Conveyor beltwith parts

Refinery controller Temperature,pressure readings

Open, closevalves; adjusttemperature

Maximize purity,yield, safety

Refinery

Interactive Englishtutor

Typed words Print exercises,suggestions,corrections

Maximizestudent’s score ontest

Set of students

CS:4420 Spring 2017 – p.8/36

Page 9: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Rational Agents

The rationality of an agent depends on

• the performance measure defining the agent’s degree of success

• the percept sequence, the sequence of all the things perceived bythe agent

• the agent’s knowledge of the environment

• the actions that the agent can perform

For each possible percept sequence, an ideal rational agent doeswhatever possible to maximize its performance, based on the perceptsequence and its built-in knowledge.

CS:4420 Spring 2017 – p.9/36

Page 10: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Rationality

• What is the right function?

• Can it be implemented in a small agent program?

• Fixed performance measure evaluates the environment sequence• one point per square cleaned up in time T?• one point per clean square per time step, minus one per

move?• penalize for > k dirty squares?

CS:4420 Spring 2017 – p.10/36

Page 11: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Rationality

• What is the right function?

• Can it be implemented in a small agent program?

• Fixed performance measure evaluates the environment sequence• one point per square cleaned up in time T?• one point per clean square per time step, minus one per

move?• penalize for > k dirty squares?

• Rational 6= omniscient

• Rational 6= clairvoyant

• Rational 6= successful

• Rational =⇒ exploration, learning, autonomy

CS:4420 Spring 2017 – p.10/36

Page 12: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

PEAS

To design a rational agent, we must specify the task environment

Consider, e.g., the task of designing an automated taxi:

• Performance measure?

• Environment?

• Actuators?

• Sensors?

CS:4420 Spring 2017 – p.11/36

Page 13: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

PEAS

To design a rational agent, we must specify the task environment

Consider, e.g., the task of designing an automated taxi:

• Performance measure?Safety, destination, profits, legality, comfort, . . .

• Environment?

• Actuators?

• Sensors?

CS:4420 Spring 2017 – p.11/36

Page 14: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

PEAS

To design a rational agent, we must specify the task environment

Consider, e.g., the task of designing an automated taxi:

• Performance measure?Safety, destination, profits, legality, comfort, . . .

• Environment?Streets/freeways, traffic, pedestrians, weather . . .

• Actuators?

• Sensors?

CS:4420 Spring 2017 – p.11/36

Page 15: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

PEAS

To design a rational agent, we must specify the task environment

Consider, e.g., the task of designing an automated taxi:

• Performance measure?Safety, destination, profits, legality, comfort, . . .

• Environment?Streets/freeways, traffic, pedestrians, weather . . .

• Actuators?Steering, accelerator, brake, horn, speaker/display, . . .

• Sensors?

CS:4420 Spring 2017 – p.11/36

Page 16: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

PEAS

To design a rational agent, we must specify the task environment

Consider, e.g., the task of designing an automated taxi:

• Performance measure?Safety, destination, profits, legality, comfort, . . .

• Environment?Streets/freeways, traffic, pedestrians, weather . . .

• Actuators?Steering, accelerator, brake, horn, speaker/display, . . .

• Sensors?Cameras, accelerometers, gauges, engine sensors, keyboard,GPS, . . .

CS:4420 Spring 2017 – p.11/36

Page 17: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Internet shopping agent

• Performance measure?

• Environment?

• Actuators?

• Sensors?

CS:4420 Spring 2017 – p.12/36

Page 18: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Internet shopping agent

• Performance measure?price, quality, appropriateness, efficiency

• Environment?

• Actuators?

• Sensors?

CS:4420 Spring 2017 – p.12/36

Page 19: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Internet shopping agent

• Performance measure?price, quality, appropriateness, efficiency

• Environment?current and future WWW sites, vendors, shippers

• Actuators?

• Sensors?

CS:4420 Spring 2017 – p.12/36

Page 20: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Internet shopping agent

• Performance measure?price, quality, appropriateness, efficiency

• Environment?current and future WWW sites, vendors, shippers

• Actuators?display to user, follow URL, fill in form

• Sensors?

CS:4420 Spring 2017 – p.12/36

Page 21: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Internet shopping agent

• Performance measure?price, quality, appropriateness, efficiency

• Environment?current and future WWW sites, vendors, shippers

• Actuators?display to user, follow URL, fill in form

• Sensors?HTML pages and data (text, graphics, scripts)

CS:4420 Spring 2017 – p.12/36

Page 22: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment Types

With respect to an agent, an environment may or may not be:

• observable: the agent’s sensors detect all aspects relevant to thechoice of action

• deterministic: the next state is completely determined by thecurrent state and the actions selected by the agent

• episodic: the agent’s experience is divided into“episodes”; thequality of the agent’s actions does not depend on previousepisodes

• static: it does not change while the agent is deliberating

• discrete: there are a limited number of distinct, clearly definedpercepts and actions

• single-agent: there are not more agents in the environment

CS:4420 Spring 2017 – p.13/36

Page 23: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment Types

Solitaire Backgammon E-shopping Taxi

Observable?

Deterministic?

Episodic?

Static?

Discrete?

Single-agent?

CS:4420 Spring 2017 – p.14/36

Page 24: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

Solitaire Backgammon E-shopping Taxi

Observable? Yes Yes No No

Deterministic?

Episodic?

Static?

Discrete?

Single-agent?

CS:4420 Spring 2017 – p.15/36

Page 25: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

Solitaire Backgammon E-shopping Taxi

Observable? Yes Yes No No

Deterministic? Yes No Semi No

Episodic?

Static?

Discrete?

Single-agent?

CS:4420 Spring 2017 – p.16/36

Page 26: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

Solitaire Backgammon E-shopping Taxi

Observable? Yes Yes No No

Deterministic? Yes No Partly No

Episodic? No No No No

Static?

Discrete?

Single-agent?

CS:4420 Spring 2017 – p.17/36

Page 27: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

Solitaire Backgammon E-shopping Taxi

Observable? Yes Yes No No

Deterministic? Yes No Partly No

Episodic? No No No No

Static? Yes Semi Semi No

Discrete?

Single-agent?

CS:4420 Spring 2017 – p.18/36

Page 28: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

Solitaire Backgammon E-shopping Taxi

Observable? Yes Yes No No

Deterministic? Yes No Partly No

Episodic? No No No No

Static? Yes Semi Semi No

Discrete? Yes Yes Yes No

Single-agent?

CS:4420 Spring 2017 – p.19/36

Page 29: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

Solitaire Backgammon E-shopping Taxi

Observable? Yes Yes No No

Deterministic? Yes No Partly No

Episodic? No No No No

Static? Yes Semi Semi No

Discrete? Yes Yes Yes No

Single-agent? Yes No Yes/No No

CS:4420 Spring 2017 – p.20/36

Page 30: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Environment types

The environment type largely determines the agent design

The real world is (of course)

• partially observable,

• stochastic (instead of deterministic),

• sequential (instead of episodic),

• dynamic (instead of static),

• continuous (instead of discrete),

• multi-agent (instead of single-agent).

CS:4420 Spring 2017 – p.21/36

Page 31: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Agent Programs

Since an agent is just a mapping from percepts to actions, we candesign a program to implement this mapping.

An agent program could be as simple as a table lookup.However:

• that might be practically infeasible (a chess playing agent, for

instance, would need 35100 table entries)

• there might be a much more efficient solution

• the agent would have no autonomy

CS:4420 Spring 2017 – p.22/36

Page 32: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Different Types of Agents

Agents programs can be divided in the following classes,with increasing level of sophistication:

• Stateless reflex agents

• Stateful reflex agents

• Goal-based agents

• Utility-based agents

All these can be designed to be learning agents

CS:4420 Spring 2017 – p.23/36

Page 33: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

A Reflex Taxi-Driver Agent

• We cannot implement it as a table-lookup: the percepts are toocomplex.

• But we can abstract some portions of the table by codingcommon input/output associations.

• We do this with a list of condition/action rules:

• if car-in-front-is-braking then brake

• if light-becomes-green then move-forward

• if intersection-has-stop-sign then stop

CS:4420 Spring 2017 – p.24/36

Page 34: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Simple Reflex Agents

Agent

En

viron

men

t

Sensors

What the worldis like now

What action Ishould do nowCondition−action rules

Actuators

Reflex agents can be implemented very efficiently.

However, they have limited applicability.

CS:4420 Spring 2017 – p.25/36

Page 35: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Reflex Taxi-Driver Agent with State

• Often, the agent must remember some of its percepts to take anaction.

Ex: car in front signals it is turning left.

• It must also remember which actions it has taken.Ex: loaded/unloaded passenger.

• In jargon, it must have internal state.

CS:4420 Spring 2017 – p.26/36

Page 36: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Reflex Taxi-Driver Agent with State

To update its state the agent needs two kinds of knowledge:

1. how the world evolves independently from the agent;

Ex: an overtaking car gets closer with time.

2. how the world is affected by the agent’s actions.

Ex: if I turn left, what was to my right is now behind me.

CS:4420 Spring 2017 – p.27/36

Page 37: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Reflex Agents with Internal State

Agent

En

viron

men

tSensors

What action Ishould do now

State

How the world evolves

What my actions do

Condition−action rules

Actuators

What the worldis like now

CS:4420 Spring 2017 – p.28/36

Page 38: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

A Goal-based Taxi-Driver Agent

• Knowing about the world is not always enough to decide what todo.

Ex: what direction do I take at an intersection?

• The agent needs goal information.Ex: passenger’s destination

• Combining goal information with the knowledge of its actions,the agent can choose those actions that will achieve the goal.

• A new kind of decision-making is required (“what-if reasoning”).

• Search and Planning are devoted to find action sequences thatachieve an agent’s goal.

CS:4420 Spring 2017 – p.29/36

Page 39: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Goal-based Agents

Agent

En

viron

men

tSensors

What it will be like if I do action A

What action Ishould do now

State

How the world evolves

What my actions do

Goals

Actuators

What the worldis like now

CS:4420 Spring 2017 – p.30/36

Page 40: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Goal-based Agents

Goal-based Agents are much more flexible in

• responding to a changing environment;

• accepting different goals.

CS:4420 Spring 2017 – p.31/36

Page 41: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Utility-based Taxi-Driver Agent

• There may be many ways to get to a destination but some maybe better than others.

Ex: this way is faster/cheaper/more comfortable/. . .

• A particular configuration of the world, a world state, can beassigned a utility (the quality of being useful) value for theagent.

• A sequence of actions is preferred if it leads to a goal state withhigher utility value.

• A utility function aids decision-making in case of

1. conflicting goals (by helping find a trade-off).Ex: minimize trip time and also fuel consumption.

2. several possible goals, none of which is achievable withcertainty.

CS:4420 Spring 2017 – p.32/36

Page 42: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Utility-based Agents

Agent

En

viron

men

tSensors

What it will be like if I do action A

How happy I will be in such a state

What action Ishould do now

State

How the world evolves

What my actions do

Utility

Actuators

What the worldis like now

CS:4420 Spring 2017 – p.33/36

Page 43: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Learning Agents

Performance standard

Agent

En

viron

men

tSensors

Performance element

changes

knowledgelearning goals

Problem generator

feedback

Learning element

Critic

Actuators

CS:4420 Spring 2017 – p.34/36

Page 44: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Summary

Agents interact with environments through actuators and sensors

The agent function describes what the agent does in all circumstances

The performance measure evaluates the environment sequence

A perfectly rational agent maximizes expected performance

Agent programs implement (some) agent functions

PEAS descriptions define task environments

CS:4420 Spring 2017 – p.35/36

Page 45: Intelligent Agents - University of Iowahomepage.divms.uiowa.edu/.../Spring17/notes/2-agents.pdf · 2017. 2. 10. · Intelligent Agents • An agent is a system that perceives its

Summary

Environments are categorized along several dimensions:

• observable?

• deterministic?

• episodic? static?

• discrete?

• single-agent?

There are several basic agent architectures:

• reflex

• reflex with state

• goal-based

• utility-based

CS:4420 Spring 2017 – p.36/36