gams-math - GAMS - 包含设定值的参数
问题描述
我是 GAMS 的新手,我想创建一个参数来返回一组项目而不是实数:
sets
A / A1, A2, A3, A4, A5 /
B / B1, B2, B3, B4, B5 /;
parameters
C(A)
/
A1 B5,
A2 B4,
A3 B3,
A4 B2,
A5 B1
/
D(B)
/
B1 A3,
B2 A4,
B3 A2,
B4 A1,
B5 A5
/;
display C, D;
当我尝试编译此代码时,我收到以下错误:Real number expected
.
我在谷歌上搜索是否有办法实现我想要的,我找到了Acronym
允许使用非数字值的数据类型。但是,Acronym
与 不同,an 不能用作参数的索引set
。我试图同时拥有acronym
相同set
的值(例如用A
andSetA
和AcroA
by B
andSetB
替换AcroB
),但我没有找到任何关于如何将值从 a 放入set
an 的信息acronym
,反之亦然。
有没有办法实现我想做的事情,有或没有Acronyms
?
解决方案
我相信,首字母缩略词在这里不会有用。我不知道您打算如何使用 C 和 D,但我认为您可能希望将它们定义为二维集,而不是像这样:
sets
A / A1, A2, A3, A4, A5 /
B / B1, B2, B3, B4, B5 /;
Set
C(A,B)
/
A1. B5,
A2. B4,
A3. B3,
A4. B2,
A5. B1
/
D(B,A)
/
B1. A3,
B2. A4,
B3. A2,
B4. A1,
B5. A5
/;
display C, D;
推荐阅读
- javascript - 将数组转换为单个url参数字符串
- javascript - 如何使用横向卷轴游戏中的方法从数组中删除元素?
- python - 当内部和内部通信器合并时,使用 Spawn() 从 python 生成的 Fortran 子(或 C++ 或 python)进程不会断开连接
- ruby-on-rails - 使用 ruby 脚本将 git repo 克隆到我的系统后,如何存储文件名?
- three.js - 如何避免 DragControl 和 OrbitControl 在 Three.js 中同时工作?
- java - 在 Spark 中使用 Scala 内核
- go - 如何修复 Golang 中的 %!(EXTRA int=3) 错误?
- java - 无法将我的数据保存到 Android 中的 firebase
- screeps - 如何在 Screeps 的另一个房间建造建筑工地?
- angular - Angular 客户端 - ng 服务于卡住的构建,没有任何可能失败的日志