G´ en´ eration de contraintes et pr´ etraitement

advertisement
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Génération de contraintes et prétraitement en
programmation mathématique: application à un
problème d’ordonnancement avec sélection
F.Della Croce1 , C. Koulamas2 , V T’kindt3
1. D.A.I. Politecnico di Torino, Italy and CNR, IEIIT, Torino, Italy
2. College of Business, Florida International University, USA
3. Université Francois-Rabelais, CNRS, Tours, France
JIRC 2014
Tours, 16 Avril 2014
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
1 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
2 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
3 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
A set of n jobs
Each job i has proc. times ai on machine 1 and bi on
machine 2.
Cj ,i denotes the compl. time of job i on machine j .
all jobs have the same due date d which is unknown.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
4 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
A set of n jobs
Machine 1
Machine 2
0
time
Each job i has proc. times ai on machine 1 and bi on
machine 2.
Cj ,i denotes the compl. time of job i on machine j .
all jobs have the same due date d which is unknown.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
4 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
A set of n jobs
Machine 1
Machine 2
0
time
ai
Machine 1
i
bi
Machine 2
i
time
0
C2,i
Each job i has proc. times ai on machine 1 and bi on
machine 2.
Cj ,i denotes the compl. time of job i on machine j .
all jobs have the same due date d which is unknown.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
4 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
A set of n jobs
Machine 1
Machine 2
0
time
ai
Machine 1
i
bi
Machine 2
i
time
0
C2,i
Each job i has proc. times ai on machine 1 and bi on
machine 2.
Cj ,i denotes the compl. time of job i on machine j .
all jobs have the same due date d which is unknown.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
4 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
A set of n jobs
Machine 1
Machine 2
0
time
ai
Machine 1
i
bi
Machine 2
i
time
0
C2,i
Each job i has proc. times ai on machine 1 and bi on
machine 2.
Cj ,i denotes the compl. time of job i on machine j .
all jobs have the same due date d which is unknown.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
4 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
P
Ū = ni=1 Ui denotes the number of late jobs, where Ui = 1
if job i is late (C2,i > d ), otherwise Ui = 0.
The objective is to minimize the number of late jobs Ū as
well as the common due date d ;
A solution of the problem is a couple (s, d s ), where s is a
schedule and d s its common due date, to which a criteria
vector [Ū (s); d s ] is associated.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
5 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
P
Ū = ni=1 Ui denotes the number of late jobs, where Ui = 1
if job i is late (C2,i > d ), otherwise Ui = 0.
The objective is to minimize the number of late jobs Ū as
well as the common due date d ;
A solution of the problem is a couple (s, d s ), where s is a
schedule and d s its common due date, to which a criteria
vector [Ū (s); d s ] is associated.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
5 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
P
Ū = ni=1 Ui denotes the number of late jobs, where Ui = 1
if job i is late (C2,i > d ), otherwise Ui = 0.
The objective is to minimize the number of late jobs Ū as
well as the common due date d ;
A solution of the problem is a couple (s, d s ), where s is a
schedule and d s its common due date, to which a criteria
vector [Ū (s); d s ] is associated.
schedule s
M1
M2
time
ds
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
5 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
What are we looking for ?
Pareto optimal solutions (s, d s ),
A solution (s, d s ) is a strict Pareto optimum iff there does not
0
exist another solution (s 0 , d s ) such that Ū (s 0 ) ≤ Ū (s) and
s
s0
d ≤ d with at least one strict inequality.
⇒ The enumeration problem is weakly N P-hard.
Computing one Pareto optimum by the -constraint approach
is also weakly N P-hard,
Problem 1 : F 2|di = d , unknown d |(d /Ū ) is equivalent to
F 2|di = d , unknown d , Ū = |d
Problem 2 : F 2|di = d , unknown d |(Ū /d ) is equivalent to
F 2|di = |Ū
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
6 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
What are we looking for ?
Pareto optimal solutions (s, d s ),
A solution (s, d s ) is a strict Pareto optimum iff there does not
0
exist another solution (s 0 , d s ) such that Ū (s 0 ) ≤ Ū (s) and
s
s0
d ≤ d with at least one strict inequality.
⇒ The enumeration problem is weakly N P-hard.
Computing one Pareto optimum by the -constraint approach
is also weakly N P-hard,
Problem 1 : F 2|di = d , unknown d |(d /Ū ) is equivalent to
F 2|di = d , unknown d , Ū = |d
Problem 2 : F 2|di = d , unknown d |(Ū /d ) is equivalent to
F 2|di = |Ū
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
6 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
What are we looking for ?
Pareto optimal solutions (s, d s ),
A solution (s, d s ) is a strict Pareto optimum iff there does not
0
exist another solution (s 0 , d s ) such that Ū (s 0 ) ≤ Ū (s) and
s
s0
d ≤ d with at least one strict inequality.
⇒ The enumeration problem is weakly N P-hard.
Computing one Pareto optimum by the -constraint approach
is also weakly N P-hard,
Problem 1 : F 2|di = d , unknown d |(d /Ū ) is equivalent to
F 2|di = d , unknown d , Ū = |d
Problem 2 : F 2|di = d , unknown d |(Ū /d ) is equivalent to
F 2|di = |Ū
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
6 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
What are we looking for ?
Pareto optimal solutions (s, d s ),
A solution (s, d s ) is a strict Pareto optimum iff there does not
0
exist another solution (s 0 , d s ) such that Ū (s 0 ) ≤ Ū (s) and
s
s0
d ≤ d with at least one strict inequality.
⇒ The enumeration problem is weakly N P-hard.
Computing one Pareto optimum by the -constraint approach
is also weakly N P-hard,
Problem 1 : F 2|di = d , unknown d |(d /Ū ) is equivalent to
F 2|di = d , unknown d , Ū = |d
Problem 2 : F 2|di = d , unknown d |(Ū /d ) is equivalent to
F 2|di = |Ū
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
6 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
Why are they selection problems ?
Problem 1 : I give you a number of jobs to be processed ⇒
compute the minimum makespan,
Problem 2 : I give you a time horizon [0; ] ⇒ try to process
as much jobs as possible,
... can be usefull for deriving lower bounds for other
scheduling problems...
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
7 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
Why are they selection problems ?
Problem 1 : I give you a number of jobs to be processed ⇒
compute the minimum makespan,
Problem 2 : I give you a time horizon [0; ] ⇒ try to process
as much jobs as possible,
... can be usefull for deriving lower bounds for other
scheduling problems...
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
7 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
Why are they selection problems ?
Problem 1 : I give you a number of jobs to be processed ⇒
compute the minimum makespan,
Problem 2 : I give you a time horizon [0; ] ⇒ try to process
as much jobs as possible,
... can be usefull for deriving lower bounds for other
scheduling problems...
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
7 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
Why are they selection problems ?
Problem 1 : I give you a number of jobs to be processed ⇒
compute the minimum makespan,
Problem 2 : I give you a time horizon [0; ] ⇒ try to process
as much jobs as possible,
... can be usefull for deriving lower bounds for other
scheduling problems...
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
7 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
An important remark....
Problem 1 (F 2|di = d , unknown d , Ū = |d ) : in case = 0,
we have the F 2||Cmax problem,
Polynomially solvable in O(n log(n)) time by Johnson’s
algorithm (1954),
Given any subset of (n − ) jobs the associated value of d can
be computed by that algorithm.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
8 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
An important remark....
Problem 1 (F 2|di = d , unknown d , Ū = |d ) : in case = 0,
we have the F 2||Cmax problem,
Polynomially solvable in O(n log(n)) time by Johnson’s
algorithm (1954),
Given any subset of (n − ) jobs the associated value of d can
be computed by that algorithm.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
8 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
An important remark....
Problem 1 (F 2|di = d , unknown d , Ū = |d ) : in case = 0,
we have the F 2||Cmax problem,
Polynomially solvable in O(n log(n)) time by Johnson’s
algorithm (1954),
Given any subset of (n − ) jobs the associated value of d can
be computed by that algorithm.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
8 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Introducing the problem F 2|di = d , unknown d |d , Ū
An important remark....
Problem 1 (F 2|di = d , unknown d , Ū = |d ) : in case = 0,
we have the F 2||Cmax problem,
Polynomially solvable in O(n log(n)) time by Johnson’s
algorithm (1954),
Given any subset of (n − ) jobs the associated value of d can
be computed by that algorithm.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
8 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
9 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Literature
Hariri and Potts, 1989 : exact approach for problem F ||Ū .
Jozefowska et al., 1994 : Complexity issues on various shop
problems including problem F 2|di = d |U¯w
Gupta and Hariri, 1997 : special cases and polynomial time
heuristics for problem F 2||Ū .
Della Croce et al., 2000 : exact approach for problem
F 2|di = d |Ū (Problem 2/900 jobs).
T’kindt et al., 2007 : exact approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/3000 jobs).
Della Croce et al., 2014 : exact IP approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/100000 jobs).
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
10 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Literature
Hariri and Potts, 1989 : exact approach for problem F ||Ū .
Jozefowska et al., 1994 : Complexity issues on various shop
problems including problem F 2|di = d |U¯w
Gupta and Hariri, 1997 : special cases and polynomial time
heuristics for problem F 2||Ū .
Della Croce et al., 2000 : exact approach for problem
F 2|di = d |Ū (Problem 2/900 jobs).
T’kindt et al., 2007 : exact approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/3000 jobs).
Della Croce et al., 2014 : exact IP approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/100000 jobs).
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
10 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Literature
Hariri and Potts, 1989 : exact approach for problem F ||Ū .
Jozefowska et al., 1994 : Complexity issues on various shop
problems including problem F 2|di = d |U¯w
Gupta and Hariri, 1997 : special cases and polynomial time
heuristics for problem F 2||Ū .
Della Croce et al., 2000 : exact approach for problem
F 2|di = d |Ū (Problem 2/900 jobs).
T’kindt et al., 2007 : exact approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/3000 jobs).
Della Croce et al., 2014 : exact IP approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/100000 jobs).
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
10 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Literature
Hariri and Potts, 1989 : exact approach for problem F ||Ū .
Jozefowska et al., 1994 : Complexity issues on various shop
problems including problem F 2|di = d |U¯w
Gupta and Hariri, 1997 : special cases and polynomial time
heuristics for problem F 2||Ū .
Della Croce et al., 2000 : exact approach for problem
F 2|di = d |Ū (Problem 2/900 jobs).
T’kindt et al., 2007 : exact approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/3000 jobs).
Della Croce et al., 2014 : exact IP approach for problem
F 2|di = d , unknown d , Ū = |d (Problem 1/100000 jobs).
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
10 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
11 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
ILP formulation of problem F 2|di = d , unknown d |(d /Ū )
Data :
n, number of jobs
ai , 1 ≤ i ≤ n, proc. time on machine 1
of the job in i th position in Johnson’s schedule
bi , 1 ≤ i ≤ n, proc. time on machine 2
of the job in i th position in Johnson’s schedule
, number of late jobs
Variables :
xi , 1 ≤ i ≤ n, is equal to 1 if job i is early, 0 otherwise
d , the common due date
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
12 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
ILP formulation of problem F 2|di = d , unknown d |(d /Ū )
Problem A :
Minimize d
Constraints :
Pn
=n −
Pn
i=1 ai xi +
i=u bi xi ≤ d , ∀u = 1, ..., n
i=1 xi
Pu
xi ∈ {0; 1}, ∀i = 1, ..., n
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
13 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Example for problem A with = 1
Ji
1
2
3
4
ai
25
40
50
65
Min d
x1 + x2 + x3 + x4 = 3
25x1 + 70x1 + 40x2 + 20x3 + 15x4
25x1 + 40x2 + 40x2 + 20x3 + 15x4
25x1 + 40x2 + 50x3 + 20x3 + 15x4
25x1 + 40x2 + 50x3 + 65x4 + 15x4
xi ∈ {0; 1}, ∀i = 1, ..., 4
DellaCroce, Koulamas, T’kindt
bi
70
40
20
15
≤d
≤d
≤d
≤d
constraint c1
constraint cn
Constraints generation for the F 2|di = d, unknown d|d, Ū
14 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Goal : reduce the size of the IP formulation,
How ?... by exploiting simple properties between IP and its
linear relaxation LP,
Notations :
x LP : values of the x variables of the LP-relaxation,
x IP : values of the x variables of the IP,
∗
zLP
: optimal value of the objective function of the
LP-relaxation,
B ∗ : be the associated basis,
∗
zIP
: optimal value of the objective function of the IP,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
15 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
/ B ∗,
Concerning non-basic variables xiLP ∈
We know that :
X
∗
∗
zMIP
= zLP
+
ri xiLP ,
(1)
xiLP ∈B
/ ∗
with ri the reduced cost associated to variable xiLP .
∗
Let UB be an upper bound to zMIP
. Then, we can write :
X
∗
.
(2)
ri xiLP ≤ UB − zLP
xiLP ∈B
/ ∗
∗ then in any
Fixing rule : ∀xiLP ∈
/ B ∗ , if ri > UB − zLP
optimal solution of the IP formulation, xiIP = 0. By reasoning
on the slack variables si associated to the constraints xi ≤ 1,
we can deduce when xiIP = 1.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
16 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
/ B ∗,
Concerning non-basic variables xiLP ∈
We know that :
X
∗
∗
zMIP
= zLP
+
ri xiLP ,
(1)
xiLP ∈B
/ ∗
with ri the reduced cost associated to variable xiLP .
∗
Let UB be an upper bound to zMIP
. Then, we can write :
X
∗
.
(2)
ri xiLP ≤ UB − zLP
xiLP ∈B
/ ∗
∗ then in any
Fixing rule : ∀xiLP ∈
/ B ∗ , if ri > UB − zLP
optimal solution of the IP formulation, xiIP = 0. By reasoning
on the slack variables si associated to the constraints xi ≤ 1,
we can deduce when xiIP = 1.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
16 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
/ B ∗,
Concerning non-basic variables xiLP ∈
We know that :
X
∗
∗
zMIP
= zLP
+
ri xiLP ,
(1)
xiLP ∈B
/ ∗
with ri the reduced cost associated to variable xiLP .
∗
Let UB be an upper bound to zMIP
. Then, we can write :
X
∗
.
(2)
ri xiLP ≤ UB − zLP
xiLP ∈B
/ ∗
∗ then in any
Fixing rule : ∀xiLP ∈
/ B ∗ , if ri > UB − zLP
optimal solution of the IP formulation, xiIP = 0. By reasoning
on the slack variables si associated to the constraints xi ≤ 1,
we can deduce when xiIP = 1.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
16 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
/ B ∗,
Concerning non-basic variables xiLP ∈
We know that :
X
∗
∗
zMIP
= zLP
+
ri xiLP ,
(1)
xiLP ∈B
/ ∗
with ri the reduced cost associated to variable xiLP .
∗
Let UB be an upper bound to zMIP
. Then, we can write :
X
∗
.
(2)
ri xiLP ≤ UB − zLP
xiLP ∈B
/ ∗
∗ then in any
Fixing rule : ∀xiLP ∈
/ B ∗ , if ri > UB − zLP
optimal solution of the IP formulation, xiIP = 0. By reasoning
on the slack variables si associated to the constraints xi ≤ 1,
we can deduce when xiIP = 1.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
16 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Concerning basic variables xiLP ∈ B ∗ ,
All reduced costs are equal to 0,
Pseudo-costs li and ui (Driebeek’s penalties),
Fixing rule :
1
2
∗
∀xiLP ∈ B ∗ , if (li xjtLP ) > (UB − zLP
) then xiIP = 1,
LP
∗
LP
∗
∀xi ∈ B , if (ui (1 − xjt )) > (UB − zLP
) then xiIP = 0.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
17 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Concerning basic variables xiLP ∈ B ∗ ,
All reduced costs are equal to 0,
Pseudo-costs li and ui (Driebeek’s penalties),
Fixing rule :
1
2
∗
∀xiLP ∈ B ∗ , if (li xjtLP ) > (UB − zLP
) then xiIP = 1,
LP
∗
LP
∗
∀xi ∈ B , if (ui (1 − xjt )) > (UB − zLP
) then xiIP = 0.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
17 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Concerning basic variables xiLP ∈ B ∗ ,
All reduced costs are equal to 0,
Pseudo-costs li and ui (Driebeek’s penalties),
Fixing rule :
1
2
∗
∀xiLP ∈ B ∗ , if (li xjtLP ) > (UB − zLP
) then xiIP = 1,
LP
∗
LP
∗
∀xi ∈ B , if (ui (1 − xjt )) > (UB − zLP
) then xiIP = 0.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
17 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Concerning basic variables xiLP ∈ B ∗ ,
All reduced costs are equal to 0,
Pseudo-costs li and ui (Driebeek’s penalties),
Fixing rule :
1
2
∗
∀xiLP ∈ B ∗ , if (li xjtLP ) > (UB − zLP
) then xiIP = 1,
LP
∗
LP
∗
∀xi ∈ B , if (ui (1 − xjt )) > (UB − zLP
) then xiIP = 0.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
17 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Fixing rules are very simple... and known for a long time
(since 1966),
Fixing non-basic variable is yet implemented in commercial
solvers (like CPLEX),
What is the interest of doing preprocessing ?
.... exploit the knowledge of a good UB dedicated to our
problem,
.... adequately make use of cuts to strengthen the LP
relaxation,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
18 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Fixing rules are very simple... and known for a long time
(since 1966),
Fixing non-basic variable is yet implemented in commercial
solvers (like CPLEX),
What is the interest of doing preprocessing ?
.... exploit the knowledge of a good UB dedicated to our
problem,
.... adequately make use of cuts to strengthen the LP
relaxation,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
18 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Fixing rules are very simple... and known for a long time
(since 1966),
Fixing non-basic variable is yet implemented in commercial
solvers (like CPLEX),
What is the interest of doing preprocessing ?
.... exploit the knowledge of a good UB dedicated to our
problem,
.... adequately make use of cuts to strengthen the LP
relaxation,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
18 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Fixing rules are very simple... and known for a long time
(since 1966),
Fixing non-basic variable is yet implemented in commercial
solvers (like CPLEX),
What is the interest of doing preprocessing ?
.... exploit the knowledge of a good UB dedicated to our
problem,
.... adequately make use of cuts to strengthen the LP
relaxation,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
18 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : preprocessing
Fixing rules are very simple... and known for a long time
(since 1966),
Fixing non-basic variable is yet implemented in commercial
solvers (like CPLEX),
What is the interest of doing preprocessing ?
.... exploit the knowledge of a good UB dedicated to our
problem,
.... adequately make use of cuts to strengthen the LP
relaxation,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
18 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : cuts
Logical cuts (∀i = 1...n) :
2a1 x1 +...+2ai−1 xi−1 +(ai +bi )xi +(ai+1 +bi+1 )xi+1 +bi+2 xi+2 +...+bn xn ≤ 2d −τ (3)
where τ = mini−+1≤h<i,i+≥l>i+1 {ai+1 , bi , |ai+1 − bi |, 2bh , 2al }.
We also generated 1-cuts (problem independent),
These cuts have been added to the LP relaxation and then
preprocessing is applied,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
19 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : cuts
Logical cuts (∀i = 1...n) :
2a1 x1 +...+2ai−1 xi−1 +(ai +bi )xi +(ai+1 +bi+1 )xi+1 +bi+2 xi+2 +...+bn xn ≤ 2d −τ (3)
where τ = mini−+1≤h<i,i+≥l>i+1 {ai+1 , bi , |ai+1 − bi |, 2bh , 2al }.
We also generated 1-cuts (problem independent),
These cuts have been added to the LP relaxation and then
preprocessing is applied,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
19 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : cuts
Logical cuts (∀i = 1...n) :
2a1 x1 +...+2ai−1 xi−1 +(ai +bi )xi +(ai+1 +bi+1 )xi+1 +bi+2 xi+2 +...+bn xn ≤ 2d −τ (3)
where τ = mini−+1≤h<i,i+≥l>i+1 {ai+1 , bi , |ai+1 − bi |, 2bh , 2al }.
We also generated 1-cuts (problem independent),
These cuts have been added to the LP relaxation and then
preprocessing is applied,
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
19 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : experimentation (preprocessing)
n
100
200
300
400
500
1000
1500
2000
2500
3000
Gavg
2.06
1.11
0.60
0.53
0.38
0.16
0.08
0.07
0.05
0.02
with G =
DellaCroce, Koulamas, T’kindt
LBcut /UB
Davg
Dmax
37.85
80.00
30.69
66.66
30.46
50.00
26.14
50.00
25.98
50.00
29.82
50.00
35.97
50.00
29.16
50.00
28.33
33.33
34.44
50.00
1000 UB−LB
and
D
Opt
Gmax
5.37
2.76
2.05
1.49
1.34
0.40
0.27
0.15
0.14
0.10
tavg
0.03
0.06
0.23
0.26
0.43
3.10
9.23
23.26
43.83
96.10
=
tmax
Fix
1
83.90
1
80.00
1
78.87
1
79.46
1
76.40
4
88.41
10
88.82
32
89.84
48
85.97
115
86.68
100 Opt−LB
UB−LB .
Constraints generation for the F 2|di = d, unknown d|d, Ū
20 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Let us go back to 2007 : experimentation (exact solution)
n
100
200
300
400
500
1000
1500
2000
2500
3000
3500
tavg
0.13
0.43
1.23
2.10
3.50
21.20
65.70
136.53
IP (CPLEX 8.0)
tmax
ndavg
1
44.80
1
64.50
2
114.63
5
63.86
7
84.73
52
84.56
143
117.40
303
79.80
Out of time
Out of time
Out of time
ndmax
121
280
386
326
592
428
630
537
tavg
0.03
0.23
0.40
0.80
1.53
9.36
21.46
49.36
91.50
156.36
BaB
tmax
ndavg
1
40.06
1
85.23
1
97.43
2
117.40
4
134.53
28
171.33
55
136.30
210
153.13
177
208.73
341
179.93
Out of time
ndmax
181
231
329
331
383
921
481
1383
987
1089
time limit = 180s.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
21 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
From 2007 to 2014 : experimentation (exact solution)
n
1000
2000
3000
4000
tavg
4.70
20.23
54.06
IP (CPLEX 12.2)
tmax
navg
10
128.26
45
285.03
151 439.60
Out of Memory
nmax
512
663
978
tavg
1.90
11.13
42.46
BaB
tmax
navg
nmax
4
112.53 347
17
136.86 379
189 403.80 4097
Out of Memory
Why Out of Memory for 4000 jobs ?
⇒ Approximately 800 binary variables (not so much)...
⇒ ...exactly 4001 constraints (not so much)...
⇒ ... but 16, 000, 000 non-zero coefficients.
Even the LP is not solvable by the solver.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
22 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
From 2007 to 2014 : experimentation (exact solution)
n
1000
2000
3000
4000
tavg
4.70
20.23
54.06
IP (CPLEX 12.2)
tmax
navg
10
128.26
45
285.03
151 439.60
Out of Memory
nmax
512
663
978
tavg
1.90
11.13
42.46
BaB
tmax
navg
nmax
4
112.53 347
17
136.86 379
189 403.80 4097
Out of Memory
Why Out of Memory for 4000 jobs ?
⇒ Approximately 800 binary variables (not so much)...
⇒ ...exactly 4001 constraints (not so much)...
⇒ ... but 16, 000, 000 non-zero coefficients.
Even the LP is not solvable by the solver.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
22 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
From 2007 to 2014 : experimentation (exact solution)
n
1000
2000
3000
4000
tavg
4.70
20.23
54.06
IP (CPLEX 12.2)
tmax
navg
10
128.26
45
285.03
151 439.60
Out of Memory
nmax
512
663
978
tavg
1.90
11.13
42.46
BaB
tmax
navg
nmax
4
112.53 347
17
136.86 379
189 403.80 4097
Out of Memory
Why Out of Memory for 4000 jobs ?
⇒ Approximately 800 binary variables (not so much)...
⇒ ...exactly 4001 constraints (not so much)...
⇒ ... but 16, 000, 000 non-zero coefficients.
Even the LP is not solvable by the solver.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
22 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
23 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Relaxing all but two constraints in the ILP formulation of
problem F 2|di = d , unknown d |(d /Ū )
Problem Arel
Minimize d
Constraints
:
Pn
x
=
n −
i
i=1
P1
Pn
i=1 ai xi +
i=1 bi xi ≤ d ,
Pn
Pn
i=1 ai xi +
i=n bi xi ≤ d ,
constraint c1
constraint cn
xi ∈ {0; 1}, ∀i = 1, ..., n
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
24 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Comparing A and Arel
Property :
OPTA
OPTArel
≤ 2 and this ratio is asymptotically tight.
The idea of our CG approach is to start with Arel and
iteratively add missing constraints from A,
Can work if few of such constraints are added since solving
Arel is much faster than solving A,
No more preprocessing on the variables / Preprocessing on the
constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
25 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Comparing A and Arel
Property :
OPTA
OPTArel
≤ 2 and this ratio is asymptotically tight.
The idea of our CG approach is to start with Arel and
iteratively add missing constraints from A,
Can work if few of such constraints are added since solving
Arel is much faster than solving A,
No more preprocessing on the variables / Preprocessing on the
constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
25 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Comparing A and Arel
Property :
OPTA
OPTArel
≤ 2 and this ratio is asymptotically tight.
The idea of our CG approach is to start with Arel and
iteratively add missing constraints from A,
Can work if few of such constraints are added since solving
Arel is much faster than solving A,
No more preprocessing on the variables / Preprocessing on the
constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
25 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Comparing A and Arel
Property :
OPTA
OPTArel
≤ 2 and this ratio is asymptotically tight.
The idea of our CG approach is to start with Arel and
iteratively add missing constraints from A,
Can work if few of such constraints are added since solving
Arel is much faster than solving A,
No more preprocessing on the variables / Preprocessing on the
constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
25 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Constraint Generation Approach : pseudo-code
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
End=False
while !End do
Solve the IP of Arel : x̄ is its solution with value OPTArel
Compute the value OPTA of the IP of A for solution x̄
if (OPTA = OPTArel ) then
End=True
else
Let cj be the most violated constraint in A
Add cj to Arel
end if
end while
return x̄ as the optimal solution of A
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
26 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
27 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Computational tests
ai ’s and bi ’s drawn at random using an uniform distribution
between 10 and 100.
The value can take (n + 1) values. We tested = d n2 e,
= n − 10 and = n − 5.
For each problem size, 30 instances are generated.
All tests were performed on a PC Computer Intel i5 with 4
cores of 2.6GHz and 8Gb of RAM. Whenever we solved an IP
model we used the CPLEX 12.2 mathematical solver.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
28 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Computational
tests for the F 2|dj = d , unknown d
P
|(d / Uj ) problem
Comparing BaB (the exact algorithm of T’kindt et al, 2007),
IP (the ILP model solved by CPLEX 12.2) and IPCG (the
constraint generation approach) for = n/2.
n
1000
2000
3000
4000
DellaCroce, Koulamas, T’kindt
IP
BaB
tavg
tmax
tavg
tmax
4.70
10
1.90
4
20.23
45
11.13
17
54.06
151
42.46
189
Out of Memory Out of Memory
Solving instances for = n2
IPCG
tavg tmax
0.03
1
0.06
1
0.10
1
0.10
1
Constraints generation for the F 2|di = d, unknown d|d, Ū
29 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Computational tests
n
10000
20000
30000
40000
50000
60000
70000
80000
90000
100000
DellaCroce, Koulamas, T’kindt
IPCG
tavg
tmax
navg
nmax
0.46
1
36.06
174
0.76
2
33.96
228
1.36
5
35.66
331
3.03
8
75.26
330
6.13
16
181.86 600
5.96
12
141.03 450
6.26
10
160.20 527
8.26
16
161.80 442
9.33
17
144.66 400
11.00
27
198.46 934
Solving large instances for =
itavg
1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
1.0
itmax
1
1
1
1
1
1
1
1
1
1
n
2
Constraints generation for the F 2|di = d, unknown d|d, Ū
30 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Computational tests
n
10000
20000
30000
40000
50000
60000
70000
80000
90000
100000
DellaCroce, Koulamas, T’kindt
tavg
0.40
1.46
3.80
8.73
16.83
36.10
69.06
107.66
140.23
208.33
Solving
tmax
1
4
8
16
26
62
105
140
264
311
large
IPCG
navg
nmax
itavg
117.30
696
14.76
372.63
1478
29.90
678.76
2119
47.30
1320.23 5011
68.80
1872.10 6793
87.46
3639.26 22673 116.70
4513.16 26700 138.50
5398.03 30913 167.63
6657.63 15460 194.66
9512.46 15310 219.80
instances for = n − 10
Constraints generation for the F 2|di = d, unknown d|d, Ū
itmax
27
43
70
89
115
149
176
194
227
253
31 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Computational tests
n
10000
20000
30000
40000
50000
60000
70000
80000
90000
100000
DellaCroce, Koulamas, T’kindt
tavg
tmax
0.43
1
1.23
2
3.40
5
8.10
11
16.36
23
32.16
44
54.73
73
86.20
112
133.43 190
196.86 254
Solving large
IPCG
navg
nmax
itavg
141.13
606
23.66
383.13
842
41.43
599.10
1150
63.26
1108.20 2065
85.60
1468.93 2842 110.66
2021.63 3455 137.06
2797.33 4621 160.63
4168.40 7088 183.33
6139.33 10678 206.76
9663.96 16279 230.90
instances for = n − 5
Constraints generation for the F 2|di = d, unknown d|d, Ū
itmax
38
55
84
101
130
156
182
203
232
258
32 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Computational tests
n
tavg
500
32.30
1000 62.86
1500 152.50
Enumeration of the
DellaCroce, Koulamas, T’kindt
IPCG
tmax
navg
nmax
itavg
itmax
50
8475.16 10557 600.70
789
115 22413.10 40688 1131.03 1697
269 33811.70 39205 1647.36 1976
strict Pareto optima for the flow shop problem
Constraints generation for the F 2|di = d, unknown d|d, Ū
33 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
1
Introduction
2
Literature
3
ILP formulation, cuts and preprocessing
4
Constraint Generation Approach
5
Computational tests
6
Conclusions
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
34 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Conclusions and extensions
A constraint generation approach applied to the IP
formulation of the problem has been proposed.
The approach is capable of solving problems with up to
100000 jobs.
The approach has been extended to job shop and open shop
with similar results.
The presence of jobs weights does not affect the strength of
the solution approach.
Possible extensions of this approach may occur in all
scheduling problems that can be expressed by means of
multidimensional
knapsack problems, as, for instance, the
P
1|| wj Uj problem with or without deadline constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
35 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Conclusions and extensions
A constraint generation approach applied to the IP
formulation of the problem has been proposed.
The approach is capable of solving problems with up to
100000 jobs.
The approach has been extended to job shop and open shop
with similar results.
The presence of jobs weights does not affect the strength of
the solution approach.
Possible extensions of this approach may occur in all
scheduling problems that can be expressed by means of
multidimensional
knapsack problems, as, for instance, the
P
1|| wj Uj problem with or without deadline constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
35 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Conclusions and extensions
A constraint generation approach applied to the IP
formulation of the problem has been proposed.
The approach is capable of solving problems with up to
100000 jobs.
The approach has been extended to job shop and open shop
with similar results.
The presence of jobs weights does not affect the strength of
the solution approach.
Possible extensions of this approach may occur in all
scheduling problems that can be expressed by means of
multidimensional
knapsack problems, as, for instance, the
P
1|| wj Uj problem with or without deadline constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
35 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Conclusions and extensions
A constraint generation approach applied to the IP
formulation of the problem has been proposed.
The approach is capable of solving problems with up to
100000 jobs.
The approach has been extended to job shop and open shop
with similar results.
The presence of jobs weights does not affect the strength of
the solution approach.
Possible extensions of this approach may occur in all
scheduling problems that can be expressed by means of
multidimensional
knapsack problems, as, for instance, the
P
1|| wj Uj problem with or without deadline constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
35 / 35
en programmation mathématique:
application à un problème
d’ordonnancement avec sélection
Conclusions and extensions
A constraint generation approach applied to the IP
formulation of the problem has been proposed.
The approach is capable of solving problems with up to
100000 jobs.
The approach has been extended to job shop and open shop
with similar results.
The presence of jobs weights does not affect the strength of
the solution approach.
Possible extensions of this approach may occur in all
scheduling problems that can be expressed by means of
multidimensional
knapsack problems, as, for instance, the
P
1|| wj Uj problem with or without deadline constraints.
DellaCroce, Koulamas, T’kindt
Constraints generation for the F 2|di = d, unknown d|d, Ū
35 / 35
Download