Professional Documents
Culture Documents
...
x1 + 3x2 = 12
5
4
2x1 x2 = 10
3
2
1
0
3x1 + 2x2 = 22
0
Integer Program
Integer Program
Total Enumeration
Class exercise- C1
Exponential growth!!
LP Relaxation
Relaxation (omitting) of the integrality constraints
Linear programs can be solved efficiently
and
=
=
8
5
0
Z
2
19
, x2 =
5
5
P0
U =
c = 15
P1 = P0 {x | x2 3}
P2 = P0 {x | x2 4}
P1 : Subsequent problem.
An optimal solution for the LP relaxation LP1 is
x4 = x5 = 0 , x1 =
1
1
, x2 = 2 , x3 =
2
2
and c = 29
(with upper bound -15).
2
P0
x2 3
U =
c = 15
P1
U =
c = 15
x2 4
P2
x2 4
x2 3
U =
c = 15
x1 0
U = 17
P3
U =
c = 15
P2
P1
x1 1
P4
x4 = 0 , x1 = 1 , x 2 = 3 , x3 =
1
4
, x5 =
3
3
and c = 52
= 17 31 .
3
The upper bound (18) is worse than the best solution, thereby P4 is
solved.
x2 4
x2 3
U =
c = 15
U = 17
P3
P2
P1
x1 0
x1 1
c = 18
U =
c = 15
P4
U = 17
Solving P2 gives:
and c = 43
.
3
P2 is not yet solved, we have to branch:
P5 = P2 {x | x1 0}
P6 = P2 {x | x1 1}
U =
c = 15
x2 4
x2 3
U =
c = 15
P2
P1
U = 17
c = 15
x1 0
x1 0
U = 17
P3
x1 1
x1 1
c = 18
P4
P5
P6
U =
c = 15
x2 4
x2 3
U =
c = 15
P2
P1
U = 17
c = 15
x1 0
x1 0
U = 17
P3
x1 1
x1 1
c = 18
P4
P5
U = 15
c = 15
P6
Relaxations
1. Constraint relaxations: New feasible
solutions may be allowed but none should
be lost!
C2-Exercises! Are the following valid constraint
relaxations?
2. Continous relaxations (LP relaxations )
Relaxations
If an optimal soltion to a relaxation is also
feasible in the model it relaxes, the solution is
optimal in that original model.
C3:Exercises!
Compute by inspection optimal solution to each
of the following relaxations and determine
whether we can conclude that the relaxation
optimum is optimal in the original model.
Relaxations
If an optimal solution to a relaxation is also feasible in the model it relaxes, the solution is
optimal in that original model.
Stronger LP relaxations
HOW?
1. Different formulations of the same problem
Example : E1
2. Choosing smallest Big-Ms.
C5:Exercise
3. Adding new valid inequality constraints.
Valid inequalities
A linear inequality is a valid inequality if it
holds for all integer feasible solutions to the
model.
To strengthen the solution it must cut off some
feasible solutions to the current LP relaxation
that are not feasible to the full ILP model.
Also called cutting planes
Class exercise : C6
171 / 319
Branch-and-Cut
Truncated cutting plane method returns a solution for an LP
relaxation
Branch-and-Cut
VRPTW - Bounds
Lower Bounds
The network lower bound can be obtained by removing the
Upper bounds
Route construction
Route improvement
Metaheuristics
Column Generation
The basic idea of column generation originates in the simplex
algorithm.
Column Generation
Subproblem: Search variables with negative reduced cost
(Pricing-Problem).
Reduced Cost
The reduced cost are the cost of a variable in the current simplex
tableau.
Only variables with negative reduced cost can therefore improve
the objective value.
The reduced cost of a variable can be computed from the values
of the dual variables.
Given a linear program {min cx | Ax b, x 0}
Then the reduced cost are c yA, with y the dual variables of
the linear program.
More details can be found in: R. Vanderbei. Linear Programming:
Foundations and Extensions. Kluwer. 1998.
Branch-and-Price
Branch-and-Price
Lagrangian Relaxation
Lagrangian relaxation is a technique well suited for
problems where the constraints can be divided into two
sets:
good constraints, with which the problem is
solvable very easily
bad constraints that make it very hard to solve.
The main idea is to relax the problem by removing the
bad constraints and putting them into the objective
function, assigned with weights (the Lagrangian
multiplier). Each weight represents a penalty which is
added to a solution that does not satisfy the particular
constraint.
Lagrangian Relaxation
Lagrangian Relaxation
Therefore, we introduce a dual variable for
every constraint of Ax b. The vector 0 is
the vector of dual variables (the Lagrangian
multipliers) that has the same dimension as
vector b. For a fixed 0, consider the relaxed
problem
Lagrangian Relaxation
Lagrangian Relaxation
Lagrangian Relaxation
Lagrangian Relaxation
Wrap-up
Suppose that we have some problem instance
of a combinatorial optimisation problem and
further suppose that it is a minimisation
problem.
We draw a vertical line representing value
(the higher up this line the higher the value)
then somewhere on this line is the optimal
solution to the problem we are considering.
Wrap-up
Exactly where on this line this optimal solution
lies we do not know, but it must be somewhere!
Conceptually therefore this optimal solution value
divides our value line into two:
above the optimal solution value are upper
bounds, values which are above the (unknown)
optimal solution value
below the optimal solution value are lower
bounds, values which are below the (unknown)
optimal solution value.
Wrap-up
In order to discover the optimal solution value then
any algorithm that we develop must address both
these issues i.e. it must concern itself both with
upper bounds and with lower bounds.
In particular the quality of these bounds is important
to the computational success of any algorithm:
we like upper bounds that are as close as possible to
the optimal solution, i.e. as small as possible
we like lower bounds that are as close as possible to
the optimal solution, i.e. as large as possible.
Wrap-up
Upper bounds