1using LotSizingDataModel.Core.Relationships;
2using LotSizingDataModel.Instance;
7 public override string FamilyId=>
"glspSetupStart";
11 for(
int i=0;i<ordered.Length;i++){
int from=
GlspSequenceSemantics.
GetFixedPredecessorItemId(profile,i);
bool reset=i>0&&
GlspSequenceSemantics.
IsResetBoundary(profile,ordered[i-1],ordered[i]);
foreach(var routing
in routings)
AddBinaryVariable(context,$
"glspU_r{routing.Id}_t{ordered[i].MacroPeriod}_s{ordered[i].MicroPeriodIndex}",
GlspFormulationVariableKeyFactory.
CreateMicroSetupStartKey(plantId,wc.Id,routing.Id,routing.ItemId,ordered[i],from,reset),
"GLSP setup-start occurrence.");}
12 return ValueTask.CompletedTask;
Provides the shared state required while constructing a solver-independent mathematical model.