Approximation Algorithms for Scheduling Unrelated Parallel Machines 1: Binary Search over Rounded LP Vertices Finds a Schedule within Twice the Optimal MakespanResearch Paper
Motivation
Scheduling unrelated parallel machines to minimize the makespan, written , is one of the basic NP-hard problems of scheduling theory. A set of jobs must each be run on one of several machines, and the time a job takes depends arbitrarily on the machine; the goal is to finish all jobs as early as possible. Before the work formalized here, the best polynomial algorithm known guaranteed only a schedule within times the optimum (Davis and Jaffe, 1981), a factor that grows with the number of machines .
Lenstra, Shmoys and Tardos (FOCS 1987; CWI Report OS-R8714, 1987; Math. Programming 46, 1990) gave a polynomial algorithm with guarantee , independent of . Their tool is a rounding theorem: a vertex of a natural linear-programming relaxation can be rounded to an integral schedule that exceeds each machine's budget by at most one job. The rounding theorem and the binary-search framework around it became standard material in approximation algorithms.
Setting
There are jobs and machines. If job is scheduled on machine , it takes time units, a positive integer. A schedule assigns every job to one machine . The load of machine is , the makespan of is the largest load, and is the minimum makespan over all schedules.
For deadlines and a threshold , let and . The linear program (LP) has variables for and constraints
The integer program (IP) replaces by and requires . A vertex of (LP) is an extreme point of its feasible polytope. The support graph of a point is the bipartite graph on machines and jobs with an edge whenever .
A -relaxed decision procedure answers, for a deadline , either 'no' or a schedule, such that (1) every schedule it returns has makespan at most , and (2) if it answers 'no', no schedule has makespan at most . The binary search of Lemma 1 starts from the greedy schedule (each job on a machine where it runs fastest), whose makespan is an upper bound , with lower bound , queries the procedure at , moves to on a schedule and to on 'no', and outputs the best schedule found once .
The LP rounding procedure answers, on deadline , by solving (LP) with : 'no' if it is infeasible, and otherwise a 0-1 solution of (IP) obtained by rounding a vertex chosen by the LP solver, supported on .
Formalization targets
Goal: Theorem 2
For every LP solver (every rule choosing a vertex of (LP) when it is feasible), an LP rounding procedure exists, and for every such the output of the binary search satisfies
Milestones
- The support graph of every vertex of (LP) is a pseudoforest: every set of machines and of jobs spans at most edges (§2, p. 4).
- In a machine–job pseudoforest, every set of jobs of degree at least can be matched injectively into the machines (§2, pp. 4–5).
- A schedule supported on a feasible with at most one fractional job per machine has loads at most (§2, p. 5).
- Theorem 1 (Rounding Theorem): every vertex of (LP) has a schedule supported on with
- Lemma 1: for every -relaxed decision procedure, the binary search outputs a schedule of makespan at most .
- A schedule with makespan at most gives a feasible point of (LP) with (§3, p. 5).
- The LP rounding procedure is -relaxed (§3, pp. 5–6).
Significance
Theorem 2 gives a constant-factor approximation for that does not depend on . The same rounding theorem drives the paper's second algorithm, a -approximation for a fixed number of machines using polynomial space, and the paper's lower bound shows that no polynomial algorithm achieves a factor below unless . The Rounding Theorem, in its later form for generalized assignment by Shmoys and Tardos (1993), is a standard tool for LP-based scheduling and assignment.
The result is proved; it has, to our knowledge, no machine-checked proof. The platform contains Matoušek and Gärtner's textbook version (MatousekLP.Scheduling.lst_two_approximation, Theorem 8.3.4 of Understanding and Using Linear Programming), which uses a different relaxation: one bound minimized parametrically over , optimal solutions with linearly independent columns, and no per-machine deadlines. This mission formalizes the report's own route: deadlines , arbitrary vertices, binary search over a relaxed decision procedure. A formal proof would also yield reusable statements about extreme points of transportation-type polytopes and matchings in pseudoforests.
Difficulty
The obvious rounding, putting each job on a machine where is largest, can overload a machine by many jobs at once: nothing in feasibility alone prevents many jobs from each placing a small fraction on the same machine. The bound requires that each machine receive at most one job that the vertex treats fractionally, and this fails for general feasible points; it holds only because is a vertex. The step that carries the weight is therefore a statement about the combinatorial structure of the support of an extreme point, which must be derived from the linear independence of the tight constraints, followed by a matching argument on the resulting graph. Neither step is available in Mathlib in the form needed.
On the algorithmic side, the binary search must be shown to return a schedule within although the decision procedure is only approximately correct; the invariants (the lower bound stays below , the stored schedule stays within times the upper bound) have to be tracked through a recursion.
Formalization scope
- Machines are
Fin m, jobsFin n, processing times a matrixP : Matrix (Fin m) (Fin n) ℕwith all entries positive in Lemma 1 and Theorem 2 (the paper's model, p. 2). Loads, makespans and optimal schedules are the publishedMatousekLP.Scheduling.Scheduledefinitions applied to the real matrix ; is the makespan of a scheduleσoptwithIsOptimalSchedule. - (LP) is modelled on full real matrices with the entries fixed to ; this polytope is affinely isomorphic to the paper's, so vertices (Mathlib's
Set.extremePoints) correspond exactly. Theorem 1 and its steps are stated for real deadlines and real , more general than the paper's integers; the paper's proof does not use integrality, and mission 2 of this series needs non-integral . - Algorithmic wording not formalized. Theorem 2 states "a 2-approximation algorithm ... that runs in time bounded by a polynomial in the input size"; Lemma 1 speaks of polynomial procedures; Theorem 1 adds "this rounding can be done in polynomial time". Running time, the ellipsoid method and vertex finding are not formalized. What is formalized is the guarantee the proofs establish: the binary search, written as a Lean function, returns a schedule within (Lemma 1, for every -relaxed procedure) and within for every LP rounding procedure and every choice of vertex (Theorem 2).
- Explicit constants: the factor of Theorem 2 and of the -relaxed procedure, which comes from with ; the overshoot of Theorem 1; the initial bounds greedy makespan and (the paper's , rounded up because is an integer); the query point .
- The LP solver's choice is quantified over by a vertex selector, returning a vertex when (LP) is feasible and nothing otherwise; one always exists, since the polytope is compact.
- Trivializing formalization ruled out. "There is a schedule with makespan at most " is trivially witnessed by an optimal schedule; the goal instead bounds the output of the binary search, whose every 'almost' answer must be a rounding of the solver's vertex, supported on it and feasible for (IP).
- Needed infrastructure: extreme points of polytopes given by linear constraints and their tight-constraint rank characterization; bipartite pseudoforests and Hall-type matchings; well-founded recursion for the search. Proofs of any milestone, and reusable lemmas on extreme points of assignment polytopes, are welcome.
Selected references
- J. K. Lenstra, D. B. Shmoys, É. Tardos, Approximation algorithms for scheduling unrelated parallel machines, CWI Report OS-R8714, Centre for Mathematics and Computer Science, Amsterdam, 1987 (the source of this mission's statements and numbering); also Proc. 28th IEEE Symposium on Foundations of Computer Science (1987) 217–224
- J. K. Lenstra, D. B. Shmoys, É. Tardos, Approximation algorithms for scheduling unrelated parallel machines, Mathematical Programming 46 (1990) 259–271, https://doi.org/10.1007/BF01585745
- E. Davis, J. M. Jaffe, Algorithms for scheduling tasks on unrelated processors, Journal of the ACM 28 (1981) 721–736, https://doi.org/10.1145/322276.322284
- D. B. Shmoys, É. Tardos, An approximation algorithm for the generalized assignment problem, Mathematical Programming 62 (1993) 461–474, https://doi.org/10.1007/BF01585178
- J. Matoušek, B. Gärtner, Understanding and Using Linear Programming, Springer, 2007, §8.3, https://doi.org/10.1007/978-3-540-30717-4