3using System.Threading.Tasks;
4using LotSizingDataModel.Core.Relationships;
5using LotSizingDataModel.Instance;
20 LotSizingInstance instance,
23 ArgumentNullException.ThrowIfNull(instance);
24 ArgumentNullException.ThrowIfNull(options);
26 return instance.SupplyChain.ProductionRoutings.Any(
27 routing => routing.MaximumLotSize is not
null);
31 LotSizingInstance instance,
34 CancellationToken cancellationToken)
37 ProductionRouting routing
38 in instance.SupplyChain.ProductionRoutings)
40 if (routing.MaximumLotSize is
null)
47 period <= instance.PlanningHorizon;
50 cancellationToken.ThrowIfCancellationRequested();
53 routing.MaximumLotSize
54 .GetMaximumLotSize(period);
65 $
"maximumLotSize_r{routing.Id}_t{period}",
72 "Maximum production lot size for the routing.");
76 return ValueTask.CompletedTask;
Provides a fluent builder for linear expressions.
Provides the shared state required while constructing a solver-independent mathematical model.
Represents one decision variable in a mathematical optimization model.
MathematicalConstraintSense
Identifies the relational sense of a mathematical constraint.