What this method is
Federgruen–Tzur general is a direct exact ULS method in the Geometric DP family. It solves the problem without requiring an external mathematical-programming engine and returns an optimal solution when its applicability conditions are satisfied.
Core idea
The method works directly on the ULS arrays using the algorithmic mechanism identified by its family and implementation note. No external optimizer is needed. The returned plan is reconstructed through the common ULS result model.
Minimal C# example
using ULSAlgorithms.Abstractions;
using ULSAlgorithms.Models;
using ULSAlgorithms.Exact.FedergruenTzur;
var problem = new UlsProblem(
demands: [20.0, 30.0, 25.0, 40.0],
setupCosts: [200.0, 200.0, 200.0, 200.0],
unitProductionCosts: [0.0, 0.0, 0.0, 0.0],
holdingCosts: [4.0, 4.0, 4.0, 0.0]);
IUlsSolver solver = new FedergruenTzurSolver();
var result = solver.Solve(problem);
Console.WriteLine(result.Status);
Console.WriteLine(result.ObjectiveValue);
The input example intentionally uses stationary, positive-demand data so it is compatible with restricted methods too. Always check the applicability box for your own instance.
Reference & provenance
Federgruen & Tzur (1991), A Simple Forward Algorithm to Solve General Dynamic Lot Sizing Models with n Periods in O(n log n) or O(n) Time, Management Science 37(8), 909-925 · DOI 10.1287/mnsc.37.8.909