风储联合电站实时自调度的高效深度确定性策略梯度算法

宋煜浩1 魏 韡1 黄少伟1 吴启仁2 梅生伟1

(1. 清华大学电机工程与应用电子系 北京 100084 2. 中国三峡新能源(集团)股份有限公司 北京 101100)

摘要 发展风电等可再生能源对于实现双碳目标具有重要意义,风储联合电站是未来风电接入电网的主要形式。该文研究发电侧商业化运行的风储联合电站的实时自调度问题,目标是使自身的期望收益最大化。由于场站级风电预测误差较大,独立发电商信息有限,难以准确预测电网电价,风储联合电站实时自调度面临多重不确定性,极具挑战。该文提出高效深度确定性策略梯度(DDPG)算法求取风储联合电站实时自调度策略,实现不依赖预测的场站级在线决策。首先通过Lyapunov优化构建基础策略,得到一个较好的但未必是局部最优的策略;然后,采用基础策略预生成样本,用于初始化经验库,提升搜索效率;接着,应用引入专家机制的DDPG算法,可以训练得到局部最优的自调度策略;最后,算例分析表明,相比于基础调度策略和经典DDPG,该文所提方法能有效提升风储联合电站的平均收益。

关键词:风储联合电站 实时自调度 Lyapunov优化 深度确定性策略梯度(DDPG)

0 引言

近年来,新能源发电发展迅速。以风电为例,截至2021年底,我国风电累计装机容量已经超过3亿kW,同比增长16.6%[1],仅2022年一季度便新增风电790万kW[2]。风能作为一种绿色能源有望在未来的低碳电网中发挥主要作用。然而风能本身的波动性和随机性却给电力系统的运行带来了巨大的挑战,需要足够的备用资源。储能可以平滑风电出力,风储联合电站是未来风电接入电网的主要形式[3-5]

本文考虑由独立发电商管理的风储联合电站参与实时市场,发电商的目标是最大化期望收益。由于场站级风电预测误差较大[6],且独立发电商信息有限,难以准确预测电网电价[7],风储联合电站实时自调度面临多重不确定性,极具挑战。目前关于风储联合电站调度优化的方法可大致分为以下几类。

1)基于模型预测控制(Model Predictive Control, MPC)或称滚动优化[8]。该方法利用一个预测模型求解当下的最优策略,如此随时间向前推进。文献[9]中提出了风储联合电站协调调度运行的框架。然而,MPC方法的性能依赖预测的精度。在最坏的情况下,与无预测的贪婪算法相比,MPC并不能带来更好的性能[10]

2)基于两阶段鲁棒优化或者随机规划。随机规划假设不确定量的分布已知,对目标函数的期望值进行优化[11]。鲁棒优化考虑不确定集合中的最坏情况[12]。如采用随机规划方法研究风储联合电站参与电力市场问题[13],采用鲁棒优化的方法研究风储联合电站在微网中的能量管理问题[14]。这一类方法的主要问题在于,第二阶段需要假设所有时段的不确定量都已获知后才能做出决策,无法用于在线调度。

3)以Lyapunov优化[15]为代表的在线优化方法,这一类方法既不需要预测也不需要历史数据。通过构造储能荷电状态的虚拟队列,将队列长度作为惩罚项加入目标函数,从而将时段耦合的优化问题分解为单时段决策。文献[16]将Lyapunov优化用于风储联合电站的实时调度,提升长期收益。此类方法的共性问题在于惩罚项引入目标函数可能会影响算法性能,导致得到的策略具有保守性。此外,完全忽略历史数据与预测信息也会影响策略的最优性。

4)基于以强化学习为代表的近似动态规划算法。相比于前两类方法,强化学习为数据驱动,其本身不依赖预测信息且便于实现在线决策。而相比于Lyapunov优化,强化学习可以充分利用历史数据的价值。强化学习在电力系统调度问题中已有较多应用[17-19]。特别地,对于风储联合电站的调度,目标包括最小化弃风[20]和最大化收益[21]等。

在强化学习算法中,深度确定性策略梯度(Deep Deterministic Policy Gradient, DDPG)算法[22]适用于状态和动作都为连续量的场景,和风储联合电站的调度问题兼容性较好。然而,在不依赖预测的前提下,鲜有研究将DDPG算法应用于风储联合电站的实时自调度中。如文献[23]将DDPG算法用于风储联合电站日前调度,文献[24]研究风光储联合系统在线调度,都使用了预测信息,性能依赖预测精度。此外,当调度时段较多时,各时段策略函数不同,离线训练效率降低;由于给储能充电没有即时收益,在训练时智能体容易短视而影响性能。这些也大大增加了DDPG算法应用于本文问题的难度。

Lyapunov优化利用了系统运行模型,可以有效规避不可行的调度动作和低收益动作,作为先验知识提升DDPG的探索效率;DDPG则可以充分利用历史数据的价值,通过训练,降低Lyapunov优化的保守性。鉴于二者具有互补性,本文提出高效DDPG算法。以Lyapunov优化作为基础策略,用于初始化DDPG的训练,求取风储联合电站实时自调度策略,实现不依赖风电出力和电价预测的场站级在线决策。最后对实际数据进行算例分析,通过和经典DDPG算法的对比,验证了所提策略的有效性。

1 风储联合电站自调度的数学模型

风储电站及其内部潮流如图1所示。电站通过一条输电线和主网相连,其传输容量是有限的。风能既可以直接通过传输线送到电网,也可以储存在配套储能中。储能从风机充电,向电网放电。为了提高收益,风储电站需要在电价低时储存风能,在电价高时卖出电能。然而在实时自调度的场景下,未来风电出力和电网电价是不确定的,传统优化模型只能作为离线策略提供最优值的基准,并不能提供在线策略。以下分别描述离线模型和在线模型。

width=206.25,height=98.25

图1 风储电站及其内部潮流

Fig.1 Wind-storage plant and its internal power flow

1.1 离线模型

风储电站的结构和功率流如图1所示。风机实时出力为width=16.3,height=16.3,由风速决定,其中直接送到电网的功率为width=18.35,height=16.3,储能的充电功率为width=18.35,height=16.3,剩余的风能则被舍弃。储能亦可向电网侧放电,功率为width=16.3,height=16.3width=18.35,height=16.3width=18.35,height=16.3width=16.3,height=16.3为可控决策变量,满足

width=137.9,height=16.3 (1)
width=88.3,height=31.25 (2)
width=95.75,height=16.3 (3)
width=106.65,height=16.3 (4)
width=116.85,height=19.7 (5)
width=78.1,height=16.3 (6)
width=63.15,height=16.3(7)

式中,width=11.55,height=14.95为充电效率;width=11.55,height=14.95为放电效率;width=18.35,height=16.3为传输线容量;width=13.6,height=16.3为充放功率容量;width=8.85,height=9.5为实时调度时段的持续时间,本文取典型值5min;上标u表示上限,上标l表示下限;Ett时刻储能荷电状态(State of Charge, SOC)。式(1)要求各决策变量非负;式(2)要求风机的实时出力不低于直接并网和储能充电所需的总功率,超出部分为弃电;式(3)为传输线容量约束;式(4)为储能充放功率容量约束;式(5)和式(6)为储能荷电状态的动态和存储容量约束;式(7)要求储能不能同时充放电。

给定所有时段的风机出力width=16.3,height=16.3和实时电价width=11.55,height=14.95,自调度离线模型可写成如下优化问题:

width=196.3,height=46.2 (8)

式中,width=9.5,height=11.55为调度周期,本文取1天,即width=36,height=11.55width=14.95,height=14.95为历史平均电价;width=13.6,height=14.95width=13.6,height=14.95分别为初始和最终时刻的SOC;width=73.35,height=19.7width=6.1,height=11.55时期的收益;width=11.55,height=14.95t时期的电价。为了考虑储能SOC初值和终值的差异,将其差值对应的能量价格考虑在目标函数中,对应的电价为历史平均值。优化问题(8)的目标找到策略width=21.05,height=16.3,最大化调度周期内的总收益期望。策略width=22.4,height=16.3定义为

width=116.85,height=75.4 (9)

式中,width=9.5,height=14.95width=6.1,height=11.55时段的系统状态;width=11.55,height=14.95width=6.1,height=11.55时段的调度动作;序列width=19.7,height=16.3代表整个调度周期的所有状态都被掌握。策略函数width=21.05,height=16.3确定一个从所有状态到当前时段调度动作width=11.55,height=14.95的映射。

由于各阶段状态不存在不确定量,式(8)退化为式(10),形式上属于线性规划。

width=172.55,height=46.2 (10)

1.2 在线模型

在实时自调度的场景下,所有调度动作需要在线给出。离线调度模型需要未来(即width=19.7,height=11.55及以后)时期的风机出力和电价,然而这些信息是不确定的,模型无法求解。由此,不依赖未来不确定量的在线自调度模型被提出。

在线模型需要给出一个策略width=21.05,height=16.3。该策略只根据当前和过去时期的状态,确定当前时期调度动作的取值。动作应满足约束式(1)~式(7),同时使得式(8)中总收益的期望尽可能大。此时,策略width=21.05,height=16.3

width=120.25,height=75.4 (11)

式中,序列width=16.3,height=16.3为当前和历史的状态。在线自调度模型可以写为

width=199,height=46.2(12)

在线模型(12)可以看作一个随机规划问题。与离线模型(10)是有限维线性规划不同,在线模型(12)中待优化的是函数,属于无穷维优化,且width=21.05,height=16.3的维数随着时间t增长。因此传统的优化理论难以应对在线场景。

本文对式(12)作进一步简化,令策略函数width=21.05,height=16.3仅与当前状态有关,即

width=120.25,height=58.4 (13)

当风机出力和电价的长程相关性较强时,该简化会在一定程度上影响最优解的性能,然而其求解难度却因width=21.05,height=16.3的维数非时变而降低。此外,基于当前断面的控制符合电网实时调度的惯例,如上简化更加贴近工程实际。由此得到

width=194.95,height=46.2(14)

为了得到性能较优的策略,实现在线自调度模型(14)的求解,本文先基于Lyapunov优化理论得到一个基础调度策略,用该策略生成初始样本。随后提出高效DDPG算法,训练智能体改进基础调度策略。

2 基于Lyapunov优化的基础调度策略

储能容量SOC的动态方程式(5)是离线模型(8)中的时段耦合约束。若储能容量width=11.55,height=11.55无限大,则离线模型(8)时段解耦,每个时段的问题可以单独求解。Lyapunov优化[15]通过将储能SOC视为虚拟队列,将队列长度作为惩罚项引入目标函数,从而将时段耦合的离线模型(8)分解为单时段决策,通过罚参数的选取可以保证SOC约束(6)得到满足[16]。Lyapunov优化可以有效规避不可行的调度动作和低收益动作,不依赖预测并且能够在线求解。因此,本节提出自调度的Lyapunov优化模型作为基础策略。

当调度周期足够长(width=31.25,height=11.55)时,由SOC和电价的有界性,SOC增量所带来的收益可忽略不计,此时式(14)转换为

width=150.1,height=46.2 (15)

定义队列width=11.55,height=14.95

width=46.2,height=14.95 (16)

其中常数width=8.85,height=11.55

width=84.25,height=16.3 (17)

式中,width=8.85,height=11.55与时间无关;width=19.7,height=14.95为最高电价,可以从历史数据中估计;width=11.55,height=11.55为一个人工选择的正权重。由此,约束(5)等价于

width=99.15,height=19.7 (18)

选择二次函数(19)为Lyapunov函数[15]

width=40.75,height=27.15 (19)

相邻两个时期的Lyapunov函数增量定义为漂移,即

width=52.3,height=14.95 (20)

文献[16]证明了最小化Lyapunov漂移保证了队列的稳定性。由于width=18.35,height=14.95是未知的,导致width=12.9,height=14.95无法计算,为了克服这一困难,结合式(18)对其进行放缩得到

width=203.1,height=86.95(21)

因此最小化width=63.15,height=19.7可以控制SOC的增量,进一步通过调节权重width=11.55,height=11.55保证SOC在整个调度周期内满足约束(6)。

将Lyapunov漂移引入式(14)的目标函数控制储能SOC,则变量width=11.55,height=14.95和约束(6)不再出现。由于width=11.55,height=14.95在每个时段开始时是已知量,式(14)变为每个时段独立求解如下优化问题:

width=238.4,height=42.1(22)

调整权重width=11.55,height=11.55可使储能的实际SOC满足约束(6)。由于充放电存在能量损失,同时充放电不是一种经济调度策略[25],充放电互补约束(7)可以松弛。width=6.1,height=11.55时期的状态width=65.9,height=19.7是已知量,自调度的Lyapunov优化模型(22)是线性规划,其完整形式为

width=78.1,height=52.3 (23)

式中,width=11.55,height=14.95为由width=11.55,height=14.95表示的状态,有

width=69.95,height=21.05 (24)

AFc为常矩阵,b为常向量,即

width=199,height=203.75

width=11.55,height=11.55表示状态可行域,是一个固定的多面体。

width=160.3,height=114.1(26)

式中,width=14.95,height=14.95为风机的装机容量。

当权重width=11.55,height=11.55增加时,基础策略更重视提高收益,过大的width=11.55,height=11.55有可能会导致储能SOC越限;反之,当权重width=11.55,height=11.55降低时,基础策略更注重抑制Lyapunov漂移,从而使得策略性能下降。当width=50.95,height=16.3且SOC逼近容量极限时,利用灵敏度可以证明[16],最优动作不会使SOC越界,即式(6)在整个调度周期内都满足,其中

width=92.4,height=31.25 (27)

为了提高收益的同时保证SOC不越界,令width=36,height=14.95是最好的选择。

Lyapunov方法的优势在于能够直接给出从系统状态到决策的映射,不依赖历史数据和预测,简单易行。根据参数规划理论可知,基础策略是状态width=11.55,height=14.95的分片线性函数[26];状态可行域width=11.55,height=11.55可划分为若干多面体,在每个多面体中,基础策略是状态width=11.55,height=14.95的一个线性函数,且不随时间改变,可以看作是式(13)的一个特例。由于模型(23)只有3个变量和7个约束,可以直接在线求解。

3 基于DDPG的改进调度策略

基于Lyapunov优化的基础调度策略求解速度快,然而,由于完全忽略了历史数据和预测信息,可导致应用效果偏保守或贪婪,在一定程度上损失了最优性。本节在基础策略的基础上,利用历史数据通过DDPG算法改善策略的表现。基础策略利用了系统模型,提升了智能体的探索效率,相比于经典DDPG性能更好。

3.1 自调度的MDP表述

式(14)可以看作一个马尔可夫决策过程(Markov Decision Process, MDP)[27]

为了形式统一,状态在式(13)的基础上增加时段t,即width=73.35,height=19.7。时期width=6.1,height=11.55只能取width=25.8,height=11.55的整数值,为离散量。其余变量的取值是连续有界量。增加维数后,策略width=43.45,height=16.3和式(13)中的width=9.5,height=14.95是等价的。

动作width=11.55,height=14.95即为式(11)中的调度动作。动作是连续的,时期t的动作需要满足该时期的约束式(1)~式(7)。

SOC的状态转移由式(5)描述。如果忽略实时电价和风机实时出力的长程相关性,可近似认为下一时期的状态不受过去时期状态和动作的影响,而受到当前时期状态和动作的影响,由此体现了MDP表述的合理性。

即时奖励width=8.85,height=14.95定义为,当未到达终态时,即时奖励为时期width=6.1,height=11.55的收益;当达到终态时,还要加上SOC增量带来的收益。

width=195.6,height=42.1(28)

动作值函数width=50.95,height=19.7反映了当状态为width=9.5,height=14.95时,采取策略width=8.85,height=13.6所能得到的所有即时奖励加权求和的期望(累计奖励),权重因子为不超过1的width=8.85,height=11.55

width=235.7,height=42.1 (29)

当取width=21.05,height=13.6,不难证明初态width=11.55,height=14.95Q函数值和式(14)中的目标函数值相等。

width=234.35,height=31.25 (30)

MDP的目标是为了找到一个最优策略width=11.55,height=16.3,使得累计奖励最大。

width=122.95,height=23.75 (31)

由动态规划理论,MDP问题式(31)中的width=11.55,height=16.3和在线模型(14)的最优策略是等价的,即风储联合电站实时自调度策略的求取转换为MDP问题式(31)的求解。

3.2 DDPG算法

在强化学习中,智能体通过和环境的交互得到训练,其行为逐渐逼近最优策略width=11.55,height=16.3,从而实现MDP问题的求解。

DDPG算法包含Actor和Critic两套神经网络,分别用于拟合策略width=8.85,height=13.6Q函数,见表1,其中width=9.5,height=11.55为神经网络权重。

表1 DDPG神经网络

Tab.1 Neural networks of DDPG

网络名称形式 动作降维前动作降维后 Actor目标网络Actor评估网络Critic目标网络Critic评估网络

在一个训练轮次内,从初态到终态,智能体给出动作和环境交互。环境返回奖励和下一时刻的状态,以及终止标志width=11.55,height=14.95。由此得到一个样本width=67.25,height=16.3。一旦终止,则开启下一训练轮次,如此循环,直到达到轮次上限width=18.35,height=14.95

训练时,Actor评估网络的目标为最大化其输出动作的Q函数值,其损失函数为

width=135.15,height=31.25 (32)

式中,width=14.95,height=14.95为每次训练抽取的样本批量;width=9.5,height=16.3为其中第width=6.1,height=11.55个样本在时期width=6.1,height=11.55的状态。

Critic评估网络的目标是最小化和目标网络之间的时间差分损失。

width=146.05,height=52.3 (33)

式中,width=11.55,height=16.3width=9.5,height=16.3分别为第width=6.1,height=11.55个样本在时期width=6.1,height=11.55的动作和奖励。两个评估网络通过损失函数的梯度下降法来更新权重,而两个目标网络则通过软更新的方式更新权重。

width=108,height=36 (34)

式中,width=11.55,height=11.55为软更新系数,width=40.1,height=13.6

此外,为了降低样本相关性,还引入了经验回放机制,即所有样本都放入容量为width=11.55,height=11.55的经验库中。

3.3 动作降维

MDP问题式(31)的动作空间有三维,自由度较大,智能体容易给出不可行的动作,DDPG训练难度较高。为了降低训练难度,使得动作尽可能满足约束,对前文中三维的width=11.55,height=14.95做降维处理为一维的width=11.55,height=16.3,对于不可行的动作,通过一个映射将其修正到可行域边界上,对应动作width=11.55,height=16.3,同时在奖励中增加关于修正量的惩罚。

定义净充电动作标幺值width=11.55,height=16.3,基值为width=13.6,height=16.3。对应的可行动作为width=11.55,height=16.3,表示某可行的充电或放电动作。

width=88.3,height=68.6 (35)

式中,relu(x)定义为当x>0时,relu(x)=x;否则,relu(x)=0。

width=11.55,height=16.3width=11.55,height=16.3二者之间满足映射width=11.55,height=14.95,即

width=145.35,height=120.25 (36)

不难验证,映射式(35)保证了约束式(7)以及width=18.35,height=16.3width=16.3,height=16.3非负,映射式(36)保证了约束式(4)和式(6)以及width=18.35,height=16.3存在可行解。

当净充电动作固定后,由于约束式(2)、约束式(3)及width=18.35,height=16.3的非负约束,有

width=145.35,height=33.3 (37)

width=18.35,height=16.3不能取更小的值,因为这样会增加弃风量,不经济。

以上推导说明width=11.55,height=16.3和可行域中的width=11.55,height=14.95是一一对应的,降维没有缩小智能体的可探索范围。因此,可以选择width=11.55,height=16.3作为Actor网络的输出,并替代Critic网络输入中的width=11.55,height=14.95,损失表达式(32)和式(33)的修改仅是符号上的区别,此处不再赘述。

当Actor输出的width=11.55,height=16.3可行时,width=31.25,height=16.3,可直接计算奖励,否则增加关于修正量的惩罚项。综上所述,实际训练时,采用width=11.55,height=16.3代替width=8.85,height=14.95,其中权重为width=16.3,height=14.95

width=86.95,height=16.3 (38)

可以验证,采用式(38)替换3.1节中原有奖励式(28)得到新的MDP问题,其最优策略及最优值都是不变的,因此该问题和式(14)仍是等价的,但是训练难度降低了。

在训练和保存样本时,使用动作width=11.55,height=16.3。在和环境交互获取width=14.95,height=14.95时,智能体使用动作width=11.55,height=16.3,保证width=18.35,height=14.95合法,其中width=16.3,height=14.95width=16.3,height=16.3来自于实际观测。

width=108,height=68.6 (39)

3.4 策略初始化与高效DDPG算法

在3.3节的基础上,可以利用经典DDPG算法训练智能体,从而给出一个调度策略。然而若得到一个性能较好的智能体很困难,主要原因在于调度周期长导致状态空间太大,探索效率低。对于调度周期为1天,时隙5min的模型,仅width=6.1,height=11.55就有288种取值,如果其余三个状态量按百分比离散化,则有上亿种组合。此外,经典DDPG算法的探索方式是在Actor的输出附近引入高斯噪声来增加探索率。然而当存储容量较大时,这种方式导致智能体只在某个小范围的SOC中探索,由于储能充电没有即时收益,智能体容易陷入短视。为此,本节基于第2节中提出的基础策略,引入样本初始化和专家机制,提升探索效率,从而提升智能体性能。

基于风机出力和电价的历史数据,由基础调度策略,对历史上每个调度周期的各个时期t,可以得到各width=9.5,height=14.95下的调度动作width=11.55,height=14.95。基础策略的调度动作都是可行的,因此可由式(35)和式(38)直接得到width=11.55,height=16.3width=11.55,height=16.3。由于历史数据是确定的,width=16.3,height=14.95width=11.55,height=14.95可以由式(39)得到。由此得到一系列样本width=67.25,height=16.3。用这些样本初始化经验库。由于基础策略性能较好,在此基础上训练智能体能够有效规避不可行动作和低效益动作,大大提高了探索效率。

为了在训练初期帮助智能体进一步规避低效益动作,提升收敛速度和探索效率,引入专家机制,即一个“低充高放”策略width=11.55,height=16.3,有

width=241.8,height=81.5(40)

width=11.55,height=16.3为低电价满充且高电价满放的分段线性策略,其中包含两个超参数width=20.4,height=16.3width=18.35,height=14.95。在训练时,对Actor的损失函数式(32)增加额外惩罚项。

width=151.45,height=31.25 (41)

式中,width=6.1,height=14.95为权重因子,初值为width=8.85,height=14.95,衰减率为width=27.15,height=22.4,每训练一次Actor网络指数衰减一次,速率由width=13.6,height=14.95控制。

超参数width=20.4,height=16.3width=18.35,height=14.95可以通过基础策略预生成的样本估计大致的范围。将样本中所有满放动作时的电价取平均值记作width=16.3,height=14.95,所有满充动作时的电价取平均值记作width=13.6,height=14.95。由于最小化Lyapunov漂移引入了额外的保守性,导致width=16.3,height=14.95width=13.6,height=14.95更加接近平均电价,因此width=16.3,height=14.95width=20.4,height=16.3width=19.7,height=14.95width=13.6,height=14.95width=18.35,height=14.95width=18.35,height=14.95

引入基于基础策略的样本初始化和专家机制后,求解自调度MDP模型的高效DDPG算法结构如图2所示。

width=224.25,height=240

图2 高效DDPG算法结构

Fig.2 Efficient DDPG algorithm structure

高效DDPG算法训练流程见表2。其中训练轮数width=13.6,height=11.55最大为width=18.35,height=14.95width=8.85,height=9.5表示高斯噪声的方差,初值为width=11.55,height=14.95,衰减率为width=28.55,height=22.4,每训练一次网络指数衰减一次,速率由width=14.95,height=14.95控制。width=8.85,height=9.5越大,智能体的动作的随机性越高,反之,动作的贪婪性越高。基于基础策略的样本初始化体现在步骤3,专家机制体现在步骤10。

表2 高效DDPG算法训练流程

Tab.2 Efficien DDPG algorithm training process

算法1 高效DDPG算法训练流程 1.随机初始化Actor评估网络和Critic评估网络的权重 和;2.初始化Actor目标网络和Critic目标网络权重, ;3.由基础调度策略、式(35)、式(38)、式(39)和历史数据生成一系列样本,从中随机选择D个初始化经验库;4.令训练轮数=0;5.在历史数据中随机抽取一个调度周期用于训练;6.令,重置,读取和,得到初态;7.由状态,Actor评估网络的输出增加高斯噪声后得到动作,;8.由式(36)计算,由(38)计算,由式(39)得到和;9.将样本存入经验库;10.从经验库中随机抽取个样本,由式(41)和式(33)计算损失和,分别更新和;11.由式(34)更新和;12.更新和;13.如果,,回到步骤7,否则当前训练轮次结束继续步骤14;14.,如果则终止训练,否则回到步骤515.保存模型,测试性能。

算法1是在基础调度策略样本的基础上进一步训练。相比于之前的基础策略,性能有进一步的提升。当训练完成后,Actor评估网络可以直接用于调度动作的生成,由此得到表3中的改进调度策略。由于神经网络的前馈在ms级时间即可完成,该策略是实时的,满足在线需求,并且不依赖于对未来不确定量的预测。但由于利用了历史数据,电价与风电出力的日变化模式包含在了最优动作价值函数式(29)中,因此具有一定前瞻性,可以获得比基础策略更好的性能。

表3 改进调度策略

Tab.3 Real-time self-dispatch improved strategy

算法2 改进调度策略 初始化:由算法1得到训练好的Actor评估网络,获取,令;1.在时期,获取,和,由此得到;2.由和式(36)得到;3.由式(35)和式(37),得到调度动作;4.由调度动作和式(5),得到;5.当,算法终止;否则,令,回到步骤1。

4 算例分析

本文用Matlab R2019b实现基础策略的求解并预生成样本;利用Python3.7和Tensorflow2.0实现改进调度策略的求解。为了验证本文所提策略的有效性,以吉林省某风电场两年的实际出力数据和某地两年的PJM电价数据作为研究对象。选择最后二十天作为测试集,用于测试本文所提调度策略的在线性能;其余作为训练集,代表历史数据,用于初始化经验库和训练智能体。测试集的风机实时出力和实时电价随时间的变化曲线如图3和图4所示。取时隙width=40.75,height=13.6,调度周期为1天,width=36,height=11.55,其余参数见表4。其中为了保障储能的长期运行,在一个调度周期结束后,其SOC余量不应低于其初值,取width=34.65,height=16.3

width=209.25,height=102

图3 风机实时出力(测试集)

Fig.3 Real-time power of wind turbine (test set)

width=209.25,height=102

图4 实时电价(测试集)

Fig.4 Real-time electricity price (test set)

表4 风储电站参数

Tab.4 Wind - storage power plant parameters

参数数值参数数值 (%)/MW/[$/(MW·h)]/[$/(MW·h)]2020956039.719.0/(MW·h)/(MW·h)(%)/MW/min10020951001.935

由基础策略,遍历训练集的各调度周期,可以用基础策略得到各个时期的调度动作,由此生成width=70.65,height=19.7样本288×710共204 480个。其中不存在同时充放电的行为,由此说明式(22)中直接忽略约束(7)的做法是合理的;样本中也不存在SOC越界的现象,这和式(27)中的结论相对应。

高效DDPG算法的超参数见表5。由于MDP的目标为最大化累计收益,不存在折扣,故width=21.05,height=13.6。为了尽可能地充分利用所有预生成的样本,取经验库容量width=55.7,height=11.55。实测发现,当训练轮次达到260时,Critic网络基本都能达到收敛,于是取width=43.45,height=14.95。将预生成样本中所有满放动作时的电价取平均值,得到width=43.45,height=14.95$/(MW·h),将所有满充动作时的电价取平均值,得到width=42.1,height=14.95$/(MW·h)。由3.2节中的分析,取width=40.1,height=16.3$/(MW·h),width=38.7,height=14.95$/(MW·h)。其余超参数都为经验值或者经过调试后获得。

表5 高效DDPG算法的超参数

Tab.5 Hyperparameters of the improved DDPG algorithm

参数数值参数数值 /[$/(MW·h)]11.2×10-39×10-30.01200 000120/[$/(MW·h)]150300502600.0130

Actor和Critic网络为全连接网络,结构和优化器见表6。初始学习率分别为width=11.55,height=14.95width=11.55,height=14.95,取值见表5。Actor网络输入width=9.5,height=14.95,输出width=11.55,height=14.95;Critic网络输入width=9.5,height=14.95width=11.55,height=14.95,输出Q函数值。由于width=72,height=19.7有四维而width=11.55,height=16.3为一维,故Actor网络输入维数为4,Critic网络输入维数为5,输出维数则都是1维。隐藏层激活函数选择了Leakyrelu(0.1)而没有选择Relu,是为了保证当输出为负时仍有梯度信息,抑制梯度消失现象。类似地,Actor网络的输出width=11.55,height=16.3绝对值取1时就意味着储能充放已经达到了width=13.6,height=16.3的上限,之所以取激活函数为1.1Softsign是为了避免动作趋于width=13.6,height=16.3上限时所带来的梯度消失问题。

表6 神经网络的结构和优化器

Tab.6 Structure and optimizer of neural networks

参数Actor网络Critic网络 隐藏层数神经元数隐藏层激活函数输出层激活函数优化器输入维数输出维数2[128;64]Leakyrelu(0.1)1.1SoftsignAdam412[128;64]Leakyrelu(0.1)NoneAdam51

为了判断智能体的训练是否收敛,常见做法是绘制总奖励-训练轮次曲线,由该曲线的收敛判定训练收敛。然而,在算法1中,每轮训练需要从历史数据(训练集)中随机抽取一天,从图3和图4中可以看出,各天之间的风电和电价差异较大,这导致训练过程中各个训练轮次的总奖励也波动剧烈。因此本文改用神经网络权重来判定是否收敛。在训练过程中,每经过5个训练轮次(train episode),测试Critic评估网络的权重,取各权重矩阵1-范数的均值作为收敛指标,其趋势如图5所示。可以看出,该收敛指标在第200个训练轮次以后基本稳定在2 400左右,可以认为训练收敛。多次实验发现,收敛指标在训练轮次达到260之前都能趋于稳定,兼顾训练资源和收敛性,取width=43.45,height=14.95

在训练收敛后,即可利用算法2在测试集上测试智能体的性能。为了说明算法的有效性,本文选用经典DDPG算法训练智能体,用于对比。相比于高效DDPG算法,经典DDPG算法没有采取基础策略的样本初始化及专家机制,其初始化的方式为,用未训练的Actor评估网络+高斯噪声(方差为width=11.55,height=14.95)的方式来随机动作,由此生成样本填满经验库。除此之外,二者其余的训练流程完全相同,且都采用相同的网络结构和超参数。

width=212.25,height=129.75

图5 神经网络权重—训练轮次曲线

Fig.5 Neural network weight-train episodes curve

在测试集上测试改进调度策略、经典DDPG算法训练的智能体及基础调度策略三种算法,结果见表7。在运行效果方面,三种策略不可行点数都为0,说明这些策略都运行在安全范围内,没有给出越界的调度动作;在SOC方面,改进策略的平均日最大SOC高于经典DDPG,但都小于12%,说明储能容量比较充足,而基础调度策略的平均日最大SOC高达43.68%,这是因为Lyapunov漂移惩罚项倾向于将SOC稳定在50%附近;在收益方面,改进调度策略的性能最好,经典DDPG算法的效果最差,前者比后者收益增加了2.60%,比基础调度策略增加了1.80%。由此可见,在基础调度策略基础上进行的DDPG训练提升了其性能,而基础策略的样本初始化及专家机制这一改进也明显提升了DDPG的训练效果。在运行过程中,改进调度策略给出的调度动作都是可行的且平均收益相对其他两种策略都有明显提升,证明了算法的有效性。

表7 平均性能比较(测试集)

Tab.7 Average performance comparison (test set)

策略不可行点数平均日最大SOC(%)平均日收益/(103$)收益增长(%) 改进调度策略基础调度策略经典DDPG00011.1343.686.406.9546.8316.778—1.802.60

为了进一步对比策略的性能,选取测试集第19天,对比改进调度策略和基础调度策略的放电功率,如图6所示,其SOC曲线如图7所示。可以看到这一天的电价波动较大,凌晨时在22$/(MW·h)以下而下午则一度逼近30$/(MW·h)。基础策略的充电行为波动剧烈,放电行为出现在11:00电价上涨之后,然而随着SOC的下降,式(20)中的Lyapunov漂移惩罚项开始影响决策,在临近15:00出现了“高价充电”的情况;此外,在3:00附近由于长时间满充,SOC较高,类似地也出现了“低价不充”的现象。这些都影响了其最终的收益。而改进策略的充电行为比较平滑,如在0:00~5:00时SOC较低且电价有下降趋势,因此不断增加充电功率,5:00以后SOC达到较高水平且电价有上升趋势,因此充电功率迅速减小。由此,改进策略基本满足“低充高放”,且改进策略对电价变化的响应非常灵敏。

width=222.75,height=123

图6 放电功率对比(测试集第19天)

Fig.6 Discharging power comparison (test set day 19)

width=201.75,height=132.75

图7 SOC对比(测试集第19天)

Fig.7 SOC comparison (test set day 19)

同样在第19天对比经典DDPG算法和改进调度策略的SOC曲线,如图7所示。可以看出,经典DDPG算法的策略只在少数时间充放电,大部分时间储能是闲置的,即经典DDPG算法倾向于收敛到短视策略,不给储能充电。这是因为随机初始化后DDPG样本池中大多数样本的SOC都在width=13.6,height=14.95附近,远离width=13.6,height=14.95的样本匮乏,状态空间探索率低;此外由于充电没有即时收益,智能体也难以主动学习到充电的行为。这些原因导致其陷入了短视的策略。相比之下,改进调度策略更充分地利用了储能的存储容量。其在训练时采用基础策略初始化,对状态空间的探索率高,并在一定程度上规避了低收益动作和不可行动作,因此无论从训练效率和还是最终性能上,相比于经典DDPG算法都有提升。

为了进一步说明算法的稳定性,将算法1中Tensorflow2.0的随机种子设为1, 2,width=11.55,height=6.1,7,由此得到七组不同的神经网络初始权重。按照表4~表6中的参数进行多次训练,并在测试集上测试所得改进调度策略的平均日收益,如图8所示。可见随机权重对于测试结果几乎无影响,算法稳定性较好。

width=210.75,height=132.75

图8 随机权重对算法结果的影响

Fig.8 The influence of random weight on algorithm result

为了进一步说明储能容量改变对本文所提算法效果的影响,在原算例参数附近,选取存储容量上限width=13.6,height=16.3设为30MW·h, 40MW·h,width=11.55,height=6.1,130MW·h,分别测试经典DDPG得到的策略、本文提出的调度策略和改进调度策略。容量变化对算法结果的影响如图9所示。其中,改进调度策略收益最高且较为稳定,性能最好。当储能容量上限低于50MW·h时,储能容量相对紧张,收益随容量增长而略微增长;当高于60MW·h时,收益基本没有变化,因为此时储能容量比较充足,故存储上限的变化对结果影响不明显。经典DDPG的收益较低,性能最差;基础调度策略的收益随着容量的增加先略微增加后有所下降,这是因为随着width=13.6,height=16.3不断增加,width=11.55,height=14.95的大小也会随之变大,式(22)中的惩罚项也会增大,导致基础调度策略保守性增加,性能下降。图9说明了储能配置容量在一定范围变化时,本文所提策略仍是有效的。

width=207,height=134.25

图9 容量变化对算法结果的影响

Fig.9 The influence of capacity variation on results

5 结论

本文针对传输线并网的风储联合电站的实时自调度问题,从并网上电经济收益最大化目标出发,利用基于Lyapunov优化的基础调度策略,由高效DDPG算法得到改进调度策略。通过和经典DDPG算法的对比,论证了该策略的有效性。结果表明:

1)改进调度策略在提升经济收益方面效果较佳。第4节的仿真算例表明,在风电和电价等预测信息未知的条件下,本文所提方法相比于基础调度策略和经典DDPG算法得到的调度策略,平均收益都有明显提升。

2)基础调度策略引入了额外的保守性,经典DDPG算法容易陷入不给储能充电的解。高效DDPG算法用基础调度策略进行初始化并引入专家机制,训练效率高。由此得到的改进调度策略更充分地利用了储能的存储容量,对电价变化的响应灵敏。

3)高效DDPG算法收敛性较好。离线训练的智能体在线应用,满足了自调度的实时性需求。

参考文献

[1] 国家能源局. 2021年全国电力工业统计数据[EB/OL]. [2022-01-26]. http://www.nea.gov.cn/2022-01/26/c_1310441589.htm.

[2] 国家能源局. 截至3月底全国发电装机容量约24亿千瓦,3月份可再生能源发电量较快增长.[EB/OL]. [2022-04-22]. http://www.nea.gov.cn/2022-04/22/c_ 1310569074.htm.

[3] 姜书鹏, 乔颖, 徐飞, 等. 风储联合发电系统容量优化配置模型及敏感性分析[J]. 电力系统自动化, 2013, 37(20): 16-21.

Jiang Shupeng, Qiao Ying, Xu Fei, et al. Capacity optimization and sensitivity analysis of cogeneration system of wind power and energy storage[J]. Automation of Electric Power Systems, 2013, 37(20): 16-21.

[4] 陆秋瑜, 罗澍忻, 胡伟, 等. 集群风储联合系统广域协调控制及利益分配策略[J]. 电力系统自动化, 2019, 43(20): 183-191.

Lu Qiuyu, Luo Shuxin, Hu Wei, et al. Wide-area coordinated control and benefit assignment strategy of clustering wind-energy storage integrated system[J]. Automation of Electric Power Systems, 2019, 43(20): 183-191.

[5] 孙辉, 刘鑫, 贲驰, 等. 含风储一体化电站的电力系统多目标风险调度模型[J]. 电力系统自动化, 2018, 42(5): 94-101.

Sun Hui, Liu Xin, Ben Chi, et al. Multi-objective risk scheduling model of power system containing power station with integrated wind power and energy storage[J]. Automation of Electric Power Systems, 2018, 42(5): 94-101.

[6] 王佳丽. 探路风电预报[J]. 能源, 2014(3): 74-76.

Wang Jiali. Pathfinder wind power forecast[J]. Energy, 2014(3): 74-76.

[7] 姚子麟, 张亮, 邹斌, 等. 含高比例风电的电力市场电价预测[J]. 电力系统自动化, 2020, 44(12): 49-55.

Yao Zilin, Zhang Liang, Zou Bin, et al. Electricity price prediction for electricity market with high proportion of wind power[J]. Automation of Electric Power Systems, 2020, 44(12): 49-55.

[8] García C E, Prett D M, Morari M. Model predictive control: theory and practice—a survey[J]. Automatica, 1989, 25(3): 335-348.

[9] Xie Le, Gu Yingzhong, Eskandari A, et al. Fast MPC-based coordination of wind power and battery energy storage systems[J]. Journal of Energy Engineering, 2012, 138(2): 43-53.

[10] Lin Minghong, Liu Zhenhua, Wierman A, et al. Online algorithms for geographical load balancing[C]//2012 International Green Computing Conference (IGCC), San Jose, 2012: 1-10.

[11] Wu Hongyu, Shahidehpour M, Li Zuyi, et al. Chance-constrained day-ahead scheduling in stochastic power system operation[J]. IEEE Transactions on Power Systems, 2014, 29(4): 1583-1591.

[12] Ben-Tal A, Nemirovski A. Robust solutions of uncertain linear programs[J]. Operations Research Letters, 1999, 25(1): 1-13.

[13] Garcia-Gonzalez J, de la Muela R M R, Santos L M, et al. Stochastic joint optimization of wind generation and pumped-storage units in an electricity market[J]. IEEE Transactions on Power Systems, 2008, 23(2): 460-468.

[14] Lara J D, Olivares D E, Cañizares C A. Robust energy management of isolated microgrids[J]. IEEE Systems Journal, 2019, 13(1): 680-691.

[15] Neely M J. Stochastic network optimization with application to communication and queueing systems[M]. Berlin: Springer, 2010.

[16] Guo Zhongjie, Wei Wei, Chen Laijun, et al. Real-time self-dispatch of a remote wind-storage integrated power plant without predictions: explicit policy and performance guarantee[J]. IEEE Open Access Journal of Power and Energy, 2021, 8: 484-496.

[17] 赵冬梅, 陶然, 马泰屹, 等. 基于多智能体深度确定策略梯度算法的有功-无功协调调度模型[J]. 电工技术学报, 2021, 36(9): 1914-1925.

Zhao Dongmei, Tao Ran, Ma Taiyi, et al. Active and reactive power coordinated dispatching based on multi-agent deep deterministic policy gradient algorithm[J]. Transactions of China Electrotechnical Society, 2021, 36(9): 1914-1925.

[18] 李涛, 胡维昊, 李坚, 等. 基于深度强化学习算法的光伏-抽蓄互补系统智能调度[J]. 电工技术学报, 2020, 35(13): 2757-2768.

Li Tao, Hu Weihao, Li Jian, et al. Intelligent economic dispatch for PV-PHS integrated system: a deep reinforcement learning-based approach[J]. Transactions of China Electrotechnical Society, 2020, 35(13): 2757-2768.

[19] 刁浩然, 杨明, 陈芳, 等. 基于强化学习理论的地区电网无功电压优化控制方法[J]. 电工技术学报, 2015, 30(12): 408-414.

Diao Haoran, Yang Ming, Chen Fang, et al. Reactive power and voltage optimization control approach of the regional power grid based on reinforcement learning theory[J]. Transactions of China Electrotechnical Society, 2015, 30(12): 408-414.

[20] 梁煜东, 陈峦, 张国洲, 等. 基于深度强化学习的多能互补发电系统负荷频率控制策略[J]. 电工技术学报, 2022, 37(7): 1768-1779.

Liang Yudong, Chen Luan, Zhang Guozhou, et al. Load frequency control strategy of hybrid power generation system: a deep reinforcement learning—based approach[J]. Transactions of China Electrotechnical Society, 2022, 37(7): 1768-1779.

[21] 于一潇, 杨佳峻, 杨明, 等. 基于深度强化学习的风电场储能系统预测决策一体化调度[J]. 电力系统自动化, 2021, 45(1): 132-140.

Yu Yixiao, Yang Jiajun, Yang Ming, et al. Prediction and decision integrated scheduling of energy storage system in wind farm based on deep reinforcement learning[J]. Automation of Electric Power Systems, 2021, 45(1): 132-140.

[22] Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning[EB/OL]. 2019: arXiv: 1509.02971. https://arxiv.org/abs/1509. 02971

[23] 蔡新雷, 崔艳林, 董锴, 等. 基于改进K-means和MADDPG算法的风储联合系统日前优化调度方法[J]. 储能科学与技术, 2021, 10(6): 2200-2208.

Cai Xinlei, Cui Yanlin, Dong Kai, et al. Day-ahead optimal scheduling approach of wind-storage joint system based on improved K-means and MADDPG algorithm[J]. Energy Storage Science and Technology, 2021, 10(6): 2200-2208.

[24] 张淑兴, 马驰, 杨志学, 等. 基于深度确定性策略梯度算法的风光储系统联合调度策略[J/OL]. 中国电力, 2022: 1-9. [2022-07-03]. http:// kns.cnki.net/ kcms/ detail/11.3265.TM.20211115.1426.002.html.

Zhang Shuxing, Ma Chi, Yang Zhixue, et al. Joint dispatch of wind-photovoltaic-storage hybrid system based on deep deterministic policy gradient algorithm [J/OL]. Electric Power, 2022: 1-9. [2022-07-03]. http://kns.cnki.net/kcms/detail/11.3265.TM. 20211115. 1426.002.html.

[25] Shen Ziqi, Wei Wei, Wu Danman, et al. Modeling arbitrage of an energy storage unit without binary variables[J]. CSEE Journal of Power and Energy Systems, 2021, 7(1): 156-161.

[26] 束金龙, 闻人凯. 线性规划理论与模型应用[M]. 北京: 科学出版社, 2003.

[27] Sigaud O, Buffet O. Markov decision processes in artificial intelligence[M]. New York: John Wiley & Sons, 2013.

Efficient Deep Deterministic Policy Gradient Algorithm for Real-Time Self-Dispatch of Wind-Storage Power Plant

Song Yuhao1 Wei Wei1 Huang Shaowei1 Wu Qiren2 Mei Shengwei1

(1. Department of Electrical Engineering Tsinghua University Beijing 100084 China 2. China Three Gorges Renewables (Group) Co. Ltd Beijing 101100 China)

Abstract The development of wind power and other renewable energy is of great significance to achieve the dual carbon goal, and the wind-storage power plant is the main form of wind power connected to the power grid in the future. This paper studies the real-time self-dispatch problem of the wind-storage power plant commercialized on the generating side, with the goal of maximizing its expected income. Due to the large prediction error of the field-level wind power and the difficulty in accurately predicting the electricity price of the grid due to the limited information of independent power producers, the real-time self-dispatch of the wind-storage power plant is faced with multiple uncertainties, which is extremely challenging. In this paper, an efficient DDPG algorithm was proposed to solve the real-time self-dispatch strategy of the wind-storage power plant, and realize the field-level online decision-making independent of prediction. Firstly, Lyapunov optimization was used to construct the basic strategy to obtain a good but not necessarily local optimal strategy. Then, samples were pre-generated by the basic strategy to initialize the experience base and improve the search efficiency. Further, DDPG algorithm with expert mechanism was applied to train the locally optimal self-scheduling strategy. Case study shows that compared with the basic dispatch strategy and the classical DDPG, the proposed method can effectively improve the average revenue of the wind-storage power plant.

keywords:Wind-storage power plant, real-time self-dispatch, Lyapunov optimization, deep deterministic policy gradient(DDPG)

DOI: 10.19595/j.cnki.1000-6753.tces.220979

中图分类号:TM614

中国长江三峡集团有限公司科研项目资助(202003128)。

收稿日期 2022-05-30

改稿日期 2022-07-18

作者简介

宋煜浩 男,1998年生,博士研究生,研究方向为储能技术的应用。E-mail:3160871816@qq.com

黄少伟 男,1985年生,博士,副研究员,硕士生导师,研究方向为人工智能在电力系统中的应用。E-mail:huangsw@mail.tsinghua.edu.cn(通信作者)

(编辑 赫蕾)