(IDA*)
Kent Benedict Clapano
Earl Karlo Mationg
Contents
●
Prerequisites
●
Description
●
Algorithm
●
Example
●
Analysis
●
Applications
●
References
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
1
Prerequisites
●
Iterative Deepening Depth-First Search
●
A* algorithm
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
2
Description
Iterative Deepening A* is a graph traversal and path search algorithm that can find the shortest path between a designated start node and any member of a set of goal nodes in a weighted graph. It is a variant of iterative deepening search that borrows the idea to use a heuristic function to evaluate the remaining cost to get to the goal from the A* search algorithm.
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
3
Description
●
●
●
●
IDA* , a search algorithm, a combination of the A* algorithm and the DFS algorithm.[1] Invented by Korf in 1985.[1]
The idea is that successive iterations correspond not to increasing depth of search, but rather to increasing values of the total cost of a path. [1]
The cost of a node is (using A* terms) f=g+h g = cost incurred to get to this node h = heuristic estimate of getting to goal
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
4
Algorithm
Algorithm IDA*
Bound := f(StartNode);
SolutionFound := false;
Repeat
perform depth-first search from StartNode, so that a node N is expanded only if f(N) Bound; if this depth-first search encounters a goal node with f Bound then SolutionFound = true else compute new bound as:
Bound = min { f(N) | N generated by this search, f(N) > Bound } until solution found. [2]
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
5
Example (costs in km)
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
6
Example (costs in km , f = g + h)
Iterative Deepening A-star (IDA*)
CSC 171 – Introduction to AI
7
Example (costs in