190 likes | 345 Views
A Graphical Approach for Solving Single Machine Scheduling Problems Approximately. Institute of Control Sciences of the Russian Academy of Sciences. Evgeny R. Gafarov Alexandre Dolgui Alexander A. Lazarev Frank Werner. Ecole Nationale Superieure des Mines.
E N D
A Graphical Approach for Solving Single Machine Scheduling Problems Approximately Institute of Control Sciencesof the Russian Academy of Sciences Evgeny R. Gafarov Alexandre Dolgui Alexander A. Lazarev Frank Werner Ecole Nationale Superieure des Mines Institute of Control Sciencesof the Russian Academy of Sciences Otto-von-Guericke Universität Magdeburg
Outline ofthe Talk 1. Dynamic Programming and Graphical Algorithms 2. An FPTAS based on the Graphical Algorithm 3. An Overview of Graphical Algorithms for Single Machine Problems 4. Graphical Algorithms for an Investment Problem
Dynamic Programming Algorithms for the Problem 1|dj=d|∑wjTj Single machine njobsj = 1,2,…,n pjprocessing time dj=dcommon due date wjweight Tardiness of job j in schedule π :Tj(π) = max{0,Cj (π)-d} Goal: Find a schedule π* that minimizes ∑wjTj
Dynamic Programming Algorithms for the Problem 1|dj=d|∑wjTj Lemma 1: Thereexists an optimal schedule π= (G,x,H), where all jobsfromsetG are on-time andprocessed in non-increasing order of the values pj/wj ; all jobsfromsetHare tardy and processed in non-decreasing order of the valuespj/wj ; the straddling job x starts before time d and is completed no earlier than time d.
First Dynamic Programming Algorithm for the Problem 1|dj=d|∑wjTj Let x=1 be the straddling job. In step l, l = 1,2,…, n for each state t=[0, ∑pj] or [0,d] we choose one of two positions for job l: l πl-1 (t+pl) t πl -1(t) l t The running time is O(nd) for each straddling job x=1,2,…,n
GraphicalAlgorithm Dynamic Programming (Bellman 1954) Idea of the graphical algorithm: Combine several states into a new state
GraphicalAlgorithm Computations in the dynamic programming algorithm Computations in the graphical algorithm
GraphicalAlgorithm fj+1 = min{Ф1,Ф2}
GraphicalAlgorithm In the table, 0<bl1<bl2<… since function F(t) is monotonic with t being the starting time. Function Fl(t) can be defined for all t from (-∞,+∞). Let UB be an upper bound on the optimal objective function value. Then we have to save only the columns with blk<UB. The running time of the Graphical Algorithm is O(n min{UB,d}) for each straddling job x.
FPTAS based on the GraphicalAlgorithm In the table, 0<bl1<bl2<… since function F(t) is monotonic with t being the starting time. The running time of the Graphical Algorithm is O(n min{UB,d}) for each straddling job x. To reduce the running time, we can round (approximate) the values blk<UBtoget a polynomialnumberof different valuesblk Let . Round blkup or down to the nearest multiple of
FPTAS based on the GraphicalAlgorithm The running time of the FPTAS is
Investment Problem n investment projects А– investment budget (for all A from the interval [A’,A’’]) fj(t) -- profit function of project j The goal is to define an amount tjin [0,A] (integer) for each project to maximize the total profit. ∑ tj<= A tjis integer
Graphical Algorithms for the Investment Problem Classical dynamic programming algorithm: O(nA2)running time. The best known dynamic programming algorithm: O(∑kjA)running time. In the Graphical Algorithm functions fj(t) and the Bellman functions (valuefunction) Fj(t) are saved in a tabular form: Running time of the 1st version of the graphical algorithm:O(nkmaxA log(kmaxA)) Running time of the 2nd version of the graphical algorithm: O(∑kjA) Running time of the FPTAS based on the graphical algorithm: O(n(loglog n)∑k/ε)
Thanks for your attention Institute of Control Sciencesof the Russian Academy of Sciences Evgeny R. Gafarov Alexandre Dolgui Alexander A. Lazarev Frank Werner Ecole Nationale Superieure des Mines Institute of Control Sciencesof the Russian Academy of Sciences Otto-von-Guericke Universität Magdeburg