1 / 20

Introduction

Introduction. Chapter 1 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha. Outline. Schedule and scheduling Example of Scheduling Mathematical models Categorization and description Solution to scheduling problem Algorithms and time complexity.

maverick
Download Presentation

Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction Chapter 1 Elements of Sequencing and Schedulingby Kenneth R. Baker Byung-Hyun Ha

  2. Outline • Schedule and scheduling • Example of Scheduling • Mathematical models • Categorization and description • Solution to scheduling problem • Algorithms and time complexity

  3. Introduction to Sequencing and Scheduling • Schedule • A tangible plan or document • A bus schedule, a class schedule a. When things will happen; a plan for the timing of certain activities • When will be the dinner served, when the laundry will be done b. In which sequence things will happen • The North bus departs right after cleaning and maintenance are finished • Scheduling • Process of generating schedule • Given tasks to be carried out, resources available to perform the tasks • Determining the detailed timing of the tasks within resource capacity • preparing a dinner, doing the laundry, problems in industry

  4. ... 1 2 3 2 1 3 2 3 1 ... 1 2 1 3 1 2 1 3 3 1 3 2 ... 1 2 3 2 1 3 1 2 1 3 Example of Scheduling for Single Machine • We want to make a best schedule for single machine. • There is a machine (resource) that handles tasks • Best schedule regarding total flowtime • Assuming there are 3 jobs {1, 2, 3}. • Processing time: p1 = 5, p2 = 2, p3 = 3 • Ready time: r1 = r2 = r3 = 0 • Q: Number of possible schedules? • A: Infinite. • Why?

  5. ... 1 2 3 2 1 3 2 3 1 (O) (O) (O) ... 1 2 1 3 (X) 1 2 1 3 (X) 3 1 3 2 (X) ... 1 2 3 (X) 2 1 3 (X) 1 2 1 3 (X) Dominant Set Regarding Regular Measures • Theorem 1 (Chap. 2) asserts that schedules without inserted idle time constitute a dominant set for any regular measure. • So, we don’t need to consider schedules with idle times, when we want to minimize any regular measure. • Theorem 2 (Chap. 2) asserts that schedules without preemption constitute a dominant set for any regular measure. • So, we don’t need to consider schedules with preemption, when we want to minimize any regular measure. • Now, when we consider a regular measure as our scheduling objective, which schedules do we need to regard?

  6. 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 All Enumerations of Possible Schedules • Q: How many schedules do we need to consider regarding regular measures? • A: 3! = 6. • Why? • Ah! An ordering of jobs completely determines a schedule. • So, scheduling sequencing in single-machine problem regarding regular measures. • A schedules can be completely specified by a permutation of integers: (1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1) • So, we call them as permutation schedules.

  7. Minimizing Total Flowtime by All Enumerations • Completion time, flowtime and total flowtime • Consider schedule (2, 1, 3). • [1] = ?, [2] = ?, [3] = ? • [1] = 2, [2] = 1, [3] = 3 • Completion times • C2 = p2 = 2 • C1 = C2 + p1 = p2 + p1 = 7 • C3 = C1 + p3 = p2 + p1 + p3 = 10 • or, • C[1] = p[1] = 2 • C[2] = C[1] + p[2] = 7 • C[3] = C[2] + p[3] = p[1] + p[2] + p[3] = 10 • Flowtimes • F1 = C1 – r1 = 7 – 0 = 7 • F2 = C2 – r2 = 2 – 0 = 2 • F3 = C3 – r3 = 10 – 0 = 10 • Total flowtimes • F = F1 + F3 + F3 = 7 + 2 + 10 = 19 2 1 3 2 7 10

  8. Minimizing Total Flowtime by All Enumerations • Optimal schedule which minimizes total flowtime • Total flowtime is a regular measure. So, we can consider only permutation schedules. 1. Schedule (1, 2, 3) • F = 5 + 7 + 10 = 22 2. Schedule (1, 3, 2) • F = 5 + 8 + 10 = 23 3. Schedule (2, 1, 3) • F = 2 + 7 + 10 = 19 4. Schedule (2, 3, 1) • F = 2 + 5 + 10 = 17 5. Schedule (3, 2, 1) • F = 3 + 8 + 10 = 21 6. Schedule (3, 1, 2) • F = 3 + 5 + 10 = 18 • How many possible schedules if we have 30 jobs? • 30! = 265,252,859,812,191,058,636,308,480,000,000 2. 1. 1 2 3 1 3 2 5 7 10 5 8 10 3. 4. 2 1 3 2 3 1 2 7 10 2 5 10 5. 6. 3 1 2 3 2 1 3 8 10 3 5 10

  9. 2 3 1 2 5 10 Minimizing Total Flowtime by SPT • Theorem 3 (Chap. 2) asserts that total flowtime is minimized by SPT. • So, we can conclude that (2, 3, 1) is best, without enumerating all of the candidate 6 schedules. • Then, how about minimizing total tardiness? • Tardiness: delay from due date

  10. Introduction to Sequencing and Scheduling • Decision-making hierarchy • Scheduling follows more basic decisions, some earlier • Dinner preparation  menu items, recipes, ... • Planning decisions in industry • Demand, design, technology for products • A production planning and control hierarchy for pull system (next slide) • Assuming planning decisions have been made already, and we are given the following information • Tasks that are well defined and completely known • Resources to perform these tasks are specified and available

  11. Marketing parameters Forecasting Production/processparameters Capacity/facilityplanning Workforceplanning Labor policies Capacityplan Personnelplan Aggregate planning Aggregate plan Strategy WIP/quota setting Customer demand Master production schedule Demand management WIP position Sequencing & scheduling Tactics Control Real-time simulation Work schedule Work forecast Shop floor control Production tracking A production planning and control hierarchy for pull system (source: Hopp & Spearman, Factory Physics, 2000)

  12. Introduction to Sequencing and Scheduling • Defining scheduling problem • Resource (e.g., machine): type, amount • Task: resource requirement, duration, available time, due date, technological constraints (precedence restriction) • Finding solution • Formal problem-solving approaches are required because of complexity • Formal models • For understanding problem and finding solution • Graphical, algebraic, and simulation models • Gantt chart • Visualizing problem, measuring performance, and comparing schedules Resource 1 1 2 4 3 Resource 2 2 1 4 3 Resource 3 3 2 1 4 time

  13. Scheduling Theory • Mathematical models • Primary concerns of this course • Development of useful models • Leading to solution techniques and practical insights • Interface between theory and practice • Quantitative approach • Capturing problem structure in mathematical form • Beginning with a description of resources and tasks with translation of decision-making goals into explicit objective function • Objective function • Ideally, it should consist of all costs that depend on scheduling decisions • Not much practical (difficult to identify, isolate, and fix) • Practical and prevalent goals • Turnaround -- time required to complete a task • Timeliness -- conformance of a task’s completion to a given deadline • Throughput -- amount of work completed during a fixed period of time

  14. Scheduling Theory • Categorization of scheduling models • By number of machines • One or several • By capacity of machine • Available in unit amount or in parallel • By job availability • Static -- available jobs does not change over time, or • Dynamic -- new jobs appear over time • “Although dynamic models, which is less tractable than static models, would appear to be more important for practical application, static models often capture the essence of dynamic systems, and the analysis of static problems frequently uncovers valuable insights and sound heuristic principles that are useful in dynamic situation.” • By certainty • deterministic or stochastic

  15. Scheduling Theory • Description of scheduling problem (Pinedo, 2008) • Using triple  |  |  •  -- machine environment •  -- processing characteristics and constraints •  -- objective to be minimized • Machine environment • Single machine -- 1, identical machines in parallel -- Pm, flow shop -- Fm,job shop -- Jm, ... • Processing characteristics and constraints • Release dates -- rj , preemptions -- prmp, precedence constraints -- prec, sequence dependent setup times -- sjk , batch processing -- batch(b), ... • pj = p, dj= d, ... • Objective to be minimized • Makespan -- Cmax , maximum lateness -- Lmax , total weighted completion time -- wjCj , weighted number of tardy jobs -- wjUj , ... • Examples • 1 | rj , prmp | wjCj , 1 | sjk | Cmax , Fm | pij = pj | wjCj , Jm || Cmax

  16. Scheduling Theory • Solution to scheduling problem • Answering the following decisions • Which resources will be allocated to perform each task? (allocation decision) • When will each task be performed? (sequencing decision) by feasible resolution of the following common constraints • Limits on capacity of machines • Technological restriction on order in which some jobs can be performed • ... • Solution methodologies • Mathematical programming models • Combinatorial procedures • Heuristic solution approaches • Simulation techniques • ...

  17. Scheduling Theory • Algorithms and time complexity • Time complexity • Computing effort required by a solution algorithm • The number of computations required by an algorithm to solve a problem of “size n (amount of information needed to specify problem)” • Size of sorting problem -- number of entries • Size of traveling salesman problem (TSP) -- number of cities, roughly • Described by order-of-magnitude notation, O() -- complexity in worst case • A function f(n) is O(g(n)) whenever there exists a constant c such that |f(n)|  c|g(n)| for all values of n  0 • Insertion sort -- O(n2), quick sort -- O(nlogn) • All enumeration algorithm:knapsack problem -- O(2n), TSP -- O(n!) • http://en.wikipedia.org/wiki/Computational_complexity_theory#Big_O_notation • Polynomial time algorithm • An algorithm with complexity such as O(1), O(n2), O(n8), O(n100), ... • Exponential time algorithm • An algorithm with complexity such as O(2n), O(3n), O(nn), O(2n/2), ...

  18. Scheduling Theory • Algorithms and time complexity (cont’d) • Running time example • Size of largest problem instance solvable in 1 hour (Garey and Johnson, 1969)

  19. Scheduling Theory • Algorithms and time complexity (cont’d) • Running time example (cont’d) • Comparing algorithms with complexities of n, nlogn, n2, n8, 2n, 3n • Assuming that our computer executes 106 computations per second • Assuming that our computer has become 103 times faster than above  105 sec.  1 day, 41017 sec.  age of the universe

  20. Scheduling Theory • Algorithms and time complexity (cont’d) • NP-complete problems • A class of problems which includes many well-known and difficult combinatorial problems • Knapsack problem, TSP, graph coloring problem, ... • All the problems are equivalent in the sense that if one of them can be solved by polynomial algorithm, then so can the others • No one has found polynomial algorithm, nor proved no algorithm exists • Garey and Johnson, 1969 • http://en.wikipedia.org/wiki/Np-complete • Proof of NP-completeness of a problem • By reducing a well-known NP-complete problem to the problem • Application of NP-complete theory • “If we are faced with the need to solve large versions of an NP-complete problem, we might be better off to use a so-called heuristic solution procedure, rather than pursuing optimal solution.”

More Related