3using System.Threading.Tasks;
4using LotSizingDataModel.Core.Querying;
5using LotSizingDataModel.Core.Relationships;
6using LotSizingDataModel.Instance;
28 LotSizingInstance instance,
32 CancellationToken cancellationToken)
35 new SupplyChainQueries(
36 instance.SupplyChain);
39 ProductionRouting routing
40 in instance.SupplyChain.ProductionRoutings)
44 period <= instance.PlanningHorizon;
47 cancellationToken.ThrowIfCancellationRequested();
54 in routing.WorkCenters)
56 ProductionCharacteristic characteristic =
57 queries.GetRequiredProductionCharacteristic(
62 characteristic.UnitUsageCost?[period] ??
85 return ValueTask.CompletedTask;
Provides a fluent builder for linear expressions.
Builds stable business-domain keys for mathematical variables and constraints.
string Build()
Builds the immutable domain-key text.
MathematicalDomainKeyBuilder Add(string name, string value)
Adds a text segment.
Provides the shared state required while constructing a solver-independent mathematical model.
Provides the canonical mathematical domain-key categories used to identify lot-sizing decision famili...
const string Production
Identifies production-quantity decision variables.
Provides the canonical mathematical domain-key segment names used by lot-sizing variables and constra...
const string Routing
Routing identifier segment.
const string Period
Period index segment.