【重磅】“一招”解决智能算法中不满足“预期”的问题【以微电网优化调度为例】

文摘   教育   2024-07-03 23:39   河北  

1主要内容

之前完整复现了微电网优化调度的模型,具体链接为:【完全复现】基于改进粒子群算法的微电网多目标优化调度,这是一个并不复杂的模型,甚至不借助智能算法,我们也能大致分析出电网、柴油发电机、微型燃气轮机等主体的出力情况,在分析过程中会发现,有时候算法优化出来的结果并不满足我们的“预期”,举个例子,通过下图的优化结果来进一步分析。

上图是模型所有设备出力情况以及负荷曲线,下图是电网交互功率、DE和MT功率以及折算后的电价成本,通过运行结果能够看出,不同电价成本下设备主体出力满足一定的规律性,如电网购电电价低的时刻,从电网购电功率要高一些,DE电价高的时刻(11:00~13:00)DE电价成本偏高,这时候出力有所下降。

但是,仔细观察就会发现,模型优化结果的细节经不住推敲,如电网购电价格低的时候为什么不让其满发,这样才能实现最佳效益?同样的道理,换算电价低的设备出力大、电价高的设备出力小才能满足最低目标——运行成本和环境保护成本最低的要求。

这个问题是什么原因导致的?

  1. 智能算法容易“陷入”局部最优,无法跳出局优就容易形成上述问题。在智能算法优化过程中,其很难得到精确解,但是随着种群数量和迭代次数的增大,可以无限接近最优解。

  2. 智能算法中约束条件的设置也很关键,约束条件设置不合理也会出现上述问题,当多重约束导致模型可行域“畸形”甚至难以寻找可行解的时候,程序会根据罚函数的比重选择性的找到次优解,就会导致最终结果不及“预期”。


这个问题怎么解决?

根据程序调试的经验看,这种问题可以通过梯级罚函数的方式来解决,根据需要捋清预期下的逻辑关系,通过设置分级的罚函数系数和条件,来实现更佳的求解功能。

通过梯级罚函数方式对上述问题代码进行改进,于是得到如下结果。

2程序结果

3下载链接

扫码阅读原文即可跳转程序页面:

想了解更多程序?按照下面教程查看程序目录


电力程序
打造电力专业最新原创程序集散地,免费分享基础编程资料,在这里,带着希望而来,带着知识而归~
 最新文章