Давайте рассмотрим параметр A
, который принимает неотрицательный индекс и возвращает целое число.Я хотел бы использовать значение A
в процессе оптимизации, поэтому я создал целочисленную переменную B
.Моя цель - использовать B
в качестве аргумента для A
, чтобы оптимизатор мог выбрать лучший индекс для оптимизации модели.
СледующееКод является примером того, что я пытаюсь сделать:
parameter A(*) "Parameter A" /
0 0,
1 10,
2 30,
3 45,
4 82
/;
display A;
integer variable B "Integer B, used as an index for parameter A";
free variable z "Variable to maximize";
equations profit "Profit";
profit.. z =e= A(B);
model m / all /;
solve m using MIP maximizing z;
Когда я пытаюсь его скомпилировать, GAMS возвращает следующую ошибку в строке, где я определяю уравнение profit
:
Set expected
Есть ли способ достичь того, что я пытаюсь сделать?