如何在 GAMS 中设置 table 中每行总和的上限?

How to put an upper bound over the sum of each row in a table in GAMS?

我有一个名为 "latencies" 的 table,它包含 2 个集合 a 和 b,以及一个变量 y 来迭代此 table。同样,我有一些必须满足的参数:

table latencies(a, b)
   b1  b2  b3
a1 1   2   3
a2 4   5   6
a3 7   9   8;

parameter pam1(a) /"a1" 12, "a2" 13, "a3" 14/; 
positive variable y(a,b);

我正在尝试根据参数 pam1 中最多每个相应元素的延迟 table 计算每一行的总和。

equations maxime(a), ...;
maxime(a)..
   sum(a, y(a,b)) =l= pam1(a);

因此延迟中第一行的总和应小于或等于 12,第二行的总和应小于或等于 13,依此类推。但是,我收到以下错误:"Set is under control already" 和 "Uncontrolled set entered as constant" 在上面的相同等式上。我该怎么做?

这是更正的解决方案(有效):

  equations maxime(a), ...;
  maxime(a)..
     sum(b, y(a,b)) =l= pam1(a);

我之前错误地将行索引 (a) 设置为我的控制索引。我需要将该索引设置为 b,即列索引。这就是您如何遍历每行的总和并为其设置上限。