当前课程知识点:水资源系统分析理论与应用 >  第三章 动态规划与水库优化调度 >  3.3水库优化调度建模及求解 >  3.3水库优化调度建模及求解

返回《水资源系统分析理论与应用》慕课在线视频课程列表

3.3水库优化调度建模及求解在线视频

下一节:3.4随机动态规划模型

返回《水资源系统分析理论与应用》慕课在线视频列表

3.3水库优化调度建模及求解课程教案、知识点、字幕

大家好

本节课主要讲授水库优化调度建模及求解

在上一讲中

我们介绍了怎么样建立动态规划法的模型

用于求解最短路问题和水资源分配问题

接下来我们回到本章开头的第二个问题

水库调度的问题

在已知整个调度期的总用水量情况下

怎么样优化水库在各时段的蓄放水调度计划

以寻求调度期内总调度效益最优的策略

针对问题需求

我们建立水库优化调度模型

模型以调度期内总效益最大做为目标

综合考虑保证水库调度安全

稳定

可靠的水量平衡

库蓄水量以及出库水量约束

在某个时段的调度效益函数中

水库调度的效益主要取决于

当前时段初的蓄量状态

以及当前时段的出库水量大小

与过去的蓄量状态及过去的出库水量

没有关系

所以

该问题满足无后效性要求

可用动态规划法求解

对照动态规划法的建模要求

确定水库优化调度模型中的各对应变量

及过程

分为以下几个步骤

首先

按照时段将水库调度

划分为若干联系的阶段

记阶段变量为时序

i

其次

以时段初始蓄量为状态变量

表示阶段开始时系统所处的自然状态

记为Vi

第三

以水库出库水量作为决策变量

第四

以水量平衡方程描述系统的状态转移转变过程

第五

以阶段调度效益

及余留期累积效益

分别作为阶段和累计的指标函数

第六

构建i阶段某状态的累积效益

与i+1阶段效益及累积效益的递推方程

进行递推求解

在应用动态规划法求解水库调度模型时

考虑到水库调度的实践需求,

需要进行如下处理操作

以保障解的可靠性和实用性

首先

依照调度计划编制需求划分调度期及时段长

并确定阶段数

其次

由于水库调度问题是连续变量的决策问题

利用动态规划法进行求解时

需要对连续的状态变量进行离散化

以适用求解需求

第三

由于水库蓄量状态离散过程中

各个状态转移所形成的调度方案

不能保证均为可行方案

因此

采用罚函数法对违反约束的不可行方案

进行惩罚

将模型转换为无约束优化问题

最后将罚函数项叠加至目标函数中

避免寻优过程中选择不可行解作为最优解

在利用动态规划法进行逐阶段地推求解时

阶段效益采用本阶段状态转移所产生的发电量

或者发电效益进行计算

就需要用到以下两个水电站出力

以及电量计算的公式

公式1表示

发电量是出力在时间上相乘的结果

而其中出力是综合出力系数

与发电流量以及发电水头相乘的结果

公式1中的就是综合出力系数

该系数反映水电站发电效率大小

与发电流量

平均水头和水轮机特性均有关

由于长期优化调度通常是按月或旬的平均出力计算

可以不用直接研究机组特性参数在时段间的变化

所以可将该项视为常数

公式2是水电站毛水头计算公式

其中

上游平均水位由对应时段的上游平均蓄量所决定

在已知上游平均蓄量条件下

可以通过水位库容曲线查得对应的上游平均水位

下午平均水位由对应时段的平均出库流量决定

在已知平均出库流量条件下

由尾水水位流量关系曲线即可求得

而毛水头就等于上游水平均水位

和下游平均水位之差

如果需要考虑净水头计算

还需要在这个基础上减去水头损失

那么相应的在出力计算时

也需要用到净水头对应的出力系数

在这里

我们用毛水头和毛水头出力公式做计算

在逆序递推计算时

如果知道i阶段末的状态

比如说状态k

和i阶段初的状态

比如状态j

那么怎么去求对应阶段的阶段效益呢

这个计算可以分为以下几步

我们由出力公事计算项可以知道

出力由出力系数

发电流量和水头相乘所得

所以分别去求这几项即可

首先

求发电流量

在给定始末水位或者蓄量状态条件下

可以用水量平衡公式求得总出库流量

先假定没有弃水

那么出库流量就和发电流量相等

就得到对应的发电流量结果

然后

求发电水头

发电水头由上游平均水位

和下游平均水位两项组成

在已知始末蓄量状态条件下

上游平均水位可以

通过查找水位库容曲线转换得来

在算得出库流量条件下

下游平均水位可通过尾水流量关系曲线求得

所以发电水头就能求出来了

第三步

计算出力和发电量

第四步

需要核算弃水为零的假定是否成立

先检查计算出力的结果是否超过出力上限

如果超过的话

就意味着本应该从泄量设施里面放出的弃水量

对应的流量算到了发电流量里

所以导致计算出力超上限

那就需要把对应多算的弃水量

从发电流量里扣掉

从而保证出力或者出库

不超过对应上限

反之

如果出力或出库低于对应下限

甚至小于0

那么就用罚函数来惩罚目标函数

避免选择该不可行解作为最优解

我们来看一个水库调度的实例问题

某水库自10月初开始供水

来年3月末放至死水位

供水期共6个月

如每个月作为一个阶段

共有6个阶段

为简化起见

假定已经过初选

除阶段1、6外

每阶段只留3种水位

和5种运行方案

由它们组成S0至S6的多种运行方案

线段上数字表示该月在该放水决策时

可获得的效益

试求整个供水期水库供水

效益最优的调度方案

按照动态规划法的建模需求

图例中已经划分了阶段并确定状态变量

对状态变量进行了离散

将不可行的状态转移方案进行剔除

剩下的实线相连的转移方案

均为可行方案

本次我们采用逆序递推的方式进求解

第六阶段的初状态s51对应的累积效益为

初始状态s6的累积效益

及s6到s51的阶段效益之和

对应结果为7

类似的

S52累计效益为6

S53

累积效益为5

第五阶段初到s41状态有两种可行方案

若从s51转移过来

对应累积效益为11

若从s52转移过来

累积效益为12

所以两者取最大为12

类似地

第五阶段初到s42状态

也有两种可行方案

从s52转移过来对应结果为阶段效益7

和累积效益6之和为13

从s53转移过来对应结果

为阶段效益9和累积效益5之和为14

所以最优累积效益为14

到s43的转移方案只有一个

从s53转移过来

对应累积效益为10

以此类推

直至第一阶段的s0状态

也就是最终状态的累积效应的结果求出来

最大值为83

最优的转移状态为s11

那么

按照动态规划法回溯的步骤

可由s0的最优转移状态s11

回溯至s11的最优转移状态s22

然后是s32

S42

s53至s6

这便是逆序递推

顺序回溯的对应结果

以顺序递推为例

根据水库调度问题中

动态规划法的计算流程可知

整个计算完成所有阶段的状态迭代

所以算法的最外层循环是阶段变量循环

共计n次

在每一个阶段需要计算阶段末

每一个状态的累积效益

假设每个阶段离散为m个状态

那么第二层循环需要完成m次计算

在每个阶段末状态最优累积效益的计算过程中,

需要对上一个阶段所有状态转移过来的阶段效益

和对应的累计效益进行加和

所以

第三层循环需要完成m次计算

那么整个计算过程是n

乘以m的平方次计算的工作量

也就是单一水库动态规划法的时间复杂度

为离散网格状态数的平方项

在水库群优化调度模型中

每个状态中需要考虑其中

所有水库的状态的组合数

假设有M个水库

则动态规划法的时间复杂度

为离散网格状态数的幂指数项

当离散状态较多或者水库数目众多时

采用该方法将耗用较长的计算机时

呈现“维数灾”问题

比如

以三峡水库为例

从死水位145到正常高175m

共计30米

若离散步长取0.01m

对应网格数为3000

算一年的调度计划对应的计算次数为

12*3000^2

大约1亿次

如果是四个相当规模的水库构成的水库群

计算规模为12*3000^2^4

大约8*10^20亿次

计算量极其庞大

因此

大量针对动态规划法

“维数灾问题”的改进

替代算法相继提出

如“增量动态规划法”

智能算法等

试图寻求计算时间

与计算精度之间的均衡方案

目前

水库(群)优化调度求解算法

仍在不断探索中

增量动态规划是动态规划的一种改进方法

是用逐次逼近的方法寻优

针对大规模网格离散寻优

造成的维数灾问题

该方法每次寻优

只在某个状态序列附近的小范围内

进行动态规划法求解

它能显著减少计算工作量

该方法的基本思想如下

(1)若以库水位为状态变量

根据入流过程

在库水位变化范围内拟定一条初始调度线

然后拟定库水位初始步长

(2)在初始调度线的上下区域

根据所取步长

规定一定变化范围

这个变化范围称为增量廊道

例如可取变化范围为

就形成一个带状的“廊道”


(3)在“廊道”内

从调度期末开始

比如图中的10月末

对每一时段初限定的7个状态

逆时序递推

按常规动态规划方法求最优调度线

(4)如果所求的最优调度线

与初始调度线不完全重合

则以所求的最优调度线作为初始调度线

转步骤(2)重新迭代

否则转步骤(5)

若步长小于等于规定的最小步长

则停止并输出最优调度线

否则缩小步长

以当前最优调度线

作为为初始调度线

转步骤(2)重新迭代

由于是在窄小的“廊道”内寻优

很可能出现出力

小于保证出力的情况

而不满足约束条件

使算法失效

所以

同样可以考虑在计算中增加一个惩罚项

处理违反约束的方案.

此外

逐步优化算法也是试图规避维数灾问题的

阶段规划问题的求解算法

该方法采用轮换变量优化的方式

每次把一个具有T阶段m维的多阶段决策问题

分解成T-1个子问题

每个子问题的维数仍然为m维

但将每个子问题简化为

含两个阶段的单变量寻优问题

该方法的优点是不必离散状态变量

方法主要步骤如下

选取初始调度线

然后每次只优化一个变量

固定其余变量

把对应的子问题的目标函数值进行迭代寻优

直至迭代收敛

可见两种改进方法均需要选择初始调度线

因此解的质量高度

取决于初始解的质量

两种方法

均只能保证收敛到局部最优解

同学们 本次课到此结束

谢谢大家

再见

水资源系统分析理论与应用课程列表:

第一章 水资源系统分析导论

-1.1 水资源系统分析问题的提出

--1.1 水资源系统分析问题的提出

-1.2 系统的概念与系统方法

--1.2系统的概念与系统方法

-1.3系统分析的概念和内容

--1.3系统分析的概念和内容

-1.4水资源系统分析方法

--1.4水资源系统分析方法

-1.5水资源系统分析量化方法案例

--1.5水资源系统分析量化方法案例

-第一章测试

-第一章讨论题

第二章 实用非线性优化方法

-2.1非线性优化数学模型与求解方法

--2.1非线性优化数学模型与求解方法

-2.2最优性条件

--2.2最优性条件

-2.3一维优化与线搜索

--2.3一维优化与线搜索

-2.4无约束极值问题的解析法

--2.4无约束极值问题的解析法

-2.5二次规划

--2.5二次规划

-2.6约束非线性优化罚函数法

--2.6约束非线性优化罚函数法

-2.7非线性优化直接方法

--2.7非线性优化直接方法

-2.8 SCE-UA算法

--2.8 SCE-UA算法

-2.9可变容差法

--2.9可变容差法

-第二章测试

-第二章讨论题

第三章 动态规划与水库优化调度

-3.1多阶段决策问题

--3.1多阶段决策问题

-3.2动态规划基本原理

--3.2动态规划基本原理

-3.3水库优化调度建模及求解

--3.3水库优化调度建模及求解

-3.4 随机动态规划模型

--3.4随机动态规划模型

-3.5水库优化调度实例

--3.5水库优化调度实例

-第三章测试

-第三章讨论题

第四章 群体智能优化算法

-4.1遗传算法

--4.1遗传算法

-4.2粒子群算法

--4.2粒子群算法

-4.3蚁群算法

--4.3蚁群算法

-4.4狼群算法

--4.4狼群算法

-第四章测试

-第四章讨论题

第五章 多目标规划

-5.1多目标规划问题与特点

--5.1多目标规划问题与特点

-5.2多目标规划模型与解的概念

--5.2多目标规划模型与解的概念

-5.3多目标规划求解方法

--5.3多目标规划求解方法

-5.4多目标规划的实例

--5.4多目标规划的实例

-第五章测试

-第五章讨论题

第六章 动态系统预测方法

-6.1动态系统预测方法导论

--6.1动态系统预测方法导论

-6.2时间序列方法

--6.2时间序列方法

-6.3线性动态系统模型方法

--6.3线性动态系统模型方法

-6.4 BP人工神经网络方法

--6.4 BP人工神经网络方法

-6.5支持向量机方法

--6.5支持向量机方法

-6.6洪水过程动态系统预报方法实例

--6.6洪水过程动态系统预报方法实例

-第六章测试

-第六章讨论题

第七章 系统评价方法

-7.1评价程序与评价指标

--7.1评价程序与评价指标

-7.2层次分析法

--7.2层次分析法

-7.3模糊综合评价法

--7.3模糊综合评价法

-7.4投影寻踪评价法

--7.4投影寻踪评价法

-第七章测试

-第七章讨论题

第八章 决策分析

-8.1决策分析的基本概念

--8.1决策分析的基本概念

-8.2 不确定性的基本概念

--8.2 不确定性的基本概念

-8.3 完全不确定型决策

--8.3 完全不确定型决策

-8.4 风险的多维度量

--8.4 风险的多维度量

-8.5 风险型决策(1)

--8.5 风险型决策(1)

-8.6风险型决策(2)

--8.6风险型决策(2)

-第八章测试

-第八章讨论题

期末测试

-期末测试

-期末论文

3.3水库优化调度建模及求解笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。