Предшествующий операнд> имеет неверный тип
У меня есть эта переменная:
var produced{L, M} >= 0;
Я пытаюсь найти сколько значений внутри produced
больше 0:
subject to fee_calc {m in M} :
fee[m] = sum {l in L} (if produced[l,m] > 0 then 1 else 0);
Но он выдает эту ошибку: "операнд, предшествующий> имеет недопустимый тип"...
Как мне это решить?
Спасибо
1 ответ
AMPL поддерживает переменные в if-then-else
заявления и в выражениях, включающих строгие реляционные операторы, такие как >
и вы можете решить такие проблемы с помощью решателя программирования ограничений. См. "ЛОГИКА" И ПРОДЛЕННОЕ ПРОГРАММИРОВАНИЕ ПРОДЛЕНИЙ для получения более подробной информации.
Что касается ошибки, это, вероятно, вызвано ограничениями GLPK, который поддерживает только подмножество функций AMPL.