如何在GAMS中对表格中每一行的总和设置上限?

时间:2019-09-28 21:36:54

标签: gams-math

我有一个称为“等待时间”的表,它包含2组,a和b,以及一个变量y,用于对该表进行迭代。同样,我有一些必须满足的参数:

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中的每个相应元素。

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

因此延迟的第一行之和应小于或等于12,第二行的总和应小于或等于13,依此类推。但是,我得到这些错误:上面相同的方程式”和“将不受控制的设置输入为常数”。我该怎么做?

1 个答案:

答案 0 :(得分:1)

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

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

我以前错误地将行索引(a)设置为我的控制索引。我需要将该索引设置为b,即列索引。这样便可以遍历每行的总和并对其设置上限。