当前位置:首页 期刊杂志

基于改进和声搜索算法的发电机组动态经济调度

时间:2024-08-31

赵国强,李天润

(辽宁工程技术大学 研究生院,辽宁 兴城 125100)

发电机组动态经济调度要在每个时段内规划发电机组的发电出力,旨在满足一些实际约束条件,同时节约用于发电的燃料成本。该问题需要满足输出功率容限、输出功率变化率和功率供需平衡约束,其中前两种为不等式约束,第3 种为等式约束,通常等式约束要比不等式约束的处理难度更大。只有在满足所有约束的前提下,讨论如何降低燃料成本才是有意义的。文献[1]提出一种有效的约束修复方法,该方法依次对上述3 种约束条件进行处理,且仅使用较少的运行时间就找到了发电机组动态经济调度问题的可行解。

在满足所有约束条件的情况下,寻求燃料成本最小化是维持经济良性发展的有效途径。群体智能优化算法是实现该目标的一种有效方法。目前,已经有一些算法用于发电机组动态经济调度问题。文献[2]采用一种改进的实数编码遗传算法解决发电机组动态经济调度问题。该算法具有确定全局最优解的能力,收敛速度快,求解质量高。在2 个测试系统和15 个基准函数上验证了该方法的有效性。通过比较发现,该改进算法具有较好的求解能力。文献[3]使用一种基于生物地理学与脑风暴优化的混合方法求解发电机组动态经济调度问题。该混合算法具有较强的信息共享及全局搜索能力,且能有效避免早熟。通过4 个带有阀点效应的非凸基准测试例子与1 个实际的省级电力系统例子,综合证明了该混合算法具有良好的优化性能及较强的竞争性。文献[4]通过结合改进的裸骨粒子群优化算法与方向混沌搜索算法,提出一种有效的混合粒子群优化算法,并将其用于求解具有阀点效应的发电机组动态经济调度问题。裸骨粒子群优化算法本质上属于一种基本的搜索算法,可以很好地执行最优区域的搜索,而方向混沌搜索算法则作为一种微调算子来定位最优解。在混合算法中引入自适应干扰因子和新的遗传算子以提高算法的搜索能力,并通过引入约束处理机制来修正不可行粒子。分别使用5、10、30 个机组单元测试例子验证该算法的有效性及相比于其他算法的优势。除了上述方法,还有一些性能出色的群体智能优化算法被用于求解发电机组动态经济调度问题中,如基于混沌序列的差分进化算法[5]、基于时变加速系数的改进粒子群优化算法[6]、含有两个子种群的混合遗传差分进化算法[7]、基于帐篷模型的差分进化算法[8]、基于混沌差分蜂群优化算法[9]和基于混合粒子群算法[10]等。

1 问题模型

发电机组动态经济调度包含1 个燃料成本的目标函数及3种约束条件。目标函数表示为

式中,C总表示总的燃料成本,单位为MW;Pt,k表示第t(1 ≤t≤T)时段第k(1 ≤k≤K)个发电机组单元的输出功率;C(Pt,k)表示产生输出功率Pt,k所花销的燃料成本,分为简化与复杂两种表达式,简化形式为二次函数形式,即:

式中,ak、bk和ck为二次函数系数。

另外,复杂形式在简化形式的基础上增加了正弦项,是由阀点效应引起的,表示为

式中,ak、bk和ck的意义与简化形式相同;ek和fk为正弦项系数;Pk,min为第k个发电机组单元输出功率的最低容限值。

上述目标函数越小越好,但受到了3 种约束条件的限制,分别是输出功率容限、输出功率变化率及功率供需平衡。

1)输出功率容限约束

式中,Pk,max和Pk,min分别为第k台发电机组输出功率的最高和最低容限值,该约束仅限制每台发电机组输出功率的范围。

2)输出功率变化率约束

式中,URk和DRk分别为第k台发电机组输出功率的上升和下降容限值,该约束限制的是每个发电机组发电出力的变化范围,既不能增长过高,也不能下降过低;t=2,…,T;k=1,…,K。

3)功率供需平衡约束

该约束表示第t个时段所有发电机组的输出功率之和不但要满足用户的电力需求量,还要抵消在传输电力过程中的电力损耗。

2 基于修正和声记忆考虑的改进和声搜索算法

和声搜索算法(Harmony search algorithm,HS)的灵感来源于人类社会活动——乐队奏乐表演,多位乐手演奏自己手中的乐器,发出不同的乐声,在演奏的过程中不断完善演奏质量,从而使观众感到愉悦舒适。和声搜索算法主要包括3 种运算,分别是和声记忆考虑、基音微调及随机取值,且涉及3个参数,分别为和声记忆库考虑概率(Harmony mem‐ory considering rate,HMCR)、基音微调概率(Pitch adjusting rate,PAR)和基音微调步长(Ar‐bitrary distance bandwidth,ADB)。HS 算法以HM‐CR 的概率执行和声记忆考虑步骤,以1-HMCR 的概率执行随机取值步骤。在已确定采用和声记忆考虑步骤的前提下,进一步以PAR的概率执行基音微调步骤,且微调步长为ADB。

HS 算法将HMCR 设置为0.9。该算法在整个优化过程中始终以0.1 的概率执行随机取值步骤,在优化前期能够搜索较大区域,改善解的质量;在优化后期因为使用较多的随机搜索步骤而不利于算法收敛,该情况在变量较多的优化问题上尤为明显。另外,HS算法将ADB设置为0.01,即仅依赖一种尺度在变量两侧进行搜索,难以兼顾全局搜索与局部搜索,无法保证问题的求解精度。

为了克服上述不足,进一步提高HS 算法的优化性能,本文提出了一种基于修正和声记忆考虑的改进和声搜索算法(Harmony search algorithm based on modified harmony memory considering op‐eration,IHS-MHMC),并用其求解发电机组动态经济调度问题。IHS-MHMC 算法的具体运算步骤如下:

1)在定义域内随机产生HMS个和声向量。

2)当满足HMCR 概率时,执行修正的和声记忆考虑步骤。该步骤含有两种和声记忆考虑策略,在前2/3 迭代过程中使用原有的和声记忆考虑步骤;在余下的1/3 迭代过程中使用改进的和声记忆考虑步骤,分别以0.5的概率执行式(8)和式(9)。

使用式(8)是为了在优化后期加快算法的收敛速度,而使用式(9)是为了避免算法由于过分依赖全局最优解而陷入早熟。

3)在执行步骤2)的基础上,当满足PAR 概率时,执行基因微调步骤,即:

式中,ADBG为第G(1 ≤G≤Gmax,Gmax表示最大迭代次数)次迭代的基音微调步长,当1 ≤G≤Gmax/2 时,其值由0.01r1确定;当Gmax/2+1 ≤G≤Gmax时,其值由0.002r2确定。其中,r1和r2为[0,1]区间服从均匀分布的随机数。

在迭代前期,基音微调步长倾向于较大值,有利于IHS-MHMC算法执行全局搜索;在迭代后期,基音微调步长倾向于较小值,有利于IHS-MHMC算法执行局部搜索。

4)在不执行步骤2)的情况下执行修正的随机取值步骤。与原始HS算法不同,IHS-MHMC 算法使用服从正态分布的随机数对第j维问题变量进行随机取值:

式中,N(xj,new,μG)表示均值为xj,new,标准差为μG的正态分布随机数。

μG随着迭代次数G的增加而呈线性递减的趋势,表示为

式中,μmax和μmin分别表示最大和最小基音微调步长。

在迭代前期,标准差μG较大,有利于IHSMHMC 算法执行全局搜索;在迭代后期,标准差μG较小,有利于IHS-MHMC 算法执行局部搜索。式(11)的引入较好地均衡了IHS-MHMC算法的全局与局部搜索能力。

因为作为位移主体的陆游,始终认为他所在的移出场无论哪一方面都较其所向的移入场文明程度更高,使其产生了巨大的心理落差,所以,陆游对移入场梁益地区的个人生活,当时和过后的一段时间颇为消极厌倦悲观,他在《将至金陵先寄献刘留守》称“梁益羁游道阻长”,《出游》云“万里崎岖蜀道归”,都抱怨位移的道路遥远而崎岖;《遣兴》云“西州落魄九年余”,《初到蜀州寄成都诸友》云“流落天涯鬓欲丝”,《南烹》云“十年流落忆南烹”,一再将其梁益生活概括为“流落”“落魄”,而不胜悲凉自怜。

5)重复执行步骤2)~步骤4)中的运算,直到迭代次数G超过Gmax。

IHS-MHMC 算法在优化后期根据全局最优解来调整和声向量,相较于HS 算法,提高了收敛速度;此外,IHS-MHMC 算法还使用一些差解来适当降低和声向量过度依赖全局最优解的程度,相较于HS 算法,具有更强的跳出局部最优解的能力。而且,IHS-MHMC 算法在整个优化过程中使用一种基于高斯分布的随机搜索步骤,能更好地均衡全局搜索与局部搜索。

3 约束处理

因为IHS-MHMC算法在整个优化过程中使用了一定数量的随机数,所以单凭改进优化算法难以满足各种约束条件,尤其是等式约束条件。为了高效地处理各种约束条件,本文将采用文献[1]中的处理方法,即在每次更新解后使用约束修复技术对其进行再调整,使得调整后的解接近或变为可行解。具体描述如下:

1)根据输出功率容限和输出功率变化率两种约束确定每个发电机组出力的动态边界。

2)在每个时段调整1 个或多个发电机组出力,每个被调整的出力需要落在其对应的动态边界内,直到所有发电机组出力满足功率供需平衡为止。若调整完该时段所有发电机组出力后,仍未满足功率供需平衡,则累加该时段的功率供需平衡约束违背量。

3)将约束违背量与目标函数值一起构成罚函数值,以此作为IHS-MHMC 算法评估解的唯一标准,罚函数值越低,解的质量越高,反之亦然。

上述步骤能有效地减少或消除不可行解的约束违背,帮助其在很短时间内进入可行的解空间,提高了IHS-MHMC算法的优化效率。

4 问题求解及结果分析

和声搜索算法具有良好的优化性能,已经被用于柴油发动机故障诊断[11]、近红外光谱特征变量选择[12]、无线传感器网络多重连通覆盖[13]、多目标硫化车间调度[14]等领域。现用5 个例子[1]测试IHSMHMC 算法在处理发电机组动态经济调度问题上的性能。例子1、2、3、4 和5 分别对应着5、6、10、14和30 单元系统。例子1 中的5 单元系统指的是含有5个发电机组,并需要对所有发电机组的24 时段电力输出进行合理规划,因此例子1 的问题变量个数为120 个。另外,例子1 还涉及240 个与输出功率容限相关的不等式约束,230 个与输出功率变化率相关的不等式约束,24个与功率供需平衡相关的等式约束。总之,例子1 和2 属于小规模优化问题,例子3 和4 属于中等规模优化问题,而例子5 属于大规模优化问题。该实验选这5 个系统的目的在于验证IHS-MHMC 算法求解具有不同规模发电机组动态经济调度问题的优化性能,为进一步处理更大规模的相关问题打下基础。

作为比较,使用另外两种和声搜索算法解决同样问题,分别是带有新颖参数设置方法的和声搜索算法(Harmony search with a novel parameter setting approach,HS-NPSA)[15]与修正的和声搜索算法(Modified harmony search algorithm,MHS)[16]。HS-NPSA 借助基于均匀分布的随机数自适应修正了HS 的HMCR、PAR 和bw 共3 个参数,这些参数使HS-NPSA在探索解空间和开发解空间之间达成良好的折中。MHS 借助指数函数动态调整了bw,并根据文献[17]和[18]改进了基音调整步骤。HSNPSA属于单纯地调整算法参数,而MHS是通过调整少量参数与修正迭代步骤来改进HS,使得MHS在全局搜索和局部搜索之间达成良好的折中。在近几年有关改进HS 的方法中,这两种算法的设计思路较为典型,具有一定代表性。

IHS-MHMC 使用的HMCR 与问题维度有关,维度越大,HMCR越小,反之亦然。因此,该算法具有良好的自适应性。同时,该算法分阶段随机生成bw,保证了算法的全局与局部搜索能力。IHSMHMC 利用全局最优解与差解更新和声向量,既能维持种群多样性,又能增强自身对解空间的探索与开发能力。对于IHS-MHMC 算法,和声记忆库考虑概率HMCR=1-1/N(N为问题变量的数目),基音微调概率PAR=0.1,随机取值操作中正态分布的标准差最大值μmax=0.1,最小值μmin=0.01。另外两种算法的参数设置与原文献相同。

3 种和声搜索算法的和声记忆库尺度(Harmo‐ny memory size,HMS)为10,对于例子1~5,3 种和声搜索算法的最大迭代次数Gmax分别设置为40 000、40 000、80 000、80 000 和300 000。针对每个例子的每个算法仿真均执行30 次,得到的优化结果如表1所示。

表1 3种和声搜索算法获得的优化结果

用平均运行时间、最小值、最大值、平均燃料成本及标准差来评估3 种和声搜索算法求解发电机组动态经济调度问题的效率与成本水平。根据时间标准,IHS-MHMC 所获得的5 个问题的平均求解时间都低于其他两种算法,说明其具有较快的运行速度。在满足所有约束条件的前提下,成本越低,和声解的质量越高,与之对应的经济调度方案越优。根据表1,对于每个问题,IHS-MHMC 在30次运行中获得的最小、最大及平均燃料成本都低于HS-NPSA 和MHS,而且IHS-MHMC 也获得了问题1、2、3和4的最小标准差,HS-NPSA 获得了问题5的最小标准差。对于5个问题,IHS-MHMC 获得的平均成本比HS-NPSA 分别减小了2.28%、1.42%、0.88%、3.53%和2.27%,比MHS 分别减小了5.19%、0.96%、1.91%、4.53%和2.87%。因此,IHSMHMC 可以为发电机组动态经济调度问题节省可观的燃料成本。

图1 提供了3 种和声搜索算法的成本收敛曲线。从图中可以看出,对于小规模(如例子1 和2)或中等规模(如例子3 和4)的问题,IHSMHMC 在优化前期就已经快速收敛到一个非常低的水平,而其他两种和声搜索算法的收敛速度相对较慢;对于大规模(如例子5)问题,IHSMHMC 在优化前期和中期收敛缓慢,直到优化后期,IHS-MHMC 快速收敛到一个更低的水平,这得益于其采用的修正和声记忆库考虑操作。因为在优化后期,新的和声解的更新使用了全局最优和声解,为其搜索有潜力的解空间提供有效引导。

图1 3种和声搜索算法的成本收敛曲线

根据图1,改进和声搜索算法能快速求解5 个问题。第一,该算法结合了约束修复步骤与罚函数法,若获得的解不可行,则罚函数值通常会因大的罚函数系数(取1010)而变得很大。图1 中优化曲线所代表的成本水平的数量级远小于罚函数值的数量级,因此,在求解每个例子时都在首次迭代中找到可行解,在获得可行解方面具有快速性。第二,对于前4个例子,实际上可以使用约Gmax/8次迭代就能达到较低水平的成本;对于第5个例子,它实际上可以使用约Gmax/2 次迭代就能达到较低水平的成本。因为该算法在优化后期使用了全局最优解信息,所以在最大迭代次数为Gmax时所获得的最低成本会低于图中在Gmax/2处显示的成本值。总之,该算法在获得高精度解方面具有快速性。

为了保证分析问题的严谨性,现对每种方法获得的最优解进行可行性验证,即严格检验每个和声解是否满足功率容限、功率变化率、功率供需平衡约束。表2 提供了3 种和声搜索算法获得5 个问题的最优解信息,包括目标函数值及约束违背量。

表2 不同算法获得最优解的最低成本及约束违背量

从表2 中可以看出,3 种和声搜索算法获得的功率容限和功率变化率的约束违背量都为0,说明获得的和声解能完全满足功率容限和功率变化率约束条件。对于等式约束,业界学者通常都设置一个误差阈值,低于该阈值的违背量都可视为满足等式约束。将该阈值设为0.01,而3 种和声搜索算法获得的功率供需平衡的约束违背量都是很小的数值,且明显低于阈值0.01。因此,这些最优解都满足功率供需平衡约束。IHS-MHMC 算法获得的5个问题的燃料成本都比其他两个算法获得的成本低,因此IHS-MHMC 算法在搜索最优解方面表现更出色。

为了检验IHS-MHMC算法对负荷变化的适应性,现对最大规模问题5 的原负荷(如图2)进行变化,每个时段的负荷分别增减3%和5%,用3种和声搜索算法优化问题,获得的优化结果如表3所示。

图2 问题5的24时段负荷数据

表3 不同负荷变化情景下3种和声搜索算法获得问题5的优化结果

由表3 可知,在负荷发生变化的情况下,IHSMHMC 算法获得问题5 的燃料成本仍然比其他两种算法低。因此,该算法具有较强的负荷适应性,能有效应对负荷变化的情况。

为了验证改进后算法的效果,先根据IHSMHMC 算法的参数设置改进HS 算法,设改进后的算法为IHS(Improved harmony search),在此基础上改进和声记忆库考虑及随机搜索步骤,则算法升级为IHS-MHMC。为了比较HS、IHS和IHS-MHMC的优化性能,现选择5 个问题中最难的30 单元系统进行测试。3 种算法的HMS 都设置为10,最大迭代次数都设置为30 000,每种算法都独立运行30 次,获得的优化结果如表4所示。

表4 3种和声搜索算法获得30单元系统的优化结果

由表4可知,IHS算法获得的最小成本、最大成本及平均成本都低于HS 算法,说明采用自适应参数设置有利于提高HS 算法的计算精度,IHSMHMC 算法获得的结果要好于HS 和IHS 算法,获得了更低的燃料成本,计算精度更高。

图3 为3 种和声搜索算法关于30 单元系统的平均成本收敛曲线。IHS 在优化初期比HS 收敛更快,但两种算法在优化后期收敛缓慢,稍显动力不足。相比而言,IHS-MHMC 算法在优化初期所获得的成本就已经比其他两种算法最终获得的成本要低,到了优化后期,IHS-MHMC 算法仍然保持着较快的收敛速度,最终获得了更低的平均成本。

图3 3种和声搜索算法关于30单元系统的成本收敛曲线

IHS-MHMC 算法是通过结合约束修复技术与罚函数法来处理约束条件的。为了检验约束修复技术对IHS-MHMC 算法优化性能的影响,现分别针对两种情况进行仿真:第一种情况为不使用约束修复技术求解例子5;第二种情况为使用约束修复技术求解例子5。每种情况都独立运行30 次,获得的约束违背量收敛曲线如图4 所示。

图4 两种约束处理方法的平均约束违背量收敛曲线

由图4a 可知,未使用约束修复技术的IHSMHMC 算法在200 次迭代后的平均约束违背量大约为10 000,说明该方法难以在短期内获得可行解;由图4b 可知,即使最大迭代次数设置为2 000,未使用约束修复技术的IHS-MHMC 算法获得的平均约束违背量大约为7 000,仍无法获得可行解;由图4c可知,使用约束修复技术的IHS-MHMC算法在第1 次迭代后的平均约束违背量就降为0,说明该方法具有快速获得可行解的能力。

表5 列出了两种情况下IHS-MHMC 获得例子5 的优化结果,Gaver表示找到可行解的平均迭代次数,SR表示找到可行解的成功率,NA 表示无法获得。未使用约束修复技术的IHS-MHMC的成功率为0,说明其在30 轮运行中始终找不到可行解。因此,仅依赖罚函数法无法使IHS-MHMC 获得可行解。使用约束修复技术的IHS-MHMC的Gaver和SR分别为1 和100%,说明其在30 轮运行中始终能在第1次迭代中就找到可行解,也就是在30轮运行中始终能找到可行解。因此,使用约束修复技术的IHS-MHMC在寻找可行解方面优势明显。

表5 约束处理技术对IHS-MHMC的影响

5 结论

本文提出了一种基于修正和声记忆考虑操作的改进和声搜索算法以解决发电机组动态经济调度问题。IHS-MHMC 算法采用了两种重要的操作,分别是修正的和声记忆考虑操作和基于正态分布的随机取值操作,增强了IHS-MHMC 算法的收敛性,并能有效避免算法陷入局部最优解。使用5个例子检验IHS-MHMC算法在求解发电机组动态经济调度问题上的性能。3 组实验表明,IHSMHMC 算法在寻优速度、求解质量及对负荷变化的自适应性方面都显示出了良好的优化性能,是解决发电机组动态经济调度问题的有效方法。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!