在Pyomo中为多维参数创建方案模型实例

时间:2018-08-14 15:32:17

标签: python optimization pyomo

我正在应用PYOMO软件包的PYSP扩展进行随机优化。对于我的具体模型,我通过回调函数创建了建议的方案。对于每个模型实例,根据相应场景设置参数。对于一维参数,它可以正常工作。但是,现在我尝试为二维参数创建模型实例,但我很难弄清楚它是如何工作的。

参数定义如下。

model.Load_profile = Param(set_sim.tme_dat_stp, vpp.bat_stp, initialize=0, mutable=True)

现在,回调函数应将ldprof中的数据放入参数变量中。

def pysp_instance_creation_callback(scenario_name, node_name):
"""Callback function for scenario instance creation"""
print("Constructing instance for scenario ", scenario_name)
instance = model.clone()
instance.Load_profile.store_values(ldprof[scenario_name])
return instance

ldprof是一个嵌套的字典,其中包含几种情况下的二维数据。

ldprof = defaultdict(dict)
ldprof[1][1] = dict(enumerate(eldem[:, 0] - pvgen[:, 0]))
ldprof[1][2] = dict(enumerate(eldem[:, 0] - pvgen[:, 1]))
ldprof[2][1] = dict(enumerate(eldem[:, 1] - pvgen[:, 0]))
ldprof[2][2] = dict(enumerate(eldem[:, 1] - pvgen[:, 1]))

您有一个主意,我如何使它工作?谢谢您的建议!

问候 菲利普

0 个答案:

没有答案