Pyomo - 如何在约束函数中初始化 t=0 的表达式

Pyomo - how to initialize an expression for t=0 within a constraint function

提问人:kelly_dias_00 提问时间:11/14/2023 更新时间:11/14/2023 访问量:15

问:

在为时间索引模型创建约束时,有没有办法初始化 t=0 的约束表达式而不是使用 if-else?

我当前的代码:def soc_constraint(model, t): if t==1: return model.soc[t] == model.initialSoC - ...else: return model.soc[t] == model.soc[t-1] - ...

希望通过避免 if-else 检查来检查我是否可以进一步优化它。这里的第一个索引 t 定义为 1,但如果它有助于优化,它可以调整为 0。

if-statement 优化 约束 pyomo

评论

0赞 AirSquid 11/14/2023
从您提供的信息来看,您所拥有的都很好。如果你正在构造一系列约束,并且希望以不同的方式处理(构造)第一个约束,则需要进行 if-else 检查。打印您的模型,并确保它看起来像您想要的。如果不是,请在您的问题中发布更多信息,并使用编辑工具将代码格式化为代码以清晰起见。model.pprint()

答: 暂无答案