OR 2004 Tilburg, 1/9/20041 Simulation of a job shop scheduling strategy: Do advanced scheduling algorithms pay off when processing times are disturbed?

Slides:



Advertisements
Similar presentations
Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
Advertisements

Solving a job-shop scheduling problem by an adaptive algorithm based on learning Yuri N. Sotskov 1, Omid Gholami 2, Frank Werner 3 1. United Institute.
1 “Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation In Multi-processor Real-Time Systems” Dakai Zhu, Rami Melhem, and Bruce Childers.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
Michele Samorani Manuel Laguna. PROBLEM : In meta-heuristic methods that are based on neighborhood search, whenever a local optimum is encountered, the.
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
Operations Scheduling
ISE480 Sequencing and Scheduling Izmir University of Economics ISE Fall Semestre.
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
DOM 102: Principles of Operations Management Operations Scheduling
Scheduling Chapter 19.
THE SINGLE MACHINE EARLY/TARDY PROBLEM* PENG SI OW & THOMAS E. MORTON IE Paper Presentation A. İrfan Mahmutoğulları *Ow, P. S., & Morton, T. E. (1989).
Characterizing the Distribution of Low- Makespan Schedules in the Job Shop Scheduling Problem Matthew J. Streeter Stephen F. Smith Carnegie Mellon University.
Chapter 2: Model of scheduling problem Components of any model: Decision variables –What we can change to optimize the system, i.e., model output Parameters.
Genetic Algorithms for multiple resource constraints Production Scheduling with multiple levels of product structure By : Pupong Pongcharoen (Ph.D. Research.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
1 An Asymptotically Optimal Algorithm for the Max k-Armed Bandit Problem Matthew Streeter & Stephen Smith Carnegie Mellon University NESCAI, April
21st European Conference on Operational Research Algorithms for flexible flow shop problems with unrelated parallel machines, setup times and dual criteria.
MODELING AND ANALYSIS OF MANUFACTURING SYSTEMS Session 6 SCHEDULING E
presented by Zümbül Bulut
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
High Performance Computing 1 Parallelization Strategies and Load Balancing Some material borrowed from lectures of J. Demmel, UC Berkeley.
Accept or Reject: Can we get the work done in time? Marjan van den Akker Joint work with Han Hoogeveen.
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Section 14.4: Local search (Simulated annealing and tabu search)
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
1 Contents college 3 en 4 Book: Appendix A.1, A.3, A.4, §3.4, §3.5, §4.1, §4.2, §4.4, §4.6 (not: §3.6 - §3.8, §4.2 - §4.3) Extra literature on resource.
Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
Lecture 8: Dispatch Rules
Introduction to LEKIN Gareth Beddoe
Job-shop Scheduling n jobs m machines No recirculation – Jobs do not revisit the same machine (i, j) is referred to as an operation in which job j is processed.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Scheduling. Alternating Sequence of CPU And I/O Bursts.
Operational Research & ManagementOperations Scheduling Introduction Operations Scheduling 1.Setting up the Scheduling Problem 2.Single Machine Problems.
Scheduling Process and Production Management.
CPU Scheduling CSCI 444/544 Operating Systems Fall 2008.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Advanced Operating Systems - Spring 2009 Lecture 14 – February 25, 2009 Dan C. Marinescu Office: HEC 439 B. Office.
Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling.
Outline Schedule and scheduling Mathematical models
Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26.
Heuristic Methods for the Single- Machine Problem Chapter 4 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha R2.
Earliness and Tardiness Penalties Chapter 5 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha R1.
Session 26 University of Southern California ISE514 Batch Processing and Batch Sequencing November 19, 2015 Geza P. Bottlik Page 1 Outline Questions? Project.
Chapter 16 & 9 Scheduling Work & Employees. Scheduling Outline What needs to be scheduled? –doctor’s office, restaurant, mfg. plant, hospital –employees.
Activity Scheduling and Control
A stochastic scheduling algorithm for precedence constrained tasks on Grid Future Generation Computer Systems (2011) Xiaoyong Tang, Kenli Li, Guiping Liao,
Product A Product B Product C A1A1 A2A2 A3A3 B1B1 B2B2 B3B3 B4B4 C1C1 C3C3 C4C4 Turret lathes Vertical mills Center lathes Drills From “Fundamentals of.
CPU Scheduling Operating Systems CS 550. Last Time Deadlock Detection and Recovery Methods to handle deadlock – Ignore it! – Detect and Recover – Avoidance.
16 Scheduling (focus on sequencing; FCFS, SPT, EDD pages , and Johnson’s rule pages ) Homework; 6, 7, 11.
1 Job Shop Scheduling. 2 Job shop environment: m machines, n jobs objective function Each job follows a predetermined route Routes are not necessarily.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
Name : Mamatha J M Seminar guide: Mr. Kemparaju. GRID COMPUTING.
Optimization of Time-Partitions for Mixed-Criticality Real-Time Distributed Embedded Systems Domițian Tămaș-Selicean and Paul Pop Technical University.
Scheduling with Constraint Programming
Some Topics in OR.
Lecture 8: Dispatch Rules
Optimizing depot locations based on a public transportation timetable
The basics of scheduling
Modeling Scheduling Problems
Dept. of MMME, University of Newcastle upon Tyne
Dept. of MMME, University of Newcastle upon Tyne
The use of Neural Networks to schedule flow-shop with dynamic job arrival ‘A Multi-Neural Network Learning for lot Sizing and Sequencing on a Flow-Shop’
Topic 15 Job Shop Scheduling.
IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
Dept. of MMME, University of Newcastle upon Tyne
Stochastic Simulations
Presentation transcript:

OR 2004 Tilburg, 1/9/20041 Simulation of a job shop scheduling strategy: Do advanced scheduling algorithms pay off when processing times are disturbed? Marjan van den Akker joint work with: Koen de Bontridder, Rob van Geel, Han Hoogeveen

OR 2004 Tilburg, 1/9/20042 Outline Job shop scheduling Tabu search Dispatching rules Rescheduling Simulation experiments Total weighted completion time Total weighted tardiness

OR 2004 Tilburg, 1/9/20043 Job shop scheduling n jobs J 1, J 2,…,J n m machines, can execute one operation at a time Job: sequence of operations o v Each operation on a given machine d j is due date of job j C j completion time of last operation of job j Tardiness T j = max(C j -d j,0) Objectives: –Minimize Σ w j C j –Minimize Σ w j T j

OR 2004 Tilburg, 1/9/20044 Tabu search Algorithm by De Bontridder (2001) Scheduling in two steps: –Determine execution order on each of the machine –Determine optimal starting times Neighborhood: swap the machine order of two operations

OR 2004 Tilburg, 1/9/20045 Tabu search Example: Disjunctive graph: OvOv MvMv M1M1 M2M2 M2M2 M1M1 M1M1 5 Job 1 Job p3p3 p4p4 4 1 p1p1 p1p1 l(2) l(1) s p2p2 -d1-d1 Capacity: w 1 max cost flow = total weighted tardiness r1r1

OR 2004 Tilburg, 1/9/20046 Tabu search Max cost flow helps to find improving swaps. Is it worth the effort with disturbed processing times?

OR 2004 Tilburg, 1/9/20047 Dispatching rules First-come-first-served Minimum slack time: –q v remaining processing time of job j from o v on –If machine finishes an operation at time s, select from the operations in the queue the one with minimal d j -(s+q v )

OR 2004 Tilburg, 1/9/20048 Rescheduling After fixed number of operations e.g. after 50 or 20 operations Based on deviation from expected starting time. Reschedule when: |s realized -s planned | > λ C max

OR 2004 Tilburg, 1/9/20049 Discrete-event simulation Processing times U[0.95 p j,1.05 p j ] U[0.8 p j,1.2 p j ] Exp(p j ) 4-Erlang(p j /4)

OR 2004 Tilburg, 1/9/ Discrete-event simulation Events: –operation becomes available for processing –operation is finished Scheduling algorithms use expected processing times p j Test: –20 jobs, 10 machines, 200 operations –2 instances, per instance 3 runs of tabu search –for each scenario 50 simulation runs compute tabu search value after each run: ‘real optimum’

OR 2004 Tilburg, 1/9/ Computational results  w j C j results(average values) pjpj schedsim/ tabu(start) sim/ tabu(after) U[0.95 p j,1.05 P j ]tabu U[0.95 p j,1.05 P j ]MST U[0.95 p j,1.05 P j ]FCFS U[0.8 p j,1.2 P j ]tabu U[0.8 p j,1.2 P j ]MST U[0.8 p j,1.2 P j ]FCFS exptabu expMST expFCFS Erlangtabu ErlangMST ErlangFCFS

OR 2004 Tilburg, 1/9/ Computational results  w j C j (2) results(average values) pjpj Re-schedsim/ tabu(start) sim/ tabu(after) U[0.8 p j,1.2 P j ]tabu U[0.8 p j,1.2 P j ]MST U[0.8 p j,1.2 P j ]FCFS U[0.8 p j,1.2 P j ]Start dev 10% U[0.8 p j,1.2 P j ]after 50 ops U[0.8 p j,1.2 P j ]after 20 ops

OR 2004 Tilburg, 1/9/ Computational results  w j C j (3) results(average values) pjpj schedsim/ tabu(start) sim/ tabu(after) exptabu expMST expFCFS expStart dev 10% expafter 50 ops expafter 20 ops Erlangtabu ErlangMST ErlangFCFS ErlangStart dev 10% Erlangafter 50 ops Erlangafter 20 ops

OR 2004 Tilburg, 1/9/ Concluding remarks  w j C j Tabu search is better for smaller variance (including Erlang) Dispatching is better for larger variance Rescheduling improves, but may take large computation time

OR 2004 Tilburg, 1/9/ Computational results  w j T j Instances with optimal  w j T j close to zero are very sensitive to disturbances (sim/tabu(after)) does not make sense. Tests: –generate instances with optimal  w j T j close to zero –multiply deadlines by factor  = 0.98,0.96…,0.5

OR 2004 Tilburg, 1/9/  w j T j : uniform [0.8p j,1.2p j ]

OR 2004 Tilburg, 1/9/  w j T j : Erlang

OR 2004 Tilburg, 1/9/  w j T j : exponential

OR 2004 Tilburg, 1/9/ Concluding remarks  w j T j Uniform close to the optimum, larger variance further from the optimum For Uniform and Erlang tabu search better than dispatching For exponential MST or a lot of rescheduling Rescheduling better after a fixed number of operations