发明内容
为了解决现有技术中存在的缺点和不足,本发明提出了一种基于区块链共识算法的智能停电管控方法,包括:
获取电网的停电需求,筛选出与停电需求相关的供用电主体对应的区块链节点;
将筛选出的区块链节点按照预设规则形成组群,在每个组群中计算各个区块链节点的沙普利值,根据沙普利值选出群代理节点;
根据业务类型将群代理节点分为一类节点和二类节点,分别对一类节点和二类节点独立执行共识算法;
若一类节点和二类节点均完成共识,则在区块链上发布停电需求,筛选出的区块链根据发布的停电需求执行停电操作。
可选的,所述供用电主体包括电网公司、分布式电源供应商、工商企业用户、负荷聚合商、运维服务商、企业以及居民小区用户。
可选的,所述将筛选出的区块链节点按照预设规则形成组群,包括:
在按行政区域和按行政组织架构中任选一种组群方式;
若按行政区域方式组群,将同属于一个行政区域的供用电主体对应的区块链节点形成一个组群;
若按行政组织架构方式组群,将同属于一个上级行政单位的供用电主体对应的区块链节点形成一个组群。
可选的,所述在每个组群中计算各个区块链节点的沙普利值,包括:
获取组群中区块链节点的排列组合,将排列组合的区块链节点产生的总算力作为对组群的边际权益;
根据边际权益计算每个区块链节点在组群中的沙普利值,计算公式为:
其中,Φi(N,v)表示区块链节点i的沙普利值,N为组群内区块链节点的集合,N\{i}表示从集合N中删除区块链节点i后的集合,|N|表示组群内区块链节点的总数量,v为表示区块链节点i在组群中产生的边际权益,S表示组群中除区块链节点i以外剩余的区块链节点的排列组合,|S|为每个排列组合中区块链节点的数量,v(S∪{i})表示区块链节点i加入排列组合S后的边际权益,v(S)表示排列组合S产生的边际权益。
可选的,所述根据沙普利值选出群代理节点,包括:
按照沙普利值由大到小的顺序,在组群内选取预设比例的区块链节点作为群代理节点。
可选的,所述根据业务类型将群代理节点分为一类节点和二类节点,分别对一类节点和二类节点独立执行共识算法,包括:
判断群代理节点对应的供用电主体的业务类型;
将负责发布与执行停电的供电主体对应的群代理节点划分为一类节点;
将消费电能的用电主体对应的群代理节点划分作为二类节点。
可选的,所述智能停电管控方法还包括:
当一类节点和二类节点中至少一类节点未完成共识时,拒绝停电需求,停止智能停电管控服务。
本发明还具有同样的思路提出了一种基于区块链共识算法的智能停电管控装置,包括:
筛选单元:用于获取电网的停电需求,筛选出与停电需求相关的供用电主体对应的区块链节点;
群代理单元:用于将筛选出的区块链节点按照预设规则形成组群,在每个组群中计算各个区块链节点的沙普利值,根据沙普利值选出群代理节点;
分类共识单元:用于根据业务类型将群代理节点分为一类节点和二类节点,分别对一类节点和二类节点独立执行共识算法;
执行单元:用于若一类节点和二类节点均完成共识,则在区块链上发布停电需求,筛选出的区块链根据发布的停电需求执行停电操作。
可选的,所述群代理单元用于:
获取组群中区块链节点的排列组合,将排列组合的区块链节点产生的总算力作为对组群的边际权益;
根据边际权益计算每个区块链节点在组群中的沙普利值,计算公式为:
其中,Φi(N,v)表示区块链节点i的沙普利值,N为组群内区块链节点的集合,N\{i}表示从集合N中删除区块链节点i后的集合,|N|表示组群内区块链节点的总数量,v为表示区块链节点i在组群中产生的边际权益,S表示组群中除区块链节点i以外剩余的区块链节点的排列组合,|S|为每个排列组合中区块链节点的数量,v(S∪{i})表示区块链节点i加入排列组合S后的边际权益,v(S)表示排列组合S产生的边际权益。
可选的,所述分类共识单元用于:
判断群代理节点对应的供用电主体的业务类型;
将负责发布与执行停电的供电主体对应的群代理节点划分为一类节点,所述一类节点包括电网公司、分布式电源供应商、工商企业用户、负荷聚合商、运维服务商对应的区块链节点;
将消费电能的的用电主体对应的群代理节点划分作为二类节点,所述二类节点包括企业以及居民小区用户对应的区块链节点。
本发明提供的技术方案带来的有益效果是:
在区块链共识算法的基础上,对节点的输入条件和共识达成条件进行了改进,将大量区块链节点组群,并利用沙普利值均衡分配权益选择出群代理节点,以此选择群代理节点,兼顾了重要节点的工作效率和次要节点的公平参与。
同时,在电网业务类型的基础上提出分类共识方法,不同业务类型的区块链节点之间无需交叉共识,提高智能停电管控区块链系统的共识效率。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和C”、“包含A、B、C”是指A、B、C三者都包含,“包含A、B或C”是指包含A、B、C三者之一,“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。
应当理解,在本发明中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。A与B的匹配,是A与B的相似度大于或等于预设的阈值。
取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
实施例一
如图1所示,本实施例提出了一种基于区块链共识算法的智能停电管控方法,包括:
S1:获取电网的停电需求,筛选出与停电需求相关的供用电主体对应的区块链节点;
S2:将筛选出的区块链节点按照预设规则形成组群,在每个组群中计算各个区块链节点的沙普利值,根据沙普利值选出群代理节点;
S3:根据业务类型将群代理节点分为一类节点和二类节点,分别对一类节点和二类节点独立执行共识算法;
S4:若一类节点和二类节点均完成共识,则在区块链上发布停电需求,筛选出的区块链根据发布的停电需求执行停电操作。
本实施例中涉及停电需求的供用电主体包括电网公司、分布式电源供应商、工商企业用户、负荷聚合商、运维服务商、企业以及居民小区用户,对每个供用电主体生成一个对应的区块链节点上链,构成智能停电管控区块链系统。区块链是一个分布式的共享数据库,具有去中心化、不可篡改、可以追溯、集体维护、公开透明等特点,本实施例区块链技术的去中心化特点,能够解决传统的中心化系统在停电管控时容易发生的执行效率低、流程公开透明度不够以及运维成本较高等问题。
区块链的自信任主要体现于分布于区块链系统中的用户无须信任交易的另一方,也无须信任一个中心化的机构,只需要信任区块链协议下的软件系统即可实现交易,这种自信任的前提是区块链的共识算法,共识算法是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认。本实施例将区块链的共识算法应用到智能停电管控领域,若参与共识算法的供用电主体对应的区块链节点都能够对发布的停电需求达成共识,则认为可以继续执行停电操作。
本实施例中,所述停电需求通常由电网公司根据调控需要,对部分区域的供用电主体发布停电需求。根据停电需求对本次停电相关的区块链节点进行筛选,因为停电会影响众多电力用户的生产和生活,所以在筛选时需综合考虑各种因素,选出最经济的区块链节点参与停电操作。
停电管控通常要求时间响应较快,若共识算法耗费过多的时间,可能导致停电需求没有得到及时的满足而无法达到调控效果,进而影响的电网运行效果。由于参与智能停电管控的供用电主体较为分散且数量较多,对所有区块链节点进行全节点共识无疑会影响智能停电管控区块链系统的共识效率,因此本实施例考虑在众多区块链节点中筛选出能够代表一定范围内的其他区块链节点的投票意见的群代理节点。本实施例按照行政区域或行政组织架构对区块链节点进行组群,具体为:
在按行政区域和按行政组织架构中任选一种组群方式;
若按行政区域方式组群,将同属于一个行政区域的供用电主体对应的区块链节点形成一个组群,例如,将城市中同一个区内的供用电主体形成一个组群。
若按行政组织架构方式组群,将同属于一个上级行政单位的供用电主体对应的区块链节点划分为一个组群,例如,将隶属于同一个工商管理部门的供用电主体对应的区块链节点划分为一个组群。
本实施例以组群为单位选取一定数量的群代理节点,避免了群代理节点的选取过于集中的弊端。
对于每个组群来讲,在选取群代理节点时,由于负荷聚集商之间、工商企业之间、聚集商与小区用户之间会有明显的节点算力差距,大的负荷聚集商、工商企业节点在服务中会获得更多的话语权,节点利益会倾向于分配给拥有更大算力的节点,造成去中心化网络的中心化趋势,小节点的权益难以得到满足,因此本实施例基于沙普利值的分配方案以便大幅度提高小节点的权益,以区块链节点的算力作为边际权益,即区块链节点对组群做出的贡献。算力,也称哈希率,是比特币网络处理能力的度量单位。
本实施例通过沙普利值解决上述问题,主要用于解决在合作博弈中各方的利益分配问题,其主要体现了合作各方对合作总目标的贡献程度,避免了分配上的平均主义,比任何一种仅按资源投入价值、资源配置效率及将二者相结合的分配方式都更具合理性和公平性,也体现了合作各方相互博弈的过程。在本实施例中,沙普利值的计算过程如下:
获取组群中区块链节点的排列组合,将排列组合的区块链节点产生的总算力作为对组群的边际权益,各个排列组合的区块链节点产生的算力与各供用电主体的服务器性能相关,本领域技术人员能够通过服务器的配置参数获取区块链节点的算力,此处不再赘述。
根据边际权益计算每个区块链节点在组群中的沙普利值,计算公式为:
其中,Φi(N,v)表示区块链节点i的沙普利值,N为组群内区块链节点的集合,N\{i}表示从集合N中删除区块链节点i后的集合,|N|表示组群内区块链节点的总数量,v为表示区块链节点i在组群中产生的边际权益,S表示组群中除区块链节点i以外剩余的区块链节点的排列组合,即S是所有区块链节点集合的子集,|S|为每个排列组合中区块链节点的数量,v(S∪{i})表示区块链节点i加入排列组合S后的边际权益,v(S)表示排列组合S产生的边际权益。
最后,按照沙普利值由大到小的顺序,在组群内选取预设比例的区块链节点作为群代理节点。例如预设比例为10%,则将排序前10%的区块链节点作为群代理节点。
本实施例采用基于沙普利值的权益分配方案,可大幅度提高算力较小的区块链节点的权益,通过上述过程筛选出的群代理节点在各自的组群中更具有代表性,从而无需对全区块链节点进行共识算法,提高了共识算法的效率。
群代理节点选出后,为了进一步提高区块链系统的共识效率,使其更适用于智能停电管控对响应时间的要求,本实施例再按参与停电管控的业务类型将群代理节点分成两类,并分别进行共识计算,可进一步提高区块链系统的共识效率,实现安全经济的大规模停电管控,具体包括:
判断群代理节点对应的供用电主体的业务类型;
将负责发布与执行停电的供电主体对应的群代理节点划分为一类节点,即一类节点为供用电主体中供电主体对应的区块链节点,本实施例中一类节点包括电网公司、分布式电源供应商、工商企业用户、负荷聚合商、运维服务商对应的区块链节点;
将消费电能的用电主体对应的群代理节点划分作为二类节点,即二类节点为供用电主体中用电主体对应的区块链节点,本实施例中二类节点包括企业以及居民小区用户对应的区块链节点。
一类节点和二类节点间无需交叉共识,这样的分层共识算法既可以保证停电管控的安全性和经济性,也可提高区块链系统的共识效率,实现安全经济的大规模停电管控。
本实施例要求一类节点和二类节点分别完成共识才能进行停电管控的执行步骤,若一类节点和二类节点均分别达成共识,停电需求即可在智能停电管控区块链系统上发布,S1中筛选出的各个相关的供用电主体对应的区块链节点反馈执行方案及现场条件,由发布停电需求的电网公司确定方案后发送操作流程上链,完成一个智能停电服务过程。
反之,当一类节点之间和二类节点之间中至少一类节点未完成共识时,拒绝停电需求,停止智能停电管控服务,并将为达成共识的反馈发送给发出停电需求的电网公司。
实施例二
如图2所示,本实施例提出了一种基于区块链共识算法的智能停电管控装置5,包括:
51:筛选单元:用于获取电网的停电需求,筛选出与停电需求相关的供用电主体对应的区块链节点;
52:群代理单元:用于将筛选出的区块链节点按照预设规则形成组群,在每个组群中计算各个区块链节点的沙普利值,根据沙普利值选出群代理节点;
53:分类共识单元:用于根据业务类型将群代理节点分为一类节点和二类节点,分别对一类节点和二类节点独立执行共识算法;
54:执行单元:用于若一类节点和二类节点均完成共识,则在区块链上发布停电需求,筛选出的区块链根据发布的停电需求执行停电操作。
本实施例中涉及停电需求的供用电主体包括电网公司、分布式电源供应商、工商企业用户、负荷聚合商、运维服务商、企业以及居民小区用户,对每个供用电主体生成一个对应的区块链节点上链,构成智能停电管控区块链系统。区块链是一个分布式的共享数据库,具有去中心化、不可篡改、可以追溯、集体维护、公开透明等特点,本实施例区块链技术的去中心化特点,能够解决传统的中心化系统在停电管控时容易发生的执行效率低、流程公开透明度不够以及运维成本较高等问题。
区块链的自信任主要体现于分布于区块链系统中的用户无须信任交易的另一方,也无须信任一个中心化的机构,只需要信任区块链协议下的软件系统即可实现交易,这种自信任的前提是区块链的共识算法,共识算法是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认。本实施例将区块链的共识算法应用到智能停电管控领域,若参与共识算法的供用电主体对应的区块链节点都能够对发布的停电需求达成共识,则认为可以继续执行停电操作。
本实施例中,所述停电需求通常由电网公司根据调控需要,对部分区域的供用电主体发布停电需求。根据停电需求对本次停电相关的区块链节点进行筛选,因为停电会影响众多电力用户的生产和生活,所以在筛选时需综合考虑各种因素,选出最经济的区块链节点参与停电操作。
停电管控通常要求时间响应较快,若共识算法耗费过多的时间,可能导致停电需求没有得到及时的满足而无法达到调控效果,进而影响的电网运行效果。由于参与智能停电管控的供用电主体较为分散且数量较多,对所有区块链节点进行全节点共识无疑会影响智能停电管控区块链系统的共识效率,因此本实施例考虑在众多区块链节点中筛选出能够代表一定范围内的其他区块链节点的投票意见的群代理节点。本实施例中群代理单元52具体用于:
在按行政区域和按行政组织架构中任选一种组群方式;
若按行政区域方式组群,将同属于一个行政区域的供用电主体对应的区块链节点形成一个组群,例如,将城市中同一个区内的供用电主体形成一个组群。
若按行政组织架构方式组群,将同属于一个上级行政单位的供用电主体对应的区块链节点划分为一个组群,例如,将隶属于同一个工商管理部门的供用电主体对应的区块链节点划分为一个组群。
本实施例以组群为单位选取一定数量的群代理节点,避免了群代理节点的选取过于集中的弊端。
对于每个组群来讲,在选取群代理节点时,由于负荷聚集商之间、工商企业之间、聚集商与小区用户之间会有明显的节点算力差距,大的负荷聚集商、工商企业节点在服务中会获得更多的话语权,节点利益会倾向于分配给拥有更大算力的节点,造成去中心化网络的中心化趋势,小节点的权益难以得到满足,因此本实施例基于沙普利值的分配方案以便大幅度提高小节点的权益,以区块链节点的算力作为边际权益,即区块链节点对组群做出的贡献。算力,也称哈希率,是比特币网络处理能力的度量单位。
群代理单元52通过沙普利值解决上述问题,主要用于解决在合作博弈中各方的利益分配问题,其主要体现了合作各方对合作总目标的贡献程度,避免了分配上的平均主义,比任何一种仅按资源投入价值、资源配置效率及将二者相结合的分配方式都更具合理性和公平性,也体现了合作各方相互博弈的过程。
在本实施例中,沙普利值的计算过程如下:
获取组群中区块链节点的排列组合,将排列组合的区块链节点产生的总算力作为对组群的边际权益,各个排列组合的区块链节点产生的算力与各供用电主体的服务器性能相关,本领域技术人员能够通过服务器的配置参数获取区块链节点的算力,此处不再赘述。
根据边际权益计算每个区块链节点在组群中的沙普利值,计算公式为:
其中,Φi(N,v)表示区块链节点i的沙普利值,N为组群内区块链节点的集合,N\{i}表示从集合N中删除区块链节点i后的集合,|N|表示组群内区块链节点的总数量,v为表示区块链节点i在组群中产生的边际权益,S表示组群中除区块链节点i以外剩余的区块链节点的排列组合,即S是所有区块链节点集合的子集,|S|为每个排列组合中区块链节点的数量,v(S∪{i})表示区块链节点i加入排列组合S后的边际权益,v(S)表示排列组合S产生的边际权益。
最后,按照沙普利值由大到小的顺序,在组群内选取预设比例的区块链节点作为群代理节点。例如预设比例为10%,则将排序前10%的区块链节点作为群代理节点。
本实施例采用基于沙普利值的权益分配方案,可大幅度提高算力较小的区块链节点的权益,通过上述过程筛选出的群代理节点在各自的组群中更具有代表性,从而无需对全区块链节点进行共识算法,提高了共识算法的效率。
群代理节点选出后,为了进一步提高区块链系统的共识效率,使其更适用于智能停电管控对响应时间的要求,分类共识单元53再按参与停电管控的业务类型将群代理节点分成两类,并分别进行共识计算,可进一步提高区块链系统的共识效率,实现安全经济的大规模停电管控,具体包括:
判断群代理节点对应的供用电主体的业务类型;
将负责发布与执行停电的供电主体对应的群代理节点划分为一类节点,即一类节点为供用电主体中供电主体对应的区块链节点,本实施例中一类节点包括电网公司、分布式电源供应商、工商企业用户、负荷聚合商、运维服务商对应的区块链节点;
将消费电能的用电主体对应的群代理节点划分作为二类节点,即二类节点为供用电主体中用电主体对应的区块链节点,本实施例中二类节点包括企业以及居民小区用户对应的区块链节点。
一类节点和二类节点间无需交叉共识,这样的分层共识算法既可以保证停电管控的安全性和经济性,也可提高区块链系统的共识效率,实现安全经济的大规模停电管控。
本实施例的执行单元54要求一类节点和二类节点分别完成共识才能进行停电管控的执行步骤,若一类节点和二类节点均分别达成共识,停电需求即可在智能停电管控区块链系统上发布,筛选单元51筛选出的各个相关的供用电主体对应的区块链节点反馈执行方案及现场条件,由发布停电需求的电网公司确定方案后发送操作流程上链,完成一个智能停电服务过程。
反之,本实施例还包括停止单元,用于当一类节点之间和二类节点之间中至少一类节点未完成共识时,拒绝停电需求,停止智能停电管控服务,并将为达成共识的反馈发送给发出停电需求的电网公司。
上述实施例中的各个序号仅仅为了描述,不代表各部件的组装或使用过程中的先后顺序。
以上所述仅为本发明的实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。