【问题标题】:Error in defining sets and indexes as alias将集合和索引定义为别名时出错
【发布时间】:2021-06-18 15:54:57
【问题描述】:

我正在尝试计算一些点之间的欧几里得距离。点的坐标用 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);

这可能是什么原因?

【问题讨论】:

    标签: optimization gams-math


    【解决方案1】:

    对于索引方程,您需要使用索引。所以:

    Equations
       Eq1(i,j)
    ;
    
    Eq1(i,j)..
       d(i,j) =e= sqrt( sqr(x(i)-x(j))+sqr(y(i)-y(j)) );
    

    查看任何具有方程的 GAMS 模型。我还清理了长度的表达式(这也不正确)。

    【讨论】:

      猜你喜欢
      • 2020-11-23
      • 1970-01-01
      • 2020-06-14
      • 2014-09-23
      • 2013-09-04
      • 2020-11-23
      • 2021-03-19
      • 2020-12-03
      • 2011-04-23
      相关资源
      最近更新 更多