一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种利用策略梯度技术优化的支持区块链的物联网系统的制作方法

2021-11-15 17:08:00 来源:中国专利 TAG:


1.本发明涉及强化学习技术、区块链技术和移动通信技术,特别是涉及利用策略梯度技术对支持区块链的物联网系统进行性能优化的方案设计。


背景技术:

2.区块链是一种去中心化的分布式账本,存储在其中的数据和信息具有不可伪造、全程留痕、可溯源、公开透明、集体维护等特点。区块链技术利用链式数据结构验证与存储数据,利用分布式节点的共识算法来生成和更新数据,利用密码学方法保证数据传输和访问的安全,并可以利用由自动化脚本代码编写的智能合约对数据进行操作。
3.物联网技术被认为是信息科技产业的第三次革命,其通过使用信息传感设备和约定的协议,将任何物体与网络相连接。物体通过信息传播媒介进行信息交换和通信,实现智能化识别、定位、跟踪、监管等功能。随着物联网网络的不断发展,越来越多的物联网设备在未来将被接入。有权威机构预测,到2025年,物联网设备的数量将超过1000亿。如此庞大的接入数量将重新塑造现有的网络业务平台,但是也给现有的中心化的平台和服务器造成实时性和安全性方面的巨大挑战。
4.区块链的技术核心是分布式计算,以及分布式计算环境下的群体可信协作机制。在物联网网络不断发展扩大的背景下,区块链的出现为解决物联网面临的可扩展性、协作能力、信任关系与安全保护等方面的挑战提供了崭新的思路和解决方案。通过将物联网设备产生的海量数据存于分布式的区块链中,可以有效降低中心化架构的高额运维成本,并且避免了因为中心服务器崩溃造成的网络瘫痪等危险。区块链具有的不可篡改性和可溯源性,使物联网设备产生的数据可以依托这样的链式结构构建可证可溯的电子证据存证。同时,区块链可保证用户数据的安全性,避免中心化服务器泄露用户的个人隐私。目前区块链技术已广泛应用于物联网网络中,实现了物联网设备数据信息持久化、电商产品信息追溯以及安全数据交易等功能,如专利cn111586069a、cn111626752a、cn109377363b,但是区块链公链网络吞吐量低、延迟性高的问题仍然没有得到很好的解决。
5.强化学习是机器学习的三大范式之一,这种技术明确地考虑了智能体与不确定性环境的整个交互过程,在每次选取动作前折中权衡“探索”与“利用”,使执行动作后获取的期望回报值最大化。目前已有一些专利将深度强化学习方法deep q learning(dqn)应用于区块链系统,如cn111507601a通过合理分配计算资源,达到优化系统能耗和经济开销的目标。但是目前技术方案中使用的这类dqn方法只能在离散空间上进行行为决策,因此得到的最终结果往往并非最优。相对应的,强化学习中的另一类算法,即策略梯度方法,则能够在连续空间上的进行行为决策,这将有助于我们得到更加精细化的策略。例如专利cn112261674a、cn112804103a使用了深度确定性的策略梯度技术,对支持区块链的物联网系统中的任务完成总成本进行优化。但是,这些专利在进行通信资源分配时,并没有考虑到通信信道环境的影响,由于在信号传输和估计的过程中存在不可避免的噪声和时延,即时的完美通信信道状态信息在实际场景中是无法获取的。因此,在这种存在噪声和时延的不
完美环境下,重新考虑能够提升目标系统整体性能的方法是很有意义的。
6.针对上述的区块链及物联网系统中存在的缺陷,本发明提出一种利用策略梯度技术对支持区块链的物联网系统进行性能优化的方法。在该系统中,每个物联网节点同样作为区块链网络节点(下面统称为节点)。本发明通过引入策略梯度技术,分析各节点的历史通信状态信息和区块链状态信息,动态地选择每一轮参与区块链共识的节点集合;同时对节点资源进行分配,以更好地完成通信任务与区块链任务;进一步的,动态设计区块大小和区块生成时间间隔,以提升整个联合系统的平均吞吐量并降低时延。


技术实现要素:

7.针对支持区块链的物联网系统,现有技术方案在进行通信层面的优化时,未考虑到实际环境中噪声和传输时延的影响,因此这些方案在实际应用中仍然存在一定的局限性。针对这些技术方案中存在的缺陷和不足,本发明提出了一种基于策略梯度技术的性能优化方案,旨在考虑到不完美环境的影响下,对系统的通信传输速率总和以及区块链网络的吞吐量进行联合优化,实现系统综合性能的提升。
8.技术方案
9.一种利用策略梯度技术优化的支持区块链的物联网系统,包括智能体、支持区块链的物联网系统、经验池三个关键组成部分,其结构及交互逻辑如图2所示。
10.其中,所述智能体用于从外部环境获取各节点的通信环境状态信息和区块链环境状态信息,并负责做出行为决策;智能体由actor和critic两个部分组成,actor的神经网络用θ
μ
表示,critic的神经网络用θ
q
表示。
11.所述经验池用于存储智能体在不同环境状态下的行为尝试经历,以供智能体后续采样并进行经验学习。
12.所述支持区块链的物联网系统用于为智能体提供环境状态信息,并根据智能体做出的动作给出反馈。
13.在物联网网络中有大量的智能化设备节点。它们通过传感器进行环境数据的采集,完成数据的处理,并根据实际需求在不同的设备上进行传输和共享。这些智能化设备将不断地创建事务,记录要完成的动作和最终需存储的数据。由于每个物联网节点都具有一定存储空间和计算能力,因此这些节点同样构成一张区块链网络,并且均可以被选择作为区块链网络中的共识节点参与到打包事务,即生成区块,和执行共识过程的工作中。事务将被转发到底层的区块链系统,由该系统完成设备信息和操作行为的记录和数据的持久化。
14.在本发明提出的方法中,支持区块链的物联网系统会向智能体提供当前时刻的环境状态信息,然后智能体将该状态信息输入给自身具有的神经网络。神经网络通过计算当前状态下执行不同动作的预期收益,进行行为决策,使得能够得到的回报最大化。其中在训练阶段,智能体将通过从经验池中采样过去的经验进行学习,逐步调整行为策略,并实现系统的性能优化。
15.算法具体步骤如下:
16.s1.支持区块链的物联网系统向智能体提供在时隙t的环境状态,具体包括对网络中n个节点的最新股权数量φ(t)、剩余可用功率资源c(t)、上一时刻的系统信道状态h(t

1),并记作态s(t)=[φ(t),c(t),h(t

1)]。
[0017]
s2.智能体将环境状态输入到自身actor部分的神经网络θ
μ
中。智能体利用该神经网络计算在当前的环境状态下能够最大化预期回报的一套动作a(t)=[α(t),β(t),s
b
(t),t
i
(t)]。其中所述动作的具体内容包括:从n个节点中选择其中k个参与区块共识的节点,该k个节点的集合记作α(t),各节点分配用于完成通信任务的功率比例β(t),设置区块链大小s
b
(t),设置区块生成时间间隔t
i
(t)。
[0018]
s3.假设节点发送的事务(即数据量的大小)平均大小为x。支持区块链的物联网系统根据当前的状态和智能体做出的动作,给出回报奖励r(t)=wr
total
(1

w)ω。其中,r
total
为各节点在执行通信任务时的传输速率总和,ω为整个区块链网络的吞吐量。同时,支持区块链的物联网系统对环境状态进行更新,具体体现为n个节点更新各自的信息s(t 1)=[φ(t 1),c(t 1),h(t)],包括最新股权数量φ(t 1)、剩余可用功率资源c(t 1)、上一时刻的通信信道状态h(t)。
[0019]
s4.判断当前是否处于训练阶段。若是训练阶段,则继续s5;若非训练阶段,即当前正在使用训练好的神经网络进行实际决策,则已得到合适的行动,流程结束。
[0020]
s5.智能体存储在时隙t得到的一组经验样本e(t)=[s(t),a(t),r(t),s(t 1)]到经验池。
[0021]
s6.智能体中的critic部分用于对在当前状态s(t)下执行某一动作a(t)后能够获得的未来累积奖励q(s(t),a(t);θ
q
)进行评估。critic将随机地从经验池中抽取一批过往的经验样本,并计算如下的损失函数:
[0022][0023]
其中的是一组旧的神经网络参数,并且将每隔一段时间被新的神经网络参数θ
q
替换,γ表示一个在0~1区间范围内的折扣系数。
[0024]
s7.critic对上述损失函数进行差分运算,并利用随机梯度下降方法对自身的神经网络θ
q
进行更新。
[0025]
s8.智能体中的actor部分用于将某一状态s(t)确定性地映射到动作a(t)上,即行为策略a(t)~μ(s(t);θ
μ
)。同时,actor将根据当前的行为策略,为s6中采样得到的每一条经验输出一个最优动作,并计算效用函数实现对当前行为策略的评估。
[0026]
s9.在s7中得到的梯度将被传播给智能体中的actor部分,actor基于如下的梯度对自身的神经网络θ
μ
进行更新:
[0027][0028]
s10.重复执行s1到s9,直至到达预先设定的最大循环次数。
[0029]
进一步的,所述神经网络θ
μ
和θ
q
具有相同的层次结构,均各自具有以下几部分:
[0030]
一个含有y个神经元的输入层,其中y是状态空间的维度数;
[0031]
一个含有l1个神经元的隐藏层,作为第一层隐藏层,该层与输入层以全连接的方式连接;
[0032]
一个含有l2个神经元的隐藏层,作为第二层隐藏层,该层与第一层隐藏层以全连
接的方式连接;
[0033]
一个含有l3个神经元的隐藏层,作为第二层隐藏层,该层与第二层隐藏层以全连接的方式连接;
[0034]
一个含有z个神经元的输出层,其中z是动作空间的维度数,该层与第三层隐藏层以全连接的方式连接。
[0035]
有益效果
[0036]
本发明的积极进步效果在于将强化学习技术应用在支持区块链的物联网系统中,实现通信传输速率与区块链网络吞吐量的联合优化。具体来讲,本发明具有以下益处:
[0037]
1、动态分配各通信节点用于传输和计算的功率,提升通信系统性能;
[0038]
2、动态选择参与区块链共识过程的节点,以及区块大小和出块间隔时间,提升区块链系统性能;
[0039]
3、综合考虑通信系统和区块链系统,通过调配权重参数,实现联合系统综合性能的提升。
附图说明
[0040]
图1为本发明的系统模型图。
[0041]
图2为本发明提出的学习模型结构。
[0042]
图3为本发明的算法流程图。
[0043]
图4为本发明中使用到的神经网络的结构。
具体实施方式
[0044]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045]
针对如图1所示的支持区块链的物联网系统,本实施例提出了的一种基于策略梯度技术的性能优化方法,在考虑到不完美环境中的通信噪声与时延下,通过合理的资源分配与区块链共识设计,实现系统通信传输速率总和以及区块链网络吞吐量的联合优化,综合提升系统的性能。
[0046]
一个支持区块链的物联网系统包含了物联网网络和区块链网络,如图1所示。在物联网网络中有大量的智能化设备节点。它们通过传感器进行环境数据的采集,完成数据的处理,并根据实际需求在不同的设备上进行传输和共享。这些智能化设备将不断地创建事务,记录要完成的动作(数据采集/数据处理/数据共享)和最终需存储的数据。由于每个物联网节点(下统称为节点)都具有一定存储空间和计算能力,因此这些节点同样构成一张区块链网络,并且均可以被选择作为区块链网络中的共识节点参与到打包事务(生成区块)和执行共识过程的工作中。事务将被转发到底层的区块链系统,由该系统完成设备信息和操作行为的记录和数据的持久化。
[0047]
本发明提出一种利用策略梯度技术对支持区块链的物联网系统进行性能优化的方法。在本发明提出的学习模型中,共有智能体、支持区块链的物联网系统、经验池三个关
键组成部分,其结构及交互逻辑如图2所示。其中,每个部分的作用如下。
[0048]
1)智能体用于从外部环境获取各节点的通信环境状态信息和区块链环境状态信息,并负责做出行为决策;智能体由actor和critic两个部分组成,actor的神经网络用θ
μ
表示,critic的神经网络用θ
q
表示。
[0049]
2)支持区块链的物联网系统用于为智能体提供环境状态信息,并根据智能体做出的动作给出反馈。
[0050]
3)经验池用于存储智能体在不同环境状态下的行为尝试经历,以供智能体后续采样并进行经验学习。
[0051]
在本发明提出的方法中,支持区块链的物联网系统会向智能体提供当前时刻的环境状态信息,然后智能体将该状态信息输入给自身具有的神经网络。神经网络通过计算当前状态下执行不同动作的预期收益,进行行为决策,使得能够得到的回报最大化。其中在训练阶段,智能体将通过从经验池中采样过去的经验进行学习,逐步调整行为策略,并实现系统的性能优化。算法流程如图3所示,具体的步骤如下。
[0052]
1)支持区块链的物联网系统向智能体提供在时隙t的环境状态,具体包括对网络中n个节点的最新股权数量φ(t)、剩余可用功率资源c(t)、上一时刻的系统信道状态h(t

1),并记作态s(t)=[φ(t),c(t),h(t

1)]。
[0053]
2)智能体将环境状态输入到自身actor部分的神经网络θ
μ
中。智能体利用该神经网络计算在当前的环境状态下能够最大化预期回报的一套动作a(t)=[α(t),β(t),s
b
(t),t
i
(t)]。其中所述动作的具体内容包括:从n个节点中选择其中k个参与区块共识的节点,该k个节点的集合记作α(t),各节点分配用于完成通信任务的功率比例β(t),设置区块链大小s
b
(t),设置区块生成时间间隔t
i
(t)。
[0054]
3)假设节点发送的事务(即数据量的大小)平均大小为x。支持区块链的物联网系统根据当前的状态和智能体做出的动作,给出回报奖励r(t)=wr
total
(1

w)ω。其中,r
total
为各节点在执行通信任务时的传输速率总和,ω为整个区块链网络的吞吐量。同时,支持区块链的物联网系统对环境状态进行更新,具体体现为n个节点更新各自的信息s(t 1)=[φ(t 1),c(t 1),h(t)],包括最新股权数量φ(t 1)、剩余可用功率资源c(t 1)、上一时刻的通信信道状态h(t)。
[0055]
4)判断当前是否处于训练阶段。若是训练阶段,则继续第5步;若非训练阶段,即当前正在使用训练好的神经网络进行实际决策,则已得到合适的行动,流程结束。
[0056]
5)智能体存储在时隙t得到的一组经验样本e(t)=[s(t),a(t),r(t),s(t 1)]到经验池。
[0057]
6)智能体中的critic部分用于对在当前状态s(t)下执行某一动作a(t)后能够获得的未来累积奖励q(s(t),a(t);θ
q
)进行评估。critic将随机地从经验池中抽取一批过往的经验样本,并计算如下的损失函数:
[0058][0059]
其中的是一组旧的神经网络参数,并且将每隔一段时间被新的神经网络参数θ
q
替换,γ表示一个在0~1区间范围内的折扣系数。
[0060]
7)critic对上述损失函数进行差分运算,并利用随机梯度下降方法对自身的神经网络θ
q
进行更新。
[0061]
8)智能体中的actor部分用于将某一状态s(t)确定性地映射到动作a(t)上,即行为策略a(t)~μ(s(t);θ
μ
)。同时,actor将根据当前的行为策略,为第6步中采样得到的每一条经验输出一个最优动作,并计算效用函数实现对当前行为策略的评估。
[0062]
9)在第7步中得到的梯度将被传播给智能体中的actor部分,actor基于如下的梯度对自身的神经网络θ
μ
进行更新:
[0063][0064]
10)重复执行第1步到第9步,直至到达预先设定的最大循环次数。
[0065]
进一步的,所述神经网络θ
μ
和θ
q
具有相同的层次结构,如图4所示。具体来讲,神经网络θ
μ
和θ
q
均各自具有以下几部分:
[0066]
一个含有y个神经元的输入层,其中y是状态空间的维度数;
[0067]
一个含有l1个神经元的隐藏层,作为第一层隐藏层,该层与输入层以全连接的方式连接;
[0068]
一个含有l2个神经元的隐藏层,作为第二层隐藏层,该层与第一层隐藏层以全连接的方式连接;
[0069]
一个含有l3个神经元的隐藏层,作为第二层隐藏层,该层与第二层隐藏层以全连接的方式连接;
[0070]
一个含有z个神经元的输出层,其中z是动作空间的维度数,该层与第三层隐藏层以全连接的方式连接。
[0071]
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献