DM545 Linear and Integer Programming Lecture 8
Integer Linear Programming Modeling
Marco Chiarandini
Department of Mathematics & Computer Science University of Southern Denmark
Integer Linear Programming Modeling Marco Chiarandini Department - - PowerPoint PPT Presentation
DM545 Linear and Integer Programming Lecture 8 Integer Linear Programming Modeling Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Integer Programming Outline Modeling 1. Integer
Department of Mathematics & Computer Science University of Southern Denmark
Integer Programming Modeling
2
Integer Programming Modeling
◮ A precise analysis of running time for an algorithm includes the number
◮ Strongly polynomial algorithms: the running time of the algorithm is
◮ No strongly polynomial-time algorithm for LP is known. ◮ Running time depends on the sizes of numbers. We have to restrict
3
Integer Programming Modeling
4
Integer Programming Modeling
◮ Often need to deal with integral inseparable quantities. ◮ Sometimes rounding can go. ◮ Other times rounding not feasible: eg, presence of a bus on a line is 0.3...
5
Integer Programming Modeling
6
Integer Programming Modeling
◮ Z set of integers ◮ Z+ set of positive integer ◮ Z+ 0 set of nonnegative integers ({0} ∪ Z+)
7
Integer Programming Modeling
S⊆N
j =
8
Integer Programming Modeling
◮ If solution is integer, done. ◮ If solution is rational (never irrational) try rounding to the nearest
9
Integer Programming Modeling
10
Integer Programming Modeling
11
Integer Programming Modeling
12
Integer Programming Modeling
4.8 −∞ 4.5 −∞ 3 3 x1=1 x2=1
4 4 x1=0 x2=2
5 5 x1=2 x2=0
13
Integer Programming Modeling
14
Integer Programming Modeling
◮ Find out exactly what the decision makes needs to know:
◮ which investment? ◮ which product mix? ◮ which job j should a person i do?
◮ Define Decision Variables of suitable type (continuous, integer valued,
◮ Formulate Objective Function computing the benefit/cost ◮ Formulate mathematical Constraints indicating the interplay between the
15
Integer Programming Modeling
◮ Formulate relationship between the variables in plain words ◮ Then formulate your sentences using logical connectives and, or, not,
◮ Finally convert the logical statement to a mathematical constraint.
◮ “The power plant must not work in two neighbouring time periods” ◮ on/off is modelled using binary integer variables ◮ xi = 1 or xi = 0 ◮ xi = 1 implies ⇒ xi+1 = 0 ◮ xi + xi+1 ≤ 1
16
Integer Programming Modeling
17
Integer Programming Modeling
18
Integer Programming Modeling
n
n
19
Integer Programming Modeling
n
n
20
Integer Programming Modeling
21
Integer Programming Modeling
i wi > W , formulate
22
Integer Programming Modeling
n
n
23
Integer Programming Modeling
24
Integer Programming Modeling
T∈N
25
Integer Programming Modeling
n
◮ incidence matrix: aij =
◮ n j=1 aijxj ≥ 1
26
Integer Programming Modeling
◮ M = {1, . . . , 5}, N = {1, . . . , 6}, cj = 1 ∀j = 1, . . . , 6
◮
27
Integer Programming Modeling
◮ Aircrew scheduling: M: legs to cover, N: rosters ◮ Vehicle routing: M: customers, N: routes
28
Integer Programming Modeling
◮ Each person covers 7 hours ◮ A person starting in hour 3 contributes to the workload in hours
◮ A person starting in hour i contributes to the workload in hours
29
Integer Programming Modeling
◮ xi ∈ N0: number of people starting work in hour i(i = 1, . . . , 15)
9
◮ Demand: i=t
◮ Bounds:
30
[from G. Desaulniers, J. Desrosiers, Y. Dumas, M.M. Solomon and F. Soumis. Daily Aircraft Routing and
Integer Programming Modeling
32
Integer Programming Modeling
33
Integer Programming Modeling
v ≥ 1/2}
v + x∗ u ≥ 1 implies x∗ v ≥ 1/2 or x∗ u ≥ 1/2)
v ≤ ¯
v∈SLP 1 ≤ v∈V 2x∗ v since x∗ v ≥ 1/2 for each v ∈ SLP
v∈V x∗ v ≤ 2 v∈V ¯
34
Integer Programming Modeling
35