四种优化方法在水库优化调度中的运用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

四种优化方法在水库优化调度中的运用
田昆
河海大学水利水电工程学院,南京(210098)
E-mail :ambitious1984@
摘 要:本文用动态规划法、增量动态规划法、逐步优化算法和遗传算法四种优化算法,编
写Visual Basic 程序,建立模型,研究单一水库的优化调度问题。

通过实例计算,对四种方
法进行比较分析,结果正名逐步优化法和遗传算法收敛速度快,且能达到全局最优解。

关键词:水库调度;动态规划;增量;遗传算法
本文以整个调度期内发电量最大作为优化的目标函数,建立单一水库确定性模型,用动
态规划、离散微分动态规划、逐步优化算法和遗传算法四种方法分别编写Visual Basic 程序,
对同一实例进行计算,通过结果比较,表明逐步优化法(POA)和遗传算法(GA)收敛快,且能
得到全局最优解,计算效果较好。

1. 动态规划(DP )
动态规划是解决多阶段决策过程最优化的一种最优化方法。

它把比较复杂的问题划分成
若干阶段,通过逐段求解,最终获得全局最优解。

本次计算中,调度期取一年,按月份划分调度时段,以调度时段 t (t =1,2,…..T )作为阶段
变量,库容t V 作为状态变量,各时段发电用水量t Q 作为决策变量,对应于一个阶段效应
t N (t Q ,t V ),引入罚函数,所以顺时序确定性动态规划模型为[1]:
[]
∑=∂−−T t t t E EF W E 1)(max σ (1)
递推方程: {)(),(max )(11−−+=t t t t t t t V N V Q N V N (2)
考虑以下约束条件:s.t ⎪⎪⎪⎩
⎪⎪⎪⎨⎧=≤≤≤≤≤≤−=∆−+T t N N N Z Z Z Q Q Q V V t Q S t t t t t t t t t t t t t ,......2,1)(max
,min ,max ,min ,max ,min ,1 (3)
上式中t S 为t 时段水库的天然来水,t Q 为t 时段水库的发电流量;min ,t Z ,max ,t Z 分别
为t 时段的水库水位下限和水位上限;min ,t Q ,max ,t Q 分别为水轮机的最小和最大过水约束;
min ,t N ,max ,t N 分别为t 时段水轮机的最小技术出力和最大预想出力。

)(t t V N 为从时段t 到
第一时段的最优发电量;),(t t t V Q N 为面临时段t 在时段初水库蓄水量为初水库蓄水量为t
V 和该时段发电用水量为t Q 的发电量;)(11−−t t V N 为余留期(从t -1时段到第一时段)最优发
电量。

2. 增量动态规划(IDP )
增量动态规划是动态规划的一种改进方法,使用逐次逼近的方法(迭代法)寻优,每次
寻优旨在某个状态序列附近的小范围,用动态规划法进行,比动态规划减少很多的计算量。

具体步骤:
步骤1:选择一组初始调度线,它满足水位约束及设定的各库始、终库水位。

步骤2:再在其上下方各取n 个设定的水位差dz 作为廊道。

步骤3:然后再根据动态规划方法进行依次顺推计算,即可求出第一次改善的新的调度线和
决策序列。

步骤4:在上述基础上再进行第二步迭代,即在新的状态序列上下再变动一个增量打造dz ,
并进行优选。

这样逐次进行迭代,直至逼近最优决策序列和最优状态序列,满足精度要求为
止。

3. 逐步优化算法(POA )
逐步优化算法是1975年由加拿大学者H.R.Howson 和N.G.F.Sancho 提出,用于求解多
状态动态规划问题,能有效克服DP 的“维数灾问题”。

作者根据别尔曼最优化原理的思想,
提出逐步优化理论,即“最优线路具有这样的性质,每对决策集合相对于它的初始值和终止
值来说是最优的”。

具体步骤:
步骤1:在水库水位允许范围内给定一组初始调度线t Z (T t ,...2,1=)。

步骤2:从起始时刻开始,固定2,+t t Z Z 两个值,调整水位1+t Z ,使得目标函数在t 到2+t 时
刻达到最优,得到新的*1+t Z ,用新的*
1+t Z 代替1+t Z 。

(T t ,...2,1=)同理向右滑动,如此进行
循环迭代,直到得到一组新的轨迹。

步骤3:用新的一轮轨迹代替旧轨迹,重复步骤2,判断是否ε≤−*t t Z Z 。

如果满足,转步
骤4;否则,用新轨迹代替旧的轨迹,重复步骤3。

步骤4:新一轮计算出来的轨迹即为最优轨迹,迭代结束。

4. 遗传算法(GA)
遗传算法【3】是80年代出现的新型优化算法,近年来迅速发展。

它的原理基于自然选择
和遗传机制,在计算机上模拟生物进化机制的寻优方法.它把搜索空间(欲求解问题的解空间)
映射为遗传空间,把每一个可能的解编码为一个向量(二进制或十进制数字串),称为一个染色
体(或个体),所有染色体组成群体(群体中染色体个数用POP 表示),通过选择、杂交和变异等
核心操作,实现“优胜劣汰”。

具体步骤:
(1)个体编码。

本次计算选用库水位t Z 作为决策变量,进行二进制编码。

经过编码,
所有变量由固定长度的二进制符号串来表示,其等位基因由二值符号集(0,1)组成。

(2)初始群体产生。

经过编码和解码,在t Z 的变化区间(max ,min ,,t t Z Z ),max ,min ,,t t Z Z 分
别为时段水位允许的最小值和最大值,随机生成pop 组水位变化序列),...,,(1
1211T Z Z Z ,
),...,,(22221T Z Z Z ,......),...,,(21POP T POP POP Z Z Z 。

本次计算中pop 取值1000。

(3)适应度计算。

计算个体的适应度大小,从而评定各个个体的优劣程度,决定其遗传
机会的大小 。

(4)选择计算。

又称复制计算,是遗传算法的一个重要算子,它模拟了生物进化过程中
的自然选择规律,一般要求适应度较高的个体将有更多的机会遗传到下一代群体中。

(5)交叉计算。

被估参数的父代个体的杂交,即将第4步得到的两组父代个体两两配对。

其次随机设置交叉点位置,最后再相互交换配对染色体之间的部分基因。

它模拟了生物的遗传规律,也是遗传算法的一个重要算子。

如表1:
表1 交叉算子 个体编号 选择结果 配对情况 交叉点位
交叉结果 1 011101 011001
2 111001
1-2 1-2:2 111101 (6)变异运算。

它模拟生物进化过程中的随机变异现象,可有效避免种群发生早熟(解陷入局部极优)。

首先确定出各个个体的基因变异位置,下表所示为随机产生的变异点位置,其中的数字表示变异点设置在该基因座处;然后依照某一概率将变异点的原有基因值取反。

如表2:
表2 变异算子
个体编号 交叉结果 变异点 变异结果 子代群体
1 011001 4 011101 011001
2 111101 5 111111 111101
(7)进化迭代。

这n 个子代个体作为新的父代,进入下一轮进化,重新评价、选种、杂交、变异,使得被估参数的个体适应能力不断提高,直到满足精度要求计算停止。

5. 实例计算结果
计算已知某水电站水库的水位-库容曲线,下游水位-下泄流量关系曲线,丰水年来水过程线。

水库正常蓄水位为173m,死水位为146m,汛限水位为165m,水轮机出力系数为8.5,保证出力为8.8万kw,装机容量为60万kw,汛期从6月到9月,调度期为一年,计算中假设从一月初水位为调度初始水位,12月末为调度末水位,分别固定始末水位为155m 。

选取整个调度期内发电量最大作为优化的目标函数。

本次计算分别编写了DP 、POA 、IDP 、和GA 的Visual Basic 程序,计算结果分别如下表4至7和图1:计算单位分别为时序(月)、水位(m)、来水(m^3/s)、发电流量(m^3/s)、出力(万kw)、发电量(亿度)。

表3 来水序列 时序
1 2 3 4 5 6 7 8 9 10 11 12 库区来水 132 135.6 322.9 452 683.1892.9
300.8332.9270.2 165.4 124 95.4
表4 DP 计算最优结果(状态离散点k=50) 时序
1 2 3 4 5 6 7 8 9 10 11 12 13 水位
155 156 156 168 166 159 165 165 165 173 173 173 155 发电流量
125 127 120 503 793 797 301 333 110 165 124 407 出力
8.98 9.17 9.36 40.26 60 60 23.68
26.179.19 14.24 10.72 31.98
发电量 0.66 0.67 0.68 2.94 4.38 4.38 1.73 1.91 0.67 1.04 0.78 2.33 ∑22.17
表5 IDP计算最优结果(dz=0.01m)
时序 1 2 3 4 5 6 7 8 9 10 11 12 13 水位155 156 156 169 166 160 165 165 165 173 173 170 155 发电流量123 133 113 506 792 795 301 333 113 167 183 348
出力8.81 9.57 8.84 40.53 60 60 23.7626.269.46 14.36 15.56 26.97
∑22.21
发电量0.64 0.7 0.65 2.96 4.38 4.38 1.73 1.92 0.69 1.05 1.14 1.97
表6 POA计算最优结果
时序 1 2 3 4 5 6 7 8 9 10 11 12 13 水位155 156 156 169 166 159 165 165 165 173 173 173 155 发电流量125 123 116 511 767 794 301 333 107 165 124 415
出力8.95 8.83 8.41 41.73 60 57.9823.7526.258.55 14.29 10.75 35.47
∑22.25
发电量0.65 0.64 0.61 3.05 4.38 4.23 1.73 1.92 0.62 1.04 0.79 2.59
表7 GA计算最优结果 (pop=1000,迭代100代)
时序 1 2 3 4 5 6 7 8 9 10 11 12 13 水位155 156 157 169 166 160 165 165 165 173 173 173 155 发电流量123 121 112 519 792 795 301 333 107 165 124 415
出力8.8 8.81 8.81 41.71 60 60 23.7526.258.96 14.29 10.75 32.71
∑22.25
发电量0.64 0.64 0.64 3.05 4.38 4.38 1.73 1.92 0.65 1.04 0.79 2.39
图1 计算结果对比图
6. 结果分析
本次计算结果POA法和GA法得到结果最优,而且收敛速度较快。

(1) DP法因为是在
全部可行域中求解,因此能够得到整个可行域的全局最优解。

这次计算中,由于状态离散的
数目不大,所以计算的精度偏小。

增大网格的离散度能够提高计算结果的精度,但是会使得
计算工作量增大,增大计算难度。

(2)IDP法,把计算工作量减少到DP的几十分之一甚至更
低,计算速度很快,且计算精度较DP法高。

但是这种方法是在局部可行域进行迭代,有时
候计算结果可能收敛到某一局部最优解。

因此计算结果与初始决策序列有很密切关系。

因此
要选择不同的初始序列进行多次计算,来确定全局最优解[1]。

(3)POA法在本次计算中收敛
速度最快,而且计算精度较高。

说明POA法进行单库计算十分有效,收敛速度快,目标函数为凸函数时,且能得到全局最优解[2]。

但是此法用于数目较多的库群计算时,收敛速度会大大降低。

(3)GA法在计算中前十几代收敛效果十分明显,计算速度较快。

GA法采用群体方式从多个初始点组织优化搜索,减少了陷入局部最优解的可能性,而且收敛速度快,且不需要储存各个状态离散点的信息,占用较少内存。

而且此法容易改进,也能于许多最新的算法相结合,非常适合于现有水库调度常规方法的改进。

参考文献
[1] 董子敖,水库群调度与规划的优化理论和应用[M],济南:山东科学技术出版社,1989.
[2] 杨侃,丰景春,水库调度中逐次优化算法(POA)的收敛性研究[J],河海大学学报,1996,24(1)104-107.
[3] 王小平,曹立民,遗传算法——理论,应用与软件实现[M],西安交通大学出版社,2002.
Four Methods of single Reservoir Optimal Operation
Tian Kun
College of Conservancy and Hydropower Eng.,Hohai Univ.,Nanjing (210098)
Abstract
This paper analyses four methods of single reservoir optimal operation about Dynamic Programming , Increment Dynamic Programming , Progressive Optimality Algorithms and Genetic Algorithms. According to an example , comparing with the four methods’advantage and disadvantage. It is proved that POA and GA are best for their rapid converging speed and global optimum.
Keywords:reservoir,optimal operation,genetic algorithm.
作者简介:田昆(1984-),男(汉族),云南人,河海大学硕士研究生。

相关文档
最新文档