公开/公告号CN104036331A
专利类型发明专利
公开/公告日2014-09-10
原文格式PDF
申请/专利号CN201410240515.9
申请日2014-05-30
分类号G06Q10/04(20120101);G06Q50/06(20120101);G06N3/00(20060101);
代理机构11271 北京安博达知识产权代理有限公司;
代理人徐国文
地址 100031 北京市西城区西长安街86号
入库时间 2023-12-17 01:44:27
法律状态公告日
法律状态信息
法律状态
2017-09-01
授权
授权
2014-10-15
实质审查的生效 IPC(主分类):G06Q10/04 申请日:20140530
实质审查的生效
2014-09-10
公开
公开
技术领域
本发明涉及一种电力系统优化运行的经济调度方法,具体讲涉及一种基于改进粒子群算 法的电力系统动态经济调度方法。
背景技术
机组运行需要成本,电力系统运行过程需要考虑运行的经济性,不同的机组成本函数不 同,不同的出力方案的经济成本也有所不同。经济调度的目的在于一定周期内,优化各机组 的出力,以获得最优的出力水平,从而使成本最小。机组前后时段的出力还涉及到机组的爬 坡能力约束,机组前后时段的出力密切相关,这就需要进行电力系统的动态经济调度。电力 系统动态经济调度是电力系统安全经济运行的一部分,其目的是在满足各种安全性约束以及 电能质量要求的条件下安排机组的运行方式,使系统总的运行费用最小。
动态经济调度所涉及的变量较多,需要同时考虑等式和不等式的约束条件,现有优化算 法难以满足计算要求。问题维数较高、约束条件严格,造成各个可行解对应目标函数值较为 接近,使用标准的粒子群算法时,容易造成搜索陷入局部最优,从而过早收敛,对全局最优 解搜索的停滞。
解决过早收敛的现有方法主要是保证粒子的多样性,避免迭代后期,粒子群个体相似, 陷入局部搜索。如结合遗传算法对粒子的位置进行交叉、变异等操作,以保证粒子的多样性。 但由于动态经济调度的约束条件较为严格,解空间被限制在很小的范围,这种对粒子位置的 操作容易越限,同时针对性也不够强,动态经济调度问题存在一定的局限性。
在进行电力系统动态经济调度中,为了避免陷入局部搜索,现的有粒子群算法普遍采用 对粒子位置进行调整的方法,如结合遗传算法,对粒子进行交叉、变异等操作。但这些方法 容易千万粒子越限,并在迭代后期对搜索区域的针对性不强,容易千万迭代过程的浪费。
发明内容
针对现有技术的不足,本发明的目的是提供一种基于改进粒子群算法的电力系统动态经 济调度方法,本发明对粒子群算法的迭代公式进行了改进,加入自适应方法,以对粒子速度 进行调整,并根据约束条件对粒子进行调整,以保证粒子不越限。采用改进后的粒子群算法 对电力系统的动态经济调度进行求解,以在满足相关约束条件的情况下,获得优化后的各机 组各时段的出力水平。
本发明的目的是采用下述技术方案实现的:
本发明提供一种基于改进粒子群算法的电力系统动态经济调度方法,其改进之处在于, 所述方法包括下述步骤:
A、设置粒子群算法的参数;
B、生成初始粒子群;
C、设置粒子在电力系统动态经济调度中的速度上下限约束;
D、确定粒子的适应值;
E、比较粒子的适应值,找出每个粒子的历史最优值及其位置,以及达到全局最优值的粒 子及其位置;
F、根据局部最优值以及全部最优值更新每个粒子的位置和速度;
G、根据约束条件,以及粒子速度的上下限约束判断粒子的位置和速度是否越限,若越 限,将粒子的位置和速度调整至约束范围内;
H、采用自适应方法,对粒子位置进行调整;
I、若达到迭代次数,停止迭代,得到最终的结果。
进一步地,所述步骤A中,设置粒子群算法所需的各个参数,所述参数包括权重因子、 学习因子、粒子群规模数和迭代次数,权重因子取ωmax=0.9,ωmin=0.4,学习因子取 c1=c2=3.05,粒子群规模和迭代次数根据实际情况设置,包括设置为粒子群规模数N=40, 迭代次数C=500。
进一步地,所述步骤B中,根据计算期间内各时段的负荷水平随机分摊到各个机组的出 力水平,按照粒子群规模数重复该步骤,获得初始粒子群;包括:
随机生成行数为机组数、列数为时段数的随机数组,该数组的元素均为正数,且每一列 元素相加之和均为一;将时段负荷乘以相应的列即可得到初始粒子,重复该操作,即得到整 个初始粒子群,即对于第m个粒子生成如下:
Pi,t=ai,t·PD,t (2);
a1,t+a2,t+…+ai,t+…aM,t=1 (3);
其中:T表示经济调度的时段数,为一天24小时,以每小时为一个段,共24个时段,M 表示机组数;ai,t表示第i台机组第t时段的比例元素,为随机生成,满足(3)式,故(3)式 表示对于第t时段所有M台的比例元素之和为1,PD,t为第t时段的负荷的大小,采用相同方 法生成其他粒子。
进一步地,所述步骤C中,根据各机组的上下限约束确定各个粒子的速度上下限,粒子 速度的上下限根据机组上下限出力之差进行缩减,缩减范围为1%,即粒子速度上限为机组出 力上限减去出力下限之差的1%,粒子速度下限为机组出力下限减去出力上限之差的1%。
进一步地,所述步骤D中,根据步骤B中所获得的初始粒子群,根据电力系统动态经济 调度目标函数确定粒子的适应值,电力系统动态经济调度目标函数为:
其中:Pi,t为第i台机组第t时段的出力,T为动态经济调度的时段数,M为参与动态经 济调度的机组数;ai、bi、ci分别表示相应的成本系统,具体根据机组情况而定;
相应的适应值为:
fa=f (5);
即以电力系统动态经济调度目标函数计算结果作为粒子适应值,目标函数值越小,适应 值越小,粒子的适应度越高。
进一步地,电力系统动态经济调度的上下限约束包括功率平衡约束、机组出力上下限约 束和机组爬坡约束;
其中功率平衡约束用下述表达式表示:
其中:PD,t为第t时段的负荷大小,Ploss,t第t时段的网损大小;
网损计算采用B系数法计算,表达式如下:
Ploss,t=PtT*B*Pt (7);
其中:Pt为第t时段各机组出力的列向量,PtT表示Pt的转置,B为M×M的矩阵,用于 计算网损;
机组出力上下限约束用下述表达式表示:
Pimin≤Pi,t≤Pimax (8);
其中:Pimin和Pimax分别表示第i台机组第t时段的出力的下限和上限;
机组爬坡约束用下述表达式表示:
其中:为向下爬坡速度,为负值;为向上爬坡速度,为正值;Δt表示两个调度时 段之间的时间间隔。
进一步地,所述步骤E中,比较各粒子的适应值,确定粒子适应度最高的粒子,找到各 个粒子的历史最优值,即局部最优值,和粒子位置,以及全局最优值及粒子位置;若第一次 迭代,则找到全局最优值及对应粒子位置;
在粒子群算法中,粒子群的种群数为所包含的粒子数量,种群里面每个个体均称为一个 粒子;每一个可行解均是种群中的一个粒子,每个粒子都有两个属性,位移和速度,均表示 为一个矩阵向量,如下式所示:
其中:Pm为第m个粒子的位移,Pi,t为第i台机组第t时段的出力,即粒子的位置;Vm是 第Vm个粒子的速度,Vi,t是对应的第i台机组t时段的出力的修正量;T为动态经济调度的 时段数;M为参与动态经济调度的机组数;在电力系统动态经济调度中,粒子的位置即表示 各个机组各时段的出力,行数表示机组数,列数表示时段数。
进一步地,所述步骤F中,根据步骤E所得到的局部最优值和粒子位置,以及全部最优 值及粒子位置,根据下述表达式更新粒子的速度与位置:
其中:分别表示速度和位置的调整量;为第m个粒子的第k代的速度,第m个粒子的第k+1代的速度;为第m个粒子的第k代,为m个粒子的第k+1代; 为第m个粒子的历史最优值,gbestk为第k次迭代的全局最优值;ω为惯性因子,用 于权衡粒子群算法的全局搜索和局部搜索能力;ω取值越大越易于算法增大搜寻空间,取值 越小越容易进行局部寻优,采用自适应调整惯性因子的方式,即:
其中:ωmax取0.9,ωmin取0.4,C为迭代的最大次数,k为目前迭代次数;c1、c2为学习 因子,分别为控制粒子向个体最优和全局最优位置方向飞行的最大步长;取c1=c2=3.05;
用于调整越限的粒子,粒子越限时,按照(6)、(7)、(8)、(9)式,根据下列规则 对粒子进行调整:
1)根据速度上下限约束对机组出力进行调整,机组越上限时,则将其出力限定在上限, 机组越下限时,则将其出力限定在下限;
2)根据爬坡约束对机组出力进行调整,机组向上爬坡时,若越限,则将机组出力限定在 向上爬坡的上限;机组向下爬坡时,若越限,则将机组出力限定在向下爬坡的下限;
3)根据调整后的机组出力,重新计算网损;
4)计算各时段出力的不平衡量,即各时段机组出力之和与负荷之间的差值,将不平衡量 根据机组等耗量微增率的大小并结合各个机组的上下限出力约束进行分配。
进一步地,对于粒子速度,将其限定在速度约束范围内,速度约束公式如下:
其中:为粒子速度的第i行,第j列的元素,为粒子速度的第i行,第 j列的元素中所限定的最大值,为粒子速度的第i行,第j列的元素中所限定的最 小值;粒子速度的最大、最小值根据以下表达式设置:
其中:分别为粒子中对应第i台机组速度的上限和下限,将会扩展成与 时段相应长度的横向量,即得到粒子第i行的速度上限和下限。
进一步地,所述步骤H中,根据步骤E中得到全局最优值,比较前后两次的全局最优值, 采用自适应方法,根据两次全局最优值之差的绝对值大小,对粒子速度进行调整,绝对值越 大,调整程度越大;执行如下:
粒子群算法中,随着迭代次数的增加,可能会陷入局部最优,此时粒子的速度会随之减 小,故对粒子速度进行调整,即:
v1=v0+Δv (18);
其中:v0、v1分别为调整前后的粒子速度,Δv为调整的速度量,调整时采用自适应算法, 自适应算法公式如下:
其中:vini为粒子群算法中所设置的初始速度,r3为-0.1到0.1的随机数,r4为-0.01到0.01 的随机数,对于随机数r3、r4根据实际需用设定,λ则根据下式计算:
其中:fbestk为第k代粒子的全局最优位置,fbestk-1第k-1代粒子的全局最优位置λ即为前 后两次全局最优值差值相对比例,据此对速度进行提速的调整,避免前后两次全局最优值过 于相近,陷于局部最优。
进一步地,所述步骤I中,根据步骤A已设定的迭代算法,判定迭代次数是否达到:若 达到迭代次数C=500,则停止计算,得到粒子全局最优值即为最终粒子位置,该粒子位置即 为各机组在各时段的出力,从而计算出最终结果,最终结果包括各机组各时段的出力水平以 及计算经济周期内的机组运行总费用;若没有达到迭代次数,则返回到步骤D,继续计算。
与现有技术比,本发明达到的有益效果是:
本发明提供的基于改进粒子群算法的电力系统动态经济调度方法,其特征在于基于粒子 速度约束与经济调度约束条件构成的粒子位置约束对每次迭代得到的粒子速度和粒子位置进 行调整。现有粒子群算法,并没有根据适应值的变化对粒子速度进行调整,当对粒子的速度 进行调整,在迭代陷入局部搜索时,粒子速度基本变为零,不利于跳出局部搜索,因此本发 明中,基于迭代前后两次得到的适应值进行粒子位置调整,对粒子速度进行提速,以跳出局 部搜索,在提速过程中,采用自适应方法,保证粒子即能跳出局部搜索,也能保证粒子的小 范围搜索功能,而且采用调整速度的方法能更有针对性地去执行搜索,从而更好地在电力系 统动态经济调度中进行寻优,以在满足相关物理约束,并考虑网损的情况下,实现发电的最 小出力,从而实现发电总费用最小化,达到动态经济调度的目的。
附图说明
图1是本发明提供的基于改进粒子群算法的电力系统动态经济调度方法的流程图;
图2是本发明提供的根据(6)、(7)、(8)、(9)式调整粒子位置的分解子步骤。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细说明。
本发明提供的基于改进粒子群算法的电力系统动态经济调度方法的流程图如图1所示, 包括下述步骤:
A、设置粒子群算法所需的各个参数,所述参数包括权重因子、学习因子、粒子群规模 数和迭代次数,权重因子取ωmax=0.9,ωmin=0.4,学习因子取c1=c2=3.05,粒子群规模和 迭代次数根据实际情况设置,包括设置为粒子群规模数N=40,迭代次数C=500。
B、根据计算期间内各时段的负荷水平随机分摊到各个机组的出力水平,按照粒子群规 模数重复该步骤,获得初始粒子群;包括:
随机生成行数为机组数、列数为时段数的随机数组,该数组的元素均为正数,且每一列 元素相加之和均为一;将时段负荷乘以相应的列即可得到初始粒子,重复该操作,即得到整 个初始粒子群,即对于第m个粒子生成如下:
Pi,t=ai,t·PD,t (2);
a1,t+a2,t+…+ai,t+…aM,t=1 (3);
其中:T表示经济调度的时段数,为一天24小时,以每小时为一个段,共24个时段,M 表示机组数;ai,t表示第i台机组第t时段的比例元素,为随机生成,但必须满足(3)式,故 (3)式表示对于第t时段所有M台的比例元素之和为1,PD,t为第t时段的负荷的大小,采用 相同方法生成其他粒子。
C、设置粒子的速度上下限约束:根据各机组的上下限约束确定各个粒子的速度上下限, 粒子速度的上下限根据机组上下限出力之差进行缩减,缩减范围为1%,即粒子速度上限为机 组出力上限减去出力下限之差的1%,粒子速度下限为机组出力下限减去出力上限之差的1%。
D、根据目标函数,计算各粒子的适应值:
根据步骤B中所获得的初始粒子群,根据电力系统动态经济调度目标函数确定粒子的适 应值,电力系统动态经济调度目标函数为:
其中:Pit为第i台机组第t时段的出力,T为动态经济调度的时段数,M为参与动态经济 调度的机组数;ai、bi、ci分别表示相应的成本系统,具体根据机组情况而定;
相应的适应值为:
fa=f (5);
即以电力系统动态经济调度目标函数计算结果作为粒子适应值,目标函数值越小,适应 值越小,粒子的适应度越高。
进一步地,电力系统动态经济调度的上下限约束包括功率平衡约束、机组出力上下限约 束和机组爬坡约束;
其中功率平衡约束用下述表达式表示:
其中:PD,t为第t时段的负荷大小,Ploss,t第t时段的网损大小;
网损计算采用B系数法计算,表达式如下:
Ploss,t=PtT*B*Pt (7);
其中:Pt为第t时段各机组出力的列向量,PtT表示Pt的转置,B为M×M的矩阵,用于 计算网损;
机组出力上下限约束用下述表达式表示:
Pimin≤Pit≤Pimax (8);
其中:Pimin和Pimax分别表示第i台机组第t时段的出力的下限和上限;
机组爬坡约束用下述表达式表示:
其中:为向下爬坡速度,为负值;为向上爬坡速度,为正值;Δt表示两个调度时 段之间的时间间隔。
E、比较各粒子的适应值,确定粒子适应度最高的粒子,找到各个粒子的历史最优值,即 局部最优值,和粒子位置,以及全局最优值及粒子位置;若第一次迭代,则找到全局最优值 及对应粒子位置;
在粒子群算法中,粒子群的种群数为所包含的粒子数量,种群里面每个个体均称为一个 粒子;每一个可行解均是种群中的一个粒子,每个粒子都有两个属性,位移和速度,均表示 为一个矩阵向量,如下式所示:
其中:Pm为第m个粒子的位移,Pi,t为第i台机组第t时段的出力,即粒子的位置;Vm是 第Vm个粒子的速度,Vi,t是对应的第i台机组t时段的出力的修正量;T为动态经济调度的 时段数;M为参与动态经济调度的机组数;在电力系统动态经济调度中,粒子的位置即表示 各个机组各时段的出力,行数表示机组数,列数表示时段数。
F、根据步骤E所得到的局部最优值和粒子位置,以及全部最优值及粒子位置,根据下 述表达式更新粒子的速度与位置:
其中:分别表示速度和位置的调整量;为第m个粒子的第k代的速度,第m个粒子的第k+1代的速度;为第m个粒子的第k代,为m个粒子的第k+1代; 为第m个粒子的历史最优值,gbestk为第k次迭代的全局最优值;ω为惯性因子,用 于权衡粒子群算法的全局搜索和局部搜索能力;ω取值越大越易于算法增大搜寻空间,取值 越小越容易进行局部寻优,采用自适应调整惯性因子的方式,即:
其中:ωmax取0.9,ωmin取0.4,C为迭代的最大次数,k为目前迭代次数;c1、c2为学习 因子,分别为控制粒子向个体最优和全局最优位置方向飞行的最大步长;取c1=c2=3.05;
用于调整越限的粒子,粒子越限时,按照(6)、(7)、(8)、(9)式,根据下列规则 对粒子进行调整:
1)根据速度上下限约束对机组出力进行调整,机组越上限时,则将其出力限定在上限, 机组越下限时,则将其出力限定在下限;
2)根据爬坡约束对机组出力进行调整,机组向上爬坡时,若越限,则将机组出力限定在 向上爬坡的上限;机组向下爬坡时,若越限,则将机组出力限定在向下爬坡的下限;
3)根据调整后的机组出力,重新计算网损;
4)计算各时段出力的不平衡量,即各时段机组出力之和与负荷之间的差值,将不平衡量 根据机组等耗量微增率的大小并结合各个机组的上下限出力约束进行分配。等耗量微增率即 也就是第i台机组t时段成本对出力的偏导。
G、根据约束条件,以及粒子速度的上下限约束判断粒子的位置和速度是否越限,若越 限,将粒子的位置和速度调整至约束范围内。对于粒子速度,将其限定在速度约束范围内, 速度约束公式如下:
其中:为粒子速度的第i行,第j列的元素,为粒子速度的第i行,第 j列的元素中所限定的最大值,为粒子速度的第i行,第j列的元素中所限定的最 小值;粒子速度的最大、最小值根据以下表达式设置:
其中:分别为粒子中对应第i台机组速度的上限和下限,将会扩展成与 时段相应长度的横向量,即得到粒子第i行的速度上限和下限。
H、根据步骤E中得到全局最优值,比较前后两次的全局最优值,采用自适应方法,根 据两次全局最优值之差的绝对值大小,对粒子速度进行调整,绝对值越大,调整程度越大; 执行如下:
粒子群算法中,随着迭代次数的增加,可能会陷入局部最优,此时粒子的速度会随之减 小,故对粒子速度进行调整,即:
v1=v0+Δv (18);
其中:v0、v1分别为调整前后的粒子速度,Δv为调整的速度量,调整时采用自适应算法, 自适应算法公式如下:
其中:vini为粒子群算法中所设置的初始速度,r3为-0.1到0.1的随机数,r4为-0.01到0.01 的随机数,对于随机数r3、r4根据实际需用设定,λ则根据下式计算:
其中:fbestk为第k代粒子的全局最优位置,fbestk-1第k-1代粒子的全局最优位置λ即为前 后两次全局最优值差值相对比例,据此对速度进行提速的调整,避免前后两次全局最优值过 于相近,陷于局部最优。
I、根据步骤A已设定的迭代算法,判定迭代次数是否达到:若达到迭代次数C=500, 则停止计算,得到粒子全局最优值即为最终粒子位置,该粒子位置即为各机组在各时段的出 力,从而计算出最终结果,最终结果包括各机组各时段的出力水平以及计算经济周期内的机 组运行总费用;若没有达到迭代次数,则返回到步骤D,继续计算。
实施例
本发明采用的电力系统算例数据如下,具体负荷数据如表1所示,电源参数如表2所示, 一共是6个火力发电机组,本发明计算网损时采用B系数矩阵法,故列B系数矩阵于表3。
表1负荷参数
表2机组参数
表3B系数矩阵参数单位:×10-5
表4各机组各时段出力
表5调度日内的总发电费用
表4为采用改进粒子群得到的各机组出力的优化结果。表5分别为常规粒子群算法与采 用本发明中的改进自适应粒子群算法获得的该调度日内总的发电量和发电费用。
本发明对粒子群算法的迭代公式进行了改进,加入自适应方法,以对粒子速度进行调整, 并根据约束条件对粒子进行调整,以保证粒子不越限。采用改进后的粒子群算法对电力系统 的动态经济调度进行求解,获得了优化后的各机组各时段的出力水平,通过与常规的粒子群 算法对比可以看出,本发明中提出的改进自适应粒子群算法能够获得更好的优化结果。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照 上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本 发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等 同替换,其均应涵盖在本发明的权利要求范围当中。
机译: 基于改进粒子群算法的无人水面车辆路径规划方法和系统
机译: 基于改进的粒子群算法的供应链生产与运输协同调度方法与系统
机译: 基于权重改进粒子群算法的自行车道规划方法