微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

发行约束GMPL mathprog

如何解决发行约束GMPL mathprog

如果您能帮助我在下面阐明我的问题,我将不胜感激。预先非常感谢。

约束:

subject to linctr19 {i in 1..365}:
sum{j in (i - 1) * 48 + 1..(i * 48)} FlexibleLoadEfficiency * FlexibleLoadIncrease[j] - FlexibleLoadDecrease[j] = 0;

错误

\ AppData \ Local \ Temp \ SolverStudio 2i2iz0tk \ model.txt:139:未定义j 上下文:... cy * FlexibleLoadIncrease [j]-FlexibleLoadDecrease [j ] MathProg模型处理错误

我要实现的目标: 我的索引“ i”代表一天。因此,我总共有365天(即1年)。我希望每天对约束进行评估。 我的FlexibleLoadIncrease和FlexibleLoadDecrease决策变量将分别是由17520个元素组成的数组。这意味着我将在30分钟的时间内代表1个全年。因此每天以48个时间段表示。

回到矛盾之处,我想每天对其进行评估,并且每天我都希望得出48个半小时周期的总和。因此,对于第1天,我将拥有j从1到48的总和,对于第i天= 2,我将拥有从49到96的j的总和,对于第i = 3天,我将拥有d的和j从97到144,依此类推...我正在努力用GMPL表示这一点。

我有另一种语言限制,即Fico XPRESS的“ mosel”语言。在那里,我将其表示为以下内容,并且效果很好:

forall (i in 1.. 365) do
sum (j in (i - 1) * 48 + 1..(i * 48)) (FlexibleLoadEfficiency * FlexibleLoadIncrease(j) - FlexibleLoadDecrease(j)) = 0
sum (j in (i - 1) * 48 + 1..(i * 48)) (FlexibleLoadIncrease(j) - FlexibleLoadEnergyrating(j) * LoadPowerProfile(i)) <= 0
end-do

如何将其翻译为GMPL语法? 非常感谢您的提前帮助。真的很感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。