Overview
Branch and Bound splits a hard problem into subproblems and uses bounds to avoid exploring hopeless branches.
Searches solution branches while pruning branches that cannot improve the best result.
Compact metadata for implementation and discovery.
Branch and Bound splits a hard problem into subproblems and uses bounds to avoid exploring hopeless branches.
Quick facts
Runtime and memory behavior at a glance.
Best
O(1)
Average
O(b^d)
Worst
O(b^d)
Space
O(bd)
prune node if lower_bound(node) >= best_costSkips a minimization branch when its optimistic bound cannot beat the current best solution.
Show branches being cut off by bound checks.
Branch and Bound operates in O(b^d) time and O(bd) space within the Exact Search family. Key governing relation: prune node if lower_bound(node) >= best_cost. Often compared with Genetic Algorithm and Linear Programming Simplex Method.
What each reference supports for this entry.
Good next jumps from the relationship graph, ranked for useful discovery.
Optimization · Extended
Maximum clique search uses branch-and-bound pruning to discard candidate sets that cannot improve the incumbent clique.
Compare with thisOptimization · Core
Linear relaxations can provide bounds for branch-and-bound search.
Compare with thisBoth search combinatorial spaces while pruning impossible or unpromising branches.
Linear relaxations can provide bounds for branch-and-bound search.