改进遗传算法在电力系统无功优化中的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
改进遗传算法在电力系统无功优化中的应用
陈芳元1 赵方方2 汪玉凤
(1.辽宁工程技术大学 电气工程系,2.电子信息工程系 辽宁 阜新 123000)
E-mail: fangyuan8825@
摘 要:遗传算法是一种模拟生物进化过程的优化算法,可用于求解无功优化这样复杂的优化问题。本文在简单遗传算法(SGA)的基础上,提出了更加有效的算法即改进遗传算法(IGA)。该算法电力系统无功优化的特点,借鉴了模拟退火思想在遗传算法的执行过程中对个体适应度不断进行修正,并采用了浮点数编码、分段进化等改进措施。算例表明这种改进的遗传算法是行之有效的。
关键词:无功优化;改进遗传算法;自适应;浮点编码;分段进化
1 引言
电力系统无功优化是指在系统有功潮流分布确定的情况下,通过对某些控制变量的优化调节,在满足系统各种约束条件的前提下使系统有功网损最小,它是一个多变量、多约束混合非线性的优化问题。无功功率在电力系统中的合理分配是充分利用无功电源、改善电压质量、减少网损和提高电压稳定性,使电力系统能够安全经济运行的重要措施。在这一研究领域内已有多种方法。遗传算法是一种模拟生物进化过程的优化算法,在解决多变量、非线性、不连续、多约束的问题时显示出其独特的优势,使它在无功优化领域中的应用日益为人们所重视,其有效性也已为许多研究所证实[1-4]。
本文针对常规遗传算法收敛速度慢、易早熟等缺陷,对遗传算法进行了改进, 提出了一种适合于求解无功优化问题的改进遗传算法,将之应用于IEEE 14节点系统,实验结果表明本文的改进算法是有效可行的。
2 无功优化数学模型的建立
无功优化的数学模型[6]包括目标函数、功率约束方程和变量约束方程3个部分。
2.1 目标函数 本文采用满足各种电压、无功不越限条件下的有功网损最小为目标函数:
∑∑==−∆+−∆+∆=n
i n i gi gi gi i i i loss
Q Q Q w U U U w P F 112min ,max ,22min ,max ,1)()(min 其中: ⎪⎩⎪⎨⎧<−≤≤>−=∆min ,min ,max .min ,max ,max ,0i i i
i i i i i i i i i U U U U U U U U U U U U ⎪⎩⎪⎨⎧<−≤≤>−=∆mim
gi gi gi gi gi gi gi gi gi gi gi gi Q Q Q Q Q Q Q Q Q Q Q Q ,min ,max ,min ,max ,max ,0
式中,右端第1项为有功网损,第2项为对节点电压幅值越限的惩罚项, 第3项为对发电机无功出力越限的惩罚项。1w 、2w 分别为除PV节点以外的节点电压、发
电机无功出力越限罚因子。
2.2 功率平衡约束方程
∑∈+=i
j ij ij ij ij j i i B G U U P )sin cos (δδ
∑∈−=i
j ij ij ij ij j i i B G U U Q )cos sin (δδ
式中,i P ,i Q 为节点 i 注入的有功、无功;i U 、j U 为节点 i ,j 的电压幅值;ij G ,ij B ,ij δ分别为节点 i , j 之间的电导、电纳和电压相角差。
2.3 变量约束方程
一般选取发电机机端电压g U ,容性无功补偿容量c Q 和可调变压器分接头位
置T 作为控制变量,
而选取发电机无功出力g Q 和节点电压幅值U 作为状态变量。 控制变量约束方程:
⎪⎩⎪⎨⎧≤≤≤≤≤≤max
,min ,max ,min ,max .min ,i i i ci ci ci gi gi gi T T T Q Q Q U U U
式中,max ,gi U ,min ,gi U 为发电机机端电压的上下限;max ,ci Q ,min .ci Q 为节点 i 上补偿容量的上下限;max ,i T ,min ,i T 为变压器可调变比的上下限。
状态变量约束方程:
⎩⎨⎧≤≤≤≤max ,min
,min ,min ,i i i gi gi gi U U U Q Q Q 式中,max ,gi Q ,min ,gi Q 为发电机无功出力的上下限;max .i U ,min ,i U 为节点电压的上下限。
3 应用于无功优化的改进的遗传算法
3.1 分段进化
遗传算法的进化过程有一个特点就是随着迭代次数的增加,各个体的目标函数值越来越接近,进化速度也越来越慢。为了加快后期的进化速度,本文提出了改进方法,即选择一定的群体规模和最大迭代次数,进行一个阶段的遗传操作,然后扩充群体规模和改变相应的最大迭代次数再进行下一阶段的操作,其中扩充的部分随机产生。可根据电网规模进行具体分析,取常规遗传算法对该电网进行优化下降最快的平均迭代次数作为第一阶段的最大迭代次数,以后逐渐增加群体规模,再根据常规算法的进化过程选择合适的相应的最大迭代次数。这样, 根据常规遗传算法的计算结果,设定合适的分段。具体分段方法如表1所示。
表1 分段进化设置表 Tab. 1 The arrangement of period evolution
第1阶段 第2阶段 …… 第n阶段
群体规模 max pop max pop + △p ……
max pop + n△p 本阶段最大迭代次数
max gen △g ……
△g
总的最大迭代 次数 max gen max gen + △g …… max gen + n△g
其中:max pop, max gen为初始规模及在这一规模下进化的最大迭代次
数;Δp ,Δg为每个阶段扩充的个体数及在这一相应规模下进化的最大迭代次数。
3.2 适应度函数
本文借鉴模拟退火思想在遗传算法的执行过程中对个体适应度不断进行修正,修正公式为: )exp('0F k T F t ××−=
式中,'F 为适应度值;F 为个体的目标函数值;t 为进化代数;T 0为模拟退火的初始温度,一般取与目标函数同一数量级的值;k 为系数,一般取小于1.0的数。
3.3 参数编码
编码的主要任务是建立解空间和染色体空间的一一对应关系。常见的编码方式有二进制、十进制以及浮点数编码等,本文采用的是浮点数编码方式。浮点数编码不仅可以缩短染色体长度,降低算法的搜索空间,且可以避免初始化及遗传操作中生成的不可行解,从而提高算法的效率,满足了遗传算法对编码完备性、健全性和非冗余性的要求[4]。
IEEE 14节点系统[13]包括2个发电机节点,3个无功补偿节点,3条变压器支路,其个体的编码形式X 表示为:
],,,,,,,[32132121T T T Q Q Q U U X c c c g g =
3.4 选择
选择是最具有自然进化特色的操作之一,它是从所有父代中选取部分个体组成繁殖库的过程,它建立在对个体的适应度进行评价的基础之上, 有时直接关系到收敛速度问题。本文引入自然界的竞争机制,从父代中随机选取两个或多个个体参与竞争, 保存优秀个体, 淘汰较差个体,即所谓的“优胜劣汰”。
3.5 交叉和变异
本文采用设置屏蔽字来实现交叉和变异。由交叉率P c ,随机产生一个与个体编码串长度等长的二进制屏蔽字,根据屏蔽字位来决定父代两个个体编码串应基因是否进行交换,如屏蔽字位为1时父代个体的相应等位基因进行交换,为0时不交换,操作示意如下:
交叉前 父代个体1:
],,,,,,,[1)1(3)1(2)1(1)1(3)1(2)1(1)1(2)1(1T T T Q Q Q U U X c c c g g =
父代个体2:
],,,,,,[2)2(3)2(2)2(1)2(3)2(2)2(1)2(2)2(1T T T Q Q Q U U X c c c g g =
屏蔽字:W = 10010101
交叉后 父代个体1: