Upload
lucas-pereira
View
218
Download
0
Tags:
Embed Size (px)
Citation preview
Thoughts About Integer Programming
University of Montreal, January 26, 2007
Integer Programming
Max c xAx=b
Some or All x Integer
Why Does Integer Prrogramming Matter?
• Navy Task Force
• Patterns in Stock Cutting
• Economies of Scale in Industries
• Trade Theory – Conflicting National Interests
CUTS
WASTE
Roll of Paper at Mill
The Effect of the Number of Industries (8)
Eight Industries 8pnew
0 .2 .4 .6 .8 1
1 1
Z 1
U 1U 2
Z C
The Effect of the Number of Industries (3)
Three Industries 3pnew
0 .2 .4 .6 .8 1
1 1
Z 1
U 1U 2
Z C
The Effect of the Number of Industries (2)
Two Industries 2ptest
0 .2 .4 .6 .8 1
1 1
Z 1
U 1U 2
Z C
How Do You Solve I.P’s?
• Branch and Bound, Cutting Planes
V
L.P.,I.P.and Corner Polyhedron
I.P. and Corner Polyhedron
• Integer Programs – Complex, no obvious structure
• Corner Polyhedra – Highly Structured
• We use Corner Polyhedra to generate cutting planes
1
1 1
1
Equa
Equations for Corner Polyhedr
tions for Integer Program
(Mod 1
ming
)
on
Bx Nt b
x B Nt B b
B Nt B b
Equations
T-Space
2 4 6 8 10t1
1
2
3
4
5
6
t2
1 1
-1
Equations for Corner Polyhedr
(Mod 1)
Add and Subtract Columns of
This forms group G
B N
on
B Nt B b
Corner Polyhedra and Groups
Structure of Corner Polyhedra I
Structure of Corner Polyhedra II
Shooting Theorem:
Concentration of HitsEllis Johnson and Lisa Evans
Cutting Planes From Corner Polyhedra
2 4 6 8 10t1
1
2
3
4
5
6
t2
1
1 1
1
Equa
Equations for Corner Polyhedr
tions for Integer Program
(Mod 1
ming
)
on
Bx Nt b
x B Nt B b
B Nt B b
Why Does this Work?
Equations 2
1 1
0i
0i
(Mod 1)
(Mod1). ake fractional parts
(Mod1
Select a single row of
Any t of the Corner Polyhedron must satisfy
this relatio
)
n
T
i i
i i
B Nt B b
c t c
f t f
Why π(x) Produces the Equality
• It is subadditive: π(x) + π(y) π(x+y)
• It has π(x) =1 at the goal point x=f0
0i
0i
Since any t of the Corner Polyhedron must satisfy
(Mod1), we have
( ) ( ) 1
i i
i i
f t f
f t f
Cutting Planes are PlentifulHierarchy: Valid, Minimal, Facet
2 4 6 8 10t1
1
2
3
4
5
6
t2
Hierarchy
Subadditive π(u1)+ π(u2) π(u1+u2)
Minimal π(u1)+π(u0-u1 ) = 1 (Normalization π(u0) =1)
Facet π(u1)+π(u2) = π(u1+u2)if whenever π (u1)+π (u2) = π (u1+u2)implies π(u1)=π(u1)
Example: Two Facets
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
Low is Good - High is Bad
Example 3
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
Gomory-Johnson Theorem
If (x) has only two slopes and satisfies
the minimality condition (x)+ (1-x)=1
then it is a facet.
3-Slope Example
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
Continuous Variables t
Origin of Continuous Variables Procedure
0 0i
i
i
If for some t then ( / )( )
For large apply ; the result is (( / )) ( ) 1
( ) ) 1
( ) 0 ( ) 0.
i i i i i ii
i i i i i
i i
i i
c t c c k k t c
k c k k t
s c t
where s c s c for x and s x s x for x
Integer versus Continuous
• Integer Variables Case More Developed
• But all of the more developed cutting planes are weaker than the Gomory Mixed Integer Cut with respect to continuous variables
Comparing
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
The Continuous Problem and A Theorem
1 1
Pure Continuous Problem: All t continuous
T - Space looks different - Lines and Sheets as well as dots
:The Gomory Mixed Integer Cut is the only
(Mod 1)
Theore m(?)
cut that is a facet for both
B Nt B b
the pure integer and the
pure continuous one dimensional problems.
Cuts Provide Two Different Functions on the Real Line
-2 -1.5 -1 -0.5 0.5 1 1.5 2
0.5
1
1.5
2
2.5
3
Start with Continuous Case
-2 -1.5 -1 -0.5 0.5 1 1.5 2
0.5
1
1.5
2
2.5
3
Direction
• Create continuous facets
• Turn them into facets for the integer problem
Helpful Theorem
Theorem(?) If is a facet of the continous problem, then (kv)=k (v).
This will enable us to create 2-dimensional facets for the continuous problem.
Creating 2D facets
-1.5 -1 -0.5 0.5 1 1.5 2
-1.5
-1
-0.5
0.5
1
1.5
The triopoly figure
0 1 2
-0.5
0
0.5
00.250.50.751
-0.5
0
0.5
This corresponds to
-2 -1.5 -1 -0.5 0.5 1 1.5 2
0.5
1
1.5
2
2.5
3
The related periodic figure
-1
0
1
2
XXX
-1
0
1
2
YYY
00.250.50.751ZZZ
-1
0
1
2
YYY
00.250.50.751ZZZ
This Corresponds To
-2 -1.5 -1 -0.5 0.5 1 1.5 2
0.5
1
1.5
2
2.5
3
Results for a Very Small Problem
Gomory Mixed Integer Cuts
1 2 3 4t1
1
2
3
4
t2
2D Cuts Added
1 2 3 4t1
1
2
3
4
t2
Summary
• Corner Polyhedra are very structured
• There is much to learn about them
• It seems likely that that structure can can be exploited to produce better computations
Challenges
• Generalize cuts from 2D to n dimensions
• Work with families of cutting planes (like stock cutting)
• Introduce data fuzziness to exploit large facets and ignore small ones
• Clarify issues about functions that are not piecewise linear.
END
References• “Some Polyhedra Related to Combinatorial Problems,”
Journal of Linear Algebra and Its Applications, Vol. 2, No. 4, October 1969, pp.451-558
• “Some Continuous Functions Related to Corner Polyhedra, Part I” with Ellis L. Johnson, Mathematical Programming, Vol. 3, No. 1, North-Holland, August, 1972, pp. 23-85.
• “Some Continuous Functions Related to Corner Polyhedra, Part II” with Ellis L. Johnson, Mathematical Programming, Vol. 3, No. 3, North-Holland, December 1972, pp. 359-389.
• “T-space and Cutting Planes” Paper, with Ellis L. Johnson, Mathematical Programming, Ser. B 96: Springer-Verlag, pp 341-375 (2003).