本发明涉及电力系统规划技术领域,尤其涉及一种基于改进蛙跳算法的电网无功优化方法及装置。
背景技术:
降低网损,提高电力系统输电效率和电力系统运行的经济性是电力系统运行部门面临的实际问题,也是电力系统研究的主要方向之一。电网电压控制在很大程度上是无功优化控制问题,系统无功分布的合理与否直接影响着电力系统的安全与稳定,并与经济效益直接挂钩。电力系统无功优化问题属于最优潮流问题的一个组成部分。
电力系统的无功优化问题是一个多变量、多约束的混合非线性规划问题,其操作变量既有连续变量(如节电电压、发电机的无功出力),又有离散变量(如变压器分接头位置,补偿电抗器和电容器的投切容量),使得优化过程十分复杂,因此需建立系统模型,提出和改进相应算法,用科学的手段完成系统的优化,即获取用于配电网的无功优化参数。传统的无功优化算法包括内点法、遗传法、蜂群算法、粒子群算法等。
一般说到的无功优化方法主要包含两方面,一方面是对无功补偿装置进行优化规划,另一方面是对电压无功优化控制。无功优化方法的数学模型包括目标函数(按一定的准则设置,如经济最优或电压稳定度最优)与约束条件(例如节点电压水平的设置,有载调压变压器分接头的调整等)。在数学上无功优化实际就是在约束条件下求解目标函数的值的问题。无功优化方法的数学模型又分为两类,基于解析解的数学优化和基于智能最优迭代的最优潮流问题优化。但目前的无功优化方法收敛性较差、优化程度较低,容易陷入局部最优。
技术实现要素:
本申请提供一种基于改进蛙跳算法的电网无功优化方法及装置,能够使用于配电网的无功优化,使其具有更好的收敛性和优化程度。
第一方面,本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化方法,包括:获取配电网的控制变量以及配电网的状态变量,配电网的控制变量用于指示配电网的可调发电机节点电压幅值、配电网的可调变压器可调分接头档位以及配电网的无功补偿电容器投切组数,配电网的状态变量用于指示配电网的PQ节点的电压以及配电网的发电机的无功出力;获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,其中指定数量的青蛙个体为设定范围内的配电网的控制变量;根据青蛙种群获取初始无功电压;根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解,全局无功电压的最优解用于配电网的无功优化。
第二方面,本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化装置,包括:获取模块,用于获取配电网的控制变量以及配电网的状态变量,配电网的控制变量用于指示配电网的可调发电机节点电压幅值、配电网的可调变压器可调分接头档位以及配电网的无功补偿电容器投切组数,配电网的状态变量用于指示配电网的PQ节点的电压以及配电网的发电机的无功出力;处理模块,用于获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,其中指定数量的青蛙个体为设定范围内的配电网的控制变量;处理模块,还用于根据青蛙种群获取初始无功电压;处理模块,还用于根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解,全局无功电压的最优解用于配电网的无功优化。
本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化方法及装置,通过获取配电网的控制变量以及配电网的状态变量,并获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,根据青蛙种群获取初始无功电压,根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。在刚开始时以蛙跳算法为主进行更新,混沌搜索起辅助作用,从而加速青蛙个体向全局最优位置处移动,随着局部深度搜索迭代次数的增加,算法逐渐进入到以混沌搜索为主,从而帮助算法跳出局部极值,与现有技术相比使其具有更好的收敛性和优化程度,还能够提高电网的运行效率和电能质量,降低系统有功网损。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例所提供的一种基于改进蛙跳算法的电网无功优化方法的示意性流程图;
图2为本发明的另一实施例所提供的一种基于改进蛙跳算法的电网无功优化方法的示意性流程图;
图3为本发明的实施例所提供的一种基于改进蛙跳算法的电网无功优化装置的示意性结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不是在对数量和执行次序进行限定。
如附图1所示,本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化方法,包括:
101、获取配电网的控制变量以及配电网的状态变量。
具体的,配电网的控制变量用于指示配电网的可调发电机节点电压幅值、配电网的可调变压器可调分接头档位以及配电网的无功补偿电容器投切组数,配电网的状态变量用于指示配电网的PQ节点的电压以及配电网的发电机的无功出力。
102、获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群。
具体的,其中指定数量的青蛙个体为设定范围内的配电网的控制变量。
103、根据青蛙种群获取初始无功电压。
104、根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。
其中,全局无功电压的最优解用于配电网的无功优化。
本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化方法,通过获取配电网的控制变量以及配电网的状态变量,并获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,根据青蛙种群获取初始无功电压,根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。在刚开始时以蛙跳算法为主进行更新,混沌搜索起辅助作用,从而加速青蛙个体向全局最优位置处移动,随着局部深度搜索迭代次数的增加,算法逐渐进入到以混沌搜索为主,从而帮助算法跳出局部极值,与现有技术相比使其具有更好的收敛性和优化程度,还能够提高电网的运行效率和电能质量,降低系统有功网损。
更进一步的,如附图2所示,本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化方法,包括:
201、根据X=(VGK,Ti,Cj)获取配电网的控制变量X,根据U=(Vi,QGj)获取配电网的状态变量U。
其中,其中VGK为配电网的可调发电机节点电压幅值、Ti为配电网的可调变压器可调分接头档位、Cj为配电网的无功补偿电容器投切组数、Vi为配电网的PQ节点的电压,QGj是配电网的发电机的无功出力、i为配电网的无功补偿节点数、j为配电网的可调变压器数、k为配电网的发电机节点数。所有控制变量的编码可以表示为X=[C,T,VG]=[C1,C2,…,Ci,T1,T2,…,Tj,VG1,VG2,…,VGK]。
202、获取设定范围(ai,bi)内的指定数量N个青蛙个体,并根据求出指定数量N只青蛙个体各自对立的青蛙个体从而组成规模为2N的青蛙种群。
具体的,可以随机初始化N只青蛙个体xi∈(ai,bi),并依次求出其对立个体从而组成规模为2N的青蛙种群,并计算该种群中所有个体的适应度值,并依据适应度值从优到劣进行排序,以一定概率随机选择其中的N只青蛙个体组成初始种群,概率选择的依据是适应度值越好的个体被选入初始种群的概率越高,概率选择公式为pi=(2N-i)/2N,i=1,2,…,2N。
203、计算该青蛙种群中所有青蛙个体的适应度值。
204、依据适应度值对青蛙种群中所有青蛙个体进行排序。
205、获取排序后的青蛙个体中每个青蛙个体的选择概率pi并根据选择概率pi在排序后的青蛙个体中选择N个青蛙个体组成初始种群。
具体的,根据pi=(2N-i)/2N,获取排序后的青蛙个体中每个青蛙个体的选择概率pi,其中i=1,2,…,2N,并根据选择概率pi在排序后的青蛙个体中选择N个青蛙个体组成初始种群。
206、获取初始无功电压。
具体的,根据等式约束方程以及不等式约束方程获取初始无功电压
207、根据适应度值更新青蛙种群的最优个体位置Xb和全局最优个体位置Xg并更新确定当前迭代中子群体的更新后的最差个体位置newXwi。
具体的,根据适应度值更新青蛙种群的最优个体位置Xb和全局最优个体位置Xg,并根据newXwi(k)=Xwi(k)·exp·[(1-exp(-α·y(k)))·(μ·Xwi(k)·(1-Xwi(k)))]+e-2α·y(k)·Ωi(k)更新确定当前迭代中子群体的更新后的最差个体位置newXwi。
其中,Ω(k)为蛙跳步长更新变量,y(k)为混沌变量,可以根据Ω(k)=a1·rand()·(Xb(k)-Xw(k))获取蛙跳步长更新变量Ω(k),根据y(k)=y(k-1)·(1+λ)获取混沌变量y(k),其中式中,Xb(k)和Xw(k)分别表示当前子群体第k次迭代时的最优个体和最差个体,rand()是均匀分布在[0,1]之间的随机数,a1是常数;k为迭代次数;λ为小于1的混沌因子,Xwi(k)表示当前子群体在第k次迭代时的最差个体Xw(k)的第i维,Ωi(k)为Ω(k)的第i维,α和μ均为正常数。
208、判断newXw的适应度值是否优于Xw的适应度值。
当newXw的适应度值优于Xw的适应度值时,执行步骤209,当newXw的适应度值并不优于Xw的适应度值时,执行步骤210。
209、用newXw取代Xw。
210、更新Ω(k)以及y(k)并生成newXw。
具体的,当newXw的适应度值优于Xw的适应度值时,则用newXw取代Xw,当newXw的适应度值并不优于Xw的适应度值时,则更新Ω(k)以及y(k),并根据newXwi(k)=Omin+(Omax-Omin)·rand()生成newXw,其中Omax和Omin分别表示算法搜索范围的最大值和最小值,rand()为均匀分布在[0,1]之间的随机个体。
211、将青蛙种群中的青蛙个体依据适应度值从优到劣进行排序,并依次依照三角选择概率2(m+1-i)/[m(m+1)]挑选出Q只青蛙个体组成n个子群体,并根据n个子群体求解全局无功电压的最优解。
212、确定所有子群体是否都完成了局部深度搜索。
当确定所有子群体都完成了局部深度搜索时,执行步骤213。
当确定并非所有子群体都完成了局部深度搜索,执行步骤207。
213、确定是否满足全局混合迭代次数G。
当确定满足全局混合迭代次数G时,执行步骤214。
当确定不满足全局混合迭代次数G,则执行步骤215。
214、输出全局无功电压的最优解。
215、所有青蛙个体重新混合,再依据适应度值对青蛙种群中所有青蛙个体进行排序并执行步骤205。
本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化方法,通过获取配电网的控制变量以及配电网的状态变量,并获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,根据青蛙种群获取初始无功电压,根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。在刚开始时以蛙跳算法为主进行更新,混沌搜索起辅助作用,从而加速青蛙个体向全局最优位置处移动,随着局部深度搜索迭代次数的增加,算法逐渐进入到以混沌搜索为主,从而帮助算法跳出局部极值,与现有技术相比使其具有更好的收敛性和优化程度,还能够提高电网的运行效率和电能质量,降低系统有功网损。
如附图3所示,本发明的实施例提供了一种配电网的配置装置301,包括:
获取模块302,用于获取配电网的控制变量以及配电网的状态变量。
具体的,配电网的控制变量用于指示配电网的可调发电机节点电压幅值、配电网的可调变压器可调分接头档位以及配电网的无功补偿电容器投切组数,配电网的状态变量用于指示配电网的PQ节点的电压以及配电网的发电机的无功出力。
处理模块303,用于获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群。
具体的,其中指定数量的青蛙个体为设定范围内的配电网的控制变量。
处理模块303,还用于根据青蛙种群获取初始无功电压。
处理模块303,还用于根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。
其中,全局无功电压的最优解用于配电网的无功优化。
本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化装置,通过获取配电网的控制变量以及配电网的状态变量,并获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,根据青蛙种群获取初始无功电压,根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。在刚开始时以蛙跳算法为主进行更新,混沌搜索起辅助作用,从而加速青蛙个体向全局最优位置处移动,随着局部深度搜索迭代次数的增加,算法逐渐进入到以混沌搜索为主,从而帮助算法跳出局部极值,与现有技术相比使其具有更好的收敛性和优化程度,还能够提高电网的运行效率和电能质量,降低系统有功网损。
更进一步的,获取模块302,具体用于:根据X=(VGK,Ti,Cj)获取配电网的控制变量X,根据U=(Vi,QGj)获取配电网的状态变量U。
其中,其中VGK为配电网的可调发电机节点电压幅值、Ti为配电网的可调变压器可调分接头档位、Cj为配电网的无功补偿电容器投切组数、Vi为配电网的PQ节点的电压,QGj是配电网的发电机的无功出力、i为配电网的无功补偿节点数、j为配电网的可调变压器数、k为配电网的发电机节点数。所有控制变量的编码可以表示为X=[C,T,VG]=[C1,C2,…,Ci,T1,T2,…,Tj,VG1,VG2,…,VGK]。
处理模块303,具体用于获取设定范围(ai,bi)内的指定数量N个青蛙个体,并根据求出指定数量N只青蛙个体各自对立的青蛙个体从而组成规模为2N的青蛙种群。
具体的,可以随机初始化N只青蛙个体xi∈(ai,bi),并依次求出其对立个体从而组成规模为2N的青蛙种群,并计算该种群中所有个体的适应度值,并依据适应度值从优到劣进行排序,以一定概率随机选择其中的N只青蛙个体组成初始种群,概率选择的依据是适应度值越好的个体被选入初始种群的概率越高,概率选择公式为pi=(2N-i)/2N,i=1,2,…,2N。
处理模块303,具体用于计算该青蛙种群中所有青蛙个体的适应度值,依据适应度值对青蛙种群中所有青蛙个体进行排序。获取排序后的青蛙个体中每个青蛙个体的选择概率pi并根据选择概率pi在排序后的青蛙个体中选择N个青蛙个体组成初始种群。
具体的,根据pi=(2N-i)/2N,获取排序后的青蛙个体中每个青蛙个体的选择概率pi,其中i=1,2,…,2N,并根据选择概率pi在排序后的青蛙个体中选择N个青蛙个体组成初始种群;获取初始无功电压。
具体的,根据等式约束方程以及不等式约束方程获取初始无功电压。
处理模块303,具体用于根据适应度值更新青蛙种群的最优个体位置Xb和全局最优个体位置Xg并更新确定当前迭代中子群体的更新后的最差个体位置newXwi。
具体的,根据适应度值更新青蛙种群的最优个体位置Xb和全局最优个体位置Xg,并根据newXwi(k)=Xwi(k)·exp·[(1-exp(-α·y(k)))·(μ·Xwi(k)·(1-Xwi(k)))]+e-2α·y(k)·Ωi(k)更新确定当前迭代中子群体的更新后的最差个体位置newXwi。
其中,Ω(k)为蛙跳步长更新变量,y(k)为混沌变量,可以根据Ω(k)=a1·rand()·(Xb(k)-Xw(k))获取蛙跳步长更新变量Ω(k),根据y(k)=y(k-1)·(1+λ)获取混沌变量y(k),其中式中,Xb(k)和Xw(k)分别表示当前子群体第k次迭代时的最优个体和最差个体,rand()是均匀分布在[0,1]之间的随机数,a1是常数;k为迭代次数;λ为小于1的混沌因子,Xwi(k)表示当前子群体在第k次迭代时的最差个体Xw(k)的第i维,Ωi(k)为Ω(k)的第i维,α和μ均为正常数。
处理模块303,具体用于判断newXw的适应度值是否优于Xw的适应度值。
当newXw的适应度值优于Xw的适应度值时,用newXw取代Xw,当newXw的适应度值并不优于Xw的适应度值时,更新Ω(k)以及y(k)并生成newXw。
具体的,当newXw的适应度值优于Xw的适应度值时,则用newXw取代Xw,当newXw的适应度值并不优于Xw的适应度值时,则更新Ω(k)以及y(k),并根据newXwi(k)=Omin+(Omax-Omin)·rand()生成newXw,其中Omax和Omin分别表示算法搜索范围的最大值和最小值,rand()为均匀分布在[0,1]之间的随机个体。
处理模块303,具体用于将青蛙种群中的青蛙个体依据适应度值从优到劣进行排序,并依次依照三角选择概率2(m+1-i)/[m(m+1)]挑选出Q只青蛙个体组成n个子群体,并根据n个子群体求解全局无功电压的最优解。
处理模块303,还用于确定所有子群体是否都完成了局部深度搜索。
当确定所有子群体都完成了局部深度搜索时,确定是否满足全局混合迭代次数G,当确定满足全局混合迭代次数G时,输出全局无功电压的最优解。
本发明的实施例提供了一种基于改进蛙跳算法的电网无功优化装置,通过获取配电网的控制变量以及配电网的状态变量,并获取包括指定数量的青蛙个体以及与指定数量的青蛙个体各自对立的青蛙个体的青蛙种群,根据青蛙种群获取初始无功电压,根据初始无功电压获取局部无功电压的最优值,并根据局部无功电压的最优值获取全局无功电压的最优解。在刚开始时以蛙跳算法为主进行更新,混沌搜索起辅助作用,从而加速青蛙个体向全局最优位置处移动,随着局部深度搜索迭代次数的增加,算法逐渐进入到以混沌搜索为主,从而帮助算法跳出局部极值,与现有技术相比使其具有更好的收敛性和优化程度,还能够提高电网的运行效率和电能质量,降低系统有功网损。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括随机存储器(英文全称:Random Access Memory,英文简称:RAM)、只读存储器(英文全称:Read Only Memory,英文简称:ROM)、电可擦可编程只读存储器(英文全称:Electrically Erasable Programmable Read Only Memory,英文简称:EEPROM)、只读光盘(英文全称:Compact Disc Read Only Memory,英文简称:CD-ROM)或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户专线(英文全称:Digital Subscriber Line,英文简称:DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在计算机可读介质的定义中。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,当以软件方式实现本发明时,可以将用于执行上述方法的指令或代码存储在计算机可读介质中或通过计算机可读介质进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、电可擦可编程只读存储器(全称:electrically erasable programmable read-only memory,简称:EEPROM)、光盘、磁盘或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。