Scheduling and (Integer) Linear Programming


 Clinton Moody
 2 years ago
 Views:
Transcription
1 Scheduling and (Integer) Linear Programming Christian Artigues LAAS  CNRS & Université de Toulouse, France Master Class CPAIOR Nantes Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 1 / 78
2 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 2 / 78
3 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems Timeindexed variables Total unimodularity Sequencing and natural date variables Flow (TSP) and natural date variables Positional date and assignment variables Hybrid formulations 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 3 / 78
4 A bit of history Since the beginning, linear programming has been used to solve scheduling problems. The military refer to their various plans or proposed schedules of training, logistical supply and deployment of combat units as a program. When I first analyzed the Air Force planning problem and saw that it could be formulated as a system of linear inequalities, I called my paper Programming in a Linear Structure (Georges Dantzig) This presentation is a (nonexhaustive) survey of (integer) linear programming formulations and valid inequalities for scheduling problems Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 4 / 78
5 A simple scheduling example One machine scheduling with release dates and deadlines 2 jobs J 1 and J 2 (p 1 = 3, p 2 = 2, r 1 = 0, r 2 = 1, d 1 = 9, d 2 = 7). 1 machine. Objective function f (S) = C 1 + C 2 = S 1 + S 2 + p 1 + p min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S 1 + p 1 S 1 S 2 + p 2 S 1, S 2 integer J 1 J 2 Ci = 8 (optimal solution) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 5 / 78
6 The scheduling polyhedron Feasible set S The feasible set is S the set of points S R n that satisfy the constraints min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S S 2 S 1 + p 1 S 1 S 2 + p 2 S 1, S 2 integer S 1 J 1 J 2 Ci = Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 6 / 78
7 The scheduling polyhedron Convex hull conv(s) The convex{ hull of S, i.e. the smallest convex set containing S : conv(s) = x R n λi R n+, x = S i=1 λ is i, } S i=1 λ i = 1 min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S conv(s) S 2 S 1 + p 1 S 1 S 2 + p 2 S 1, S 2 integer S 1 J 1 J 2 Ci = Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 6 / 78
8 The scheduling polyhedron Optimization on S and conv(s) Let f : R n R a linear function, min f (S) = min f (S) S S S conv(s) min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S conv(s) S 2 S 1 + p 1 S 1 S 2 + p 2 S 1, S 2 integer S 1 J 1 J 2 Ci = Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 6 / 78
9 The scheduling polyhedron conv(s) is a polyhedron There exists A R m n and b R n with m finite such that conv(s) = {x R n Ax b}. Hence f (S) is a LP. min S conv(s) min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S conv(s) S 2 S 1 + p 1 S 1 S 2 + p 2 S 1, S 2 integer S 1 J 1 J 2 Ci = Find a complete description of conv(s) : hard in general Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 6 / 78
10 Definitions : valid inequalities, faces and facets Let P denote a polyhedron. A valid inequality αx β is such that S P, S verifies the inequality (P is included in the halfspace induced by the inequality) A face is the intersection of P with the hyperplane {x R n αx = β} A vertex is a face of dimension 0 A facet is a face of dimension dim(p) 1 S 2 S 1 3S 1 + 5S2 7 : a valid inequality Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 7 / 78
11 Definitions : valid inequalities, faces and facets Let P denote a polyhedron. A valid inequality αx β is such that S P, S verifies the inequality (P is included in the halfspace induced by the inequality) A face is the intersection of P with the hyperplane {x R n αx = β} A vertex is a face of dimension 0 A facet is a face of dimension dim(p) 1 S 2 S 1 P {S S 1 + 3S 2 = 6} : a 0dimensional face (3, 1) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 7 / 78
12 Definitions : valid inequalities, faces and facets Let P denote a polyhedron. A valid inequality αx β is such that S P, S verifies the inequality (P is included in the halfspace induced by the inequality) A face is the intersection of P with the hyperplane {x R n αx = β} A vertex is a face of dimension 0 A facet is a face of dimension dim(p) 1 S 2 S 1 P {S 2S 1 + 3S 2 = 9} : a facet Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 7 / 78
13 Definitions : valid inequalities, faces and facets Let P denote a polyhedron. A valid inequality αx β is such that S P, S verifies the inequality (P is included in the halfspace induced by the inequality) A face is the intersection of P with the hyperplane {x R n αx = β} A vertex is a face of dimension 0 A facet is a face of dimension dim(p) 1 S 2 P {S 2S 1 + 3S 2 = 9} : a facet S 1 A polyhedron is fully described by the set of all facetinducing valid inequalities Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 7 / 78
14 (Integer) linear programmingbased scheduling Given a scheduling problem and the logical description of S 1 Perform a polyhedral study : Find a complete description of conv(s) with a polynomial number of linear inequalities? The problem can be solved by LP Find a complete description of conv(s) and show it has a supermodular structure? The problem can be solved by a greedy algorithm Find a partial description of conv(s)? This gives useful valid inequalities 2 Design a (mixed)integer programming formulation More polyhedral studies, solve with branchandcut, branchandprice, branchandcutandprice, heuristics,... (only partly addressed here) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 8 / 78
15 (Integer) linear programmingbased scheduling Given a scheduling problem and the logical description of S 1 Perform a polyhedral study : Find a complete description of conv(s) with a polynomial number of linear inequalities? The problem can be solved by LP Find a complete description of conv(s) and show it has a supermodular structure? The problem can be solved by a greedy algorithm Find a partial description of conv(s)? This gives useful valid inequalities 2 Design a (mixed)integer programming formulation More polyhedral studies, solve with branchandcut, branchandprice, branchandcutandprice, heuristics,... (only partly addressed here) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 8 / 78
16 (Integer) linear programmingbased scheduling Given a scheduling problem and the logical description of S 1 Perform a polyhedral study : Find a complete description of conv(s) with a polynomial number of linear inequalities? The problem can be solved by LP Find a complete description of conv(s) and show it has a supermodular structure? The problem can be solved by a greedy algorithm Find a partial description of conv(s)? This gives useful valid inequalities 2 Design a (mixed)integer programming formulation More polyhedral studies, solve with branchandcut, branchandprice, branchandcutandprice, heuristics,... (only partly addressed here) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 8 / 78
17 (Integer) linear programmingbased scheduling Given a scheduling problem and the logical description of S 1 Perform a polyhedral study : Find a complete description of conv(s) with a polynomial number of linear inequalities? The problem can be solved by LP Find a complete description of conv(s) and show it has a supermodular structure? The problem can be solved by a greedy algorithm Find a partial description of conv(s)? This gives useful valid inequalities 2 Design a (mixed)integer programming formulation More polyhedral studies, solve with branchandcut, branchandprice, branchandcutandprice, heuristics,... (only partly addressed here) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 8 / 78
18 (Integer) linear programmingbased scheduling Given a scheduling problem and the logical description of S 1 Perform a polyhedral study : Find a complete description of conv(s) with a polynomial number of linear inequalities? The problem can be solved by LP Find a complete description of conv(s) and show it has a supermodular structure? The problem can be solved by a greedy algorithm Find a partial description of conv(s)? This gives useful valid inequalities 2 Design a (mixed)integer programming formulation More polyhedral studies, solve with branchandcut, branchandprice, branchandcutandprice, heuristics,... (only partly addressed here) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 8 / 78
19 (Integer) linear programmingbased scheduling Given a scheduling problem and the logical description of S 1 Perform a polyhedral study : Find a complete description of conv(s) with a polynomial number of linear inequalities? The problem can be solved by LP Find a complete description of conv(s) and show it has a supermodular structure? The problem can be solved by a greedy algorithm Find a partial description of conv(s)? This gives useful valid inequalities 2 Design a (mixed)integer programming formulation More polyhedral studies, solve with branchandcut, branchandprice, branchandcutandprice, heuristics,... (only partly addressed here) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 8 / 78
20 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems Timeindexed variables Total unimodularity Sequencing and natural date variables Flow (TSP) and natural date variables Positional date and assignment variables Hybrid formulations 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 9 / 78
21 A scheduling problem that can be solved by LP Project scheduling S PS Precedence constraints E. l ij : minimum distance between the start of job i (S i ) and the start of job j (S j ). S PS = {S R +n S j S i l ij, (i, j) E} find the shortest schedule mins n+1 S j S i l ij S 0 = 0 S j 0 (i, j) E j J i Γ 1 (j) i Γ(0) max (i,j) E x ij = x 0i = 1 i Γ(j) 1 2 l ij x ij x ji j J \ {0} x 0i 0 (longest path model) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 10 / 78 5
22 Supermodular polyhedron : definitions [Sch96] Consider a set N = {1,..., n} and its power set 2 N (set of all subsets of N) and a supermodular set function f : 2 N R, i.e. a set function that verifies : { f ( ) = 0 f (A B) + f (A B) f (A) + f (B), A, B N P(f )={x R N i A x i f (A), A N} supermodular polyhedron There is an O(n log n) greedy algorithm to find x = argmin x P(f ) cx : if i N, c i < 0, the problem is unbounded. otherwise x B(f ). Solve the problem with the following greedy algorithm { x 1 = f ({1}) xj = f ({1,..., j}) f ({1,..., j 1}), j = 2,..., n. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 11 / 78
23 Supermodular polyhedron : definitions [Sch96] Consider a set N = {1,..., n} and its power set 2 N (set of all subsets of N) and a supermodular set function f : 2 N R, i.e. a set function that verifies : { f ( ) = 0 f (A B) + f (A B) f (A) + f (B), A, B N P(f )={x R N i A x i f (A), A N} supermodular polyhedron There is an O(n log n) greedy algorithm to find x = argmin x P(f ) cx : if i N, c i < 0, the problem is unbounded. otherwise x B(f ). Solve the problem with the following greedy algorithm { x 1 = f ({1}) xj = f ({1,..., j}) f ({1,..., j 1}), j = 2,..., n. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 11 / 78
24 A scheduling supermodular polyhedron [Que93] Singlemachine scheduling S SM Set of feasible { schedules for a set of jobs J on a single machine :} S SM = C R J C i p i, j J, C i C j + p i C j C i + p j, i, j J, i j Queyranne [Que93] showed that conv(s SM ) = {C R J j A p jc j g(a), A J } where ( ( ) ) 2 g(a) = 1 2 j A p j + j A p2 j. These valid inequalities can be obtained by Smith s rule (WSPT). Optimum for i J w ic i is obtained by sorting jobs in non decreasing w i /p i. For A = {i 1,..., i s } J, set w i = p i for i A and w i = 0 for i J \ A Opt = p i1 p i1 + p i2 (p i1 + p i2 ) p is (p i1 + p i p is ) = g(a) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 12 / 78
25 A scheduling supermodular polyhedron [Que93] Singlemachine scheduling S SM Set of feasible { schedules for a set of jobs J on a single machine :} S SM = C R J C i p i, j J, C i C j + p i C j C i + p j, i, j J, i j Queyranne [Que93] showed that conv(s SM ) = {C R J j A p jc j g(a), A J } where ( ( ) ) 2 g(a) = 1 2 j A p j + j A p2 j. These valid inequalities can be obtained by Smith s rule (WSPT). Optimum for i J w ic i is obtained by sorting jobs in non decreasing w i /p i. For A = {i 1,..., i s } J, set w i = p i for i A and w i = 0 for i J \ A Opt = p i1 p i1 + p i2 (p i1 + p i2 ) p is (p i1 + p i p is ) = g(a) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 12 / 78
26 A scheduling supermodular polyhedron [Que93] Singlemachine scheduling S SM Set of feasible { schedules for a set of jobs J on a single machine :} S SM = C R J C i p i, j J, C i C j + p i C j C i + p j, i, j J, i j Queyranne [Que93] showed that conv(s SM ) = {C R J j A p jc j g(a), A J } where ( ( ) ) 2 g(a) = 1 2 j A p j + j A p2 j. These valid inequalities can be obtained by Smith s rule (WSPT). Optimum for i J w ic i is obtained by sorting jobs in non decreasing w i /p i. For A = {i 1,..., i s } J, set w i = p i for i A and w i = 0 for i J \ A Opt = p i1 p i1 + p i2 (p i1 + p i2 ) p is (p i1 + p i p is ) = g(a) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 12 / 78
27 A scheduling supermodular polyhedron [Que93] Singlemachine scheduling S SM Set of feasible { schedules for a set of jobs J on a single machine :} S SM = C R J C i p i, j J, C i C j + p i C j C i + p j, i, j J, i j Queyranne [Que93] showed that conv(s SM ) = {C R J j A p jc j g(a), A J } where ( ( ) ) 2 g(a) = 1 2 j A p j + j A p2 j. These valid inequalities can be obtained by Smith s rule (WSPT). Optimum for i J w ic i is obtained by sorting jobs in non decreasing w i /p i. For A = {i 1,..., i s } J, set w i = p i for i A and w i = 0 for i J \ A Opt = p i1 p i1 + p i2 (p i1 + p i2 ) p is (p i1 + p i p is ) = g(a) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 12 / 78
28 A scheduling supermodular polyhedron [Que93] Singlemachine scheduling S SM Set of feasible { schedules for a set of jobs J on a single machine :} S SM = C R J C i p i, j J, C i C j + p i C j C i + p j, i, j J, i j Queyranne [Que93] showed that conv(s SM ) = {C R J j A p jc j g(a), A J } where ( ( ) ) 2 g(a) = 1 2 j A p j + j A p2 j. These valid inequalities can be obtained by Smith s rule (WSPT). Optimum for i J w ic i is obtained by sorting jobs in non decreasing w i /p i. For A = {i 1,..., i s } J, set w i = p i for i A and w i = 0 for i J \ A Opt = p i1 p i1 + p i2 (p i1 + p i2 ) p is (p i1 + p i p is ) = g(a) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 12 / 78
29 A scheduling supermodular polyhedron [Que93] Singlemachine scheduling S SM Set of feasible { schedules for a set of jobs J on a single machine :} S SM = C R J C i p i, j J, C i C j + p i C j C i + p j, i, j J, i j Queyranne [Que93] showed that conv(s SM ) = {C R J j A p jc j g(a), A J } where ( ( ) ) 2 g(a) = 1 2 j A p j + j A p2 j. These valid inequalities can be obtained by Smith s rule (WSPT). Optimum for i J w ic i is obtained by sorting jobs in non decreasing w i /p i. For A = {i 1,..., i s } J, set w i = p i for i A and w i = 0 for i J \ A Opt = p i1 p i1 + p i2 (p i1 + p i2 ) p is (p i1 + p i p is ) = g(a) Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 12 / 78
30 A scheduling supermodular polyhedron [Que93] Each inequality j S p j C j g(s) defines a facet for conv(q). conv(s SM ) is a supermodular polyhedron and the greedy algorithm for minimizing i J w i C i coincides with the Smith s rule WSPT This rediscovers the WSPT rule but also provides valid inequalities for other (NPhard) scheduling problems. An O(n log n) separation algorithm is available to find an inequality violated by a given vector C. More scheduling supermodular polyhedra : the convex hull of the feasible start time for unit jobs on parallel machines with nonstationary speeds [QS95] the convex hull of mean busy time vectors of preemptive schedules for jobs with release dates on a single machine [GQS + 02] Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 13 / 78
31 A scheduling supermodular polyhedron [Que93] Each inequality j S p j C j g(s) defines a facet for conv(q). conv(s SM ) is a supermodular polyhedron and the greedy algorithm for minimizing i J w i C i coincides with the Smith s rule WSPT This rediscovers the WSPT rule but also provides valid inequalities for other (NPhard) scheduling problems. An O(n log n) separation algorithm is available to find an inequality violated by a given vector C. More scheduling supermodular polyhedra : the convex hull of the feasible start time for unit jobs on parallel machines with nonstationary speeds [QS95] the convex hull of mean busy time vectors of preemptive schedules for jobs with release dates on a single machine [GQS + 02] Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 13 / 78
32 A scheduling supermodular polyhedron [Que93] Each inequality j S p j C j g(s) defines a facet for conv(q). conv(s SM ) is a supermodular polyhedron and the greedy algorithm for minimizing i J w i C i coincides with the Smith s rule WSPT This rediscovers the WSPT rule but also provides valid inequalities for other (NPhard) scheduling problems. An O(n log n) separation algorithm is available to find an inequality violated by a given vector C. More scheduling supermodular polyhedra : the convex hull of the feasible start time for unit jobs on parallel machines with nonstationary speeds [QS95] the convex hull of mean busy time vectors of preemptive schedules for jobs with release dates on a single machine [GQS + 02] Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 13 / 78
33 A scheduling supermodular polyhedron [Que93] Each inequality j S p j C j g(s) defines a facet for conv(q). conv(s SM ) is a supermodular polyhedron and the greedy algorithm for minimizing i J w i C i coincides with the Smith s rule WSPT This rediscovers the WSPT rule but also provides valid inequalities for other (NPhard) scheduling problems. An O(n log n) separation algorithm is available to find an inequality violated by a given vector C. More scheduling supermodular polyhedra : the convex hull of the feasible start time for unit jobs on parallel machines with nonstationary speeds [QS95] the convex hull of mean busy time vectors of preemptive schedules for jobs with release dates on a single machine [GQS + 02] Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 13 / 78
34 A scheduling supermodular polyhedron [Que93] Each inequality j S p j C j g(s) defines a facet for conv(q). conv(s SM ) is a supermodular polyhedron and the greedy algorithm for minimizing i J w i C i coincides with the Smith s rule WSPT This rediscovers the WSPT rule but also provides valid inequalities for other (NPhard) scheduling problems. An O(n log n) separation algorithm is available to find an inequality violated by a given vector C. More scheduling supermodular polyhedra : the convex hull of the feasible start time for unit jobs on parallel machines with nonstationary speeds [QS95] the convex hull of mean busy time vectors of preemptive schedules for jobs with release dates on a single machine [GQS + 02] Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 13 / 78
35 Valid inequalities for NPhard scheduling problems Singlemachine scheduling with release dates S SMR Set of feasible schedules for a set of jobs J on a single machine with release dates { : } S SMR = S R J S i r i, j J, S i S j + l ij S j S i + l ji, i, j J, i j The problem of minimizing S S w is i is NPhard = no chance to have a complete characterization of conv(s SMR ) However, Balas [Bal85] studied P = conv(s) and derived facetdefining inequalities. He showed that a facetdefining inequality for a subset of jobs K J induces also a facet for J. i J, S i r i induces a facet of P i, j J, i j, (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij induces a facet of P if and only if d ji < r j r i < d ij Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 14 / 78
36 Valid inequalities for NPhard scheduling problems Singlemachine scheduling with release dates S SMR Set of feasible schedules for a set of jobs J on a single machine with release dates { : } S SMR = S R J S i r i, j J, S i S j + l ij S j S i + l ji, i, j J, i j The problem of minimizing S S w is i is NPhard = no chance to have a complete characterization of conv(s SMR ) However, Balas [Bal85] studied P = conv(s) and derived facetdefining inequalities. He showed that a facetdefining inequality for a subset of jobs K J induces also a facet for J. i J, S i r i induces a facet of P i, j J, i j, (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij induces a facet of P if and only if d ji < r j r i < d ij Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 14 / 78
37 Valid inequalities for NPhard scheduling problems Singlemachine scheduling with release dates S SMR Set of feasible schedules for a set of jobs J on a single machine with release dates { : } S SMR = S R J S i r i, j J, S i S j + l ij S j S i + l ji, i, j J, i j The problem of minimizing S S w is i is NPhard = no chance to have a complete characterization of conv(s SMR ) However, Balas [Bal85] studied P = conv(s) and derived facetdefining inequalities. He showed that a facetdefining inequality for a subset of jobs K J induces also a facet for J. i J, S i r i induces a facet of P i, j J, i j, (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij induces a facet of P if and only if d ji < r j r i < d ij Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 14 / 78
38 Valid inequalities for NPhard scheduling problems Singlemachine scheduling with release dates S SMR Set of feasible schedules for a set of jobs J on a single machine with release dates { : } S SMR = S R J S i r i, j J, S i S j + l ij S j S i + l ji, i, j J, i j The problem of minimizing S S w is i is NPhard = no chance to have a complete characterization of conv(s SMR ) However, Balas [Bal85] studied P = conv(s) and derived facetdefining inequalities. He showed that a facetdefining inequality for a subset of jobs K J induces also a facet for J. i J, S i r i induces a facet of P i, j J, i j, (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij induces a facet of P if and only if d ji < r j r i < d ij Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 14 / 78
39 Cutting plane generation for NPhard scheduling problems From a partial descrition of conv(s) (relaxation), iteratively solve the separation problem for families of valid inequalities. S 2 S 1 Optimum has been found after adding Balas inequality (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij Separation is NPhard in general = the optimum cannot be found quickly by pure cutting plane generation. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 15 / 78
40 Cutting plane generation for NPhard scheduling problems From a partial descrition of conv(s) (relaxation), iteratively solve the separation problem for families of valid inequalities. S 2 S 1 3S 1 + 5S2 7 Optimum has been found after adding Balas inequality (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij Separation is NPhard in general = the optimum cannot be found quickly by pure cutting plane generation. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 15 / 78
41 Cutting plane generation for NPhard scheduling problems From a partial descrition of conv(s) (relaxation), iteratively solve the separation problem for families of valid inequalities. S 2 S 1 S 1 + 3S 2 6 Optimum has been found after adding Balas inequality (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij Separation is NPhard in general = the optimum cannot be found quickly by pure cutting plane generation. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 15 / 78
42 Cutting plane generation for NPhard scheduling problems From a partial descrition of conv(s) (relaxation), iteratively solve the separation problem for families of valid inequalities. S 2 S 1 2S 1 + 3S 2 9 Optimum has been found after adding Balas inequality (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij Separation is NPhard in general = the optimum cannot be found quickly by pure cutting plane generation. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 15 / 78
43 Cutting plane generation for NPhard scheduling problems From a partial descrition of conv(s) (relaxation), iteratively solve the separation problem for families of valid inequalities. S 2 S 1 2S 1 + 3S 2 9 Optimum has been found after adding Balas inequality (l ij + r i r j )S i + (l ji + r j r i )S j d ij d ji + L i d ji + L j d ij Separation is NPhard in general = the optimum cannot be found quickly by pure cutting plane generation. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 15 / 78
44 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems Timeindexed variables Total unimodularity Sequencing and natural date variables Flow (TSP) and natural date variables Positional date and assignment variables Hybrid formulations 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 16 / 78
45 Principle of (mixed)integer programming Design a good MIP formulation for the scheduling problem Solve by branchandbound S 2 S S 1 Remark : once x is fixed, extreme points are integral = no need for integer constraints on S Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 17 / 78
46 Principle of (mixed)integer programming Design a good MIP formulation for the scheduling problem Solve by branchandbound min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S 1 + Mx p 1 S 2 S S 1 S2 + M(1 x) p 2 S 1, S 2 integer x {0, 1} S 1 Remark : once x is fixed, extreme points are integral = no need for integer constraints on S Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 17 / 78
47 Principle of (mixed)integer programming Design a good MIP formulation for the scheduling problem Solve by branchandbound min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S 1 + Mx p 1 S 2 S S 1 S2 + M(1 x) p 2 S 1, S 2 integer x {0, 1} S 1 Remark : once x is fixed, extreme points are integral = no need for integer constraints on S Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 17 / 78
48 Principle of (mixed)integer programming Design a good MIP formulation for the scheduling problem Solve by branchandbound min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S 1 + Mx p 1 S 2 S S 1 S2 + M(1 x) p 2 S 1, S 2 integer x {0, 1} Left node x = 1 S 1 Remark : once x is fixed, extreme points are integral = no need for integer constraints on S Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 17 / 78
49 Principle of (mixed)integer programming Design a good MIP formulation for the scheduling problem Solve by branchandbound min S 1 + S 2 +p 1 + p 2 S 1 r 1 S 2 r 2 S 1 + p 1 d 1 S 2 + p 2 d 2 S 2 S 1 + Mx p 1 S 2 S S 1 S2 + M(1 x) p 2 S 1, S 2 integer x {0, 1} Right node x = 0 J 1 J 2 Ci = S 1 Remark : once x is fixed, extreme points are integral = no need for integer constraints on S Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 17 / 78
50 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
51 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
52 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
53 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
54 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
55 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
56 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
57 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
58 Case study : the resourceconstrained project scheduling problem Resourceconstrained project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. m resources (set R). Constant availability B k, k R. For each job i J : duration p i and resource requirements b ik, k R. Resource constraints i J S i t S i +p i 1 b ik B k, t T, k R. Cost function w j : {1,..., T } R. Find a schedule that minimizes i J w j(s j ). Remark 1 : R = 1, B 1 = 1, and b i1 = 1, i J Remark 2 : R = 1, B 1 2 and b i1 = 1, i J = 1machine problem. = parallel machine problem. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 18 / 78
59 Scheduling objectives Objective min i J w j(s j ) models most standard objectives Makespan min max i J C i Let J = {1,..., n + 1} with n + 1 dummy end jobs. w i (t) = 0, i J \ {n + 1}, w n+1 (t) = t Maximum lateness min max i J C i d i Same modeling by adding arc (i, n + 1) in E with l i,n+1 = p i d i Earlinesstardiness costs min i J (α i max(0, d i C i ) + β i max(0, C i d i ) w i (t) = α i max(0, d i t p i ) + β i max(0, t + p i d i ) (weighted completion time if, in addition, d i = 0 α i = 0, i J ) Weighted number of late jobs i J w iu i { 0 if t + pi d w i (t) = i w i otherwise Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 19 / 78
60 Scheduling objectives Objective min i J w j(s j ) models most standard objectives Makespan min max i J C i Let J = {1,..., n + 1} with n + 1 dummy end jobs. w i (t) = 0, i J \ {n + 1}, w n+1 (t) = t Maximum lateness min max i J C i d i Same modeling by adding arc (i, n + 1) in E with l i,n+1 = p i d i Earlinesstardiness costs min i J (α i max(0, d i C i ) + β i max(0, C i d i ) w i (t) = α i max(0, d i t p i ) + β i max(0, t + p i d i ) (weighted completion time if, in addition, d i = 0 α i = 0, i J ) Weighted number of late jobs i J w iu i { 0 if t + pi d w i (t) = i w i otherwise Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 19 / 78
61 Scheduling objectives Objective min i J w j(s j ) models most standard objectives Makespan min max i J C i Let J = {1,..., n + 1} with n + 1 dummy end jobs. w i (t) = 0, i J \ {n + 1}, w n+1 (t) = t Maximum lateness min max i J C i d i Same modeling by adding arc (i, n + 1) in E with l i,n+1 = p i d i Earlinesstardiness costs min i J (α i max(0, d i C i ) + β i max(0, C i d i ) w i (t) = α i max(0, d i t p i ) + β i max(0, t + p i d i ) (weighted completion time if, in addition, d i = 0 α i = 0, i J ) Weighted number of late jobs i J w iu i { 0 if t + pi d w i (t) = i w i otherwise Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 19 / 78
62 Scheduling objectives Objective min i J w j(s j ) models most standard objectives Makespan min max i J C i Let J = {1,..., n + 1} with n + 1 dummy end jobs. w i (t) = 0, i J \ {n + 1}, w n+1 (t) = t Maximum lateness min max i J C i d i Same modeling by adding arc (i, n + 1) in E with l i,n+1 = p i d i Earlinesstardiness costs min i J (α i max(0, d i C i ) + β i max(0, C i d i ) w i (t) = α i max(0, d i t p i ) + β i max(0, t + p i d i ) (weighted completion time if, in addition, d i = 0 α i = 0, i J ) Weighted number of late jobs i J w iu i { 0 if t + pi d w i (t) = i w i otherwise Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 19 / 78
63 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems Timeindexed variables Total unimodularity Sequencing and natural date variables Flow (TSP) and natural date variables Positional date and assignment variables Hybrid formulations 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 20 / 78
64 MILP Formulations with timeindexed variables timeindexed variables x it = 1 S i = t S i = T t=0 tx it Single machine min w j (t)x jt j J t T x jt = 1 j J t T T T tx jt tx it l ij (i, j) E t=0 t=0 t x js 1 t T j J s=t p j +1 x jt {0, 1} j J, t T Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 21 / 78
65 MILP Formulations with timeindexed variables timeindexed variables x it = 1 S i = t S i = T t=0 tx it Parallel machines min w j (t)x jt j J t T x jt = 1 j J t T T T tx jt tx it l ij (i, j) E t=0 t=0 t x js B t T j J s=t p j +1 x jt {0, 1} j J, t T Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 21 / 78
66 MILP Formulations with timeindexed variables timeindexed variables x it = 1 S i = t S i = T t=0 tx it RCPSP min w j (t)x jt j J t T x jt = 1 j J t T T T tx jt tx it l ij (i, j) E t=0 t=0 t b jk x js B k t T, k R j J s=t p j +1 x jt {0, 1} j J, t T nt variables, E precedence constraints, R T resource constraints. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 21 / 78
67 MILP Formulations with timeindexed variables timeindexed variables x it = 1 S i = t S i = T t=0 tx it RCPSP (disaggregated precedence constraints) min w j (t)x jt j J t T x jt = 1 j J t T t+l T ij 1 x is + x js 1 (i, j) E, t T s=t s=0 t b jk x js B k t T, k R j J s=t p j +1 x jt {0, 1} j J, t T nt variables, E T precedence constraints, R T resource constraints. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 21 / 78
68 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems Timeindexed variables Total unimodularity Sequencing and natural date variables Flow (TSP) and natural date variables Positional date and assignment variables Hybrid formulations 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 22 / 78
69 Total unimodularity A matrix A is totally unimodular (TU) if and only if every square submatrix has determinant 0, 1 or 1. if A is TU, min Ax b cx has an integer optimal solution or there is no solution A is TU if (sufficient condition) rows can be partitionned into two disjoint sets B and C such that each column of A has at most two nonzero entries, each entry of A is 0, 1 or 1 if two nonzeros in a column have opposite signs, they are in the same subset of rows (both in B or both in C). if two nonzeros in a column have the same sign, there is one in B and the other one in C A is also TU if its transpose is TU. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 23 / 78
70 Total unimodularity and scheduling Project scheduling with irregular starting time costs n jobs (set J ) with integer start times S i T = {0, 1,..., T }. Precedence constraints E such that (i, j) E = S j S i + l ij. Cost function w j : {1,..., T } R. Find a schedule that minimizes j J w j(s j ). timeindexed variable z it = 1 S i t (z it = T t=0 x it ) min (w j (t) w j (t + 1)) z jt j J t T z jt = 1 z jt z j,t+1 0 z j,t+lij z it 0 z jt {0, 1} j J j J, t T (i, j) E, t T j J, t T The matrix totally unimodular = no integer restriction needed! Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 24 / 78
71 Comparison between formulations Other IP with timeindexed variables x it = 1 S i = t (nt variables) T x is + s=t min w j (t)x jt x jt = 1 t T t+l ij 1 s=0 j J t T x js 1 x jt {0, 1} j J (i, j) E, t T j J, t T Totally unimodular matrix, integer polyhedron min w j (t)x jt x jt = 1 t T j J t T T T tx js tx is l ij t=0 t=0 x jt {0, 1} Polyhedron is not integer! j J (i, j) E j J, t T For the RCPSP, the LP relaxation of the timeindexed model with disagreggated precedence constraints is tighter. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 25 / 78
72 MILP Formulations with timeindexed variables : facets Facetinducing inequalities for the singlemachine polyhedron (without precedence constraints) [SW92] x jt 1 j J t T t x js 1 t T j J s=t p j +1 t+ 1 x js + t x is 1 s=t p j +1 i j s=t p i + j J, t T, All facetinducing inequalities with rhs = 1 [vhs99]. {2,..., max p i } i j Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 26 / 78
73 Sousa and Wolsey valid inequalities [SW92] T u=1 t i J s=t p i +1 t+ 1 i J s=t p i + x ju 2 = 1 2 x is x is T u=1 x ju 2 + n t i=1 s=t p i +1 t+ 1 x is 2 + i J s=t p j +1 x js + i j t+ 1 s=t p i + t s=t p i + x is x is 1 Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 27 / 78
74 Sousa and Wolsey valid inequalities [SW92] For each time period t T, for each task j T and for each {2,..., max i j p i } t p j + 1 t + 1 j t p i + t 1 i J \ {j} Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 28 / 78
75 van den Akker et al. valid ineqalities [vhs99] j 1 u 1 p j1 + 1 u u 2 p j1 v u z u 2 p j1 + 1 u u 1 p j2 + 1 u1 max{u 2 v, u } p j2 min{u z, u 2 } u 2 p j2 + 2 u2 j 2 2 u 1 p i z + 1 u 1 u 2 p i + 1u u 2 p i + 2 u 2 v 1 i J\{j 1, j 2 } L M U With the same principle all facetinducing inequalities with rhs = 2 are derived. In [WJNS02], relation with valid ineqalities for the node packing problem is established. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 29 / 78
76 Valid inequalities for the timeindexed RCPSP ILP Hardin et al. [HNS08] extend the Sousa and Wolsey 1machine cuts to the RCPSP. Let F be a forbidden set (or cover), i.e. j F b i > B. j F ts=t pj +1 x js F 1 is a valid inequality t T. Consider now a special task j F and an interval v 0 ts=t pj i F \{j} +1+v x iq + t+v s=t p j +1 x js F 1 is a valid inequality t T. The inequality defines a facet for the polyhedron reduced to jobs in C if C is a minimal forbidden set, i.e. C\{i} b i B, i C. Hardin et al. propose lifting procedures and conditions for the resulting inequalities to be facetinducing for the complete polyhedron. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 30 / 78
77 Valid inequalities for the timeindexed RCPSP ILP Hardin et al. [HNS08] extend the Sousa and Wolsey 1machine cuts to the RCPSP. Let F be a forbidden set (or cover), i.e. j F b i > B. j F ts=t pj +1 x js F 1 is a valid inequality t T. Consider now a special task j F and an interval v 0 ts=t pj i F \{j} +1+v x iq + t+v s=t p j +1 x js F 1 is a valid inequality t T. The inequality defines a facet for the polyhedron reduced to jobs in C if C is a minimal forbidden set, i.e. C\{i} b i B, i C. Hardin et al. propose lifting procedures and conditions for the resulting inequalities to be facetinducing for the complete polyhedron. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 30 / 78
78 Valid inequalities for the timeindexed RCPSP ILP Hardin et al. [HNS08] extend the Sousa and Wolsey 1machine cuts to the RCPSP. Let F be a forbidden set (or cover), i.e. j F b i > B. j F ts=t pj +1 x js F 1 is a valid inequality t T. Consider now a special task j F and an interval v 0 ts=t pj i F \{j} +1+v x iq + t+v s=t p j +1 x js F 1 is a valid inequality t T. The inequality defines a facet for the polyhedron reduced to jobs in C if C is a minimal forbidden set, i.e. C\{i} b i B, i C. Hardin et al. propose lifting procedures and conditions for the resulting inequalities to be facetinducing for the complete polyhedron. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 30 / 78
79 Valid inequalities for the timeindexed RCPSP ILP Hardin et al. [HNS08] extend the Sousa and Wolsey 1machine cuts to the RCPSP. Let F be a forbidden set (or cover), i.e. j F b i > B. j F ts=t pj +1 x js F 1 is a valid inequality t T. Consider now a special task j F and an interval v 0 ts=t pj i F \{j} +1+v x iq + t+v s=t p j +1 x js F 1 is a valid inequality t T. The inequality defines a facet for the polyhedron reduced to jobs in C if C is a minimal forbidden set, i.e. C\{i} b i B, i C. Hardin et al. propose lifting procedures and conditions for the resulting inequalities to be facetinducing for the complete polyhedron. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 30 / 78
80 Valid inequalities for the timeindexed RCPSP ILP Hardin et al. [HNS08] extend the Sousa and Wolsey 1machine cuts to the RCPSP. Let F be a forbidden set (or cover), i.e. j F b i > B. j F ts=t pj +1 x js F 1 is a valid inequality t T. Consider now a special task j F and an interval v 0 ts=t pj i F \{j} +1+v x iq + t+v s=t p j +1 x js F 1 is a valid inequality t T. The inequality defines a facet for the polyhedron reduced to jobs in C if C is a minimal forbidden set, i.e. C\{i} b i B, i C. Hardin et al. propose lifting procedures and conditions for the resulting inequalities to be facetinducing for the complete polyhedron. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 30 / 78
81 Valid inequalities for the timeindexed RCPSP ILP Hardin et al. [HNS08] extend the Sousa and Wolsey 1machine cuts to the RCPSP. Let F be a forbidden set (or cover), i.e. j F b i > B. j F ts=t pj +1 x js F 1 is a valid inequality t T. Consider now a special task j F and an interval v 0 ts=t pj i F \{j} +1+v x iq + t+v s=t p j +1 x js F 1 is a valid inequality t T. The inequality defines a facet for the polyhedron reduced to jobs in C if C is a minimal forbidden set, i.e. C\{i} b i B, i C. Hardin et al. propose lifting procedures and conditions for the resulting inequalities to be facetinducing for the complete polyhedron. Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 30 / 78
82 Outline 1 Introduction 2 Polyhedral studies and cutting plane generation 3 (Mixed) integer programming for scheduling problems Timeindexed variables Total unimodularity Sequencing and natural date variables Flow (TSP) and natural date variables Positional date and assignment variables Hybrid formulations 4 Column generation 5 A few Computational results Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 31 / 78
83 Sequencing variables Timeindexed models yield good LP relaxation but the number of variables can be huge = need to consider more compact models. Binary variable y ij = 1 if and only if S j S i + p i Disjunctive case : y ij = 1 y ji, (i, j) D (half of the variables can be dropped) and y ij is the incidence vector of linear orderings : If there are no release dates and in the 1machine case C j = i D\{j} y ij p i + p j Not possible to consider start dependent costs = objective i J w i C i Christian Artigues Scheduling and (Integer) Linear Programming CPAIOR 2012, Nantes 32 / 78
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
More informationSolving the ILP using branchandcut
Solving the ILP using branchandcut Solving ILPs is a main topic in combinatorial optimization. We will take a brief look at the branchandcut approach. Branchandcut makes use of two techniques: Cutting
More informationGood luck, veel succes!
Final exam Advanced Linear Programming, May 7, 13.0016.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;
More information3. Linear Programming and Polyhedral Combinatorics
Massachusetts Institute of Technology Handout 6 18.433: Combinatorial Optimization February 20th, 2009 Michel X. Goemans 3. Linear Programming and Polyhedral Combinatorics Summary of what was seen in the
More informationChapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling
Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NPhard problem. What should I do? A. Theory says you're unlikely to find a polytime algorithm. Must sacrifice one
More information! Solve problem to optimality. ! Solve problem in polytime. ! Solve arbitrary instances of the problem. #approximation algorithm.
Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NPhard problem What should I do? A Theory says you're unlikely to find a polytime algorithm Must sacrifice one of three
More information6. Mixed Integer Linear Programming
6. Mixed Integer Linear Programming Javier Larrosa Albert Oliveras Enric RodríguezCarbonell Problem Solving and Constraint Programming (RPAR) Session 6 p.1/40 Mixed Integer Linear Programming A mixed
More information! Solve problem to optimality. ! Solve problem in polytime. ! Solve arbitrary instances of the problem. !approximation algorithm.
Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NPhard problem What should I do? A Theory says you're unlikely to find a polytime algorithm Must sacrifice one of
More information. P. 4.3 Basic feasible solutions and vertices of polyhedra. x 1. x 2
4. Basic feasible solutions and vertices of polyhedra Due to the fundamental theorem of Linear Programming, to solve any LP it suffices to consider the vertices (finitely many) of the polyhedron P of the
More information1 Polyhedra and Linear Programming
CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material
More informationScheduling Shop Scheduling. Tim Nieberg
Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations
More informationGeometry of Linear Programming
Chapter 2 Geometry of Linear Programming The intent of this chapter is to provide a geometric interpretation of linear programming problems. To conceive fundamental concepts and validity of different algorithms
More informationMinimum Makespan Scheduling
Minimum Makespan Scheduling Minimum makespan scheduling: Definition and variants Factor 2 algorithm for identical machines PTAS for identical machines Factor 2 algorithm for unrelated machines Martin Zachariasen,
More informationApproximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai
Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization
More informationLecture 3: Linear Programming Relaxations and Rounding
Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can
More informationResource Allocation and Scheduling
Lesson 3: Resource Allocation and Scheduling DEIS, University of Bologna Outline Main Objective: joint resource allocation and scheduling problems In particular, an overview of: Part 1: Introduction and
More information10.1 Integer Programming and LP relaxation
CS787: Advanced Algorithms Lecture 10: LP Relaxation and Rounding In this lecture we will design approximation algorithms using linear programming. The key insight behind this approach is that the closely
More informationDiscrete Optimization
Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.14.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 20150331 Todays presentation Chapter 3 Transforms using
More informationApproximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NPCompleteness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
More informationNoncommercial Software for MixedInteger Linear Programming
Noncommercial Software for MixedInteger Linear Programming J. T. Linderoth T. K. Ralphs December, 2004. Revised: January, 2005. Abstract We present an overview of noncommercial software tools for the
More informationCHAPTER 9. Integer Programming
CHAPTER 9 Integer Programming An integer linear program (ILP) is, by definition, a linear program with the additional constraint that all variables take integer values: (9.1) max c T x s t Ax b and x integral
More informationQuiz 1 Sample Questions IE406 Introduction to Mathematical Programming Dr. Ralphs
Quiz 1 Sample Questions IE406 Introduction to Mathematical Programming Dr. Ralphs These questions are from previous years and should you give you some idea of what to expect on Quiz 1. 1. Consider the
More informationTHEORY OF SIMPLEX METHOD
Chapter THEORY OF SIMPLEX METHOD Mathematical Programming Problems A mathematical programming problem is an optimization problem of finding the values of the unknown variables x, x,, x n that maximize
More informationMATHEMATICAL BACKGROUND
Chapter 1 MATHEMATICAL BACKGROUND This chapter discusses the mathematics that is necessary for the development of the theory of linear programming. We are particularly interested in the solutions of a
More informationDiscrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131
Discrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131 Kees Roos Technische Universiteit Delft Faculteit Informatietechnologie en Systemen Afdeling Informatie, Systemen en Algoritmiek
More informationWeek 5 Integral Polyhedra
Week 5 Integral Polyhedra We have seen some examples 1 of linear programming formulation that are integral, meaning that every basic feasible solution is an integral vector. This week we develop a theory
More informationApplied Algorithm Design Lecture 5
Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design
More informationCan linear programs solve NPhard problems?
Can linear programs solve NPhard problems? p. 1/9 Can linear programs solve NPhard problems? Ronald de Wolf Linear programs Can linear programs solve NPhard problems? p. 2/9 Can linear programs solve
More informationUsing the Simplex Method in Mixed Integer Linear Programming
Integer Using the Simplex Method in Mixed Integer UTFSM Nancy, 17 december 2015 Using the Simplex Method in Mixed Integer Outline Mathematical Programming Integer 1 Mathematical Programming Optimisation
More informationLinear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.
Linear Programming Widget Factory Example Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory:, Vertices, Existence of Solutions. Equivalent formulations.
More informationInverse Optimization by James Orlin
Inverse Optimization by James Orlin based on research that is joint with Ravi Ahuja Jeopardy 000  the Math Programming Edition The category is linear objective functions The answer: When you maximize
More informationClassification  Examples
Lecture 2 Scheduling 1 Classification  Examples 1 r j C max given: n jobs with processing times p 1,...,p n and release dates r 1,...,r n jobs have to be scheduled without preemption on one machine taking
More informationScheduling Jobs and Preventive Maintenance Activities on Parallel Machines
Scheduling Jobs and Preventive Maintenance Activities on Parallel Machines Maher Rebai University of Technology of Troyes Department of Industrial Systems 12 rue Marie Curie, 10000 Troyes France maher.rebai@utt.fr
More informationInternational Doctoral School Algorithmic Decision Theory: MCDA and MOO
International Doctoral School Algorithmic Decision Theory: MCDA and MOO Lecture 2: Multiobjective Linear Programming Department of Engineering Science, The University of Auckland, New Zealand Laboratoire
More informationChapter 15 Introduction to Linear Programming
Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2014 WeiTa Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of
More informationmax cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x
Linear Programming Linear programming refers to problems stated as maximization or minimization of a linear function subject to constraints that are linear equalities and inequalities. Although the study
More informationAdvanced Topics in Machine Learning (Part II)
Advanced Topics in Machine Learning (Part II) 3. Convexity and Optimisation February 6, 2009 Andreas Argyriou 1 Today s Plan Convex sets and functions Types of convex programs Algorithms Convex learning
More informationThe truck scheduling problem at crossdocking terminals
The truck scheduling problem at crossdocking terminals Lotte Berghman,, Roel Leus, Pierre Lopez To cite this version: Lotte Berghman,, Roel Leus, Pierre Lopez. The truck scheduling problem at crossdocking
More informationIntroduction to Linear Programming.
Chapter 1 Introduction to Linear Programming. This chapter introduces notations, terminologies and formulations of linear programming. Examples will be given to show how reallife problems can be modeled
More information11. APPROXIMATION ALGORITHMS
11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005
More informationIn this paper we present a branchandcut algorithm for
SOLVING A TRUCK DISPATCHING SCHEDULING PROBLEM USING BRANCHANDCUT ROBERT E. BIXBY Rice University, Houston, Texas EVA K. LEE Georgia Institute of Technology, Atlanta, Georgia (Received September 1994;
More informationThe ResourceConstrained Project Scheduling Problem
Chapter 1 The ResourceConstrained Project Scheduling Problem 1.1. A combinatorial optimization problem Informally, a resourceconstrained project scheduling problem (RCPSP) considers resources of limited
More informationScheduling Single Machine Scheduling. Tim Nieberg
Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for nonpreemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe
More informationLecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method
Lecture 3 3B1B Optimization Michaelmas 2015 A. Zisserman Linear Programming Extreme solutions Simplex method Interior point method Integer programming and relaxation The Optimization Tree Linear Programming
More informationComputing with the Mixed Integer Rounding Cut.
Computing with the Mixed Integer Rounding Cut. Marcos Goycoolea. Universidad Adolfo Ibañez Santiago, Chile. (joint work with Sanjeeb Dash, IBM Research, NY) A quick history... Gomory s Mixed Integer
More informationSolving Linear Programming Problem with Fuzzy Right Hand Sides: A Penalty Method
Solving Linear Programming Problem with Fuzzy Right Hand Sides: A Penalty Method S.H. Nasseri and Z. Alizadeh Department of Mathematics, University of Mazandaran, Babolsar, Iran Abstract Linear programming
More informationKey words. Mixedinteger programming, mixing sets, convex hull descriptions, lotsizing.
MIXING SETS LINKED BY BIDIRECTED PATHS MARCO DI SUMMA AND LAURENCE A. WOLSEY Abstract. Recently there has been considerable research on simple mixedinteger sets, called mixing sets, and closely related
More informationSOLVING LINEAR SYSTEM OF INEQUALITIES WITH APPLICATION TO LINEAR PROGRAMS
SOLVING LINEAR SYSTEM OF INEQUALITIES WITH APPLICATION TO LINEAR PROGRAMS Hossein Arsham, University of Baltimore, (410) 8375268, harsham@ubalt.edu Veena Adlakha, University of Baltimore, (410) 8374969,
More informationApproximation Algorithms. Scheduling. Approximation algorithms. Scheduling jobs on a single machine
Approximation algorithms Approximation Algorithms Fast. Cheap. Reliable. Choose two. NPhard problems: choose 2 of optimal polynomial time all instances Approximation algorithms. Tradeoff between time
More information2.3 Scheduling jobs on identical parallel machines
2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed
More information18. Linear optimization
18. Linear optimization EE103 (Fall 201112) linear program examples geometrical interpretation extreme points simplex method 181 Linear program minimize c 1 x 1 +c 2 x 2 + +c n x n subject to a 11 x
More informationOptimization Modeling for Mining Engineers
Optimization Modeling for Mining Engineers Alexandra M. Newman Division of Economics and Business Slide 1 Colorado School of Mines Seminar Outline Linear Programming Integer Linear Programming Slide 2
More informationSection Notes 3. The Simplex Algorithm. Applied Math 121. Week of February 14, 2011
Section Notes 3 The Simplex Algorithm Applied Math 121 Week of February 14, 2011 Goals for the week understand how to get from an LP to a simplex tableau. be familiar with reduced costs, optimal solutions,
More informationBy W.E. Diewert. July, Linear programming problems are important for a number of reasons:
APPLIED ECONOMICS By W.E. Diewert. July, 3. Chapter : Linear Programming. Introduction The theory of linear programming provides a good introduction to the study of constrained maximization (and minimization)
More informationarxiv:cs/0106002v2 [cs.dm] 21 Aug 2001
Solving Assembly Line Balancing Problems by Combining IP and CP Alexander Bockmayr and Nicolai Pisaruk arxiv:cs/0106002v2 [cs.dm] 21 Aug 2001 Université Henri Poincaré, LORIA B.P. 239, F54506 VandœuvrelèsNancy,
More information5.1 Bipartite Matching
CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the FordFulkerson
More informationTheory of Linear Programming
Theory of Linear Programming Debasis Mishra April 6, 2011 1 Introduction Optimization of a function f over a set S involves finding the maximum (minimum) value of f (objective function) in the set S (feasible
More informationAM 221: Advanced Optimization Spring Prof. Yaron Singer Lecture 7 February 19th, 2014
AM 22: Advanced Optimization Spring 204 Prof Yaron Singer Lecture 7 February 9th, 204 Overview In our previous lecture we saw the application of the strong duality theorem to game theory, and then saw
More informationDiscuss the size of the instance for the minimum spanning tree problem.
3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can
More informationMinimizing costs for transport buyers using integer programming and column generation. Eser Esirgen
MASTER STHESIS Minimizing costs for transport buyers using integer programming and column generation Eser Esirgen DepartmentofMathematicalSciences CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG
More informationINTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models
Integer Programming INTEGER PROGRAMMING In many problems the decision variables must have integer values. Example: assign people, machines, and vehicles to activities in integer quantities. If this is
More informationLecture 7: Approximation via Randomized Rounding
Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining
More informationAutomated Scheduling, School of Computer Science and IT, University of Nottingham 1. Job Shop Scheduling. Disjunctive Graph.
Job hop cheduling Contents 1. Problem tatement 2. Disjunctive Graph. he hifting Bottleneck Heuristic and the Makespan Literature: 1. cheduling, heory, Algorithms, and ystems, Michael Pinedo, Prentice Hall,
More informationA ColumnGeneration and BranchandCut Approach to the BandwidthPacking Problem
[J. Res. Natl. Inst. Stand. Technol. 111, 161185 (2006)] A ColumnGeneration and BranchandCut Approach to the BandwidthPacking Problem Volume 111 Number 2 MarchApril 2006 Christine Villa and Karla
More informationScheduling Home Health Care with Separating Benders Cuts in Decision Diagrams
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery
More informationClassification  Examples 1 1 r j C max given: n jobs with processing times p 1,..., p n and release dates
Lecture 2 Scheduling 1 Classification  Examples 11 r j C max given: n jobs with processing times p 1,..., p n and release dates r 1,..., r n jobs have to be scheduled without preemption on one machine
More information1 Unrelated Parallel Machine Scheduling
IIIS 014 Spring: ATCS  Selected Topics in Optimization Lecture date: Mar 13, 014 Instructor: Jian Li TA: Lingxiao Huang Scribe: Yifei Jin (Polishing not finished yet.) 1 Unrelated Parallel Machine Scheduling
More informationMinimize subject to. x S R
Chapter 12 Lagrangian Relaxation This chapter is mostly inspired by Chapter 16 of [1]. In the previous chapters, we have succeeded to find efficient algorithms to solve several important problems such
More informationMathematics Notes for Class 12 chapter 12. Linear Programming
1 P a g e Mathematics Notes for Class 12 chapter 12. Linear Programming Linear Programming It is an important optimization (maximization or minimization) technique used in decision making is business and
More informationHub Cover and Hub Center Problems
Hub Cover and Hub Center Problems Horst W. Hamacher, Tanja Meyer Department of Mathematics, University of Kaiserslautern, GottliebDaimlerStrasse, 67663 Kaiserslautern, Germany Abstract Using covering
More informationC. De Simone, G. Rinaldi
C. De Simone, G. Rinaldi A CUTTING PLANE ALGORITHM FOR THE MAXCUT PROBLEM Caterina De Simone, Giovanni Rinaldi  Istituto di Analisi dei Sistemi ed Informatica del CNR  Viale Manzoni 30, 00185 Roma,
More informationA Linear Programming Based Method for Job Shop Scheduling
A Linear Programming Based Method for Job Shop Scheduling Kerem Bülbül Sabancı University, Manufacturing Systems and Industrial Engineering, OrhanlıTuzla, 34956 Istanbul, Turkey bulbul@sabanciuniv.edu
More informationNew Exact Solution Approaches for the Split Delivery Vehicle Routing Problem
New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem Gizem Ozbaygin, Oya Karasan and Hande Yaman Department of Industrial Engineering, Bilkent University, Ankara, Turkey ozbaygin,
More informationOutline. Linear Programming (LP): Simplex Search. Simplex: An ExtremePoint Search Algorithm. Basic Solutions
Outline Linear Programming (LP): Simplex Search Benoît Chachuat McMaster University Department of Chemical Engineering ChE 4G03: Optimization in Chemical Engineering 1 Basic Solutions
More informationGraphical method. plane. (for max) and down (for min) until it touches the set of feasible solutions. Graphical method
The graphical method of solving linear programming problems can be applied to models with two decision variables. This method consists of two steps (see also the first lecture): 1 Draw the set of feasible
More informationScheduling a sequence of tasks with general completion costs
Scheduling a sequence of tasks with general completion costs Francis Sourd CNRSLIP6 4, place Jussieu 75252 Paris Cedex 05, France Francis.Sourd@lip6.fr Abstract Scheduling a sequence of tasks in the acceptation
More informationConvexity I: Sets and Functions
Convexity I: Sets and Functions Lecturer: Ryan Tibshirani Convex Optimization 10725/36725 See supplements for reviews of basic real analysis basic multivariate calculus basic linear algebra Last time:
More informationLargest FixedAspect, AxisAligned Rectangle
Largest FixedAspect, AxisAligned Rectangle David Eberly Geometric Tools, LLC http://www.geometrictools.com/ Copyright c 19982016. All Rights Reserved. Created: February 21, 2004 Last Modified: February
More information26 Linear Programming
The greatest flood has the soonest ebb; the sorest tempest the most sudden calm; the hottest love the coldest end; and from the deepest desire oftentimes ensues the deadliest hate. Th extremes of glory
More informationTransportation Polytopes: a Twenty year Update
Transportation Polytopes: a Twenty year Update Jesús Antonio De Loera University of California, Davis Based on various papers joint with R. Hemmecke, E.Kim, F. Liu, U. Rothblum, F. Santos, S. Onn, R. Yoshida,
More informationJUSTINTIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004
Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUSTINTIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February
More informationScheduling of Mixed BatchContinuous Production Lines
Université Catholique de Louvain Faculté des Sciences Appliquées Scheduling of Mixed BatchContinuous Production Lines Thèse présentée en vue de l obtention du grade de Docteur en Sciences Appliquées par
More informationMincost flow problems and network simplex algorithm
Mincost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.
More informationMinimizing the Number of Machines in a UnitTime Scheduling Problem
Minimizing the Number of Machines in a UnitTime Scheduling Problem Svetlana A. Kravchenko 1 United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarus kravch@newman.basnet.by Frank
More informationSome representability and duality results for convex mixedinteger programs.
Some representability and duality results for convex mixedinteger programs. Santanu S. Dey Joint work with Diego Morán and Juan Pablo Vielma December 17, 2012. Introduction About Motivation Mixed integer
More informationWhat is Linear Programming?
Chapter 1 What is Linear Programming? An optimization problem usually has three essential ingredients: a variable vector x consisting of a set of unknowns to be determined, an objective function of x to
More informationDynamic Programming.S1 Sequencing Problems
Dynamic Programming.S1 Sequencing Problems Operations Research Models and Methods Paul A. Jensen and Jonathan F. Bard Many operational problems in manufacturing, service and distribution require the sequencing
More informationTutorial on Convex Optimization for Engineers Part I
Tutorial on Convex Optimization for Engineers Part I M.Sc. Jens Steinwandt Communications Research Laboratory Ilmenau University of Technology PO Box 100565 D98684 Ilmenau, Germany jens.steinwandt@tuilmenau.de
More informationAbstract Linear Algebra, Fall Solutions to Problems III
Abstract Linear Algebra, Fall 211  Solutions to Problems III 1. Let P 3 denote the real vector space of all real polynomials p(t) of degree at most 3. Consider the linear map T : P 3 P 3 given by T p(t)
More informationA Constraint Programming based Column Generation Approach to Nurse Rostering Problems
Abstract A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Fang He and Rong Qu The Automated Scheduling, Optimisation and Planning (ASAP) Group School of Computer Science,
More informationComparison of Optimization Techniques in Large Scale Transportation Problems
Journal of Undergraduate Research at Minnesota State University, Mankato Volume 4 Article 10 2004 Comparison of Optimization Techniques in Large Scale Transportation Problems Tapojit Kumar Minnesota State
More informationSOLVE THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS VIA A GENETIC ALGORITHM. Yaw Chang and Lin Chen
DISCRETE AND CONTINUOUS Website: www.aimsciences.org DYNAMICAL SYSTEMS SUPPLEMENT 2007 pp. 240 249 SOLVE THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS VIA A GENETIC ALGORITHM Yaw Chang and Lin Chen Mathematics
More informationMinimum Caterpillar Trees and RingStars: a branchandcut algorithm
Minimum Caterpillar Trees and RingStars: a branchandcut algorithm Luidi G. Simonetti Yuri A. M. Frota Cid C. de Souza Institute of Computing University of Campinas Brazil Aussois, January 2010 Cid de
More informationModern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh
Modern Optimization Methods for Big Data Problems MATH11146 The University of Edinburgh Peter Richtárik Week 3 Randomized Coordinate Descent With Arbitrary Sampling January 27, 2016 1 / 30 The Problem
More informationBranchandPrice Approach to the Vehicle Routing Problem with Time Windows
TECHNISCHE UNIVERSITEIT EINDHOVEN BranchandPrice Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents
More informationLinear Programming: Introduction
Linear Programming: Introduction Frédéric Giroire F. Giroire LP  Introduction 1/28 Course Schedule Session 1: Introduction to optimization. Modelling and Solving simple problems. Modelling combinatorial
More informationIntroduction and message of the book
1 Introduction and message of the book 1.1 Why polynomial optimization? Consider the global optimization problem: P : for some feasible set f := inf x { f(x) : x K } (1.1) K := { x R n : g j (x) 0, j =
More informationDefinition of a Linear Program
Definition of a Linear Program Definition: A function f(x 1, x,..., x n ) of x 1, x,..., x n is a linear function if and only if for some set of constants c 1, c,..., c n, f(x 1, x,..., x n ) = c 1 x 1
More informationDuplicating and its Applications in Batch Scheduling
Duplicating and its Applications in Batch Scheduling Yuzhong Zhang 1 Chunsong Bai 1 Shouyang Wang 2 1 College of Operations Research and Management Sciences Qufu Normal University, Shandong 276826, China
More information