Download presentation
Presentation is loading. Please wait.
1
1 IOE/MFG 543* Chapter 1: Introduction *Based in part on material from Izak Duenyas, University of Michigan, Scott Grasman, University of Missouri, Rakesh Nagi, University of Buffalo, and Uwe Schwiegelshohn, CEI University
2
2 Scheduling Allocation of scarce resources to tasks over time Allocation of scarce resources to tasks over time Decision-making process with the goal of optimizing an objective (or multiple objectives) Decision-making process with the goal of optimizing an objective (or multiple objectives)
3
3 Elements Resources Resources –Machines, runways, construction crews, CPUs Tasks Tasks –Operations in a production process, take-offs and landings, stages in a construction project, execution of computer programs Objectives Objectives –Minimizing last completion time –Maximize number of tasks completed on time
4
4 Examples Paper bag factory Paper bag factory Gate assignments at an airport Gate assignments at an airport Scheduling tasks in a CPU Scheduling tasks in a CPU What are the resources (machines), tasks (jobs), and objectives? What are the resources (machines), tasks (jobs), and objectives?
5
5 5 job single machine exercise minimize w j C j where C j is the completion time of job j, p j is the processing time of job j, w j is the weight (priority) of job j j pjpjpjpj wjwjwjwj 143 211 3310 41015 524
6
6 IOE/MFG 543 Chapter 2. (Sections 2.1-2.2) Deterministic models: Preliminaries
7
7 Jobs and machines Data (assumed to be given) Data (assumed to be given) m number of machines n number of jobs p ij processing time of job j at machine i pjpjpjpj processing time of job j at when all machines are identical rjrjrjrj release date of job j djdjdjdj due date of job j wjwjwjwj weight of job j
8
8 Describing a scheduling problem |||||||| Machine environment Process characteristics and constraints Objective (to be minimized)
9
9 Machine environment Single machine and machines in parallel Single machine and machines in parallel 1 single machine Pm m identical machines in parallel Qm m machines in parallel w/different speeds v i Rm m unrelated machines in parallel
10
10 Machine environment (2) Machines in series Machines in series Fm flow shop: all jobs processed in the same order on the machines FFc flexible flow shop: same as flow shop but with c stages of parallel machines Jm job shop: each job has its own routing FJc flexible job shop: same as job shop but with c stages of parallel machines Om open shop: each job has to processed on all machines but no routing restrictions
11
11 Processing characteristics and constraints could be empty! rjrjrjrj Release dates s jk sequence dependent setup times s ijk sequence and machine dependent setup times prmppreemption prec precedence constraints
12
12 Processing characteristics and constraints (2) brkdwnbreakdowns MjMjMjMj machine eligibility restrictions prmupermutation blockblocking nwt no waiting recrcrecirculation
13
13 Objectives Performance measures of individual jobs Performance measures of individual jobs CjCjCjCj completion time of job j LjLjLjLj lateness = C j – d j TjTjTjTj tardiness = max( L j, 0 ) EjEjEjEj earliness = max(- L j, 0 ) UjUjUjUj unit penalty = 1 if C j > d j and 0 otherwise hj(Cj)hj(Cj)hj(Cj)hj(Cj) h j is a non-decreasing cost function
14
14 Objectives (2) Functions to be minimized Functions to be minimized C max = max C j makespan L max = max L j maximum lateness ΣwjCjΣwjCjΣwjCjΣwjCj total weighted completion time Σw j (1-e -rC j ) total weighted discounted C j ΣwjTjΣwjTjΣwjTjΣwjTj total weighted tardiness ΣwjUjΣwjUjΣwjUjΣwjUj weighted number of tardy jobs Σw j ' E j + Σw j '' T j total weighted earliness and tardiness
15
15 Regular objective functions Regular objective functions Regular objective functions –non-decreasing in C 1,…,C n –most objective functions considered in this class are regular Non-regular objective functions Non-regular objective functions –Example: Σw j ' E j + Σw j '' T j –Much harder to solve!
16
16 IOE/MFG 543 Appendix C. Complexity terminology
17
17 What does complexity mean? Complexity is an indication of how much computation is required to solve a problem Complexity is an indication of how much computation is required to solve a problem Significance of the complexity of a scheduling problem Significance of the complexity of a scheduling problem –Does an efficient algorithm for solving the problem exist? –Worst case analysis
18
18 Problems and instances A problem is the generic description of a problem A problem is the generic description of a problem An instance refers to a problem with a given set of data An instance refers to a problem with a given set of data The size of an instance refers to the length of the data string necessary to specify the instance (on a computer) The size of an instance refers to the length of the data string necessary to specify the instance (on a computer) –In this class the size of an instance is usually measured in the number of jobs n
19
19 Measure of computation Turing machine Turing machine –an abstract representation of a computing device In this class In this class –Typical computation steps comparison comparison multiplication multiplication addition addition other data manipulation other data manipulation
20
20 Order relation An algorithm is an O(g(n)) algorithm if there exist a constant c>0, a function g(n), and an integer n 0 >0 such that the maximum number of iterations f(n) needed to find an optimal solution satisfies An algorithm is an O(g(n)) algorithm if there exist a constant c>0, a function g(n), and an integer n 0 >0 such that the maximum number of iterations f(n) needed to find an optimal solution satisfies If O(n k ) for some finite k then polynomial time If O(n k ) for some finite k then polynomial time –O(n!) and O(4 n ) are not polynomial time
21
21 Optimization vs. decision problems A decision problem A decision problem –A question that requires either a “yes” or “no” answer For every optimization problem there is an associated decision problem For every optimization problem there is an associated decision problem –For a given number z, is there a schedule x such that f(x) ≤ z ?
22
22 The classes P and NP Class P Class P –The class P contains all decision problems for which there exists a Turing machine algorithm that leads to the right yes-no answer in a number of steps bounded by a polynomial in the length of the encoding
23
23 The classes P and NP (2) Class NP Class NP –The class NP contains all decision problems for which the correct answer, given a proper clue, can be verified by a Turing machine in a number of steps bounded by a polynomial in the length of the encoding
24
24 Problem reduction Problem P polynomially reduces to problem P’ if a polynomial time algorithm for P’ implies a polynomial time algorithm for problem P Problem P polynomially reduces to problem P’ if a polynomial time algorithm for P’ implies a polynomial time algorithm for problem P –Denoted P P’ –P’ is at least as hard as P
25
25 The classes NP- hard and NP- complete Class NP- hard Class NP- hard –A problem P is called NP- hard if the entire class NP polynomially reduces to problem P –Problem P is at least as hard as all the problems in NP Class NP- complete (not in the textbook) Class NP- complete (not in the textbook) –A problem P is called NP- complete if it is both in classes NP and NP –hard
26
26 Pseudopolynomial algorithms Polynomial time algorithms exist for some NP -hard problems under the appropriate encoding of the problem data Polynomial time algorithms exist for some NP -hard problems under the appropriate encoding of the problem data Such problems are referred to as NP -hard in the ordinary sense and the algorithms are called pseudopolynomial Such problems are referred to as NP -hard in the ordinary sense and the algorithms are called pseudopolynomial Problem P is called strongly NP -hard if a pseudopolynomial algorithm for it does not exist Problem P is called strongly NP -hard if a pseudopolynomial algorithm for it does not exist
27
27 Some NP -hard problems NP -hard in the ordinary sense NP -hard in the ordinary sense –PARTITION Strongly NP -hard Strongly NP -hard –SATISFIABILITY –3-PARTITION –HAMILTIONIAN CIRCUIT –CLIQUE
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.