【发布时间】:2020-09-26 14:57:38
【问题描述】:
我正在尝试在我的 pyomo 模型中引入这个约束 [1
我定义了一个随时间变化的索引集,我想优化下面的相应能量变量
model.grid_time = Set(initialize=range(0, 23)))
model.charging_energy = Var(model.grid_time, initialize=0)
我的约束定义如下:
model.limits = ConstraintList()
for t in model.grid_time:
model.limits.add(sum(model.charging_energy[t] for t in model.grid >= energy_demand.at[t,"total_energy_demand"])
这些代码行的问题在于,我正在对整个索引集 model.grid_time 进行求和,而不仅仅是 t。我想我需要第二个变量索引集(替换for t in model.grid),但是在如何创建变量索引集之后我搜索不成功..
如果有任何帮助或评论,我将不胜感激!
【问题讨论】:
-
总和在数学上是荒谬的。你不能将
t从t=0加到t=t(????)。 -
同意。所写的约束没有意义。
-
你说得对,正确的公式是:∑_(????=0)^????▒????_????^????ℎ ≥? ???_(????,??????)^????????????
标签: python variables optimization indexing pyomo