没有合适的资源?快使用搜索试试~ 我知道了~
区块链:研究与应用2(2021)100016基于区块链的Prosumer激励,通过时间聚合和上下文聚类实现峰值缓解Nikita Karandikara,*,Rockey Abhishekb,Nishant Saurabhc,Zhiming Zhaod,Alexander Lercherc,Ninoslav Marinae,Radu Prodanc,Chunming Ronga,Antorweep Chakravortyaa挪威斯塔万格大学电气工程和计算机科学系,斯塔万格,8600,b斯塔万格大学能源与石油工程系,斯塔万格,8600,4036,挪威c信息技术学院,克拉根斯堡大学,克拉根斯堡湖,9020,奥地利d多尺度网络系统,阿姆斯特丹大学,阿姆斯特丹1012 WX,荷兰信息科学与技术大学,奥赫里德,北马其顿A R T I C L E I N F O保留字:调峰聚合分析上下文聚类区块链激励A B S T R A C T电力公司对缓解用电高峰期有兴趣,因为在用电高峰期,营办商可能须超额供应电力,以应付用电高峰期的需求。使用电曲线变平可以为电力公司和最终用户节省成本将可再生能源整合到能源基础设施中提供了一种机会,可以使用多余的可再生发电来补充供应和缓解高峰。此外,需求侧管理可以将使用从高峰转移到非高峰时间,并减少高峰的幅度 在这项工作中,我们提出了一个数据驱动的方法,激励为基础的峰值缓解。了解用户的能量分布是这一过程中必不可少的一步。我们首先分析了Ausgrid公司发布的一个流行的能源研究数据集在时间上下文和语义链接和上下文聚类中提取聚合的用户能量行为使我们深入了解消费和屋顶太阳能发电模式。我们实现并测试了一个基于区块链的产消者激励系统。智能合约的逻辑基于我们对Ausgrid数据集的分析。我们的实施能够支持792,540个客户,而基础设施占用空间相当低。1. 介绍可再生能源,特别是太阳能与能源基础设施的整合正在增加,部分原因是政府激励措施和节省能源费用等经济效益,部分原因是人们对环境效益的认识不断提高[1]。 Prosumers是一类消费者,他们通过现场微型发电设备产生他们所需的部分能源,并根据需要从电网购买剩余的能源[2]。几个生活在一起的亲消费者可以形成亲消费者社区或微电网[3]。生产者可以将产生的太阳能用于自己的需求,或者如果有剩余,将其出售给电网或其他客户。高峰期[4]是在给定的时间范围内对能源的需求最高的时期。由于零售用户数量的增加,峰值需求正在上升[5]。在存在需求变化的情况下,尤其是在需求高峰期,保持电网稳定性是这是一个非常重要的任务[6]。如果峰值需求接近可用的电网容量,电网运营商必须采取措施,以保持电网的稳定性和可靠的供应。这可以通过增加可用电源或降低峰值负载来增加可用供应以匹配预计的峰值使用值需要运营商过度供应发电容量,这可能是昂贵的。 这种额外的容量仅在高峰期使用,并且通常采用调峰电厂的形式[7],这些电厂通常采用煤炭或柴油动力,因此会产生污染。此外,这些峰值发电厂的运行和维护成本仅在一段时间内使用,增加了每千瓦时能源的价格,这一成本通常转嫁给消费者。降低峰值幅度的过程称为调峰。电网运营商和客户对调峰很感兴趣,因为它通过推迟或避免对额外容量的投资来降低成本。剩余的太阳能如果卖回给* 通讯作者。电子邮件地址:nikita.r. uis.no(N. Karandikar)。https://doi.org/10.1016/j.bcra.2021.1000162021年4月19日收到修订版; 2021年2096-7209/©2021作者。由Elsevier B.V.代表浙江大学出版社出版。这是CC BY许可证下的开放获取文章(creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表区块链:研究与应用杂志主页:www.journals.elsevier.com/blockchain-research-and-applicationsN. Karandikar等人区块链:研究与应用2(2021)1000162电网提供了在高峰能量需求期间补充能量供应的机会在非高峰期产生的剩余太阳能可以存储在电池基础设施中,以根据需要放电。已经进行了关于使用并网电池系统[8]来减少峰值的试点研究当地太阳能生产的优势在于与消费场所位于同一地点,从而减少了远距离传输太阳能所固有的传输损耗[9]。另一个重要的调峰策略是需求响应或需求侧管理[10]。传统上,用户需求被认为是缺乏弹性的,供应主要是围绕需求来安排的现在,虽然需求肯定会继续推动供应,但为了将一些高峰时间的使用转移到非高峰时间,以缩短使用曲线并减少能源基础设施的所需容量,调节需求是有价值的。需求方对高峰消费的反应可以采取提高价格的形式,以抑制消费者在高峰时间使用可转换或非紧急设备另一种方法是使用激励令牌,这是一种计划,在这种计划下,生产者可以通过减少高峰时段的使用来获得有形的利益。在本文中,我们提出了一个数据驱动的方法,激励为基础的调峰使用双管齐下的战略。1) 首先,能源消费者如在已识别的高峰消费时段记录的消费低于计算阈值,则可获奖励代币。2) 其次,网络中最高的剩余生产者根据他们生产的剩余数量获得奖励在给定的时间段内,净产量或剩余产量被定义为如:剩余生产量-消费量(1)我们选择了Ausgrid公司发布的Ausgrid数据集[11]进行分析,该数据集提供了从现场安装的智能电表中收集的一年的能源生产和消费数据,这些数据来自其网络中的300个随机和匿名客户。Prosumer奖励管理系统在Hyperledger Fabric上实现[12]区块链是透明和分散的。此外,使用Hyperledger Caliper [13]在不同负载下对系统进行性能测试。该作品具有以下结构:1) 第2节介绍了该解决方案的设计原理和主要构建块。2) 第3节所述的时间能源行为的汇总分析:a)确定了高峰使用期和高变化期b)确定了根据剩余价值对净生产者进行分类的阈值。3) 第4节讨论了能源行为的语义分析,以确定能源消耗的低、中和高类别的阈值。4) 该系统在区块链上实现,第3节和第4节告知其逻辑,该逻辑编码在智能合约中。第5节讨论了激励系统的设计、实施和性能表征。5) 第6节讨论了我们的解决方案如何建立在最先进的基础上,而第7节则介绍了本研究的主要结论2. 拟议系统2.1. 系统参与者和要求该系统涉及三个不同的实体或组织。首先,用户平台由产消者代表组成,政府机构,以确保遵守法律 第二个组织是电力公司,它监控用户的发电和生产,并提供奖励。第三个组织是电网电池,生产者产生的能量在发送到目的地之前被储存和质量目前正在进行试点研究[14],以研究通过使用社区电池进行调峰Prosumers可以通过电网连接,并将其盈余存储在电力公司拥有和维护的社区电池通过参与社区电池基础设施,生产消费者有机会获得电费信用,从而从太阳能投资中获得更多价值,而无需拥有和维护单独的电池系统。 电力公司和用户平台必须就奖励计算的逻辑达成一致。由于用户平台代表产消者,它还必须有机会根据自己的计算来检查和批准所有交易,如图1所示。此外,存储提供商负责存储所产生的能量,因此必须验证智能电表所显示的所产生的能量的量是实际产生的并且可供使用。因此,所有三个组织必须就业务逻辑达成一致,并批准每笔交易,奖励系统必须对所有相关方透明。由于生态系统由许多拥有自己的分布式发电设备的小型参与者组成,因此需要推动分散式管理,以减少中介机构并防止人员集中在第三方手中。 我们预期会有很多小规模的生产商加入这个系统,我们必须评估它可以支持多少用户。区块链是一种去中心化的分类账,它满足了上述要求,因为它可以防止决策集中在一方手中此外,由于其分散的性质和交易块的加密链接,其固有的不变性和鲁棒性特征非常适合我们的用例这样的去中心化系统也必须是安全的,并且只对经过身份验证的用户开放因此,有必要将成员资格仅限于社区成员,并对所有用户进行认证。 这也降低了开放式去中心化分类账系统(也称为公共区块链系统)固有的运营成本和计算复杂性。我们使用Hyperledger Fabric构建了我们的实现,这是最流行的企业级许可区块链平台之一它是开源的,免费使用,并具有模块化架构,允许运营商根据自己的需求定制实施组件该区块链实现是奖励系统的底层交易基础设施,该奖励系统处理和记录奖励系统的交易。Fig. 1. 系统的参与者N. Karandikar等人区块链:研究与应用2(2021)1000163¼交易为了对我们的实现进行性能基准测试,我们使用不同的负载运行基准测试,以基于延迟和吞吐量来评估实现。我们在Hyperledger Caliper中实施了我们的基准测试实验,它与Hyperledger Fabric实现交互,并根据配置参数提交交易。2.2. 数据驱动方法第3节分析和汇总用户数据,并根据季节(冬季、夏季、秋季和春季)、星期几(工作日或周末)和一天中的时间提取用户能源行为,并使用这些数据来确定峰值消费时间。此外,剩余能源生产的汇总给出了根据生产剩余能源的数量对产消者进行分类的阈值。此外,在第4节中,数据集行基于诸如太阳能生产和用户需求的上下文被语义地链接、聚类和标记 根据聚类分析,为用户需求和太阳能生产环境确定低、中、高阈值。第5节中描述的区块链系统将业务逻辑编码到智能联系人中,并根据第3节和第4节中确定的峰值消费时间、剩余产量和用户需求阈值来实现奖励机制。 该系统经过性能测试,以确定可以支持的用户数量。 图 2介绍了拟议的系统的示意图,以及如何这项工作的不同模块是相互联系的。3. Ausgrid数据集和分析本研究中使用的数据是澳大利亚新南威尔士州(NSW)Ausgrid公司发布的太阳能家庭电力数据集[15]。我们通过对数据集的简要概述开始分析3.1. Ausgrid数据集概述Ausgrid数据集包括从2012年7月1日至2013年7月30日Ausgrid网络中300个随机客户的安装电表收集的数据,以半小时为间隔(Δt1/2 h)记录。Ausgrid数据集在研究电网缺陷[16]、家庭能源管理[17]和使用历史智能电表数据进行负荷预测[18]的研究人员中很受欢迎。该数据集包括屋顶太阳能电池板的太阳能光伏发电量和单个家庭的住宅负荷数据。 住宅负荷包括两个 不同的 类别:(1)能源消耗和(2)图二. 系统示意图表1已清理数据集中的客户IDID 13,14,20,33,35,38,39,56,69,73,74,75,82,87,88,101,104,106,109,110,119、124、130、137、141、144、152、153、157、161、169、176、184、188、189、193、201,202、204、206、207、210、211、212、214、218、244、246、253、256、273、276、297热负荷 第一类记录家庭的一般能源消耗。供暖负荷是指家庭中用于加热水的能量消耗。公用事业提供商通过在一天的特定时段运行电热水来控制这一负荷 这样做的目的是减少高峰时段的整体网络负载,并为客户提供经济激励。 这是一个可选功能,在Ausgrid数据集中[15],300个数据集中有137个选择了此功能。个别客户仅以客户识别编号(1:300)作为别名识别,而其地理位置则以邮政编码识别。虽然原则上Ausgrid数据集包含300个消费者1年的电力生产和消费数据,分辨率为30分钟,但实际上数据中存在一些不一致和异常。Ratnam等人[11]对Ausgrid数据集进行了详细研究,以确定这些不一致性,并确定将包含在具有完整记录的干净数据集中的客户子集当前研究使用了表1中列出的这一客户子集。这些客户的地理分布基于他们的邮政编码如图所示。 3. 从图中可以看出。 3,干净数据集中的大多数客户位于澳大利亚新南威尔士州的纽卡斯尔和悉尼大都市区周围。3.2. 所有客户为全面了解客户作为一个整体的能源概况,我们将其能源概况合并为一个总消费者。该总消费者的能源概况按月(图4(a))及按日(图4(b))累积表2列出了澳大利亚一年中月份的海洋声学特征。从图中可以看出。从图4(a)及表2所示,消费者整体的能源分布显示出显著的季节性变化。能源消耗的高峰对应于冬季(6月至8月)和夏季(12月至2月)。这可能与在此期间由于气候控制要求而增加的负载直接相关。 虽然夏季和冬季月份的总体月负荷相似,但每日累积重新采样显示夏季月份(12月至2月)的峰值较高,变化较大。为了更好地确定夏季消费量高的日子,我们将家庭消费量按降序排列,前12个数据点按时间顺序与一周中相应的一天一起绘制在图5中。 五、从图中可以看出。 5.最高的每日总消费发生在家庭成员在家的周末。但是,工作日有两个高消费的离群值:(1)星期一:2012年12月24日和(2)星期二:2013年12月8日。第二个异常值特别有趣,因为它与澳大利亚大部分地区,特别是新南威尔士州的夏季高温和丛林火灾警报相吻合[19]。从图中可以看出。4.太阳能生产在夏季最高,因为太阳辐射较高,之后逐渐减少。相反,电热水的热负荷在冬季最高,在夏季逐渐减少。除了太阳能家庭电力数据集[15]之外,我们还获得了2012年7月1日至2013年6月 30日期间澳大利亚新南威尔士州电力的历史建议零售价格(RRP)和新南威尔士州的总区域需求数据,时间间隔为30分钟[20],对应于Ausgrid数据集中的时间戳我们计算了所有变量的系数,N. Karandikar等人区块链:研究与应用2(2021)1000164图3. 客户的位置。见图4。 所有客户的能源概况汇总。图1显示了经过清理的Ausgrid数据集中的字段(所有客户汇总)、区域需求和RRP。第六章可以看出,太阳能和热负荷都在1.2-1.8的范围内显示出高变化。可以观察到,太阳能生产的变化在夏季期间减小,而加热负荷的变化在夏季期间达到峰值。能源消耗的变化要小得多。然而,我们可以看到,在夏季能源消耗的变化相对较高这与前面在图中所作的观察一致。 四、 图 6(d)显示,除夏季外,区域需求保持相当稳定,变化较小。最后图 6(e)显示,新南威尔士州的能源价格全年变化不大,偶尔会出现大幅飙升。3.3. 为所有客户提供为了更好地了解客户能源状况的季节性变化,我们专注于每个季度中期一个月内所有客户的能源数据表2列出了每个季节的代表性月份。其后,我们计算所有客户于1个月期间的平均能源分布这使我们能够计算出一个平均客户在四个季节的代表性每日能源分布结果如图7所示。从图中可以看出。 7加热负荷集中在午夜和清晨,即,在低消费时期太阳能发电遵循一个明显的钟形曲线。能源生产始于大约N. Karandikar等人区块链:研究与应用2(2021)1000165表2澳大利亚的季节季节周期代表月份冬季2012年10月春季2013年1月-2013年1月2013年秋季上午8随后逐渐上升,下午2时左右达到峰值此后产量下降,最终在晚上7点左右停止。正如预期的那样,春季和夏季的总产量最高,其次是秋季,冬季最低每日能源消耗曲线显示出显著的季节性变化。冬天(图)7(a)我们观察到两个高峰期:一个在工作日开始前的早晨,另一个在工作日结束时的晚上。第二个峰值可以在图中的所有季节持续观察到。第七章这表明用户在晚上的需求是一致的。除夏季外,在所有季节,我们观察到的负荷曲线在早晨和晚上之间或相反的高原在冬季。然而,在夏季,我们可以观察到早晚之间的负载几乎呈线性上升。这可能与随着白天温度升高而增加的气候控制相关的电力消耗增加随着傍晚和夜晚气温的下降,负荷逐渐减少。它也可以在图中看到。 7、上午8点之间时至下午7 存在太阳能产生高于家庭中的消耗的时期,这导致剩余的能量产生,所述剩余的能量产生可以被反馈到电网中或者被用于对社区级电池存储充电。 通过从太阳能生产中减去能源消耗和受控加热负荷,计算每个半小时间隔内单个客户产生的剩余能量。由此产生的列用于通过删除具有负盈余的行来过滤数据集,因为它们代表家庭总消费量超过太阳能生产量的间隔。所得数据集的汇总统计量见表3。4. 智能能源交易分析半结构化数据集包括关于时间戳、涉及的演员标识符等的信息。对这个数据集的分析可以帮助理解参与者的行为及其相关的上下文活动。例如,在智能能源系统的情况下,可以深入研究能源数据集,以了解能源需求和太阳能生产。为了实现这一点,我们从数据集行中提取信息,并将其转换为更具表现力的结构化表示。数据集的每一行都被认为是一个事务。如果实现了所提出的基于区块链的激励系统,则每个数据集交易如第5节所述,额外的奖励场将通过区块链交易添加到区块链中。 分析Ausgrid数据集的程序工作流程如下四个步骤:1) 根据上下文将数据集事务拆分为数据节点,其中上下文表示事件类别,例如供暖消耗,太阳能生产等;2) 语义链接多个上下文中出现的数据节点;3) 基于每个上下文的上下文相似性(诸如相似的能耗值范围)对每个上下文的数据节点进行聚类。识别的值范围用作每个唯一聚类的标签;4) 计算跨上下文的相似性,以了解能源需求和太阳能生产。图 8显示了智能能源交易分析的工作流程。最初,我们采用半结构化和智能能源数据集交易,并将其拆分为独特的上下文(例如,太阳能生产、加热消耗、能量消耗、每个区域的总需求、价格等),并且通过不同的上下文在语义上链接每个事务接下来,我们对每个上下文的数据节点进行聚类,其中每个聚类表示具有相似属性的数据节点。此外,我们用独特的属性标记每个然后,我们通过计算它们与所有其他层的聚类相关的欧几里得距离来计算单个层内的聚类之间的成对相似性,其中较低的距离意味着较高的相似性。这一过程使我们不仅能够理解单个上下文中不断变化的交易行为模式,而且还可以跨上下文中理解。在本文中,我们主要分析用户需求层内的事务集群相对于其他上下文层的相似性在第四章系统设计的基础上,我们分以下几个阶段实现了智能电能交易分析4.1. 语义链接和语境化复杂数据集中的语义链接和语境化需要分析参与者的交易。通常,数据集被表示为单层图以可视化参与者之间的关系,其中图节点表示不同的参与者,并且边表示参与者之间的交互。然而,单层图往往无法捕捉动态变化的结构上下文的演员和他们相应的不断演变的关系。因此,我们采用多层图论来定义一组基于上下文的层。图图9显示了智能能源交易的多层表示的一个示例,该多层表示分为五层,其中每一层表示一个上下文。 在这个例子中,多层网络具有一组节点,就像普通网络一样(即,单层图),但是是不同的一组层。每个图五. 夏季每日能源消耗高峰N. Karandikar等人区块链:研究与应用2(2021)1000166见图6。 Ausgrid数据集中的油田、区域能源需求和建议零售价的每日变化系数。多层表示中的层表示不同的上下文(例如太阳能生产、供热消耗、能源消耗、区域价格、区域需求)和实体的各种关系[21]。多层网络表示允许跨多个层链接相同实体之间的边,并提供智能能源交易的跨上下文视图。这提高了对复杂系统中跨多个和跨上下文视角的实体之间的不同交互的理解。为了提供上下文语义链接和利用复杂数据集的语义丰富,我们采用了基于事务属性和拓扑结构的多层方法。为此,我们定义了一组显示不同上下文的层。此外,我们共同考虑所有网络实体的上下文及其网络相似性强度。为了定义语义链接,我们考虑跨跨上下文层的边的不同语义标签,而边的相似语义标签保持在单个N. Karandikar等人区块链:研究与应用2(2021)1000167¼2见图7。 所有客户每日能源分布的季节性变化。层.我们的多层方法提供了一个完全互连的网络,其中所有层包含所有节点,并遵循对角耦合模型,其中层间边缘只存在于节点和它们的对应物之间。我们的模型还采用了一个分类耦合模型,其中层间的边缘存在于任何一对层之间,每一层中的对之间的链接描述了相似性强度。我们实现了三个步骤来构建一个语义多层网络。4.1.1. 步骤1将数据集交易作为输入,并提取每行数据模式作为上下文(例如能源消耗,价格范围,位置),事实,属性,概念和事件,以实现对非结构化数据的准确分析表3剩余能源生产期间的汇总统计。公制剩余能量(kWh)最小值0.001000平均值0.397672最大值4.09500025% 0.1340004.1.2. 步骤2使用与不同事务有关的提取活动创建嵌入M的属性多层网络。与单层网络相反,多层网络M(VM,EM,V,L)具有N个物理节点的基础集合V,该基础集合V在由基本层集合(即,L1,L2,L 3,Ld,其中d是基本层集合)构造的L中的层上显现。的上下文)。M中的节点层元组的集合是VMV×L1× λ ×Ld,多层边集为EM<$VM×VM.边((i,α),(j,β))EM表示存在从层α上的节点i到层β上的节点j(反之亦然,如果M是无向的)。4.1.3. 步骤3通过利用同一层中的节点之间的属性相似性来创建多层网络M中的层之间的语义链接。 我们将每层中具有相似属性的节点连接起来,并使用欧氏距离作为相似性度量来测量节点的相似性,以比较节点的成对亲和力。欧几里德距离得分越高,相似性得分越低,反之亦然。我们进一步在每一层中构建一个加权相似性图,通过测量节点之间的相似性,基于它们在每个特定层中的上下文活动如果两个节点的相似性得分高于阈值,它会在它们之间创建跨层的链接。阈值依赖于用例,并基于输入事务数据集模式确定。最后,我们根据两个相似节点之间的每个链接的百分之五十0.284000相似性得分,其中较高权重对应于百分之七十五0.477000更多相似节点N. Karandikar等人区块链:研究与应用2(2021)1000168¼¼¼¼图八、 交易分析工作流程。图第九章智能能源交易的多层情境化。基于3.1节中给出的智能能源数据集,我们构建了一个具有六个识别层的多层网络L1-太阳能发电量代表不同居民产生的能量;L2-能源消耗量代表每个居民的能源消耗量;L4-区域价格显示了每个居民在给定时间在地理位置上为他们的能源使用所支付的价格L5-区域需求代表特定地理区域的整体能源需求L 6-使用者需求是每名居民的总体需求虽然用户需求没有在数据集中表示,但我们将其表示为附加层,其中每个居民的用户需求是每个居民的能源消耗和供暖消耗之和4.2. 上下文聚类和标记使用第4.1节中的步骤构建的多层网络包含原始但情境化的信息。因此,下一步是根据每个层的特征找到相似的节点。 智能能量交易分析模型不考虑用于聚类的链路或边。相反,我们利用数据集每行的特征值,其中特征由每个事务的列值表示。为了实现这一点,我们应用了一种聚类技术,该技术基于具有相同的任意但固定的标签的特征值来标记相似的最初,我们获取跨时间阶段的多层上下文图此外,我们利用OPTICS [22],一种增强的聚类排序算法,通过距离函数和作为唯一聚类所需的最小邻居数量来查找每个分层上下文中不同节点之间的相似性。我们使用scikit-learn1库在python中实现了OPTICS聚类技术。在当前的实现中,我们将超参数MinPts 15和Eps设置为无穷大。超参数Eps是节点周围的聚类邻域的半径,而MinPts表示半径Eps周围的邻域的最小数量。我们使用Minkowski [23]距离度量来计算具有唯一特征值的不同节点之间的欧几里得距离 图图10示出了针对L 6-用户需求层获得的聚类,而图11示出了针对L 6-用户需求层获得的聚类。图11示出了针对所有客户的L1-Solar生产层获得的集群。图中的每个点。颜色相似的10和11表示属于同一个集群的客户,具有相似的交易,而黑色的点表示噪声。 在这两种情况下,我们分别计算具有四个不同MinPts值15,25,50,100的聚类。我们观察到,使用MinPts 15,我们的聚类方法找到了最接近原始数据集的聚类,但密度较低。通常,增加MinPts值会增加簇的密度。因此,在当前的实现中,我们将MinPts的值固定为15。然而,对于未来的工作,我们将考虑根据单个层的大小和结构动态估计MinPts 图图12示出了L 6-用户需求层内的客户子集的聚类。类似于在图。 10和11,图。图12示出了具有四个MinPts值的聚类,但表示L 6-用户需求层内的客户子集的聚类。我们观察到,相同的客户在不同的交易可以对应不同的需求值表示在不同的集群。1https://scikit-learn.org/。●●●●●●N. Karandikar等人区块链:研究与应用2(2021)1000169¼2¼¼-2联系我们见图10。 所有客户的用户需求集群。见图11。 为所有客户提供太阳能产品。在为每一层确定集群之后,我们隐式地知道表示为集群中的节点的不同客户的事务活动。因此,下一步是标记集群。在这项工作中,我们主要关注分析每一次交易的能源生产和消耗,因此我们只标记L1-太阳能生产和L 6-用户需求层中的集群为此,我们用k个标签类别中的任意一个来封装每个集群在本文中,我们定义了k3,即:高、中、低标签类别。首先,我们定义与每个聚类C相关联的特征,其中特征是长度为n2的元组,具有同一聚类中所有节点的最高值和最低值,并且C是在特定层中获得的集群此外,我们计算每个聚类的这些特征值的平均值。因此,我们确定所有聚类C的最低(X)和最高(Y)平均值,并计算最低和最高平均值X和Y之间的距离为Z Y X。最后,我们使用Z/k表示标签的值范围,将k映射到k个标签。该值范围使我们能够定义两个全局thresholdst1和t2,其中1XZ/k和t2YZ/k。根据阈值,最后我们为每个聚类分配标签一个集群被标记为High:ifMEAN>t2,而我们标记一个集群为Medium:ift1MEAN≤t2.最后,一个聚类被标记为Low:ifMEAN≤t1。在这项工作中,我们主要N. Karandikar等人区块链:研究与应用2(2021)1000161022我Jj见图12。 每个客户的用户需求集群分布。在太阳能生产和用户需求层中获得的标签集群 对于L1太阳能生产层,计算得到的阈值t1和t2分别为1.43016和2.8603。而对于用户需求层,阈值t1和t2分别为1. 8306和3. 6608。4.3. 跨语境相似性在获得每个层中的聚类和对应的聚类标签之后,下一步是分析一个层中的聚类相对于另一层中的所有聚类这使我们能够理解一个上下文中的交易行为活动相对于另一个上下文中的为了实现这一点,我们计算一层中两个聚类的成对相似度(例如,L 6-用户需求层中的集群(Ci,Cj)与L1-太阳能生产层的所有集群因此,我们使用欧几里得距离E计算集群对(Ci,Cj)L 6-用户需求与集群Ck L1-太阳能生产层的相似性,如下所示:transaction,其中token的value字段由正在处理的行此外,我们在每个token的value字段中添加了SIX个新值,RSeasonal,RWeekend,RPeakTime,RMini- Producer,RProducer和RMegaProducer,它们是布尔字段,如果满足特定交易的奖励条件,则将被设置为true每隔半小时为每个客户创建一个令牌,其中包括来自数据集的客户数据以及提到的奖励字段。第3节,确定了几种能源产生和使用模式。 其中,我们重点关注下面列出的观察结果,以创建我们的智能合约。 除了我们提到的,奖励字段将根据该观察进行更新。智能合约使用Golang v1.16编写”[24]《说文》:“以文为文,以文为文。 13、每笔交易1)夏季和冬季海蜇的消耗量最高,这可归因于气候控制的需要。此外,在夏季观察到的能源消耗的变化最大。所以,E¼qXNDk-Dk2(二)对于夏季和冬季的低消耗,客户可以赢得一个与季节有关的奖励2)高峰负荷出现在周末,当家庭成员其中,N是L1-太阳能生产层中的簇的总数,Dk和Dk分别是从簇Ck到簇Ci和Cj的我们执行相似性计算的所有可能的组合L 6-用户的需求与其他层的所有集群的该操作的最终输出是所有合适的聚类对的集合,其具有关于每个层的相关相似性。字典的关键字是一对聚类标签,值是关于每个层的计算相似度的另一个字典,其中关键字是层的名称,值是计算的欧几里得距离。作为未来的工作,我们还计划使用这种成对的相似性计算的集群的大小和结构的前瞻性预测5. 基于区块链的奖励系统在本节中,我们使用第3节和第4节中获得的见解来设计将处理Prosumer回报的智能合约。数据集中的每一行(1个交易)都被建模为区块链上的键值对令牌,通过区块链回家如果客户在周末的消费量较低,他们将获得与RWeekend字段相关的奖励。3) 高峰是一天两次,一次是在工作日开始前的早上,一次是在工作日结束时的晚上因此,在识别的高峰时间期间的低消耗的情况下,客户可以获得与字段RPeakTime相关联的奖励4) 第25百分位数、第50百分位数和第75百分位数剩余产量的确定阈值分别为ta、tb和tc。 如果任何客户的剩余太阳能产量大于或等于t a,则设置为true的字段为RMiniProducer。类似地,当剩余生成分别大于或等于t b和t c时,对于交易,字段RProducer和RMegaProducer被设置 为 真 。 因 此 , 剩 余 产 量 在 第 75 百 分 位 的 事 务 将 使RMiniProducer、RProducer和RMegaProducer都设置为true。此外,在第4节中,在对用户生成和使用行为的几个观察中,我们关注的是为用户需求确定的阈值。识别的阈值用于标记聚类。在k¼1我N. Karandikar等人区块链:研究与应用2(2021)10001611¼¼图十三. 交易令牌的结构。在用户需求的情况下,如果与给定交易相关联的以kWh为单位的需求小于t1,则将其标记为低,而如果其大于t2,则将其标记为高。t1和t2之间的需求被标记为中等。5) 对于用户需求,阈值t11.8306 kWh和t23.6608 kWh用于创建低、中和高消耗水平的标记集群5.1. 智能合约智能合约对奖励系统的业务逻辑进行当部署这个智能合约时,我们设置了一个背书策略,规定网络中的所有组织都必须为每笔交易背书。这是由于第2.2节中确定的原因。感兴趣的算法是算法2,而算法1是辅助算法。算法1. TokenEX列表在算法2中,首先从调用方客户端的标识中找到调用方组织的标识如果客户端不是电力公司的成员,则拒绝创建交易的尝试由于电力公司是奖励令牌的公司,并且可以访问所有客户的创建和生成数据,因此它是唯一的组织拥有发起交易的特权然而,如果没有其他两个组织的认可,它实际上不能处理交易。然后,通过删除特殊字符和类型转换,将提供的时间戳字符串转换为整数数组 这样做是为了处理时间戳的各个部分,如月份和日期。要创建的令牌的密钥将根据世界状态进行检查,以确保新密钥和现有密钥之间没有冲突只有在已经为给定客户和时间戳创建了交易令牌并且正在重新创建时,才会发生这种情况。 每个客户将拥有交易令牌,其时间戳对应于一天中的每个半小时时段,因此每半小时只有一个令牌。如果客户的给定半小时时段的令牌已经存在,则交易将被拒绝。现在,检查各种奖励的条件,如果客户将获得该特定奖励,则更新相关字段。因此,如果客户的消费量很低,并且从时间戳的月份部分计算的季节是夏季或冬季,这是已知的高消费期,那么RSeasonal字段将被更新。类似地,对于周末或在识别的早上和晚上高峰时间的低消耗,字段RWeekend和RPeakTime将分别更新。此外,如果交易显示净产量,则将根据表3中确定的百分比阈值检查盈余 的 价 值 , 以 更 新 字 段 RMiniProducer , RProducer 和RMegaProducer 。 更 新 奖 励 后 , 令 牌 将 保 存 到 具 有 密 钥customer_timestamp的世界状态。5.2. 执行我们的测试基础设施包括云环境中的5台虚拟机(VM),如图所示。 14个。 每个虚拟机都安装了Ubuntu 20.04,并具有32 GB RAM,4个专用虚拟CPU和100 GB SSD磁盘。 每个虚拟机都使用Docker版本19.03,Docker Compose 版 本 1.26 , Hyperledger Caliper 版 本 0.4.2 和Hyperledger Fabric 2.3.0,这些都是撰写本文时可用的最新稳定版本。Ordering服务使用RAFT [25]共识算法,具有Hyperledger Fabric文档中推荐的3个Ordering Service Node(OSN)。我们选择LevelDB作为状态数据库,N. Karandikar等人区块链:研究与应用2(2021)10001612图14. 实验台。VM:虚拟机; OSN:订购服务节点。更好的选择[26]我们网络的每个节点都作为Docker容器运行,并连接在Docker Swarm中以确保高可用性。我们的实验采用了3个组织的架构 我们在一个单独的虚拟机上运行负载生成器Hyperledger Caliper,因为它是资源密集型的,在本例中是VM1。 每个组织,包括订购者组织,都使用单独的VM来运行其Docker容器。我们这样做的原因是双重的。首先,订购方组织或其任何OSN不得控制任何成员组织,因为它执行重要功能。此外,将排序方组织放在与组织相同的VM上将消耗该VM的资源,并且将由于资源争用而使该组织的结果产生负面偏差,并且可能由于对排序方的接近而使该结果产生正面偏差。 在现实世界的实现中,每个组织都有自己的基础设施,因此,我们将每个组织放在一个单独的VM上。因此,我们避免了由于同一基础设施上越来越多的容器而引起的资源争用。5.3. 结果如第5.2节所述,我们使用Hyperledger Caliper创建交易请求并将其发送到已实现的区块链网络。我们实验中的每笔交易都运行智能合约来创建算法2中描述的令牌。因此,每个事务由一个查询和一个创建的事务组成。我们跑了一万图15. 请求发送速率在最大未完成交易的不同限制下。图16. 不同发送速率下的事务吞吐量和延迟。图中显示的每个数据点的交易。创建了四个工作进程来驱动负载,我们在基准测试中确认了固定的负载率控制机制。Hyperledger Caliper中的固定加载速率控制器以每秒交易数(TPS)的确定发送速率开始,并通过修改发送速率来维护网络中的确定交易积压。 我们将起始发送速率确定为1000 TPS,并改变未完成事务的最大限制,以观察对请求发送速率的影响,如图所示。 15个。 我们发现,发送率随着未完成交易的最大允许数量的增加而上升。 如图 16、随着发送速率的上升,系统的吞吐量也随之增加。然而,每笔交易的平均延迟和每笔交易的最大延迟也有所上升。平均延迟的值保持在1秒以下,即使在超过440.3 TPS的吞吐量下,这是在443 TPS的发送速率下实现吞吐量可以通过增加请求发送速率来进一步增加但由于事务延迟的增加,收益会减少当前数据集包含300个客户的数据,每半小时更新一次,相当于0.167 TPS的吞吐量因此,我们可以说,当前的实施能够以合理低的基础设施占用空间支持792,540个客户该实现可以通过如Thakkar和Nathan [27]中所述的水平和垂直缩放向其提供更多资源来进一步缩放。N. Karandikar等人区块链:研究与应用2(2021)10001613算法2. 创建交易令牌6. 相关作品几项研究[28- 31 ]关注微电网中产消者之间基于区块链的能源交易的不同方面。我们的工作提出了一种基于激励的调峰方法,并没有讨论产消者对产消者的交易。Pop等人[32]提出了一种在微电网中实施需求响应计划的架构。他们在以太坊中实现的解决方案[33]为每个产消者获取基线值,这是他们过去值的平均值,然后计算每个产消者所需的灵活性。 他们的结果不包括对区块链实施本身的性能分析。Di Silvestre等人[34]还提出了一个需求侧响应框架,通过计算每个客户的基线使用量,发布所需的减少量和减少量和时间窗口,并监控合规性。 他们的系统架构考虑了两个组织,一个由网格和市场运营商组成,另一个由市场运营商和客户组成。 这种架构减少了用户在实现的业务逻辑中的代理。此外,本文没有描述区块链实现的性能。G
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功