Chap 4:
Searching Techniques
Artificial Intelligence
Chapter 4
Motivation
Attempt the end, and never stand to
doubt, nothing’s 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)
B
D
C
A
b1
b2
b3
b4
b6
b5
b7
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.
B
C
D
E
75
50
100
100
125
125
125
75
50
A
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
•Heuristic search  search
process takes place by
traversing search space with
applied rules (information).
•Techniques: Greedy Best
First Search, A* Algorithm
•There is no guarantee that
solution is found.
•Blind search  traversing
the search space until the
goal nodes is found (might be
doing exhaustive search).
•Techniques : Breadth First
Uniform Cost ,Depth first,
Interactive Deepening
search.
•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
4
3
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 :
•Important aspect: formation of
heuristic function (h(n)).
•Heuristic function  additional
knowledge to guide searching
strategy (short cut).
•Distance: heuristic function
can be straight line distance
(SLD)
A*
B C*
D
E
h(n)=0
h(n)=34
h(n)=24
h(n)=67
h(n)=12
h(n)=9
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
(doesn’t 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
S
G
E
D
A
G’ H
:10
:8 :9
:0
:4 :0 :3
2 3
2
5 1
3
Path cost for S-D-G
f(S) = g(S) + h(S)
= 0 + 10  10
f(D) = (0+3) + 9  12
f(G) = (0+3+3) + 0  6
Total path cost = f(S)+f(D)+f(G)
28
Path cost for S-A-G’
f(S) = 0 + 10  10
f(A) = (0+2) + 8  10
f(G’) = (0+2+2) + 0  4
Total path cost = f(S)+f(A)+f(G’) 24
* Path S-A-G is chosen
= Lowest cost
Heuristic Search : A*
Algorithm
Heuristic Search : A*
Algorithm
TIN 5013: Artificial Intelligence
Heuristic Search : A*
Algorithm
Heuristic Search : A*
Algorithm
TIN 5013: Artificial Intelligence
Heuristic Search : A*
Algorithm
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 won’t 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.

Ch4: Searching Techniques 6_2018_12_25!05_35_25_PM.ppt

  • 1.
  • 2.
    Motivation Attempt the end,and never stand to doubt, nothing’s so hard, but search will find it out “Robert Herrick”
  • 3.
    What we willcover ?  Ideas in searching  Searching tree representation  Uninformed and informed search  Game playing search
  • 4.
    Problem as aState 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.
  • 5.
    The Quest  Typicalquestions 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?
  • 6.
    Important Terms  Searchspace  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.
  • 7.
    Example: The Bridgesof Konigsberg Problem •Classical graph applications. •Introduced by Leonhard Euler. •Problem: Can a person walk around the city crosses each bridge exactly once?
  • 8.
    Example: The Bridgesof Konigsberg Problem (cont) B D C A b1 b2 b3 b4 b6 b5 b7 Predicates: Connect (B, C, b5)
  • 9.
    Example: Traveling Salesperson Problem •Supposea salesperson has five cities to visit and them must return home. Goal  find the shortest path to travel. B C D E 75 50 100 100 125 125 125 75 50 A
  • 10.
    Searching for Solution •Searchthrough 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
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
    Measuring Searching Performance •The outputfrom 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)
  • 16.
    Searching Strategies •Heuristic search search process takes place by traversing search space with applied rules (information). •Techniques: Greedy Best First Search, A* Algorithm •There is no guarantee that solution is found. •Blind search  traversing the search space until the goal nodes is found (might be doing exhaustive search). •Techniques : Breadth First Uniform Cost ,Depth first, Interactive Deepening search. •Guarantees solution.
  • 17.
    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)
  • 18.
    Blind Search :Breadth First Search 1 2 4 3
  • 19.
    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
  • 20.
    Blind Search :Depth First Search (DFS) 1 2 3 4 5 ……. N+1
  • 21.
    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)
  • 22.
    Blind Search :Iterative Deepening DFS (ID-DFS)
  • 23.
  • 24.
    Heuristic Search : •Importantaspect: formation of heuristic function (h(n)). •Heuristic function  additional knowledge to guide searching strategy (short cut). •Distance: heuristic function can be straight line distance (SLD) A* B C* D E h(n)=0 h(n)=34 h(n)=24 h(n)=67 h(n)=12 h(n)=9
  • 25.
    Heuristic Search :Heuristic Function
  • 26.
    Heuristic Search :Greedy- BestSearch •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 (doesn’t take notice of the distance it travels). •Complexity and time: •Complete & optimal ? : No (stuck in infinite loop)
  • 27.
  • 28.
  • 29.
    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!
  • 30.
    Heuristic Search :A* Algorithm S G E D A G’ H :10 :8 :9 :0 :4 :0 :3 2 3 2 5 1 3 Path cost for S-D-G f(S) = g(S) + h(S) = 0 + 10  10 f(D) = (0+3) + 9  12 f(G) = (0+3+3) + 0  6 Total path cost = f(S)+f(D)+f(G) 28 Path cost for S-A-G’ f(S) = 0 + 10  10 f(A) = (0+2) + 8  10 f(G’) = (0+2+2) + 0  4 Total path cost = f(S)+f(A)+f(G’) 24 * Path S-A-G is chosen = Lowest cost
  • 31.
    Heuristic Search :A* Algorithm
  • 32.
    Heuristic Search :A* Algorithm
  • 33.
    TIN 5013: ArtificialIntelligence Heuristic Search : A* Algorithm
  • 34.
    Heuristic Search :A* Algorithm
  • 35.
    TIN 5013: ArtificialIntelligence Heuristic Search : A* Algorithm
  • 36.
    Issues in HeuristicSearch •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 won’t be found later at lowest searching cost?
  • 37.
    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.