程明曦,王 冰,王 敏,吴晓月
(河海大学能源与电气学院,江苏 南京 211100)
随着电力体制改革推进和能源互联网概念深入人心,以可控负荷为主的需求侧智能用电设备逐渐入网参与调度以缓解供需压力[1]。在多元的电力市场结构中,部分售电公司转型为整合需求资源、引导用户用电的电力代理商,也成为建设能源互联网的关键决策主体[2]。
目前,我国统一的电力市场交易平台为电力交易市场化进程提供了技术支撑。然而,上述电力主体的入网给配电市场带来了极大的不确定性,若仍实施按月结算的中长期交易模式,则造成的电量偏差会给电力调度中心带来巨大的调度成本[3]。因此,为了合理有效地调度分散、灵活的入网可控负荷,并保护电力用户的隐私不被泄露,可考虑利用区块链技术构建一个全新的分布式交易机制。
区块链作为一种非对称加密的分布式账本,具备各节点平等、购售信息不可篡改、用户行为可追溯等优势,促使各电力主体共同维护交易平台的可持续发展,因此具备很强的鲁棒性[4]。应用区块链技术可直接实现分布式交易模式下各主体购售电信息的互通,保证数据透明化并降低交易的不确定性。同时,智能合约作为一个由计算机处理、可执行各交易者需求合约条款的自动交易协议,它的引入为提升区块链交易平台的安全运行效率提供了技术保障。
目前已有学者探讨了将区块链技术应用于分布式电力交易的可行性,设计了基于区块链技术的分布式能源双向拍卖协议[5-6]。而在需求侧资源方面,文献[7]为实现需求侧资源的灵活调度,设计了包含激励的去中心化电力交易模式;文献[8]提出了基于用户驾驶行为特性的电动汽车有序充电策略,以负荷曲线峰谷差最小为目标对电动汽车充电行为进行调度;文献[9]探讨了区块链框架和微电网电能交易的相似性,构建了分布式电力交易的总体框架。
对于可控负荷用户入网的优化调度这一具体场景,部分文献主要聚焦于维持电网稳定运行、改善用户的舒适度,提出了以空调负荷最小削减及最小启停为特征的双层调度[10-11];部分文献主要聚焦于集群可控负荷的聚类建模,以动态调度的形式提升可控负荷调度的准确性[12-13];还有部分文献根据区块链链上信息平台,建立了非可信环境下多级投标信息的安全传递机制[14]。然而上述研究均只是对以太坊智能合约的简单应用,鲜有涉及针对可控负荷入网场景对区块链的底层技术进行优化,实现具体场景与区块链的深度融合的研究。
本文将可控负荷入网调度与区块链智能合约技术相结合:首先,搭建区块链下可控负荷用户参与电力市场的交易机制框架;然后,整合可控负荷用户的运行特性,基于收益最优原则建立考虑运维成本和运营效能的可控负荷用户、负荷代理商2 类智能合约决策模型;在此基础上,为了实现区块链系统的长期有效运行,针对底层技术进行优化改进,提出以负荷代理商利润分红为激励机制、以效能函数变化率为共识算法,实现可控负荷入网场景的多方利益共赢。
本文所设计的区块链下可控负荷用户-负荷代理商交易模式由底层技术和上层应用2个模块组成。其中,在底层技术模块中,数据层包含区块链数据结构;网络层规定组网机制、数据传播机制、数据验证机制等网络通信协议[15];激励层通过经济平衡手段,促使节点维护区块链系统的安全运行;共识层规定区块链节点达成一致共识的方式。在上层应用模块中,智能合约层包含区块链代码和相应的状态数据;应用层对应本文区块链应用场景,即负荷代理商参与用户需求响应的交易场景。系统框架见图1。
图1 区块链下可控负荷用户-负荷代理商的交易框架Fig.1 Transaction framework of controllable load user-load agent based on blockchain
可控负荷用户节点是维持整个区块链系统持久稳定运行的关键环节。由于具有不同用能需求的可控负荷用户存在多样性和差异性,而用能需求反映了用户的用电行为特征,若对海量的用户逐一进行控制,则会给优化调度带来巨大的计算量。因此,根据可控负荷用户的用能诉求对可控负荷进行聚类显得尤为重要。同时,需求侧智能用电设备种类多样,为了不失一般性,本文选取具备代表性的2 类需求侧用电设备——电动汽车和空调作为研究对象进行重点考虑。本文利用智能合约与参与需求响应的用户自动完成调度,简化了需求响应的控制难度。
对于可控负荷用户的分析聚类,设定不同标准可能得到完全迥异的结果。大规模用户的出行特性具有一定的规律性。用户傍晚回家、早晨离家的时刻决定了电动汽车和空调的开始调度时刻及可调度时长,故本文考虑将用户回家、离家的时刻作为聚类标准,再根据2 类负荷的充放电需求,对不同物理状态的负荷进行进一步细化分类。最终,将具有相似用电特征的用户由同一负荷代理商节点进行控制,以整合大规模充放电资源,促成上述智能合约的实现。
2.1.1 电动汽车用户成本模型
式中:Δt为时段间隔,本文将一天24 h 以Δt=1 h 分为24个时段;Nevk为聚类后用户子群k中电动汽车用户数量;Pdch(i,t)为t时段电动汽车用户i的充放电功率;Pch(i,t)、Pdc(i,t)分别为t时段电动汽车用户i的充电功率(正值)、放电功率(负值);x(i,t)为t时段电动汽车用户i的充放电状态,充电时取值为1,放电时取值为-1,闲置时取值为0;Wch(t)为t时段的充电电价(即电网电价);Wloss(t)为t时段电动汽车动力电池的单位功率折损成本;Wpro(t)为t时段的放电电价。
电动汽车用户需满足如下运行约束条件。
1)出行约束。出行约束以电动汽车的出行荷电状态(SOC)需求为依据,如式(3)所示。
式中:SSOC(i,t)、SSOC(i,t-1)分别为t、t-1 时段电动汽车用户i动力电池的SOC;ηch、ηdch分别为电动汽车的充、放电效率;B为电动汽车动力电池的容量。
2.1.2 空调负荷用户成本模型
式中:Tdesired为室内最舒适温度;δ为室内温度允许的波动范围。
2.1.3 可控负荷用户的经济决策模型
对于用户子群k,综合考虑电动汽车和空调负荷用户的用电成本,计算可控负荷用户的经济决策模型。由于本文考虑由第三方负荷代理商购售电的场景,用户还需向负荷代理商缴纳一定的代理费用。则决策模型可表示为:
区块链节点有全节点和轻节点之分。轻节点不承担区块链的数据维护与记账职责,仅记录与自身相关的交易,对设备的算力要求较低,比较符合可控负荷用户节点的选择。负荷代理商的收益来自于区块链分布式电力交易系统,其自然必须承担全节点数据维护与记账出块的职责。考虑负荷代理商节点决策模型时,不仅需要考虑其经济收益最优,还需要维持整个系统平稳运行,为此可以根据上述2 个指标,建立负荷代理商效能函数,并在后述共识算法的更新中加以利用。
2.2.1 负荷代理商的经济决策模型
用户子群k负荷代理商的经济决策模型以代理商经济收益最优为目标。由于空调负荷不涉及向电网放电,本文中负荷代理商向电网售电的主要途径为电动汽车放电,故负荷代理商的售电收益EAgentsell(k)可表示为:
式中:EAgent(k)为用户子群k负荷代理商的经济收益。
2.2.2 负荷代理商平稳运行模型
在可控负荷用户-负荷代理商的去中心化系统中,承担全节点职责的负荷代理商在均衡其经济收益与电力负荷曲线的基础上实现电力资源的优化配置,在保证自身经济收益的同时为电网负荷削峰填谷提供灵活可靠的解决策略。用户子群k的负荷代理商以负荷方差最小为平稳运行模型的目标函数,如式(13)所示。
式中:C0(k)、V0(k)分别为不考虑区块链时用户子群k可控负荷用户的购电成本、负荷方差;λ1、λ2分别为经济决策模型、平稳运行模型的权重系数。
3.1.1 基于利润分红的激励机制设计
以比特币、以太坊为代表的经典区块链技术采用数字货币作为激励机制,在每一次挖矿成功并得到确认后,生成新的区块,公选胜出的记账节点获得数字货币。将一段程序以数字货币的形式奖励给记账者暗合了现实社会的资产理念,促使区块链技术得到迅速发展。然而,若在本文的可控负荷用户-负荷代理商交易场景下考虑数字货币的记账奖励激励机制,则是将简单问题复杂化,数字货币的价格波动也会导致电力交易结算困难。为此,本文考虑将记账奖励与各负荷代理商的经济收益相结合。根据前文所述,负荷代理商在区块链链上主要承担充当全节点的职责,负责维护区块链的稳定和定时记账,故可以考虑将各负荷代理商的部分收益用作激励来源,如式(16)所示。
式中:Eblock(t)为t时段记账节点所得激励;EAgent(k,t)为t时段用户子群k负荷代理商的经济收益;N为负荷代理商的数量;λ为负荷代理商给予记账节点的利润分红比例,若EAgent(k,t)≤0,则λ=0。
3.1.2 智能合约的求解算法设计
求解上述可控负荷用户-负荷代理商决策模型在本质上属于求解多目标优化问题。传统求解优化问题时主要凭借智能算法求解Pareto 前沿解集,计算复杂度较高,将其运用在区块链上求解会降低区块链的运行效率。本文考虑采用基于分解的多目标进化算法作为智能合约的求解算法,将多目标问题分解为一系列单目标优化子问题。将该算法加入各区块链节点的决策模型中,可以有效降低计算复杂度,避免浪费算力。算法的计算流程见附录A图A1。
3.2.1 基于负荷代理商效能函数的共识算法设计
在可控负荷用户-负荷代理商交易场景中,可控负荷用户作为轻节点在区块链上运行,不具备记账能力。因此,本文仅需依据第2 节所述负荷代理商的效能函数R(k),考虑负荷代理商节点之间的记账权竞争情况。由于负荷代理商的效能函数主要体现了其经济收益,收益越高者,越容易获得区块链记账权,故规定效能函数值高的负荷代理商获得更高的记账权概率。进一步,鉴于目前区块链共识算法存在的弊端,即节点中股权越多者越容易获得记账权,这容易导致网络话语权被大型负荷代理商所掌握,长期运营会使得去中心化区块链系统演变为中心化网络,不利于系统的长期健康发展[17]。
在本文优化调度策略中,主要根据电动汽车的入网SOC和空调的温度设定值进行可控负荷用户分类,这些特征直接决定了这2 类负荷的可调度容量,这样会导致代理可调度容量较小的负荷代理商所获得的收益较小。综上所述,考虑利用区块链链上记账收益来动态平衡各负荷代理商之间的收益。故本文提出以式(17)所示效能函数变化率r(k)作为区块链共识算法,节点能否获得记账权,主要依据其自身能否持续健康发展。
式中:R(k,t)、R(k,t-1)分别为t、t-1 时段用户子群k负荷代理商的效能函数值。
传统工作量证明PoW(Proof of Work)机制的主要特征是节点做一定难度的工作得出一个结果,验证方却很容易通过结果来检查该节点是否完成了相应的工作,计算过程如式(18)所示。
式中:SHA256(•)为256位哈希加密算法;h为最新区块的内容;T为哈希加密的目标难度值;n为随机数。
PoW 机制的流程如下:寻找一个n,使其满足哈希加密后的数值小于T,故T越小,挖矿难度越高。基于PoW 机制,本文结合上述负荷代理商的效能函数得到本文所设计的共识算法如式(19)所示。
式中:p为负荷代理商的入网时长;r为负荷代理商效能函数变化率。由式(19)可知,负荷代理商的入网时间越长、效能函数变化率越高,则其哈希计算难度越低,也越容易获得区块链记账权。
考虑了效能函数变化率的共识算法保证了各区块链节点的记账权与其收益及对电网贡献值动态相关,促使各负荷代理商的决策行为向有益于电网运行的方向运作。
3.2.2 区块链系统的运营流程
由于本文所设置的可控负荷电力交易单位时段时长为1 h,可以设置每1 h 生成1 次区块。区块链的数据结构如图2所示。
图2 区块链的数据结构Fig.2 Data structure of blockchain
当执行完成一次交易之后,由r(k)值最大的负荷代理商节点完成记账,为区块加盖时间戳,证明所有交易有效,以保证所有交易在事后的可追溯性。区块体主要包含本时段的调度结果以及下一时段可控负荷用户的充放电计划和负荷代理商的削峰填谷计划,同时计算各负荷代理商效能函数为下一区块共识算法的达成做准备。上述所有数据经哈希算法转化为二进制Merkle 根存入区块头中,保证了数据的隐私性[18]。综合上述区块链节点决策模型、激励机制、智能合约求解算法、共识算法,可得本文区块链节点24 h的运营流程如附录A图A2所示。
利用MATLAB 仿真求解本文所提可控负荷用户和负荷代理商2 类智能合约决策模型,验证所提可控负荷入网优化调度策略的可行性,并针对区块链系统的运营效率进行相应的仿真分析比较。
1)对某中心城区在夏季典型日的50 万居民进行仿真分析,其中电动汽车渗透率为20%,空调渗透率为30%;根据2017年全美家庭出行调查[19]统计结果,设定电动汽车用户一天的出行开始时间、结束时间。
2)假设所有电动汽车均通过负荷代理商参与区块链调度,电动汽车以上汽荣威ERX5 为例,具体参数如附录A表A1所示。
3)关于空调负荷,设置Tdesired=27 ℃,空调负荷用户参与调度的最高温度服从[27.5,29.0]℃范围内的均匀分布,最低温度服从[25.0,27.0]℃范围内的均匀分布,εT、η、A、δ依据文献[20]设定。电网峰平谷电价如附录A 表A2 所示。该地区不含电动汽车和空调负荷的基础负荷曲线见附录A图A3。
其他相关参数设置如下:负荷代理商向电网售电的电价为0.5 元/(kW·h),电动汽车动力电池的单位折损成本为0.14元/(kW·h),单个电动汽车用户的委托代理费用为0.1 元/d;区块链激励机制中负荷代理商给予记账节点的利润分红比例λ=0.1,负荷代理商经济决策模型、平稳运行模型的权重系数λ1=λ2=0.5。
4.2.1 削峰填谷调度结果分析
用户的入网和离网时间见附录A表A3。利用K均值聚类算法对用户入网和离网时间进行第1 阶段聚类,可得3个聚类聚类中心,聚类结果见表1。
表1 可控负荷用户的聚类结果Table 1 Clustering results of controllable load users
对每个类别中的电动汽车和空调负荷用户再进行细化分类,电动汽车用户以初始SOC 由高到低作为分类特征,空调负荷用户根据温度设定值进行分类,最终得到9 组用户子群,对于不同的子群,基于其出行特征、SOC 和温度设定值计算其用户决策模型。类别Ⅰ的3 组用户子群的充放电功率如图3 所示。由图可以看出:用户子群1 中电动汽车用户的剩余SOC最多,同时空调负荷的可调温度范围最大,所以其可以调度的电量最大,放电电量最多同时充电时刻主要集中在负荷低谷时段,峰时段主要向电网放电;而用户子群3 的充放电情况正好与用户子群1相反,用户子群3中用户入网的主要目的以满足自身用电需求为主,故其可调度电量较小;整体调度时段基本符合上述负荷聚类的入网与离网时段。
图3 类别Ⅰ的3组用户子群的充放电功率Fig.3 Charging and discharging power of three subgroups in Cluster Ⅰ
整合9 组用户子群的充放电功率,将其与电网基础负荷进行叠加,同时将其与考虑大规模可控负荷在无序用电策略下的负荷曲线进行对比,如图4所示。由图可知:若可控负荷以无序状态入网,即电动汽车入网即开始充电且不考虑对电网放电,空调负荷时刻保持最舒适温度,则会导致电网负荷“峰上加峰”,而在负荷低谷时段,由于室外温度下降,同时电动汽车基本完成充电,所以负荷曲线与基础负荷基本重合;相较而言,本文所提基于区块链的入网调度策略有效地控制空调设定温度在合理范围之内,并将电动汽车充电功率由负荷高峰时段转移至负荷低谷时段,并在负荷高峰时段适度向电网放电,实现了电网负荷的削峰填谷。
图4 考虑本文调度策略后的负荷曲线Fig.4 Load curve after considering proposed dispatch strategy
4.2.2 经济效益分析
不同调度策略的经济收益对比如表2 所示。由表可知:在无序用电策略下,电动汽车和空调负荷用户的购电成本均比本文调度策略下要高得多,这是由无序用电策略以尽可能满足可控负荷用户用电舒适度导致的,而本文调度策略考虑了电动汽车放电,对电动汽车动力电池的损害较大,故电池损耗成本远大于无序用电策略;在本文调度策略下,可控负荷用户依靠负荷代理商调整电动汽车的充放电时段以及空调的设定温度,并获得了一定的放电补偿,总用电成本显著降低,而负荷代理商的收益主要来自用户委托代理费用和向电网放电获得的收益,在无序用电策略下不存在该收益。
表2 不同调度策略的经济收益对比Table 2 Comparison of economic benefits between different dispatch strategies单位:万元
本文考虑9 个负荷代理商作为区块链全节点,其都有竞争记账的权力,以20:00 时刻为例进行分析,得到各负荷代理商获得的记账概率对比结果如图5 所示。由图可知,基于效能函数所得负荷代理商记账概率分配严重不均,负荷代理商1、4、7 因所代理的用户子群的可调度容量较大,获利较多,所以所获记账概率相对比较大。抽取部分负荷代理商的利润奖励记账区块可以有效抑制各负荷代理商利益分配不均等问题,说明本文所考虑的利润分红这一激励机制是有意义的。本文选择效能函数变化率作为区块链共识算法,每个负荷代理商首先与自身上一时段调度效果进行对比,再互相竞争区块链记账权。仿真结果表明,本文在节点理性的假设前提下,各负荷代理商的记账概率在10%~15%之间,大型代理商不会垄断记账权,能有效保证区块链长期可靠运营。
图5 负荷代理商获得的记账概率对比Fig.5 Comparison of load agents’billing probabilities
为了检验智能合约的可行性,利用以太坊私有链对本文2 类决策模型智能合约的效果进行检验。基于区块链的电力交易去中心化应用测试界面如附录A 图A4 所示。输入负荷代理商A 的交易信息,并在20:00 时刻进行查看。得到在负荷代理商A 的代理下电动汽车用户的用电成本和动力电池损耗成本、空调负荷用户的用电成本以及负荷代理商A 的收益如附录A 图A5 所示。由图可知,20:00 时刻负荷代理商A 代理下的电动汽车用户以放电收益为主,但此时电动汽车的动力电池损耗成本较高。此外,在分时电价背景下,空调负荷用户的用电成本有所降低,与上述MATLAB 的仿真结果进行比较可知,本文所提智能合约是准确且有效的。
针对目前我国分布式电力交易蓬勃发展的现状中所存在的第三方电力代理商凭借信息不对称一家独大的信任问题,本文利用区块链技术构建了可控负荷用户-负荷代理商交易平台,从上层应用和底层技术着手,主要解决了以下2个问题:
1)在上层应用方面,以收益最优为基本原则建立了考虑运维成本和运维效能的可控负荷用户-负荷代理商决策模型智能合约,整合大规模可控负荷用户的用电资源,使2 类电力主体经济利益共赢的同时,实现了电网负荷削峰填谷;
2)在底层技术方面,针对可控负荷用户-负荷代理商这一区块链特殊应用场景,提出了负荷代理商利润分红激励机制、负荷代理商效能函数变化率共识算法,实现了区块链优势与电力调度相融合。
后续将对区块链底层技术进行继续优化,使其更符合分布式电力交易机制的实际情况。
附录见本刊网络版(http://www.epae.cn)。