Teaching Supply Plans to See Around Corners

TABLE OF CONTENT
SHARE THIS POST
Picture an autonomous car tearing through an F1 circuit. At every millisecond, its AI brain is navigating the same trade-off: go faster now, or protect the lap later. Brake too early and you lose. Brake too late and you crash. Supply planning runs on identical logic. Every production and inventory decision is a constrained optimization call made under uncertainty, with consequences that compound across a 52-week horizon.

These aren't two industries sharing an analogy, they're sharing an algorithm. The algorithms developed for autonomous racing and supply planning have converged on the same fundamental architecture. Both are solving the same problem. How do you make locally optimal decisions in real time, continuously, without sacrificing long-term performance?
The Fastest Way to Plan a Year: Don't.
Feeding a full 52-week supply plan into a solver at once isn't just slow, the problem grows exponentially with every week you add to the horizon. Every additional period multiplies the decision space: more variables, more constraints, more combinations than any solver can work through in time. Full-horizon optimization is computationally impractical for real business cycles.
The core principle, don't try to solve the entire future at once.
The autonomous car faces the same limits. Calculating the optimal trajectory for an entire race in a single pass is impossible, the race would be over before the first result came back. So the car doesn't try. At every moment it plans only the next few seconds, executes the first move, and replans with updated information. Many small, fast solves. One long, well-navigated race.
That's rolling horizon planning.
Constructing the Marathon from Sprints
We apply this same logic to the 52-week supply plan. Rather than feeding the full year into the solver, we define a short optimization window — typically three to five periods, a function of your supply chain lead time. The solver optimizes across this window in full, accounting for all relevant constraints: capacity, inventory positions, lead times, demand coverage. We commit the first period's decisions to the plan.

The solver optimizes across this window in full: capacity, inventory positions, lead times, demand coverage. After the solve, we commit the first period's decisions to the plan, then roll the window forward and solve again.

Committing only the first period is a deliberate choice. The forward periods aren't wrong; they are directionally sound for today's decision, but subject to optimization when tomorrow's data come in. Re-solving with updated demand signals, inventory actuals, and capacity confirmations will produce a better answer than holding to a stale forward plan. Replanning is not a failure of the original solve. It's the design.
Repeat this across 52 weeks and you have a complete annual plan, assembled not as one unwieldy calculation but as a sequence of fast, precise solves.
The Hidden Flaw in Every Rolling Plan
There is a catch. Rolling horizon planning introduces a structural risk: shortsightedness.
Because the algorithm only sees to the end of its window, it can make decisions that are locally optimal but set up failure just beyond the horizon.
- In racing: the car accelerates through what looks like a straight within its window, not knowing a hairpin turn sits just outside the frame. By the time the turn comes into view, it's too late to brake.
- In supply planning: the solver depresses raw material buys to minimize holding costs. Rational within the window. But a product launch or demand spike one period beyond it doesn't exist to the algorithm. The plan looks clean. The execution is a shortage.
Without a way to account for what lies beyond the horizon, a rolling plan will consistently optimize itself into corners. Optimal this period. Blind to the next.
What the AI Actually Learns
This is the problem the predicted cost function solves, and where Lyric Studio's architecture diverges from conventional rolling horizon implementations.
The closest analogy outside supply chain is a chess engine. Rather than calculating every possible game state to the final move, modern engines evaluate the current board position and assign it a score based on patterns learned from millions of games. That score is a proxy for the probability of winning from that position forward. The predicted cost function works the same way. It doesn't simulate the remaining weeks of the plan. It reads the current state — inventory levels, capacity headroom, demand coverage — and returns a learned estimate of what those remaining weeks will actually cost.
The function is trained on historical planning outcomes, pairing end-of-window states with the actual costs that followed. Over time, the model learns which end states are genuinely safe and which only appear safe within the window.

The safe region is a hard feasibility constraint, not a preference. Any candidate plan terminating outside it is rejected by the solver regardless of how it looks within the window, which prevents the algorithm from producing plans that are locally optimal but operationally impossible to execute in the next period.
This architecture has academic roots. The predicted cost function and safe region construction derive from peer-reviewed research on Learning Model Predictive Control — work I developed and published across multiple control systems journals, and validated on actual race tracks before applying it to supply planning.
A Planner That Acts Locally and Thinks Globally
Lyric approaches supply planning as a dynamic problem rather than a one-time calculation. By adopting the intelligence of autonomous racing, we deliver a solution fast enough to react to today's changes and smart enough to protect tomorrow's performance.
Speed through rolling horizons. Foresight through learned cost. A planner that acts locally but thinks globally, making immediate decisions that are optimal for now without compromising the periods ahead.
References
The concepts discussed in this post—specifically the rolling horizon strategy, the construction of safe sets, and the learning of terminal costs from data—are based on the following papers:
- Learning Model Predictive Control for Iterative Tasks: A Data-Driven Control Framework
U. Rosolia and F. Borrelli IEEE Transactions on Automatic Control, 2018. Read the paper
- Learning How to Autonomously Race a Car: A Predictive Control Approach
U. Rosolia and F. Borrelli IEEE Transactions on Control Systems Technology, 2020. Read the paper
- Robust Learning Model Predictive Control for Linear Systems Performing Iterative Tasks
U. Rosolia, X. Zhang, and F. Borrelli IEEE Transactions on Automatic Control, 2022. Read the paper
- Sample-Based Learning Model Predictive Control for Linear Uncertain Systems
U. Rosolia, X. Zhang, and F. Borrelli IEEE Transactions on Automatic Control, 2022. Read the paper
- Data-Driven Predictive Control for Autonomous Systems
U. Rosolia, X. Zhang, and F. Borrelli Annual Review of Control, Robotics, and Autonomous Systems, 2018. Read the paper
Deliver Better Decisions Faster
Supply chains run on thousands of interconnected decisions. Demand shapes production. Inventory affects transportation. Every choice influences another. Every decision matters.


