导读

区块链越来越火,被广泛应用到工业物联网中,但依然存在计算量大、共识效率低,能耗高等问题!

为了解决上述问题,本文引入了深度强化学习技术,将优化问题转化为MDP,并提出一种基于DQN的方法 优化设备能效和系统计算开销。

接下来让我们一起走进今天的文章吧!

摘要

区块链驱动的工业物联网存在如下问题:

1)计算任务难以承受的能量消耗;

2)区块链区域的共识机制效率较低;

3)网络系统计算量大。

为解决上述问题:

1、整合 移动边缘计算 (MEC) 提升工业物联网设备的 计算能力 ,提高 共识过程的效率 。

2、考虑系统成本,包括 系统能耗和计算开销 ;并提出一个 降低消耗的优化框架 。将所提出的问题表述为 马尔科夫决策过程 (MDP)。

3、 通过 动态选择和调整 主控制器、卸载决策、块大小和计算服务器,优化设备能量分配,降低加权系统成本。 由于其 高动态性和高维性 的特点,引入了深度强化学习(DRL)来解决该问题。

1

引言

1、背景

工业物联网(IIoT,也称工业互联网)广泛应用[1-5]。 确保收集的工业数据的安全性和真实性至关重要 。

一方面,IIoT设备分布广泛,数据交互多, 数据 传输的私密性和安全性 往往难以得到保障 [6]。另一方面IIoT资源收到 计算资源和能源资源的约束 ,复杂计算任务几乎不可能在这些设备上独立执行[7,8]。

2、传统解决方案及缺陷

区块链 [9] 可以确保数据安全性和真实性,但需要大量计算资源达成共识[10], 区块链的计算效率和稳定性 成为关键问题。

计算卸载 是提高设备或节点计算能力的有效途径 [11,12], 通过将计算任务从设备转移到计算服务器上,可以明显提高计算效率,降低设备能耗[13]。将传统集中云计算与新兴的移动边缘计算(MEC)相结合的混合数据计算模型被广泛应用 [14-16] 。 与集中式云计算相比, 分布式MEC 具有 传输延迟短、计算开销小、能耗低 等优点 [17]; 分布式计算卸载 结构可以支持区块链中验证过程的计算, 保证了计算任务和验证过程的效率和稳定性[18]。Zhang等[19]将区块链和MEC结合,使用区块链做可追溯性,使用边缘计算结局共识过程中的大维度计算问题。 Qiu等[20]提出了一种计算卸载方案,可以扩展移动设备的容量,将区块链共识过程的计算密集型任务卸载到边缘或云服务器上。

虽然在提高性能方面做了一些优秀的工作[21-23],但依然存在挑战:如: 如何做出 卸载决策 来平衡工业物联网系统的能量消耗和计算开销。 另一个问题是考虑到计算资源、计算能力和计算开销, 哪种计算服务器更适合执行计算任务 。 此外,由于区块链的介入,能耗和计算负荷问题变得更加严重。

3、工作与贡献

为了解决上述问题和挑战,在本文中,我们提出了一个区块链支持的工业物联网系统的节能资源优化框架, 该方案 综合考虑了控制器选择、卸载决策、块大小和服务器选择 ,不仅 优化了设备的能量分配 ,而且 降低了系统的能量消耗和计算开销 。 通过 对MEC和主控制器机制的集成 ,实现了 更低的设备能耗和更合理的能量分配 。采用区块链技术,保证采集的物联网数据的安全性和真实性。 计算服务器也可以支持区块链中一致节点的验证过程。在此基础上,通过定义状态空间、行动空间和奖励函数,构造了马尔可夫决策过程(MDP)来描述 动态联合优化 问题。此外,为了处理工业物联网系统的动态和复杂问题,采用了一种深度强化学习(DRL)方法。本文的主要贡献总结如下:

1) 我们提出了一种新的框架,将区块链和MEC集成到工业物联网系统中,以 确保数据安全和能源效率 。针对所提出的框架和系统模型,我们共同考虑和分析了设备的能量分配和系统的加权成本,包括能量消耗和计算开销。

2)通过共同考虑控制器和计算服务器的状态,以及工业物联网系统的动态特性,我们通过 定义状态空间、动作空间和奖励函数,将优化问题定义为MDP 。

3)针对所提出的大维度、复杂的联合优化问题,提出了一种 基于深度Q-learning (DQL)的动态选择和调整主控制器、卸载决策、块大小和计算服务器的方法 ,以优化设备能效和系统计算开销。

4) 仿真结果表明,该算法具有较好的收敛性,能显著提高系统性能。

本文的其余部分组织如下。第二节介绍了区块链、MEC和IIoT系统集成的相关工作,以及DRL的相关研究。第三节介绍了系统模型。第四节给出了控制器选择、卸载决策、块大小和服务器选择的联合优化问题。然后,我们在第五节中提出了基于DQL的方法来解决所提出的问题。在第六节中展示和讨论了仿真结果。最后,第七节总结了本文并提出了一些未来的工作。

2

相关工作

在本节中,我们简要回顾了区块链技术与无线网络或MEC集成的相关工作,然后描述了它们与工业物联网系统的结合。此外,还讨论了区块链支持的基于DRL的工业物联网系统的相关工作 。

1、 区块链无线网络

区块链是一个分布式账本,由一个去中心化的计算机网络维护,它最初被用于比特币和其他加密货币的底层技术。区块链技术问世后,不仅在货币领域产生了巨大的变化,而且还潜在地改变和重塑了整个经济[24]。此外,与金融领域存在交易安全问题相比,通信网络中也存在类似的信息安全与隐私挑战。因此,区块链技术作为一种很有前途的技术,将区块链与无线网络相结合来应对上述挑战是一种趋势,近年来引起了金融、学术界和业界的极大关注。She等人 [25] 提出了一种无线传感器网络恶意节点检测的 区块链信任模型 ,可以有效地 检测出恶意节点 。Zhao等[26]从联盟博弈论的角度推导了公共区块链网络的 计算资源分配问题 ,并通过基于联盟形成 博弈 的算法实现系统总和效用最大化。 此外,Kim等人[27]提出了一种基于区块链的 信任管理模型 来增强无线传感器网络信标节点之间 [27] 的 信任关系 ,所提出的框架有效地提高了检测精度。然而,这些研究忽略了区块链系统中挖掘计算资源有限和智能共识的问题。

2、 区块链和MEC集成到工业物联网

由于MEC技术的兴起,区块链和MEC的融合使得在边缘[10]处可以实现对网络和计算的 可靠访问和控制 。另外,由于区块链和MEC都是分布式结构,所以它们的集成更合适。因此,考虑到工业物联网系统 安全要求高、计算量大 的特点,将区块链和MEC的集成应用到工业物联网中是有益的。Qiu等人[20]提出了一种 计算卸载 方案,扩展了移动设备在工业物联网系统中的容量。计算密集型的任务,包括移动设备任务和区块链共识处理,可以卸载到边缘服务器或云服务器。Feng等人[28]设计了一个 多目标函数 ,以 最大化MEC系统的计算速度和区块链系统的事务吞吐量 。此外,Qiu等[29]联合考虑了区块链节点和控制器的信任特性,以及MEC服务器的计算能力,提高了基于区块链的软件定义IIoT系统的吞吐量。然而,在容迟的工业物联网场景下,上述研究 缺乏考虑设备的能耗,以及系统的计算开销 。

3、 区块链支持的基于DRL的IIoT

DRL是近年来新兴的一种方法,是 实现最优优化策略和长期回报最大化的一种有效方法 。与以往的强化学习方法相比,DRL中加入了深度神经网络,提高了处理复杂、高维问题的能力。因此,在区块链支持的工业物联网系统中, 应用DRL解决计算卸载问题和优化资源配置 引起了学术界的广泛关注。Liu等人[30]针对区块链支持的工业物联网系统提出了一种基于性能优化框架的新型DRL,以满足高吞吐量需求,并保证系统的去中心化、延迟和安全性。Luo等人[31]提出了一种新的DRL方法来优化软件定义的工业物联网系统中的系统能效。在[32]中,DRL用于实现IIoT系统中采集数据的最大数量。但上述研究都只考虑了相对单一的优化目标。系统整体性能有待提高,DRL的优势没有得到充分利用。因此,在本文中,我们提出了区块链和MEC的集成框架,并使用DRL方法来解决 联合优化问题 。综合考虑器件能效和系统计算量,提高 系统性能 。

3

系统模型

本节将介绍所提出的系统模型。如图1所示,系统模型分为三层:1)用户层;2)控制器层;3)区块链层。这三层的模型如下所示。

1、用户层

我们假设在提议的网络场景中有u个小单元。同时,每个小区内分布着大量的工业物联网设备,如智能电表、智能环境监控设备、数据采集设备等,并连接到本地控制器上。这些工业物联网设备在工作期间,不仅实时采集本地相关数据,还会定期将采集到的数据卸载到本地控制器,进行数据共识和记录。 例如,智能表定期将功耗数据传输到本地控制器。在每个时间段

( 为任意控制器没有足够能量工作的时刻 ) 。 有一个指定的 主控制器 ,用于从所有本地控制器 收集 各种工业物联网数据。 然后主控制器对采集到的数据进行 处理 和 打包 , 发送给区块链系统进行数据共识和记录 。

2、控制层

在每个单元中,在eNodeB附近部署1个本地控制器和1个本地MEC服务器。本地控制器不仅可以接收和发送近端eNodeB的数据,还可以自行处理和打包数据。设

表示单元集合。并且本地控制器只属于其相应的单元。 因此,控制器的集合可以用 表示, 控制器u从相应的单元u收集IIoT数据 [28]。每个控制器的 能量 和 计算能力 分别用:

表示。

在工作时间内,每个控制器从本地设备接收各种IIoT数据。在我们提出的模型中,为了减少控制器与区块链系统之间的 传输消耗 ,并 缓解控制器能量不足 的问题,在所有控制器之间指定了一个 主控制器 。指定的主控制器负责 收集和处理所有控制器的IIoT数据 ,并 与区块链系统进行交互 。此外,主控制器中的计算任务(数据处理或数据分析)不仅可以在本地执行,还可以在本地MEC服务器的帮助下完成,从而提高效率和节约能源。计算任务的能量消耗和计算开销如下:因此,当主控制器选择本地执行时,t时刻的能耗

表示为:

其中

为计算任务的计算复杂度, 为能耗系数[11],可以表示为:

式中,

为控制器u的计算能力。

如果主控制器选择卸载计算任务,则本地MEC服务器在t时刻的数据传输能耗

和计算开销 表示为

其中

为计算任务数据大小, 为主控制器的传输功率, 为控制器与本地MEC服务器之间的传输速率。此外, 为固定费用, 为本地MEC服务器指定的开销因子。

经过数据处理和封装后,主控制器将未验证的块传输给区块链系统。传动能耗

表示为

其中

表示控制器与区块链系统之间的传输速率。n为区块链节点个数。

因此,在t时刻,如果主控制器自行执行计算任务,则服务器的总能耗

和计算开销 记为:

3、区块链层

在区块链系统中有n个共识节点,表示为

。它们负责 验证主控制器发送的事务 ,然后 将验证过的块附加到区块链 。

1、共识机制

本文区块链系统的共识机制采用了实用BFT (PBFT)共识机制[33],当坏节点数小于三分之一时,可以保证系统的正确性。PBFT的具体共识过程分为请求、预准备、准备、提交和答复,如图2所示。具体步骤如下。

首先,主控制器将数据共识要求和未验证块 发送 给区块链系统。然后, 区块链系统随机分配一个主节点来 验证 块的相关信息。即被选中的主节点首先验证该块的签名和MAC (消息认证码message authentication code) 。 如果上述信息是有效的,接下来将验证该块中每个事务的签名和MAC。假设验证一个签名和生成/验证一个MAC所需的计算周期分别表示为θ和α。

因此,请求周期的计算周期可以表示为 :

其中,

表示事务批处理的总大小,h表示平均事务大小。

其次,主节点生成一个MAC,并将其发送给每个复制节点。然后,复制节点验证这个MAC,以及签名和块中每个事务的MAC。此阶段在主节点和复制节点上所需的计算周期分别表示为 :

其中g表示由主控制器发送的正确事务的百分比。

第三,验证后的复制节点生成一个MAC并发送给其他节点。每个节点从其他节点接收并验证n个MAC。如果正确验证的节点数大于2f(其中f = (n 1)/3),则可以执行下一步。因此,主节点和复制节点的计算周期可以表示为

然后,验证过的节点向所有其他节点发送一个MAC,如果它们收到的正确消息超过2f。同时,每个节点从所有其他节点验证这些mac。计算周期可以表示为

最后,当节点收到超过2f的有效提交信息时,向主控制器发送一条应答消息。如果正确回复的消息数大于2f,则认为共识过程已经完成且成功。生成的块被广播到区块链系统。还有与块大小相关的块开销:

其中

是块的大小, 是描述块大小和块开销之间关系的常系数。

此外,我们假设如果区块大小大于总交易大小,整个过程中只需要一个共识过程。如果不是,则需要多个共识过程。每个共识过程都有一个块生成间隔。

2、采用服务器计算

在验证过程的每一步中,所有节点(主节点和副本节点)都要验证大量的签名和MAC,从而产生大量繁重而复杂的计算任务。此外,在每个PBFT共识过程中,存在一个与总交易规模相关的时间限制

。如果共识时间超过限制,则生成的块不能及时追加到区块链。因此,共识效率至关重要。

为了 应对这些繁重复杂的计算任务,满足共识过程的时间限制 ,采用MEC服务器和云计算服务器来支持所有节点的验证过程。MEC服务器和云计算服务器的计算能力不同,计算开销也不同。此外,当由于块大小不足而需要多个共识进程时,服务器会产生额外的计算开销。

同时,由于MEC服务器或云计算服务器的计算资源也被其他服务器占用,很难准确知道服务器在每个时隙的计算资源和计算开销。 因此,服务器的计算资源和计算开销被表示为随机变量γ和η。它们分别被划分为p和q个离散值:

因此,服务器在t时刻的计算资源和计算开销可以表示为γ(t)和η(t)。我们用马尔可夫链对上述随机变量的状态进行建模。 γ(t)和η(t)根据一定的转换概率从一种状态转变为另一种状态,记为

其中

, 。 X × X和Y × Y的转移概率矩阵记为

根据每个共识步骤所需的计算周期,一个共识过程的总计算周期可以表示为

当总事务大小大于块大小时,多个共识过程(我们假设最多有两个共识过程)的总计算周期可以表示为

因此,共识时间和共识过程的计算开销可以表示为

其中

为节点间的广播时延, 为生成块的时间间隔。

则总计算开销

表示为:

如果共识时间

小于时间限制 ,则认为是一个成功的共识过程,生成的块被追加到区块链,并通知主控制器。

最后,我们设置加权代价

来表示能耗和计算开销的加权和,这有利于平衡优化,反映系统的综合性能。表示为

其中,

和 分别表示能量消耗和计算开销的权重。且权值应满足:

4

问题制定

基于区块链支持的工业物联网系统具有高动态性和大维度的特点,我们 构建了离散MDP来描述优化问题 ,旨在共同优化设备能量分配,降低系统加权成本。同时,我们采用DRL方法来解决表述出来的问题。为了清晰地实现DRL方法,状态空间、动作空间和奖励函数定义如下 。

1、状态空间

在每个时隙,学习智能体通过观察状态学习经验并更新决策策略。在优化目标的基础上,智能体通过感知控制器和服务器的状态,进行联合决策。因此,我们将每个决策时期

处的状态空间定义如下:

其中

表示所有控制器的能量。 和 表示服务器的计算资源和计算开销,由 个MEC服务器和1个云计算服务器组成。

2、动作空间

系统的几个部分被动态调整,以最大化长期奖励。动作包括主控制器选择

、卸载决策 、块大小 和服务器选择 。在形式上,决策时刻 的动作空间表示为

其中,

表示选择哪个控制器作为主控制器; 表示任务卸载决策, 表示主控制器在本地执行任务, 表示主控制器卸载了任务; 是块大小的级别; 表示 选择哪个服务器来支持节点的共识过程的方法。

3、奖励函数

通过定义奖励函数,优化设备能量分配,降低系统加权成本,引导智能体做出更好的决策。在本文中,我们将即时奖励定义为:

其中,

表示共识时间小于时间限制时的成功共识奖励。 为系统成本的加权系数。 是惩罚奖励,表示为

其中

为惩罚系数,用于确定惩罚在奖励函数中的比例。 和 分别表示所有控制器的平均能量和指定的主控制器的能量。

5

问题解决

由于区块链支持的工业物联网系统中控制器和服务器的高动态和高维特性,以及联合优化目标,在本文中,我们采用DRL方法来处理制定的优化问题。

DQL方法包含一个深度神经网络阶段,用于 逼近动作-价值函数 以评估动作;一个在线深度Q -网络阶段,用于动态网络更新和决策[30]。基于DQL方法,智能体与环境进行交互,从经验中学习,最终获取并执行基于价值函数的智能策略。从全局角度来看,DQL方法不仅根据所提出的优化目标有效地提供了最优策略,而且实现了最大的长期回报[34]。

具体来说,在每个决策时刻t,智能体观察状态s(t),包括控制器能量状态,以及服务器的计算资源和开销状态。然后,智能体选择并执行一个由主控制器选择、卸载决策、块大小和服务器选择组成的动作a(t)。同时,智能体获得即时奖励r(t),并将环境转换为下一个状态s(t+1)[35]。智能体会一直与环境交互,直到达到终端状态

由于DQL方法是一种基于价值函数的优化算法,如何评估不同状态下的动作是一个关键问题。有一种流行的方法来计算每个步骤中的动作价值,称为动作状态值

,如下所示[29]

其中

表示数学期望, 为调整即时奖励与未来奖励余额的折扣因子, 表示策略 下t+k+1时刻的即时奖励。

相应地,智能体通过如下表达式不断迭代动作状态值:

其中

是学习率,是 下一状态的最大动作状态值[29]。

然而,公式化问题的状态空间复杂且维度大,不可能对每个状态进行探索,获取每个行为状态值。幸运的是,基于深度神经网络,通过 调整深度神经网络[36]的参数 ,可以 有效地从高维数据中找到低维特征 ,从而有效地提高了在线深度Q-网络[37]动态决策的准确性和质量。利用深度神经网络,用一个近似值

逼近动作状态值 。智能体将观察到的状态特征输入到深度神经网络中,得到所有可能动作的近似Q值作为输出。

我们在图3中设置了DQL的工作流程, 评估后的网络生成近似值

,由损失函数 进行训练,定义为:

因此,不断调整被评估网络中的权值和偏差θ,使损失函数

最小。

然而,在训练过程中,深度Q-网络的不稳定性可能仍然存在。它导致了训练效果差或失败。为了解决上述问题,本文对经验重放和固定目标网络进行了改进。

1)经验重放: 为了打破学习经验中的时间关联,主体将学习经验

到经验池中,并从其中随机取样批次作为输入到评估的网络,而不是学习实时 经验。

2) 固定目标网络 :目标网络与评估网络具有相同的架构。与实时更新评估网络中的参数相比,目标网络暂时冻结参数,以降低评估的Q值与目标Q值的相关性。然后,目标网络在经过一段时间的训练后,参照被评估的网络更新其参数。

因此,改进后的损失函数记为:

其中

为目标网络中的权重和偏差。

最后,我们在算法1中正式提出了基于DQL的区块链支持的工业物联网系统能量高效框架。

6

仿真结果与讨论

在本节中,我们首先介绍了仿真环境和参数。然后给出了不同参数设置下的仿真结果,并进行了相应的讨论。为了评估提议框架的性能,我们考虑以下方案。

1)没有 选择控制器的 提议 方案:主控制器是随机选择的。

2) 没有卸载决策的 提议 方案:计算任务在本地执行。

3) 没有调整块大小的提议方案:生成的块大小是固定的。

4) 没有服务器选择的提议方案:随机选择计算服务器,以支持节点的共识过程。

5) 基于Q-learning的方案:用Q-learning方法对所述问题进行优化。

6) 现有工作:不作任何调整或选择。

1、仿真参数

在仿真中,软件环境为Python 3.6和TensorFlow 1.13.1, TensorFlow已经被广泛用于部署机器学习算法和实验环境。

我们考虑有六个单元和六个控制器的网络场景,以及三个用于共识过程的计算服务器,包括两个MEC服务器和一个云计算服务器。区块链系统部署4个节点。表一概括了各参数的主要设置。

将MEC服务器和共识过程云计算服务器的计算资源状态分为非常高、高、中、低四个级别。计算资源状态的转移概率矩阵表示为:

同理,将MEC服务器和共识过程云计算服务器的计算开销状态分为昂贵、普通、廉价三个层次,其状态转移概率矩阵表示为

2、 收敛性能比较

我们给出了几个图来显示所提出的方案和基准方案的收敛性能,这是方案的关键部分。

图4为所提方案在不同学习速率下的收敛情况。从图中可以看出,随着学习速度的增加,所提出的方案具有更快的收敛速度。但是,快速收敛很可能使智能体陷入局部最优,而错过更好的策略。另一方面,学习率小导致收敛速度慢,但使智能体无法从经验中学习。 因此,在保证单变量的情况下,我们在后续的仿真中选择

作为固定的学习速率,因为其收敛速度适中,学习稳定性较好。

图5显示了所提方案在不同基准下的收敛性能。从图5中可以看出,随着回合数的增加,总奖励不断增加,并在大约2500回合后趋于稳定,这展示了所提方案的收敛性能。 选择功能更强大的控制器作为主控制器有利于能量分配。合理的卸载决策和适当的块大小可以降低能量消耗和计算量。选择功能更强大、成本更低的计算服务器也可以节省加权成本。因此,与其他基准相比,该方案具有更好的性能。

此外,图6显示了基于Q学习的方案和本文提出的基于DQL的方案的收敛性能。从图中可以看出,所提出的方案获得了更高的总奖励和更稳定的收敛性能。 由于区块链支持的工业物联网系统场景的高维状态,基于Q学习的方案难以探索所有状态并评估每个状态-动作对。 因此,探索的不完全性阻碍了智能体实现更好的策略。相反,提出的基于DQL的方案通过近似Q值来评估深度神经网络的行为,更适合于大维度的工业物联网系统。

3、 不同方面的性能比较

我们分别从系统总工作时间、能耗、计算开销等方面对所提方案与基准方案进行了单次性能比较。

在图7和图8中,我们比较了不同方案下系统的总工作时间。从图中可以看出,随着单元数量的增加,系统的工作时间逐渐减少。相比之下,所提出的方案比其他基线方案具有更好的性能,这体现在系统工作时间更长。一个合理的解释是,当单元数量增加时,计算任务更重,控制器负担更重。并且代理倾向于卸载任务而不是局部执行以节省能源。从而延长了系统的工作时间。

在图9和图10中,我们展示了不同方案下的能耗与电池数量的关系。从这两幅图中可以看出,随着单元数量的增加,能量消耗也随之增加。当单元数较多时,该方案的性能更好。 原因是,通过DQL训练的最优策略,可以动态调整卸载决策。不断增长的计算任务往往被转移到本地MEC服务器,以减轻主控制器的负担。任务越重,我们可以从卸载计算中获得更多的能源消耗利润。从而有效地降低了能耗。

图11和图12给出了不同方案下计算量与单元数的关系。从图中可以看出,随着单元数量的增加,计算开销不断增加。此外,与其他基准方案相比,该方案的计算量更小。由于增量式的计算任务占用服务器更多的计算资源,并且生成更大的块以适应增加的事务,计算开销明显增加。 然而,该方案中合理的卸载决策和廉价服务器的选择,以及及时调整块大小,有效地减少了额外的计算开销。

4、 权重 成本的性能比较

图13和图14给出了不同方案下系统加权代价与单元数量的关系。 从图中可以看出,在所有方案中,随着小区数的增加,系统加权成本逐渐增加。系统加权成本由设备能耗和系统计算量两部分组成。 由于控制器选择、卸载决策、块大小和服务器选择的联合优化,该方案的性能始终优于其他只对部分优化项进行优化的基线方案。 此外,由于DQL方法具有处理大维度优化问题的能力,其性能也比Q学习方法更有效、更稳定 。

7

结论

在本文中,我们提出了一种新型的节能框架,以共同优化区块链支持的工业物联网系统中设备的能量分配和系统加权成本。为了降低系统能耗,保证系统数据的安全性,在系统模型中引入了MEC和区块链技术。根据优化场景中联合优化目标的高动态性和高维性的特点,将给定的问题建模为MDP,并采用DRL算法进行求解。仿真结果表明,与其他基线方案相比,所提方案具有较好的收敛性和有效性。未来的工作正在进行中,以考虑其他共识协议和数据缓存,以及在提出的框架中大规模设备连接下的网络访问问题 。

推荐内容