Я пытаюсь оптимизировать энергопотребление потребителя в течение определенного периода времени (шаг за шагом) с помощью Google OR Tools CP-SAT Solver.
Проблема заключается в том, что вывод потребитель зависит от соотношения потребляемого количества энергии и максимального потребления энергии. (эффективность)
Возможность рассчитать соотношение для каждого временного шага
model.Add(ratio[time] == LinearExpr.Prod(Power[time], (int)(1 / maxPowerValue) * 100));
Теперь мне нужно прочитать общее количество энергии для отношения (между 0. ..100), обнаружив себя в
IntVarArray[time][ratio-value]
Как и ожидалось, невозможно просто ввести
ratio[time]
для коэффициент-индекс.
Полученное максимальное количество энергии должно затем действовать как новое ограничение (верхняя граница) для потребляемой мощности. (Можно ли таким образом ограничить круговое движение?)
Кто-нибудь сталкивался с подобной проблемой или вы можете направить меня в правильном направлении с этим?
Приветствия