Branch and Bound For Exact Solutions
As well as its uses in approximation, linear programming plays an important role in branch and bound algorithms for computing the true optimum solution to hard optimization problems.
If some variables in the optimal solution have fractional values, we may start a branch and bound type process, in which we recursively solve subproblems in which some of the fractional variables have their values fixed to either zero or one. In each step of an algorithm of this type, we consider a subproblem of the original 0-1 integer program in which some of the variables have values assigned to them, either 0 or 1, and the remaining variables are still free to take on either value. In subproblem i, let Vi denote the set of remaining variables. The process begins by considering a subproblem in which no variable values have been assigned, and in which V0 is the whole set of variables of the original problem. Then, for each subproblem i, it performs the following steps.
- Compute the optimal solution to the linear programming relaxation of the current subproblem. That is, for each variable xj in Vi, we replace the constraint that xj be 0 or 1 by the relaxed constraint that it be in the interval ; however, variables that have already been assigned values are not relaxed.
- If the current subproblem's relaxed solution is worse than the best integer solution found so far, backtrack from this branch of the recursive search.
- If the relaxed solution has all variables set to 0 or 1, test it against the best integer solution found so far and keep whichever of the two solutions is best.
- Otherwise, let xj be any variable that is set to a fractional value in the relaxed solution. Form two subproblems, one in which xj is set to 0 and the other in which xj is set to 1; in both subproblems, the existing assignments of values to some of the variables are still used, so the set of remaining variables becomes Vi \ {xj}. Recursively search both subproblems.
Although it is difficult to prove theoretical bounds on the performance of algorithms of this type, they can be very effective in practice.
Read more about this topic: Linear Programming Relaxation
Famous quotes containing the words branch, bound, exact and/or solutions:
“True variety is in that plenitude of real and unexpected elements, in the branch charged with blue flowers thrusting itself, against all expectations, from the springtime hedge which seems already too full, while the purely formal imitation of variety ... is but void and uniformity, that is, that which is most opposed to variety....”
—Marcel Proust (18711922)
“Affection, indulgence, and humor alike are powerless against the instinct of children to rebel. It is essential to their minds and their wills as exercise is to their bodies. If they have no reasons, they will invent them, like nations bound on war. It is hard to imagine families limp enough always to be at peace. Wherever there is character there will be conflict. The best that children and parents can hope for is that the wounds of their conflict may not be too deep or too lasting.”
—New York State Division of Youth Newsletter (20th century)
“The secret of genius is to suffer no fiction to exist for us; to realize all that we know; in the high refinement of modern life, in arts, in sciences, in books, in men, to exact good faith, reality, and a purpose; and first, last, midst, and without end, to honor every truth by use.”
—Ralph Waldo Emerson (18031882)
“Football strategy does not originate in a scrimmage: it is useless to expect solutions in a political compaign.”
—Walter Lippmann (18891974)