Adaptive smoothing in supply chain replenishment
A forecast has to balance responsiveness with stability. React too strongly to the latest demand and orders may swing with it; react more slowly and the forecast gives more weight to the past. I tested whether a language model could choose that balance while leaving the order calculation to a formula.
Letting the model adjust the forecast
I tested gpt-4.1-mini, o4-mini, and GPT OSS 120B. At each period and supply-chain tier, the model selected a smoothing coefficient, α, from 0.1, 0.3, 0.5, or 0.7. A higher value gives the latest demand observation more influence over the forecast. The formula used that forecast to calculate the order, without a safety-stock multiplier or an Order-Up-To calculation.
The fictional three-tier chain served one product over 25 months of synthetic demand shaped around Indian automotive seasons. Lead times were fixed at one month, with no random fill rates or injected disruptions. This was simpler than the earlier experiments with disruptions, so differences between their results cannot be attributed to the new ordering design alone.
Each model ran ten repetitions with numbers alone, with added calendar and seasonal context, and with a stateful version containing recent α history. The comparison policies used fixed coefficients and ran once because they were deterministic in this environment.
I measured chain OVAR: order variance divided by demand variance at each tier, averaged across the chain. Below one means damping. Stockouts were measured alongside it to check whether steadier orders came with worse availability.
The fixed setting was a strong comparison
| Model | Numbers only | Context | History |
|---|---|---|---|
| gpt-4.1-mini | 0.597 ± 0.041 | 0.715 ± 0.020 | 0.695 ± 0.045 |
| o4-mini | 0.657 ± 0.091 | 0.741 ± 0.045 | 0.705 ± 0.125 |
| GPT OSS 120B | 0.535 ± 0.048 | 0.739 ± 0.040 | 0.684 ± 0.121 |
All nine model-condition averages were below one, ranging from 0.535 to 0.741. GPT OSS 120B with numbers alone had the lowest observed OVAR, 0.535, and averaged 4.4 stockouts. Holding α fixed at 0.3 produced about 0.545 OVAR and five stockouts.
The model's average was slightly lower, but the gap of 0.010 was small relative to variation between its runs. This comparison did not establish that adding AI was better than keeping the coefficient fixed.
Calendar and seasonal context increased OVAR for every model. Adding recent history gave results between the numbers-only and context conditions. The average α was actually lower with context than with numbers alone, so a simple explanation—that context made the models choose higher coefficients—does not fit the recorded averages. Explaining the difference would require examining when and how those choices changed.
Could different instructions reduce that effect?
Four follow-up conditions ran five repetitions each. They removed seasonal guidance and asked the models to use numerical evidence. Some also replaced the calendar input with statistics calculated from the demand data; these are the “computed-signal” conditions. All four α choices remained available.
The published GPT OSS 120B computed-signal batch reached 0.585 OVAR, below the original context result of 0.739. Another stored five-run batch reached 0.573. The records do not explain why the published account selected one batch, so both values are reported here without combining them or selecting a new headline result.
For gpt-4.1-mini, the revised instruction condition reached 0.596 and the computed-signal condition reached 0.679. The latter was closer to its original context result than to its numbers-only result. The follow-up therefore did not consistently recover the numbers-only performance, as intended.
The five runs of that computed-signal condition also had the same reported distributions of α choices. Those distributions do not establish identical sequences of choices, and the runs do not represent five different demand scenarios. The improvements in some conditions are observations from this setup, not an established method for correcting the effect of context.
Conclusion
Letting the models adjust smoothing produced an average chain OVAR below one in every tested condition. But fixed smoothing already achieved that, and the best AI result did not establish an advantage over it. This study therefore offers no demonstrated performance gain that requires adding a language model to the fixed-coefficient approach.
The remaining question is whether adaptive selection can show a dependable advantage across more repetitions and different demand or disruption settings. That work has not been done here. These findings cover three models, four coefficient choices, and one synthetic demand series; the hypotheses were not externally pre-registered.