Transcript ppt

Agents and Uninformed Search
ECE457 Applied Artificial Intelligence
Spring 2007
Lecture #2.5
Rational Agents



Sensors
Actions

Environment
Percepts

Simple reflex agent
Model-based agent
Goal-based agent
Utility-based agent
Learning agent
Actuators
Agent
Program
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 2
Simple Reflex Agent
Environment
Percepts
Actions
Actuators
Sensors
Current
State
Selected
Action
If-then
Rules
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 3
Simple Reflex Agent


Dune II (1992) units were
simple reflex agents
Harvester rules:





ECE457 Applied Artificial Intelligence
IF at refinery AND not empty
THEN empty
IF at refinery AND empty
THEN go harvest
IF harvesting AND not full
THEN continue harvesting
IF harvesting AND full
THEN go to refinery
IF under attack by infantry
THEN squash them
R. Khoury (2007)
Page 4
Model-Based Agent
Environment
Percepts
Actions
Actuators
Sensors
Current
State
Previous
perceptions
Selected
Action
World changes
Impact of actions
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
If-then
Rules
Page 5
Goal-Based Agent
Environment
Percepts
Actions
Actuators
Sensors
Current
State
Previous
perceptions
State if I do
action X
Selected
Action
World changes
Goal
Impact of actions
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 6
Utility-Based Agent
Environment
Percepts
Actions
Actuators
Sensors
Current
State
Previous
perceptions
State if I do
action X
Happiness in
that state
World changes
Selected
Action
Utility
Impact of actions
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 7
Learning Agent
Environment
Percepts
Actions
Actuators
Sensors
Performance Element
Critic
Feedback
Knowledge
Changes
Learning
Problem
Element Learning Goals Generator
ECE457 Applied Artificial Intelligence
Performance
standard
R. Khoury (2007)
Page 8
Properties of the Environment

Fully observable vs. partially observable


Deterministic vs. stochastic vs. strategic


Waits for agent vs. goes on without agent vs. timer
Discrete vs. continuous


Independent episodes vs. series of events
Static vs. dynamic vs. semi-dynamic


Controlled by agent vs. randomness vs. multiagents
Episodic vs. sequential


See everything vs. hidden information
Finite distinct states vs. uninterrupted sequence
Single agent vs. cooperative vs. competitive

Alone vs. team-mates vs. opponents
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 9
Properties of the Environment

Crossword Puzzle


Monopoly


Fully observable, stochastic, sequential, static,
discrete, competitive multi-agent
Driving a car


Fully observable, deterministic, sequential, static,
discrete, single-agent
Partially observable, stochastic, sequential,
dynamic, continuous, cooperative multi-agent
Assembly-line inspection robot

Fully observable, deterministic, episodic, dynamic,
continuous, single-agent
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 10
Well-Defined Problems


Initial state
Set of actions


Goal test


Move blank left, right, up or
down, provided it does not
get out of the game
Are the tiles in the “goal
state” order?
Concept of cost


Each action costs 1
Path cost is the sum of
actions
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 11
Well-Defined Problems

Travelling salesman problem


Initial state


Am I in the initial city after
having visited every city?
Concept of cost


ECE457 Applied Artificial Intelligence
Move to an unvisited city
Goal test


Any city
Set of actions


Find the shortest round trip to visit
each city exactly once
Action cost: distance between cities
Path cost: total distance travelled
R. Khoury (2007)
Page 12
Properties of Search Algos.

Completeness


Optimality


Is the algorithm guaranteed to find the best goal
node, i.e. the one with the cheapest path cost?
Time complexity


Is the algorithm guaranteed to find a goal node, if
one exists?
How many nodes are generated?
Space complexity

What’s the maximum number of nodes stored in
memory?
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 13
Breath-First Search

Explores each node of each level in order

Complete if b finite & optimal if cost constant
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 14
Breath-First Search

Worst case: goal is last node of depth d


Number of generated nodes:
b+b²+b³+…+bd+(bd+1-b) = O(bd+1)
Space & time complexity: all generated nodes
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 15
Uniform-Cost Search


Explore the node with the cheapest
path cost first
Condition: No zero-cost or negative-cost
edges.


Minimum cost of an action is є
Complete and optimal
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 16
Uniform-Cost Search

Worst case: goal has path cost C*, all other actions
have minimum cost of є



Depth explored before taking action C*: C*/є
Number of generated nodes: O(bC*/є)
Space & time complexity: all generated nodes
є
C*
є
є
є
ECE457 Applied Artificial Intelligence
є
є
є
є
є
є
R. Khoury (2007)
є
є
є
є
Page 17
є
Depth-First Search

Explores an entire branch first


Removes branch from memory after exploration
Complete if m finite & not optimal
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 18
Depth-First Search

Worst case for space: goal is last node of first branch



After that, we start deleting nodes
Number of generated nodes: b nodes at each of m levels
Space complexity: all generated nodes = O(bm)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 19
Depth-First Search

Worst case for time: goal is last node of last branch


Number of nodes generated:
b nodes for each node of m levels (entire tree)
Time complexity: all generated nodes O(bm)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 20
Depth-Limited Search





Depth-First Search with depth limit l
Avoids problems of Depth-First Search
when trees are unbounded
Depth-First Search is Depth-Limited
Search with l = 
Complete, if l > d
Not optimal
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 21
Depth-Limited Search

Worst case for space: goal is last node of first branch



After that, we start deleting nodes
Number of generated nodes: b nodes at each of l levels
Space complexity: all generated nodes = O(bl)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 22
Depth-Limited Search

Worst case for time: goal is last node of last branch


Number of nodes generated:
b nodes for each node of l levels (entire tree to depth l)
Time complexity: all generated nodes O(bl)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 23
Iterative Deepening Search

Depth-First Search with increasing depth limit l





Repeat depth-limited search over and over, with
l=l+1
Avoids problems of Depth-First Search when
trees are unbounded
Avoids problem of Depth-Limited Search when
goal depth d > l
Complete , if b is finite
Optimal, if path cost is equal to depth

Guaranteed to return the shallowest goal
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 24
Depth-Limited Search

Worst case for space: goal is last node of first branch



After that, we start deleting nodes
Number of generated nodes: b nodes at each of d levels
Space complexity: all generated nodes = O(bd)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 25
Depth-Limited Search

Worst case for time: goal is last node of last branch


Number of nodes generated:
b nodes for each node of d levels (entire tree to depth d)
Time complexity: all generated nodes O(bd)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 26
Depth Searches
Depth-first Depth-limited Iterative
search
search
deepening search
Depth
limit
m
l
d
Time
complexity
O(bm)
O(bl)
O(bd)
Space
complexity
O(bm)
O(bl)
O(bd)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 27
Summary of Searches
Breath- Uniform Depth Depth- Iterative
first
Cost
-first limited deepening
Complete
Yes1
Yes1
No4
No5
Yes1
Optimal
Yes2
Yes3
No
No
Yes2
Time
O(bd+1) O(bC*/є) O(bm)
O(bl)
O(bd)
Space
O(bd+1) O(bC*/є) O(bm) O(bl)
O(bd)
1: Assuming b finite (common in trees)
2: Assuming equal action costs
3: Assuming all costs  є
ECE457 Applied Artificial Intelligence
4: Unless m finite (uncommon in trees)
5: Unless l precisely selected
R. Khoury (2007)
Page 28
Summary / Example

Going from Arad to Bucharest
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 29
Summary / Example

Initial state


Action


Move to a neighbouring city, if a road
exists.
Goal test


Being in Arad
Are we in Bucharest?
Cost


Move cost = distance between cities
Path cost = distance travelled since Arad
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 30
Summary / Example

Breath-First Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 31
Summary / Example

Uniform-Cost Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 32
Summary / Example

Depth-First Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 33
Summary / Example

Depth-Limited Search, l = 4
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 34
Summary / Example

Iterative Deepening Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 35
Repeated
States
Example: 8-puzzle
left
left
right
down
ECE457 Applied Artificial Intelligence
down
left
R. Khoury (2007)
up
down
Page 36
Repeated States

Unavoidable in problems where



Actions are reversible
Multiple paths to the same state are
possible
Can greatly increase the number of
nodes in a tree

Or even make a finite tree infinite!
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 37
Repeated States
A
A
B

B
B

C
C
C
C
C

D
E
D D D D D D D D
EEEEEEEE EEEEEEEE
ECE457 Applied Artificial Intelligence

Each state
generates a
single child twice
26 different
states
225 leaves
(i.e. state Z)
Over 67M nodes
in the tree
R. Khoury (2007)
Page 38
Repeated States

Maintain a closed list of visited states



Closed list (for expanded nodes) vs. open
list (for fringe nodes)
Detect and discard repeated states upon
generation
Increases space complexity
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 39