Presentation is loading. Please wait.

Presentation is loading. Please wait.

Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26.

Similar presentations


Presentation on theme: "Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26."— Presentation transcript:

1

2 Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

3 Problem definition a set of identical parallel machines M={M 1,..., M m } a set of jobs J={J 1,..., J n } described by: processing time – p j release time – r j deadline – D j due date – d j revenue – q j weight/cost– w j goal: selecting and scheduling jobs after release times before deadlines in order to maximize revenue Q j = q j – w j max{0, C j – d j } = q j – w j max{0, T j } for rejected jobs Q j = 0 2/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

4 M1M1 M2M2 J1J1 Problem definition make-to-order manufacturing 3/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue” r1r1 q1q1 J2J2 +q 2 J3J3 +(q 3 -w 3 T 3 ) J4J4 J5J5 +(q 4 -w 4 T 4 ) d1d1 D1D1 r5r5 D5D5 d5d5 r4r4 d4d4 D4D4 r2r2 d2d2 D2D2 r3r3 d3d3 D3D3 ΣQj=ΣQj= J5J5

5 Related Works & Complexity Weighted tardiness problems 1||Σw j T j is unary NP-hard (Lawler 1977; Lenstra, Rinnoy Kan, Brucker 1977) 1||ΣT j is binary NP-hard (Du, Leung 1990) Scheduling with deadlines and due dates e.g. Hariri, Potts 1994 e.g. Kethley, Allidae 2002 Job selection and scheduling problem with lateness penalty is NP-hard (Slotnik, Morton 1996; Ghosh 1997) with tardiness penalty is NP-hard (Slotnik, Morton 2007) with setup times (Bilgintürk, Oğuz, Salman 2007) Parallel machine problems 4/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

6 MILP Formulation 5/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

7 Solution Algorithms solution algorithm has to decide about: jobs acceptance jobs assignment to machines jobs scheduling on machines branch and bound algorithm list scheduling heuristic algorithm simulated annealing metaheuristic algorithm 6/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

8 List Scheduling Heuristic assigning to a free machine an available job whose release time r j is exceeded which can be completed before deadline D j which gives some revenue if completed after due date d j selected according to priority dispatching rule jobs which cannot be feasibly processed or which give no revenue are rejected 7/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

9 Priority Dispatching Rules static (at time zero) 8/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue” dynamic (at time t)

10 Branch and Bound Algorithm assigning a job to m+1 machines analyzing all possible partitions of jobs to machines machine M m+1 collects rejected jobs sequencing jobs on machines analyzing all feasible permutations of subsets of jobs on machines upper bound – current revenue increased by the total revenue from non-assigned jobs initial lower bound – the best heuristic solution of list scheduling algorithm with different rules 9/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

11 Simulated Annealing Algorithm generate initial solution S as the best solution of list scheduling algorithm with different rules set initial temperature T 0 while termination conditions not met do pick at random neighbor solution S’ improve solution S’ with embedded SA if Q(S’)>Q(S) then replace S with S’ else accept with probability exp(-ΔQ/T) if necessary apply diversification by fluctuating solution randomly and reheating the system decrease temperature geometrically after the given number of iterations 10/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

12 Solution representation & Move definition solution is represented as an assignment of jobs to m+1 machines (M m+1 collects rejected jobs) scheduling jobs on machines by an exact approach shifting – selecting 2 machines and shifting one job from the first to the second one interchanging – selecting 2 machines and interchanging 2 jobs between them probability of selecting dummy machine M m+1 influences the process of job acceptance/rejection 11/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

13 Computational Experiments algorithms implemented in Java (JDK 1.6 MAC OS X) under MAC OS X 10.5 (Leopard) randomly generated problem instances of various sizes and difficulty computational experiments on Intel Core 2 Duo 2.4GHz, RAM 2GB 667 MHz DDR2 12/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

14 Test Data large instances: m=5, 10, 15, 20 n / m =2, 5, 10, 15 (n  300) small instances: m=2, 3, 4 n / m =3, 4, 5 (n  20) 5 instances for pairs of parameters (m, n / m ) 4 variants of each instance (with various difficulty) r j  [0,  p j ],  =1, 3 d j  [r j +p j,  (r j +p j )], D j  [d j,  d j ],  =1.25, 1.5 w j  [5, 10]; p j  [10, 100], q j  [10, 100] 320 large instances, 72 small instances 13/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

15 List Scheduling Algorithm comparison of the best rule to optimal solutions 14/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

16 List Scheduling Algorithm 15/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

17 List Scheduling Algorithm 16/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

18 Tuning Process 32 settings of control parameters: number of iterations: 1000 initial temperature: the total revenue move: shifting, interchanging No of diversifications: 3, 5 No of moves with constant temperature: 5, 10 cooling factor: 0.8, 0.9 job rejection factor: 1 / (m+1), 2 / (m+1) 3 termination conditions: 75, n, 3n iterations without improvement initial temperature: maximum difference in criterion value for tested instances 17/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

19 Simulated Annealing Algorithm comparison to optimal solutions 18/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

20 Branch and Bound Algorithm computational time [sec.] 19/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

21 Simulated Annealing Algorithm No of iterations to the best solution [%] 20/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

22 Simulated Annealing Algorithm comparison of SA to the best priority dispatching rule 21/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

23 Simulated Annealing Algorithm improvement of initial solutions 22/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

24 Random Solutions comparison of random rule to optimal solutions 23/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

25 Simulated Annealing Algorithm comparison to random solutions 24/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

26 Simulated Annealing Algorithm No of iterations 25/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue” % of iterations to best solution

27 Conclusions & Future Research improving branch and bound algorithm – better bounds improving simulated annealing algorithm – move definitions using problem specific knowledge improving list scheduling algorithm – looking for efficient priority dispatching rules order acceptance and scheduling in the real-world problem concrete delivery problem on-line approach 26/26 M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

28


Download ppt "Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26."

Similar presentations


Ads by Google