Efficient Algorithms for Scheduling Semiconductor Burn-In Operations 2: Dynamic Program DP2 Finds a Minimum-Makespan On-Time Batch Schedule When Processing Times and Due Dates Are AgreeableResearch Paper
Burn-in ovens as batch processing machines
In semiconductor manufacturing, finished chips go through burn-in: they are loaded on boards and held in an oven at high temperature to expose early failures. An oven holds a bounded number of boards, a load cannot be interrupted once started, and a chip may stay in the oven longer than its specified burn-in time but not shorter. Lee, Uzsoy and Martin-Vega (Oper. Res. 40(4), 1992) model the oven as a batch processing machine and give polynomial algorithms for several due-date objectives. The model has since become a standard one in scheduling theory; the survey of Potts and Kovalyov (2000) traces the batching literature that grew from it.
This mission formalizes the part of the paper's §3 on minimizing maximum tardiness when all jobs are available at time and processing times and due dates are agreeable. That is the problem the paper writes . The paper's own route is a feasibility test by dynamic programming, Algorithm DP2, which a bisection over due-date shifts turns into a minimizer.
The batch machine
There are jobs . Job has a processing time and a due date , both natural numbers. The machine has capacity . A batch is a nonempty set of at most jobs processed together. It occupies the machine for the processing time of its longest job,
A batch schedule of a job set is a sequence of pairwise disjoint batches covering , processed in this order and back to back from time . Batch and all of its jobs complete at . The makespan is , and the maximum tardiness is
A schedule is feasible when , that is, when every job meets its due date.
A sequence is in batch-EDD order (Definition 1) if no job in an earlier batch has a strictly later due date than a job in a later batch. Processing times and due dates are agreeable if implies . A schedule is consecutive when every batch is a block of indices and the blocks appear in increasing order.
Algorithm DP2 computes values :
Formalization targets
Goal: correctness of DP2
Index the jobs so that and . Then for every ,
with . The minimum ranges over all schedules: any batching, any order. This is the paper's reading of as "the minimum completion time of jobs if they can be scheduled feasibly, and infinity otherwise".
Milestones
- Lemma 3. With agreeable processing times and due dates, if a feasible schedule exists, then a feasible schedule in batch-EDD order exists.
- Consecutive partition (justification of DP2). Under the index order above, if jobs can be scheduled feasibly, then some feasible schedule of minimum makespan is consecutive.
- FBEDD. With equal processing times and due dates in index order, the Full-Batch EDD schedule has no larger than that of any batch schedule.
Significance
DP2 is the paper's feasibility test for with agreeable data. With a bisection over the common shift of the due dates, it yields a polynomial algorithm for minimizing . A correct statement of what DP2 computes is therefore the core of that result. The same consecutive-partition structure underlies the paper's DP1 (release times, equal processing times) and DP3 (number of tardy jobs), which are separate missions of this series.
No machine-checked proof of any of these statements is known. The dynamic program's correctness is argued in the paper only by reference ("the justification of this algorithm is similar to that of algorithm DP1"), and the index order it needs is left implicit. A formal proof pins down exactly which ordering of the jobs makes the recursion correct.
Difficulty
The recursion charges for the last batch and checks only . Both shortcuts rely on the jobs being sorted by due date and by processing time at the same time. Lemma 3's exchange argument sorts a feasible schedule by due date, but it does not by itself produce consecutive blocks of a fixed index order. With ties in due dates the indexing also has to be compatible with processing times. Without that, the recursion is wrong: for , , it gives , while every schedule takes at least . The goal compares the DP with the optimum over all schedules, so the exchange arguments have to bridge arbitrary batchings and the consecutive ones the recursion enumerates. That bridge is the main step left to prove.
Formalization scope
- Jobs are
Fin n(job of the paper is index ); jobs arejobsUpTo n j. Data are natural numbers; the paper assumes integral data (p. 769). - A schedule is a
List (Finset (Fin n)); validity requires nonempty batches of size at most inside the job set, pairwise disjoint, covering the set. Batches start as early as possible. Batch time is the maximum processing time in the batch. - is
⊤ : ℕ∞, and the goal's minimum is the infimum inℕ∞, which is⊤exactly when no feasible schedule exists. DP2 is defined by the printed recursion, not as an optimum. - Explicit readings of loose phrases:
- "jobs are indexed in increasing order of due dates" (p. 767) becomes
Monotone d ∧ Monotone pfor DP2 and its justification, andMonotone dfor FBEDD; - "agreeable" (printed " implies ", which would force equal due dates for equal processing times) becomes the strict form , a weaker hypothesis;
- "optimally solves" for FBEDD becomes "valid, and at most that of every valid schedule";
- "a consecutive partition problem" becomes the existence of a consecutive minimum-makespan feasible schedule.
- "jobs are indexed in increasing order of due dates" (p. 767) becomes
- Not formalized: the and running times, the bisection procedure, and the remark that bounds .
- Trivializations ruled out: the goal's minimum ranges over all valid schedules, not only batch-EDD or consecutive ones (which would assume the milestones), and DP2 is the printed recursion, not a restatement of the optimum.
- Infrastructure needed: list-indexed schedules, exchange arguments on adjacent batches, and induction on prefix length for the recursion. The single-machine batch model is shared in spirit with missions 1 and 3 of this series. No published platform definition was reused, since nothing on batch machines exists yet.
Selected references
- C.-Y. Lee, R. Uzsoy, L. A. Martin-Vega, Efficient Algorithms for Scheduling Semiconductor Burn-In Operations, Operations Research 40(4), 764–775, 1992. https://doi.org/10.1287/opre.40.4.764
- Y. Ikura, M. Gimple, Efficient scheduling algorithms for a single batch processing machine, Operations Research Letters 5(2), 61–65, 1986. https://doi.org/10.1016/0167-6377(86)90104-5
- C. N. Potts, M. Y. Kovalyov, Scheduling with batching: A review, European Journal of Operational Research 120(2), 228–249, 2000. https://doi.org/10.1016/S0377-2217(99)00153-8