将集和索引定义为别名时出错
Error in defining sets and indexes as alias
我正在尝试计算一些点之间的欧氏距离。点的坐标由 x(i) 和 y(i) 表示,索引 i 和 j 是别名。为此,我使用以下代码:
i "Customers";
Alias(i,j);
Parameters
x(i<)/
1 100
2 500
3 200/
y(i<)/
1 150
2 560
3 300/
;
Positive variables
d(i,j)
;
Equations
Eq1
;
Eq1..
d(i,j) =e= power(power(x(i)-x(j),2)+power(y(i)-y(j),2),1/2);
但是出现如下错误:
作为常量输入的不受控集
这是关于行的:
d(i,j) =e= power(power(x(i)-x(j),2)+power(y(i)-y(j),2),1/2);
这可能是什么原因?
对于索引方程,您需要使用索引。所以:
Equations
Eq1(i,j)
;
Eq1(i,j)..
d(i,j) =e= sqrt( sqr(x(i)-x(j))+sqr(y(i)-y(j)) );
查看任何具有方程的 GAMS 模型。我还清理了长度的表达式(这也不正确)。
我正在尝试计算一些点之间的欧氏距离。点的坐标由 x(i) 和 y(i) 表示,索引 i 和 j 是别名。为此,我使用以下代码:
i "Customers";
Alias(i,j);
Parameters
x(i<)/
1 100
2 500
3 200/
y(i<)/
1 150
2 560
3 300/
;
Positive variables
d(i,j)
;
Equations
Eq1
;
Eq1..
d(i,j) =e= power(power(x(i)-x(j),2)+power(y(i)-y(j),2),1/2);
但是出现如下错误:
作为常量输入的不受控集
这是关于行的:
d(i,j) =e= power(power(x(i)-x(j),2)+power(y(i)-y(j),2),1/2);
这可能是什么原因?
对于索引方程,您需要使用索引。所以:
Equations
Eq1(i,j)
;
Eq1(i,j)..
d(i,j) =e= sqrt( sqr(x(i)-x(j))+sqr(y(i)-y(j)) );
查看任何具有方程的 GAMS 模型。我还清理了长度的表达式(这也不正确)。