1主要内容
之前完整复现了微电网优化调度的模型,具体链接为:【完全复现】基于改进粒子群算法的微电网多目标优化调度,这是一个并不复杂的模型,甚至不借助智能算法,我们也能大致分析出电网、柴油发电机、微型燃气轮机等主体的出力情况,在分析过程中会发现,有时候算法优化出来的结果并不满足我们的“预期”,举个例子,通过下图的优化结果来进一步分析。
上图是模型所有设备出力情况以及负荷曲线,下图是电网交互功率、DE和MT功率以及折算后的电价成本,通过运行结果能够看出,不同电价成本下设备主体出力满足一定的规律性,如电网购电电价低的时刻,从电网购电功率要高一些,DE电价高的时刻(11:00~13:00)DE电价成本偏高,这时候出力有所下降。
但是,仔细观察就会发现,模型优化结果的细节经不住推敲,如电网购电价格低的时候为什么不让其满发,这样才能实现最佳效益?同样的道理,换算电价低的设备出力大、电价高的设备出力小才能满足最低目标——运行成本和环境保护成本最低的要求。
这个问题是什么原因导致的?
智能算法容易“陷入”局部最优,无法跳出局优就容易形成上述问题。在智能算法优化过程中,其很难得到精确解,但是随着种群数量和迭代次数的增大,可以无限接近最优解。
智能算法中约束条件的设置也很关键,约束条件设置不合理也会出现上述问题,当多重约束导致模型可行域“畸形”甚至难以寻找可行解的时候,程序会根据罚函数的比重选择性的找到次优解,就会导致最终结果不及“预期”。
这个问题怎么解决?
根据程序调试的经验看,这种问题可以通过梯级罚函数的方式来解决,根据需要捋清预期下的逻辑关系,通过设置分级的罚函数系数和条件,来实现更佳的求解功能。
通过梯级罚函数方式对上述问题代码进行改进,于是得到如下结果。
2程序结果
3下载链接
扫码或阅读原文即可跳转程序页面:
想了解更多程序?按照下面教程查看程序目录!