掌桥专利:专业的专利平台
掌桥专利
首页

基于遗传算法的模拟中标出力优化方法和系统

文献发布时间:2023-06-19 18:29:06


基于遗传算法的模拟中标出力优化方法和系统

技术领域

本发明涉及模拟中标出力优化技术领域,具体涉及一种基于遗传算法的模拟中标出力优化方法和系统。

背景技术

随着新电改的不断深入,在输配分开电力市场中,市场内各发电公司需要竞价上网,同时市场内各供电公司需要竞价购电。发电公司和供电公司在竞价上网或购电时,采用不同的报价策略时获得的运营收益及煤耗可能颇有差异。由此可见采用何种报价策略以实现供电煤耗最低或运营收益最大化是发电公司和供电公司共同关注的问题。

电力市场的现有竞价算法有排队法、等报价法、线性规划法、网络流规划法、动态规划法和对偶规划法等,但每种方法各有侧重点,使用条件各有不同。

以往技术中没有具体写明分段出力报价的修正方法及中标出力的修正方法,且一般遗传算法在计算适应度函数时,需要先对所有个体的分段出力和报价进行修正,修正过程中可能会导致段数减少,因此,计算只能逐个计算、修正所有个体的分段出力和报价,及逐个模拟所有个体的中标出力及进行爬坡速率修正,该运算过程相对繁琐,程序的计算速度相对较慢、耗时长。

发明内容

(一)解决的技术问题

针对现有技术的不足,本发明提供了一种基于遗传算法的模拟中标出力优化方法和系统,解决了现有的模拟中标出力优化方法运行耗时长的问题。

(二)技术方案

为实现以上目的,本发明通过以下技术方案予以实现:

第一方面,提供了一种基于遗传算法的模拟中标出力优化方法,该方法包括:

S1、基于由二进制编码的初始种群获取满足报价区间和机组出力区间的分段出力报价矩阵XP;且所述分段出力报价矩阵XP包含各个染色体对应的所有机组在所有分段的出力值和报价;

S2、基于当前种群的出力报价矩阵XP拆分得到出力矩阵X和报价矩阵P,并基于机组出力区间获取出力上限矩阵ubx和出力下限矩阵lbx;

S3、基于出力矩阵X获取各个机组的分段出力矩阵X

S4、基于最小分段间隔gap、出力上限矩阵ubx和出力下限矩阵lbx对各个机组的分段出力矩阵X

S5、获取分段出力矩阵XC

S6、基于出清电价矩阵M、修正后的分段报价矩阵PC

S7、基于机组的爬坡速率,对中标出力矩阵R

S8、基于修正后的中标出力矩阵RC

S9、判断是否达到最大迭代次数,若是,输出当前最优染色体;否则,利用遗传算法更新当前种群,再返回S2。

进一步的,所述出力矩阵X为:

所述报价矩阵P为:

所述出力上限矩阵ubx为:

ubx=[x

所述出力下限矩阵lbx为:

lbx=[x

且所述机组g的分段出力矩阵Xg为:

所述机组g的分段报价矩阵P

其中,

x

g=1,2,…,G;l=1,2,…,L;n=1,…,N;GL=G×L。

进一步的,所述对各个机组的分段出力矩阵X

XC

且所述修正后的各个机组的分段出力矩阵XC

其中,

XC

lbx

ubx

round表示按指定的位数对数值进行四舍五入;

gap表示最小分段间隔;

XC

进一步的,S5包括:

S5.1、基于修正后的分段出力矩阵XC

所述分段出力差值矩阵

所述分段报价差值矩阵

S5.2、将分段出力差值矩阵

S5.3、基于第一临时矩阵

S5.4、在修正后的分段报价差值矩阵

S5.5、对第二临时矩阵

其中,

l=2,3,…,L。

进一步的,所述出清电价矩阵M为:

M=[[m

所述全局分段报价矩阵PA

所述全局分段出力矩阵XA

所述全局出清电价矩阵MA为:

模拟中标出力的计算步骤包括:

S6.1、计算全局出清电价矩阵MA与全局分段报价矩阵PA

S6.2、记录价差矩阵DP中最后一位大于等于0的值的索引,得到索引矩阵IDX,取出力矩阵XA

其中,

m

全局分段报价矩阵PA

全局分段出力矩阵XA

全局出清电价矩阵MA中[m

进一步的,所述基于机组的爬坡速率,对中标出力矩阵Rg进行修正,得到修正后的中标出力矩阵RC

S7.1、计算中标出力矩阵R

S7.2、记录中标出力差值矩阵R

S7.3、对RC

S7.4、重复S7.1~S7.3,直至所有出力均满足爬坡速率的约束,得到修正后的中标出力矩阵RC

进一步的,所述染色体的适应度为:

FitV表示发电厂的整体供电煤耗;

coal

elec

第二方面,提供了一种基于遗传算法的模拟中标出力优化系统,所述系统包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

(三)有益效果

本发明提供了一种基于遗传算法的模拟中标出力优化方法和系统。与现有技术相比,具备以下有益效果:

1)本发明提出的一种基于遗传算法模拟中标出力优化方法在遗传算法的基础上,将发电量约束、出力间隔约束和爬坡速率约束引入适应度函数,在满足约束条件的同时,给用户提供一种煤耗最低的报价策略及各时刻中标出力方案,对出力间隔约束及爬坡速率约束采用矩阵算法。该方法相比传统算法大大提升了运算速度,能够更好地满足用户体验,同时能够达到节能减排、提高运行效率的好处。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请实施例通过提供一种基于遗传算法的模拟中标出力优化方法和系统,解决了现有的模拟中标出力优化方法运行耗时长的问题。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

实施例1:

如图1所示,本发明提供了一种基于遗传算法的模拟中标出力优化方法,该方法由计算机执行,该方法包括:

S1、基于由二进制编码的初始种群获取满足报价区间和机组出力区间的分段出力报价矩阵XP;且所述分段出力报价矩阵XP包含各个染色体对应的所有机组在所有分段的出力值和报价;

S2、基于当前种群的出力报价矩阵XP拆分得到出力矩阵X和报价矩阵P,并基于机组出力区间获取出力上限矩阵ubx和出力下限矩阵lbx;

S3、基于出力矩阵X获取各个机组的分段出力矩阵X

S4、基于最小分段间隔gap、出力上限矩阵ubx和出力下限矩阵lbx对各个机组的分段出力矩阵X

S5、获取分段出力矩阵XC

S6、基于出清电价矩阵M、修正后的分段报价矩阵PC

S7、基于机组的爬坡速率,对中标出力矩阵R

S8、基于修正后的中标出力矩阵RC

S9、判断是否达到最大迭代次数,若是,输出当前最优染色体;否则,利用遗传算法更新当前种群,再返回S2。

本实施例的有益效果为:

1)本发明实施例提出的一种基于遗传算法模拟中标出力优化方法在遗传算法的基础上,将发电量约束、出力间隔约束和爬坡速率约束引入适应度函数,在满足约束条件的同时,给用户提供一种煤耗最低的报价策略及各时刻中标出力方案,对出力间隔约束及爬坡速率约束采用矩阵算法。该方法相比传统算法大大提升了运算速度,能够更好地满足用户体验,同时能够达到节能减排、提高运行效率的好处。

下面对本发明实施例的实现过程进行详细说明:

S1、基于由二进制编码的初始种群获取满足报价区间和机组出力区间的分段出力报价矩阵XP。

在具体实施时,可通过如下方式获取分段出力报价矩阵XP:

S1.1、获取初始种群及染色体的上下限约束;

chrom

chrom

x

p

g=1,2,…,G,l=1,2,…,L;

N表示种群大小,G表示机组总数,L表示分段数量。

且染色体的上下限约束具体包括:出力报价下限矩阵lb和出力报价上限矩阵ub,可表示为:

lb=[x

ub=[x

lb表示出力报价下限矩阵;

ub表示出力报价上限矩阵;

x

p

S1.2、对各个机组在所有分段的出力值和报价进行累积加和,构建各个染色体对应的出力报价累积加和矩阵;

具体的:

第n个染色体对应的出力报价累积加和矩阵

其中:

g=1,2,…,G,l=1,2,…,L。

g=1,2,…,G,l=1,2,…,L。

S1.3、基于每个分段所占的比例,再将出力值和报价缩放在出力和报价上下限,得到分段出力报价矩阵XP;

且计算方法如下:

得到的分段出力报价矩阵XP可表示为:

其中:

S2、基于当前种群的出力报价矩阵XP拆分得到出力矩阵X和报价矩阵P,并基于机组出力区间获取出力上限矩阵ubx和出力下限矩阵lbx。

具体实施时,可包括如下步骤:

S2.1、将出力报价矩阵XP拆分为出力矩阵X和报价矩阵P;

可表示为:

S2.2、基于出力报价下限矩阵lb和出力报价上限矩阵ub获取出力上限矩阵ubx和出力下限矩阵lbx;

ubx=[x

lbx=[x

S3、基于出力矩阵X获取各个机组的分段出力矩阵X

在具体实施时,所述机组g的分段出力矩阵X

所述机组g的分段报价矩阵P

其中,

x

g=1,2,…,G;l=1,2,…,L;n=1,…,N;GL=G×L。

S4、基于最小分段间隔gap、出力上限矩阵ubx和出力下限矩阵lbx对各个机组的分段出力矩阵Xg进行修正,得到修正后的各个机组的分段出力矩阵XCg。

分段出力矩阵是遗传算法随机给出的,可能不满足最小间隔的要求,这里是根据间隔gap值以及出力下限和上限对分段进行修正,使每段的出力均为最小间隔的整数倍,且在具体实施时,修正公式为:

XC

且所述修正后的各个机组的分段出力矩阵XC

其中,

XC

lbx

ubx

round表示按指定的位数对数值进行四舍五入;

gap表示最小分段间隔;

XC

S5、获取分段出力矩阵XC

由于分段出力要求是单调递增的,正常操作过程需要将不满足递增条件的段数(这里包括出力和对应的报价)删除掉;为了能够使用矩阵运算,将不满足递增条件的段数设置为跟前一段的出力和价格相等,这样既可以保证矩阵大小不变,同时由于不会对后续计算产生影响。

在具体实施时,需要计算每段出力之间的差值,如果差值等于0,说明该段的出力与上一段的出力相等,此时需要对对应段数的价格进行修正,使其等于上一段的价格,从而达到占位的作用,该占位不影响最终的计算结果,因此,可采用如下步骤:

S5.1、基于修正后的分段出力矩阵XC

所述分段出力差值矩阵

所述分段报价差值矩阵

S5.2、将分段出力差值矩阵

S5.3、基于第一临时矩阵

S5.4、因为差值矩阵是一个临时矩阵,会比原始矩阵少第一列,因此在修正后的分段报价差值矩阵

S5.5、对第二临时矩阵

其中,

l=2,3,…,L。

S6、基于出清电价矩阵M、修正后的分段报价矩阵PC

在具体实施时,所述出清电价矩阵M可表示为:

M=[[m

则分别对修正后的分段出力矩阵XC

所述全局分段报价矩阵PA

所述全局分段出力矩阵XA

所述全局出清电价矩阵MA可表示为:

再模拟中标出力,得到中标出力矩阵R

S6.1、计算全局出清电价矩阵MA与全局分段报价矩阵PA

S6.2、按照当报价小于等于出清价格时,即

其中,

m

全局分段报价矩阵PA

全局分段出力矩阵XA

全局出清电价矩阵MA中[m

具体的,可用矩阵IDX记录价差矩阵DP中对应分段最大的中标报价的索引,该索引对应的出力矩阵上相应位置上的出力即为中标出力。

举例说明:

从价差矩阵DP中找到中标的报价段,即DP中加粗字体,用矩阵IDX记录索引中标段所在的索引位置,然后在出力矩阵XA

其中,索引矩阵IDX中的索引均从0开始。

S7、基于机组的爬坡速率,对中标出力矩阵R

在具体实施时,包括如下步骤:

S7.1、计算中标出力矩阵R

S7.2、记录中标出力差值矩阵R

S7.3、对RC

S7.4、重复S7.1~S7.3,直至所有出力均满足爬坡速率的约束,得到修正后的中标出力矩阵RC

举例说明:

假设爬坡速率为70,记录R

该循环过程就是:首先,将90修正为70,然后重新计算差值矩阵R

此时a=4,将80修正为70,重新计算差值矩阵R

以此类推,直到所有差值的绝对值小于等于70,该修正过程结束。

其中,上述涉及到的索引均为从0开始。

S8、基于修正后的中标出力矩阵RC

在具体实施时,可根据机组的负荷率和供电煤耗数据,拟合机组的供电煤耗二次曲线,计算各个机组的发电量和耗煤量。

且所述染色体的适应度为:

FitV表示发电厂的整体供电煤耗;

coal

elec

适应度值越大,代表供电煤耗越低。

S9、判断是否达到最大迭代次数,若是,输出当前最优染色体;否则,利用遗传算法更新当前种群,再返回S2。

遗传算法是一种借鉴生物界自然选择和遗传机制的启发式搜索算法,它可以在大规模的解空间中寻找到合适的解决方案。在搜索的过程中,得到解空间的最优解,经过迭代产生新的个体,将局部最优解和新的个体结合起来,来完成寻找全局最优解的目标。

以给出5台机组的中标出力方案为例,5台机组的参数如表1所示:

表1

且报价下限为0元/MWh,上限为1500元/MWh。

将出力和价格缩放在出力和价格上下限区间内,最终出力段和价格均为单调递增的,得到的分段出力报价矩阵XP为:

则拆分得到的出力矩阵X和报价矩阵P为:

然后从上限约束矩阵ub和下限约束矩阵lb中拆分出机组出力的上限矩阵ubx和下限矩阵lbx;

lbx=[230.230.230.230.230....390.390.390.390.390.]

ubx=[630.630.630.630.630....1000.1000.1000.1000.1000.]

下面以1#机组为例,数据如下:

lbx

ubx

修正后的机组1的分段出力矩阵XC

则分段出力差值矩阵

同理,分段报价差值矩阵

分段报价矩阵P

则第二临时矩阵

再按行进行累加,得到修正后的分段报价矩阵PC

而出清电价矩阵M为:

进而可得到全局分段报价矩阵PA

且本次示例数据中不存在超过爬坡速率的值,因此idx矩阵为空,因此中标出力矩阵R

则修正后的中标出力矩阵RC

根据算法计算得到的发电量和煤耗为:

最终,经遗传算法优化后对煤耗进行优化后,平均供电煤耗降低了约12g/kWh,具体数值如下表所示:

下表给出了3种模型的运行时长,3个模型中的约束条件及机组工作参数完全相同,模型中同时对5台机组模拟中标出力,分段数为10段,种群大小为1000,迭代次数为10。计算机为4核。

通过上述验证,可见本申请的方法运行速度快,效率高,推广性较强,且优化后供电煤耗有明显的下降,达到节能减排的目的。

实施例2:

一种基于遗传算法的模拟中标出力优化系统,该系统包括:存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述方法的步骤。

可理解的是,本发明实施例提供的基于遗传算法的模拟中标出力优化系统与上述基于遗传算法的模拟中标出力优化方法相对应,其有关内容的解释、举例、有益效果等部分可以参考基于遗传算法的模拟中标出力优化方法中的相应内容,此处不再赘述。

综上所述,与现有技术相比,本发明具备以下有益效果:

1)本发明提出的一种基于遗传算法模拟中标出力优化方法在遗传算法的基础上,将发电量约束、出力间隔约束和爬坡速率约束引入适应度函数,在满足约束条件的同时,给用户提供一种煤耗最低的报价策略及各时刻中标出力方案,对出力间隔约束及爬坡速率约束采用矩阵算法。该方法相比传统算法大大提升了运算速度,能够更好地满足用户体验,同时能够达到节能减排、提高运行效率的好处。

需要说明的是,通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 基于模拟退火遗传算法的交直流系统的无功优化方法
  • 基于模拟退火遗传算法的交直流系统的无功优化方法
技术分类

06120115586677