一种梯级水库调度方法及系统与流程

文档序号:15040197发布日期:2018-07-27 21:15阅读:262来源:国知局

本发明涉及水库调度领域,特别是涉及一种梯级水库调度方法及系统。



背景技术:

水库调度是指利用水库的调蓄能力对天然径流进行调节,也即是基于水利工程自身工况以及水文预报,在保障自身和上下游防洪安全的前提下,本着综合利用水资源的原则,通过水利枢纽的过水建筑物有目的的对来水进行蓄放,从而达到兴利、减灾的目的。迄今为止,水库调度主要经历了常规调度和优化调度两个阶段。

常规调度主要是利用径流进行调节、水能计算的理论与方法,探索水库调度方式制定调度规程,以常规调度图或调度规则的形式以指导水库的运行管理。该方法简单直观,有一定的物理形成机制,但缺少对未来来水的考虑,较传统、保守,调度结果一般也只是可行解,而非最优解,无法满足人类对水资源综合需求,且难以处理多目标、多约束和复杂流域水库的调度问题。

水库优化调度属多约束、非线性、多阶段组合优化问题。传统智能优化算法由于具有概念简单、易于实现、无需梯度信息、避免局部最优解等特点在水库优化调度中得到广泛应用,如量子粒子群优化算法,遗传算法,差分进化算法,鲸鱼优化算法,改进蚁群算法等,在水库优化调度中取得了一定的优化效果。但随着水库数量或决策变量维数的增加,在一定程度上存在着维数灾、早熟收敛或收敛不稳定、易陷入局部极值和算法复杂等缺点。



技术实现要素:

本发明的目的是提供一种梯级水库调度方法及系统,提高水库调度的准确率。

为实现上述目的,本发明提供了如下方案:

一种梯级水库调度方法,所述方法包括:

获取初选集合,所述初选集合包括多个水波,所述水波包括水波的波高、水波的波长和水波的位置。每个所述水波的位置表示一种水库群的运行方案;

计算每个所述水波的适应度值,确定适应度值的最大值;所述适应度值为所述水库群的最大发电量;

判断所述最大值是否小于预设值,得到第一判断结果;

若所述第一判断结果表示所述最大值大于等于所述预设值,根据所述最大值对应的水波的位置确定所述梯度水库的最佳调度方法;

若所述第一判断结果表示所述最大值小于所述预设值,对每个所述水波进行传播处理,并计算传播处理后的水波的适应度值;

根据传播处理后的水波的适应度值更新所述初选集合,并记录所述初选集合的更新次数;

计算更新后的所述初选集合中的每个水波的适应度值,得到更新后的适应度值最大值;

判断所述更新次数是否小于迭代次数,得到第二判断结果;

若所述第二判断结果表示所述更新次数小于所述迭代次数,返回判断所述最大值是否小于预设值;

若所述第二判断结果表示所述更新次数大于或者等于所述迭代次数,根据更新后的适应度值最大的水波的位置确定所述梯度水库的调度方法。

可选的,所述根据传播处理后的水波的适应度值更新所述初选集合,具体包括:

判断所述传播处理后的水波的适应度值是否小于传播处理前的水波的适应度值;若是,将传播处理后的水波代替所述传播处理前的水波;若否,保留所述传播处理前的水波;

更新当前水波的波长。

可选的,在所述更新当前水波的波长之前,还包括:

若所述传播处理后的水波的适应度值大于或等于传播处理前的水波的适应度的最大值,对传播处理后的水波进行碎浪处理。

可选的,所述保留传播处理前的水波,具体包括:

若所述传播处理后的水波的适应度值小于或者等于传播处理前的水波的适应度值,则对传播处理前的水波的波高减1,得到波高减1后的水波;

判断所述波高减1后的水波的波高是否大于0,若是,保留所述波高减1后的水波;若否,则将所述波高减1后的水波进行折射处理,得到折射处理后的水波。

可选的,在所述获取初选集合之前还包括:

对每个水波进行编码:对于一个包含m个水电站、t个时段的梯级水库系统,每个水波的维度为d,这样,每个水波可用xj(j=1,2,…,n)表示,其中,d维空间中的位置可用一个m×n矩阵xm×n表示,分量xi,t表示第i个水电站第t时段的出力决策值,则每个水波个体代表水库群的一个运行方案。

可选的,所述计算每个所述水波的适应度值,具体包括:

根据适应度函数公式:计算每个所述水波的适应度值;

其中,e为调度期内梯级总发电量,t为调度时期内时段编号,t为总时段数;i为站编号,n为梯级水电站总数,为第t时段第i个水电站的出力。

可选的,所述计算每个所述水波的适应度值,还包括:

根据水量平衡约束公式:计算每个所述水波的适应度值;

其中,为第i个水库第t时段的发电引用流量,为第i个水库第t时段末的蓄水量,为第i个水库第t时段的区间入流,为第i个水库第t时段的弃水流量,为第t时段第i-1个水库的下泄流量,且

本发明还提供了一种梯级水库调度系统,所述系统包括:

初选集合获取模块,用于获取初选集合,所述初选集合包括多个水波,所述水波包括水波的波高、水波的波长和水波的位置,每个所述水波的位置表示一种水库群的运行方案;

适应度值的最大值确定模块,用于计算每个所述水波的适应度值,确定适应度值的最大值;所述适应度值为所述水库群的最大发电量;

第一结果判断模块,用于判断所述最大值是否小于预设值,得到第一判断结果;

第一最佳调度方法确定模块,用于若所述第一判断结果表示所述最大值大于等于所述预设值,根据所述最大值对应的水波的位置确定所述梯度水库的最佳调度方法;

传播处理后的水波的适应度值计算模块,用于若所述第一判断结果表示所述最大值小于所述预设值,对每个所述水波进行传播处理,并计算传播处理后的水波的适应度值;

初选集合更新和更新次数记录模块,用于根据传播处理后的水波的适应度值更新所述初选集合,并记录所述初选集合的更新次数;

更新后的适应度值最大值确定模块,用于计算更新后的所述初选集合中的每个水波的适应度值,确定更新后的适应度值最大值;

第二结果判断模块,用于判断所述更新次数是否小于迭代次数,得到第二判断结果;若所述第二判断结果表示所述更新次数小于所述迭代次数,返回判断所述最大值是否小于预设值;若所述第二判断结果表示所述更新次数大于或者等于所述迭代次数,根据更新后的适应度值最大的水波的位置确定所述梯度水库的最佳调度方法。

可选的,所述系统还包括:

传播处理后的水波碎浪处理模块,用于若所述传播处理后的水波的适应度值大于或等于传播处理前的水波的适应度的最大值,对传播处理后的水波进行碎浪处理。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明提供的一种梯级水库调度方法及系统,每个水波的位置可以采用编码表示,采用水波算法对梯级水库进行优选,以使发电量最大。本发明执行水波算法的传播、折射、碎浪操作,寻优能力强,计算复杂度低,计算速度快,收敛速度快,能够进行全局搜索,有跳出局部最优解的能力。

附图说明

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

图1为本发明的梯级水库调度方法的流程图;

图2为本发明的梯级水库调度系统的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种梯级水库调度方法及系统,提高水库调度的准确率。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

本发明提供了一种梯级水库调度方法,图1为本发明的梯级水库调度方法的流程图。如图1所示,所述方法包括:

步骤101:获取初选集合,所述初选集合包括多个水波,所述水波包括水波的波高、水波的波长和水波的位置。每个所述水波的位置表示一种水库群的运行方案。

可选的,在所述获取初选集合之前还包括:

对每个水波进行编码:对于一个包含m个水电站、t个时段的梯级水库系统,每个水波的维度为d,这样,每个水波可用xj(j=1,2,…,n)表示,其中,d维空间中的位置可用一个m×n矩阵xm×n表示,分量xi,t表示第i个水电站第t时段的出力决策值,则每个水波个体代表水库群的一个运行方案。

步骤102:计算每个所述水波的适应度值,确定适应度值的最大值;所述适应度值为所述水库群的最大发电量。适应度函数公式为:

其中,e为调度期内梯级总发电量,t为调度时期内时段编号,t为总时段数;i为站编号,n为梯级水电站总数,为第t时段第i个水电站的出力。

计算每个水波的适应度值,还需要满足水量平衡约束公式:

其中,为第i个水库第t时段的发电引用流量,为第i个水库第t时段末的蓄水量,为第i个水库第t时段的区间入流,为第i个水库第t时段的弃水流量,为第t时段第i-1个水库的下泄流量,且

其它约束,包括蓄水量约束、下泄流量约束以及出力约束。

其中,min为水库库容的下限,max为水库库容的上限。min为水库泄流的下限,为水库泄流的上限。min为水库出力的下限,max为水库出力的上限。

步骤103:判断所述最大值是否小于预设值,得到第一判断结果。所述预设值为根据平均年发电量确定的数值。

步骤104:若所述第一判断结果表示所述最大值大于等于所述预设值,根据所述最大值对应的水波的位置确定所述梯度水库的最佳调度方法。

步骤105:若所述第一判断结果表示所述最大值小于所述预设值,对每个所述水波进行传播处理,并计算传播处理后的水波的适应度值。

设水波x传播后得到的新波为x′,其每一维d(1≤d≤n,其中d表示问题的维度)的位置按下式进行计算:

x′(d)=x(d)+rand(-1,1)·λl(d)(6)

其中,rand(-1,1)代表[-1,1]范围里的一个均匀分布随机数,l(d)代表搜索空间在第d维的长度(1≤d≤n)。如果某一维的新位置超出了有效范围,则将其随机设置为有效范围内的一个位置.令f表示问题的适应度函数,传播后计算新波x的适应度值,如果f(x′)>f(x),则x在种群中取代x,其波高重置为hmax;反之,x会被保留,且其波高h由于能量的损耗而减1。

每次迭代后,算法按下式对种群中的每个水波x的波长进行更新。

其中,fmax和fmin分别表示当前种群中的最大和最小适应度值,参数α表示波长的衰减系数,ε是一个极小的正数(以避免分母为0的情况发生)。

步骤106:根据传播处理后的水波的适应度值更新所述初选集合,并记录所述初选集合的更新次数。

所述根据传播处理后的水波的适应度值更新所述初选集合,具体包括:

步骤1061:判断所述传播处理后的水波的适应度值是否小于传播处理前的水波的适应度值;若是,将传播处理后的水波代替所述传播处理前的水波;若否,保留所述传播处理前的水波。所述保留传播处理前的水波,具体包括:

步骤10611:若所述传播处理后的水波的适应度值小于或者等于传播处理前的水波的适应度值,则对传播处理前的水波的波高减1,得到波高减1后的水波;

步骤10612:判断所述波高减1后的水波的波高是否大于0,若是,保留所述波高减1后的水波;若否,则将所述波高减1后的水波进行折射处理,得到折射处理后的水波。

当某个水波x的h值递减为0时,对其折射操作以避免搜索停滞,折射后每一维的位置计算公式如下:

其中,x*表示目前位置所找到的最优解,n(μ,σ)表示均值为μ、方差为σ的高斯随机数折射后新波x′的波高同样重置为hmax,波长公式(9)进行更新,这也会使得解的适应度与波长成反比。

步骤1062:更新当前水波的波长。

在所述更新当前水波的波长之前,还包括:

若所述传播处理后的水波的适应度值大于或等于传播处理前的水波的适应度的最大值,对传播处理后的水波进行碎浪处理。

水波能量的不断增加会使其波峰变得越来越陡峭,直至破碎成一连串的孤立波。水波优化算法对每个新找到的最优解x*执行碎浪操作,具体方式是:先随机选择k维(这里,k是介于1和一个预定义参数kmax之间的一个随机数),在每一维d上产生一个孤立波x′。所述碎浪公式为:

x′(d)=x(d)+n(0,1)·β·l(d)(10)

其中,参数β表示碎浪系数。如果生成的所有孤立波的适应度值均不优于x*,则保留x*;否则,将x*替换为最优的一个孤立波。

步骤107:计算更新后的所述初选集合中的每个水波的适应度值,得到更新后的适应度值最大值;

步骤108:判断所述更新次数是否小于迭代次数,若是,返回步骤103;若否,返回步骤104。

水波优化算法是一种受浅水波理论启发的新兴进化算法,它通过模拟水波的运动来求解优化问题。水波的适应度与其到海床的垂直距离成反比:距离海平面越近的点,对应的解越优,相应的水波能量越高,那么水波的波高h更大、波长λ更小。这使得较优的解在较小的范围内进行搜索,而较差的解在较大的范围内进行搜索,从而促进整个种群不断向更优的目标进化。在该算法中,一个解对应于一个水波,它具有两个属性,即波高h和波长λ。问题的解空间对应于海床,到海床(垂直)距离越近的水波的适应度值越高,反之适应度值越低。在算法迭代过程中,通过反复应用传播、折射和碎浪这3种操作来对种群进行演化。

本发明提供的一种梯级水库调度方法,每个水波的位置可以采用编码表示,采用水波算法对梯级水库进行优选,以使发电量最大。本发明执行水波算法的传播、折射、碎浪操作,寻优能力强,计算复杂度低,计算速度快,收敛速度快,能够进行全局搜索,有跳出局部最优解的能力。

本发明的梯级水库调度方法,调度时段是小时,需要考虑水流的迟滞既上游的放水经n小时后才能到达下游。因此本发明为短期调度发电量最大的优化方法。

本发明还提供了一种梯级水库调度系统,图2为本发明的梯级水库调度系统的结构图。如图2所示,所述系统包括:

初选集合获取模块201,用于获取初选集合;所述初选集合包括多个水波;每个所述水波表示一种水库群的运行方案;所述水波包括水波的波高、水波的波长和水波的位置;

适应度值的最大值确定模块202,用于计算每个所述水波的适应度值,确定适应度值的最大值;所述适应度值为所述水库群的最大发电量;

第一结果判断模块203,用于判断所述最大值是否小于预设值,得到第一判断结果;

第一最佳调度方法确定模块204,用于若所述第一判断结果表示所述最大值大于等于所述预设值,根据所述最大值对应的水波的位置确定所述梯度水库的最佳调度方法;

传播处理后的水波的适应度值计算模块205,用于若所述第一判断结果表示所述最大值小于所述预设值,对每个所述水波进行传播处理,并计算传播处理后的水波的适应度值;

初选集合更新和更新次数记录模块206,用于根据传播处理后的水波的适应度值更新所述初选集合,并记录所述初选集合的更新次数;

更新后的适应度值最大值确定模块207,用于计算更新后的所述初选集合中的每个水波的适应度值,确定更新后的适应度值最大值;

第二结果判断模块208,用于判断所述更新次数是否小于迭代次数,得到第二判断结果;若所述第二判断结果表示所述更新次数小于所述迭代次数,返回判断所述最大值是否小于预设值;若所述第二判断结果表示所述更新次数大于或者等于所述迭代次数,根据更新后的适应度值最大的水波的位置确定所述梯度水库的最佳调度方法。

可选的,所述系统还包括:传播处理后的水波碎浪处理模块,用于若所述传播处理后的水波的适应度值大于或等于传播处理前的水波的适应度的最大值,对传播处理后的水波进行碎浪处理。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1