La présentation est en train de télécharger. S'il vous plaît, attendez

# Multicriteria Scheduling: Theory and Models

## Présentation au sujet: "Multicriteria Scheduling: Theory and Models"— Transcription de la présentation:

Multicriteria Scheduling: Theory and Models
Vincent T’KINDT Laboratoire d’Informatique (EA 2101) Dépt. Informatique - Polytech’Tours Université François-Rabelais de Tours – France

Structure Theory of Multicriteria Scheduling, Optimality definition, How to solve a multicriteria scheduling problem, Application to a bicriteria scheduling problem, Considerations about the enumeration of optimal solutions. Some models and algorithms, Scheduling with intefering job sets, Scheduling with rejection cost. Solution of bicriteria single machine problem by mathematical programming Vincent T’kindt

What is Multicriteria Scheduling?
Multicriteria Optimization: How to optimize several conflicting criteria? Scheduling: How to determine the « optimal » allocation of tasks (jobs) to resources (machines) over time? Multicriteria Optimization: How to optimize several conflicting criteria? Scheduling: How to determine the « optimal » allocation of tasks (jobs) to resources (machines) over time? Multicriteria Scheduling = Scheduling + Multicriteria Optimization. Vincent T’kindt

Theory of Multicriteria Scheduling
What about multicriteria optimization? K criteria Zi to minimize, The notion of optimality is defined by means of Pareto optimality, We distinguish between: Strict Pareto optimality, Weak Pareto optimality. Z2 Z1 A solution x is a strict Pareto optimum iff there does not exist another solution y such that Zi(y) ≤Zi(x), i=1,…,K, with at least one strict inequality. A solution x is a weak Pareto optimum iff there does not exist another solution y such that Zi(y) < Zi(x), i=1,…,K. E WE Vincent T’kindt

Theory of Multicriteria Scheduling
Multicriteria scheduling (straigth extension), Determine one or more Pareto optimal (preferrably strict) allocations of tasks (jobs) to resources (machines) over time. General fundamental considerations, How to calculate a strict Pareto optimum ? How to calculate the “best” strict Pareto optimum ?  This depends on Decision Maker’s preferences. Vincent T’kindt

Theory of Multicriteria Scheduling
How can be expressed decision maker’s preferences? By means of weights (wi for criterion Zi), By means of goals (fex: Zi  [LB;UB]), By means of bounds (Zi  ei), By means of an absolute order. Numerous studies can be found in the literature, Convex combination of criteria (Geoffrion’s theorem), e-constraint approach, Lexicographic approach, Parametric approach, Vincent T’kindt

Theory of Multicriteria Scheduling
How to calculate the “best” strict Pareto optimum ? Vincent T’kindt

Theory of Multicriteria Scheduling
Convex combination of criteria, Min Si aiZi(x) st x  S ai  [0;1], Si ai = 1 Strong convex hypothesis (Geoffrion’s theorem). Discrete case: supported vs non supported Pareto optima. e-constraint approach, Min Z1(x) st x  S Zi  ei,  i=2,…,K Weak Pareto optima, Often used in a posteriori algorithms. Lexicographic approach: Z1  Z2  …  ZK Vincent T’kindt

Theory of Multicriteria Scheduling
Illustration on an example problem: 1|di|Lmax, C A single machine is available, n jobs have to be processed, pi : processing time, di : due date, Minimize Lmax=maxi(Ci-di) and C=Si Ci, p1 C1 C2 1 C3 2 3 1 2 3 Machine time d1 d2 d3 Vincent T’kindt

Theory of Multicriteria Scheduling
Illustration on an example problem: 1|di|Lmax, C Design of an a posteriori algorithm1 A strict Pareto optimum is calculated by means of the e-contraint approach Known results : The 1||C problem is solved to optimality by Shortest Processing Times first rule (SPT), The 1|di|Lmax problem is solved to optimality by Earliest Due Date first rule (EDD), 1 L. van Wassenhove and L.F. Gelders (1980). Solving a bicriterion scheduling problem, EJOR, 4:42-48. Vincent T’kindt

Theory of Multicriteria Scheduling
To calculate a Pareto optimum, solve the 1|di|e(C/Lmax) problem: Lmax  e maxi(Ci-di)  e Ci-di  e,  i=1,…,n Ci  Di =di + e,  i=1,…,n Vincent T’kindt

Theory of Multicriteria Scheduling
Decision Aid module, Solve the 1|di|Lmax problem => Lmax* value. Solve the 1||C problem => s0, C(s0), Lmax(s0). E={s0}, e=Lmax(s0)-1. While e > Lmax* Do Solve the 1|Di=di+ e | C problem => s, E=E//{s}, e=Lmax(s)-1. End While. Return E; Lmax Lmax(s0) e s e Lmax* e C(s0) C Vincent T’kindt

Theory of Multicriteria Scheduling
Scheduling module (how to solve the 1|Di|C problem), 1 2 3 2 1 3 Machine 7 time D1 D2 D3 Vincent T’kindt

Theory of Multicriteria Scheduling
Candidate list based algorithm, This a posteriori algorithm is optimal, The scheduling module works in O(nlog(n)), There are at most n(n+1)/2 non dominated criteria vectors, This enumeration problem is easy, A polynomial time algorithm for calculating a strict Pareto optimum, A polynomial number of non dominated criteria vectors. Vincent T’kindt

Theory of Multicriteria Scheduling
The enumeration of Pareto optima is a challenging issue, How hard is it to perform the enumeration?  Complexity theory. How conflicting are the criteria?  A priori evaluation,  Algorithmic evaluation,  A posteriori evaluation (experimental evaluation). Vincent T’kindt

Theory of Multicriteria Scheduling
From a theoretical viewpoint… complexity theory, Originally dedicated to decision problems, Scheduling problems are often optimisation problems, Vincent T’kindt

Theory of Multicriteria Scheduling
But now what happen for multicriteria optimisation? We minimise K criteria Zi, Enumeration of strict Pareto optima, Counting problem C Input data, or instance, denoted by I (set DO). Question: how many optimal solutions are there regarding the objective of problem O? Enumeration problem E Input data, or instance, denoted by I (set DO). Goal: find the set SI the optimal solutions regarding the objective of problem O. Vincent T’kindt

Theory of Multicriteria Scheduling
Problems which can be solved in polynomial time in the input size and number of solutions Spatial complexity vs Temporal complexity, V. T’kindt, K. Bouibede-Hocine, C. Esswein (2007). Counting and Enumeration Complexity with application to Multicriteria Scheduling, Annals of Operations Research, 153: Vincent T’kindt

Theory of Multicriteria Scheduling
There are some links between classes, If E  P then O  PO and C  FP, If O  NPOC and C  #PC then E  ENPC. .. in practice… …if O  NPOC then E  ENPC Vincent T’kindt

Theory of Multicriteria Scheduling
A priori conflicting measure: analysis on the potential number of strict Pareto optima, Cone dominance, Consider the following bicriteria / bivariable MIP problem: Min Si ci1xi Min Si ci2 xi st Ax  b x  N2 x2 c1 c2 c1 and c2 are the generators of cone C x1 Vincent T’kindt

Theory of Multicriteria Scheduling
x2 x1 Vincent T’kindt

Theory of Multicriteria Scheduling
Consider the following problem: 1||Si uiCi, Si viCi The criteria can be formulated as: Si uiCi = Si Sk ui pk xki and Si viCi = Si Sk vi pk xki with xki = 1 if Jk precedes Ji Vincent T’kindt

Theory of Multicriteria Scheduling
The generators are: c1 = [u1p1,…,u1pn,u2p1,…,u2pn,…,unpn] and c2 = [v1p1,…,v1pn,v2p1,…,v2pn,…,vnpn] The cone C is defined by: C={y  Rn2 / c1.y≥ 0 and c2.y ≥ 0} If C is tight, then the number of Pareto optima is possibly high. c1 C c2 Vincent T’kindt

Theory of Multicriteria Scheduling
The maximum angle between c1 and c2 is obtained for : ui=0, i=1,…,l, and ui≥0, i=l+1,…,n and vi ≥0, i=1,…,l, and vi=0, i=l+1,…,n as the weights are non negative. This can be helpful to identify/generate instances with a potentially high number of strict Pareto optima. Vincent T’kindt

Theory of Multicriteria Scheduling
Drawback: the number of strict Pareto optima also depends on the spreading of solutions (constraints), Drawback: not easy to generalize to max criteria. Generally, the number of strict Pareto optima is evaluated by means of an algorithmic analysis, See for instance the 1|di|Lmax, wCsum problem, But we have a bound on the number of non dominated criteria vectors. Vincent T’kindt

Structure Theory of Multicriteria Scheduling, Optimality definition, How to solve a multicriteria scheduling problem, Application to a bicriteria scheduling problem, Considerations about the enumeration of optimal solutions. Some models and algorithms, Scheduling with interfering job sets, Scheduling with rejection cost. Solution of bicriteria single machine problem by mathematical programming Vincent T’kindt

Some models and algorithms
A classification based on model features and not simply on machine configurations, Scheduling with controllable data, Scheduling with setup times, Just-in-Time scheduling, Robust and flexible scheduling, Scheduling with interfering job sets, Scheduling with rejection costs, Scheduling with completion times, Scheduling with only due date based criteria, …. Vincent T’kindt

Scheduling with interfering job sets
2 sets of jobs to schedule, Set A: nA, evaluated by criterion ZA, Set B: nB, evaluated by criterion ZB, Potentially large number of Pareto optima (remember the cone dominance approach). Vincent T’kindt

Scheduling with interfering job sets
Consider the 1||Fl(Cmax, wCsum) problem, Fl(Cmax, wCsum) = CAmax + awCBsum wi‘=awi p1‘=p1+p2+p3 / w1’=1 1’ 1 2 3 4 5 6 wCBsum CAmax 4 1’ 5 6 Machine time WSPT on the fictitious A job and B jobs with weights wi’ Vincent T’kindt

Scheduling with interfering job sets
Problem Reference Note 1|di|Fl(Cmax,Lmax) Baker and Smith (2003) Yuan et al. (2005) Polynomial in O(nB log(nB)). 1|di|Fl(Cmax,wCsum) 1|di|Fl(Lmax,wCsum) NP-hard. Polynomial for wi=1. 1||e(fAmax/fBmax) Agnetis et al. (2004) O(n2A+nB log(nB)). At most nAnB Pareto. 1||e(wCsumA/fBmax) NP-hard. Polynomial for wi=1 (at most nAnB Pareto). 1|di|e(UA/fBmax) O(nA log(nA)+nB log(nB)). 1|di|e(UA/UB) O(n2A nB+n2B nA). 1|di|SjwUj Cheng and Juan (2006) m job sets. Strongly NP-hard. 1|di|e(wCsumA/UB) NP-hard. 1||e(CsumA/CsumB) NP-hard (at most 2n Pareto). Vincent T’kindt

Scheduling with interfering job sets
Multiple machines problems, Problem Reference Note J|di|ZA,ZB Agnetis et al. (2000) ZA and ZB are quasi-convexe functions of the due dates. Enumerate the Pareto. F2||e(CmaxA/CmaxB) Agnetis et al. (2004) NP-hard. O2||e(CmaxA/CmaxB) Vincent T’kindt

Scheduling with rejection costs
A set of n jobs to be scheduled, A job can be scheduled or rejected, Minimize a « classic » criterion Z, Minimize the rejection cost RC=Si rci,  Often Fl(Z,RC)=Z+RC is minimized. Vincent T’kindt

Scheduling with rejection cost
Consider the 1||Fl(Csum, RC) problem, Fl(Csum, RC) = Csum + RC i pi rci 1 2 4 3 5 Job i: pi: processing time, rci: rejection cost. 1 2 3 4 1 2 3 4 Machine time Fl=23 Compute the variations in the objective function Di: Di =[ -2;-3;-10;-7] SPT to get the initial sequencing Vincent T’kindt

Scheduling with rejection cost
Consider the 1||Fl(Csum, RC) problem, Fl(Csum, RC) = Csum + RC i pi rci 1 2 4 3 5 3 1 2 4 Machine time Fl=13 Compute the variations in the objective function Di: Di =[ -1;-1;--;-3] Vincent T’kindt

Scheduling with rejection cost
Consider the 1||Fl(Csum, RC) problem, Fl(Csum, RC) = Csum + RC i pi rci 1 2 4 3 5 3 4 1 2 Machine time Fl=10 Compute the variations in the objective function Di: Di =[ 0;1;--;--] Vincent T’kindt

Scheduling with rejection costs
Single machine problems, Problem Reference Note 1||Fl(wCsum,RC) Engels et al. (1998) Weakly NP-hard. Dyn. Prog and approx. scheme. Polynomial if wi=w or pi=p. 1|ri,prec|Fl(wCsum,RC) Approximation scheme. 1|di|Fl(Lmax,RC) Sengupta (1999) Weakly NP-hard. Dyn. Prog and approx. scheme. 1|ri,di,pi contr|Fl(Si (Ri-wiTi-cixi),RC) Yang and Geunes (2007) Ri: profit, xi: compression amount, ci: compression cost. NP-hard. Heuristic. Vincent T’kindt

Scheduling with rejection costs
Multiple machines problems, Problem Reference Note P||Fl(Cmax, RC) Bartal et al. (2000) Approximation algo for the off-line case and competitive algo for the on-line case. P|pmtn|Fl(Cmax, RC) Seiden (2001) Competitive algorithm for the on-line case. P,Q|pmtn|Fl(Cmax,RC) Hoogeveen et al. (2000) Weakly NP-hard. Approx. scheme. R|pmtn|Fl(Cmax,RC) Strongly NP-hard. Approx. scheme. O|pmtn|Fl(Cmax,RC) Vincent T’kindt

Structure Theory of Multicriteria Scheduling, Optimality definition, How to solve a multicriteria scheduling problem, Application to a bicriteria scheduling problem, Considerations about the enumeration of optimal solutions. Some models and algorithms, Scheduling with interfering job sets, Scheduling with rejection cost. Solution of bicriteria single machine problem by mathematical programming Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Nous considérons le problème d’ordonnancement suivant, Le problème est noté 1|di | Lmax, Uw, n travaux, pi : durée de traitement, di : date de fin souhaitée, wi : un poids associé au retard. On souhaite calculer un optimum de Pareto pour les critères Lmax et Uw. Lmax=maxi(Ci-di), le plus grand retard algébrique, Uw =Si wiUi, avec Ui=1 si Ci>di et 0 sinon, nombre pondéré de travaux en retard. NP-difficile (quel sens ?) Baptiste, Della Croce, Grosso, T’kindt (2007). Sequencing a single machine with due dates and deadlines: an ILP-Based Approach to Solve Very Large Instances, à paraître dans Journal of Scheduling. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Utilisation de l’approche e-contrainte, Minimiser Uw sc Lmax  e (A) La contrainte (A) est équivalente à : Ci  Di=di+ e, i=1,…,n Pour calculer un optimum de Pareto on résout le problème noté 1|di , Di| Uw Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Qu’avons-nous fait pour résoudre le problème 1|di , Di| Uw ? Partant d’un modèle mathématique… … proposition d’une heuristique (borne inférieure) …mise en place de techniques de réduction de problème Tous ces éléments ont été intégrés dans une PSE. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Modélisation linéaire en variables bivalentes, xi = 1 si Ji est en avance, Bt = {i/Dit} et At = {i/di>t}, Formulation indexée sur le temps (|T|2n), T={di,Di}i Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Calcule d’une borne inférieure (heuristique), Propriété : Soit pipj, dj di, Di Dj, wj wi, avec au moins une inégalité stricte. On a (i >> j) : 1. Si i est en retard, j l’est aussi, 2. Si j est en avance, i l’est aussi. Algorithme basé sur le LP et la notion de « core problem », Mettre dans le « core problem » les variables fractionnaires, Mettre les variables entières non dominées, Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Résoudre le « core problem » à l’aide du MIP (5% des var), La solution du MIP donne la LB, Recherche locale en O(n3) par swap de travaux en avance et en retard. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Preprocessing : traitement visant à réduire l’espace de recherche (parfois en réduisant la taille du problème), Différents types de preprocessing, Contraintes : - ajout de contraintes redondantes, - élimination de contraintes redondantes, - … Variables : - réduction des bornes, - fixation de variables, - … On s’est intéressé à des techniques de preprocessing sur les variables. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Une technique générale de fixation de variables, Basée sur la résolution de la relaxation linéaire, Soit LB une borne inférieure et UBlp la borne relachée, On sait que pour toute solution x du problème mixte : cx=UBlp+ SjHB rj xj avec HB l’ensemble des variables hors base dans une solution donnant UBlp. avec rj le coût réduit (négatif ou nul) associé à xj UBlp+ SjHB rj xj ≤ LB SjHB rj xj ≤ LB-UBlp Vincent T’kindt

Bicriteria scheduling and Math. Prog.
On en déduit la condition de fixation suivante : Si rj≥ LB-UBlp alors xj=0 De même on peut fixer des variables à 1 en introduisant des variables d’écart sj : xj+sj=1 … et en tenant le même raisonnement si sj est fixé à 0 alors xj doit être fixé à 1. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
On utilise également une technique de fixation basée sur les pseudocosts uj et lj Soit xj une variable réelle de base du LP et on pose : lj : une binf sur la diminution unitaire du coût si xj=0 uj : une binf sur la diminution unitaire du coût si xj=1 Si (1-xj)*uj ≤ UBlp-LB alors xj=0 Si xj*lj ≤ UBlp-LB alors xj=1 Pour calculer lj et uj on peut utiliser les pénalités de Dantzig1 1 Dantzig (1963). Linear Programming and Extensions, Princeton University Press, Princeton. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Algorithme de preprocessing, Résoudre le LP, Fixer des variables par les coûts réduits, Fixer des variables par les pseudocosts, Si l’étape 3 a permis de fixer des variables, aller en (1).  Permet de fixer environ 95% des variables. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Algorithme de la PSE proposée : Preprocessing, Branchement sur une variable binaire, Choix de la variable : La variable avec le max des pseudo-costs. Profondeur d’abord, UB: LP + procédure de réduction, Si à un nœud il y a moins de coefficients non nuls on résout le sous problème directement par le MIP. Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Quelques résultats, Cplex seul résout jusqu’à n=4000 en moins de 290s en moyenne, G=100*(UB-Opt)/Opt G=100*(LB-Opt)/Opt Vincent T’kindt

Bicriteria scheduling and Math. Prog.
Pas de résultat sur l’énumération des optima de Pareto, Approche testée sur un autre problème d’ordonnancement1, Le problème F2|di=d, d unknown | d, U, Le calcul d’un optimum de Pareto se fait jusqu’à n=3000 (Cplex limité à n=2000 et la litérature à n=900), On fixe environ 85% des variables. L’énumération des (n+1) optima de Pareto strict se fait jusqu’à n=500 en moins de 800s. 1 T’kindt, Della Croce, Bouquard (2007). Enumeration of Pareto Optima for a Flowshop Scheduling Problem with Two Criteria, Informs JOC, 19(1):64-72. Vincent T’kindt

Now what’s going on? Investigation of structural properties of the Pareto set for scheduling problems, How to quickly calculate a Pareto optimum starting with a known one? Generalized dominance conditions, Measuring the conflictness of criteria: from cone dominance to the complexity of counting problems, Complexity of exponential algorithms, Vincent T’kindt

Now what’s going on? Investigation of emerging models,
Scheduling with interfering job sets, Scheduling with rejection costs, Scheduling for new orders, Combined models: scheduling with rejection costs and new orders, … Vincent T’kindt

Now what’s going on? Industrial applications,
Are often multicriteria by nature, Practical application of theoretical models. Vincent T’kindt

You want to know more? V. T’kindt, JC. Billaut (2006). Multicriteria Scheduling: Theory, Models and Algorithms. Springer. Vincent T’kindt

Présentations similaires