多态蚁群-细菌觅食算法实现部分遮蔽下光伏系统最大功率跟踪

2022-01-21 07:55李云凤雷勇杜佳耘刘晖
现代电力 2022年1期
关键词:信息量光照局部

李云凤,雷勇,杜佳耘,刘晖

(四川大学电气工程学院,四川省成都市 610065)

0 引言

实际应用中,由于云层、灰尘及建筑物的遮挡,光伏(photovoltaic, PV)阵列暴露于不同的光照强度和温度偏差中,即部分遮蔽条件(partial shading condition, PSC)下。此时,PV的功率–电压曲线将呈现多峰特性[1]。常规最大功率点跟踪(maximum power point tracking, MPPT)容易陷入局部最大功率点(local maximum power point, LMPP),导致PV系统的高功率损耗。因此,PSC下的MPPT对于维持PV系统的高效运行至关重要[2-3]。

为实现PSC下的MPPT,国内外研究人员在拓扑结构和算法上做了大量尝试[4]。采用阵列拓扑结构优化的主要思路是根据阴影情况,将发生遮挡的电池组件进行补偿或阵列重构[5]。这种思路有效地解决了光伏阵列输出特性曲线发生畸形的问题,但实现起来需要增加额外的硬件电路,系统成本高,且控制较为复杂。根据光伏阵列的输出特性,对控制算法进行优化不用添加大量硬件,受到国内外学者的广泛关注。基于传统MPPT算法的复合型算法寻优时间较长,寻优精度受步长影响较大[6];模糊控制算法对控制器的要求较高,实际应用较少[7];基于大数据的预测算法,其目标函数可能因训练数据不足而陷入局部极值点,对突发性的阴影遮挡考虑较少,且运算量较大[8];基于生物行为的仿生算法因其较好的寻优性能成为目前最受欢迎的算法。

近年来,国内外学者提出许多仿生算法的MPPT控制策略。Li H[9]等人提出总体分布粒子群算法,该算法将可能的峰值电压设置为粒子初始位置,确保粒子群算法(particle swarm optimization, PSO)只需在很小的搜索区域内快速有效地找到全局最大功率点(global maximum power point, GMPP)。但因PSO的固有随机性,该算法仍有陷入局部峰值点的风险,且寻优过程会造成较大电压波动,对系统稳定性有一定影响。Yang B[10]等人采用改进樽海鞘群算法,并将原始樽海鞘扩展为具有多个独立的樽海鞘链,以提高算法的全局开发和局部探索能力,但该算法求解精度不高,并且收敛缓慢。Padmanaban S[11]等人模拟领导者、侦察者和追随者提出改进的人工蜂群算法,但其收敛速度过慢、局部搜索能力较弱。Titri S[12]等人基于新信息素更新策略的蚁群优化算法设计了MPPT控制器,该算法具有较高精度和鲁棒性,但同样存在局部搜索能力较弱,收敛时间较长等问题。

受蚁群算法(ant colony optimization, ACO)和细菌觅食算法(bacterial foraging optimization algorithm, BFOA)的启发,本文提出PSC下改进的MPPT算法。ACO由信息素指导寻优,其全局开发能力较强[13]。BFOA中的趋化使得BFOA具有较强的局部搜索能力[14]。因此,本文将这两种算法融合实现优势互补,同时加入信息素扩散机制进一步提高算法的全局开发能力。全局开发和局部探索对于仿生算法至关重要,合理平衡2者的竞争关系可以有效增加收敛速度,减少寻优时间,提高跟踪精度,然而已有研究算法并未对该问题进行讨论及优化[15]。为平衡算法全局与局部,本文引入多态蚁群概念模拟更加真实的蚁群系统。基于以上讨论,本文提出多态蚁群–细菌觅食算法(polymorphic ant colony - bacterial foraging algorithm, PACO-BFOA)以实现在PSC下光伏系统的GMPP跟踪,并将扰动观察法(perturb and observe, P&O)、ACO和BFOA进行仿真对比分析,结果证明了PACO-BFOA算法的有效性和优良性能。

1 部分遮蔽下光伏系统模型

1.1 光伏电池模型

光伏电池由一个电流源Iph、并联二极管、等效串联电阻Rs和等效旁路电阻Rp组成。通常将光伏电池串联和并联,得到能提供期望功率的光伏阵列。光伏电池输出伏安特性[16]

式中:I与U为光伏阵列的输出电流和电压;光伏电池的光生电流Iph如式(2)所示;二极管反向饱和电流I0如式(3)所示;电子电荷q= 1.602 ×10-19C;二极管品质因数A∈(1, 2);玻尔兹曼常数k= 1.38 × 10-23J/K;T为绝对温度;Rs一般小于1;Rp通常很大,故旁路电流Ip一般忽略不计[17]。

式中:Tref为光伏电池额定运行温度;Tc为光伏电池实际工作温度;s为光伏电池所处的光照强度;Isc为光伏电池短路电流;ki为电流变化温度系数。

式中:Eg= 1.12 eV为半导体能级间隙;I0S为额定温度和光照强度下二极管反向饱和电流。

由式(1)—(3)可以看出,光伏电池的运行高度依赖于温度和光照强度。

1.2 部分遮蔽条件

实际运行中,光伏阵列可能处于PSC下。此时,光伏阵列中部分电池将出现反偏,它表现为负载消耗其他电池所产生的电能,并将所消耗的电能转化为热能,产生升温现象,这种热量的长时间积累会损坏单体电池或者封装材料,造成光伏组件永久性损坏,这种现象即为热斑现象[18]。

为防止该现象对光伏系统造成的损害,通常在多个电池两端反向并联一个旁路二极管。同时,每个光伏组件串末端连接一个阻断二极管,以防止并联光伏组件串之间的电压失配引起反向电流[19]。二极管能避免热斑效应,但也不可避免地改变光伏特性曲线。多个组件串并联工作在PSC,得到图1(b)所示的多峰值曲线,不同于均匀辐照温度下图1(a)的单峰曲线。因此,为最小化系统功率损失和组件的损害,光伏系统应尽量运行于GMPP。

2 多态蚁群-细菌觅食算法

仿生学家对蚂蚁长期研究,发现整个蚁群系统能协同工作发挥出超越个体的智能。蚁群算法中,每只蚂蚁在运动时会根据路径长短释放出相应浓度的信息素,后面经过该路口的蚂蚁会以较大概率选择信息量更大的路径,如此便形成了正反馈机制。将功率作为自适应函数使用ACO实现PSC下GMPP的跟踪,随着迭代次数增加,最优点附近的蚂蚁数量越来越多,最终寻得最大功率点[20]。

PACO-BFOA在ACO原理上引入了信息扩散机制使蚁群系统间信息传递更充分,模拟多态蚁群来平衡局部和全局性能,并由细菌觅食趋化行为指导蚂蚁的局部探索,进一步提高了算法的收敛稳定性和寻优能力。PACO-BFOA算法实现如图2所示。

2.1 信息素扩散机制

蚁群系统中加入信息素扩散机制后表现为在蚂蚁M一定范围内的其他蚂蚁能够感知M分泌扩散的信息素,并参考M的信息量而选择一条新轨迹,该轨迹与M原轨迹存在或大或小距离[21]。当扩散的信息素越多时,其他蚂蚁所受影响越大。

2.1.1 信息素扩散原理

以图3路径寻优实例说明信息素扩散原理[22]。图3中,从c到f有cdef和cbaf两条路径,假使cd和cb初始信息量相同。由于cd短于cb,M更可能在下一步移动到d。而若此前已有蚂蚁M1从b移动到a(ba距离很短),M1分泌的信息素会进行扩散,cb与cd上的信息量相比,当cb信息素多到一定程度时,M将更可能选择b为下一步目的地。可以看出信息素扩散机制可以有效减少寻优干扰。

2.1.2 信息素扩散模型

在ACO中加入信息素扩散机制后,信息量扩散在空间的浓度与距离关系大致服从高斯分布[22]。其中,距离信源越远,扩散的信息素浓度越低,单只蚂蚁的扩散模型如式(4)所示。

式中:x为与信源的距离;a表示信源分泌的信息量;b表示信源位置;c为标准方差,表征信息素扩散能力。

假使信源b初始信息量为a1,M经过b之后产生大小为a2的信息素,所有路径的信息量用y表示。则在M经过b后,所有有关路径上的信息量如式(5)—(7)所示。

式中:yk表示第k只蚂蚁移动之后所有路径的信息量;yk+1表示第k+1只蚂蚁运动之后所有路径的信息量;ρ表示信息素挥发系数,取值范围为ρ∈[0,1]。

传统ACO中,蚂蚁的每一步只改变其当前经过路径的信息量;而加入信息素扩散的算法模型中,会或大或小地改变其他路径的信息量。该模型更贴近蚁群信息系统,提高了蚁群系统内部协作能力,增强了蚁群算法的全局开发能力。

2.2 多态蚁群

真实蚁群系统中的蚂蚁各司其职以实现寻优。然而,传统单一的蚁群算法没有考虑蚂蚁间的动作差异,忽略蚁群系统的复杂性,所有的蚂蚁进行同一种任务无法最大化蚁群系统的协作能力。

信息量大的地方容易出现最优解,故产生信息素较多的侦察蚁主要通过趋化负责局域侦察;产生信息素较少的搜索蚁,主要负责全局探索[23]。因此PACO-BFOA主要由侦察蚁和搜索蚁平衡局部探索与全局开发。

2.3 细菌觅食实现局部探索

BFOA中每个细菌代表一个解,存在趋化、繁殖和迁移3种基本行为[24]。趋化使得细菌具有良好的局部探索能力,其包括翻滚和游动。本文中,当前点信息素小于状态转移因子P0时,蚂蚁模拟细菌朝任意方向φ(j)游动,定义该方向为翻滚后的前进方向;游动对翻滚的方向进行评估,若翻滚之后适应值得到了提高,则保持原翻滚的前进方向,否则再次进行翻滚[14]。蚂蚁趋化操作如式(8)所示。

式中:j代表趋化次数;θ为蚂蚁所在位置;S(j)为游动步长;λj为游动方向。

为保证算法在搜索前期具有较高的搜索速度;搜索后期具有更好的收敛性能,同时避免出现振荡的现象,本文采用自适应步长来平衡局部搜索的快速性和收敛性,如式(10)所示。

式中:Smax为初始步长;I为最大迭代次数。

从式(10)可以看出,随着迭代次数的增加,游动步长也相应减少,蚂蚁逐渐寻得最优位置。

3 PACO-BFOA的光伏MPPT设计

为实现光伏系统的最大功率跟踪输出,将PV系统的功率PPV作为适应度函数。在外部条件确定的情况下,PV系统输出功率主要由电压决定。PV系统功能目标函数如式(11)所示。

式中:VPV代表光伏面板输出电压;IPV是面板输出电流;T为面板温度;G表示面板辐照度。

图4为PSC下使用PACO-BFOA实现光伏系统MPPT的结构。PACO-BFOA功率跟踪器输入为光伏板电压,输出为占空比指令,由脉宽调制(pulse width modulation, PWM)模块得到开关信号,控制绝缘栅双极型晶体管(insulated gate bipolar transistor, IGBT)通断,使系统运行于最大功率点。

使用PACO-BFOA实现PSC下光伏系统MPPT流程如图5所示。图5中:i为当前迭代次数;I为算法最大迭代次数;P0为状态转移因子。为了提高算法搜索快速性,需要对信息素分布有更为全面地了解,因此在可行域内均匀初始化蚁群:

4 仿真结果

为对比P&O、ACO、BFOA和PACO-BFOA算法的在线寻优性能,本文实现了4种算法的MPPT仿真,并在PSC条件下,通过光照恒定、光照突变和光照缓慢变化3个算例对各算法进行分析研究。表1中为光伏系统仿真参数。其中,电压电流均为光伏组件在额定光照、温度下的数值。表2给出了PACO-BFOA参数,所有启发式算法的采样间隔选择为0.006 s。

表1 光伏系统仿真参数Table 1 Simulation parameters of PV system

表2 PACO-BFOA参数Table 2 Parameters of PACO-BFOA

4.1 光照恒定

工作温度25℃,光伏组件分别处于1000、800、600和400 W/m2的光照幅度。P&O、ACO、BFOA和PACO-BFOA的MPPT作用于光伏系统,系统从0 s开始工作,得到图6电压、电流和功率曲线。

表3为图6(c)中所标志关键点的当前时间点和对应功率值。根据图6(c)和表3中功率列,PSC条件下,P&O算法陷入了局部最大功率点87.2 W,无法达到全局最大功率点。在线寻优过程中,图6(b)中ACO电流出现了较大的冲击;BFOA算法所耗时间较长;相比与其他启发式算法,PACO-BFOA寻优过程中振荡更小,并且由表3时间列得知其在0.1133 s时迅速收敛至GMPP。

表3 光照恒定下各算法功率关键点Table 3 Power key points of each algorithm under constant illumination

4.2 光照突变

保持25℃温度不变,0~0.5 s光照强度为1000、800、600和400 W/m2;在0.5 s,辐照度阶跃变化为900、620、620和400 W/m2,此时最大功率点已经发生变化。4种算法得到电压、电流与功率如图7所示。表4为图7(c)和(d)中所表示关键点的当前时间点和对应功率值。

根据图7(c),比较表4中第1行和第2行功率得出当光照幅度发生突变,P&O依然处于局部最大功率点60.7 W。3种启发式算法则均能较好跟踪到GMPP,其中PACO-BFOA能够更快更加平稳地再次寻得GMMP。由图7(d),比较表4中第5行与3、4行,光照幅度突变后,PACOBFOA跌落功率仅为58 W,且其他两种启发式算法再次寻优则需要更多时间。此外,由图7(b)看出ACO和BFOA会产生更大程度的电流冲击。

表4 光照突变下各算法功率关键点Table 4 Power key points of each algorithm under irradiance mutation

4.3 光照缓慢变化

为模拟自然界天气的缓慢变化,仿真时间由初始t= 0.5 s到t= 1.5 s,太阳辐照度从1000、800、600和400 W/m2渐变为980、780、580和380 W/m2。PACO-BFOA、ACO、BFOA和P&O对应的MPPT控制器运行特性曲线如图8所示。

表5为图8(c)中所标志关键点的当前时间点和对应功率值。根据图8(c),尽管P&O拥有较快寻优速度,但其不可避免会陷入LMPP。当检测到环境发生变化并再次寻优过程中,图8(b)得出ACO依旧会产生相对强烈的电流冲击。根据表5功率列及图8(c),相比于ACO和BFOA,PACOBFOA再次寻优耗时更少,并且功率跌落较小为127.8 W;相较于BFPA,PACO-BFOA能更快检测到环境发生了变化。

表5 光照缓慢变化下各算法功率关键点Table 5 Power key points of each algorithm under slowly varying illumination

4.4 收敛时间统计

为直观说明PACO-BFOA良好的寻优性能,统计表6为3种仿生算法在以上3个仿真条件下在线寻优的收敛时间(最优时间加粗)。由表6数据可以看出当光照变化,PACO-BFOA算法收敛至最优值所需时间相对来说是最短的。在光照缓慢变化第2次寻优中,PACO-BFOA与ACO所需时间都很短,这得益于算法的信息素辅助功能。在光照突变第2次寻优中,ACO耗时较长,这是因为当前情况下,最大功率点发生了更大的变化,此前累积的信息素反映当前路径信息的真实度不够;而引入信息素扩散机制的PACO-BFOA能更快对当前路径信息素做出调整,并再次寻得GMPP。

表6 3种仿生算法收敛时间Table 6 Convergence time of three bionic algorithms

4.5 功率振荡评估

为评估不同算法下光伏系统的功率响应振荡情况,引入2个功率指标[1]

式中:Δpavg和Δpmax分别表征功率曲线的平均振荡和最大振荡;t为当前运行时间;T为系统总运行时间;为算法迭代过程中光伏阵列输出的功率均值。

表7给出了3种仿生算法在3个仿真条件下功率振荡的统计结果(最优功率加粗)。可以看出,相比其他3种仿生算法,采用PACO-BFOA算法功率振荡较小,系统冲击更小。当光照缓慢变化时,最大功率点位置变化不大,PACO-BFOA与BFOA算法下功率振荡都很小,但由图8(c)可以看出PACO-BFOA能更快检测到环境变化并寻得GMPP,灵敏度更高。

表7 3种仿生算法功率振荡情况Table 7 Power oscillation of three bionic algorithms

5 结论

本文提出的多态蚁群-细菌觅食算法可以实现PSC下光伏系统最大功率跟踪,并具有以下特点:

1)在原蚁群算法基础上增加信息素扩散机制以增强算法的全局开发能力;

2)将细菌觅食的趋化行为赋予蚂蚁使得算法的局部探索性能更优,同时自适应步长平衡了探索的快速性和收敛性;

3)多态蚁群概念的引入让全局开发和局部探索能力得以平衡。

将PACO-BFOA与P&O、ACO、BFOA在3种条件下仿真对比分析,得到以下结论:

1)相比于P&O,PACO-BFOA能在PSC下寻得GMPP;

2)相比于ACO和BFOA,PACO-BFOA寻优时间更短;

3)寻优过程中,PACO-BFOA振荡更小,对系统产生的电流冲击更小;

4)光照缓慢变化过程中,PACO-BFOA算法体现出较高的灵敏度。

猜你喜欢
信息量光照局部
肉种鸡的光照不应性对养殖生产的不良影响分析
日常的神性:局部(随笔)
重磅!广东省发文,全面放开放宽落户限制、加大住房供应……信息量巨大!
爨体兰亭集序(局部)
凡·高《夜晚露天咖啡座》局部[荷兰]
隐蔽的力量
丁学军作品
走出初中思想品德课的困扰探讨
水禽舍的光照及其控制
让多媒体技术在语文课堂飞扬