410 likes | 430 Views
Chap 4: Searching Techniques. Artificial Intelligence 605451. Dr.Hassan Al-Tarawneh. 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
E N D
Chap 4: Searching Techniques Artificial Intelligence 605451 Dr.Hassan Al-Tarawneh TIN 5013: Artificial Intelligence
Motivation Attempt the end, and never stand to doubt, nothing’s so hard, but search will find it out “Robert Herrick” TIN 5013: Artificial Intelligence
What we will cover ? • Ideas in searching • Searching tree representation • Uninformed and informed search • Game playing search TIN 5013: Artificial Intelligence
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. TIN 5013: Artificial Intelligence
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? TIN 5013: Artificial Intelligence
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. TIN 5013: Artificial Intelligence
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? TIN 5013: Artificial Intelligence
Example: The Bridges of Konigsberg Problem (cont) A b6 b1 b3 b5 C B b4 b7 b2 D Predicates:Connect (B, C, b5) TIN 5013: Artificial Intelligence
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 75 100 50 E 125 C 50 100 D TIN 5013: Artificial Intelligence
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 TIN 5013: Artificial Intelligence
Node expansion TIN 5013: Artificial Intelligence
Node expansion (initial) TIN 5013: Artificial Intelligence
Node expansion (expanding Arad) TIN 5013: Artificial Intelligence
Node expansion (expanding Sibiu) TIN 5013: Artificial Intelligence
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) TIN 5013: Artificial Intelligence
Searching Strategies • Blind search traversing the search space until the goal nodes is found (might be doing exhaustive search). • Techniques : Breadth FirstUniform Cost ,Depth first, Interactive Deepening search. • Guarantees solution. • 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. TIN 5013: Artificial Intelligence
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) TIN 5013: Artificial Intelligence
1 2 4 3 Blind Search : Breadth First Search TIN 5013: Artificial Intelligence
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 TIN 5013: Artificial Intelligence
3 4 5 N+1 ……. Blind Search : Depth First Search (DFS) 1 2 TIN 5013: Artificial Intelligence
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) TIN 5013: Artificial Intelligence
Blind Search : Iterative Deepening DFS (ID-DFS) TIN 5013: Artificial Intelligence
Summary TIN 5013: Artificial Intelligence
Heuristic Search : h(n)=67 h(n)=34 E A* • 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) D h(n)=9 h(n)=12 B C* h(n)=24 h(n)=0 TIN 5013: Artificial Intelligence
Heuristic Search : Heuristic Function TIN 5013: Artificial Intelligence
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) TIN 5013: Artificial Intelligence
Heuristic Search :Greedy-Best Search 1 2 TIN 5013: Artificial Intelligence
Heuristic Search :Greedy-Best Search 3 TIN 5013: Artificial Intelligence
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! TIN 5013: Artificial Intelligence
S :10 3 2 D A :9 :8 5 1 3 2 E G H G’ :0 :3 :4 :0 Heuristic Search : A* Algorithm Path cost for S-D-G f(S) = g(S) + h(S) = 0 + 10 10f(D) = (0+3) + 9 12f(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 10f(A) = (0+2) + 8 10f(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 TIN 5013: Artificial Intelligence
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 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.