1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.

Slides:



Advertisements
Similar presentations
Operations Scheduling
Advertisements

Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
Algorithm Design Methods Spring 2007 CSE, POSTECH.
Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
Lecture 6: Job Shop Scheduling Introduction
FLOW SHOPS: F2||Cmax. FLOW SHOPS: JOHNSON'S RULE2 FLOW SHOP SCHEDULING (n JOBS, m MACHINES) n JOBS BANK OF m MACHINES (SERIES) n M1 M2Mm.
Scheduling.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
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.
Operations Scheduling
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Online Scheduling with Known Arrival Times Nicholas G Hall (Ohio State University) Marc E Posner (Ohio State University) Chris N Potts (University of Southampton)
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
Lateness Models Contents
Spring, Scheduling Operations. Spring, Scheduling Problems in Operations Job Shop Scheduling. Personnel Scheduling Facilities Scheduling.
Vehicle Routing & Scheduling: Part 1
Introduction to Operations Research (II)
1 IOE/MFG 543 Chapter 3: Single machine models (Sections 3.1 and 3.2)
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
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Sections : Dispatching rules and filtered beam search.
Vehicle Routing & Scheduling
Ant Colony Optimization Optimisation Methods. Overview.
1 Set # 4 Dr. LEE Heung Wing Joseph Phone: Office : HJ639.
Fundamental Techniques
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
Using Simulated Annealing and Evolution Strategy scheduling capital products with complex product structure By: Dongping SONG Supervisors: Dr. Chris Hicks.
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
INTRODUCTION TO SCHEDULING
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.
Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen.
15-1Scheduling Operations Scheduling Chapter Scheduling The Hierarchy of Production Decisions The logical sequence of operations in factory planning.
Operational Research & ManagementOperations Scheduling Introduction Operations Scheduling 1.Setting up the Scheduling Problem 2.Single Machine Problems.
1 1 Slide Short – Term Scheduling Professor Ahmadi.
SOFTWARE / HARDWARE PARTITIONING TECHNIQUES SHaPES: A New Approach.
1 Operations Scheduling Act I – The Single Machine Problem General problem: given processing times, setups times, due dates, and job flows on machines.
Outline Introduction Minimizing the makespan Minimizing total flowtime
Scheduling. Scheduling: The allocation of resources over time to accomplish specific tasks. Demand scheduling: A type of scheduling whereby customers.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
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.
Prof. Yuan-Shyi Peter Chiu
Intro. ANN & Fuzzy Systems Lecture 37 Genetic and Random Search Algorithms (2)
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.
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.
Approximation Algorithms for Scheduling
Some Topics in OR.
Greedy Technique.
Algorithm Design Methods
CHAPTER 8 Operations Scheduling
General Purpose Procedures Applied to Scheduling
Heuristics Definition – a heuristic is an inexact algorithm that is based on intuitive and plausible arguments which are “likely” to lead to reasonable.
Exam 2 LZW not on syllabus. 73% / 75%.
Introduction to Scheduling Chapter 1
8 Job Sequencing & Operations Scheduling CHAPTER Arranged by
Planning and Scheduling in Manufacturing and Services
Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Algorithm Design Methods
Topic 15 Job Shop Scheduling.
Algorithm Design Methods
Major Design Strategies
Algorithm Design Methods
Presentation transcript:

1 Short Term Scheduling

2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs sharing the same set of resources (machines)  Time is treated as continuous (not discretized into periods)  Varying objective functions Characteristics

3  Common in make-to-order environments with high product variety  Common as a support tool for MRP in generating detailed schedules once orders have been released Characteristics (Continued…)

4 Example Two jobs, A and B Two machines M1 and M2 Jobs are processed on M1 and then on M2 Job A: 9 minutes on M1 and 2 minutes on M2 Job B: 4 minutes on M1 and 9 minutes on M2

5 Example

6 Example (Continued…)

7 Challenge As the number of jobs increases, complete enumeration becomes difficult: 3! = 6, 4! = 24, 5! = 120, 6! = 720, … 10! =3,628,800, while 13! = 6,227,020,800 25!= 15,511,210,043,330,985,984,000,000

8 Classification of Scheduling Problems  Number of jobs  Number of machines  Type of production facility  Single machine  Flow shop  parallel machines  job shop  Job arrivals  Static  Dynamic  Performance measures

9 A Single Machine Example Jobs Processing time, p j Release time, r j Due date, d j

10 The Single Machine Problem Single machine scheduling problems seek an optimal sequence (for a given criterion) in which to complete a given collection of jobs on a single machine that can accommodate only one job at a time.

11 Decision Variables  x j : time job j is started (relative to time 0 = now), x j  max(0, r j ) for all values of j.

12 Sequencing constraints - (start time of j )+ (processing time of j ) < start time of j ’ or - (start time of j’ )+ (processing time of j’ ) < start time of j

13 Sequencing constraints - (start time of j )+ (processing time of j )  start time of j ’ or - (start time of j’ )+ (processing time of j’ )  start time of j x j + p j  x j’ or x j’ + p j’  x j

14 Disjunctive variables - Introduce disjunctive variables y jj’, y jj’ = 1 if job j is scheduled before job j’ and y jj’ = 0 otherwise. x j + p j  x j’ + M (1 - y jj’ ), x j’ + p j’  x j + My jj’, for all pairs of j and j’ ( for every j and every j’ > j), M is a large positive constant

15 Due date constraints x j + p j  d j for all values of j

16 Examples of Performance measures

17 Example Jobs Processing time Release time Due date Start time 924 0

18 Objective functions

19 Objective functions

20 Formulation: Minimizing Makespan (Maximum Completion Time)

21 A Formulation with a Linear Objective Function

22  Similar formulations can be constructed with other min- max objective functions, such as minimizing maximum lateness or maximum tardiness.  Other objective functions involving minimizing means (other than mean tardiness) are already linear.

23 The Job Shop Scheduling Problem  N jobs  M Machines  A job j visits in a specified sequence a subset of the machines

24 Notation  p jm : processing time of job j on machine m,  x jm : start time of job j on machine m,  y j,j’,m = 1 if job j is scheduled before job j’ on machine m,  M ( j ): The subset of the machines visited by job j,  SS ( m, j ): the set of machines that job j visits after visiting machine m

25 Formulation

26 Solution Methods  Small to medium problems can be solved exactly (to optimality) using techniques such as branch and bound and dynamic programming  Structural results and polynomial (fast) algorithms for certain special cases  Large problems in general may not solve within a reasonable amount of time (the problem belongs to a class of combinatorial optimization problems called NP-hard)  Large problems can be solved approximately using heuristic approaches

27 Single Machine Results Makespan  Not affected by sequence Average Flow Time  Minimized by performing jobs according to the “shortest processing time” (SPT) order Average Lateness  Minimized by performing in “shortest processing time” (SPT) order Maximum Lateness (or Tardiness)  Minimized by performing in “earliest due date” (EDD) order.  If there exists a sequence with no tardy jobs, EDD will do it

28 Single Machine Results (Continued…) Average Weighted Flow Time  Minimized by performing according to the “smallest processing time ratio” (processing time/weight) order Average Tardiness  No simple sequencing rule will work

29 Two Machine Results Given a set of jobs that must go through a sequence of two machines, what sequence will yield the minimum makespan?

30 Johnson’s Algorithm A Simple algorithm (Johnson 1954): 1. Sort the processing times of the jobs on the two machines in two lists. 2. Find the shortest processing time in either list and remove the corresponding job from both lists. –If the job came from the first list, place it in the first available position in the sequence. –If the job came from the second list, place it in the last available position in sequence. 3. Repeat until are all jobs have been sequenced. The resulting sequence minimizes makespan.

31 Data:

32 Johnson’s Algorithm Example Data: Iteration 1: min time is 4 (job 1 on M1); place this job first and remove from both lists:

33 Data:

34 Johnson’s Algorithm Example (Continued…) Iteration 2: min time is 5 (job 3 on M2); place this job last and remove from lists: Iteration 3: only job left is job 2; place in remaining position (middle). Final Sequence: Makespan: 28

35 Gantt Chart for Johnson’s Algorithm Example Short task on M1 to “load up” quickly. Short task on M2 to “clear out” quickly.

36 Three Machine Results  Johnson’s algorithm can be extended to three machines by creating two composite machines (M1* = M1 + M2) and (M2* = M2 + M3) and then applying Johnson’s algorithm to these two machines  Optimality is guaranteed only when certain conditions are met  smallest processing time on M1 is greater or equal than largest processing on machine 2, or  smallest processing time on M3 is greater or equal than largest processing on machine 2

37 Multi-Machine Results  Generate M-1 pairs of dummy machines  Example: with 4 machines, we have the following three pairs (M1, M4), (M1+M2, M3+M4), (M1+M2+M3, M2+M3+M4)  Apply Johnson’s algorithm to each pair and select the best resulting schedule out of the M-1 schedules generated  Optimality is not guaranteed.

38 Dispatching Rules In general, simple sequencing rules (dispatching rules) do not lead to optimal schedules. However, they are often used to solve approximately (heuristically) complex scheduling problems. Basic Approach  Decompose a multi-machine problem (e.g., a job shop scheduling problem) into sub-problems each involving a single machine.  Use a simple dispatching rule to sequence jobs on each of these machines.

39 Example Dispatching Rules  FIFO – simplest, seems “fair”.  SPT – Actually works quite well with tight due dates.  EDD – Works well when jobs are mostly the same size.  Critical ratio (time until due date/work remaining) - Works well for tardiness measures  Many (100’s) others.

40 Heuristics Algorithms  Construction heuristics  Use a procedure (a set of rules) to construct from scratch a good (but not necessarily optimal) schedule  Improvement heuristics  Starting from a feasible schedule (possibly obtained using a construction heuristic), use a procedure to further improve the schedule

41 Example: A Single Machine with Setups  N jobs to be scheduled on a single machine with a sequence dependent setup preceding the processing of each job.  The objective is to identify a sequence that minimizes makespan.  The problem is an instance of the Traveling Salesman Problem (TSP).  The problem is NP-hard (the number of computational steps required to solve the problem grow exponentially with the number of jobs).

42 A Heuristic Algorithm

43 A Heuristic Algorithm  Greedy heuristic : Start with an arbitrary job from the set of N jobs. Schedule jobs subsequently based on “next shortest setup time.”

44 A Heuristic Algorithm  Greedy heuristic : Start with an arbitrary job from the set of N jobs. Schedule jobs subsequently based on “next shortest setup time.”  Improved greedy heuristic : Evaluate sequences with all possible starting jobs ( N different schedules). Choose schedule with the shortest makespan.

45 A Heuristic Algorithm  Greedy heuristic : Start with an arbitrary job from the set of N jobs. Schedule jobs subsequently based on “next shortest setup time.”  Improved greedy heuristic : Evaluate sequences with all possible starting jobs ( N different schedules). Choose schedule with the shortest makespan.  Improved heuristic : Starting from the improved greedy heuristic solution carry out a series of pair-wise interchanges in the job sequence. Stop when solution stops improving.

46 A Problem Instance  16 jobs  Each job takes 1 hour on single machine (the bottleneck resource)  4 hours of setup to change over from one job family to another  Fixed due dates  Find a solution that minimizes tardiness

47 EDD Sequence Average Tardiness:

48 A Greedy Search  Consider all pair-wise interchanges  Choose one the one that reduces average tardiness the most  Continue until no further improvement is possible

49 First Interchange: Exchange Jobs 4 and 5. Average Tardiness: 5.0 (reduction of 5.375!)

50 Greedy Search Final Sequence Average Tardiness: 0.5 (9.875 lower than EDD)

51 A Better (Due-Date Feasible) Sequence Average Tardiness: 0

52 Revisiting Computational Times Current situation: computers can examine 1,000,000 sequences per second and we wish to build a scheduling system that has a response time of no longer than one minute. How many jobs can we sequence optimally (using a brute force approach)?

53 Effect of Faster Computers Future Situation: New computers will be 1,000 times faster, i.e. it can do 1 billion comparisons per second). How many jobs can we sequence optimally now?

54 Implications for Real Problems Computation: NP (non-polynomial) algorithms are slow to use No Technology Fix: Faster computers do not help on NP algorithm. Exact Algorithms: Need for specialized algorithms that take advantage of the structure of the problem to reduce the search space. Heuristics: Likely to continue to be the dominant approach to solving large problems in practice (e.g., multi-step exchange algorithms, Genetic Algorithms, Simulated Annealing, Tabu Search, among others)

55 Implications for Real Problems (Continued…) Robustness: NP hard problems have many solutions, and presumably many “good” ones.  Example : 25 job sequence problem. Suppose that only one in a trillion of the possible solutions is “good”. This still leaves 15 trillion “good” solutions. Our task is to find one of these. Focus on Bottleneck: We can often concentrate on scheduling the bottleneck process, which simplifies the problem closer to a single machine case.