在 GAMS 中设置条件

Set conditions in GAMS

我有一组节点 i 并创建了一个别名 (i,j)。现在我有一个参数 c(i,j),我希望将 i 元素显着地映射到 j。例如, set i /a,b,c/ ; alias (i,j) ; c(i,j) /#i.#j/ ;

点运算符映射所有我不想包含的元素,例如 a.a、b.b、c.c。如何编写条件,以便仅考虑 a.b、a.c、b.c?

谢谢

我不太确定你想做什么,但以下代码中的两个作业之一应该可以满足你的需要:

set i /a,b,c/ ;
alias (i,j) ;
set c(i,j);

c(i,j) = not sameas(i,j);
display c;
$ontext
Results in:
----      6 SET c

            a           b           c

a                     YES         YES
b         YES                     YES
c         YES         YES
$offtext

c(i,j) = ord(i) < ord(j);
display c;
$ontext
Results in:
----     27 SET c

            b           c

a         YES         YES
b                     YES
$offtext

最好的, 卢茨