我是ampl的新手,我正在尝试建立一个数学模型,我需要写一个双重求和: 600+ (直到j年安装的发电机的总容量) >= (j年的需求量)
容量由xi,j,i表示,表示为生成器,j表示为年。
600+ \sum_{j}(\sum_{i} xi,j)>=demandj
subject to dem{j in YEAR}:600+sum{i in GENERATOR, j in YEAR}x[i,j]>=demand[j];我尝试了这种方法,但它给了我一个错误。请帮我写一个双倍总和。
发布于 2019-12-11 06:07:09
如果我理解了你的需求,你需要的东西是这样的:
subject to dem{j_current in YEAR}:
600 + sum{i in GENERATOR, j_past in YEAR: j_past <= j_current}x[i,j_past]
>= demand[j_current];(将所有xi,j加到本年度)
或者这样:
subject to dem{j_current in YEAR}:
600 + sum{i in GENERATOR}x[i,j_current]
>= demand[j_current];(添加当前年度的所有xi,j)
使用它的方式会得到错误消息,因为该语句创建的每个约束都已经有一个特定值j,因此您不能在约束中迭代不同的j值。
https://stackoverflow.com/questions/59272978
复制相似问题