There is one further use of heuristics: when combined with a relaxation, they give a branch and bound algorithm. In many cases, with good heuristics and good relaxations, it is possible to get optimal, or very near to optimal, solutions.