single machine models branch and bound parallel machines
play

Single Machine Models, Branch and Bound Parallel Machines, PERT - PowerPoint PPT Presentation

DM204 , 2010 SCHEDULING, TIMETABLING AND ROUTING Lecture 18 Single Machine Models, Branch and Bound Parallel Machines, PERT Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Single Machine


  1. DM204 , 2010 SCHEDULING, TIMETABLING AND ROUTING Lecture 18 Single Machine Models, Branch and Bound Parallel Machines, PERT Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark

  2. Single Machine Models Outline Parallel Machine Models 1. Single Machine Models Branch and Bound Mathematical Programming Models 2. Parallel Machine Models CPM/PERT Marco Chiarandini .::. 2

  3. Single Machine Models Organization Parallel Machine Models Who is taking the oral exam? Watch out the schedule. Exercise sessions from now mainly about help for the project. Resume and Outlook Watch out the list of questions Marco Chiarandini .::. 3

  4. Single Machine Models Course Overview Parallel Machine Models ✔ Problem Introduction Scheduling ✔ Scheduling classification Single Machine ✔ Scheduling complexity Parallel Machine and Flow ✔ RCPSP Shop Models Job Shop ✔ General Methods Resource Constrained Project Scheduling Model ✔ Integer Programming ✔ Constraint Programming Timetabling ✔ Heuristics ✔ Dynamic Programming Reservations and Education Branch and Bound University Timetabling Crew Scheduling Public Transports Vechicle Routing Capacited Models Time Windows models Rich Models Marco Chiarandini .::. 4

  5. Single Machine Models Outline Parallel Machine Models 1. Single Machine Models Branch and Bound Mathematical Programming Models 2. Parallel Machine Models CPM/PERT Marco Chiarandini .::. 5

  6. Single Machine Models Outlook Parallel Machine Models 1 | | � w j C j : weighted shortest processing time first is optimal 1 | | � j U j : Moore’s algorithm 1 | prec | L max : Lawler’s algorithm, backward dynamic programming in O ( n 2 ) [Lawler, 1973] 1 | | � h j ( C j ) : dynamic programming in O (2 n ) 1 | | � w j T j : local search and dynasearch 1 | r j , ( prec ) | L max : branch and bound 1 | s jk | C max : in the special case, Gilmore and Gomory algorithm optimal in O ( n 2 ) 1 | | � w j T j : column generation approaches Multicriteria Marco Chiarandini .::. 6

  7. Single Machine Models Outline Parallel Machine Models 1. Single Machine Models Branch and Bound Mathematical Programming Models 2. Parallel Machine Models CPM/PERT Marco Chiarandini .::. 7

  8. Single Machine Models 1 | r j | L max Parallel Machine Models [Maximum lateness with release dates] Strongly NP-hard (reduction from 3-partition) might have optimal schedule which is not non-delay Marco Chiarandini .::. 8

  9. Single Machine Models 1 | r j | L max Parallel Machine Models [Maximum lateness with release dates] Strongly NP-hard (reduction from 3-partition) might have optimal schedule which is not non-delay Branch and bound algorithm (valid also for 1 | r j , prec | L max ) Branching : schedule from the beginning (level k , n ! / ( k − 1)! nodes) elimination criterion: do not consider job j k if: r j > min l ∈ J { max ( t, r l ) + p l } J jobs to schedule, t current time Lower bounding : relaxation to preemptive case for which EDD is optimal Marco Chiarandini .::. 8

  10. Single Machine Models Parallel Machine Models Branch and Bound S root of the branching tree 1 LIST := {S}; 2 U:=value of some heuristic solution; 3 current_best := heuristic solution; 4 while LIST � = ∅ 5 Choose a branching node k from LIST; 6 Remove k from LIST; 7 Generate children child( i ), i = 1 , . . . , n k , and calculate corresponding lower bounds LB i ; 8 for i := 1 to n k 9 if LB i < U then 10 if child( i ) consists of a single solution then 11 U := LB i ; 12 current_best:=solution corresponding to child( i ) 13 else add child( i ) to LIST Marco Chiarandini .::. 9

  11. Single Machine Models Branch and Bound Parallel Machine Models Branch and bound vs backtracking = a state space tree is used to solve a problem. � = branch and bound does not limit us to any particular way of traversing the tree (backtracking is depth-first) � = branch and bound is used only for optimization problems. Branch and bound vs A ∗ = In A ∗ the admissible heuristic mimics bounding � = In A ∗ there is no branching. It is a search algorithm. � = A ∗ is best first Marco Chiarandini .::. 10

  12. Single Machine Models Branch and Bound Parallel Machine Models [Jens Clausen (1999). Branch and Bound Algorithms - Principles and Examples.] Eager Strategy: 1. select a node 2. branch 3. for each subproblem compute bounds and compare with incumbent solution 4. discard or store nodes together with their bounds (Bounds are calculated as soon as nodes are available) Lazy Strategy: 1. select a node 2. compute bound 3. branch 4. store the new nodes together with the bound of the father node (often used when selection criterion for next node is max depth) Marco Chiarandini .::. 11

  13. Single Machine Models Parallel Machine Models Components 1. Initial feasible solution (heuristic) – might be crucial! 2. Bounding function 3. Strategy for selecting 4. Branching 5. Fathoming (dominance test) Marco Chiarandini .::. 12

  14. Single Machine Models Parallel Machine Models Bounding � min s ∈ P f ( s ) � min s ∈ P g ( s ) ≤ ≤ min s ∈ S f ( s ) min s ∈ S g ( s ) P : candidate solutions; S ⊆ P feasible solutions relaxation: min s ∈ P f ( s ) solve (to optimality) in P but with g Marco Chiarandini .::. 13

  15. Single Machine Models Parallel Machine Models Bounding � min s ∈ P f ( s ) � min s ∈ P g ( s ) ≤ ≤ min s ∈ S f ( s ) min s ∈ S g ( s ) P : candidate solutions; S ⊆ P feasible solutions relaxation: min s ∈ P f ( s ) solve (to optimality) in P but with g Lagrangian relaxation combines the two Marco Chiarandini .::. 13

  16. Single Machine Models Parallel Machine Models Bounding � min s ∈ P f ( s ) � min s ∈ P g ( s ) ≤ ≤ min s ∈ S f ( s ) min s ∈ S g ( s ) P : candidate solutions; S ⊆ P feasible solutions relaxation: min s ∈ P f ( s ) solve (to optimality) in P but with g Lagrangian relaxation combines the two should be polytime and strong (trade off) Marco Chiarandini .::. 13

  17. Single Machine Models Parallel Machine Models Strategy for selecting next subproblem best first (combined with eager strategy but also with lazy) breadth first (memory problems) depth first works on recursive updates (hence good for memory) but might compute a large part of the tree which is far from optimal Marco Chiarandini .::. 14

  18. Single Machine Models Parallel Machine Models Strategy for selecting next subproblem best first (combined with eager strategy but also with lazy) breadth first (memory problems) depth first works on recursive updates (hence good for memory) but might compute a large part of the tree which is far from optimal (enhanced by alternating search in lowest and largest bounds combined with branching on the node with the largest difference in bound between the children) (it seems to perform best) Marco Chiarandini .::. 14

  19. Single Machine Models Parallel Machine Models Branching dichotomic polytomic Marco Chiarandini .::. 15

  20. Single Machine Models Parallel Machine Models Branching dichotomic polytomic Overall guidelines finding good initial solutions is important if initial solution is close to optimum then the selection strategy makes little difference Parallel B&B: distributed control or a combination are better than centralized control parallelization might be used also to compute bounds if few nodes alive parallelization with static work load distribution is appealing with large search trees Marco Chiarandini .::. 15

  21. � w j T j Single Machine Models � 1 | | � Parallel Machine Models Branching: work backward in time elimination criterion: if p j ≤ p k and d j ≤ d k and w j ≥ w k then there is an optimal schedule with j before k Marco Chiarandini .::. 16

  22. � w j T j Single Machine Models � 1 | | � Parallel Machine Models Branching: work backward in time elimination criterion: if p j ≤ p k and d j ≤ d k and w j ≥ w k then there is an optimal schedule with j before k Lower Bounding: relaxation to preemptive case transportation problem n C max � � min c jt x jt j =1 t =1 C max � s.t. x jt = p j , ∀ j = 1 , . . . , n t =1 n � x jt ≤ 1 , ∀ t = 1 , . . . , C max j =1 x jt ≥ 0 ∀ j = 1 , . . . , n ; t = 1 , . . . , C max Marco Chiarandini .::. 16

  23. Single Machine Models Parallel Machine Models [Pan and Shi, 2007] ’s lower bounding through time indexed Stronger but computationally more expensive n T − 1 � � min c jt y jt j =1 t =1 s.t. T − p j � c jt ≤ h j ( t + p j ) t =1 T − p j � ∀ j = 1 , . . . , n y jt = 1 , t =1 n t � � y jt ≤ 1 , ∀ t = 1 , . . . , C max j =1 s = t − p j +1 y jt ≥ 0 ∀ j = 1 , . . . , n ; t = 1 , . . . , C max Marco Chiarandini .::. 17

  24. Single Machine Models Complexity resume Parallel Machine Models Single machine, single criterion problems 1 | | γ : P C max P T max P L max P h max � C j P � w j C j P � U P � w j U j weakly NP -hard � T weakly NP -hard � w j T j strongly NP -hard � h j ( C j ) strongly NP -hard Marco Chiarandini .::. 18

  25. Single Machine Models Outline Parallel Machine Models 1. Single Machine Models Branch and Bound Mathematical Programming Models 2. Parallel Machine Models CPM/PERT Marco Chiarandini .::. 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend