目录
摘要:
本文微电网模型:
多微电网优化调度模型:
多目标粒子群(MOPSO)求解算法:
本文代码运行结果:
本文Matlab代码分享:
首先,本文对分布式电源的数学模型进行了详细的分析,包括可再生能源的发电模型和输出功率模型,可控能源的燃料成本模型,储能装置和电动汽车的充放电模型等,为后续的建模工作打下了基础。其次,对传统电网的集中调度模式和新型电网的源荷互动调度模式进行了对比,将多代理系统的分层控制结构应用于多微网系统中,并在此基础上建立了以经济效益最大为目标函数的数学模型,把微电网看成一个整体参与配电网优化调度,并且在包含两个微电网的配电网系统中进行了算例分析,结果表明微网和配电网运行的经济性都得到提高。最后,针对峰平谷三个时段的不同电价提出了各时段的多微网联合协调调度策略,并根据该调度策略建立数学模型,以多微电网系统总运行成本最小为目标函数进行优化。为了验证优化调度策略和模型的有效性,进行了算例分析,比较了单个微电网独立并网和多微电网联合协调并网情况,优化结果表明本文所提出的调度策略和模型不但能够降低多微网系统的运行成本,而且在一定程度上起到了削峰填谷的作用。
本文以两个互联微电网为例子,使用多目标粒子群算法进行联合调度优化求解最优运行计划,本文代码注释详细,附带本文模型的说明文档,方便您学习改进。
以含有光伏(PV)、风机 (W)、柴油发电机(de)、燃料电池(fc)、蓄电池(bat)的子微网1、子微网2 构成微网群进行算例分析, 微网群算例系统拓扑结构如下图。
微网群采用并联式结构,其中子网1中分布式电源包括:PV1, W1,fc1,bat1;子网2中分布式电源包括PV2,W2,de2,bat2。微网群与配电网之间的公共连接点群PCC保持闭合,网PCC1与网PCC2也均保持闭合。微网1,2和配电网之间可存在功率交换Pbuy1,Psell1,Pbuy2,Psell2,微网1与微网2之间可存在功率交换Pex1,Pex2。
本文建立的微网群以多目标协调优化为目的,其中各个子微网优化目标与总微网群的优化目标一致。微网群优化调度周期取一天,以1h作为一个调度时段,全天共分为24个时段,且算例中采用分时电价a1,a2,b1,b2的方式。
本程序的实现的微电网优化调度目标函数如下:
目标函数(3个目标函数C1,C2,C3):目标优化minC=w1c1+w2c2+w3c3(w1.w2.w3为权重值)
目标1:综合发电成本最低C1
目标2:污染物对环境影响成本最低C2
目标3:蓄电池寿命损耗成本最小C3
近年来,基于启发式的多目标优化技术得到了很大的发展,研究表明该技术比经典方法更实用和高效。有代表性的多目标优化算法主要有NSGA、NSGA-II、SPEA、SPEA2、PAES和PESA等。粒子群优化(PSO)算法是一种模拟社会行为的、基于群体智能的进化技术,以其独特的搜索机理、出色的收敛性能、方便的计算机实现,在工程优化领域得到了广泛的应用,多目标PSO(MOPSO)算法应用到了不同的优化领域,但存在计算复杂度高、通用性低、收敛性不好等缺点。
多目标粒子群(MOPSO)算法是由CarlosA. Coello Coello等在2004年提出来的,目的是将原来只能用在单目标上的粒子群算法(PSO)应用于多目标上。我们知道原来的单目标PSO流程很简单:
-->初始化粒子位置(一般都是随机生成均匀分布)
-->计算适应度值(一般是目标函数值-优化的对象)
-->初始化历史最优pbest为其本身和找出全局最优gbest
-->根据位置和速度公式进行位置和速度的更新
-->重新计算适应度
-->根据适应度更新历史最优pbest和全局最优gbest
-->收敛或者达到最大迭代次数则退出算法
速度的更新公式如下:
等式右边有三部分组成。第一部分是惯性量,是延续粒子上一次运动的矢量;第二部分是个体认知量,是向个体历史最优位置运动的量;第三部分是社会认知量,是粒子向全局最优位置运动的量。
有了速度,则位置更新自然出来了:
以上是对于多目标PSO算法的介绍。运用到多目标上去的话,出现的问题有以下几点:
如何选择pbest。我们知道对于单目标优化来说选择pbest,只需要对比一下就可以选择出哪个较优。但是对于多目标来说两个粒子的对比,并不能对比出哪个好一些。如果粒子的每个目标都要好的话,则该粒子更优。若有些更好,有些更差的话,就无法严格的说哪个好些,哪个差一些。
如何选择gbest。我们知道对于单目标在种群中只有一个最优的个体。而对于多目标来说,最优的个体有很多个。而对PSO来说,每个粒子只能选择一个作为最优的个体(领带者)。该如何选择呢?
MOPSO对于第一个问题的做法是在不能严格对比出哪个好一些时随机选择一个其中一个作为历史最优。对于第二个问题,MOPSO则在最优集里面(存档中)根据拥挤程度选择一个领导者。尽量选择不那么密集位置的粒子(在这里用到了网格法)。MOPSO在选择领导者和对存档(也可以说是pareto临时最优断面)进行更新的时候应用了自适应网格法。