KPshort

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

The knapsack problem with Branch and Bound

Malin K

The 0-1 knapsack problem can be written as


n

max z =
i=1 n

ci xi ai xi b
i=1

subj. to

x1 , . . . , xn {0, 1} An LP-relaxation of the knapsack problem usually has a larger feasible region. This becomes an upper bound.
n n n n

max{
i=1

ci xi :
i=1

ai xi b, 0 xi 1} max{
i=1

ci xi :
i=1

ai xi b, xi {0, 1}}

Assuming that

cn c1 a1 an

the optimal solution to the LP-relaxation is x1 = . . . = xr = 1 b (a1 + + ar ) xr+1 = ar+1 xr+2 = . . . = xn = 0 with a1 + + ar b, a1 + + ar+1 > b 0 b (a1 + + ar ) <1 ar+1

To solve the knapsack problem we can use the Branch and Bound method.

Branching: Break up the feasible region into successively smaller subsets.

xi = 0 %

rr r xi = 1 rr r j r

Bounding: Calculate bounds on the objective values over each corresponding submodel. Relaxation: Bounds are obtained by replacing the current submodel by an easier model such that the solution of the latter yields a bound for the former. Fathoming: Use the objective values of the submodels to discard certain submodels from further consideration. End: End is reached either when each submodel has produced an infeasible solution or has been shown to contain no better solution than the one already at hand. The best solution found is the optimal solution. Examples of strategies for choosing a submodel: Best-rst: The subproblem with the most promising optimistic value is branched rst. A lot of jumping around in the tree. Breadth-rst: All the subproblems on the same level are evaluated before moving down to the next level. Depth-rst: First search through the subproblem that has been branched the most and then backtrack.

References
[1] Lundgren, J., Rnnqvist, M. & Vrbrand, P., Optimeringslra, 2nd ed., Studentlitteratur, Lund, 2003. [2] Sierksma, G., Linear and integer programming: theory and practice, Marcel Dekker, Inc., New York, 1996.

You might also like