本发明属于水资源高效利用与水电系统优化调度技术领域,更具体地,涉及一种梯级水电站群优化调度两阶段直接搜索降维方法。
背景技术:
一般总装机容量超过500万千瓦特的特大流域梯级水电站群优化调度能够充分发挥上下游水电站之间的协同效应,产生突出的经济效益与社会效益,同时在水电能源系统的作用也与日剧增。从数学上看,梯级水电站群联合调度属于典型的非线性、多维度、强约束的复杂约束优化问题,其求解方法可大致分为智能算法与传统算法两大类。经典传统算法以线性规划、非线性规划、动态规划、网络流算法等为典型代表,大都在理论上较为完备,能够有效处理特定类型的问题,然而这些方法不同程度地存在无法处理非线性、计算开销大、维数灾等不足。智能算法包括遗传算法、粒子群算法、人工蜂群算法、布谷鸟算法等典型代表,这些算法采用不同的模型来模拟逼近自然界的生物进化过程,能够不受优化问题非凸、不连续等特征影响,但是智能算法普遍存在不同程度的早熟收敛、结果稳定性差等缺陷。综上,十分有必要在传统水电调度算法基础上,探索能够缓解维数灾问题的新型优化算法。
作为经典的动态规划改进方法,逐步优化算法(poa)首先通过传统方法或领域知识确定初始调度过程,然后将多阶段优化问题分解为一系列相对简单的两阶段子问题,并利用简化的动态规划递推方程来获得各个子问题的改进结果,最后通过迭代计算不断逼近全局最优解。总体而言,动态规划在所有阶段的离散搜索空间寻优;而poa只需在两阶段子问题的离散空间内寻优,能够很大程度上降低计算阶段数目、显著减少了算法开销。然而,在求解两阶段子问题时,标准poa算法仍然在所有水库的离散状态变量构成的搜索空间内寻优,使得在处理大规模水电调度问题时会出现严重的“维数灾”与“重复计算”问题。由此可知,poa乏力应对大规模水电系统优化调度问题,有必要探索提升算法性能的改进方法。
技术实现要素:
针对现有技术的缺陷,本发明的目的在于提供一种梯形水电站群优化调度两阶段直接搜索降维方法,将直接搜索策略引入到poa子问题的求解过程中,旨在解决采用标准poa算法在解决梯级水电站群联合调度时出现的“维数灾”与“重复计算”问题。
为实现上述目的,本发明提供了一种梯形水电站群优化调度两阶段直接搜索降维方法,主要步骤包括:
(1)设置计算参数,选择水电站集合并设置相应约束条件。优选地,上述步骤(1)包括以下两个步骤:
(1.1)设置计算参数,包括外循环最大次数cmax、内循环最大次数
(1.2)选择参与计算的水电站集合,并设置水位限制、出力限制、发电流量限制、出库流量限制、发电流量限制等约束条件。
(2)利用常规调度图或动态规划方法生成水电系统初始调度过程。
优选地,令外循环计数器c=1。采用常规调度图或动态规划方法从上游到下游依次生成各水电站的调度过程
(3)将多阶段水电调度问题分解为若干两阶段子问题。具体地,上述步骤(3)包括以下两个步骤:
(3.1)水电调度问题分解为j时段数目的阶段,采用迭代方式将依次完成各阶段调度问题。初始令阶段计数器j=1。
(3.2)针对上述j=1阶段的水电站调度问题分解为若干子问题。初始令内循环计数器c2=1,获得当前子问题j中各水电站的最新调度过程
(4)采用直接搜索策略获得当前子问题的最优调度过程。具体地,上述步骤(4)包括以下两个步骤:
(4.1)计算得到临时变量
式中,m表示变量标号,1≤m≤k+1;
(4.2)比较状态变量集合
(5)判断是否该子问题已计算为最优调度过程。该步计算得到反射点
(5.1)若
(5.2)若
(5.3)
此时,该子问题最优调度过程的计算完成,因此,相比于传统poa算法,该算法内存占用更小的同时计算耗时更少,而且具有更大的概率跳出局部最优。
(6)依次计算各个子问题的最优调度过程,然后判断是否已计算所有子问题。
即,令c2=c2+1。若
(7)依次处理各个阶段的子问题,进而判断是否所有时段问题都已处理完成。即,令j=j+1。若j≤j,则转至步骤(3.2),依次将其他时段的调度问题分为若干子问题进行处理;否则,转至步骤(8),准备下一轮迭代调度过程。
(8)令c=c+1。若c≥cmax或者||zc-zc-1||≤ξ,则停止计算,并将第c轮次得到的调度过程zc作为最优解;否则,转至步骤(3.1)。
通过本发明所构思的以上技术方案,与现有技术相比,能够取得以下有益效果:
1.由于本发明利用直接搜索策略替代传统poa算法对水库离散状态的全面枚举操作,将单一子问题中的离散状态变量数目由kq降低至k+1(其中k、q分别表示电站数目与状态离散数目),将poa的计算复杂度由指数增长降低至多项式增长,降维效果显著,因此,本发明在处理相同规模的水电调度问题时大幅减少内存空间与计算耗时,又能够在相同的计算环境中处理更大规模的水电调度问题
2.由于本发明无需对水库连续型状态变量(如水位、库容等)进行离散,使得算法具有更大的概率跳出局部最优,增强了算法的搜索性能,可以快速获得合理的调度结果、从而更好地提高水电系统的整体效益。
附图说明
图1是本发明的计算流程示意图;
图2为逐步优化算法维数灾问题示意图;
图3为逐步优化算法重复计算示意图;
图4为基于离散空间的传统逐步优化算法;
图5为基于连续空间的本发明方法。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
一方面,从理论方面分析本发明涉及的技术方案所能解决的技术问题及技术效果。
梯级水电站群联合调度求解方法通常采用逐步优化算法(poa),其缺点在于标准poa算法是在所有水库的离散状态变量构成的搜索空间内寻优,使得在处理大规模水电调度问题时会出现严重的“维数灾”问题与“重复计算”问题。
图1为逐步优化算法维数灾问题示意图;如图1所示,若每个水库状态均离散为5份,则1座水电站、2座水电站、3座水电站中的离散状态变量数目分别为5、52=25、53=25,很显然poa的计算量与存储量均呈指数增长。
图2为逐步优化算法重复计算示意图;如图2所示,若2个水电站均离散3份,则poa子问题在相邻两次迭代计算中可能会有4个状态变量被重复计算。
由此可知,poa乏力应对大规模水电系统优化调度问题,有必要探索提升算法性能的改进方法。
为了解决上述技术问题,本发明公开了一种梯级水电站群优化调度两阶段直接搜索降维方法。
图3为本发明提供的计算流程示意图;具体计算流程如下,首先设置计算参数,选择水电站集合并设置相应约束条件;给定初始调度过程并计算得到最大搜索步长后,将多阶段水库群调度问题分解多个两阶段子问题;而后对每个子问题采用直接搜索策略进行求解;最后通过迭代寻优逐次逼近全局最优解。具体步骤如下:
(1)设置计算参数,选择水电站集合并设置相应约束条件。优选地,上述步骤(1)包括以下两个步骤:
(1.1)设置计算参数,包括外循环最大次数cmax、内循环最大次数
(1.2)选择参与计算的水电站集合,并设置水位限制、出力限制、发电流量限制、出库流量限制、发电流量限制等约束条件。
(2)利用传统方法生成水电系统初始调度过程。
优选地,令外循环计数器c=1。采用常规调度图或动态规划方法从上游到下游依次生成各水电站的调度过程
(3)将多阶段水电调度问题分解为若干两阶段子问题。具体地,上述步骤(3)包括以下两个步骤:
(3.1)水电调度问题分解为j时段数目的阶段,采用迭代方式将依次完成各阶段调度问题。初始令阶段计数器j=1。
(3.2)针对上述j=1阶段的水电站调度问题分解为若干子问题。初始令内循环计数器c2=1,获得当前子问题j中各水电站的最新调度过程
(4)采用直接搜索策略获得当前子问题的最优调度过程。具体地,上述步骤(4)包括以下两个步骤:
(4.1)计算得到临时变量
式中,m表示变量标号,1≤m≤k+1;
(4.2)比较状态变量集合
(5)判断是否该子问题已计算为最优调度过程。该步计算得到反射点
(5.1)若
(5.2)若
(5.3)
此时,该子问题最优调度过程的计算完成。
(6)依次计算各个子问题的最优调度过程,然后判断是否已计算所有子问题。
即,令c2=c2+1。若
(7)依次处理各个阶段的子问题,进而判断是否所有时段问题都已处理完成。即,令j=j+1。若j≤j,则转至步骤(3.2),依次将其他时段的调度问题分为若干子问题进行处理;否则,转至步骤(8),准备下一轮迭代调度过程。
(8)令c=c+1。若c≥cmax或者||zc-zc-1||≤ξ,则停止计算,并将第c轮次得到的调度过程zc作为最优解;否则,转至步骤(3.1)。
图4为基于离散空间的传统逐步优化算法,从图4可以看出,poa对2座水电站离散状态进行全面组合,每次迭代均需在52=25个变量中寻优,而且相邻两次迭代中会有16个变量被重复计算。
图5为基于连续空间的本发明方法,由于本发明采用直接搜索策略进行寻优,所以每次迭代只需要在3个变量中寻优,而且相邻两次迭代中只需构造1个新的变量。
由此可知,本发明有效克服了poa的不足,显著改善了算法搜索性能。
另一方面,结合具体的实际问题验证采用本发明的技术方案所达到的技术效果。
现以我国贵州省内的乌江梯级水电站群为例来检验本发明方法的有效性与合理性。表1列出了不同规模水电系统poa和本发明的详细结果。可以看出,两种方法的发电量在不同情况下均十分接近,验证了本发明直接搜索策略的有效性。此外,本发明执行时间随电站数目增多呈多项式增长,而poa耗时随着问题规模扩大呈指数增长。例如,本发明在4座水电站的时间比3座水电站增长了约1.53倍,而poa却增长了3.4倍。原因在于:本发明使用直接搜索策略替换poa的枚举式遍历策略,大幅减少了各子问题的状态变量数目,显著降低了计算开销。由此可知,标准poa难以满足实际工程中执行效率要求,而本发明可以快速找到满意的调度过程,性能改善效果显著。
表1
表2列出了两方法对不同水电系统随机运行10次的统计结果,包括发电的最大值、平均值和标准偏差以及计算时间。从表2可知:(1)本发明对不同水电系统均能获得与poa几乎相同的发电量,有效地保证了求解质量。(2)本发明子问题中的状态变量数目将随电站数目增加呈多项式增长(而非poa的指数增长),显著降低了计算开销。以7座水电站为例,本发明子问题状态变量数量只有8个,远小于poa中的2187点;(3)在处理相同水电调度问题时,本发明的计算时间远远小于poa。例如,对7座水电站的调度问题,本发明需要大约poa耗时的1.7%即可令人满意的解决方案。综上,本发明在处理复杂水电调度问题时具有良好的鲁棒性、稳定性与抗干扰性。
表2
表3为采用本发明方法得到的乌江梯级详细调度结果。可以看出,各水电站的水位、出力均在预设范围内,有效满足了相应约束;洪家渡作为龙头水库,在汛前预先降低水位、保证下游水电站尽快提升至高水位运行;各水电站在汛期均利用大流量来水快速提高水位,在汛后保持高水位运行一段时间后逐步消落至预设水位,有效地满足了梯级调度需求。综上,本发明所得调度过程合理可行,能够为水电系统的高效运行提供强有力的技术服务与决策支持。
表3
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。