Download presentation
Presentation is loading. Please wait.
Published by皎龈悍 璩 Modified over 6 years ago
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 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
3
Overview Dispatching (or priority) rules Composite dispatching rules
E.g., WSPT Composite dispatching rules Try to intelligently combine two or more dispatching rules Filtered beam search Heuristic implementation of branch and bound 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 Static vs. Dynamic WSPT is … SRPT is … Global vs. Local LAPT and Johnson’s rules are …
5
Applicability of elementary dispatching rules
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 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 An elementary rule is a function of attributes of jobs and/or machines 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||S wjTj
Recall: Problem 1||S wjTj is NP-hard We developed a pseudopolynomial DP algorithm for 1||S Tj 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||S wjTj
Combines WSPT and minimum slack (MS) Slack of job j is max(dj-pj-t, 0) Ranking index for job j K is the scaling parameter p is the average of the processing time of the remaining jobs Ij(t)= wj exp(- max(dj-pj-t, 0) ) pj K p
9
Apparant Tardiness Cost (ATC) rule for 1||S wjTj (2)
How do we determine the value of K? Due date tightness factor Due date range factor R = (dmax-dmin)/Cmax Empirical studies K = R if R≤0.5 K = 6 - 2R if R>0.5 t = 1- (Sdj)/n Cmax
10
Apparant Tardiness Cost with setups (ATCS)
Generalization of the ATC rule to take sequence dependent setup times into account sjk is the setup time of job k if it comes after job j on the machine s0k is the setup time if job k is scheduled first on the machine SST rule (Chapter 4) The job with the smallest setup time goes first 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 s is the average of the setup times of the jobs remaining to be scheduled Ij(t, l)= wj exp(- max(dj-pj-t, 0) ) exp(- slj ) pj K1 p K2 s
12
Apparant Tardiness Cost with Setups (ATCS) (3)
Choosing the scaling parameters Function of t, R and h = s/p t is a function of Cmax Cmax is now schedule dependent Estimate Cmax as Cmax = Spj + ns K1 is computed the same way as K in ATC K2 = t / (2√h)
13
ATCS Example 14.2.1 Job data Setup times k 1 2 3 4 s0k s1k - s2k s3k
s3k s4k job j 1 2 3 4 pj 13 9 10 dj 12 37 21 22 wj 5
14
Implementing a general composite rule
Choose the elementary rules Compute the required job and/or machine statistics Use the statistics to compute the values of the scaling values 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 It can be used to optimally solve any of the scheduling problems that we have considered so far 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 Consequences: If we can start off with a good solution then many nodes can potentially be eliminated 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 Nodes that are not evaluated are discarded permanently 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 Instead, do a “crude prediction” of the quality of all nodes at a given level Evaluate a number of nodes thoroughly This number is called the filter width
19
Crude prediction and thorough evaluation
Example of a crude prediction Combine The contribution to the objective of the jobs already scheduled Some job statistic, e.g., due date factor 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 14.3.1 Solve 1 || SwjTj using the following data
Use beam width = 2 and no filter job j 1 2 3 4 pj 10 13 dj 12 wj 14
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.