4using System.Threading.Tasks;
5using LotSizingDataModel.Core.PhysicalModel;
6using LotSizingDataModel.Core.Relationships;
7using LotSizingDataModel.Instance;
30 LotSizingInstance instance,
33 ArgumentNullException.ThrowIfNull(instance);
34 ArgumentNullException.ThrowIfNull(options);
43 LotSizingInstance instance,
47 CancellationToken cancellationToken)
50 TransportCharacteristic characteristic
51 in instance.SupplyChain.TransportCharacteristics)
53 TransportResource resource =
54 instance.SupplyChain.TransportResources
58 characteristic.TransportResourceId);
61 AssignedTransportLane lane
62 in instance.SupplyChain.GetTransportLanes(resource.Id))
66 period <= instance.PlanningHorizon;
69 cancellationToken.ThrowIfCancellationRequested();
76 characteristic.ItemId,
83 characteristic.UnitUsageCost?[period] ??
89 return ValueTask.CompletedTask;
Provides a fluent builder for linear expressions.
Builds stable business-domain keys for mathematical variables and constraints.
MathematicalDomainKeyBuilder Add(string name, string value)
Adds a text segment.
Provides the shared state required while constructing a solver-independent mathematical model.
Creates canonical domain-key fragments shared by standard formulation builders and provides warehouse...
static MathematicalDomainKeyBuilder AddDestinationWarehouse(MathematicalDomainKeyBuilder builder, WarehouseReference warehouse)
Adds a destination warehouse reference.
static MathematicalDomainKeyBuilder AddOriginWarehouse(MathematicalDomainKeyBuilder builder, WarehouseReference warehouse)
Adds an origin warehouse reference.
Provides the canonical mathematical domain-key categories used to identify lot-sizing decision famili...
const string Transport
Identifies transported-quantity decision variables.
Provides the canonical mathematical domain-key segment names used by lot-sizing variables and constra...
const string TransportResource
Transport-resource identifier segment.
const string Item
Item or product identifier segment.
const string Period
Period index segment.