Bicester3D
+44 1869 221188GET INSTANT QUOTE
FREE UK delivery on every order — no minimum spend.Get an instant quote →

Bicester3D · Research Note

Scheduling a Small Heterogeneous Print Farm

Capacity allocation and queue scheduling in a production additive-manufacturing facility: measured queueing behaviour, capability reservation, and governed rebalancing

Abstract

We describe the scheduling system that assigns customer jobs to a three-machine fused-deposition-modelling (FDM) production facility and orders each machine’s queue. The fleet is small but heterogeneous: one machine is a strict capability superset of the other two, and jobs are started manually, so machine capacity is realised only during staffed hours. Analysis of 60 days of logged routing decisions showed the previous load-balancing policy in systematic conflict with operator practice: 86% of manual reassignments encoded placement policy rather than failure recovery, the high-capability machine operated at utilisation ρ = 0.78 with a mean queueing delay of 23.1 hours, and the two standard machines were idle for 66–88% of the observation window.

A single-server heavy-traffic approximation reproduces the observed delay within 20%, permitting a quantitative estimate of the externality of assigning flexible work to the scarce machine: approximately 3.6× the job’s own duration in expected delay imposed on jobs with no feasible alternative. From this estimate we derive three interventions: (i) corrections to fleet-state estimation, including paused and externally initiated jobs; (ii) least-capable-first assignment with an explicit reservation premium; and (iii) a bounded exception to the system’s anti-oscillation controls that permits reassignment toward idle machines when projected savings exceed the same premium. The two thresholds are equal by construction, so the assignment and rebalancing subsystems price machine flexibility identically. The model predicts mean queueing delay on the high-capability machine falls from ≈28 h to ≈11 h at unchanged throughput.

1. System description

The facility operates three FDM machines, denoted ML (large format, high temperature) and MS1, MS2 (standard format), with continuous stochastic arrivals of paid customer jobs.

MachineUsable bed (after margins)Max. extrusion temp.Eligibility class
ML310 × 290 mm320 °CSole feasible machine for plates >226 mm and for high-temperature composites (e.g. PPS-CF)
MS1, MS2226 × 226 mm≤300 °CStandard materials, standard format

Three properties dominate the design space:

  1. Nested eligibility. Every job feasible on the standard class is feasible on ML; the converse fails on build volume (63% of ML’s executed work exceeds the standard class’s format) and on material temperature requirements. ML is therefore a scarce, flexible resource in the sense of the scheduling literature [4].
  2. Sequence-dependent setups. A material or colour change requires operator intervention of approximately cs = 30 minutes. Each machine carries a four-slot automated material feeder, so setup state is membership of a small set rather than a scalar.
  3. Manual job starts. Automatic print initiation is disabled as a quality-control measure. The scheduler’s output is a correctly assigned, correctly ordered queue per machine; state transitions are performed by the operator, and during the unattended overnight window the facility runs exactly the set of jobs started before the end of the staffed shift.

Formally the problem is unrelated-parallel-machine scheduling with machine eligibility, sequence-dependent setup times, release dates, and an operator availability calendar — NP-hard in all classical variants [4]. At the present scale (three machines, queue depths in the tens) computational complexity is not the binding constraint; decision transparency and input-data fidelity are.

2. Decision-log analysis

Every routing decision is persisted append-only with a machine-readable reasons vector and the queue-state snapshot on which it was computed. Analysis of a 60-day window ending 2026-07-25:

  • Manual reassignments tripled when the third machine entered service: from a baseline of 3–14 per week to 49 in the final week of the window.
  • 86% of manual reassignments encoded placement preference rather than failure recovery. The most frequently overridden automatic decisions were shortest-queue assignments (83% subsequently moved) and the rebalancer’s own reassignments (87% subsequently moved) — the operator was reversing the system’s decisions faster than the system made them.
  • Net manual flow was consistently directional: +13 moves into MS1 and −13 out of MS2 over 30 days. The operator was implementing, manually, an assignment policy the system did not express.
  • Work-mix on ML over 30 days: 63% format-locked, 30% movable (167.7 h of standard-format, standard-material plates), 7% unclassifiable. The movable fraction is the recoverable quantity.
M_L
84.9% · 23.1 h delay
M_S1
34.1%
M_S2
11.9%*
Fig. 1 — Machine utilisation over the 14 days preceding the intervention. Jobs executed on ML experienced a mean ready-to-start delay of 23.1 h (max. 90 h). *MS2 is understated: an operator-initiated batch was invisible to state estimation (§4).

3. Queueing model and validation

Model ML as a single server fed by the jobs ultimately executed on it. Measured over 30 days: utilisation ρ = 0.784, service mean E[S] = 7.42 h, squared coefficient of variation CV²s = 1.09. Kingman’s heavy-traffic approximation [1] for mean queueing delay, with CV²a ≈ 1:

W_q ≈ [ρ/(1−ρ)] · [(CV²_a + CV²_s)/2] · E[S] = 3.62 × 1.05 × 7.42 ≈ 28 h   (observed: 23.1 h)

Agreement is within 20%, with the deviation in the direction expected under a non-FIFO discipline (priority classes and shorter-job preference reduce the mean relative to the discipline-free approximation). We therefore treat the model as adequate for counterfactuals of the magnitude considered here. Two consequences follow.

Sensitivity at high utilisation. At ρ = 0.78 the delay multiplier ρ/(1−ρ) is 3.6 and grows hyperbolically, d(Wq)/dρ ∝ 1/(1−ρ)². Sequencing refinements cannot materially reduce delay on a machine operated in this regime; only load reduction can [5].

Externality pricing. A movable job assigned to ML increases the expected delay of subsequent ML jobs by approximately 3.6× its own duration at current utilisation; the same job on a ρ ≈ 0.35 machine imposes ≈0.5×. This asymmetry is the shadow price of the flexible machine, and it is the quantity that pure shortest-queue assignment ignores: machine-hours are not fungible under nested eligibility.

Counterfactual. Reassigning the 167.7 movable hours to the standard class yields ρ(ML) → 0.55 and Wq → ≈11 h for the jobs with no feasible alternative (residual service mean 8.6 h), while each standard machine absorbs approximately +12 percentage points of utilisation — well below the nonlinear region. Throughput is unchanged; delay improves and concentrates on the jobs of highest value.

4. Fleet-state fidelity

The MS2 anomaly in Fig. 1 traced to state estimation rather than policy. An operator-initiated batch occupied the machine for several days while the scheduler’s fleet snapshot scored it at 0.1–3 h of committed work: jobs not submitted through the ordinary pipeline carried no duration estimate and were priced at a one-hour placeholder, and a machine in the paused state was omitted from the busy set entirely. Sixteen manual evacuations of correctly-routed work followed.

Two corrections:

  • Any active job state (printing, paused, resuming, material change) contributes the job’s remaining time to committed load.
  • Jobs with no duration estimate from any source derive an estimate from observed elapsed time and completion fraction once progress exceeds a 3% noise floor.

The general observation: errors in the scheduler’s world model do not merely produce suboptimal assignments — they induce compensating manual intervention, and each manual intervention reduces operator confidence in subsequent automatic decisions.

5. Capability reservation

Rule. After hard feasibility filtering (build volume, including a shelf-packing check for multi-part plates; material eligibility), rank feasible machines by usable bed area and restrict all subsequent tie-breaking to the least-capable feasible class — unless the best queue in that class trails the best queue of the more-capable class by more than a reservation premium Δ (2 h), in which case the flexible machine is released to ordinary economic comparison.

Choice of Δ. The measured externality bounds Δ from above generously (a mean movable job of 5.6 h imposes ≈20 h of expected delay when assigned to ML at current utilisation); the setup cost cs bounds it from below. We selected 2 h, deliberately conservative, on robustness grounds: at standard-class utilisation below 50% the probability that its best queue exceeds 2 h is modest, so the policy’s effect derives chiefly from the change of default rather than from the threshold’s exact position. The parameter binds mainly under standard-class congestion, which is precisely the condition under which releasing ML is correct.

A designed side-effect. The pre-existing loadout tie-break preferred a machine already carrying the required material. Under nested eligibility this rule attracted standard-format work to ML whenever the required material happened to be loaded there — the single largest source of manual reassignment in the decision-log analysis. Class restriction is evaluated before the loadout tie-break, so loadout state no longer overrides the reservation; the operator incurs one cs setup and the flexible machine remains available, which the 7:1 externality asymmetry supports.

6. Governed rebalancing

The periodic rebalancing pass re-evaluates assignments under anti-oscillation controls: a hysteresis requirement (a move must improve projected delay by ≥30 min and ≥20%), a 6-hour per-plate reassignment cooldown, exclusion rules that prevent a job group’s own movable weight from repelling it, and a loadout-hold rule that retains a plate on a machine already carrying its material. These controls exist because reassignments have real costs — re-preparation of machine-specific tool paths and operator attention — and an earlier oscillation episode (a three-plate order group reassigned four times in one day, each move individually clearing the hysteresis thresholds) demonstrated that undamped rebalancing is self-defeating.

The controls, however, were time-symmetric, and the loadout-hold rule imposed no bound on queueing delay: a plate could remain twenty hours behind a loaded spool while another feasible machine was idle. The observed cost was 121 staffed-hours over 14 days in which a standard machine was idle while feasible work queued elsewhere.

Rule. When the assignment computation selects a target whose queue is below τ (15 min) and the move reduces the plate’s projected delay by at least Δ (2 h), the move is permitted to override the loadout-hold, cooldown, and hysteresis controls. Operator-forced assignments are never overridden.

Stability. The exception cannot introduce oscillation: the reverse move can never qualify, since its target is by construction the busier machine, and an accepted move injects the moved plate’s duration into the pass’s own fleet snapshot, so at most one plate is moved per idle machine per pass.

The reservation premium of §5 and the rebalancing threshold of this section are equal by construction. Assignment declines to occupy the flexible machine until the standard class is Δ-worse; rebalancing reassigns work once a realised delay exceeds Δ beside an idle machine. No queue configuration causes the two subsystems to price flexibility differently, and the constant admits a direct operational interpretation: a machine reassignment is justified when it saves at least two hours of projected queueing delay.

7. Policy architecture versus mathematical programming

At this scale an exact re-solve of the full assignment and sequencing problem (e.g. constraint programming over weighted completion times) is computationally trivial, and we considered it. We retain the policy architecture for four reasons:

  1. Decision legibility is the binding constraint. The decision-log analysis showed operators reversing 87% of the rebalancer’s moves. Every decision in the present system carries a short human-readable reasons vector that can be audited and disputed; an optimal assignment without a legible rationale does not rebuild operator confidence.
  2. Reassignment costs must be priced under either architecture. An unpriced re-solve oscillates for the same reason undamped rebalancing did; a correctly priced one encodes the same policy content as the present controls, with additional opacity.
  3. Input fidelity dominates optimisation quality. The largest measured losses derived from state-estimation error (§4) and one structural property (§5), not from suboptimal tie-breaking.
  4. Failure modes differ in kind. A policy that errs produces one incorrect assignment with a legible reason; an optimiser that errs re-plans the facility. Declining to assign — and escalating to the operator — is a first-class outcome throughout the present design.

The graduation criterion is fixed in advance: a reassignment-cost- priced global re-solve will run in shadow mode, logging proposed against actual decisions, and will be adopted only if it dominates the §8 evaluation metrics over several consecutive weeks.

8. Deployment and evaluation design

The interventions were deployed 2026-07-25 behind runtime- disableable configuration, with behavioural test suites including adversarial oscillation cases. Initial live verification: a standard-format job routes to the standard class with ML 21 h deep; a 300 mm plate routes to ML as sole-feasible; a rebalancing pass against a fully capability-locked queue makes zero moves.

MetricBaselineModel expectation
Manual reassignments / week49Single digits
ML mean ready-to-start delay23.1 h≈11 h
Utilisation (ML / MS1 / MS2)85 / 34 / 12 %Converging; standard class +12 pp each
Idle staffed-hours with feasible work queued121 h / 14 d≈0

Threats to validity

  • The counterfactual assumes the arrival mix is unaffected by the policy change (defensible short-run, not long-run).
  • The movable-hours classification is a lower bound: plates with unrecorded dimensions were excluded.
  • Standard-class utilisation baselines carry the §4 understatement.
  • The operator availability window renders part of the observed delay irreducible by any assignment policy; separating that component is future work (§10).

9. Related work

The design assembles established components deliberately. Preferring less-flexible resources under nested eligibility is classical in scheduling and flexible-server queueing [4, 5]; bounded reassignment toward idle processors is work-stealing [3] under an explicit price; changeover grouping is campaign scheduling; hysteresis and cooldown are standard oscillation controls. List-scheduling foundations trace to Graham [2]. The contribution claimed here is methodological: every constant in the deployed system is either derived from, or validated against, the facility’s own decision log, and the assignment and rebalancing subsystems share a single flexibility price by construction.

10. Future work

  1. End-of-shift assignment. Sequencing is currently per-machine; no component solves the cross-machine assignment that maximises unattended overnight machine-hours at the shift boundary. The intended form is advisory: solve the small assignment problem at a fixed time before end of shift and present the result to the operator.
  2. Shadow-mode mathematical programming per the §7 graduation criterion.
  3. Direct machine telemetry for externally initiated jobs, replacing the progress-extrapolation estimator of §4.
  4. Capacity planning. The same queueing machinery, driven by demand forecasts, indicates when facility expansion is warranted before delay degradation is observable.

References

  1. J. F. C. Kingman, “The single server queue in heavy traffic,” Mathematical Proceedings of the Cambridge Philosophical Society, 57(4), 1961, pp. 902–904.
  2. R. L. Graham, “Bounds on multiprocessing timing anomalies,” SIAM Journal on Applied Mathematics, 17(2), 1969, pp. 416–429.
  3. R. D. Blumofe and C. E. Leiserson, “Scheduling multithreaded computations by work stealing,” Journal of the ACM, 46(5), 1999, pp. 720–748.
  4. M. L. Pinedo, Scheduling: Theory, Algorithms, and Systems, 5th ed., Springer, 2016.
  5. W. J. Hopp and M. L. Spearman, Factory Physics, 3rd ed., Waveland Press, 2011.