Vous êtes sur la page 1sur 37

Chap 4:

Searching Techniques

Artificial Intelligence
605451

Dr.Hassan Al-Tarawneh
Motivation

Attempt the end, and never stand to


doubt, nothings so hard, but search
will find it out

Robert Herrick
What we will cover ?

Ideas in searching
Searching tree
representation
Uninformed and informed
search
Game playing search
Problem as a State Space
Search
To build as system to solve a particular problem, we
need:
Define the problem: must include precise
specifications ~ initial solution & final solution.
Analyze the problem: select the most important
features that can have an immense impact.
Isolate and represent : convert these important
features into knowledge representation.
Problem solving technique(s): choose the best
technique and apply it to particular problem.
The Quest
Typical questions that need to be answered:
Is the problem solver guaranteed to find a solution?
Will the system always terminate or caught in a infinite
loop?
If the solution is found, it is optimal?
What is the complexity of searching process?
How the system be able to reduce searching
complexity?
How it can effectively utilize the representation
paradigm?
Important Terms
Search space possible conditions and solutions.
Initial state state where the searching process
started.
Goal state the ultimate aim of searching process.
Problem space what to solve
Searching strategy strategy for controlling the
search.
Search tree tree representation of search space,
showing possible solutions from initial state.
Example: The Bridges of
Konigsberg Problem
Classical graph
applications.
Introduced by Leonhard
Euler.
Problem: Can a person
walk around the city
crosses each bridge
exactly once?
Example: The Bridges of
Konigsberg Problem (cont)
A

b6
b1
b3
b5 C
B
b4
b7
b2
D

Predicates: Connect (B, C, b5)


Example: Traveling
Salesperson Problem
Suppose a salesperson has five cities to visit and them
must return home. Goal find the shortest path to
travel.
A
B
75 125
125
100 75
E 50
125

C
50
D 100
Searching for Solution
Search through state space (explicitly using searching
tree).
Node expansion :- generating new node related to previous
nodes.
Concepts:
State :- conditions in which the node corresponds.
Parent node :- the superior node
Path cost :- the cost, from initial to goal state.
Depth:- number of steps along the path from initial state
Node expansion
Node expansion (initial)
Node expansion
(expanding Arad)
Node expansion
(expanding Sibiu)
Measuring Searching
Performance
The output from problem-solving (searching) algorithm is
either FAILURE or SOLUTION.
Four ways:
Completeness : is guaranteed to find a solution?
Optimality: does it find optimal solution ?
Time complexity: how long?
Space complexity: how much memory?
Complexity : branching factor (b), depth (d), and
max. depth (m)
Searching Strategies

Blind search traversing Heuristic search search


the search space until the process takes place by
goal nodes is found (might be traversing search space with
doing exhaustive search). applied rules (information).
Techniques: Greedy Best
Techniques : Breadth First
First Search, A* Algorithm
Uniform Cost ,Depth first,
Interactive Deepening There is no guarantee that
search. solution is found.

Guarantees solution.
Blind Search : Breadth First
Search (BFS)
Strategy ~ search all the nodes expanded at given depth
before any node at next level.
Concept : First In First Out (FIFO) queue.
Complete ?: Yes with finite b (branch).
Complexity:
Space : similar to complexity keep nodes in every memory
Optimal ? = Yes (if cost =1)
Blind Search : Breadth First
Search
1 2

3 4
Blind Search : Depth First
Search (DFS)
Strategy ~ search all the nodes expanded in deepest path.
Last In First Out concept.
Complete ?: No
Complexity:
Space : O(bm) b ; branching factor, m ; max. depth
Optimality ? : No
Blind Search : Depth First
Search (DFS)

1 2 3

4 5 N+1

.
Blind Search : Iterative
Deepening DFS (ID-DFS)
Strategy ~ combines DFS with best depth limits.
Gradually increase the limit; L=0, L=1 and so on.
Complete ?: Yes (if b is finite)
Complexity:
Space :
Optimality ? : yes (if path costs are all identical)
Blind Search : Iterative
Deepening DFS (ID-DFS)
Summary
Heuristic Search :
h(n)=67
h(n)=34 E
A*
Important aspect: formation of
heuristic function (h(n)).
D h(n)=9
Heuristic function additional h(n)=12
knowledge to guide searching
strategy (short cut). B C*
Distance: heuristic function
h(n)=24 h(n)=0
can be straight line distance
(SLD)
Heuristic Search : Heuristic
Function
Heuristic Search :Greedy-
Best Search
Tries to expand the node that is closest to the
goal.
Evaluates using only heuristic function : f(n) = h(n)
Possibly lead to the solution very fast.
Problem ? ~ can end up in sub-optimal solutions
(doesnt take notice of the distance it travels).
Complexity and time:
Complete & optimal ? : No (stuck in infinite loop)
Heuristic Search :Greedy-
Best Search
1

2
Heuristic Search :Greedy-
Best Search
3
Heuristic Search : A*
Algorithm
Widely known algorithm (pronounced as A star
search).
Evaluates nodes by combining g(n) cost to reach
the node and h(n) cost to get to the goal
f(n) = g(n) + h(n), f(n) estimated cost of the
cheapest solution.
Complete and optimal ~ since evaluates all paths.
Time ? ~ a bit time consuming
Space ? ~ lot of it!
Heuristic Search : A*
Algorithm
Path cost for S-D-G
S :10 f(S) = g(S) + h(S)
2 3 = 0 + 10 10
f(D) = (0+3) + 9 12
A :8 D :9 f(G) = (0+3+3) + 0 6
5
2 3 1 Total path cost = f(S)+f(D)+f(G) 28
Path cost for S-A-G
E G G H
f(S) = 0 + 10 10
:4 :0 :0 :3
f(A) = (0+2) + 8 10
f(G) = (0+2+2) + 0 4
* Path S-A-G is chosen
= Lowest cost Total path cost = f(S)+f(A)+f(G) 24
Heuristic Search : A*
Algorithm
Heuristic Search : A*
Algorithm
Heuristic Search : A*
Algorithm

TIN 5013: Artificial Intelligence


Heuristic Search : A*
Algorithm
Heuristic Search : A*
Algorithm

TIN 5013: Artificial Intelligence


Issues in Heuristic Search
Searching using heuristic function does not solely on
directed solution but the best algorithm to find
shortest path towards goal.
Admissible attempt to find possible shortest path to
a goal whenever it exists.
Informedness question in what sense the heuristic
function is better than another.
Monotonicity question if the best state is
discovered by heuristic search, is there any guarantee
that the same state wont be found later at lowest
searching cost?
References
Cawsey, A. (1998). The Essence of Artificial
Intelligence, Prentice Hall.
Russell, S. and Norvig, P. (2003). Artificial
Intelligence: A Modern Approach, Prentice-
Hall 2nd Edition.

Vous aimerez peut-être aussi