GNU MathProg:符号集与整数设定
问题描述:
我的简化数据在GNU MathProg设定为如下,Verts
是用于顶点一组索引和coords
是这些顶点的坐标的表:GNU MathProg:符号集与整数设定
data;
set Indices := X Y;
set Verts := 1 2 3 4;
param Coords : X Y :=
1 1.2 0.3
2 4.2 13.0
3 1.5 1.0
4 0.5 0.8;
end;
这工作,但如果我取代绿党的定义如下:
set Verts := (1..4);
编译成功在这个阶段,但现在Verts
不能索引参数表Coords
。具体而言,glpsol
返回Coords[1,X] out of domain
。
直观上,我会假定使用简写的定义定义了一个整数集,而对于索引我需要某种符号,“字符串”类型。 我的直觉是否正确?如果是这样,如果我没有4,但是表中有10000个元素,我应该怎么写set Verts := ?;
?
答
设置表达式如..
是not recognized in the AMPL (or MathProg, which is a subset of AMPL) data mode。您应该明确列出所有集合的成员或移动
set Verts := 1..4;
到模型。