我正在将AIMMS中的模型转换为minizinc。在AIMMS中,我的变量定义为x, index domain (k,i)
,其中i,s,t是设置小时的索引
x的定义带有索引i,s,t是:
sum((s,t) | (s <= i) and (t >= i), Pick(s,k,t) + OverPick(s,k,t))
我不确定如何在minizinc中编写此变量。
Pick
和 OverPick
中项目总和的leinizinc语法,对于times s
和 t
之间的给定区域 k
是:
var int: X = sum([Pick[i,k] + OverPick[i,k] | i in s..t]);
这假定Pick[i,k]
或OverPick[i,k]
在时间k
中包含i
的拾取活动。
可以在数组综合的文档中找到有关构建这些类型的有关陈述的更多信息