张军,张中丹,王洲,彭婧,王涛
(1.国网甘肃省电力公司,甘肃 兰州 730030;2.国网甘肃省电力公司经济技术研究院,甘肃 兰州 730050)
随着全球人口的急剧增多、工业化迅速发展,煤炭、石油等传统能源急剧消耗,全球变暖、大气污染等环境问题日益严重。为解决传统能源消耗与环境污染之间的突出矛盾,电力能源领域将目光投向了具有污染小、可再生、高灵活性等优势的可再生能源发电技术[1]。微电网凭借其供电可靠性高、运行方式灵活等优点,成为可再生能源就地消纳和并网远送的主要模式,并得到了普遍的关注和研究[2-3]。
为实现微电网多目标协调优化调度和安全稳定运行,文献[4-6]利用不同的算法对微电网调度做出了一定程度上的优化,但均忽略了可再生能源具有的波动性、间歇性和随机性等不确定性因素对微电网调度及安全运行产生的巨大影响[7-9]。目前,常用的电力系统不确定性因素调度优化方法主要有两种:随机优化和鲁棒优化。关于电力系统随机优化调度问题的研究,文献[10]考虑风速的不确定性,将每个风电场出力视为一个负的满足威布尔随机分布的负荷,根据历史数据,用方差—协方差矩阵描述不同风电场相关系数,建立最优潮流模型,定量研究随着风电场之间相关性的增强,最优潮流结果各项指标的波动情况。关于电力系统鲁棒优化调度问题的研究,文献[11]提出了一种新的两阶段鲁棒安全约束算法机组组合模型,期望在基本场景中使得运行成本最小化,保证鲁棒解能够根据不确定性自适应、安全地进行风力和负荷调整。随机调度优化方法需要假定随机变量的概率分布模型,但概率分布模型不能准确地刻画实际不确定性因素复杂的变化规律;鲁棒调度优化方法采用不确定集合对不确定性因素变化进行刻画,不需要假定概率分布模型,但在考虑最差场景下的最优解时,可能导致鲁棒优化调度结果偏保守[12]。近年来,随着微电网量测系统的发展完善,终端采集数据海量增加,基于数据驱动的优化调度方法开始被广泛关注,将其有效地应用在随机优化和鲁棒优化方法上,以解决随机优化不确定因素建模不准确和鲁棒优化保守性强等问题。
基于以上问题,文章设计了基于数据驱动的自适应鲁棒优化(ARO)框架,用于求解风电为主的微电网市场调度优化问题。利用K-means聚类方法构建典型场景代表大量复杂的场景,然后通过数据驱动方法构建风电不确定性集合,对风电出力分布进行描述,有效地排除了不必要的极端场景,降低了模型保守度。考虑风电出力不确定性等因素,建立包括微电网日前预调度模型及实时调度模型的两阶段自适应鲁棒优化模型。利用列约束生成算法(C&CG)将模型解耦分解成主问题和子问题进行交互迭代求解。最后,算例仿真验证文章所提方法的可行性和有效性。
考虑到数据驱动的微电网市场优化结果受到训练数据集的直接影响,训练集规模越大,优化结果往往越准确,但其训练时间也越来越长。针对上述问题,文章提出了基于数据驱动的模型预训练(离线训练)和滚动训练(在线训练)的微电网优化调度架构,如图1所示。由图1可以看出,离线训练主要是利用系统在线训练前后的空闲时间,利用K-means聚类方法对微电网历史交互数据和微电网模拟生成数据进行训练,确定不确定参数典型场景来代表大量复杂场景。在线训练主要是利用离线训练预调度阶段的数据,加上微电网实时调度阶段生成的增量样本数据进行实时滚动训练,实现预调度阶段最小成本优化和实时调控阶段额外调控成本及弃风惩罚成本最小的决策优化,得到符合实时工况的优化调度结果。
图1 基于数据驱动的微电网优化调度框架Fig.1 Optimal dispatching framework of microgrid based on data drive
鲁棒优化主要采用不确定性集合表示不确定性因素的变化范围,对寻求不确定性因素的所有实现都有良好性能的解。传统鲁棒优化根据不确定性集合中的最劣场景直接进行决策,因此优化结果的保守性较强。近年来,ARO在电力系统调度优化方面取得了较好的发展[13-14],其决策过程是基于随机变量的实际变化来进行调整,基于ARO的两阶段调度优化模型表达式如下:
式中:x为第1阶段决策变量,表示机组启停计划;g(x)为第1阶段优化问题的目标函数;ζ为随机变量,表示可再生能源发电与负荷的不确定性;y为第2阶段决策变量;f(y)为第2阶段优化问题的目标函数;Ω(x,ζ)为y的可行域;U为随机变量ζ的不确定性集合。
在式(1)的基础上,文章研究构建以微电网经济调度成本最小为目标的两阶段自适应调度优化模型,主要包括微电网预调度阶段和微电网实时在线调控阶段。
1.2.1 微电网日前预调度阶段
该阶段主要是确定微电网日前预调度计划,以选取的微电网历史交互数据与风电预测值作为基准场景,考虑微电网市场的奖惩费用和设备的运维成本,确定微电网发电机组的启停计划和发电量、储能系统的充放电计划以及与主电网的购售电计划,实现微电网预调度阶段运行成本最优的调度目标。预调度阶段目标函数表达式为
式中:G为总成本;T为时间段总数,预调度阶段取T=24;为常规机组、燃气轮机以及风机在τ时间段的运行运行成本;为常规发电机组i在τ时间段的启、停成本为储能设备在τ时间段的充放电成本为微电网在τ时间段与主电网的交易成本为奖惩费用。
预调度阶段目标函数中各变量表达式为
式中:Nc为τ时间段内常规发电机组运行数为常规发电机组i在τ时间段的发电功率;ai,bi,ci为常规发电机组i的传统能源消耗系数;gq,τ为燃气轮机q在τ时间段的运行成本;Qr为τ时间段内运行燃气轮机数;fj,τ为风机j在τ时间段的运行成本;Nw为τ时间段内风机运行数;ui,τ为常规发电机组i在τ时间段的运行状态(u=1表示机组正在运行,u=0表示机组停止运行)分别为机组i在τ时间段的启、停成本;Cch,Cdis以及分别为储能设备的充、放电系数和充、放电功率;以及分别为在τ时间段,微电网与主电网的交易分时电价和购、售电功率;h1,h2分别为不等式约束条件、等式约束条件;ωe,ωe0为当前阶段能源利用率和标准能源利用率;Rτ为每提高单位标准的能源利用率的奖励收益为每增加单位标准的污染废气的惩罚费用;Hτ,Hτ0分别为运行阶段和允许标准的污染废气排放量;K1,K2分别为不满足条件时的惩罚因子,取较大值以保证满足约束条件。
1.2.2 微电网实时调控阶段
在微电网实时调控阶段,由于风力发电复杂的不确定因素,使得风力发电预测值与实际出力之间存在偏差,导致系统产生不平衡功率,因此需要根据预调度计划,对风力发电进行实时调控,实现实时调控成本和风力发电出力最优化目标。文章考虑到储能设备调控方式灵活,忽略其实时调控时的调控成本,仅考虑对储能设备进行调控时的收益变化,则实时调控阶段的目标函数表达式为
式中:ΔCG,up为常规发电机组上调成本;ΔCG,down为常规发电机组下调成本;ΔCES为储能设备调整成本;ΔCM为与主电网购售电交易调整成本;Closs为风电弃风惩罚调整费用;Cr为燃气轮机调控不可行惩罚费用,各变量表达式详见下式:
1.2.3 约束条件
为保证微电网能源供给侧各设备在预调度阶段能协调稳定运行,约束条件主要包括功率平衡约束,风电功率约束,机组爬、滑坡功率约束,储能设备约束以及功率交互等约束。
K-means算法[15]主要通过衡量样本集内不同样本间的相似度实现样本的划分,该算法计算效率高且伸缩性好,能够使相似度高的样本归为一簇。考虑到风力发电的复杂不确定性,提出了基于数据驱动的方法描述风电出力,以风电历史数据作为参考来表征风电出力的不确定性。首先对风电出力和负荷需求等的大规模历史样本数据进行训练统计分析,确定日内各时段实际数据与典型数据服从的相应概率分布,然后依据轮盘赌的方式,确定不同场景不同时段下的概率误差。接着基于场景分析法得出不同的场景,并利用经典场景分析法将大量已生成场景缩减至M个风电样本场景,最后利用K-means聚类算法对M个风电样本场景进行缩减聚类,采用距离相似性的评价指标,生成具有不确定性和随机特征的K(K<M)类风电时序离散场景k1,k2,…,ks,每个典型场景uk中都包含Ns个原始场景,对应场景标准化概率为Pk(s),K-means算法场景缩减优化步骤如图2所示。
图2 K-means算法场景缩减流程图Fig.2 K-means algorithm scene reduction flow chart
通过K-means算法对场景进行缩减,利用典型的场景代表大量复杂的场景来获得真实分布的信息,据此构造基于数据驱动的风力发电的不确定性集合来描述风力发电概率分布,文章通过1—范数和∞—范数构建的综合范数约束集合对风力发电概率分布进行约束,基于数据驱动的不确定性集合通过对大量历史信息进行训练,排除了极端不可能场景概率,相较于传统盒式不确定集合,有效地降低了决策的保守度,其约束集合表达式表示如下:
式中:θ1,θ∞分别为1范数、无穷范数概率允许偏差值,具体表达式形式详见文献[16-17]。
以上的主问题与子问题均在Matlab下调用CPLEX求解器直接进行求解,求解流程图如图3所示。
图3 利用C&CG算法的两阶段自适应鲁棒优化模型求解流程图Fig.3 The two-stage adaptive robust optimization model of C&CG algorithm is used to solve the flow chart
为了验证文章提出的风电不确定性的两阶段自适应鲁棒优化调度模型的有效性,在Matlab2017b的环境下进行仿真。选取4台常规机组、6台风机以及2台储能设备,并考虑可转移类需求响应负荷。各类设备运维成本为:风机0.029 6元/(kW·h),燃气轮机0.063 7元/(kW·h),蓄电池组0.032 7元/(kW·h)。风机参数如表1所示。储能设备参数为:容量100 kW·h,充放电效率95%,SOCmin=0.2,SOCmax=0.9。设切负荷的费用为3元/(kW·h),弃风费用为1.2元/(kW·h)。与主网日前交易的分时电价如图4所示。
表1 风机参数Tab.1 Wind turbine parameters
图4 微电网与主网日前交易的分时电价图Fig.4 Time-of-use price of day-trading between the micro grid and the main grid
经过C&CG算法对主、子问题的4次交互迭代求解后,模型最优化解达到收敛,验证了文章提出方法的有效性,其中C&CG算法UB和LB的收敛曲线图如图5所示。
图5 C&CG算法迭代过程中UB和LB收敛曲线Fig.5 UB and LB convergence curves during C&CG algorithm iteration
各设备调控前后的出力对比图如图6所示,在00:00~06:00时段内,由于夜间的用电需求较低,常规机组基本上没有出力,微电网与电力市场的交互功率变化不大,风电机组出力满足需求侧用电,储能系统进行充电;在07:00以后,常规机组开始启动参与调度,通过图6a可以看出,经过实时调控常规机组总体出力有所下降,这是为了消纳最恶劣场景下风力发电增长部分,常规机组会下调出力。由于风电出力的不确定性影响,在04:00时刻储能系统减少了充电功率来补充风电波动引起的出力下降部分。在图6b实时调控阶段,由于储能系统在04:00时刻减少了充电功率,储能系统充电储存了少量电能,使其在09:00~13:00时段内,用电需求较大时放电受到限制;在14:00~23:00时段内,风电出力明显增大,微电网向主电网出售电量,常规机组减少出力,以提高微电网经济性和新能源消纳。
图6 各设备调控前后的出力对比图Fig.6 Comparison of output of each device before and after control
ARO方法与传统鲁棒方法优化结果对比表如表2所示,ARO优化方法所获得目标函数结果偏差低于传统鲁棒优化方法的结果,其结果偏差区间在0.1%~0.85%之间,传统鲁棒优化要达到收敛条件需要进行更多次的迭代,计算时间更长。
表2 ARO方法与传统鲁棒方法优化结果对比表Tab.2 Comparison table of optimization results between ARO method and traditional robust method
ARO调度方法与传统调度方法成本对比表如表3所示,传统调度方法总成本要高于文章提出的ARO调度总成本。传统调度方法在制定预调度方案时,未能考虑风电不确定性等影响,其预调度方案鲁棒性差,抵抗风电变化不确定性的能力弱,可以看出在后续调控阶段的调控成本和弃风成本会随之增加。而通过文章提出方法建立的风力发电不确定性集合排除不可能的极端场景,使得最优解在更小、更准确的可行域中求解,更能反映可能的实际风电场景,抵抗不确定性参数能力较强,使得调控成本和弃风成本较低,从而使ARO调度方法两阶段总成本要低于传统调度方法两阶段总成本,使微电网获得了较好的经济收益。
表3 ARO调度方法与传统调度方法成本对比表Tab.3 Cost comparison table between ARO scheduling method and traditional scheduling method
文章提出了一种基于数据驱动的微电网两阶段自适应鲁棒优化调度模型,对微电网历史样本数据利用K-means算法进行场景缩减,用典型场景代表大量复杂场景,基于数据驱动的方法建立风力发电分布的不确定性集合,降低了模型的保守性。通过C&CG算法对模型进行解耦,分成主、子问题进行迭代求解,最后通过算例验证了所提方法的有效性,使得文章所提方法相对于传统的调度方法有着更好的经济性。