开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)

[1]詹祥澎,杨军,韩思宁等.考虑电动汽车可调度潜力的充电站两阶段市场投标策略[J].电力系统自动化,2021,45(10):86-96.

摘要:在电力市场环境下,充电站优化投标策略能降低电力成本,甚至通过售电获取收益。文中考 虑了电动汽车成为柔性储荷资源的潜力,提出了日前电力市场和实时电力市场下充电站的投标策 略。首先,基于闵可夫斯基加法提出了充电站内电动汽车集群模型的压缩方法,并建立了日前可调 度潜力预测模型和实时可调度潜力评估模型。同时,考虑充电站间的非合作博弈,建立了电力零售 市场下充电站的策略投标模型,并基于驻点法将其转化为一个广义 Nash 均衡问题。然后,提出了 基于日前报价和实时报量的两阶段市场交易模式,并与合作投标模式、价格接受模式和集中调度模
式进行对比。最后,基于一个 38 节点配电系统进行了仿真。仿真结果表明所提出的可调度潜力计 算方法能够将电动汽车集群封装为广义储能设备,从而降低了模型的维度。基于可调度潜力的策 略投标模型能够挖掘电动汽车的储荷潜力,实现电动汽车与电网的有序互动。
关键词: 电动汽车;车入网;可调度潜力;投标策略;广义 Nash 均衡

1 基于闵可夫斯基求和与数据驱动的可调度潜力计算方法

        由于电动汽车的充电模式可以分为快充模式和慢充模式,快充模式下的电动汽车将以最大功率充电,其充电负荷不可控制,因此本文将其归并至常规基础负荷;而慢充模式的电动汽车具有负荷平移和反向供电能力,其个体的建模如附录 A 式( A1)至式( A4 )所示 23 - 24
        由附录 A 可知,若针对电动汽车个体建模,一方面引入了大量的变量,导致模型的维度过高;另一方面需要准确获取其出行时间参数,然而在日前阶段预测电动汽车个体的出行特性是十分困难的。同时,电动汽车个体并未达到直接参与电力市场的门槛,通常需要由聚合商统一管理。充电站作为天然的聚合商,通过管理站内电动汽车的充放电,能够使电动汽车作为柔性负荷参与电力市场投标。因此,直接参与电力市场投标的是充电站的总负荷,如式(1 )所示。
开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第1张图片

1. 1 广义储能设备建模

        由前文可知充电站需要叠加电动汽车个体的决策空间来作为一个整体参与电力市场投标。闵可夫斯基求和是一种适用于欧几里得空间的加法,表达式如式(2)所示,其物理本质是多个空间的膨胀集。 如附录 A A1 所示,对 2 个变量空间求闵可夫斯基和后,能够得到变量和的包络线,借此思想能够将电动汽车群体聚合为广义储能设备  
开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第2张图片
        闵可夫斯基求和的前提是 2 个变量空间具有相同的定义域,然而由附录 A 式( A1)至式(A4)可知,由于电动汽车个体并网时间的差异,其定义域T_n^{EV}存在异质性,因此需要将其延拓至相同的调度时间集合 T,从而得到式(3)所示的广义储能模型,详细的推导过程见附录 A 式( A5 )至式( A18 )。

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第3张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第4张图片

1. 2 日前可调度潜力预测方法

        在日前阶段,充电站根据历史数据预测可调度潜力。以充电站 j 为例,首先定义其历史运行数据,如式(4 )所示。

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第5张图片

        充电站将记录每天所服务的电动汽车的数据,包括电动汽车的到达时间、离开时间、到达时的电池电量、离开时的电池电量、电动汽车的型号(包含电池电量边界和最大充放电功率),如式(5 )所示。

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第6张图片

        进一步基于附录 A 式(A17)计算每个数据集的广义储能设备参数,将其作为后验得到的电动汽车集群可调度潜力,如式(6 )所示。

        因此,历史电动汽车集群数据被压缩为历史可调度潜力,能作为训练数据,并进一步基于反向传播(BP)神经网络、时间序列等方法建立可调度潜力预测模型。相比于电动汽车个体参数直接作为训练数据的方法,一方面降低了数据集的张量,另一方面考虑了变量间的相关性,能够提高预测模型的准确性。由于 BP 神经网络、时间序列等预测模型并非本文的研究重点,此处不再具体展开。

1. 3 实时可调度潜力滚动计算方法

        在实时运行阶段,电动汽车的可调度潜力由充电站的实际观测数据计算得到 [27] 。需要注意的是,本文假设电动汽车用户有足够的意愿向充电站上报其用车时间和期望电量,否则认为电动汽车是不可控的,将以最大功率充电。如附录 A 图 A2 所示,充电站根据当前时段位于充电站内的电动汽车计算可调度潜力,计算方法如附录 A 式(A17)所示。同时,随着时间的推进,充电站不断更新可调度潜力,但在调度过程中仅执行一个滚动时间窗的计划。因此,实时可调度潜力又称为动态可调度潜力。

2 充电站两阶段市场投标模型

        在本章中,电动汽车的可调度潜力被用于充电站的投标决策 。 本文基于统一市场出清电价( market clearing price,MCP)机制设计了两阶段电力市场模式[28] ,如图 1 所示,充电站作为柔性负荷参与日前和实时市场。在日前市场中,充电站预测其他充电站的报价向量,并基于日前可调度潜力投标自身的价格向量(即报价方式),电力交易中心根据各充电站的报价以及发电商的分段报价,出清各充电站的充放电计划。其中,配电系统运营商对配电网的潮流进行安全校核,并对交易过程实施阻塞管理 。 最终各充电站根据配电网节点边际电价( distribution locational marginal price DLMP)结算 电能费用。在实时市场中,充电站能够根据实时可 调度潜力改变电能计划,具体表现为卖出部分日前 合约电量、买入其他充电站的日前合约电量、买入新 的现货电量等等。为此充电站需要投标自身的电量 偏差量以保证自身的电能平衡(即报量方式 29 ),电 力交易中心则根据各充电站的电能计划以及发电商 的平衡服务费用出清现货价格。由此可见日前市场
是一个期货市场而实时市场是一个现货市场。
开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第7张图片

2. 1 日前市场投标模型

        本文利用双层优化模型刻画了充电站的策略投标过程,需要满足 2 个假设条件:①充电站不会影响发电商的报价曲线;②当充电站的售电价格与发电商相同时,充电站的电能将会被优先选择。由于充电站的售电量远小于发电商且存在相关政策鼓励需求侧资源参与电力市场 19] ,因此可以认为该假设条件是合理的。首先,对于每一个充电站 j,其目标是最小化电能费用,如式(7 )所示。

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第8张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第9张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第10张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第11张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第12张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第13张图片

2. 2 实时市场投标模型

        由于日前市场是一个期货市场,同时实时电动汽车可调度潜力可能与日前预测值存在差异,因此仅通过日前市场的充放电合约往往不能保证充电站的电能平衡。在实时市场中,充电站通过投标电 能偏差量参与电力现货市场,以保证自身的电能平衡。
        本文基于滚动优化建立了实时市场投标模型,以滚动窗 l 为例,充电站 j 的目标函数如式( 19)所示,其包含了滚动时段集合 T l 的日前期货合约费用,滚动窗 l 的现货费用和除 l 以外其余滚动时段的现货费用估计值,其中日前期货合约费用为确定值。需要注意的是,在 MCP 模式下滚动窗 l 的现货费用将根据实时 DLMP结算。

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第14张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第15张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第16张图片

        市场出清问题的目标函数如式(26)所示,其包含了现货电量的费用和合约偏差的平衡费用(即惩罚费用)。需要注意的是,市场出清问题中的所有变量均为滚动窗 l的变量。

 开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第17张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第18张图片

3 博弈均衡分析与市场运行模式

        第 2 章建立了充电站两阶段市场投标模型,其与现有成熟的火电市场模型存在着明显的差异。如附录 B 图 B1 所示,在确定的供给曲线下,充电站通过平移需求曲线改变供需平衡交点 ,从而决定MCP,而电动汽车的可调度潜力决定了需求曲线的可平移范围,从而决定了充电站的市场力。同时,充电站不同时间断面的充放电功率高度耦合,需要满足多面体约束(例如全天的充电需求约束,电池电量约束等等)。传统火电市场的交易模式不能保证充电站的能量平衡,因此本文分析了两阶段市场投标模型的均衡性,并提出了一种新的市场运行模式,其能够在保证充电站能量平衡的同时发挥市场力的作用,并能够被推广至其他需求侧资源。

3. 1 博弈均衡分析

        第 2 章所提日前市场和实时市场投标模式可被写成多目标双层规划形式,即

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第19张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第20张图片开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第21张图片

        其中,日前市场出清问题 KKT 系统的详细推导过程见附录 C ,实时市场出清问题 KKT 系统的详细推导过程见附录 D。由于市场出清问题的 KKT 系统中包含充电站间的耦合约束,因此充电站间构成了广义 Nash 均衡问题,求解这一问题的主流方法为驻点法和迭代法,同时文献[ 32]说明了电力零售市场的均衡是普遍 存在的。

3. 2 市场运行模式

        为了推动市场达到均衡状态,附录 E 图 E1 说明了两阶段市场的运行流程,具体如下。
        1)在日前阶段,各充电站基于历史运行数据预测电动汽车的可调度潜力,并形成广义储能设备模型。
        2)充电站预测其余充电站的报价,并求解附录C 所示的日前投标决策优化模型,从而得到充电站的最优报价曲线和期望充放电功率,该决策为充电站在预测其他参与者行为下的最优反应。
        3)各充电站投标自身计算的最优报价,并额外上报其期望充放电功率。
        4)电力交易中心根据各充电站的报价出清日前充放电功率,考虑到纯价格信号无法准确反映充电站的能量诉求,因此本文假设电力交易中心在根据价格出清的同时尽可能追踪充电站的期望充放电功率。实现方法为在市场出清问题 KKT 系统的基础上以功率偏差最小为目标,具体见附录 E 式( E1 )。
        5)随着时间推进,在每个滚动窗内,充电站根据实时可调度潜力观测值决策充放电功率调整量,并与电力交易中心迭代以确保功率平衡,考虑到不同充电站的决策存在时差,本文采用异步算法进行迭代,具体如下。
        ①充电站根据当前的现货价格和偏差电力需求,求解附录 D 所示的充电站实时市场投标优化模型,得到当前阶段的最优反应。
        ②电力交易中心公开充电站的偏差电量需求,并公示当前的现货价格。
        ③直到所有市场参与者均不改变自身的电能计划,电力交易中心出清现货价格,否则返回步骤
        6)充电站通过能量管理系统分配充放电功率,从而落实具体电动汽车的电能计划 33 ] ,详细过程如附录 F 所示。

4运行结果

开源代码分享(7)—考虑电动汽车可调度潜力的充电站两阶段市场投标策略(附matlab代码)_第22张图片

5完整代码获取链接:

案例分析中的基础数据、仿真结果和程序源代码均开源在本文作者的GitHub, 详见https://github.com/WHUzxp/Supports_for_AEPS。

本文的仿真均在Intel(R) Core (TM) i7-4710HQ CPU @ 2.50GHz,8GB RAM硬件环境下,Windows 10操作系统中通过MATLAB R2014a编程并调用YALMIP和GUROBI 9.0(学术版)工具箱求解模型,其中仿真过程中涉及的随机变量均通过随机种子固定,运行源代码即可复刻本文案例分析结果,此处对开源文件的作用和使用方法进行说明。

源代码

1. main: 主函数,包括各模块的求解顺序,运行主函数能复刻全文结果。

2. Sampling_EV:电动汽车抽样。

3. potential_history:分析充电站的历史电动汽车数据并计算可调度潜力。

4. potential_DA:由充电站历史可调度潜力预测日前可调度潜力。

5. disorder_charging:日前预测充电站无序充电负荷。

6. potential_RT:充电站实时可调度潜力计算,按照96个时间段滚动计算。

7. disorder_bidding:以无序负荷参与日前电力市场,计算出清电价。

8. Bidding_price_reference:充电站联合参与日前报价优化,求解一个MILP问题。

9. bidding_DA:充电站独立参与日前报价优化,得到自身优化报价策略,调用函数bidding_DA_callback。

11. RT_single: 充电站独立参与实时报量优化,得到自身优化报量策略,调用函数RT_single_Callback。

12. RT_cooperation: 充电站合作参与实时报量优化,得到优化报量策略,调用函数RT_cooperation_Callback。

14. RT_center: 集中调度模式下充电站实时滚动电能优化模型。

15. DA_pricetaken: 充电站作为价格接受者的日前电能计划优化模型。

16. RT_pricetaken: 充电站作为价格接受者的实时滚动电能优化模型。

函数

1. bidding_DA_callback: 输入其余充电站的报价预测,求解MILP问题,得到充电站日前报价策略。

2. RT_single_Callback: 通过迭代求解MILP以得到充电站实时报量的Nash均衡。

3. RT_cooperation_Callback: 通过迭代求解MILP以得到充电站联合实时报量策略。

4. RT_center_Callback: 滚动求解充电站实时调度模型。

数据文件

1. data_EV:电动汽车抽样结果。

2. data_potential_history:充电站历史可调度潜力。

3. data_potential_DA:充电站日前可调度潜力预测值。

4. data_potential_RT:实时阶段充电站每个时间断面的可调度潜力观测值。

5. data_disorder:充电站无序充电负荷。

6. result_disorder:充电站无序充电负荷的日前出清结果。

7. Bid_reference:充电站联合参与日前市场报价的优化结果。

8. Bid_DA_final:各充电站优化的日前报价策略。

10. result_RT_single:各充电站优化的实时报量策略。

11. result_RT_cooperation:充电站联合优化的实时报量策略。

12. result_DA_center:集中调度模式下充电站日前电能计划。

13. result_RT_center:集中调度模式下充电站实时滚动电能计划。

14. result_DA_pricetaken:充电站作为价格接受者制定的日前电能计划。

15. result_RT_pricetaken:充电站作为价格接受者实时滚动执行的电能计划。

你可能感兴趣的:(双层优化入门,开源代码分享,电力系统运行优化,matlab,电动汽车,电力市场,双层优化)