【发布时间】:2018-10-18 18:22:11
【问题描述】:
让我们考虑一个参数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
有没有办法实现我尝试做的事情?
【问题讨论】:
-
可以注意到
A的索引和它的值之间的关系不是线性,这意味着我们不能迭代A并将值乘以B.
标签: gams-math