Professional Documents
Culture Documents
A and Branch and Bound
A and Branch and Bound
A* »
and
« Branch and bound »
Workplan:
Introduction
Definition
- A* / -BB
-heuristic techniques
Pseudocode
Example
Comparison
Conclusion
Definition:
A*:
Path search algorithm extended from the Dijkstra algorithm. it's one of the best and popular
techniques used in pathfinding and graph traversals, used in many fields of computer science due to
its completeness and optimality.
The A* algorithm uses a heuristic function to help decide which path to follow next. The
heuristic function provides an estimate of the minimum cost between a given node and the
target node.[2]
Branch-and-bound may also be a base of various heuristics. For example, one may wish to
stop branching when the gap between the upper and lower bounds becomes smaller than a
certain threshold. [3]
Pseudocode A*:
Example A*:
BB Pseudocode:
Example BB:
Comparison:
A*:
BB:
* used in the field of artificial
* used in the field of operations
intelligence (Video games….)
research
* search for shortest path in a
* the best choice and the maximum
graph
gain
* initial state and final state
* solve NP-complete problems
known
can both in some cases can help with making the decision process
[1] https://www.geeksforgeeks.org/branch-and-bound-algorithm/
[2]https://isaaccomputerscience.org/concepts/dsa_search_a_star?examBoard=all&stage=all
[3]https://en.wikipedia.org/wiki/Branch_and_bound
[4]https://www.sciencedirect.com/science/article/abs/pii/0004370284900043