Download presentation

1
**An Introduction to Artificial Intelligence**

Lecture 4a: Informed Search and Exploration Ramin Halavati In which we see how information about the state space can prevent algorithms from blundering about the dark.

2
**Outline Best-first search Greedy best-first search A* search**

Heuristics Local search algorithms Hill-climbing search Simulated annealing search Local beam search Genetic algorithms

3
**UNINFORMED? Uninformed:**

To search the states graph/tree using Path Cost and Goal Test.

4
**INFORMED? Informed: More data about states such as distance to goal.**

Best First Search Almost Best First Search Heuristic h(n): estimated cost of the cheapest path from n to goal. h(goal) = 0. Not necessarily guaranteed, but seems fine.

5
**Greedy Best First Search**

Compute estimated distances to goal. Expand the node which gains the least estimate.

6
**Greedy Best First Search Example**

Heuristic: Straight Line Distance (HSLD)

7
**Greedy Best First Search Example**

8
**Properties of Greedy Best First Search**

Complete? No, can get stuck in loop. Time? O(bm), but a good heuristic can give dramatic improvement Space? O(bm), keeps all nodes in memory Optimal? No, it depends

9
**A* search Idea: avoid expanding paths that are already expensive**

Evaluation function f(n) = g(n) + h(n) g(n) = cost so far to reach n h(n) = estimated cost from n to goal f(n) = estimated total cost of path through n to goal

10
A* search example

11
A* vs Greedy

12
**Admissible Heuristics**

h(n) is admissible: if for every node n, h(n) ≤ h*(n), h*(n): the true cost from n to goal. Never Overestimates. It’s Optimistic. Example: hSLD(n) (never overestimates the actual road distance)

13
A* is Optimal Theorem: If h(n) is admissible, A* using TREE-SEARCH is optimal TREE-SEARCH: To re-compute the cost of each node, each time you reach it. GRAPH-SEARCH: To store the costs of all nodes, the first time you reach em.

14
**Optimality of A* ( proof )**

Suppose some suboptimal goal G2 has been generated and is in the fringe. Let n be an unexpanded node in the fringe such that n is on a shortest path to an optimal goal G. f(G2) = g(G2) since h(G2) = 0 g(G2) > g(G) since G2 is suboptimal f(G) = g(G) since h(G) = 0 f(G2) > f(G) from above h(n) ≤ h* (n) since h is admissible g(n) + h(n) ≤ g(n) + h*(n) f(n) ≤ f(G) Hence f(G2) > f(n), and A* will never select G2 for expansion

15
**Consistent Heuristics**

h(n) is consistent if: for every node n, every successor n' of n generated by any action a, h(n) ≤ c(n,a,n') + h(n') Consistency: Monotonicity Triangular Inequality. Usually at no extra cost! Theorem: If h(n) is consistent, A* using GRAPH-SEARCH is optimal

16
**Optimality of A* A* expands nodes in order of increasing f value**

Gradually adds "f-contours" of nodes Contour i has all nodes with f=fi, where fi < fi+1

17
Properties of A* Complete? Yes (unless there are infinitely many nodes with f ≤ f(G) ) Time? Exponential Space? Keeps all nodes in memory (bd) Optimal? Yes A* prunes all nodes with f(n)>f(Goal). A* is Optimally Efficient.

18
**How to Design Heuristics?**

E.g., for the 8-puzzle: h1(n) = number of misplaced tiles h2(n) = total Manhattan distance (i.e., no. of squares from desired location of each tile)

19
**Admissible heuristics**

h1(n) = Number of misplaced tiles h2(n) = Total Manhattan distance

20
**Effective Branching Factor**

If A* finds the answer by expanding N nodes, using heuristic h(n), At depth d, b* is effective branching factor if: 1+b*+(b*)2+…+(b*)d = N+1

21
**Dominance If h2(n) ≥ h1(n) for all n (both admissible)**

then h2 dominates h1. h2 is better for search. h2 is more realistic. h (n)=max(h1(n), h2(n),… ,hm(n)) Heuristic must be efficient.

22
**How to Generate Heuristics?**

Formal Methods Relaxed Problems Pattern Data Bases Disjoint Pattern Sets Learning ABSOLVER, 1993 A new, better heuristic for 8 puzzle. First heuristic for Rubik’s cube.

23
**“Relaxed Problem” Heuristic**

A problem with fewer restrictions on the actions. The cost of an optimal solution to a relaxed problem is an admissible heuristic for the original problem. 8-puzzle: Main Rule: A tile can be moved from square A to B if A is horizontally or vertically adjacent to B and B is empty. Relaxed Rules: A tile can move from square A to square B if A is adjacent to B. (h2) A tile can move from square A to square B if B is blank. A tile can move from square A to square B. (h1)

24
**“Sub Problem” Heuristic**

The cost to solve a subproblem. It IS admissible.

25
**“Pattern Database” Heuristics**

To store the exact solution cost to some sub-problems.

26
**“Disjoint Pattern” Databases**

To add the result of several Pattern-Database heuristics. Speed Up: 103 times for 15-Puzzle and 106 times for 24-Puzzle. Separablity: Rubik’s cube vs. 8-Puzzle.

27
**Learning Heuristics from Experience**

Machine Learning Techniques. Feature Selection Linear Combinations

28
**BACK TO MAIN SEARCH METHOD**

What’s wrong with A*? It’s both Optimal and Optimally Efficient. MEMORY

29
**Memory Bounded Heuristic Search**

Iterative Deepening A* (IDA*) Similar to Iterative Deepening Depth First Search Bounded by f-cost. Memory: b*d

30
**Recursive Best First Search**

Main Idea: To search a level with limited f-cost, based on other open nodes with continuous update.

31
**Recursive Best First Search**

32
**Recursive Best First Search, Sample**

33
**Recursive Best First Search, Sample**

Complete? Yes, given enough space. Space? b * d Optimal? Yes, if admissible. Time? Hard to analyze. It depends…

34
Memory, more memory… A*: bd IDA*, RBFS: b*d What about exactly 10 MB?

35
**Memory-Bounded A* MA* Simplified Memory Bounded A* (SMA*)**

To store as many nodes as possible (the A* trend). When memory is full, remove the worst current node and update its parent.

36
SMA* Example

37
SMA* Code

38
To be continued…

Similar presentations

© 2019 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google