Originally posted by: StevinYao
Hi Olivier,
Thanks for your reply. I tried to use decision expression to overcome the problem. My case is in one production scheduling scenario. The buffer holds the material produced by the upstream machines, and provides materials for the downstream machine.
dexpr float Buffer1[t in Time] = sum(<m,t1> in MachineTime: t1 <= t)
(presenceOf(X[<m,t1>]) * ProductionRateS0
-presenceOf(X2Mode0[t1]) * ProductionRateS1Mode0
-presenceOf(X2Mode1[t1]) * ProductionRateS1Mode1);
where:
ProductionRateS0 is the production rate for all the machines (multiple machines) at first stage;
ProductionRateS1Mode0, is the production rate for the machine at second stage (only one machine) when in mode 0;
ProductionRateS1Mode1, is the production rate for the machine at second stage (only one machine) when in mode 1.
I think this may work. But it may lose some computation efficiency.
My original plan is to use cumulFunction and pulse*productionRate, which seems more effective.
Any other options?
All the Best,
Stevin
#ConstraintProgramming-General#DecisionOptimization