110 likes | 182 Views
General Purpose Procedures Applied to Scheduling. Contents Constructive approach 1. Dispatching Rules Local search 1. Simulated Annealing 2. Tabu-Search 3. Genetic Algorithms. Literature
E N D
General Purpose ProceduresApplied to Scheduling Contents Constructive approach 1. Dispatching Rules Local search 1. Simulated Annealing 2. Tabu-Search 3. Genetic Algorithms
Literature 1. Operations Scheduling with Applications in Manufacturing and Services, Michael Pinedo and Xiuli Chao, McGraw Hill, 2000, Chapter 3.1 and 3.2. or Scheduling, Theory, Algorithms, and Systems, Second Addition, Michael Pinedo, Prentice Hall, 2002, Chapter 14.1 2. Modern Heuristic Techniques for Combinatorial Problems, (Ed) C.Reeves 1995, McGraw-Hill. Chapter 2.2.1.
Constructive procedures: 1. Dispatching Rules 2. Composite Dispatching Rules 3. Dynamic Programming 4. Integer Programming 5. Branch and Bound 6. Beam Search Local Search 1. Simulated Annealing 2. Tabu-Search 3. Genetic Algorithms Heuristic technique is a method which seeks good (i.e. near-optimalsolutions) at a reasonable cost without being able to guaranteeoptimality.
Dispatching Rules • A dispatching rule prioritises all the jobs that are waiting forprocessing on a machine. • Classification • Static: not time-dependent • Dynamic: time dependent • Local: uses information about the queue where the job is waiting or machine where the job is queued • Global: uses information about other machines (e.g. processing time of the jobs on the next machine on its route, or the current queue length
Local Search Step. 1. Initialisation k=0 Select a starting solution S0S Record the current best-known solution by setting Sbest = S0 and best_cost = F(Sbest) Step 2. Choice and Update Choose a Solution Sk+1N(Sk) If the choice criteria cannot be satisfied by any member of N(Sk), then the algorithm stops if F(Sk+1) < best_cost then Sbest = Sk+1 and best_cost = F(Sk+1) Step 3. Termination If termination conditions apply then the algorithm stops else k = k+1 and go to Step 2.
Global Optimum: better than all other solutions • Local Optimum: better than all solutions in a certain neighbourhood
1. Schedule representation • 2. Neighbourhood design • 3. Search process • 4. Acceptance-rejection criterion • 1. Schedule representation • Nonpreemptive single machine schedule • permutation of n jobs • Nonpreemptive job shop schedule • m consecutive strings, each representing a permutation ofn operations on a machine
2. Neighbourhood design • Single machine: • adjacent pairwise interchange • take an arbitrary job in the schedule and insert it in another positions • Job shop: • interchange a pair of adjacent operations on the critical path of the schedule • one-step look-back interchange
current schedule (h, l) (h, k) machine h (i, j) (i, k) machine i • schedule after interchange of (i, j) and (i, k) (h, l) (h, k) machine h (i, k) (i, j) machine i • schedule after interchange of (h, l) and (h, k) (h, k) (h, l) machine h (i, k) (i, j) machine i
3. Search process • select schedules randomly • select first schedules that appear promisingfor example, swap jobs that affect the objective the most • 4. Acceptance-rejection criterion • probabilistic: simulated annealing • deterministic: tabu-search