CN112579194A - 基于时延和事务吞吐量的区块链共识任务卸载方法及装置 - Google Patents

基于时延和事务吞吐量的区块链共识任务卸载方法及装置 Download PDF

Info

Publication number
CN112579194A
CN112579194A CN202011359457.3A CN202011359457A CN112579194A CN 112579194 A CN112579194 A CN 112579194A CN 202011359457 A CN202011359457 A CN 202011359457A CN 112579194 A CN112579194 A CN 112579194A
Authority
CN
China
Prior art keywords
current
mobile device
preset
block chain
consensus task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011359457.3A
Other languages
English (en)
Other versions
CN112579194B (zh
Inventor
安致嫄
徐思雅
舒新建
吴利杰
郭少勇
刘岩
王雷
秦晓阳
廖博娴
王春迎
王得全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Beijing University of Posts and Telecommunications
Information and Telecommunication Branch of State Grid Henan Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Beijing University of Posts and Telecommunications
Information and Telecommunication Branch of State Grid Henan Electric Power Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Beijing University of Posts and Telecommunications, Information and Telecommunication Branch of State Grid Henan Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202011359457.3A priority Critical patent/CN112579194B/zh
Publication of CN112579194A publication Critical patent/CN112579194A/zh
Application granted granted Critical
Publication of CN112579194B publication Critical patent/CN112579194B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明实施例提供了一种基于时延和事务吞吐量的区块链共识任务卸载方法及装置,其中方法包括:基于预设的马尔可夫决策过程MDP,获得当前时刻的当前信道条件、MEC服务器的当前可用计算资源和各个第二移动设备的当前信任值,作为当前马尔可夫状态;MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间;将当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于奖励函数计算奖励,基于奖励获得并输出与当前马尔可夫状态对应的目标动作。本发明实施例能够在降低区块链***中对区块链共识任务的处理时延的基础上提高事务吞吐量。

Description

基于时延和事务吞吐量的区块链共识任务卸载方法及装置
技术领域
本发明涉及区块链技术领域,特别是涉及一种基于时延和事务吞吐量的区块链共识任务卸载方法及装置。
背景技术
区块链***中,通常需要将数据写入新的区块以及在得获得新的区块之后,验证该区块的真实性,在这个过程中将产生区块链共识任务,该区块链共识任务通常为计算量较大的计算任务。而区块链***通常分布于移动设备中,由于移动设备的计算能力有限,处理区块链共识任务的时间较长,因此,通常在产生一个区块链共识任务后,可以通过对区块链共识任务进行卸载,将其卸载至具有较大计算能力的设备上,以提高处理区块链共识任务的处理速度。
现有技术中,通常有两种卸载规则可供选择,第一种卸载规则为:将区块链共识任务卸载至MEC(Mobile Edge Computing,移动边缘计算)服务器中,另一种卸载规则为:将区块链共识任务卸载至多个其他移动设备中。
对于如何选择卸载规则,现有技术中提出了多种不同的方法,但是现有技术中所提出的方法中选择卸载规则的算法的收敛速度较慢,而且在选择卸载规则时,没有考虑处理性能,导致区块链***中处理区块链共识任务的时延较长,且事务吞吐量较低。
发明内容
本发明实施例的目的在于提供一种基于时延和事务吞吐量的区块链共识任务卸载方法及装置,以在降低区块链***中对区块链共识任务的处理时延的基础上提高事务吞吐量。
具体技术方案如下:
本发明实施例的第一方面,提供了一种基于时延和事务吞吐量的区块链共识任务卸载方法,应用于区块链***中的第一移动设备,所述区块链***中还包括:多个移动边缘计算MEC服务器和多个第二移动设备,其中,所述第一移动设备为用于生成区块数据的移动设备;所述方法包括:
获取区块链共识任务;所述区块链共识任务为将目标交易数据写入区块,以及验证区块数据的真实性所产生的任务;
基于预设的马尔可夫决策过程MDP,获得当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个所述第二移动设备的当前信任值,作为当前马尔可夫状态;所述MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间,其中状态空间包括:信道条件、MEC服务器的可用计算资源和各个第二移动设备的信任值,所述动作空间包括:卸载决策、传输功率分配、区块大小以及区块间隔时间;所述奖励函数为预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化的原则设置的;
将所述当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于所述奖励函数计算奖励,基于所述奖励获得并输出与所述当前马尔可夫状态对应的目标动作,所述目标动作包括目标卸载规则、目标传输功率分配、目标区块大小以及目标区块间隔时间;
按所述目标卸载规则,对所述区块链共识任务进行处理,获得第一处理结果;
或按所述目标卸载规则,将所述区块链共识任务发送至所述MEC服务器,以使所述MEC服务器接收所述区块链共识任务,并对所述区块链共识任务进行处理,获得第二处理结果,并将所述第二处理结果返回至所述第一移动设备;
或按所述目标卸载规则,将所述区块链共识任务拆分为预设数量的子任务发送至多个第二移动设备;以使多个所述第二移动设备接收第一移动设备发送的子任务,进行处理,获得子任务处理结果返回给第一移动设备;
接收所述MEC服务器返回的第二处理结果;
或接收多个第二移动设备返回的多个子任务处理结果,生成第三处理结果。
本发明实施例的第二方面,提供了一种基于时延和事务吞吐量的区块链共识任务卸载装置,应用于区块链***中的第一移动设备,所述区块链***中还包括:多个移动边缘计算MEC服务器和多个第二移动设备,其中,所述第一移动设备为用于生成区块数据的移动设备;所述装置包括:
区块链共识任务获取模块,用于获取区块链共识任务;所述区块链共识任务为将目标交易数据写入区块,以及验证区块数据的真实性所产生的任务;
当前马尔可夫状态获得模块,用于基于预设的马尔可夫决策过程MDP,获得当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个所述第二移动设备的当前信任值,作为当前马尔可夫状态;所述MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间,其中状态空间包括:信道条件、MEC服务器的可用计算资源和各个第二移动设备的信任值,所述动作空间包括:卸载决策、传输功率分配、区块大小以及区块间隔时间;所述奖励函数为预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化的原则设置的;
目标动作获得模块,用于将所述当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于所述奖励函数计算奖励,基于所述奖励获得并输出与所述当前马尔可夫状态对应的目标动作,所述目标动作包括目标卸载规则、目标传输功率分配、目标区块大小以及目标区块间隔时间;
区块链共识任务处理模块,用于按所述目标卸载规则,对所述区块链共识任务进行处理,获得第一处理结果;
或区块链共识任务发送模块,用于按所述目标卸载规则,将所述区块链共识任务发送至所述MEC服务器,以使所述MEC服务器接收所述区块链共识任务,并对所述区块链共识任务进行处理,获得第二处理结果,并将所述第二处理结果返回至所述第一移动设备;
或区块链共识任务拆分模块,用于按所述目标卸载规则,将所述区块链共识任务拆分为预设数量的子任务发送至多个第二移动设备;以使多个所述第二移动设备接收第一移动设备发送的子任务,进行处理,获得子任务处理结果返回给第一移动设备;
第二处理结果接收模块,用于接收所述MEC服务器返回的第二处理结果;
或第三处理结果生成模块,用于接收多个第二移动设备返回的多个子任务处理结果,生成第三处理结果。
本发明实施例的第三方面,提供了一种移动设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述任一所述的基于时延和事务吞吐量的区块链共识任务卸载方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的基于时延和事务吞吐量的区块链共识任务卸载方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的基于时延和事务吞吐量的区块链共识任务卸载方法。
本发明实施例有益效果:
本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载方法及装置,由于MDP中的奖励函数是预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化原则设置的,而且在A3C模型中,能够通过多次训练使奖励趋于最大化,并获得及输出目标动作。因此,该目标动作为卸载的区块链共识任务处理时延最小化以及第一移动设备事务吞吐量最大化的奖励所对应的动作,因此,本发明实施例能够保证在降低区块链***中对区块链共识任务的处理时延的基础上提高事务吞吐量。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载方法的一种流程示意图;
图2为本发明实施例提供的区块链***的一种结构示意图;
图3a为MDP中动作与状态之间的转移关系示意图;
图3b为图1所示实施例中步骤S103的一种具体流程;
图4为A3C模型的结构示意图;
图5为仿真实验中,平均功率与平均奖励之间的关系示意图;
图6为仿真实验中,区块间隔时间与平均奖励之间的关系示意图;
图7为仿真实验中,区块大小与平均奖励之间的关系示意图;
图8为仿真实验中,MEC服务器的CPU周期频率与平均奖励之间的关系示意图;
图9为仿真实验中,MEC服务器的CPU周期频率,与总时延和平均事务吞吐量之间的关系示意图;
图10为本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载装置的一种结构示意图;
图11为本发明实施例提供的移动设备的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种基于时延和事务吞吐量的区块链共识任务卸载方法,应用于如图2所示的区块链***中的第一移动设备201,区块链***中还包括:多个MEC服务器202和多个第二移动设备203,其中,第一移动设备201为用于生成区块数据的移动设备。多个MEC服务器202之间均通过有线链路连接,且每个MEC服务器202均具有处理区块链共识任务的计算能力。
在区块链***中,移动设备可以为用户终端,例如手机、电脑等。该区块链***可以应用于能源交易以及其他的交易中,当应用于能源交易中时,每两个移动设备之间可以进行能源交易,交易的产品例如可以是天然气、石油等能源产品。每个移动设备均可以作为区块链挖矿设备,而当用户在某一移动设备上进行了一次能源交易,则该移动设备为第一移动设备201,由该移动设备记录本次能源交易过程的交易数据。可以预先在每个移动设备中安装区块链应用程序,该区块链应用程序可以记录在区块链***中所进行的能源交易数据,即,生成本次交易过程对应的区块。
如图1所示,本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载方法可以包括:
S101,获取区块链共识任务。
区块链共识任务为将目标交易数据写入区块,以及验证区块数据的真实性所产生的任务。当用户在第一移动设备中进行了一次能源交易之后,该第一用户设备需要将本次能源交易的数据写入该第一用户设备的区块中,在此之前需要先计算本次所要生成区块的哈希值,具体可以采用现有的哈希值计算方法,并根据目标交易数据计算获得哈希值,例如,可以采用SHA(Secure Hash Algorithm,安全散列算法)256计算获得哈希值,在得到哈希值之后,第一移动设备可以将该哈希值和本次的目标交易数据共同写入一个新的区块中,并协同第二移动设备进行区块真实性的验证。
S102,基于预设的MDP(Markov Decision Process,马尔可夫决策过程),获得当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个第二移动设备的当前信任值,作为当前马尔可夫状态。
其中当前信道条件中可以包含:第一移动设备和MEC服务器之间的信道增益;以及第一移动设备与各第二移动设备之间的信道增益。MEC服务器的当前可用计算资源表示MEC服务器在当前时刻,处理卸载至该MEC服务器中的区块链共识任务后的剩余计算资源,各MEC服务器中可以实时计算自身可用计算资源,并发送至第一移动设备中。
信任值用于表征一个实体对另一个实体的某一时刻的可信度评价指标,信任值可以基于各第二移动设备历史交易记录中的交易成功的次数、交易失败的次数以及交易结果不确定的次数计算获得。可以由各第二移动设备计算各自的信任值,并将各自的信任值发送给第一移动设备;也可以由第一移动设备获取各第二移动设备的历史交易记录并据此计算各第二移动设备的信任值。可以将获得的当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个第二移动设备的当前信任值,作为当前马尔可夫状态。
MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间。MDP可以由元组<S,A,P,r>定义,其中S表示状态空间中的状态集,A表示动作空间中的动作集,P表示状态转移概率,r表示奖励。
其中状态空间包括:信道条件、MEC服务器的可用计算资源和各个第二移动设备的信任值,状态空间中的马尔可夫状态可表示为
Figure BDA0002803591840000061
S(t)表示当前马尔可夫状态,G(t)表示当前时刻的信道条件集,且有G(t)={gn(t),gn,k(t)},gn(t)表示第n个第一移动设备与MEC服务器之间的当前信道增益,gn,k(t)表示第n个第一移动设备与第k个第二移动设备之间的当前信道增益。C(t)={C1(t),C2(t),...,Cn1(t)},Cn1(t)表示第n1个MEC服务器的当前可用计算资源。Dtrust(t)表示第二移动设备的当前信任值集。
执行动作A(t)后,状态空间从当前状态s(t)转移至下一个状态s(t+1)的概率可以表示为:
Figure BDA0002803591840000062
式中,f是预设的状态转移概率密度函数。
动作空间A(t)包括:卸载决策a(t)、传输功率分配P(t)、区块大小Sb(t)以及区块间隔时间Tb(t),可以用A(t)=[a(t),P(t),Sk(t),Tk(t)]定义动作集。卸载决策可以表示为
Figure BDA0002803591840000071
Figure BDA0002803591840000072
aN(t)表示第N个第一移动设备的卸载决策。由于在区块链***中,通常包含有多个第一移动设备,而且在某一个时刻,可能需要对多个第一移动设备进行卸载决策,可以将卸载决策中的N设置为需要进行卸载决策的第一移动设备的数量。
在本发明实施例中可以设置多个预设卸载规则,预设卸载规则分别为:第一移动设备不对区块链共识任务进行卸载;第一移动设备将区块链共识任务卸载至MEC服务器中;第一移动设备将区块链共识任务卸载至多个第二移动设备中,动作空间中的卸载决策表示最终所选取的卸载规则。
传输功率分配P(t)可以表示为:
Figure BDA0002803591840000073
其中Ptotal,N(t)表示第N个第一移动设备对应的分配的总传输功率。当卸载决策为不对区块链共识任务进行卸载时,传输功率分配为0;当卸载决策为将区块链共识任务卸载至MEC服务器中时,传输功率分配表示为传输该区块链共识任务所分配的功率;当卸载决策为将区块链共识任务卸载至多个第二移动设备时,由于需要将区块链共识任务拆分为预设数量个子任务,因此,传输功率分配中包含为各第二移动设备传输各子任务所分配的传输功率,以及为各第二移动设备传输各子任务所分配的传输功率总和。
区块大小表示针对本次目标交易数据所生成的区块的数据量大小,且区块大小满足
Figure BDA0002803591840000077
其中
Figure BDA0002803591840000076
表示预设的区块大小阈值。区块间隔时间表示生成一个新的区块所
需要的时间,且区块间隔时间满足
Figure BDA0002803591840000074
其中
Figure BDA0002803591840000075
表示预设的区块间隔时间阈值。
奖励函数为预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化的原则设置的。
S103,将当前马尔可夫状态,输入预设的A3C(Asynchronous Advantage Actor-Critic Algorithm,异步的优势行动者评论家算法)模型中,以使该A3C模型基于奖励函数计算奖励,基于奖励获得并输出与当前马尔可夫状态对应的目标动作。
在本发明实施例中,可以将当前马尔可夫状态输入A3C模型中,该A3C模型能够基于奖励函数计算奖励,并基于奖励获得并输出与该当前马尔可夫状态对应的目标动作,该目标动作包括目标卸载规则、目标传输功率分配、目标区块大小以及目标区块间隔时间。
S104,按目标卸载规则,对区块链共识任务进行处理,获得第一处理结果。
当目标卸载规则为不对区块链共识任务进行卸载时,则第一移动设备对区块链共识任务进行处理,即,按照预设的哈希值计算方法计算哈希值,并获得第一处理结果,该第一处理结果即为本次计算得到的哈希值。
或S105,按目标卸载规则,将区块链共识任务发送至MEC服务器,然后执行步骤S107。
当目标卸载规则为将区块链共识任务卸载至MEC服务器时,则第一移动设备可以根据各MEC服务器的当前可用计算资源,选择一个当前可用计算资源最大的MEC服务器,并将区块链共识任务发送至该MEC服务器中,以使该MEC服务器接收区块链共识任务,并对区块链共识任务进行处理,获得第二处理结果,并将第二处理结果返回至第一移动设备。
或S106,按目标卸载规则,将区块链共识任务拆分为预设数量的子任务发送至多个第二移动设备,然后执行步骤S108。
当目标卸载规则为将区块链共识任务卸载至多个第二移动设备时,则第一移动设备可以根据将区块链共识任务拆分为预设数量的子任务,根据各第二移动设备的当前信任值,从多个第二移动设备中选择信任值满足信任值阈值的预设数量个第二移动设备,并将拆分得到的预设数量个子任务分别发送至预设数量个第二移动设备,以使多个第二移动设备接收第一移动设备发送的子任务,进行处理,获得子任务处理结果返回给第一移动设备。其中信任值阈值可以为预先根据经验设置的数值,例如可以为0.5。
S107,接收MEC服务器返回的第二处理结果。
由于MEC服务器计算得到的第二处理结果为哈希值,因此,当第一移动设备接收到MEC服务器101返回的第二处理结果之后,可以直接获得该哈希值。
或S108,接收多个第二移动设备返回的多个子任务处理结果,生成第三处理结果。
由于第二移动设备分别对子任务进行处理后,获得子任务处理结果,因此,第一移动设备在接收到各第二移动设备返回的子任务处理结果后,还需要根据多个子任务处理结果生成第三处理结果,以获得哈希值。
本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载方法,第一移动设备基于预设的MDP,获得当前时刻的当前信道条件、MEC服务器的当前可用计算资源和各个所述第二移动设备的当前信任值,作为当前马尔可夫状态;将当前马尔可夫状态,输入预设的A3C模型中,以使该A3C模型基于奖励函数计算奖励,基于奖励获得并输出与当前马尔可夫状态对应的目标动作。由于MDP中的奖励函数是预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化原则设置的,而且在A3C模型中,能够通过多次训练使奖励趋于最大化,并获得及输出目标动作。因此,该目标动作为卸载的区块链共识任务处理时延最小化以及第一移动设备事务吞吐量最大化的奖励所对应的动作,因此,本发明实施例能够保证在降低区块链***中对区块链共识任务的处理时延的基础上提高事务吞吐量。
作为本发明实施例一种可选的实施方式,如图3a所示,MDP中还包括:动作与状态之间的转移关系,表征:在不同状态下,通过执行不同的动作,当前状态转移至不同的状态中。例如,状态空间的当前状态为状态1,当执行动作1时,状态空间可以从状态1转移至状态2,接着当执行动作3时,状态空间可以从状态2转移至状态4;状态空间的当前状态为状态1,当执行动作2时,状态空间可以从状态1转移至状态3。
如图3b所示,图1所示实施例流程步骤S103,将当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于奖励函数计算奖励,基于奖励获得并输出与当前马尔可夫状态对应的目标动作的步骤,包括:
S301,将当前马尔可夫状态输入A3C模型中。
如图4所示,A3C模型中包括一个全局网络和多个局部网络,全局网络中包括一个神经网络,神经网络包括actor网络和critic网络,局部网络的网络结构和全局网络的网络结构相同,当输入状态时,可以获得策略函数和状态价值函数。策略函数用于结合A3C当前状态、当前模型参数,执行当前动作;状态价值函数用于代入相应参数计算优势函数值。可以将当前马尔可夫状态输入全局网络和多个局部网络中。
S302,将A3C模型中的初始模型参数设置为当前模型参数。
在本步骤中,可以将A3C模型中全局网络的actor网络初始模型参数设置为当前actor网络模型参数;以及将全局网络的critic网络初始模型参数设置为当前critic网络模型参数。在A3C模型的初始状态下,当前模型参数和初始模型参数相同,接着可以利用全局网络的模型参数对局部网络的模型参数进行更新。
还可以输入全局迭代次数阈值,局部迭代次数阈值,衰减因子以及代理数量阈值。可以将代理数量的初始值设置当前代理数量,在A3C模型的初始状态下,当前代理数量和代理数量的初始值相同,例如初始值为1,接着执行步骤S303。其中代理数量阈值与局部网络的数量相同。
S303,将当前马尔可夫状态作为A3C当前状态。
S304,基于A3C当前状态、当前模型参数及预设的策略函数,执行当前动作。
策略函数π(At,st;θ′)可以为预先设置于A3C模型局部网络中的函数,表征在状态st下,执行动作At的概率,该概率是与局部网络中actor网络的模型参数θ′有关的函数。MDP中还包括动作与状态之间的转移关系,因此,可以基于A3C当前状态、当前模型参数及预设的策略函数,执行当前动作,具体可以根据转移关系以及状态转移函数,确定执行各动作的概率,并从中选取一个概率最大的动作,作为当前动作。其中,当前动作包括:当前卸载规则、当前传输功率分配、当前区块大小以及当前区块间隔时间。
需要说明的是,在确定了当前卸载规则之后,如果当前卸载规则为将区块链共识任务卸载至多个第二移动设备,还可以根据各第二移动设备的当前信任值,确定预设数量个第二移动设备作为处理子任务的第二移动设备。而如果当前卸载规则为将区块链共识任务卸载至MEC服务器中,还可以根据各MEC服务器的可用计算资源确定一个目标MEC服务器。
作为本发明实施例一种可选的实施方式,在执行当前动作之后,可以判断当前动作是否满足预设条件,预设条件包括:
(C1):an(t)∈{0,1,2}
(C2):0≤Ptot,n(t)≤PT
(C3):Ttot,n(t)≤ω×Tb(t)
(C4):
Figure BDA0002803591840000101
式中,an(t)表示当前卸载规则,Ptot,n(t)表示当前分配的总传输功率,PT表示***预设总传输功率,Ttot,n(t)表示当前总时延,ω表示区块间隔时间的预设权重因子,且ω>1,Tb(t)表示当前区块间隔时间,ρ(k)表示需要发送至第k个第二移动设备的子任务占区块链共识任务的预设比例,D1(t)表示区块链共识任务的数据量,Lk(t)表示第一移动设备和第k个第二移动设备之间连接的当前链路容量。
其中C1中的0、1和2分别为三种预设卸载规则的标识,标识0表示不对区块链共识任务进行卸载,标识1表示将区块链共识任务卸载至MEC服务器中,标识2表示将区块链共识任务卸载至多个第二移动设备中,因此,C1表达式用于判断当前卸载规则是否为三种预设卸载规则之一。
C2表明当前分配的总传输功率不能超过***预设总传输功率,当当前卸载规则为不对区块链共识任务进行卸载时,则当前分配的总传输功率为0。当当前卸载规则为将区块链共识任务卸载至MEC服务器中时,则当前分配的总传输功率为:向MEC服务器传输区块链共识任务所分配的传输功率。当当前卸载规则为将区块链共识任务卸载至多个第二移动设备时,则当前分配的总传输功率为各第二移动设备所分配的传输功率之和。
C3表明当前总时延需要小于或等于当前区块大小与ω之间的乘积,其中ω表示区块间隔时间的预设权重因子,且ω>1,其可以为根据经验或实验预先设置的数值。
C4表明当当前卸载规则为将区块链共识任务卸载至多个第二移动设备时,第一移动设备向各第二移动设备发送的子任务的数据量,不能超过第一移动设备与各第二移动设备的当前链路容量。
若当前动作不满足预设条件中的任一条件,则将当前奖励设置为预设数值,该预设数值可以为0。若当前动作同时满足预设条件中的C1、C2、C3和C4,则可以执行:
S305,根据当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及奖励函数,获得当前奖励。
奖励函数均与卸载规则、传输功率分配、区块大小和区块间隔时间相关,因此,可以根据当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及奖励函数,计算获得当前奖励。
上述过程可以表示为:
Figure BDA0002803591840000111
式中,rt表示当前奖励,O(t)表示奖励函数,if C1-C4 are satisfied表示当前动作同时满足预设条件中的C1、C2、C3和C4,otherwise表示当前动作不满足预设条件中的任一动作。
S306,基于当前A3C状态,当前动作以及动作与状态之间的转移关系,获得下一个A3C状态。如图3a所示,在当前A3C状态下,当选取了一个当前动作后,即可根据动作与状态之间的转移关系确定下一个状态。
S307,根据当前奖励是否满足预设奖励条件,判断下一个A3C状态是否为A3C终止状态,以及判断执行当前动作的次数是否满足预设执行动作次数阈值。
预设奖励条件可以为当前奖励与上一个奖励相同,或者当前奖励与上一个奖励之间的差值在一个预设的范围内;或者当前奖励与当前奖励之前的预设次数个奖励之间的差值均在一个预设的范围内。如果当前奖励满足预设奖励条件,则下一个A3C状态是A3C终止状态,否则,下一个A3C状态不是A3C终止状态。
还可以判断执行当前动作的次数是否满足预设执行动作次数阈值,该执行动作次数阈值可以为局部迭代次数阈值。
S308,若下一个A3C状态不是A3C终止状态,且执行当前动作的次数未满足预设执行动作次数阈值,则将下一个A3C状态作为当前A3C状态,并返回步骤S304,基于A3C当前状态、当前模型参数及预设的策略函数,执行当前动作。
如果下一个A3C状态不是A3C终止状态,且执行当前动作的次数未满足预设执行动作次数阈值,则表明局部网络未收敛,因此,可以返回S304的步骤。
S309,若下一个A3C状态是A3C终止状态,或执行当前动作的次数满足预设执行动作次数阈值,则基于各A3C状态对应的奖励和预设的优势函数计算公式,计算各A3C状态对应的优势函数值。
如果下一个A3C状态是A3C终止状态,或执行当前动作的次数满足预设执行动作次数阈值,则表明局部网络已收敛,因此,可以计算优势函数值,在计算优势函数值之前首先需要计算各动作对应的策略值,接着利用策略值计算优势函数值。各个动作对应的策略值采用如下表达式计算得到:
Figure BDA0002803591840000121
式中,Rtv′)表示策略值,V(st;θv′)表示与状态st和局部网络中critic模型参数θv′相关的状态价值函数,γ表示衰减因子,rt+1表示t+1次执行的动作对应的奖励,V(st+k1;θv′)表示与状态st+k1和局部网络中critic网络的参数θv′相关的状态价值函数,θ′表示局部网络中actor网络的模型参数,θv′表示局部网络中critic网络的模型参数,k1表示采样步数。
由上述表达式可以看出,计算每一个动作对应的策略值需要用到其下一个动作对应的策略值,因此需要计算最后一个动作对应的策略值。最后一个动作对应的策略值采用如下表达式计算:
Figure BDA0002803591840000131
上式含义为:当最后一个动作对应的状态是终端状态(terminal state),则将最后一个动作对应的策略值设置为0;当最后一个动作对应的状态不是终端状态,则将最后一个动作对应的策略值确定为与状态st和局部网络中actor网络的模型参数θv′相关的状态价值函数V(st;θv′),此处的终端状态也可以理解为终止状态。
A3C模型中的优势函数表达式可以为:
Figure BDA0002803591840000132
式中,A(At,st;θ′,θv′)表示优势函数值,V(st;θv′)表示与状态st和局部网络中critic网络的参数θv′相关的状态价值函数。
S310,从各A3C状态对应的优势函数值中选择最大值,作为目标优势函数值。在获得个A3C状态对应的优势函数后,可以从中选择最大值,作为目标优势函数。
S311,利用预设的损失函数计算公式,以及目标优势函数值,计算损失函数值。
由于全局网络中包括actor网络和critic网络,因此,可以分别计算actor网络和critic网络的损失函数值。具体地,利用预设的actor网络损失函数计算公式,以及目标优势函数,计算actor网络损失函数值,actor网络损失函数计算公式为:
Jπ(θ′)=logπ(At,st;θ′)A(At,st;θ′,θ′v)+cH(π(st;θ′))
式中,Jπ(θ′)表示actor网络损失函数值,π(At,st;θ′)表示策略函数,A(At,st;θ′,θv′)表示目标优势函数值,c表示预设的超参数,H(π(st;θ′))表示预设的熵函数。
利用预设的critic网络损失函数计算公式,以及目标优势函数,计算critic网络损失函数值,critic网络损失函数计算公式为:
Jv(θ′v)=A(At,st;θ′,θ′v)2=(Rt(θ′v)-V(st;θ′v))2
式中,Jv(θ′v)表示critic网络损失函数值,A(At,st;θ′,θ′v)表示目标优势函数值。
S312,利用预设的累积梯度计算公式,以及损失函数值,计算累积梯度。
可以利用预设的actor网络累积梯度计算公式,以及actor网络损失函数值,计算局部网络中actor网络累积梯度,actor网络累积梯度计算公式为:
Figure BDA0002803591840000141
式中,
Figure BDA0002803591840000142
表示局部网络中actor网络累积梯度。
可以利用预设的critic网络累积梯度计算公式,以及critic网络损失函数值,计算局部网络中critic网络累积梯度,critic网络累积梯度计算公式为:
Figure BDA0002803591840000143
式中,
Figure BDA0002803591840000144
表示局部网络中critic网络累积梯度。
S313,利用累积梯度更新当前模型参数。
可以利用局部网络中actor网络累积梯度,更新全局网络中actor网络的当前模型参数,以及利用局部网络中critic网络累积梯度,更新全局网络中critic网络的当前模型参数。
S314,判断当前迭代次数是否大于或等于预设迭代次数阈值。
判断当前迭代次数是否大于或等于预设迭代次数阈值,以此来判断A3C模型是否收敛。其中预设迭代次数阈值可以为全局迭代次数阈值。
若是,则A3C模型收敛,执行步骤S315,输出最后一个A3C状态对应的目标动作。若是则表明A3C模型收敛,可以输出全局网络中最后一个A3C状态对应的目标动作。
若否,则返回步骤S303,将当前马尔可夫状态作为A3C当前状态。若否,则表明A3C模型未收敛,则再次进入迭代的过程,并返回步骤S303,以及将当前代理数量增加预设数值,获得下一个代理数量,其中预设数值可以为1。此外,还可以将全局网络的当前模型参数对各局部网络的当前模型参数进行更新。
作为本发明一种可选的实施方式,图3b所示实施例流程步骤S305,根据当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及奖励函数,获得当前奖励的步骤,可以包括:
第一步,利用第一预设表达式计算当前总时延,第一预设表达式为:
Figure BDA0002803591840000145
式中,Ttot,n(t)表示第n个第一移动设备的当前总时延,an(t)表示当前卸载规则,an(t)∈{0,1,2},an(t)取值为0对应的卸载规则为不对区块链共识任务进行卸载,an(t)取值为1对应的卸载规则为将区块链共识任务卸载至MEC服务器中,an(t)取值为2对应的卸载规则为将区块链共识任务卸载至多个第二移动设备中,T(L)(t)表示当前第一移动设备处理时延,T(A)(t)表示当前MEC服务器处理时延,T(D)(t)表示当前第二移动设备处理时延,t表示当前动作次数。
第二步,利用奖励函数计算当前奖励,奖励函数为:
Figure BDA0002803591840000151
式中,O(t)表示当前奖励,ω1表示事务吞吐量的预设权重因子,0<ω1<1,Ψ(t)表示当前事务吞吐量,ω2表示总时延的预设系数,Ttot,n(t)表示第n个第一移动设备的当前总时延,N表示第一移动设备的数量;其中,当前事务吞吐量基于当前动作中的当前区块大小和当前区块间隔时间计算获得。需要说明的是,由于因事务吞吐量和总时延未位于同一个数量级,因此,可以为当前总时延设置一个预设系数ω2,且0<ω2<1,可以根据实际计算得到的总时延和事务吞吐量之间的商,计算预设系数,也可以根据实验获得。
作为本发明实施例一种可选的实施方式,当前第一移动设备处理时延可以采用如下表达式计算:
Figure BDA0002803591840000152
式中,T(L,e)(t)表示第一移动设备处理区块链共识任务的当前第一移动设备处理时延;D1(t)表示区块链共识任务的数据量,Xt表示区块链共识任务的计算工作量;
Figure BDA0002803591840000155
表示第二移动设备的计算能力,单位为CPU周期数/s。需要说明的是,由于第一移动设备和第二移动设备均可以为用户终端,因此第一移动设备和第二移动设备的计算能力相同。
作为本发明实施例一种可选的实施方式,当前MEC服务器处理时延可以采用如下方式计算:第一步,利用第二预设表达式,计算第一移动设备将区块链共识任务发送至MEC服务器的当前传输速率,第二预设表达式为:
Figure BDA0002803591840000153
式中,
Figure BDA0002803591840000154
表示第一移动设备将区块链共识任务发送至MEC服务器的当前传输速率,B表示信道带宽,Pn(t)表示当前卸载规则为将区块链共识任务卸载至MEC服务器中时当前分配的传输功率,gn(t)表示第一移动设备和MEC服务器之间的信道增益,σn(t)表示第一移动设备与MEC服务器之间的信道噪声方差。
第二步,利用第三预设表达式,计算第一移动设备将区块链共识任务发送至MEC服务器的当前传输时延:
Figure BDA0002803591840000161
式中,T(A,u)(t)表示第一移动设备将区块链共识任务发送至MEC服务器的当前传输时延,D1(t)表示区块链共识任务的数据量,
Figure BDA0002803591840000162
表示第一移动设备将区块链共识任务发送至MEC服务器的当前传输速率。
第三步,计算第一移动设备将区块链共识任务发送至MEC服务器的当前传输时延,MEC服务器处理区块链共识任务的当前执行时延,以及区块链共识任务在MEC服务器等待处理的当前排队时延之和,作为当前MEC服务器处理时延。
在本发明实施例中,MEC服务器处理区块链共识任务的当前执行时延可以采用如下表达式计算:
Figure BDA0002803591840000163
式中,T(A,e)(t)表示MEC服务器处理区块链共识任务的当前执行时延,D1(t)表示区块链共识任务的数据量,Xt表示区块链共识任务的计算工作量;ft A表示MEC服务器的计算能力,单位为CPU周期数/s。
区块链共识任务在MEC服务器等待处理的当前排队时延,可以采用如下表达式计算:
Figure BDA0002803591840000164
式中,T(A,q)(t)表示区块链共识任务在MEC服务器等待处理的当前排队时延,Qt表示MEC服务器中待处理的区块链共识任务的CPU周期总数;ft A表示MEC服务器的计算能力。
在本发明实施例中在计算当前MEC服务器处理时延时,充分考虑第一移动设备将区块链共识任务发送至MEC服务器的过程中所产生的当前传输时延、MEC服务器在处理区块链共识任务的过程中所产生的当前执行时延,以及第一移动式设备将区块链共识任务发送至MEC服务器后,该区块链共识任务在MEC服务器中的排队时所产生的当前排队时延,使得计算得到的当前MEC服务器处理时延更加准确。
作为本发明实施例一种可选的实施方式,当前第二移动设备处理时延可以采用如下方式计算:第一步,利用第四预设表达式,计算第一移动设备将子任务发送至各第二移动设备的当前传输速率;接收子任务的第二移动设备,为根据各第二移动设备的当前信任值确定得到,第四预设表达式为:
Figure BDA0002803591840000171
式中,
Figure BDA0002803591840000172
表示第一移动设备将子任务发送至第k个第二移动设备的当前传输速率,B表示信道带宽,
Figure BDA0002803591840000173
表示第k个第二移动设备的当前信任值,Pn,k(t)表示当前卸载规则为将区块链共识任务卸载至多个第二移动设备中时当前分配的传输功率,gn,k(t)表示第一移动设备和第k个第二移动设备之间的信道增益,σn,k(t)表示第一移动设备与第k个第二移动设备之间的噪声方差。
第二步,利用第五预设表达式,计算第一移动设备将子任务发送至多个第二移动设备的当前传输时延:
Figure BDA0002803591840000174
式中,T(D,u)(t,k)表示第一移动设备将子任务发送至第k个第二移动设备的当前传输时延,D1(t)表示区块链共识任务的数据量,
Figure BDA0002803591840000175
表示第一移动设备将子任务发送至第k个第二移动设备的当前传输速率。
第三步,计算第一移动设备将子任务发送至各第二移动设备的当前传输时延,与第二移动设备处理子任务的当前执行时延之和,作为当前第二移动设备处理时延。其中,第二移动设备处理子任务的当前执行时延可以利用如下表达式计算得到:
Figure BDA0002803591840000176
式中,T(D,e)(t,kt)表示第二移动设备处理子任务的当前执行时延,D1(t)表示区块链共识任务的数据量,Xt表示区块链共识任务的计算工作量;
Figure BDA0002803591840000177
表示第二移动设备的计算能力,单位为CPU周期数/s。
在本发明实施例中在计算当前第二移动设备处理时延时,充分考虑第一移动设备将子任务发送至第二移动设备的过程中所产生的当前传输时延、第二移动设备在处理子任务的过程中所产生的当前执行时延,使得计算得到的当前第二移动设备处理时延更加准确。
作为本发明实施例一种可选的实施方式,当前事务吞吐量,为利用第六预设表达式计算得到,第六预设表达式为:
Figure BDA0002803591840000181
式中,Ψ(t)表示当前事务吞吐量,χ表示目标交易数据的数据量,Sb(t)表示当前区块大小,Tb(t)表示当前区块间隔时间,
Figure BDA0002803591840000182
表示小于或等于Sb(t)/χ的最大整数。
下面通过仿真实验对本发明实施例的基于时延和事务吞吐量的区块链共识任务卸载方法的性能进行说明:仿真实验参数设置为:传输噪声功率密度为-174dBm/Hz,带宽为180KHz,目标交易数据的数据量为200kb,事务吞吐量的权重因子ω1=0.5,预设系数ω2=0.2,actor网络的学习率ηa=0.001,critic网络的学习率ηc=0.01。为验证本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载方法的有效性,分别建立以下三种不同的模型:资源随机分配模型,在该模型中,第一移动设备随机进行动作空间的选择;区块链共识任务卸载至MEC服务器模型,该模型中,每个第一移动设备的区块链共识任务只卸载到MEC服务器中;固定区块链任务大小模型,每个第一移动设备的动作中仅卸载决策、传输功率分配、区块间隔时间是变量,区块大小是固定数值。
图5展示了传输功率分配与平均奖励之间的关系。可以看出,平均奖励随着传输功率分配的增加而增加。并且,本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载方法的平均奖励最大,即其性能优于其他三种模型。从图5中可以看出,当分配的传输功率之和大于0.7时,四种模型的平均奖励增长变得缓慢。原因是随着分配的传输功率的增加,通信开销也在增加,例如能量消耗,从而对总时延产生影响,进而导致平均奖励增长缓慢。图6展示了不同区块间隔时间与平均奖励之间的关系。从图6中可以看出,四种模型中的平均奖励均随着区块间隔时间的增大而减小。原因在于在目标交易数据的数据量和区块大小不变的情况下,事务吞吐量随着区块间隔时间的增加而降低。
图7展示了区块大小与平均奖励之间的关系。可以看出,除固定区块链任务大小模型外,其他三种模型的平均奖励随区块大小的增加而增加。图8展示了MEC服务器的CPU周期频率与平均奖励之间的关系。从图8中可以看出,当事务吞吐量的权重因子不变时,平均奖励随着CPU周期频率的增加而增加。此外,还可以看出平均奖励随着当事务吞吐量的权重因子的增加而增加,这表明平均奖励受平均事务吞吐量的影响较大。
图9显示了MEC服务器的CPU周期频率与总时延和平均事务吞吐量之间的关系。可以在图9的基础上实现总时延和事务吞吐量之间的权衡。仿真结果表明,与区块链共识任务卸载至MEC服务器模型相比,本发明实施例的基于时延和事务吞吐量的区块链共识任务卸载方法的平均时延可以降低3.4%,并且平均事务吞吐量方面提高了52.4%。与固定区块链任务大小模型相比,本发明实施例的基于时延和事务吞吐量的区块链共识任务卸载方法的平均时延降低了1.7%,并且平均事务吞吐量提高了12.1%。
参考图10,本发明实施例提供了一种基于时延和事务吞吐量的区块链共识任务卸载装置的一种具体实施例,与图1所示流程相对应,该基于时延和事务吞吐量的区块链共识任务卸载装置应用于如图2所示的区块链***中的第一移动设备201,区块链***中还包括:多个MEC服务器202和多个第二移动设备203,其中,第一移动设备201为用于生成区块数据的移动设备。
本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载装置包括:
区块链共识任务获取模块1001,用于获取区块链共识任务;所述区块链共识任务为将目标交易数据写入区块,以及验证区块数据的真实性所产生的任务。当前马尔可夫状态获得模块1002,用于基于预设的马尔可夫决策过程MDP,获得当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个所述第二移动设备的当前信任值,作为当前马尔可夫状态;所述MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间,其中状态空间包括:信道条件、MEC服务器的可用计算资源和各个第二移动设备的信任值,所述动作空间包括:卸载决策、传输功率分配、区块大小以及区块间隔时间;所述奖励函数为预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化的原则设置的。目标动作获得模块1003,用于将所述当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于所述奖励函数计算奖励,基于所述奖励获得并输出与所述当前马尔可夫状态对应的目标动作,所述目标动作包括目标卸载规则、目标传输功率分配、目标区块大小以及目标区块间隔时间。区块链共识任务处理模块1004,用于按所述目标卸载规则,对所述区块链共识任务进行处理,获得第一处理结果。或区块链共识任务发送模块1005,用于按所述目标卸载规则,将所述区块链共识任务发送至所述MEC服务器,以使所述MEC服务器接收所述区块链共识任务,并对所述区块链共识任务进行处理,获得第二处理结果,并将所述第二处理结果返回至所述第一移动设备。或区块链共识任务拆分模块1006,用于按所述目标卸载规则,将所述区块链共识任务拆分为预设数量的子任务发送至多个第二移动设备;以使多个所述第二移动设备接收第一移动设备发送的子任务,进行处理,获得子任务处理结果返回给第一移动设备。第二处理结果接收模块1007,用于接收所述MEC服务器返回的第二处理结果。或第三处理结果生成模块1008,用于接收多个第二移动设备返回的多个子任务处理结果,生成第三处理结果。
作为本发明实施例一种可选的实施方式,MDP中还包括:动作与状态之间的转移关系。上述目标动作获得模块1003,包括:当前马尔可夫状态输入子模块,用于将当前马尔可夫状态输入A3C模型中。模型参数设置子模块,用于将A3C模型中的初始模型参数设置为当前模型参数。A3C当前状态设置子模块,用于将当前马尔可夫状态作为A3C当前状态。当前动作执行子模块,用于基于A3C当前状态、当前模型参数及预设的策略函数,执行当前动作,当前动作中包括:当前卸载规则、当前传输功率分配、当前区块大小以及当前区块间隔时间。当前奖励获得子模块,用于根据当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及奖励函数,获得当前奖励。A3C状态获得子模块,用于基于当前A3C状态,当前动作以及动作与状态之间的转移关系,获得下一个A3C状态。奖励判断子模块,用于根据当前奖励是否满足预设奖励条件,判断下一个A3C状态是否为A3C终止状态,以及判断执行当前动作的次数是否满足预设执行动作次数阈值。触发子模块,用于若下一个A3C状态不是A3C终止状态,且执行当前动作的次数未满足预设执行动作次数阈值,则将下一个A3C状态作为当前A3C状态,触发当前动作执行子模块执行基于A3C当前状态、当前模型参数及预设的策略函数,执行当前动作。优势函数计算子模块,用于若下一个A3C状态是A3C终止状态,或执行当前动作的次数满足预设执行动作次数阈值,则基于各A3C状态对应的奖励和预设的优势函数计算公式,计算各A3C状态对应的优势函数值。目标优势函数选择子模块,用于从各A3C状态对应的优势函数值中选择最大值,作为目标优势函数值。损失函数值计算子模块,用于利用预设的损失函数计算公式,以及目标优势函数值,计算损失函数值。累积梯度计算子模块,用于利用预设的累积梯度计算公式,以及损失函数值,计算累积梯度。模型参数更新子模块,用于利用累积梯度更新当前模型参数。迭代次数判断子模块,用于判断当前迭代次数是否大于或等于预设迭代次数阈值,若是,则A3C模型收敛,输出最后一个A3C状态对应的目标动作,若否,则触发A3C当前状态设置子模块执行将当前马尔可夫状态作为A3C当前状态。
作为本发明实施例一种可选的实施方式,当前奖励获得子模块,包括:当前总时延计算,用于利用第一预设表达式计算当前总时延,第一预设表达式为:
Figure BDA0002803591840000201
式中,Ttot,n(t)表示第n个第一移动设备的当前总时延,an(t)表示当前卸载规则,an(t)∈{0,1,2},an(t)取值为0对应的卸载规则为不对区块链共识任务进行卸载,an(t)取值为1对应的卸载规则为将区块链共识任务卸载至MEC服务器中,an(t)取值为2对应的卸载规则为将区块链共识任务卸载至多个第二移动设备中,T(L)(t)表示当前第一移动设备处理时延,T(A)(t)表示当前MEC服务器处理时延,T(D)(t)表示当前第二移动设备处理时延,t表示当前动作次数。
当前奖励计算单元,用于利用奖励函数计算当前奖励,奖励函数为:
Figure BDA0002803591840000211
式中,O(t)表示当前奖励,ω1表示事务吞吐量的预设权重因子,0<ω1<1,Ψ(t)表示当前事务吞吐量,ω2表示总时延的预设系数,Ttot,n(t)表示第n个第一移动设备的当前总时延,N表示第一移动设备的数量;其中,当前事务吞吐量基于当前动作中的当前区块大小和当前区块间隔时间计算获得。
作为本发明实施例一种可选的实施方式,本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载装置,还包括:当前动作判断模块,用于判断当前动作是否满足预设条件,预设条件包括:
(C1):an(t)∈{0,1,2}
(C2):0≤Ptot,n(t)≤PT
(C3):Ttot,n(t)≤ω×Tb(t)
(C4):
Figure BDA0002803591840000212
式中,an(t)表示当前卸载规则,Ptot,n(t)表示当前分配的总传输功率,PT表示***预设总传输功率,Ttot,n(t)表示当前总时延,ω表示区块间隔时间的预设权重因子,且ω>1,Tb(t)表示当前区块间隔时间,ρ(k)表示需要发送至第k个第二移动设备的子任务占区块链共识任务的预设比例,D1(t)表示区块链共识任务的数据量,L(t)k表示第一移动设备和第k个第二移动设备之间连接的当前链路容量。
当前奖励获得子模块,具体用于:若当前动作同时满足预设条件中的C1、C2、C3和C4,则执行利用第一预设表达式计算总时延的步骤。若当前动作不满足预设条件中的任一条件,则将当前奖励设置为预设数值。
作为本发明实施例一种可选的实施方式,本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载装置还包括:第一当前传输速率计算模块,用于利用第二预设表达式,计算第一移动设备将区块链共识任务发送至MEC服务器的当前传输速率,第二预设表达式为:
Figure BDA0002803591840000221
式中,
Figure BDA0002803591840000222
表示第一移动设备将区块链共识任务发送至MEC服务器的当前传输速率,B表示信道带宽,Pn(t)表示当前卸载规则为将区块链共识任务卸载至MEC服务器中时当前分配的传输功率,gn(t)表示第一移动设备和MEC服务器之间的信道增益,σn(t)表示第一移动设备与MEC服务器之间的信道噪声方差。
第一当前传输时延计算模块,用于利用第三预设表达式,计算第一移动设备将区块链共识任务发送至MEC服务器的当前传输时延:
Figure BDA0002803591840000223
式中,T(A,u)(t)表示第一移动设备将区块链共识任务发送至MEC服务器的当前传输时延,D1(t)表示区块链共识任务的数据量,
Figure BDA0002803591840000224
表示第一移动设备将区块链共识任务发送至MEC服务器的当前传输速率。
当前MEC服务器处理时延计算模块,用于计算第一移动设备将区块链共识任务发送至MEC服务器的当前传输时延,MEC服务器处理区块链共识任务的当前执行时延,以及区块链共识任务在MEC服务器等待处理的当前排队时延之和,作为当前MEC服务器处理时延。
作为本发明实施例一种可选的实施方式,本发明实施例提供的基于时延和事务吞吐量的区块链共识任务卸载装置还包括:第二当前传输速率计算模块,用于利用第四预设表达式,计算第一移动设备将子任务发送至各第二移动设备的当前传输速率,接收子任务的第二移动设备,为根据各第二移动设备的当前信任值确定得到,第四预设表达式为:
Figure BDA0002803591840000225
式中,
Figure BDA0002803591840000226
表示第一移动设备将子任务发送至第k个第二移动设备的当前传输速率,B表示信道带宽,
Figure BDA0002803591840000227
表示第k个第二移动设备的当前信任值,Pn,k(t)表示当前卸载规则为将区块链共识任务卸载至多个第二移动设备中时当前分配的传输功率,gn,k(t)表示第一移动设备和第k个第二移动设备之间的信道增益,σn,k(t)表示第一移动设备与第k个第二移动设备之间的噪声方差。
第二当前传输时延计算模块,用于利用第五预设表达式,计算第一移动设备将子任务发送至多个第二移动设备的当前传输时延:
Figure BDA0002803591840000231
式中,T(D,u)(t,k)表示第一移动设备将子任务发送至第k个第二移动设备的当前传输时延,D1(t)表示区块链共识任务的数据量,
Figure BDA0002803591840000232
表示第一移动设备将子任务发送至第k个第二移动设备的当前传输速率。
当前第二移动设备处理时延计算模块,用于计算第一移动设备将子任务发送至各第二移动设备的当前传输时延,与第二移动设备处理子任务的当前执行时延之和,作为当前第二移动设备处理时延。
作为本发明实施例一种可选的实施方式,当前事务吞吐量,为利用第六预设表达式计算得到,第六预设表达式为:
Figure BDA0002803591840000233
式中,Ψ(t)表示当前事务吞吐量,χ表示目标交易数据的数据量,Sb(t)表示当前区块大小,Tb(t)表示当前区块间隔时间。
本发明实施例还提供了一种移动设备,如图11所示,包括处理器1101、通信接口1102、存储器1103和通信总线1104,其中,处理器1101,通信接口1102,存储器1103通过通信总线1104完成相互间的通信;存储器1103,用于存放计算机程序;处理器1101,用于执行存储器1103上所存放的程序时,实现图1所示步骤S101-S108。上述移动设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于上述移动设备与其他设备之间的通信。存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一基于时延和事务吞吐量的区块链共识任务卸载方法的步骤。在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一基于时延和事务吞吐量的区块链共识任务卸载方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种基于时延和事务吞吐量的区块链共识任务卸载方法,其特征在于,应用于区块链***中的第一移动设备,所述区块链***中还包括:多个移动边缘计算MEC服务器和多个第二移动设备,其中,所述第一移动设备为用于生成区块数据的移动设备;所述方法包括:
获取区块链共识任务;所述区块链共识任务为将目标交易数据写入区块,以及验证区块数据的真实性所产生的任务;
基于预设的马尔可夫决策过程MDP,获得当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个第二移动设备的当前信任值,作为当前马尔可夫状态;所述MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间,其中状态空间包括:信道条件、MEC服务器的可用计算资源和各个第二移动设备的信任值,所述动作空间包括:卸载决策、传输功率分配、区块大小以及区块间隔时间;所述奖励函数为预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化的原则设置的;
将所述当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于所述奖励函数计算奖励,基于所述奖励获得并输出与所述当前马尔可夫状态对应的目标动作,所述目标动作包括目标卸载规则、目标传输功率分配、目标区块大小以及目标区块间隔时间;
按所述目标卸载规则,对所述区块链共识任务进行处理,获得第一处理结果;
或按所述目标卸载规则,将所述区块链共识任务发送至所述MEC服务器,以使所述MEC服务器接收所述区块链共识任务,并对所述区块链共识任务进行处理,获得第二处理结果,并将所述第二处理结果返回至所述第一移动设备;
或按所述目标卸载规则,将所述区块链共识任务拆分为预设数量的子任务发送至多个第二移动设备;以使多个所述第二移动设备接收第一移动设备发送的子任务,进行处理,获得子任务处理结果返回给第一移动设备;
接收所述MEC服务器返回的第二处理结果;
或接收多个第二移动设备返回的多个子任务处理结果,生成第三处理结果。
2.根据权利要求1所述的方法,其特征在于,所述MDP中还包括:动作与状态之间的转移关系;
所述将所述当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于所述奖励函数计算奖励,基于所述奖励获得并输出与所述当前马尔可夫状态对应的目标动作的步骤,包括:
将所述当前马尔可夫状态输入所述A3C模型中;
将所述A3C模型中的初始模型参数设置为当前模型参数;
将所述当前马尔可夫状态作为A3C当前状态;
基于所述A3C当前状态、所述当前模型参数及预设的策略函数,执行当前动作,所述当前动作中包括:当前卸载规则、当前传输功率分配、当前区块大小以及当前区块间隔时间;
根据所述当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及所述奖励函数,获得当前奖励;
基于所述当前A3C状态,所述当前动作以及所述动作与状态之间的转移关系,获得下一个A3C状态;
根据所述当前奖励是否满足预设奖励条件,判断所述下一个A3C状态是否为A3C终止状态,以及判断执行当前动作的次数是否满足预设执行动作次数阈值;
若所述下一个A3C状态不是A3C终止状态,且执行当前动作的次数未满足预设执行动作次数阈值,则将所述下一个A3C状态作为当前A3C状态,返回所述基于所述A3C当前状态、所述当前模型参数及预设的策略函数,执行当前动作的步骤;
若所述下一个A3C状态是A3C终止状态,或执行当前动作的次数满足预设执行动作次数阈值,则基于各所述A3C状态对应的奖励和预设的优势函数计算公式,计算各所述A3C状态对应的优势函数值;
从各所述A3C状态对应的优势函数值中选择最大值,作为目标优势函数值;
利用预设的损失函数计算公式,以及所述目标优势函数值,计算损失函数值;
利用预设的累积梯度计算公式,以及所述损失函数值,计算累积梯度;
利用所述累积梯度更新所述当前模型参数;
判断当前迭代次数是否大于或等于预设迭代次数阈值,若是,则所述A3C模型收敛,输出最后一个A3C状态对应的目标动作,若否,则返回所述将所述当前马尔可夫状态作为A3C当前状态的步骤。
3.根据权利要求2所述的方法,其特征在于,
所述根据所述当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及所述奖励函数,获得当前奖励的步骤,包括:
利用第一预设表达式计算当前总时延,所述第一预设表达式为:
Figure FDA0002803591830000031
式中,Ttot,n(t)表示第n个第一移动设备的当前总时延,an(t)表示当前卸载规则,an(t)∈{0,1,2},an(t)取值为0对应的卸载规则为不对所述区块链共识任务进行卸载,an(t)取值为1对应的卸载规则为将所述区块链共识任务卸载至所述MEC服务器中,an(t)取值为2对应的卸载规则为将所述区块链共识任务卸载至多个所述第二移动设备中,T(L)(t)表示当前第一移动设备处理时延,T(A)(t)表示当前MEC服务器处理时延,T(D)(t)表示当前第二移动设备处理时延,t表示当前动作次数;
利用所述奖励函数计算所述当前奖励,所述奖励函数为:
Figure FDA0002803591830000032
式中,O(t)表示所述当前奖励,ω1表示事务吞吐量的预设权重因子,0<ω1<1,Ψ(t)表示当前事务吞吐量,ω2表示总时延的预设系数,Ttot,n(t)表示第n个第一移动设备的当前总时延,N表示所述第一移动设备的数量;其中,所述当前事务吞吐量基于当前动作中的当前区块大小和当前区块间隔时间计算获得。
4.根据权利要求3所述的方法,其特征在于,在所述根据所述当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及所述奖励函数,获得当前奖励的步骤之前,所述方法还包括:
判断所述当前动作是否满足预设条件,所述预设条件包括:
(C1):an(t)∈{0,1,2}
(C2):0≤Ptot,n(t)≤PT
(C3):Ttot,n(t)≤ω×Tb(t)
Figure FDA0002803591830000041
式中,an(t)表示当前卸载规则,Ptot,n(t)表示当前分配的总传输功率,PT表示***预设总传输功率,Ttot,n(t)表示当前总时延,ω表示区块间隔时间的预设权重因子,且ω>1,Tb(t)表示当前区块间隔时间,ρ(k)表示需要发送至第k个第二移动设备的子任务占所述区块链共识任务的预设比例,D1(t)表示所述区块链共识任务的数据量,Lk(t)表示第一移动设备和第k个第二移动设备之间连接的当前链路容量;
所述根据所述当前动作中的当前卸载规则、当前传输功率分配、当前区块大小、当前区块间隔时间以及所述奖励函数,获得当前奖励的步骤,包括:
若当前动作同时满足所述预设条件中的C1、C2、C3和C4,则执行所述利用第一预设表达式计算总时延的步骤;
若当前动作不满足所述预设条件中的任一条件,则将所述当前奖励设置为预设数值。
5.根据权利要求3所述的方法,其特征在于,在所述利用第一预设表达式计算当前总时延的步骤之前,所述方法还包括:
利用第二预设表达式,计算所述第一移动设备将区块链共识任务发送至所述MEC服务器的当前传输速率,所述第二预设表达式为:
Figure FDA0002803591830000042
式中,
Figure FDA0002803591830000043
表示所述第一移动设备将所述区块链共识任务发送至所述MEC服务器的当前传输速率,B表示信道带宽,Pn(t)表示当前卸载规则为将所述区块链共识任务卸载至所述MEC服务器中时当前分配的传输功率,gn(t)表示所述第一移动设备和所述MEC服务器之间的信道增益,σn(t)表示所述第一移动设备与所述MEC服务器之间的信道噪声方差;
利用第三预设表达式,计算所述第一移动设备将所述区块链共识任务发送至所述MEC服务器的当前传输时延:
Figure FDA0002803591830000051
式中,T(A,u)(t)表示所述第一移动设备将所述区块链共识任务发送至所述MEC服务器的当前传输时延,D1(t)表示所述区块链共识任务的数据量,
Figure FDA0002803591830000052
表示所述第一移动设备将所述区块链共识任务发送至所述MEC服务器的当前传输速率;
计算所述第一移动设备将所述区块链共识任务发送至所述MEC服务器的当前传输时延,所述MEC服务器处理所述区块链共识任务的当前执行时延,以及所述区块链共识任务在所述MEC服务器等待处理的当前排队时延之和,作为所述当前MEC服务器处理时延。
6.根据权利要求3所述的方法,其特征在于,在所述利用第一预设表达式计算当前总时延的步骤之前,所述方法还包括:
利用第四预设表达式,计算所述第一移动设备将所述子任务发送至各所述第二移动设备的当前传输速率,接收子任务的第二移动设备,为根据各第二移动设备的当前信任值确定得到,所述第四预设表达式为:
Figure FDA0002803591830000053
式中,
Figure FDA0002803591830000054
表示所述第一移动设备将所述子任务发送至第k个第二移动设备的当前传输速率,B表示信道带宽,
Figure FDA0002803591830000055
表示第k个第二移动设备的当前信任值,Pn,k(t)表示当前卸载规则为将所述区块链共识任务卸载至多个所述第二移动设备中时当前分配的传输功率,gn,k(t)表示所述第一移动设备和第k个第二移动设备之间的信道增益,σn,k(t)表示所述第一移动设备与第k个第二移动设备之间的噪声方差;
利用第五预设表达式,计算所述第一移动设备将所述子任务发送至多个所述第二移动设备的当前传输时延:
Figure FDA0002803591830000056
式中,T(D,u)(t,k)表示所述第一移动设备将所述子任务发送至第k个所述第二移动设备的当前传输时延,D1(t)表示所述区块链共识任务的数据量,
Figure FDA0002803591830000057
表示所述第一移动设备将所述子任务发送至第k个所述第二移动设备的当前传输速率;
计算所述第一移动设备将所述区块链共识任务发送至各所述第二移动设备的当前传输时延,与所述第二移动设备处理所述区块链共识任务的当前执行时延之和,作为所述当前第二移动设备处理时延。
7.根据权利要求3所述的方法,其特征在于,所述当前事务吞吐量,为利用第六预设表达式计算得到,所述第六预设表达式为:
Figure FDA0002803591830000061
式中,Ψ(t)表示所述当前事务吞吐量,χ表示所述目标交易数据的数据量,Sb(t)表示当前区块大小,Tb(t)表示当前区块间隔时间。
8.一种基于时延和事务吞吐量的区块链共识任务卸载装置,其特征在于,应用于区块链***中的第一移动设备,所述区块链***中还包括:多个移动边缘计算MEC服务器和多个第二移动设备,其中,所述第一移动设备为用于生成区块数据的移动设备;所述装置包括:
区块链共识任务获取模块,用于获取区块链共识任务;所述区块链共识任务为将目标交易数据写入区块,以及验证区块数据的真实性所产生的任务;
当前马尔可夫状态获得模块,用于基于预设的马尔可夫决策过程MDP,获得当前时刻的当前信道条件、各个MEC服务器的当前可用计算资源和各个所述第二移动设备的当前信任值,作为当前马尔可夫状态;所述MDP中包括:预设的状态空间,预设的奖励函数以及预设的动作空间,其中状态空间包括:信道条件、MEC服务器的可用计算资源和各个第二移动设备的信任值,所述动作空间包括:卸载决策、传输功率分配、区块大小以及区块间隔时间;所述奖励函数为预先基于卸载的区块链共识任务处理时延最小化和第一移动设备事务吞吐量最大化的原则设置的;
目标动作获得模块,用于将所述当前马尔可夫状态,输入预设的异步的优势行动者评论家算法A3C模型中,以使该A3C模型基于所述奖励函数计算奖励,基于所述奖励获得并输出与所述当前马尔可夫状态对应的目标动作,所述目标动作包括目标卸载规则、目标传输功率分配、目标区块大小以及目标区块间隔时间;
区块链共识任务处理模块,用于按所述目标卸载规则,对所述区块链共识任务进行处理,获得第一处理结果;
或区块链共识任务发送模块,用于按所述目标卸载规则,将所述区块链共识任务发送至所述MEC服务器,以使所述MEC服务器接收所述区块链共识任务,并对所述区块链共识任务进行处理,获得第二处理结果,并将所述第二处理结果返回至所述第一移动设备;
或区块链共识任务拆分模块,用于按所述目标卸载规则,将所述区块链共识任务拆分为预设数量的子任务发送至多个第二移动设备;以使多个所述第二移动设备接收第一移动设备发送的子任务,进行处理,获得子任务处理结果返回给第一移动设备;
第二处理结果接收模块,用于接收所述MEC服务器返回的第二处理结果;
或第三处理结果生成模块,用于接收多个第二移动设备返回的多个子任务处理结果,生成第三处理结果。
9.一种移动设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
CN202011359457.3A 2020-11-27 2020-11-27 基于时延和事务吞吐量的区块链共识任务卸载方法及装置 Active CN112579194B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011359457.3A CN112579194B (zh) 2020-11-27 2020-11-27 基于时延和事务吞吐量的区块链共识任务卸载方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011359457.3A CN112579194B (zh) 2020-11-27 2020-11-27 基于时延和事务吞吐量的区块链共识任务卸载方法及装置

Publications (2)

Publication Number Publication Date
CN112579194A true CN112579194A (zh) 2021-03-30
CN112579194B CN112579194B (zh) 2023-04-07

Family

ID=75123896

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011359457.3A Active CN112579194B (zh) 2020-11-27 2020-11-27 基于时延和事务吞吐量的区块链共识任务卸载方法及装置

Country Status (1)

Country Link
CN (1) CN112579194B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113301151A (zh) * 2021-05-24 2021-08-24 南京大学 基于云边协同的低时延容器化任务部署方法及设备
CN113344255A (zh) * 2021-05-21 2021-09-03 北京工业大学 基于移动边缘计算和区块链的车载网络应用数据传输和计费优化方法
CN113342418A (zh) * 2021-06-24 2021-09-03 国网黑龙江省电力有限公司 基于区块链的分布式机器学习任务卸载方法
CN113691606A (zh) * 2021-08-19 2021-11-23 京东鲲鹏(江苏)科技有限公司 任务卸载方法、装置、电子设备、***和存储介质
CN113795012A (zh) * 2021-09-16 2021-12-14 上海海事大学 基于区块链的网联车辆边缘计算与视频分析资源分配方法
CN115242301A (zh) * 2022-07-22 2022-10-25 中国电信股份有限公司 网络链路监测方法及装置、存储介质、通信设备
CN116599966A (zh) * 2023-05-09 2023-08-15 天津大学 基于区块链共享的边缘云服务并行资源分配方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109166036A (zh) * 2018-07-19 2019-01-08 华北电力大学 一种基于区块链和契约理论的v2g能源交易机制
CN109246176A (zh) * 2018-07-03 2019-01-18 北京邮电大学 软件定义网络中基于区块链的多控制器同步方法及装置
US20190121889A1 (en) * 2017-10-19 2019-04-25 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
CN109993847A (zh) * 2019-04-15 2019-07-09 内蒙古大学 一种基于区块链的收集交通事故信息的架构及工作方法
CN110928678A (zh) * 2020-01-20 2020-03-27 西北工业大学 一种基于移动边缘计算的区块链***资源分配方法
CN111132175A (zh) * 2019-12-18 2020-05-08 西安电子科技大学 一种协同计算卸载和资源分配方法及应用
CN111507601A (zh) * 2020-04-12 2020-08-07 北京工业大学 基于深度强化学习与区块链共识的资源优化分配决策方法
AU2020102384A4 (en) * 2020-09-23 2020-11-05 Ashok, Alaknanda DR A collaborative mining network (cmn) to execute computationally intense mining tasks in mobile blockchain

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190121889A1 (en) * 2017-10-19 2019-04-25 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
CN109246176A (zh) * 2018-07-03 2019-01-18 北京邮电大学 软件定义网络中基于区块链的多控制器同步方法及装置
CN109166036A (zh) * 2018-07-19 2019-01-08 华北电力大学 一种基于区块链和契约理论的v2g能源交易机制
CN109993847A (zh) * 2019-04-15 2019-07-09 内蒙古大学 一种基于区块链的收集交通事故信息的架构及工作方法
CN111132175A (zh) * 2019-12-18 2020-05-08 西安电子科技大学 一种协同计算卸载和资源分配方法及应用
CN110928678A (zh) * 2020-01-20 2020-03-27 西北工业大学 一种基于移动边缘计算的区块链***资源分配方法
CN111507601A (zh) * 2020-04-12 2020-08-07 北京工业大学 基于深度强化学习与区块链共识的资源优化分配决策方法
AU2020102384A4 (en) * 2020-09-23 2020-11-05 Ashok, Alaknanda DR A collaborative mining network (cmn) to execute computationally intense mining tasks in mobile blockchain

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
DINH C. NGUYEN ET AL: "《Privacy-Preserved Task Offloading in Mobile Blockchain With Deep Reinforcement Learning》", 《 IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT ( VOLUME: 17, ISSUE: 4, DEC. 2020)》 *
SHAOYONG GUO ET AL.: "《Blockchain Meets Edge Computing: Stackelberg Game and Double Auction Based Task Offloading for Mobile Blockchain》", 《 IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY ( VOLUME: 69, ISSUE: 5, MAY 2020)》 *
SHAOYONG GUO ET AL: "《When Network Operation Meets Blockchain: An Artificial-Intelligence-Driven Customization Service for Trusted Virtual Resources of IoT》", 《 IEEE NETWORK ( VOLUME: 34, ISSUE: 5, SEPTEMBER/OCTOBER 2020)》 *
乔冠华: "《基于移动边缘计算的物联网资源管理策略研究》", 《中国博士学位论文全文数据库(电子期刊)信息科技辑》 *
陈骞 等: "《区块链技术在物联网中的应用》", 《信息通信技术》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113344255A (zh) * 2021-05-21 2021-09-03 北京工业大学 基于移动边缘计算和区块链的车载网络应用数据传输和计费优化方法
CN113344255B (zh) * 2021-05-21 2024-03-19 北京工业大学 基于移动边缘计算和区块链的车载网络应用数据传输和计费优化方法
CN113301151A (zh) * 2021-05-24 2021-08-24 南京大学 基于云边协同的低时延容器化任务部署方法及设备
CN113301151B (zh) * 2021-05-24 2023-01-06 南京大学 基于云边协同的低时延容器化任务部署方法及设备
CN113342418A (zh) * 2021-06-24 2021-09-03 国网黑龙江省电力有限公司 基于区块链的分布式机器学习任务卸载方法
CN113691606A (zh) * 2021-08-19 2021-11-23 京东鲲鹏(江苏)科技有限公司 任务卸载方法、装置、电子设备、***和存储介质
CN113691606B (zh) * 2021-08-19 2024-04-16 京东鲲鹏(江苏)科技有限公司 任务卸载方法、装置、电子设备、***和存储介质
CN113795012A (zh) * 2021-09-16 2021-12-14 上海海事大学 基于区块链的网联车辆边缘计算与视频分析资源分配方法
CN115242301A (zh) * 2022-07-22 2022-10-25 中国电信股份有限公司 网络链路监测方法及装置、存储介质、通信设备
CN115242301B (zh) * 2022-07-22 2024-05-14 中国电信股份有限公司 网络链路监测方法及装置、存储介质、通信设备
CN116599966A (zh) * 2023-05-09 2023-08-15 天津大学 基于区块链共享的边缘云服务并行资源分配方法
CN116599966B (zh) * 2023-05-09 2024-05-24 天津大学 基于区块链共享的边缘云服务并行资源分配方法

Also Published As

Publication number Publication date
CN112579194B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN112579194B (zh) 基于时延和事务吞吐量的区块链共识任务卸载方法及装置
CN113242568B (zh) 一种不确定网络环境中的任务卸载和资源分配方法
US8352951B2 (en) Method and apparatus for utility-based dynamic resource allocation in a distributed computing system
US7444272B2 (en) Self-modulation in a model-based automated management framework
CN112764936B (zh) 基于深度强化学习的边缘计算服务器信息处理方法及装置
US11436054B1 (en) Directing queries to nodes of a cluster of a container orchestration platform distributed across a host system and a hardware accelerator of the host system
CN113141317B (zh) 流媒体服务器负载均衡方法、***、计算机设备、终端
CN112383485B (zh) 一种网络拥塞控制方法及装置
CN111752706B (zh) 资源配置方法、装置及存储介质
US10248527B1 (en) Automated device-specific dynamic operation modifications
CN116126130A (zh) 一种可信边缘服务器的选择与能耗优化的任务卸载方法
CN116366576A (zh) 算力网络资源调度方法、装置、设备及介质
CN116389270A (zh) 联邦学习中基于drl联合优化客户端选择和带宽分配的方法
CN116302469A (zh) 一种任务处理的方法和装置
CN108769253A (zh) 一种分布式***访问性能优化的自适应预取控制方法
CN111510473B (zh) 访问请求处理方法、装置、电子设备和计算机可读介质
CN117579701A (zh) 一种移动边缘网络计算卸载方法及***
CN111124439B (zh) 一种云边协同的智能动态卸载算法
CN116954866A (zh) 基于深度强化学习的边缘云下任务调度方法及***
CN116996938A (zh) 车联网任务卸载方法、终端设备及存储介质
CN112288433B (zh) 一种支持边端协同的区块链共识任务处理***及方法
CN115220818A (zh) 基于深度强化学习的实时依赖型任务卸载方法
CN114786156A (zh) 一种基于深度学习的车联网优化任务边缘卸载方法
CN114281544A (zh) 一种基于边缘计算的电力任务执行方法及装置
CN113326130A (zh) 一种资源分配方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant