1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections 14.1-14.3: Dispatching rules and filtered beam search.

Slides:



Advertisements
Similar presentations
IGLS/1 © P. Pongcharoen Using Genetic Algorithms for Scheduling the Production of Capital Goods P. Pongcharoen, C. Hicks, P.M. Braiden, A.V. Metcalfe,
Advertisements

Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
Branch and Bound Example. Initial lower bound Jrpd Use 1 machine preemptive schedule as lower bound Job 2 has a lateness of 5,
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
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)
Vehicle Routing & Scheduling: Part 1
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).
1 IOE/MFG 543 Chapter 5: Parallel machine models (Sections )
1 IOE/MFG 543 Chapter 3: Single machine models (Sections 3.1 and 3.2)
1 IOE/MFG 543 Chapter 11: Stochastic single machine models with release dates.
1 IOE/MFG 543 Chapter 5: Parallel machine models (Sections )
1 Tardiness Models Contents 1. Moor’s algorithm which gives an optimal schedule with the minimum number of tardy jobs 1 ||  U j 2. An algorithm which.
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.
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
Task Assignment and Transaction Clustering Heuristics.
Vehicle Routing & Scheduling
1 IOE/MFG 543 Chapter 6: Flow shops Sections 6.1 and 6.2 (skip section 6.3)
1 Set # 3 Dr. LEE Heung Wing Joseph Phone: Office : HJ639.
Ant Colony Optimization Optimisation Methods. Overview.
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
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 3: Single machine models (Sections )
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.
1 IOE/MFG 543 Chapter 10: Single machine stochastic models Sections 10.1 and 10.4 You may skip Sections
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
Operational Research & ManagementOperations Scheduling Flow Shop Scheduling 1.Flexible Flow Shop 2.Flexible Assembly Systems (unpaced) 3.Paced Assembly.
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.
Vilalta&Eick: Informed Search Informed Search and Exploration Search Strategies Heuristic Functions Local Search Algorithms Vilalta&Eick: Informed Search.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
Operational Research & ManagementOperations Scheduling Introduction Operations Scheduling 1.Setting up the Scheduling Problem 2.Single Machine Problems.
Exact methods for ALB ALB problem can be considered as a shortest path problem The complete graph need not be developed since one can stop as soon as in.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Outline Introduction Minimizing the makespan Minimizing total flowtime
Parallel Machine Scheduling
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.
Session 26 University of Southern California ISE514 Batch Processing and Batch Sequencing November 19, 2015 Geza P. Bottlik Page 1 Outline Questions? Project.
Production SchedulingP.C. Chang, IEM, YZU. 1 How to schedule ?? How to find 1. an efficient Heuristic? 2. the optimal solution?
Branch-and-Bound & Beam-Search. Branch and bound Enumeration in a search tree each node is a partial solution, i.e. a part of the solution space... root.
1 Exercise 1. (a) Find all optimal sequences for the scheduling problem 1 ||  w j C j with the following jobs. (b) Determine the effect of a change in.
Branch and Bound Searching Strategies
Raunak Singh (ras2192) IEOR 4405: Production Scheduling 28 th April 2009.
Tommy Messelis * Stefaan Haspeslagh Burak Bilgin Patrick De Causmaecker Greet Vanden Berghe *
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.
Flow Shop Scheduling.
Algorithm Design Methods
Lecture 8: Dispatch Rules
General Purpose Procedures Applied to Scheduling
Multi-Objective Optimization
Dept. of MMME, University of Newcastle upon Tyne
Dept. of MMME, University of Newcastle upon Tyne
Compute convex lower bounding function and optimize it instead!
Planning and Scheduling in Manufacturing and Services
Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Topic 15 Job Shop Scheduling.
Branch and Bound Example
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
Algorithm Design Methods
Search.
Search.
Flexible Assembly Systems
Algorithm Design Methods
Presentation transcript:

1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search

2 Motivation So far we have (mostly) discussed algorithms for obtaining an optimal solution for a specific problem So far we have (mostly) discussed algorithms for obtaining an optimal solution for a specific problem Many scheduling problems are difficult to solve in practice Many scheduling problems are difficult to solve in practice Important to have general methods that can give good schedules in a relatively short amount of time Important to have general methods that can give good schedules in a relatively short amount of time

3 Overview Dispatching (or priority) rules Dispatching (or priority) rules –E.g., WSPT Composite dispatching rules Composite dispatching rules –Try to intelligently combine two or more dispatching rules Filtered beam search Filtered beam search –Heuristic implementation of branch and bound Local search Local search –Try to find a better schedule in a neighborhood of the current best schedule –Methods: Simulated annealing, tabu search, genetic algorithms

4 Section 14.1 Dispatching rules There are several ways to classify the dispatching rules There are several ways to classify the dispatching rules Static vs. Dynamic Static vs. Dynamic –WSPT is … –SRPT is … Global vs. Local Global vs. Local –LAPT and Johnson’s rules are … –WSPT is …

5 Applicability of elementary dispatching rules Dispatching rules can work well when there is only a single objective Dispatching rules can work well when there is only a single objective –See Table 14.1 page 337 for a list of rules and in what environments they tend to work well (sometimes optimal) More sophisticated rules can often do better More sophisticated rules can often do better –Minimizing a combination of objectives –The objective can change with time and with the jobs waiting to be processed

6 Section 14.2 Composite dispatching rules (CDR) A CDR is a ranking expression that combines two or more elementary dispatching rules A CDR is a ranking expression that combines two or more elementary dispatching rules An elementary rule is a function of attributes of jobs and/or machines An elementary rule is a function of attributes of jobs and/or machines Each elementary rule has a scaling parameter Each elementary rule has a scaling parameter –Depends on the attributes –E.g., compute statistics for the set of jobs (are the due dates tight?)

7 Composite rule for 1||  w j T j Recall: Problem 1||  w j T j is NP-hard Recall: Problem 1||  w j T j is NP-hard –We developed a pseudopolynomial DP algorithm for 1||  T j What rules could produce good schedules? What rules could produce good schedules? –If all due dates (and release dates) are zero? –If due dates are loose and spread out?

8 Apparant Tardiness Cost (ATC) rule for 1||  w j T j Combines WSPT and minimum slack (MS) Combines WSPT and minimum slack (MS) –Slack of job j is max(d j -p j -t, 0) Ranking index for job j Ranking index for job j K is the scaling parameter K is the scaling parameter p is the average of the processing time of the remaining jobs p is the average of the processing time of the remaining jobs I j (t)= wjwjwjwj exp ( - max(d j -p j -t, 0) ) pjpjpjpj K p

9 Apparant Tardiness Cost (ATC) rule for 1||  w j T j (2) How do we determine the value of K? How do we determine the value of K? Due date tightness factor Due date tightness factor Due date range factor Due date range factor R = (d max -d min )/C max Empirical studies Empirical studies K = R if R≤0.5 K = 6 - 2R if R>0.5  = 1- (  d j )/n C max

10 Apparant Tardiness Cost with setups (ATCS) Generalization of the ATC rule to take sequence dependent setup times into account Generalization of the ATC rule to take sequence dependent setup times into account –s jk is the setup time of job k if it comes after job j on the machine –s 0k is the setup time if job k is scheduled first on the machine SST rule (Chapter 4) SST rule (Chapter 4) –The job with the smallest setup time goes first ATCS combines WSPT, MS and SST ATCS combines WSPT, MS and SST

11 Apparant Tardiness Cost with Setups (ATCS) (2) Ranking index for job j when job l has just completed its processing Ranking index for job j when job l has just completed its processing s is the average of the setup times of the jobs remaining to be scheduled s is the average of the setup times of the jobs remaining to be scheduled I j (t, l)= wjwjwjwj exp ( - max(d j -p j -t, 0) ) exp ( - s lj ) pjpjpjpj K1 pK1 pK1 pK1 p K2 sK2 sK2 sK2 s

12 Apparant Tardiness Cost with Setups (ATCS) (3) Choosing the scaling parameters Choosing the scaling parameters Function of , R and  = s/p Function of , R and  = s/p  is a function of C max  is a function of C max –C max is now schedule dependent –Estimate C max as C max =  p j + ns K 1 is computed the same way as K in ATC K 1 is computed the same way as K in ATC K 2 =  / (2√  ) K 2 =  / (2√  )

13 ATCS Example Job data Setup times job j 1234 pjpjpjpj djdjdjdj wjwjwjwj2425 k1234 s 0k 1134 s 1k -413 s 2k 0-10 s 3k 12-3 s 4k 431-

14 Implementing a general composite rule 1. Choose the elementary rules 2. Compute the required job and/or machine statistics 3. Use the statistics to compute the values of the scaling values 4. Apply the dispatching rule to the set of jobs

15 Section 14.3 Filtered beam search (FBS) Enumerative branch and bound is one of the most widely used procedures for solving NP-hard problems Enumerative branch and bound is one of the most widely used procedures for solving NP-hard problems –It can be used to optimally solve any of the scheduling problems that we have considered so far Problem: Problem:

16 Branch and bound (B&B) In branch and bound we can eliminate all nodes such that the lower bound is higher than the cost of the best feasible solution found so far In branch and bound we can eliminate all nodes such that the lower bound is higher than the cost of the best feasible solution found so far Consequences: Consequences: –If we can start off with a good solution then many nodes can potentially be eliminated Bad news: Bad news: –The number of nodes can still be large

17 Beam width FBS is a B&B-based method in which only some nodes at any given level are evaluated FBS is a B&B-based method in which only some nodes at any given level are evaluated Nodes that are not evaluated are discarded permanently Nodes that are not evaluated are discarded permanently The number of nodes that are retained is called the beam width The number of nodes that are retained is called the beam width

18 Filter width Evaluating each node at a given level can be computationally expensive Evaluating each node at a given level can be computationally expensive Instead, do a “crude prediction” of the quality of all nodes at a given level Instead, do a “crude prediction” of the quality of all nodes at a given level Evaluate a number of nodes thoroughly Evaluate a number of nodes thoroughly –This number is called the filter width

19 Crude prediction and thorough evaluation Example of a crude prediction Example of a crude prediction –Combine 1. The contribution to the objective of the jobs already scheduled 2. Some job statistic, e.g., due date factor Example of a thorough evaluation Example of a thorough evaluation –Schedule the remaining jobs according to a composite dispatching rule –This gives an upper bound on the value at this node

20 Example Solve 1 ||  w j T j using the following data Solve 1 ||  w j T j using the following data Use beam width = 2 and no filter Use beam width = 2 and no filter job j 1234 pjpjpjpj djdjdjdj42112 wjwjwjwj