1.一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,具体按照如下步骤实施:步骤1,以电力系统总发电煤耗最低作为优化目标,建立目标函数,建立电力系统运行约束条件;步骤2,根据群居蜘蛛优化算法,在所建立的电力系统运行约束条件限制下,求解目标函数的最小值,得到电力系统的最低发电煤耗。
2.根据权利要求1所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤1中建立目标函数具体为:步骤1.1,计算火电机组的煤耗特性函数即发电成本函数:其中:Fti(PGit)为时段t火电机组i的发电煤耗;PGit为时段t火电机组i的有功出力;ai、bi、ci为对应机组i的耗量特性系数;步骤1.2,建立目标函数:其中:T是调度时段总数,若为静态调度,则T=1;NG是机组总数,进一步考虑阀点效应,建立最终的目标函数:其中:Eit是t时段由阀点效应引起的第i台机组的煤耗量;gi和hi为阀点效应对应的效应系数;PGimin是第i台机组的最小技术出力;利用罚函数处理约束条件,通过罚函数法将单个机组负荷平衡的相关问题纳入系统总的机组煤耗特性的目标函数,则最终得到的目标函数的数学表达式如下:式中:σ1为功率平衡约束的惩罚因子;σ2为不等式约束的惩罚因子;gi(x)为第i个不等式约束,其中n代表不等式约束数量;hj(x)为第j个等式约束,其中z代表等式约束数量。
3.根据权利要求2所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤1中的电力系统运行约束条件包括系统功率平衡约束、网络损耗约束、机组运行约束、机组出力爬坡约束;所述系统功率平衡约束为:式中:PLt是第t时段内系统的总网络损耗;PDt是第t时段内的系统总负荷;所述网络损耗约束为:式中:PGt为NG台发电机组构成的有功功率向量矩阵为PGt的转置矩阵;B、B0和B00为网损相关系数;B为一个维数为NG×NG的向量矩阵;B0为NG维的向量;B00为常系数;所述机组运行约束为:PGimiu≤PGit≤PGimax,i=1,2,3,…,NG (7)式中,PGimin是第i台机组的最小技术出力,PGimax是第i台机组的有功出力上限;所述机组出力爬坡约束为:其中:UGi为火电机组i的出力增速极值,DGi为火电机组i的出力降速极值,PGi(t-1)为t-1时段火电机组i的有功出力;若系统功率平衡约束、网络损耗约束、机组运行约束、机组出力爬坡约束为等式则代入(4)中的hj(x)中,若为不等式则代入公式(4)中的gi(x)中。
4.根据权利要求3所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2具体为:步骤2.1,设置蜘蛛种群S的数量规模N,确定雌、雄蜘蛛子种群数量,雌、雄性个体数量分别是Nf、Nm,Nf+Nm=N,随机初始化雌、雄种群个体,每个蜘蛛个体代表一种不同的节能调度方案,设置最大迭代次数Maxiter,初始迭代次数k=0,将公式(4)作为目标函数,设置问题维数即机组总数NG;步骤2.2,进行全局搜索,并令k=k+1;步骤2.3,计算种群中所有个体的权重,并进行由高向低的排序,记录最高权重个体的最优值与位置;步骤2.4,建立雌性蜘蛛协作机制;步骤2.5,建立雄性蜘蛛协作机制;步骤2.6,对重新移动后的个体执行变异操作,按照婚配半径,对符合条件的蜘蛛个体进行随机婚配;步骤2.7,重构雌雄蜘蛛种群;步骤2.8,如果当前迭代次数k<Maxiter,返回步骤2.2;否则输出当前最优解及其对应的目标函数值,得到总发电煤耗最低的节能调度方案。
5.根据权利要求4所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2.1中雌雄种群数目的设定方法为:Nf=floor[(0.9-rand·0.25)·N]Nm=N-Nf (9)式中:rand为[0,1]范围内随机生成的随机数;floor(·)表示实数域到整数域的映射函数,Nf表示雄性蜘蛛数量,Nm表示雄性蜘蛛数量,N表示种群中个体的数量,即种群规模。
6.根据权利要求4所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2.3具体为:步骤2.3.1,计算种群中所有蜘蛛个体的权重,蜘蛛i的权重wi依据下式来计算:式中:wmax是上代个体权重因子的最大值;wmin是上代个体权重因子的最小值;iter为当前正执行的迭代次数;Maxiter是最大迭代次数;在第一次迭代,即就是k=1时,初始权重参数的人为设定,利用rand函数随机在[0,1]范围内随机生成10组数据,利用max与min函数取出最大与最小值,完成首次权重参数的设定,之后的每次迭代依据公式(10)计算个体的权重;步骤2.3.2,算完所有蜘蛛个体的权重后,将权重进行由高向低排序,记录最高权重个体的最优值与位置。
7.根据权利要求6所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2.4具体为:根据雌性协作机制移动雌性蜘蛛:其中,α、β、δ是放大系数;Sa、Sc、Sd分别代表了蜘蛛a(Sa)的权重、蜘蛛b(Sb)的权重和雌性蜘蛛f(Sf)的权重,根据公式(10)计算;i(Si)表示蜘蛛种群S中的任一蜘蛛个体i;a(Sa)表示蜘蛛种群S中,距离蜘蛛i(Si)最近,且权重比i(Si)更重的蜘蛛个体a;b(Sb)表示蜘蛛种群S中拥有最佳体重的蜘蛛个体b;f(Sf)表示蜘蛛种群S中距离蜘蛛个体a(Sa)最近的雌性蜘蛛个体f;PE为0-1之间的随机数;k、k+1均表示迭代次数;fik表示第k次迭代中第i只雌性个体所需要移动到的具体位置,fik+1表示第k+1次迭代中第i只雌性个体所需要移动到的具体位置,Vibai表示个体a(Sa)的振动因子、Vibbi表示个体b(Sb)的振动因子;所述步骤2.5雄性蜘蛛协作机制:式中:表示第k+1代雄性个体的具体位置,表示第k代雄性个体的具体位置;Sd表示与i(Si)最近的雌性蜘蛛f(Sf)的权重;是对应雄性种群M的加权平均值;分别是雄性个体i和雄性个体m的权重值,Vibfi表示个体f(Sf)的振动因子;所述振动因此按照如下公式计算:①距离蜘蛛i(Si)最近,且体重比蜘蛛i(Si)更重的蜘蛛a(Sa)所发出的振动被i(Si)所感知,则个体a(Sa)的振动因子Vibai按下式计算:式中:wa为小于1的系数;di,a是蜘蛛i(Si)与蜘蛛a(Sa)之间的二范数距离;②群体中拥有最佳体重的蜘蛛b(Sb)发出振动被i(Si)所感知,则b(Sb)的振动因子Vibbi按下式计算:式中:wb为小于1的系数;di,b是蜘蛛b(Sb)与蜘蛛i(Si)之间的二范数距离;③距离蜘蛛i(Si)最近的雌性蜘蛛f(Sf)发出振动被i(Si)所感知,则f(Sf)的振动因子Vibfi按下式计算:式中:wf为小于1的系数;di,f是雌性蜘蛛f(Sf)与蜘蛛i(Si)之间的二范数距离。
8.根据权利要求7所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2.6具体为:步骤2.6.1,执行变异操作:变异操作主要是针对执行完步骤2.4和步骤2.5后的雌雄种群中的部分个体进行位置上的随机改变,以增加后续交配的多种可能情况,经过变异操作后的fik+1代替公式(11)中的fik+1;式中:fp,fq是雌性子种群中任意两个不同的个体;T为变异相关算子,设置为动态调整,T值对变异操作的影响成正相关,在整个执行过程中由小变大;k为当前迭代次数;步骤2.6.2,确定婚嫁半径:对于某一蜘蛛个体,只有位于该半径以内的异性蜘蛛个体才考虑进行婚嫁,否则不予考虑;式中:r表示每个个体的交配半径;Pihigh和Pihigh对应第i个变量的雌性蜘蛛感知范围的上、下限;步骤2.6.3,执行随机交配策略:对经过变异操作后的符合婚嫁的个体进行随机交配策略,在执行随机交配策略时先设置随机交配概率Ps对雄性个体进行更新,具体为:使用Ps乘以公式(12)即得到新的雄性个体,然后使用新的雄性个体和步骤2.6.1得到雌性个体根据婚嫁半径进行交配;其中,随机交配概率Ps按照如下公式计算:式中:Ps是指随机交配概率;Maxiter是最大迭代次数。
9.根据权利要求8所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2.7具体为:婚嫁完成后,会产生新的带有权重参数的个体,将步骤2.3.2中进行权重排序的个体与经过婚嫁产生的新个体权重进行比较,淘汰权重最小的个体;如果新生个体权重较小,直接淘汰;如果母代个体权重较小,由新升个体进行替代,并且继承原先个体的性别。
10.根据权利要求9所述的一种基于群居蜘蛛优化算法的发电厂节能调度方法,其特征在于,所述步骤2.8具体为:判断当前执行迭代数k是否到达最大迭代次数Maxiter;若未达到,则判断当前发电煤耗Fk是否小于上一次迭代的发电煤耗Fk-1;如果当前的发电成本小于上一次迭代的发电煤耗,则将当前最低煤耗对应的调度方案中每台火电机组的出力作为当前各台火电机组的初始出力,重复步骤2.2-2.8;若当前的发电煤耗Fk大于上一次迭代的发电煤耗Fk-1,则将上一次迭代的发电煤耗对应的各台火电机组的约束出力作为各台火电机组各自的初始出力,重复步骤2.2-2.8。若当前迭代次数达到最大迭代次数,则判断当前发电煤耗Fk是否小于上一次迭代的发电煤耗Fk-1;若当前的发电煤耗Fk小于上一次迭代的发电煤耗Fk-1,则输出当前的发电煤耗作为最优目标函数值,并输出当前最低发电煤耗对应的每台火电机组的出力,作为最优调度方案;若当前的发电煤耗Fk大于上一次迭代的发电煤耗Fk-1,则输出上一次迭代的最低发电煤耗作为最优目标函数值,并输出上一次迭代的发电煤耗Fk-1对应的每台火电机组的出力,作为最优调度方案。
技术领域
本发明属于电力调度方法技术领域,涉及一种基于群居蜘蛛优化算法的发电厂节能调度方法。
背景技术
电力系统优化调度是指在保障电能生产安全、电能质量优质的前提下,通过各种技术手段或合理的管理策略,使所设计的目标达到最优,优化目标通常包括经济目标、安全目标、环保目标等。由于系统规模较大、约束条件众多,增加了电力系统调度建模与求解的复杂性,使该问题成为一个非线性、非凸、高维且存在大量局部极值点的优化问题,因此对优化算法的性能提出了较高要求。
传统的数学规划优化方法要求目标函数连续、可导、可微,故难以处理含非线性复杂约束的电力系统优化调度问题,于是大量智能优化算法开始用于求解具有多个非光滑目标函数的电力系统优化调度问题。不同于数学规划法,智能算法对求解问题的模型没有特殊限制,具有较强的全局搜索能力。但大多数智能算法基于自然进化理论,算法性能依赖选择、变异等进化操作,并且种群数目对迭代速度、次数有显著影响,算法易早熟收敛,且算法关键参数的选取没有明确标准。
群居蜘蛛优化算法(social spider optimization,SSO)是一种群体性的智能进化算法,具有扩展性好、容错率高、适应性强、速度快、模块化组装、自主性强等优点,已广泛用于通信传感器定位、病理识别、车间调度作业中的优化问题,但在电力系统优化调度中的应用尚不多见。
发明内容
本发明的目的是提供一种基于群居蜘蛛优化算法的发电厂节能调度方法,利用群居蜘蛛优化算法从而实现电力系统安全可靠运行下的总发电煤耗最低。
本发明所采用的技术方案是,一种基于群居蜘蛛优化算法的发电厂节能调度方法,具体按照如下步骤实施:
步骤1,以电力系统总发电煤耗最低作为优化目标,建立目标函数,建立电力系统运行约束条件;
步骤2,根据群居蜘蛛优化算法,在所建立的电力系统运行约束条件限制下,求解目标函数的最小值,得到电力系统的最低发电煤耗。
本发明的特征还在于,
步骤1中建立目标函数具体为:
步骤1.1,计算火电机组的煤耗特性函数即发电成本函数:
其中:Fti(PGit)为时段t火电机组i的发电煤耗;PGit为时段t火电机组i的有功出力;ai、bi、ci为对应机组i的耗量特性系数;
步骤1.2,建立目标函数:
其中:T是调度时段总数,若为静态调度,则T=1;NG是机组总数,
进一步考虑阀点效应,建立最终的目标函数:
其中:Eit是t时段由阀点效应引起的第i台机组的煤耗量;gi和hi为阀点效应对应的效应系数;PGimin是第i台机组的最小技术出力;
利用罚函数处理约束条件,通过罚函数法将单个机组负荷平衡的相关问题纳入系统总的机组煤耗特性的目标函数,则最终得到的目标函数的数学表达式如下:
式中:σ1为功率平衡约束的惩罚因子;σ2为不等式约束的惩罚因子;gi(x)为第i个不等式约束,其中n代表不等式约束数量;hj(x)为第j个等式约束,其中z代表等式约束数量。
步骤1中的电力系统运行约束条件包括系统功率平衡约束、网络损耗约束、机组运行约束、机组出力爬坡约束;
系统功率平衡约束为:
式中:PLt是第t时段内系统的总网络损耗;PDt是第t时段内的系统总负荷;
网络损耗约束为:
式中:PGt为NG台发电机组构成的有功功率向量矩阵;为PGt的转置矩阵;B、B0和B00为网损相关系数;B为一个维数为NG×NG的向量矩阵;B0为NG维的向量;B00为常系数;
机组运行约束为:
PGimin≤PGit≤PGimax,i=1,2,3,...,NG (7)
式中,PGimin是第i台机组的最小技术出力,PGimax是第i台机组的有功出力上限;
机组出力爬坡约束为:
其中:UGi为火电机组i的出力增速极值,DGi为火电机组i的出力降速极值,PGi(t-1)为t-1时段火电机组i的有功出力;
若系统功率平衡约束、网络损耗约束、机组运行约束、机组出力爬坡约束为等式则代入(4)中的hj(x)中,若为不等式则代入公式(4)中的gi(x)中。
步骤2具体为:
步骤2.1,设置蜘蛛种群S的数量规模N,确定雌、雄蜘蛛子种群数量,雌、雄性个体数量分别是Nf、Nm,Nf+Nm=N,随机初始化雌、雄种群个体,每个蜘蛛个体代表一种不同的节能调度方案,设置最大迭代次数Maxiter,初始迭代次数k=0,将公式(4)作为目标函数,设置问题维数即机组总数NG;
步骤2.2,进行全局搜索,并令k=k+1;
步骤2.3,计算种群中所有个体的权重,并进行由高向低的排序,记录最高权重个体的最优值与位置;
步骤2.4,建立雌性蜘蛛协作机制;
步骤2.5,建立雄性蜘蛛协作机制;
步骤2.6,对重新移动后的个体执行变异操作,按照婚配半径,对符合条件的蜘蛛个体进行随机婚配;
步骤2.7,重构雌雄蜘蛛种群;
步骤2.8,如果当前迭代次数k<Maxiter,返回步骤2.2;否则输出当前最优解及其对应的目标函数值,得到总发电煤耗最低的节能调度方案。
步骤2.1中雌雄种群数目的设定方法为:
Nf=floor[(0.9-rand·0.25)·N]
Nm=N-Nf (9)
式中:rand为[0,1]范围内随机生成的随机数;floor(·)表示实数域到整数域的映射函数,Nf表示雄性蜘蛛数量,Nm表示雄性蜘蛛数量,N表示种群中个体的数量,即种群规模。
步骤2.3具体为:
步骤2.3.1,计算种群中所有蜘蛛个体的权重,蜘蛛i的权重wi依据下式来计算:
式中:wmax是上代个体权重因子的最大值;wmin是上代个体权重因子的最小值;iter为当前正执行的迭代次数;Maxiter是最大迭代次数;在第一次迭代,即就是k=1时,初始权重参数的人为设定,利用rand函数随机在[0,1]范围内随机生成10组数据,利用max与min函数取出最大与最小值,完成首次权重参数的设定,之后的每次迭代依据公式(10)计算个体的权重;
步骤2.3.2,算完所有蜘蛛个体的权重后,将权重进行由高向低排序,记录最高权重个体的最优值与位置。
步骤2.4具体为:根据雌性协作机制移动雌性蜘蛛:
其中,α、β、δ是放大系数;Sa、Sc、Sd分别代表了蜘蛛a(Sa)的权重、蜘蛛b(Sb)的权重和雌性蜘蛛f(Sf)的权重,根据公式(10)计算;i(Si)表示蜘蛛种群S中的任一蜘蛛个体i;a(Sa)表示蜘蛛种群S中,距离蜘蛛i(Si)最近,且权重比i(Si)更重的蜘蛛个体a;b(Sb)表示蜘蛛种群S中拥有最佳体重的蜘蛛个体b;f(Sf)表示蜘蛛种群S中距离蜘蛛个体a(Sa)最近的雌性蜘蛛个体f;PE为0-1之间的随机数;k、k+1均表示迭代次数;fik表示第k次迭代中第i只雌性个体所需要移动到的具体位置,fik+1表示第k+1次迭代中第i只雌性个体所需要移动到的具体位置,Vibai表示个体a(Sa)的振动因子、Vibbi表示个体b(Sb)的振动因子;
步骤2.5建立雄性蜘蛛协作机制具体为:
式中:表示第k+1代雄性个体的具体位置,表示第k代雄性个体的具体位置;Sd表示与i(Si)最近的雌性蜘蛛f(Sf)的权重;是对应雄性种群M的加权平均值;分别是雄性个体i和雄性个体m的权重值,Vibfi表示个体f(Sf)的振动因子;
振动因此按照如下公式计算:
①距离蜘蛛i(Si)最近,且体重比蜘蛛i(Si)更重的蜘蛛a(Sa)所发出的振动被i(Si)所感知,则个体a(Sa)的振动因子Vibai按下式计算:
式中:wa为小于1的系数;di,a是蜘蛛i(Si)与蜘蛛a(Sa)之间的二范数距离;
②群体中拥有最佳体重的蜘蛛b(Sb)发出振动被i(Si)所感知,则b(Sb)的振动因子Vibbi按下式计算:
式中:wb为小于1的系数;di,b是蜘蛛b(Sb)与蜘蛛i(Si)之间的二范数距离;
③距离蜘蛛i(Si)最近的雌性蜘蛛f(Sf)发出振动被i(Si)所感知,则f(Sf)的振动因子Vibfi按下式计算:
式中:wf为小于1的系数;di,f是雌性蜘蛛f(Sf)与蜘蛛i(Si)之间的二范数距离。
步骤2.6具体为:
步骤2.6.1,执行变异操作:变异操作主要是针对执行完步骤2.4和步骤2.5后的雌雄种群中的部分个体进行位置上的随机改变,以增加后续交配的多种可能情况,经过变异操作后的fik+1代替公式(11)中的fik+1;
式中:fp,fq是雌性子种群中任意两个不同的个体;T为变异相关算子,设置为动态调整,T值对变异操作的影响成正相关,在整个执行过程中由小变大;k为当前迭代次数;
步骤2.6.2,确定婚嫁半径:对于某一蜘蛛个体,只有位于该半径以内的异性蜘蛛个体才考虑进行婚嫁,否则不予考虑;
式中:r表示每个个体的交配半径;Pihigh和Pihigh对应第i个变量的雌性蜘蛛感知范围的上、下限;
步骤2.6.3,执行随机交配策略:对经过变异操作后的符合婚嫁的个体进行随机交配策略,在执行随机交配策略时先设置随机交配概率Ps对雄性个体进行更新,具体为:使用Ps乘以公式(12)即得到新的雄性个体,然后使用新的雄性个体和步骤2.6.1得到雌性个体根据婚嫁半径进行交配;
其中,随机交配概率Ps按照如下公式计算:
式中:Ps是指随机交配概率;Maxiter是最大迭代次数。
步骤2.7具体为:
婚嫁完成后,会产生新的带有权重参数的个体,将步骤2.3.2中进行权重排序的个体与经过婚嫁产生的新个体权重进行比较,淘汰权重最小的个体;如果新生个体权重较小,直接淘汰;如果母代个体权重较小,由新升个体进行替代,并且继承原先个体的性别。
步骤2.8具体为:
判断当前执行迭代数k是否到达最大迭代次数Maxiter;
若未达到,则判断当前发电煤耗Fk是否小于上一次迭代的发电煤耗Fk-1;如果当前的发电成本小于上一次迭代的发电煤耗,则将当前最低煤耗对应的调度方案中每台火电机组的出力作为当前各台火电机组的初始出力,重复步骤2.2-2.8;若当前的发电煤耗Fk大于上一次迭代的发电煤耗Fk-1,则将上一次迭代的发电煤耗对应的各台火电机组的约束出力作为各台火电机组各自的初始出力,重复步骤2.2-2.8。
若当前迭代次数达到最大迭代次数,则判断当前发电煤耗Fk是否小于上一次迭代的发电煤耗Fk-1;若当前的发电煤耗Fk小于上一次迭代的发电煤耗Fk-1,则输出当前的发电煤耗作为最优目标函数值,并输出当前最低发电煤耗对应的每台火电机组的出力,作为最优调度方案;若当前的发电煤耗Fk大于上一次迭代的发电煤耗Fk-1,则输出上一次迭代的最低发电煤耗作为最优目标函数值,并输出上一次迭代的发电煤耗Fk-1对应的每台火电机组的出力,作为最优调度方案。
本发明的有益效果是:
本发明一种基于群居蜘蛛优化算法的发电厂节能调度方法,对电厂中的发电机组负荷分配进行优化,拟合电力系统总发电机组的煤耗特性曲线,建立目标函数方程式,并将阀点效应考虑在内,通过群居蜘蛛优化算法提高调度过程中寻找全局最优解的能力,并利用线性分段权重加速算法收敛速度,直至寻找到各机组的最优负荷分配,本发明通过执行雌雄两种不同协作机制,并设计多种策略,平衡该算法的全局搜索能力与局部数据挖掘能力,从而获得更好的调度方案与更低的电力系统发电总煤耗。
附图说明
图1是采用本发明基于群居蜘蛛优化算法的发电厂节能调度方法进行实际电厂5机静态经济调度时在搜索空间中的最优解收敛过程图;
图2是采用本发明基于群居蜘蛛优化算法的发电厂节能调度方法进行实际电厂5机静态经济调度时的迭代收敛曲线图;
图3是采用本发明基于群居蜘蛛优化算法的发电厂节能调度方法进行IEEE10机动态经济调度时在搜索空间中的最优解收敛过程图;
图4是采用本发明基于群居蜘蛛优化算法的发电厂节能调度方法进行IEEE10机动态经济调度时的迭代收敛曲线图;
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种基于群居蜘蛛优化算法的发电厂节能调度方法,具体按照如下步骤实施:
步骤1,以电力系统总发电煤耗最低作为优化目标,建立目标函数,建立电力系统运行约束条件;
其中建立目标函数具体为:
步骤1.1,计算火电机组的煤耗特性函数即发电成本函数:
其中:Fti(PGit)为时段t火电机组i的发电煤耗;PGit为时段t火电机组i的有功出力;ai、bi、ci为对应机组i的耗量特性系数;
步骤1.2,建立目标函数:
其中:T是调度时段总数,若为静态调度,则T=1;NG是机组总数,
实际电厂各机组运行中,由于实时调节蒸汽供应量,对应的蒸汽调节阀在打开瞬间,会导致蒸汽量的损失,对应机组能耗特性曲线会出现上下波浪的起伏波动,该现象即阀点效应,因此进一步考虑阀点效应建立最终的目标函数:
其中:Eit是t时段由阀点效应引起的第i台机组的煤耗量;gi和hi为阀点效应对应的效应系数;PGimin是第i台机组的最小技术出力;
利用罚函数处理约束条件,通过罚函数法将单个机组负荷平衡的相关问题纳入系统总的机组煤耗特性的目标函数,则最终得到的目标函数的数学表达式如下:
式中:σ1为功率平衡约束的惩罚因子;σ2为不等式约束的惩罚因子;gi(x)为第i个不等式约束,其中n代表不等式约束数量;hj(x)为第j个等式约束,其中z代表等式约束数量。
步骤1中的电力系统运行约束条件包括系统功率平衡约束、网络损耗约束、机组运行约束、机组出力爬坡约束;
系统功率平衡约束为:
式中:PLt是第t时段内系统的总网络损耗;PDt是第t时段内的系统总负荷;
网络损耗约束为:
式中:PGt为NG台发电机组构成的有功功率向量矩阵;为PGt的转置矩阵;B、B0和B00为网损相关系数;B为一个维数为NG×NG的向量矩阵;B0为NG维的向量;B00为常系数;
机组运行约束为:
PGimin≤PGit≤PGimax,i=1,2,3,...,NG (7)
式中,PGimin是第i台机组的最小技术出力,PGimax是第i台机组的有功出力上限;
机组出力爬坡约束为:
其中:UGi为火电机组i的出力增速极值,DGi为火电机组i的出力降速极值,PGi(t-1)为t-1时段火电机组i的有功出力;
若系统功率平衡约束、网络损耗约束、机组运行约束、机组出力爬坡约束为等式则代入(4)中的hj(x)中,若为不等式则代入公式(4)中的gi(x)中;
步骤2,根据群居蜘蛛优化算法,在所建立的电力系统运行约束条件限制下,求解目标函数的最小值,得到电力系统的最低发电煤耗;具体为:
在群居蜘蛛优化算法,将优化问题的搜索空间形式化为空间蜘蛛网,蜘蛛网上的每个位置表示优化问题的一个调度方案,对应目标函数值为F,所有调度方案在蜘蛛网上都有对应的位置。蜘蛛网还是振动的传播媒介,每只蜘蛛在蜘蛛网上都有自己的位置,解的质量或适应度直接反映了目标函数值的优劣,并表示为在当前位置找到食物源的可能性;
步骤2.1,设置蜘蛛种群S的数量规模N,确定雌、雄蜘蛛子种群数量,雌、雄性个体数量分别是Nf、Nm,Nf+Nm=N,随机初始化雌、雄种群个体,每个蜘蛛个体代表一种不同的节能调度方案,设置最大迭代次数Maxiter,初始迭代次数k=0,将公式(4)作为目标函数,设置问题维数即机组总数NG;其中,雌雄种群数目的设定方法为:
Nf=floor[(0.9-rand·0.25)·N]
Nm=N-Nf (9)
式中:rand为[0,1]范围内随机生成的随机数;floor(·)表示实数域到整数域的映射函数,Nf表示雄性蜘蛛数量,Nm表示雄性蜘蛛数量,N表示种群中个体的数量,即种群规模;
步骤2.2,进行全局搜索,并令k=k+1;
步骤2.3,计算种群中所有个体的权重,并进行由高向低的排序,记录最高权重个体的最优值与位置;具体为:
步骤2.3.1,计算种群中所有蜘蛛个体的权重,在生物学中,权重是衡量该个体活动与生存能力强弱的指标。在群居蜘蛛优化算法中,每一只蜘蛛都会被赋予一个权重,该权重表征了蜘蛛i个体的优劣性。为了进一步改善原算法中关于权重处理的不足之处,同时满足算法在不同执行阶段对权重的不同需求,提高算法的收敛性,本发明设计一种会随着迭代次数增加而逐步缩小的动态权重因子以代替原算法中较落后的权重设置方法,蜘蛛i的权重wi依据下式来计算:
式中:wmax是上代个体权重因子的最大值;wmin是上代个体权重因子的最小值;iter为当前正执行的迭代次数;Maxiter是最大迭代次数;在第一次迭代,即就是k=1时,初始权重参数的人为设定,利用rand函数随机在[0,1]范围内随机生成10组数据,利用max与min函数取出最大与最小值,完成首次权重参数的设定,之后的每次迭代依据公式(10)计算个体的权重;
该算法是以迭代的方式不断地寻找最优值,最重个体蜘蛛所处的位置即优化问题的解。假设整个搜索空间为蜘蛛网络,每个潜在的调度方案F即为搜索空间中蜘蛛所处的位置。依据雄性和雌性的搜索机制,每个个体分属于两种不同的进化算子,并在群体内模仿不同的协作行为;
步骤2.3.2,算完所有蜘蛛个体的权重后,将权重进行由高向低排序,记录最高权重个体的最优值与位置。
步骤2.4,建立雌性蜘蛛协作机制;具体为:根据雌性协作机制移动雌性蜘蛛:
其中,α、β、δ是放大系数;Sa、Sc、Sd分别代表了蜘蛛a(Sa)的权重、蜘蛛b(Sb)的权重和雌性蜘蛛f(Sf)的权重,根据公式(10)计算;i(Si)表示蜘蛛种群S中的任一蜘蛛个体i;a(Sa)表示蜘蛛种群S中,距离蜘蛛i(Si)最近,且权重比i(Si)更重的蜘蛛个体a;b(Sb)表示蜘蛛种群S中拥有最佳体重的蜘蛛个体b;f(Sf)表示蜘蛛种群S中距离蜘蛛个体a(Sa)最近的雌性蜘蛛个体f;PE为0-1之间的随机数;k、k+1均表示迭代次数;fik表示第k次迭代中第i只雌性个体所需要移动到的具体位置,fik+1表示第k+1次迭代中第i只雌性个体所需要移动到的具体位置,Vibai表示个体a(Sa)的振动因子、Vibbi表示个体b(Sb)的振动因子;
步骤2.5,建立雄性蜘蛛协作机制;建立雄性蜘蛛协作机制:
式中:表示第k+1代雄性个体的具体位置,表示第k代雄性个体的具体位置;Sd表示与i(Si)最近的雌性蜘蛛f(Sf)的权重;是对应雄性种群M的加权平均值;分别是雄性个体i和雄性个体m的权重值,Vibfi表示个体f(Sf)的振动因子;
雌性协作机制中涉及振动因子的相关设置,由于蜘蛛网是振动的传播媒介,蜘蛛可以在蜘蛛网上自由移动,但是不能离开蜘蛛网,因为蜘蛛网以外的区域为优化问题的不可行解。当蜘蛛移动到一个新的位置,它就会产生振动并在蜘蛛网上传播,每一个振动都持有一只蜘蛛的信息,而其它蜘蛛在接收到振动后就可以获得该信息,蜘蛛i的振动因子Vibfi计算公式如下:
式中:wf为一个常量;di,j是蜘蛛i与j之间的二范数距离;
为了排除实际情况中过多不需要考虑的方案,根据算法对振动因子的类型进行有针对的选取,本发明基于公式主要考虑了三种振动情况:
振动因此按照如下公式计算:
①距离蜘蛛i(Si)最近,且体重比蜘蛛i(Si)更重的蜘蛛a(Sa)所发出的振动被i(Si)所感知,则个体a(Sa)的振动因子Vibai按下式计算:
式中:wa为小于1的系数;di,a是蜘蛛i(Si)与蜘蛛a(Sa)之间的二范数距离;
②群体中拥有最佳体重的蜘蛛b(Sb)发出振动被i(Si)所感知,则b(Sb)的振动因子Vibbi按下式计算:
式中:wb为小于1的系数;di,b是蜘蛛b(Sb)与蜘蛛i(Si)之间的二范数距离;
③距离蜘蛛i(Si)最近的雌性蜘蛛f(Sf)发出振动被i(Si)所感知,则f(Sf)的振动因子Vibfi按下式计算:
式中:wf为小于1的系数;di,f是雌性蜘蛛f(Sf)与蜘蛛i(Si)之间的二范数距离。
步骤2.6,对重新移动后的个体执行变异操作,按照婚配半径,对符合条件的蜘蛛个体进行随机婚配;具体为:
步骤2.6.1,执行变异操作:变异操作主要是针对执行完步骤2.4和步骤2.5后的雌雄种群中的部分个体进行位置上的随机改变,以增加后续交配的多种可能情况,经过变异操作后的fik+1代替公式(11)中的fik+1;
式中:fp,fq是雌性子种群中任意两个不同的个体;T为变异相关算子,设置为动态调整,T值对变异操作的影响成正相关,在整个执行过程中由小变大;k为当前迭代次数;
步骤2.6.2,确定婚嫁半径:对于某一蜘蛛个体,只有位于该半径以内的异性蜘蛛个体才考虑进行婚嫁,否则不予考虑;
式中:r表示每个个体的交配半径;Pihigh和Pihigh对应第i个变量的雌性蜘蛛感知范围的上、下限;
步骤2.6.3,执行随机交配策略:对经过变异操作后的符合婚嫁的个体进行随机交配策略,在执行随机交配策略时先设置随机交配概率Ps对雄性个体进行更新,具体为:使用Ps乘以公式(12)即得到新的雄性个体,然后使用新的雄性个体和步骤2.6.1得到雌性个体根据婚嫁半径进行交配;
其中,随机交配概率Ps按照如下公式计算:
式中:Ps是指随机交配概率;Maxiter是最大迭代次数;
步骤2.7,重构雌雄蜘蛛种群;具体为:
婚嫁完成后,会产生新的带有权重参数的个体,将步骤2.3.2中进行权重排序的个体与经过婚嫁产生的新个体权重进行比较,淘汰权重最小的个体;如果新生个体权重较小,直接淘汰;如果母代个体权重较小,由新升个体进行替代,并且继承原先个体的性别;
步骤2.8,如果当前迭代次数k<Maxiter,返回步骤2.2;否则输出当前最优解及其对应的目标函数值,得到总发电煤耗最低的节能调度方案,具体为:
判断当前执行迭代数k是否到达最大迭代次数Maxiter;
若未达到,则判断当前发电煤耗Fk是否小于上一次迭代的发电煤耗Fk-1;如果当前的发电成本小于上一次迭代的发电煤耗,则将当前最低煤耗对应的调度方案中每台火电机组的出力作为当前各台火电机组的初始出力,重复步骤2.2-2.8;若当前的发电煤耗Fk大于上一次迭代的发电煤耗Fk-1,则将上一次迭代的发电煤耗对应的各台火电机组的约束出力作为各台火电机组各自的初始出力,重复步骤2.2-2.8。
若当前迭代次数达到最大迭代次数,则判断当前发电煤耗Fk是否小于上一次迭代的发电煤耗Fk-1;若当前的发电煤耗Fk小于上一次迭代的发电煤耗Fk-1,则输出当前的发电煤耗作为最优目标函数值,并输出当前最低发电煤耗对应的每台火电机组的出力,作为最优调度方案;若当前的发电煤耗Fk大于上一次迭代的发电煤耗Fk-1,则输出上一次迭代的最低发电煤耗作为最优目标函数值,并输出上一次迭代的发电煤耗Fk-1对应的每台火电机组的出力,作为最优调度方案。
通过实际电厂5机系统、IEEE10机动态经济调度测试系统、风火联合电力系统执行本发明的方法。
实施例1
运用群居蜘蛛优化算法对实际电厂5机系统进行发电厂节能调度优化并与现有优化结果进行对比,系统数据见表1所示。各机组的运行上限为600MW,下限为240MW,总负荷分别为2374.63MW、2469.94MW、2718.88MW。本实施例有实际运行数据支撑,使用拟合更精准的三次函数机组耗量特性函数公式进行计算,如下式所示:
yi=aiP3+biP2+ciP+di (21)
表1实际电厂5机系统相关测试数据
不同算法求解的最优调度方案如表2所示:
表2三种方法三种负荷的优化比较
2469.94MW和2718.88MW负荷下的环保与经济性指标见表3。
表3 2469.94MW和2718.88MW负荷下的环保与经济性指标
如图1-2所示,分别为采用本发明基于群居蜘蛛优化算法的发电厂节能调度方法进行实际电厂5机静态经济调度时在搜索空间中的最优解收敛过程图和迭代收敛曲线图,图1说明在种群迭代过程中最优解的空间3D迭代过程及最终收敛到最优解的具体空间坐标。图2说明随着迭代次数增多,最优解的具体变化曲线,该曲线表面收敛效果良好快速。
实施例2
以IEEE10机测试系统为例,考虑到机组相邻时段间的耦合关系,并且考虑阀点效应,对10台机组的电力系统动态经济调度进行优化测试。系统技术参数见表4,6时段负荷需求如表5所示。
表4动态经济调度10机组相关参数
表4动态经济调度10机组相关参数
表5 6时段动态经济调度各个时段负荷需求
本发明方法对6时段动态经济调度的优化结果如表6所示:
表6本发明方法6时段动态经济调度优化结果
表7本发明方法与其它算法的优化结果对比
如图3-4所示,分别为采用本发明基于群居蜘蛛优化算法的发电厂节能调度方法进行IEEE10机动态经济调度时在搜索空间中的最优解收敛过程图和迭代收敛曲线图,图3说明在种群迭代过程中最优解的空间3D迭代过程及最终收敛到最优解的具体空间坐标。图4说明随着迭代次数增多,最优解的具体变化曲线,该曲线表面收敛效果良好快速。
由表2、表3可以分析出:三类负荷需求逐级递增的情况下,最小负荷时,本发明方法与其他两类优化算法性能相比居有优越性。在负荷越重的情况下,其优化效果越好,并且在重负载下,优化性能甚至超过了低负荷和中等负荷下的单位煤耗量,其优化性能曲线在中等负荷或重度负荷下的效果突出。这是由于低负荷下,大容量火电机组无需过多调节,满载负荷下火电机组需要全部输出运行,中段负荷下有较大的调节优化空间,充分发挥了本发明方法较强的全局搜索能力,求得了较优的调度方案。
表7将本发明方法与MVO算法、进化规划算法和顺序二次规划方法的优化结果进行对比,本发明方法获得的调度方案比MVO节约煤耗134.3802吨,比进化规划和顺序二次规划方法分别节约煤耗101.7905吨和59.0923吨。可以看出,本发明方法的求解性能明显最优。





评论
全部评论
共{{commentCount}}条{{rs.Msg_Content}}