A Polynomial-Time Algorithm for Three-Machine Unit-Job Scheduling — OpenAI
Neural Casts
0:00 / 0:00
A Polynomial-Time Algorithm for Three-Machine Unit-Job Scheduling — OpenAI
39 просмотров · 2 нед. назад
Neural Casts
87 подписчиков
39 просмотров · 2 нед. назад
A Polynomial-Time Algorithm for Three-Machine Unit-Job Scheduling
by OpenAI
Watch the concise version: • A Polynomial-Time Algorithm for Three-Mach...
⚠️ This video was generated by AI. It may contain errors — please consult the original paper for authoritative details.
📖 ABOUT THIS VIDEO
This video walks through the paper "A Polynomial-Time Algorithm for Three-Machine Unit-Job Scheduling", credited to OpenAI. It gives a deterministic polynomial-time algorithm for scheduling unit-length jobs with arbitrary precedence constraints on three identical parallel machines (P3 | prec, p_j = 1 | Cmax). The algorithm finds a schedule of minimum makespan and decides exactly whether every job can finish by a given deadline. Garey and Johnson listed this problem as OPEN8, and it has stayed open since.
The obvious approach is to cut a schedule at chosen time slots and solve each gap recursively. That breaks down for two reasons: the number of possible job sets for a gap can blow up, and describing a deeply nested gap seems to require remembering all of its ancestors. The paper's key claim is that, in a carefully built recursive decomposition, every gap's job set can be described exactly, over the whole job set, by a Boolean formula of bounded size. The formulas are built from precedence cones, triple membership and rank thresholds, and the bound holds however deep the gap sits. With that in hand, a dynamic program over polynomially many such formulas is both sound and complete.
The video starts with the model and the vocabulary: full schedules, gaps, cones and frames. It then sets out the dynamic program and the certificate it needs. Next it covers separators that share a common cutoff and the interval construction, with its short upset lists and three invariants. From there it shows why machine capacity keeps the lists at most five entries long, how changes of direction get flattened, how the boundary invariants survive reordering, and how each child interval becomes a global formula with fewer than 500 leaves. It ends with the explicit polynomial bound, which is real but far too large to be practical. The result settles the complexity question; it isn't a usable scheduler.
Who it's for: engineers and CS students who are comfortable with algorithms, dynamic programming, partial orders and proof sketches, but have no background in scheduling theory. Every concept specific to the field is defined before it's used. Knowing about Coffman-Graham or the two-machine case helps but isn't required.
⏱ CHAPTERS
🏷 TOPICS
#APolynomialTimeAlgorithmForThreeMachineUnitJobScheduling #OpenAI #PrecedenceConstrainedScheduling #UnitJobScheduling #ThreeMachineScheduling
Chapters:
0:00 Introduction
1:30 An Open Problem with Three Machines
8:56 Groundwork: Full Schedules, Gaps, Cones and Frames
15:50 The Algorithm: A Dynamic Program over Short Formulas
31:08 Separators with a Shared Cutoff
46:44 Building the Hierarchy: Intervals, Lists and Invariants
57:42 Keeping Lists Short Across Generations
1:11:12 Keeping the Boundary Invariants Alive
1:17:26 From Lists to Global Formulas
1:26:37 The Price and the Payoff