Download ppt

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Uninformed Search
ECE457 Applied Artificial Intelligence
Fall 2007
Lecture #2
Outline


Problem-solving by searching
Uninformed search techniques

Russell & Norvig, chapter 3
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 2
Problem-solving by searching



An agent needs to perform actions to
get from its current state to a goal.
This process is called searching.
Central in many AI systems

Theorem proving, VLSI layout, game
playing, navigation, scheduling, etc.
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 3
Requirements for searching

Define the problem



Define a goal


Represent the search space by states
Define the actions the agent can perform
and their cost
What is the agent searching for?
Define the solution


The goal itself?
The path (i.e. sequence of actions) to get
to the goal?
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 4
Assumptions


Goal-based agent
Environment






Fully observable
Deterministic
Sequential
Static
Discrete
Single agent
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 5
Formulating problems

A well-defined problem has:




An initial state
A set of actions
A goal test
A concept of cost
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 6
Well-Defined Problem Example


Initial state
Action


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?
Cost


Each move costs 1
Path cost is the sum of
moves
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 7
Well-Defined Problem Example

Travelling salesman problem


Initial state


Is the agent 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 8
Example: 8-puzzle
left
left
right
down
ECE457 Applied Artificial Intelligence
down
left
R. Khoury (2007)
up
down
Page 9
Search Tree
ParentRoot
Child
Node (state)
Branching factor (b)
Expanding
a node
Edge (action)
Maximum depthFringe
(m)
Leaf
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 10
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 11
Types of Search

Uninformed Search


Only has the information provided by the
problem formulation (initial state, set of
actions, goal test, cost)
Informed Search

Has additional information that allows it to
judge the promise of an action, i.e. the
estimated cost from a state to a goal
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 12
Breath-First Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 13
Breath-First Search


Complete, if b is finite
Optimal, if path cost is equal to depth



Guaranteed to return the shallowest goal
(depth d)
Time complexity = O(bd+1)
Space complexity = O(bd+1)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 14
Breath-First Search

Upper-bound 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



Expansion of Breath-First Search
Explore the cheapest node first (in
terms of path cost)
Condition: No zero-cost or negative-cost
edges.

Minimum cost is є
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 16
Uniform-Cost Search




Complete given a finite tree
Optimal
Time complexity = O(bC*/є) ≥ O(bd+1)
Space complexity = O(bC*/є) ≥ O(bd+1)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 17
Uniform-Cost Search

Upper-bound 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 18
є
Depth-First Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 19
Depth-First Search




Complete, if m is finite
Not optimal
Time complexity = O(bm)
Space complexity = bm+1 = O(bm)

Can be reduced to O(m) with recursive
algorithm
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 20
Depth-First Search

Upper-bound 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 21
Depth-First Search

Upper-bound 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 22
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 = 
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 23
Depth-Limited Search




Complete, if l > d
Not optimal
Time complexity = O(bl)
Space complexity = O(bl)
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 24
Depth-Limited Search

Upper-bound 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 25
Depth-Limited Search

Upper-bound 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 26
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
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 27
Iterative Deepening Search


Complete , if b is finite
Optimal, if path cost is equal to depth




Guaranteed to return the shallowest goal
Time complexity = O(bd)
Space complexity = O(bd)
Nodes on levels above d are generated
multiple times
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 28
Iterative Deepening Search

Upper-bound 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 29
Iterative Deepening Search

Upper-bound 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 30
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 31
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 32
Summary / Example

Going from Arad to Bucharest
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 33
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 34
Summary / Example

Breath-First Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 35
Summary / Example

Uniform-Cost Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 36
Summary / Example

Depth-First Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 37
Summary / Example

Depth-Limited Search, l = 4
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 38
Summary / Example

Iterative Deepening Search
ECE457 Applied Artificial Intelligence
R. Khoury (2007)
Page 39
Repeated
States
Example: 8-puzzle
left
left
right
down
ECE457 Applied Artificial Intelligence
down
left
R. Khoury (2007)
up
down
Page 40
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 41
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 42
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 43
Related documents