A 3D printer uses filament from reels. Each reel holds a fixed amount of material. Print jobs arrive sequentially, each consuming a known amount. When a reel doesn't have enough filament left for the next job, the remnant is discarded. The optimization problem: assign jobs to reels to minimize wasted remnants.
Celenk, van Jaarsveld, Adan, and Akcay formulate this as an online bin-packing variant — a classical combinatorial optimization problem made harder by the fact that jobs arrive one at a time and assignments are irrevocable. You can't wait to see all the jobs before deciding.
The elegant baseline: random allocation. When you assign jobs randomly, each reel operates independently, and the waste calculation decomposes into closed-form single-reel processes. The expected waste per reel is calculable exactly. This isn't a good policy — it's a measurable floor against which better policies are compared.
The practical solution combines structural insight with learning. An index policy assigns each reel a marginal cost score based on how much additional waste would result from assigning the current job to that reel. The scoring function captures the right tradeoff: using a nearly full reel wastes little (the remnant is small) but using a fresh reel wastes the opportunity to fill the current reel more efficiently later. Deep reinforcement learning then refines these indices within an approximate policy iteration framework.
The system achieves near-optimal performance across simulated and real-world printing operations. The theoretical contribution is that the Markov decision process formulation makes the infinite-horizon problem tractable. The practical contribution is that printers waste less filament.
Small operational efficiencies compounded across thousands of print jobs produce substantial material savings. The math is classical. The application is now.