## Scheduling Algorithms (1997)

Citations: | 63 - 1 self |

### BibTeX

@MISC{Karger97schedulingalgorithms,

author = {David Karger and Cliff Stein and Joel Wein},

title = {Scheduling Algorithms},

year = {1997}

}

### Years of Citing Articles

### OpenURL

### Abstract

Introduction Scheduling theory is concerned with the optimal allocation of scarce resources to activities over time. The practice of this field dates to the first time two humans contended for a shared resource and developed a plan to share it without bloodshed. The theory of the design of algorithms for scheduling is younger, but still has a significant history---the earliest papers in the field were published more than forty years ago. Scheduling problems arise in a variety of settings, as is illustrated by the following examples: Example 1: Consider the central processing unit of a computer that must process a sequence of jobs that arrive over time. In what order should the jobs be processed in order to minimize, on average, the time that a job is in the system from arrival to completion? Example 2: Consider a team of five astronauts preparing for the reentry of their space shuttle into the at

### Citations

10921 |
Computers and Intractability: A Guide to the Theory of NP-Completeness
- Garey, Johnson
(Show Context)
Citation Context ...n the non-preemptive setting, however, it is unlikely that there is a polynomial time exact algorithm, since the problem is N P-complete via a simple reduction from the N P-complete Partition problem =-=[GJ79]-=-. We will thus focus on finding an approximately optimal solution. First, we will show that any busy schedule gives a 2-approximation. We will then see how this can be improved with a slightly smarter... |

8530 |
Introduction to Algorithms
- Cormen, Leiserson, et al.
- 1990
(Show Context)
Citation Context ...s a classical dynamic program that builds the solution out of solutions to smaller problems (a detailed introduction to dynamic programming can be found in many algorithms textbooks, see, for example =-=[CLR90]-=-). This O(n � wj) dynamic programming algorithm has several implications. First, it immediately yields an O(n 2 )-time algorithm for 1|| � Uj problem–just take all weights to be 1. Furthermore, we wil... |

1407 |
Network Flows: Theory, Algorithms, and Applications
- Ahuja, Magnanti, et al.
- 1993
(Show Context)
Citation Context ...weight of a matching to be the sum of the weights of the matching edges. The key fact that we use in this section is that minimum weight perfect matchings can be computed in polynomial time (see e.g. =-=[AMO93]-=-). 4.1.1 Matching to Schedule Positions for R|| � Cj In this section we give a polynomial-time algorithm for R|| � Cj that matches jobs to positions in the schedule on each machine. For any schedule, ... |

482 | Scheduling: Theory, Algorithms and Systems - Pinedo - 1995 |

375 |
A polynomial algorithm in linear programming
- Khachiyan
- 1979
(Show Context)
Citation Context ...nd a feasible solution to the set of constraints. Many optimization problems can be formulated as linear programs, and thus solved efficiently, since a linear program can be solved in polynomial time =-=[Kha79]-=-. In this section we consider R|pmtn|Cmax. To model this problem as a linear program, we 27suse nm variables xij, 1 ≤ i ≤ m, 1 ≤ j ≤ n. Variable xij denotes the fraction of job j that is processed on ... |

320 | Principles of Sequencing and Scheduling - Baker - 2009 |

307 |
Optimization and approximation in deterministic sequencing and scheduling: A survey. Annals of Discrete Mathematics 5
- Graham, Lawler, et al.
- 1979
(Show Context)
Citation Context ...odels, we already have enough information to define a number of problems. We refer to various scheduling problems in the now-standard notation defined by Graham, Lawler, Lenstra, & Rinnooy Kan (1979) =-=[GLLK79]-=-. A problem is denoted by α|β|γ, where (i) α denotes the machine environment, (ii) β denotes various side constraints and characteristics and (iii) γ denotes an optimality criterion. For the one-machi... |

274 |
Combinatorial Optimization: Networks and
- LAWLER
- 1976
(Show Context)
Citation Context ...s (3) and (1). Note that |A| is the total length of intervals in A.2 16sFor the case when all processing times are exactly one, P|prec|Cmax is solvable in polynomial time if there are only 2 machines =-=[Law76]-=-, and is N P-complete if there are an arbitrary number of machines[Ull75]. The complexity of the problem in the case when there are a fixed constant number of machines, e.g. 3, is one of the more famo... |

264 |
Sequencing and scheduling: algorithms and complexity
- Lawler, Lenstra, et al.
- 1993
(Show Context)
Citation Context ... on machine 2 are processed in the same order as those on machine 1.2 Having limited our search for optimal schedules to permutation schedules, we present a 11sclever argument given by Lawler et. al. =-=[LLKS93]-=- to establish the optimality of the permutation schedule specified by Johnson’s rule. Renumber the jobs according to the ordering given by Johnson’s rule. Notice that in a permutation schedule for F2|... |

205 |
Theory of Scheduling
- Conway, Maxwell, et al.
- 1967
(Show Context)
Citation Context ... clear: schedule the m largest jobs last on each machine, schedule the next m largest jobs next to last, etc. The schedule constructed is exactly that constructed by the SPT algorithm. Corollary 4.2 (=-=[CMM67]-=-) SPT is an exact algorithm for P|| � Cj. 4.1.2 Matching Jobs to Machines: O|pmtn|Cmax For our second example of the utility of matching, we give an algorithm for O|pmtn|Cmax due to Gonzales and Sahni... |

201 | Approximation algorithms for scheduling unrelated parallel machines
- Lenstra, Shmoys, et al.
- 1990
(Show Context)
Citation Context ...e job. We have thus successfully matched all job nodes to machine nodes, as we required. Thus, there exists a 2-relaxed decision procedure for R||Cmax, and we have the following theorem. Theorem 5.1 (=-=[LST90]-=-) There is a 2-approximation algorithm for R||Cmax. 5.2 Inferring an Ordering from a Preemptive Schedule for 1|rj| � Cj In this section and the next we discuss techniques for inferring an ordering of ... |

194 | Scheduling to minimize average completion time: Off-line and on-line approximation algorithms
- Hall, Schulz, et al.
- 1997
(Show Context)
Citation Context ... j k=1 pk for all j. We will see that, although the formulation does not guarantee this property, it does yield a relaxation of it, which is sufficient for the purposes of approximation. Theorem 5.4 (=-=[HSSW97]-=-) Schedule-by- ¯ Cjis a 2-approximation algorithm for 1|prec| � wjCj. Proof: Since ¯ Cj optimized a relaxation, we know that � wj ¯ Cj is a lower bound on the true optimum. It therefore suffices to sh... |

183 | NP-complete scheduling problems - Ullman - 1975 |

176 | Using dual approximation algorithms for scheduling problems: Theoretical and practical results
- Hochbaum, Shmoys
- 1987
(Show Context)
Citation Context ... polynomial in 1/ǫ. While for ρ very close to 1, the running time is prohibitively large, for larger, fixed values of ρ, a modified algorithm yields good schedules with near-linear running times; see =-=[HS87]-=- for details. 6.3 Exhaustive Enumeration for 1|rj|Lmax We now turn to the problem of minimizing the maximum lateness in the presence of release dates. Recall from Section 2.1 that without release date... |

165 | Various optimizers for single-stage production - Smith - 1956 |

112 |
Optimal two and three-stage production schedules with setup times included
- Johnson
- 1954
(Show Context)
Citation Context ...shop. In general, this problem is N P-hard, even in the case of three machines. However, in the special case of the two-machine flow shop F2||Cmax, a priority10sbased ordering approach due to Johnson =-=[Joh54]-=- yields an exact algorithm. We denote the operations of job j on the first and second machines as a pair (aj, bj). Intuitively, we want to get jobs done on the first machine as quickly as possible so ... |

97 |
Bounds for certain multiprocessor anomalies
- Graham
- 1966
(Show Context)
Citation Context ...ax is N P-hard. We consider the performance of the list scheduling (LS) algorithm, which is a generic greedy algorithm: whenever a machine becomes available, process any unprocessed job. Theorem 2.8 (=-=[Gra66]-=-) LS is a 2-approximation algorithm for P||Cmax. Proof: Let j ′ be the last job to finish in the schedule constructed by LS and let sj ′ be the time that j ′ begins processing. Cmax is therefore sj ′ ... |

94 | Openshop Scheduling to Minimize Finish Time
- Gonzdez, Sahni
- 1976
(Show Context)
Citation Context ... SPT is an exact algorithm for P|| � Cj. 4.1.2 Matching Jobs to Machines: O|pmtn|Cmax For our second example of the utility of matching, we give an algorithm for O|pmtn|Cmax due to Gonzales and Sahni =-=[GS76]-=-. This algorithm will not find just one matching, but rather a sequence of matchings, each of which will correspond to a partial schedule, and then concatenate all of these partial schedules together.... |

94 |
Scheduling a production line to minimize maximum tardiness
- Jackson
- 1955
(Show Context)
Citation Context ... is to schedule the job that is closest to being late, which suggests the EDD algorithm: order the jobs by nondecreasing due dates (breaking ties arbitrarily) and schedule in that order. Theorem 2.3 (=-=[Jac55]-=-) EDD is an exact algorithm for 1||Lmax. Proof: We again use an interchange argument to prove that the the schedule constructed by EDD is optimal. Assume without loss of generality that all due dates ... |

91 |
Scheduling with deadlines and loss functions
- McNaughton
- 1959
(Show Context)
Citation Context ... We then use the lower bounds to establish approximation guarantees for the nonpreemptive case. 2.3.1 Minimizing Cmax with preemptions We give a simple algorithm, called McNaughton’s wrap-around rule =-=[McN59]-=-, that creates an optimal schedule for P|pmtn|Cmax with at most m −1 preemptions. This algorithm is different from many scheduling algorithms in that it creates the schedule machine by machine, rather... |

80 |
Scheduling independent tasks to reduce mean finishing time
- Bruno, Coffman, et al.
- 1974
(Show Context)
Citation Context ...ee that the k th from last job to run on a machine contributes exactly k times its processing time to the sum of completion times. Based on this observation, Horn [Hor73] and Bruno, Coffman and Sethi =-=[BCS74]-=- proposed formulating R|| � Cj problem as a 24sminimum-weight bipartite matching problem. We define a bipartite graph G = (V, E) with V = A ∪ B as follows. A will contain n vertices vj, one for each o... |

76 | Some Simple Scheduling Algorithms - Horn - 1974 |

65 |
An n Job, One Machine Sequencing Algorithm for Minimizing the Number of Late Jobs
- Moore
- 1968
(Show Context)
Citation Context ...ob needs to finish last, and it immediately follows that we can 20sdo no better than executing all of that job last. Thus, our greedy algorithm continues to apply. 3.1.2 An alternative approach Moore =-=[Moo68]-=- gave a different approach to 1||fmax that may be faster in some cases. His scheme is based on a reduction to the maximum lateness problem and its solution by the EDD rule. To see how an algorithm for... |

60 | Structure of a simple scheduling polyhedron - Queyranne - 1993 |

52 |
Optimal sequencing of a single machine subject to precedence constraints
- Lawler
- 1973
(Show Context)
Citation Context ... (J ) ≥ min j∈L fj(P(J )) This is the same as the first equation above, except that the minimum is taken only over jobs without successors. The remainder of the proof proceeds unchanged. Theorem 3.1 (=-=[Law73]-=-) Least-Cost-Last is an exact algorithm for 1|prec|fmax. It should also be noted that, once again, the fact that our algorithm is greedy makes preemption a moot point. One job needs to finish last, an... |

42 | Minimizing average completion time in the presence of release dates - Phillips, Stein, et al. - 1998 |

41 |
A functional equation and its application to resource allocation and sequencing problems
- Lawler, Moore
- 1969
(Show Context)
Citation Context ... wj) time dynamic program for computing Twn for every relevant value w; the maximum w for which Twn is finite is the maximum total weight of jobs that can be completed by their due date. Theorem 3.2 (=-=[LM69]-=-) Dynamic programming yields an O(n � wj)-time algorithm for exactly solving 1|| � wjUj. We remark that a similar dynamic program can be used to solve the problem in time O(n � pj), which is effective... |

40 | On preemptive scheduling of unrelated parallel processors by linear programming
- Lawler, Labetoulle
- 1978
(Show Context)
Citation Context ...t. That it always exists is a nontrivial fact (about stochastic matrices) whose proof is beyond the scope of this survey; we refer the reader to Lawler and Labetoulle’s presentation of this algorithm =-=[LL78]-=-. To find a decrementing set, we construct a (bipartite) graph with a node representing each job and machine, and include an edge between machine node i and job node j if job j requires a non-zero amo... |

39 |
Flowshop and jobshop schedules: complexity and approximation
- Gonzalez, Sahni
- 1978
(Show Context)
Citation Context ... algorithm known that comes anywhere close to optimal. We also note that even though list scheduling is a 2-approximation for O||Cmax, for F||Cmax busy schedules can be of makespan Ω(m) times optimal =-=[GS78]-=-. 3 Sophisticated Greedy Approaches As we have just argued, for many problems, the priority algorithms that consider jobs in isolation, as in Section 2, are not sufficient. In this section, we conside... |

39 |
Scheduling jobs that arrive over time
- Phillips, Stein, et al.
- 1995
(Show Context)
Citation Context ... some point the next job in the order has not been released, we wait idly until its release date and then schedule it. This added idle time is the reason our schedule may not be optimal. Theorem 5.2 (=-=[PSW95]-=-) Convert-Preempt-Schedule is a 2-approximation algorithm for 1|rj| � Cj. Proof: The non-preemptive schedule N constructed by Convert-Preempt-Schedule can be understood as follows. For each job j, con... |

36 | Online Scheduling - A Survey - Sgall - 1997 |

35 | Polyhedral approaches to machine scheduling - Queyranne, Schulz - 1994 |

22 |
Minimizing average flow time with parallel machines
- Horn
- 1973
(Show Context)
Citation Context ...i=1 k=1 kpi,κki . (4) From this, we see that the k th from last job to run on a machine contributes exactly k times its processing time to the sum of completion times. Based on this observation, Horn =-=[Hor73]-=- and Bruno, Coffman and Sethi [BCS74] proposed formulating R|| � Cj problem as a 24sminimum-weight bipartite matching problem. We define a bipartite graph G = (V, E) with V = A ∪ B as follows. A will ... |

21 |
Bounds on multiprocessing anomalies
- Graham
(Show Context)
Citation Context ...he schedule and the shorter jobs later. This is formalized in the Longest Processing Time (LPT) rule: sort jobs in nonincreasing order of processing time and list schedule in that order. Theorem 2.9 (=-=[Gra69]-=-) LPT is a 4/3-approximation algorithm for P||Cmax. Proof: We start by simplifying the problem. Suppose that j ′ , the last job to finish in our schedule, is not the last job to start. Remove all jobs... |

18 |
Approximation schemes for constrained scheduling problems
- Hall, Shmoys
- 1989
(Show Context)
Citation Context ... lower bounds (21) and (22).2 6.3.2 A PAS using Enumeration The presentation of this section follows that of Hall [Hal97]. The original approximation scheme for this problem is due to Hall and Shmoys =-=[HS89]-=-. 43sTo obtain better bounds, we need to look more carefully at when Jackson’s rule can go wrong. Let sj be the starting time of job j, let rmin(S) = minj∈S rj, let qmin(S) = minj∈S qj, and recall tha... |

18 | Mixed Integer Programming Formulations for Production Planning and Scheduling Problems. Invited talk at 12th ISMP, MIT - Wolsey - 1985 |

17 | A supermodular relaxation for scheduling with release dates
- Goemans
- 1996
(Show Context)
Citation Context ...or linear programming [Wol85, Que93]. We also note that in the special case in which we just have release dates, a slightly strengthened version can (remarkably) be solved optimally in O(n logn) time =-=[Goe96]-=-. 36s5.3.2 Constructing a Schedule from a Solution to the Relaxation We now show that a solution to this relaxation can be converted efficiently to an approximatelyoptimal schedule. For simplicity, we... |

11 |
Approximation Algorithms for NP-Hard Problems, chapter Approximation Algorithms for Scheduling
- Hall, Hochbaum
- 1997
(Show Context)
Citation Context ...′ + qj ′) + pj (25) j = 2L∗ max , (26) where the last line follows by applying the two lower bounds (21) and (22).2 6.3.2 A PAS using Enumeration The presentation of this section follows that of Hall =-=[Hal97]-=-. The original approximation scheme for this problem is due to Hall and Shmoys [HS89]. 43sTo obtain better bounds, we need to look more carefully at when Jackson’s rule can go wrong. Let sj be the sta... |

6 |
Bounds for naive multiple machine scheduling with release times and deadlines
- Gusfield
- 1984
(Show Context)
Citation Context ...(1) and (2) above.2 This algorithm can easily be implemented in O(n + m) time. By a similar analysis, the algorithm guarantees an approximation of the same quality even if the jobs have release dates =-=[Gus84]-=-. 2.3.3 Longest Processing Time First for P||Cmax It is useful to think of the analysis of LS in the following manner. Every job starts being processed before time � n j=1 pj/m, and hence the schedule... |

5 |
Tobbg'epes utemez'esi probl'em'ak kozel optim'alis megold'asa. Szigma--Mat.-- Kozgazdas'agi Foly'oirat
- B'ar'any, Fiala
- 1982
(Show Context)
Citation Context ... is busy for at most Πmax time units. Thus the total length of the schedule is at most Pmax + Πmax, as claimed. Since Pmax + Πmax ≤ C ∗ max + C ∗ max = 2C ∗ max, we obtain Theorem 2.11 (Racsmány, see =-=[BF82]-=-) List Scheduling is a 2-approximation algorithm for O||Cmax. 2.4 Limitations of Priority Rules For many problems, simple scheduling rules do not yield good schedules, and thus given a scheduling prob... |

2 | de Velde. Sequencing and scheduling - Hoogeveen, Lenstra, et al. - 1997 |