一种去中心化的微电网能源交易方法
2020-12-16孙欣楠
孙欣楠
【摘 要】论文基于区块链技术,提出了一种微电网电能所有权和代币交换方法。设计了基于拍卖机制的去中心化能源交易方法,通过估价策略促使消费者理性竞价,保证微电网内部供需平衡。结果表明,该交易方法可实现多边竞价交易,保障交易安全运行。
【Abstract】Based on blockchain technology, this paper proposes a method for the exchange of power ownership and tokens in the microgrid. This paper designs a decentralized energy transaction method based on the auction mechanism, and uses valuation strategy to encourage consumers to bid rationally and ensure the balance of supply and demand within the microgrid. The results show that the transaction method can realize multilateral bidding transaction and ensure the safe operation of transaction.
【关键词】微电网;拍卖算法;区块链;能源交易
【Keywords】microgrid; auction algorithm; blockchain; energy transaction
【中图分类号】F426;TP393 【文献标志码】A 【文章编号】1673-1069(2020)07-0148-02
1 引言
随着分布式电源产消者可以进行电力市场交易,微电网内将会出现大量的电能交易。然而产消者与消费者之间的能源交易存在如订单过多、分散化等特点,双方之间缺乏合适的能源交易平台,交易过程无法直接完成[1]。因此。如何设计一种微电网电能交易方法,完成电力资源的高效配置,是微电网改革的重点。为保障微电网安全、有效运行,可将区块链技术应用在微电网交易中。本文提出基于区块链技术的去中心化交易方法,利用代币进行交易,实现电能所有权的信息交换,保护交易双方的数据隐私,保障交易双方的利益。
2 总体架构
微电网电能交易通过拍卖机制实现交易双方电量和电价匹配,总体架构如图1所示。
文中使用的交易模型T的结构用以下公式表示:
T=t-version‖tInNumber‖tIn‖tOutNumber‖tOut‖t-Time (1)
其中tIn与tOut表示本交易的输入和输出,tInNumber与tOutNumber表示本交易输入和输出的数量。t-version为交易记录的版本号,t-Time为交易认证时间。发送方A需将赎回脚本rScript发送给接收方B,A对赎回脚本rScript进行哈希运算并生成输出脚本(pubScript),公式如下:
rScriptHash=RIPEMD160(SHA256(rScript))(2)
接收方生成包含签名的输入脚本(sigScript),当接收方B想要使用脚本资产时需出示sigScript。区块链节点将sigScript与pubScript组成验证脚本,验证成功后,接收方B获得脚本的资产使用权。P2SH脚本的结构如下:
sigScript:
其中rScript的作用为接收方可使用rScript和签名来获得资产的使用权。交易脚本使用多重签名脚本时,rScript表示为:
rScript=OP_m
OP_n OP_CHECKMULTISIG(4)
为防止双重支付电能、确定电能的所有权,微电网电能交易系统会在电能产生之前预测每个产消者下时段可产生电量,同时,产生对应产消者B所产生能量E的两个唯一的密钥bα和bβ,发送给对应产消者并记录在数据库中,其中bα和bβ生成公式为:
bα=SHA256(pubKeyB‖E‖pubKeyB‖Timestanp) (5)
bβ=SHA256(bα‖RandomNumber) (6)
其中,pubKeyPPB为产消者B对应的光伏电源设备的公钥。
3 去中心化电能交易方法
假设A为消费者购买电量,B为产消者出售电量,C为区块链系统管理员。首先,进行能源预测。为了保护隐私,A和B使用相应的公钥和私钥创建一对新地址:TAddr(用于执行交易)和MAddr(用于发送消息)。拍卖开始时,C预测B可售电量E,B可销售电量等于预测可产电量减去预测使用电量。C产生对应B产生能量E的两个唯一的密钥bα和bβ并记录在数据库中,C使用MAddrC向B的地址MAddrB发送bα和bβ消息,B使用MAddrB向全网广播拍卖信息,广播函数为:BROADCAST(E,P,TAddrB,MAddrB),包含可售能量E、保留價格P、交易地址TAddrB和匿名消息流地址MAddrB。其次,进行交易匹配。A根据自己需求参与B电能的竞拍,则A通过地址MAddrA给C发送消息,实现B对能量E所有权证明的验证,C对数据库记录进行验证并回复结果的真假。再次,进行多重签名交易。电能拍卖完成后,C会将拍卖结果广播全网。最后,所有权密钥更换。B将会使用MAddrB发送电能所有权证明密钥bα与pubKeyPPB给A的匿名消息地址MAddrA,A向C发送更换所有权密钥的请求H(bα,pubKeyPPB,unlock,update),C接收信息并验证bα,解锁电能并生成一对新的密钥αα和αβ相应地替换bα和bβ。
4 电能拍卖算法
4.1 拍卖算法概述
产消者的集合为N,消费者集合为M。假设一天时间被均匀地分为t个时隙,则一天内的时隙集合记为T。这里,产消者n通过能量预测系统预测,n∈N每個时隙的光伏发电量为。同时,产消者推测下一个时隙本身所需要的电能E,即该时隙产消者n待拍卖的电量为E=E-E。当E<0时,意味着产消者需参与竞拍,购买缺少的电量。之后,产消者向区块链提交出售的电量E及保留价Pb,保留价是产消者规定的最低的成交价格。
若消费者要在时隙t+1中使用电量,则必须在时隙t拍卖结束前,向区块链提出竞拍请求。然后,区块链把收集到的各产消者在时隙t的拍卖相关信息发送到该消费者,包括待拍卖电量E、各产消者保留电价Pb和产消者的加密地址等。
根据区块链发送的信息,消费者m选择希望竞拍的电量,将对每个产消者的出价按照(m,n,E,P)的格式发送到区块链,其中,n为产消者加密地址信息,m为消费者加密地址信息,E为向产消者n投标电量,P为购买这些电量愿意付出的最高单价。
不妨设B是竞拍集合,Wn是各产消者竞拍成功的消费者集合,这里:B={(m,n,E,P)|n∈N,m∈M},记bdx=(m,n,E,P)。
按照出价单调递减的顺序排序后得到Bd={bd1,bd2,bd3…,bdx},然后对集合Bd进行顺序遍历。若被竞拍的电量E充足,则竞拍成功,bdx被计入Wn中。同时,去除Bd中该用户的其他报价。若被竞拍的电量E不足,则去除Bd中当前的bdx,此竞价信息作废。最后,集合Wn中的元素可看作各产消者所对应竞拍成功的消费者。
4.2 代理出价策略
消费者参与拍卖需对电量价值进行估值,消费因子λ为系统按照消费者通常的消费习惯,推测下一时段的消费兴趣,这里λ的取值在0~1。电量对消费者的价值与λ密切相关,假设估价v与消费因子λ两者有以下线性关系:
v=λ(Pg-Pb)+Pb (7)
其中,v表示消费者对此时隙内电量价值估计,Pg为消费者从上级电网直接购电的价格,Pb为产消者保留价也是产消者向上级电网售电价格。
根据出价规律,λ越高,则出价越高。消费者估价越高,则表明消费者需要用更高的出价来赢得竞拍和更多电量,假设需求Q与估价v之间有以下线性关系:Q=(Qg-Qb)(v-Pb)/(Pg-Pb)+Qb。
5 算例验证
假设一个微电网,由产消者1、2、3和消费者A~F组成。根据系统预测,产消者在每个时间间隙内可售电能均为100kW·h。这里,产消者保留电价规定为0.5T/kW·h,电网电价为1T/kW·h。因为微电网内消费者所需的电能可以从电网中获取,根据拍卖算法,未赢得拍卖的消费者,将默认从电网中购买电量,价格为电网电价。假设消费者A~G的最高消费电量均为200kW·h,最低消费电量均为20kW·h,消费者A~G的消费因子λ分别为0.1、0.2、0.3、0.4、0.5、0.1。根据估价公式和需求公式可求出消费者对电价的报价和电量需求,如表1所示。
按照拍卖算法,竞拍结果如下。消费者A和D分别以0.55T/kW·h和0.7T/kW·h的价格竞购产消者1的20kW·h和80kW·h的功率。消费者B和C以0.6T/kW·h和0.65T/kW·h的价格竞拍,分别获得40kW·h和60kW·h的功率。消费者E以0.75T/kW·h的价格出价,以获得产消者2的100kW·h的功率。消费者F需要以1T/kW·h的价格从电网购买20kW·h的功率。
6 结论
基于区块链的去中心化交易方法及用户报价策略,主要用于实现电能匿名拍卖与去中心化交易。通过交易案例验证表明,该交易方法可进行微电网电能内部交易,调度结果具有最优性。同时,利用区块链技术,完成去中心化的电能交易,保障了双方利益。
【参考文献】
【1】刘明川.基于能源区块链的分布式电能交易系统设计[D].北京:华北电力大学,2018.