1 / 20

Understanding A* Algorithm Optimality and Alternatives for Heuristic Searches

This article delves into the optimality of the A* algorithm, its memory limitations, and alternative strategies like Iterative Deepening A* (IDA*) and Simplified Memory-Bounded A* (SMA*). It discusses how A* guarantees optimal solutions under certain conditions, examining its efficiency in various applications, such as the 8-Puzzle problem. Additionally, the article touches on iterative improvement algorithms like Hill Climbing and Simulated Annealing, highlighting their approaches to reaching optimality in search problems.

edythe
Télécharger la présentation

Understanding A* Algorithm Optimality and Alternatives for Heuristic Searches

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Optimality of A*(standard proof) • Suppose suboptimal goal G2 in the queue. • Let n be an unexpanded node on a shortest path to optimal goal G. f(G2 ) = g(G2 ) since h(G2 )=0 > g(G) since G2 is suboptimal >= f(n) since h is admissible Since f(G2) > f(n), A* will never select G2 for expansion

  2. A* - Optimality • A* is optimally efficient (Dechter and Pearl 1985): • It can be shown that all algorithms that do not expand a node which A* did expand may miss an optimal solution

  3. Memory-bounded heuristic search • A* keeps all generated nodes in memory • On many problems A* will run out of memory • Iterative deepening A* (IDA*) • Like IDS but uses f-cost rather than depth at each iteration • SMA* (Simplified Memory-Bounded A*) • Uses all available memory • Proceeds like A* but when it runs out of memory it drops the worst leaf node (one with highest f-value) • If all leaf nodes have the same f-value then it drops oldest and expands the newest • Optimal and complete if depth of shallowest goal node is less than memory size

  4. Iterative Deepening A* (IDA*) • Use f(n) = g(n) + h(n) like in A* • Each iteration is depth-first with cutoff on the value of f of expanded nodes

  5. 4 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=4

  6. 4 4 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=4

  7. 4 5 4 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=4

  8. 5 4 5 4 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=4

  9. 6 5 4 5 4 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=4

  10. 4 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5 G

  11. 4 4 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5

  12. 4 5 4 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5

  13. 4 5 4 7 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5

  14. 4 5 5 4 7 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5

  15. 4 5 5 5 4 7 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5

  16. 4 5 5 5 4 7 6 6 8-Puzzle f(N) = g(N) + h(N) with h(N) = number of misplaced tiles Cutoff=5

  17. Iterative Improvement Algorithms Example: n queens Try to find the highest peaks which are optimal Keep track of only the current state and do not look ahead beyond the immediate neighbours Two classes Hill climbing algoritms make changes to improve the current state Simulated annealing algoritms Allow some bad moves to get out of a local maxima

  18. Hill Climbing

  19. Hill Climbing

  20. Simulated Annealing

More Related