MSDG:绿色数据收集新方案

MSDG:一种新型的无线传感器网络绿色数据收集方案

A B S T R A C T

绿色数据收集对于解决应用程序所需的各种功能与传感器节点有限能量供应之间的矛盾至关重要。本文提出了一种多条带数据收集(MSDG)方案,可有效减少传输的数据量。在MSDG方案中,网络被划分为多个条带,每个条带内的节点通过数据融合方法将数据传输至条带中心。当数据到达条带中心时,数据融合包的数量为m。条带中心的节点采用压缩感知(CS)方法进行数据收集,并通过沿圆形路由传输,将整个条带内的所有数据汇聚到一个称为起始节点的节点上,该节点维持包长度为m。最后,从最外层的起始节点开始,使用CS方法对各条带的起始节点上的数据进行融合,最终到达汇聚节点,实现整个网络的数据收集。仿真和理论分析表明,与现有的混合CS方案相比,MSDG方案可使网络寿命提高近5倍,同时能量利用率从21%提升至61%,显著增强了无线传感器网络中的数据收集性能。

1. 引言

无线传感器网络(WSNs)的许多潜在应用已在环境工程、医疗保健[1], 工业[2], 军事应用[3, 4], 智能家居[5], 绿色建筑等领域得到开发[6]。随着边缘计算的兴起,基于物联网(IoT)的传感器节点发展迅速 [7, 8]。为了实现无线传感器网络的广泛部署,最大的障碍在于应用所要求的多种功能与传感器节点有限的能量供应之间的矛盾[9‐12]。尤其是考虑到网络规模的不断扩大,这种状况正变得愈发严重[13, 14]。因此,众多研究人员提出了节能方法,以尽可能延长网络寿命 [1, 3, 4, 9, 10, 12‐14]。由于在无线传感器网络中,数据传输和接收所产生的通信开销是能量消耗的主要来源,如何减少网络中传输的数据量便成为研究的关键问题。

目前主要有两类方法用于减少数据量。其中一类是数据融合[14‐17]。该方法的基本思想基于传感器节点所感知的数据之间存在冗余的情况。当数据包在通往汇聚节点的路径上的中间节点相遇时,它们会被融合成一个比其原始数据包之和更小的单一数据包。该方法的优点是易于使用,缺点是受限于应用场景:如果数据包之间的相关性较大,则该方法非常有效。例如,若需要计算监测区域的平均湿度、最大值和最小值,则所有数据包可以被整合为一个数据包,从而大幅减少需传输的数据量。然而,如果数据包之间的相关性较小,则在向汇聚节点传输数据的过程中,随着越来越多的数据包被不断融合,融合后的数据包会变得越来越大,导致能量消耗增加,并影响网络寿命。

另一种有效的数据包压缩方法是压缩感知(CS)[18]。在此方法中,节点需要传输的数据包数量为m,其中m远小于网络中的节点数量n。因此,数据可以得到大幅压缩。然而,压缩感知方法存在一个局限性,即每个节点需要在网络中传输 m 个数据包。在数据融合方法中,在早期阶段,节点传输的数据包少于 m 个。在向汇聚节点进行数据传输的过程中,由于持续的数据融合,数据包变得越来越大。最终,距离汇聚节点一定距离的节点将承担超过m个数据包。为了节约能量,提出了一种混合压缩感知(混合‐CS)方法[19] ,该方法结合了压缩感知方法和数据融合方法。即,在远离汇聚节点区域采用数据融合方法,使得节点承担的数据包数量少于m;在靠近汇聚节点区域采用压缩感知方法,此时节点需要传输超过m个数据包,而通过该方法使节点承担的数据量为m。在这种方案中,远离汇聚节点的节点所承载的数据量少于m,而靠近汇聚节点的节点所承担的数据包数量最多为m[20]。

一般来说,多条带数据收集(MSDG)方案的主要创新点如下:

(1) 提出了一种新颖的数据融合路由方案,使得网络中节点承担的最大数据量减少至⁄ ,显著提高了数据融合效率和网络寿命。MSDG方案通过数据融合在网络中集成数据,并仅沿一条路由路径将数据传输到汇聚节点。在一个数据采集周期内,只需一跳范围内的一个节点向汇聚节点传输m个数据包,而其他每个节点仅需发送自己的一个数据包。若一跳范围内有 个节点,在经过 个数据采集周期后,每个节点需要承担 个数据包。因此,每个周期内该节点平均传输( ) ⁄<( ⁄) +1,可有效降低节点承担的数据量,延长网络寿命。

(2) MSDG方案与以往方案相比,能够有效降低节点的能量消耗,并充分利用能量,使网络中的能量消耗得到有效平衡,从而提升网络性能。在MSDG方案中,网络被划分为多个条带,每个条带内的节点通过数据融合方法将数据传输至条带中心。当数据到达条带中心时,采用压缩感知方法。在每个条带中,只有条带中心的少量节点最多承担m个数据包,而大多数其他节点需要传输的数据包少于m个。换句话说,在MSDG方案中,网络中的大多数节点承担相对较小的数据量,因此节点的能量消耗较低。此外,网络中的条带轮流变换,使得各节点承担的数据量相对均衡。因此,MSDG方案在能量消耗性能方面优于以往方案。

(3)通过我们广泛的理论分析和仿真研究,我们证明了所提出的MSDG方案可以减少节点承担的数据量。与之前的最佳方案相比,MSDG方案中节点承担的数据包数量仅为之前最佳方案的21%。此外,网络寿命提高了近5倍,能量效率提升了5‐7倍,表明我们所提出方案的性能更优。

本文的其余部分组织如下:第2节回顾了相关工作。第3节描述了系统模型。第4节介绍了多条带数据收集 (MSDG)方案的细节。第5节提供了性能分析。第6节给出了实验结果的分析与比较,第7节为结论。

2. 相关工作

已经提出了一些方法来减少节点需要传输的数据量,从而有效改善某些网络性能,例如延迟、拥塞和网络寿命。一种传统的数据融合方法 [14‐17], 可将具有相关性的两个数据包融合成一个较小的数据包而不丢失信息。另一种方法是压缩感知方法 [18]。本节将讨论与这两种方法相关的一些研究工作。

2.1 数据融合方法

尽管数据融合方法旨在将多个数据包融合为较小的数据包,从而减少能量消耗[14‐17], ,但设计一种有效的数据融合方法仍是一个具有挑战性的问题。本文将数据融合方法分为以下几类:(1)第一类是路由驱动的数据融合方法[4, 14‐17, 21]。由于数据融合的前提是数据包在传输过程中相遇,因此路由驱动的数据融合方法的主要特点是尽可能使数据包相遇。(2)第二类是编码驱动的数据融合方法[22‐24]。该数据融合方法中数据聚合的主要手段是通过网络编码减少节点需要传输的 数据量 。该方法对路由关注较少,关键在于设计高效的 编码 ,主要目标是尽可能减少 数据量 。(3)融合驱动方法的主要目标是通过安排更多相关数据相遇来聚合相关数据[15] ,以获得更高的数据聚合效果。该方法通常与 路由方案 关系更密切,而与 网络编码 ( 数据压缩 ) [22‐24]关系较小。下文将对上述三种 数据融合方法 进行描述。

(1) 路由驱动的数据融合方法 [15]:该数据融合方法主要用于设计一种有效的数据融合路由方案,以使尽可能多的数据包进行融合 [4, 14‐17, 21]。最有效的数据融合方法是集合的融合函数,例如最大值、最小值和求和。在这种情况下,n个输入数据包合并后仅输出一个数据包。因此,形成了一种以汇聚节点为根的树结构,其中每个节点只有在接收到其所有子节点的数据并生成一个融合后的数据包后,才开始向上传输。因此,该方法具有较高的数据融合效率 [15]。

然而,在大多数应用中,数据融合并不生成1个输出,对应n输入,但通常会产生n输出,其中 n输入,是一个与融合系数相关的十进制数。即使未预先设计有利于数据融合的路由路径,网络中的数据包仍有一定概率在传输过程中相遇并进行数据融合。这种效应被称为随机数据融合路由[15, 17]。该方法对路由无特殊要求,在实际中应用最为广泛。然而,随机相遇的数据包比例不高,因此数据融合效率也较低。

Leandro Aparecido Villas 等人[21]提出了一种路由方法,可使数据包在前往汇聚节点的路径上有更高的相遇概率,从而提高数据融合效率。在此类路由中,首个通往汇聚节点路径上形成的节点,其到汇聚节点的距离记为0跳。通过跳数的传播,靠近已形成路径的节点会被吸引,通过该初始形成的路由路径将数据发送至汇聚节点,从而增加数据包相遇的概率,提升数据融合效率。

事实上,基于簇的无线传感器网络也可视为一种数据融合方法,其中每个簇内节点的数据都将通过簇头传输至汇聚节点[25]。梁S.等人[4]提出了一种RBCDR方案,该方案不直接将数据发送至汇聚节点,而是先在非热点区域进行环形路由。在环形路由(RBCDR)方案中完成一圈后,再采用最短路由方法将数据传输至汇聚节点。在RBCDR方案中,所有数据包都会汇聚到一起,因此数据融合率极高。

(2) 编码驱动方案 [15]。这些算法 [22‐ 24] 侧重于在源节点使用编码技术对数据进行压缩,从而减少需要传输的数据量。这些方案大致可分为两种不同的数据聚合模型 [6]:分布式信源编码方案(例如,斯莱皮安‐沃尔夫编码模型)[22, 23] 和显式边信息聚合 [24]。

(3) 融合驱动数据融合方案 [15]。与路由驱动方案不同,融合驱动方法不假设数据包之间存在相关性,因此只能在具有相关性的数据包之间进行数据融合。因此,该方案的重点在于如何融合相互关联的数据包,以通过数据聚合实现降低数据负载的目的 [4]。刘等人 [26] 提出了一种基于代表节点来减少需要发送到汇聚节点的数据量的方法。该方法的思想是,由于网络中多个节点感知到的数据值差异很小,例如当感知数据值小于某一阈值时可视为相同,因此一个节点的值可以用来代表所有感知值在某一阈值范围内的节点的值。这样,网络中少量节点的值即可代表整个网络的观测值,从而大幅减少需要传输的数据量。这种使用代表节点的方法也可被视为一种融合驱动方法。

2.2 压缩感知方法

压缩感知(CS)是一种有效的方法减少数据量。压缩感知理论不受经典奈奎斯特采样定理对采样频率严格要求的限制,可以在进行采样的同时实现压缩 [18]。根据压缩感知(CS)理论,假设信号 , -。对于长度为 n 的信号,可以通过标准正交矩阵 Ψ ∗ ,Ψ Ψ ‐ 的线性组合表示,如下所示:

Ψα ∑ ψ α (1)

其中Ψ 是一个列向量,并且是一个‐稀疏的列表示 。在K非‐零值存在于α中,其余 n K值为零或接近零,且 K ≪ n。 压缩感知理论表明,在某些条件下,无需发送大小为n的原始信号向量 ,而可以发送大小为的采样测量,如下所示:

, α K - Z Φ (2) 其中 Z 是大小为 × 的采样测量列向量, Z 和 Φ 是一个大小为 × n, Φ ∗( ≪ n) 的随机采样基矩阵。

根据压缩感知理论,为了确保在目标位置[19], 完美恢复数据,采样测量的大小应满足受限等距性质(RIP)。

K ( ) (3)

在公式3中,是一个很小的正数常量,K表示稀疏度,n是测量信号的长度。建议将的值设置为3K ≤ m ≤ 4K[18]。

压缩感知方法自Candes. E 等人于2006[18]首次提出以来,受到了广泛关注。Luo.C 等人[19]在大规模无线传感器网络的数据收集过程中应用了压缩感知方法。研究表明,压缩感知方法结合良好的路由方法可以优化网络能量的利用率。

在无线传感器网络中使用压缩感知方法进行数据收集的基本过程如下:假设网络中部署的节点数量为n,这些节点表示为, ]。每个节点收集的数据向量为, ‐。所收集的数据在某一域中是K稀疏的,且K ≪ n。然后,可以利用压缩感知进行数据收集。

如果采用非压缩数据收集方法,每个节点的数据将通过多跳路由以原始数据包的形式传输到汇聚节点。例如,在图1中,将其自身的数据包发送给 ,然后需要发送数据和 ,并继续将数据传输给 。此过程持续进行,直到收集所有数据并将其传输至汇聚节点。最终传输到汇聚节点的数据包数量为n[20]。

示意图0

在基于压缩感知的数据收集中,仅有少量的测量值,即数据权重的求和,被传输到汇聚节点。如图2所示,首先将其自身的随机系数Φ 与其自身数据相乘 ,然后将 Φ ∗ 发送给 。当接收到来自传输的数据后,会将 Φ ∗ Φ ∗ 转发给 。以相同的方式将数据发送给 ,依此类推。每个节点都将自身数据与随机系数相乘的结果连同接收到的数据一起转发给下一跳节点。最终,汇聚节点将接收到整个网络数据的观测值∑ Φ ∗ ,总观测次数为。如果整个网络的数据收集采用压缩感知方法,则所有节点均参与数据包的转发。该数据收集过程可表述如下:

p [Z Φ (4)

即:

Z Φ

压缩感知可以突破传统采样理论,使网络中必须传输的数据包最大数量从n减少到,从而有效延长网络寿命。然而,采用基于压缩感知的数据收集方法时,网络中的所有节点都承担数据(见图3(a))。如果网络仅使用数据融合方法,则远离汇聚节点区域的节点所承担的数据包数量,即节点需要传输的数据量,初始时小于。随着更多数据包的融合,靠近汇聚节点区域的节点需要传输的数据量大于。显然,若在远离汇聚节点区域采用数据融合方案,则节点需要传输的数据量小于;而在靠近汇聚节点区域采用压缩感知方法时,节点需要传输的数据量大于。因此,可降低网络的能量消耗。基于上述思路, Luo等[19]提出了一种混合压缩感知(混合‐CS)方法,该方法基于压缩感知的思想,如图3(b)所示。在图3中,加粗黑点表示采用CS数据收集方法,节点承担的数据量为;而非加粗黑点表示采用通用数据融合算法,节点承担的数据量随数据包数量[20]的增加而增加。

示意图1

示意图2

从上述研究可以看出,无线传感器网络中数据收集方法的主要目标是减少节点承担的数据量,节省能量,延长网络寿命,并确保汇聚节点收集的信息量不丢失。第一类数据融合方法涉及降低对数据之间相关性以及编码影响的限制。由于这些研究已经发展到很高的程度,因此在数据融合后进一步减少数据量非常困难[27]。压缩感知方法要求节点进行数据编码,虽然它有效减少了节点所需传输的数据量,但节点承担的数据量仍然较大。因此,寻找一种更高效的数据收集方案仍是一个具有挑战性的问题。

尽管通过减少网络中传输的数据量可以有效降低节点的能量消耗,但仍有一些不同的因素影响着节点能量消耗的降低。其中一种重要的方法是采用有效的MAC协议来降低节点的能量消耗[28, 29, 30] 。空闲监听是能量消耗的主要来源之一。在某些情况下,空闲监听与数据接收的能量消耗几乎相同[28, 30, 31, 32] 。因此,降低能量消耗的一个有效方法是减少空闲监听。传感器网络中常用的一种方法是占空比方法 [28, 30, 33, 34], ,该方法通过让节点在不需要进行数据操作时处于睡眠状态,从而有效减少节点的空闲监听。由于节点在睡眠状态下的能量消耗仅为工作状态下的1/100,因此应尽量使节点保持在睡眠状态以减少空闲监听,达到节能的目的。因此,占空比技术能够有效减少空闲监听并节省能量。

然而,这种技术也存在缺点,即数据传输的延迟可能会增加[28, 30], ,这种情况发生在节点必须等待睡眠中的转发节点唤醒后才能开始数据传输。在文献[33, 34], 中,佟等人提出了一种新颖且有效的方法,结合了占空比技术和流水线转发技术,以平衡能量消耗和分组交付延迟。因此,要有效降低节点的能量消耗,需要进行全面优化。

3. 系统模型

3.1. 系统模型

本文采用的网络模型与文献[4, 35]类似。在一个半径为的圆形区域中,随机分布着n个同质无线传感器网络节点。这些节点为, ]。所有节点服从密度为的泊松分布。网络所感知的数据为周期性数据采集类型,例如对农场等监测区域内的温湿度进行感知。每个节点在每一个感知周期生成数据,并将其传输至汇聚节点。节点在一个周期内收集的数据向量为, ‐ 网络寿命定义为节点能够存活的数据采集周期数。汇聚节点位于网络的中心。

3.2. 数据收集模型

本文使用了两种数据收集方法。一种是数据融合方法,另一种是压缩感知方法。这两种方法介绍如下。

1) 数据融合方法。对于数据融合模型,我们采用无损逐级多跳聚合模型 [4, 15]。在此数据融合模型中,多个输入节点的数据依次与源节点 的数据进行融合。只有当所有子节点和源节点完成数据聚合后,源节点才会将聚合数据包传输到下一节点。 表示节点 的原始数据包,而 S( ) 表示节点 的数据与节点 的数据之间进行数据融合的中间结果。简单来说, S 表示节点 当前数据融合的中间结果,而 T 是节点 与其所有子节点的数据进行数据融合后的最终结果。

当节点接收到由节点发送的数据包时,它将对接收到的数据包(即由节点发送的T)与当前节点的数据包(可能是节点的原始数据包,或节点进行数据融合后的中间结果S )进行聚合。

如果当前节点 的数据包是 ,并且从节点 接收到的数据包满足 T = ,即参与数据融合的数据包是原始数据包,则数据融合公式如下: T( )=最大值( ) ( )最小值( ) 其中 是节点之间的相关系数 )[4, 15]。该值越大,节点间的数据相关性越高,数据融合后的数据包长度越小。

(5)

当节点在数据融合中接收到节点的数据T 时,如果数据融合中的任何数据包都不是原始数据包,则数据融合公式表示如下:

S(S T ) max(S T ) ( )min(S T ) ,其中为遗忘因子,是一个小于1[15]的十进制数。S T 分别表示数据融合的中间结果和由子节点发送的最终结果,且S 和 T 中至少有一个不是原始

(6)

数据包2) 压缩感知方法。本文所使用的压缩感知方法与 [18, 20], 2 中的相同,其相关工作已在第节中讨论。由于本文的重点是使用压缩感知方法进行数据收集,而不是改进压缩感知方法,因此本文对压缩感知方法的关键要求是:网络中的节点数量为n,当采用压缩感知方法时,节点必须传输的数据量为 Z ,其中 Z为数据包的向量,其值在公式3中给出。

3.3. 能量消耗模型

本文采用了经典的能量消耗模型[4, 11, 14, 36] 。由于传感器网络中节点在数据接收和传输过程中的能量消耗占主导地位,因此本文同以往研究一样 [4, 11, 14, 36],仅考虑节点在数据传输和接收方面的能量消耗。发送数据的能量消耗见公式(7),接收数据的能量消耗见公式(8)。

{ () , (7) () (8)

其中 表示发射电路损耗。采用了自由空间(功率损耗)和多径衰落(功率损耗)两种信道模型。当传输距离小于阈值 时,采用自由空间模型计算功率放大损耗;当传输距离大于或等于阈值时,采用多径衰落模型。 和 分别为两种模型中功率放大所需的能量。本文中的上述参数来自参考文献 [4, 11, 36], 1,如 表所示。

表1:网络参数

符号 描述
阈值距离(m) 87
感知范围(米) 15
发射电路损耗(nJ/bit) 50
自由空间的功率放大空间(皮焦/比特/米2) 10
多节点的功率放大路径衰减(pJ/bit/m 4) 0.0013
初始能量 (J) 0.5

3.4. 问题描述

本文研究的主要问题是设计一种高效的数据收集方法,并优化两个性能指标:(1)网络寿命最大化; (2)能量有效利用最小化。

(1) 网络寿命最大值 与之前的研究一样[4], ,网络寿命指的是网络中第一个节点死亡时所经过的时间。第一个节点的死亡会影响网络的性能。节点的寿命取决于其能量消耗,而能量消耗主要与发送和接收的数据量成正比。假设节点 在一次数据收集周期中承担的平均数据量为 。根据能量消耗公式 (7)和(8),能量消耗为 。令 max( ) * n+,且令 为网络中节点的初始能量。因此,网络寿命可表示为公式(9)。根据公式(9),提高网络寿命的本质是减少传输数据量最大的节点所承担的数据量。

max() (9)

(2) 最大化能量的有效利用 网络能量的高效利用是指网络死亡时网络中已利用能量与初始能量的比率。网络能量的最大有效利用率可用以下公式表示:

max() min(∑ ∑ ⁄ )

T因此,n的总结,优化目标是以下方程: i i i i

{ max() max() min(∑ n ∑ n n ⁄ )

(10)

4. MSDG方案的设计

4.1 所提出方案的概述

MSDG方案的整体网络结构如图4所示。在 MSDG方案中,位于汇聚节点一跳范围内的节点直接将数据传输给汇聚节点,而网络的其他区域被划分为多个条带(见图4)。在每个条带中,其他节点的数据被路由到条带中心,并在路由过程中采用数据融合方法,如 图5所示。条带宽度由数据融合的特性决定:当数据包被路由至条带中心时,若数据包进行了融合,则数据将达到条带中心。如图5所示,条带宽度为 。以条带中心为界,条带被划分为两个具有相反路由方向的部分。(a)近汇聚节点侧的节点朝远离汇聚节点的方向将数据路由至条带中心,其宽度为 。该区域称为条带内区 (见图5)。(b)远离汇聚节点区域称为条带外区,其宽度为 ( )。该区域内的节点朝与条带内区节点相反的路由方向将数据传输至条带中心。由于条带中心处的数据包长度为,因此条带中心的节点使用压缩感知方法进行数据收集。这些节点被称为CS节点,而其他使用数据融合进行数据聚合的节点被称为聚合节点(见图5)。

示意图3

在MSDG方案中,数据收集具有以下特征:

(1) 网络被划分为多个条带(近汇聚节点条带中的节点直接向汇聚节点发送数据。该条带也可被视为一个特殊的条带)。

(2) 在每个条带中,节点的数据被路由到条带中心,并在路由过程中使用数据融合方法进行数据聚合。一个节点承担的数据包数量小于或等于 。在特殊情况下,当数据量超过 个数据包且数据无法到达条带中心时,采用压缩感知方法进行数据收集。然而,此类节点的数量非常少。

(3) 条带中心的CS节点使用压缩感知方法进行数据收集。一个节点承担的最大数据量为。

(4) 设置条带中心CS节点的一个起始节点,该节点使用压缩感知方法沿条带进行单周期路由并返回自身。这种沿条带的单周期路由称为CS路由。该条带内所有节点的数据都被融合到起始节点中,数据包的数量仍然为。起始节点的选择相对简单。可以通过首先预先选择从网络外围区域到汇聚节点的最短路由路径上的所有候选起始节点来实现。只有当这些候选起始节点是条带CS节点时,它们才能成为起始节点。图4所示网络中的红色节点是候选起始节点,那些既是CS节点又是候选起始节点的节点即为起始节点。

(5) 最外层起始节点向汇聚节点发起的最短路径称为会合路由(见图4),并且对每个经过的起始节点的数据使用压缩感知方法进行数据收集。这样,整个网络的数据被收集到汇聚节点。

(6) 由于每个条带中CS节点的最大负载,该条带被周期性细分,从而使CS节点由所有节点轮流承担以实现负载均衡的目的。另一方面,起始节点被随机重新选择并轮流担任,从而使网络能量消耗达到平衡。

与以往的方案相比,本文提出的MSDG方案具有以下优势:

(1) MSDG方案显著减少了节点承担的平均数据量,降低了能耗,并有效延长了网络生命周期。MSDG方案通过设计两种机制——(1) 条带和(2) 数据收集路由,有效减少了节点承担的平均数据量。根据 第2节的讨论,目前最优的方案是每个节点在每次数据收集周期中均需承担数据包。在CS方案中,网络中的每个节点都需要承担数据包。在混合CS方法中,部分节点承担的数据包较少,而靠近汇聚节点区域的节点则承担数据包。在本文提出的MSDG方案中,网络被划分为多个条带,每个条带中的大多数节点承担的数据包少于数据包数量,仅条带中心的CS节点需要承担数据包。因此,从整个网络的角度来看,网络中的绝大多数节点承担的数据量均少于数据包数量。

事实上,混合CS方法相当于网络中只有一个条带。在这个条带中,大量节点承担数据包。而在MSDG方案中,网络被划分为多个条带,每个条带中只有少量节点承担数据包。因此,承担数据包的CS节点数量大大减少。

然而,如果MSDG方案仅采用上述策略,虽然可以降低网络的能量消耗,但节点承担的最大数据量仍然是,因此无法有效提高网络寿命。因此,MSDG方案通过采用压缩感知数据收集方法,引入了另一种机制来提升网络寿命。该方法的目标是创建一条聚合路由,具体如下:在压缩感知方案中,节点将对接收到的数据进行计算,然后转发经过处理的数据。尽管转发的数据包数量为,但这些数据包包含了全部信息。利用这一特性,如果所有数据包在传输到汇聚节点之前能够被聚合,则整个网络的信息都将包含在一个长度等于各数据包之和的大数据包中。因此,汇聚节点只需接收这样一个大数据包即可获取整个网络的信息。由此可见,在MSDG方案中,将网络中所有数据包压缩成一个长度为数据包总和的大数据包的关键,是构建一条会合路由,将条带起始节点中的所有数据汇聚在一起。这样,在数据到达汇聚节点之前,所有数据包已在路径上完成聚合,然后再传送给汇聚节点。在这种情况下,在一个数据收集周期中,只有少量节点需要承载数据包。这些节点包括条带中心的 CS节点以及会合路由上的节点(见图4和图5)。其他节点承担的数据包较少。特别重要的是,在汇聚节点一跳范围内的只有一个节点需要承担数据包,而其他节点只需发送一个数据包。在MSDG方案中,条带和会合路由交替进行。经过若干轮交替后,从统计角度来看,网络节点所承担的数据量相对均衡(此处的均衡是指与汇聚节点距离相同的节点所承担的数据量均衡)。因此,可以有效减少节点承担的数据量,并将网络寿命提高约倍。

(2) MSDG方案具有高能量效率。能量效率性能主要体现在两个方面:一是数据收集每轮次的平均能耗较低;二是能耗应均衡。与之前的方案相比,本文提出的MSDG方案在这两方面的性能表现更优。首先,关于每轮次平均能耗的讨论已表明, MSDG方案优于以往方案。其次,MSDG方案在能耗均衡方面也优于以往方案,原因如下:在混合CS方法中,远离汇聚节点区域的能耗低于靠近汇聚节点区域的能耗。距离汇聚节点最远的节点仅承担1个数据包,而靠近汇聚节点区域的节点则承担多个数据包,因此最大值与最小值的比率为。然而,在MSDG方案中,CS节点和条带轮流执行任务,从而实现了能耗均衡。相比之下,CS方案中的每个节点都承担数据包传输任务,虽然该方案的能耗较为均衡,但节点的能量消耗非常高。

示意图4

4.2 MSDG方案的设计

本节详细讨论了MSDG方案中的数据收集方法。MSDG方案中的数据收集包含以下主要步骤:

(1) 条带划分。MSDG方案的主要组成部分由多个条带构成。因此,MSDG方案的第一步是将网络划分为条带。在给定的网络中,条带宽度可以由数据融合的特性决定。只要确定了最外层条带中心与网络边缘之间的距离 ,由于每两个条带中心之间的距离为,因此第个条带中心的位置就可以确定。因此, ( )。此外,当下次第一个条带中心到网络边缘的距离发生变化时,网络中所有条带的位置都会随之调整。因此,MSDG方案中的条带划分变得更加简单。首先,汇聚节点在网络边缘随机选择一个节点 ,并给出第一个条带中心到网络边缘的距离以及参数。然后,该节点发起到汇聚节点的最短路径,所有经过此路径的节点即为候选起始节点。如果某个候选起始节点比其他候选起始节点更靠近 ,则该候选起始节点成为起始节点。因此,通过上述方法,即可找到条带上所有的起始节点,每个起始节点代表对应条带中心的初始节点。从而,所有条带的划分得以完成。

(2)启动CS路由,并形成所有CS节点。每个起始节点发起相同的跳数路由,即起始节点选择右侧距离汇聚节点跳数相同且最远的节点作为下一跳节点。该过程持续进行,直到路径返回到其自身节点。此路径上的所有节点即为CS节点。各条带中心的CS节点由此形成。

(3) 形成从聚合节点到条带中心的路由。最初,所有聚合节点到条带的跳数为 。首先,压缩感知(CS)编码节点将其到条带的跳数设置为0,然后广播自身到达条带的跳数。接收到广播跳数的节点将该值与其自身的跳数进行比较。如果广播中的跳数加1小于其自身存储的跳数,则该节点将其到条带的跳数更新为广播跳数加1。经过此过程后,网络中的每个节点都拥有到最近条带的跳数以及用于数据转发的父节点。

(4)从聚合节点到条带中心的数据融合路由。根据步骤(3)中的数据融合路由,每个节点可以找到通向条带中心CS节点的父节点。因此,每个节点向其父节点发起路由。每个节点融合其所有子节点的数据,然后将数据转发给父节点,直到数据到达CS节点。经过此过程后,网络中所有节点的数据均已传输至CS节点(注意:在汇聚节点一跳范围内的节点直接将数据发送给汇聚节点)。

(5) 每个条带包含一个聚合数据包。起始节点沿类似于步骤(2)中的圆形路径发起路由。与步骤(2)中没有数据包传输且路由负载很轻不同,本步骤的路由使用压缩感知方法来收集数据包。因此,每个条带中的数据都被收集到起始节点上。

(6) 汇聚每个条带中起始节点的数据,并将其路由至汇聚节点。在步骤(5)之后,每个条带的数据已被汇聚到其起始节点。因此,距离汇聚节点最远的起始节点发起通往汇聚节点的会合路由。该路由与步骤1中的路由类似。然而,在步骤(1)的路由中,节点不传输数据。在会合路由中,每个起始节点接收数据包,并将其自身数据包进行压缩感知处理,然后转发数据。其他候选起始节点则仅直接传输数据包。因此,整个网络中收集的数据被传输到汇聚节点。

(7) 在这种网络结构中运行一段时间后,重复相同的步骤(1)-(6),但采用不同的选定的条带中心位置和不同的选举会合路由,以平衡整个网络节点的能量消耗。

MSDG方案的伪代码如算法1所示。

算法1: MSDG方案

INUT: , // 是第次数据收集中最外层条带到网络边缘的距离, 是条带的宽度。

OUTPUT: // 是汇聚节点对整个网络进行数据收集的结果。

阶段1:条带划分

1: 运行路由扩散协议[21] ,使得每个节点获得其到汇聚节点的跳数以及路由中的父节点;

2: 随机获取一个位于网络边缘的节点 ;

3: 节点发起到汇聚节点的最短路径路由,路由路径为 ;

4: 将中的所有节点设为候选起始节点,候选起始节点集合记为;

5: 设 ( )*+;

6: 令* + | ,且比中的其他节点更靠近;

7: 将中的所有节点设为起始节点;

阶段2:CS节点路由

对于每个节点在Do

9: While n Do

10: 被标记为CS节点;

11: n

12: 结束循环

13: 结束循环

阶段3:到条带中心的跳数形成

14: CS节点将其到条带的跳数标记为0,而其他节点将其到条带的跳数标记为;

15: 每个CS节点广播其到条带的跳数为0;

16: 接收到广播的节点若发现存在更短的到条带的路由路径,则会更新其到条带的跳数,并将发送广播的节点作为其父节点;

17: 每个更新了其到条带跳数的节点将重新广播其到条带的跳数;

18: 重复步骤 16 和步骤 17,直到跳数不再变化 不再更新;

阶段4:数据聚合

19: 对于 每个没有子节点的聚合节点 节点,或已接收其所有子节点的数据 Do

20: 聚合其自身的数据与所有接收到的da‐ta;

21: 将融合后的数据传输到父节点;

22: 结束循环

阶段5:压缩感知数据聚合

对于每个起始节点 执行

24: 当 n 执行

25: 将其数据发送到 n ;

26: n

27: 使用压缩感知方法进行数据聚合;

28: 结束循环

29: 结束循环

第6阶段:会合路由

30: 设 为距离最远的起始节点汇聚节点

31:
第7阶段:在条带位置后重复上述过程 更新了;

38: 更新 ;

39: 重复阶段1到阶段6;

5. 理论性能分析

本节中,MSDG方案的性能指标主要基于理论分析得出。首先,从理论上分析并比较了在数据融合、压缩感知[18], 、混合压缩感知[19]以及MSDG方案下节点的最大数据接收与传输能力。理论分析结果表明,本文提出的MSDG方案在性能上得到了显著提升。

下文首先对MSDG方案中节点承载的数据量与其他方案中节点承载的数据量进行总体对比。接着,详细给出 MSDG方案中单个节点所承载的数据量,并与其他方案进行比较。

定理1 :在MSDG方案中,一轮数据收集过程中节点承担的最大数据量平均为(( ) ⁄),其中为汇聚节点一跳范围内的节点数量。相比之下,CS方案中节点承担的最大数据量为。MSDG方案中节点承担的最大数据量与 CS方案中节点承担的最大数据量的比率为 ( −) 。

证明 :根据之前的分析,位于汇聚节点一跳范围内的节点承担的数据量最大。在MSDG方案中,汇聚节点一跳范围内的一个节点承担了数据包的转发任务,而其他节点仅需承担1个数据包,因为它们只需将自身的数据包发送至汇聚节点。经过多轮数据收集后,每个节点所承担的数据包数量为 ,每轮中每个节点承担的平均数据量为 (( ) ⁄)。相比之下,在压缩感知方案中,每个节点所承担的数据量为 。因此,MSDG方案中节点所承担的最大数据量与压缩感知方案中最大数据量的比率为 ( −) 。

由于. ( −) /<. /,MSDG方案可以极大地延长网络寿命。

5.1 不同方案下数据接收和传输的分析

根据公式(9),网络寿命由网络中能量消耗最大的节点决定。因此,在比较网络寿命中的压缩感知、混合压缩感知和MSDG方法的数据融合性能时,分析和比较是在某一运行时间段内节点的最大能耗上进行的。为了使讨论更加清晰和方便,表2总结了本节中相关符号的含义和描述。

表2: 符号及说明

符号 描述
网络半径
n 整个区域的节点总数
w 环形区域宽度
节点的传输半径米
ρ 节点数量的分布密度
σ n和之间的相关系数
σn σ 0 05为默认设置
S Fu ion 功能
j 节点到的跳数
θ 环形区域的圆心角(见图6)
B 距离输入端 x 的矢量区域
圆心角 θ n 区域 B 中的节点数量
节点接收到的数据量在
B τ 由节点生成的数据包大小
node
φ节点承担的数据量
5.1.1 数据融合方案下的数据负载

示意图5

在数据融合方案下,节点承担的数据量计算如下。如图6所示,在距离汇聚节点为、中心角为θ 的扇形区域B 中,由于节点的传输半径为,B 中的节点必须接收来自区域B 内节点发送的数据。B 中的节点接收并转发来自区域B 内节点发送的数据,依此类推。假设 表示B 中一个非常小的弧度,表示B 中小区域的宽度。那么,可计算B 中扇形区域的面积。

定理2 :假设在汇聚节点的一个传输半径范围内,某节点与汇聚节点的距离为,那么在整个网络完成一轮数据传输后,该节点所传输的数据量计算如下:

n {φ S 2 ( ) φ ( ) τ 3 Z*0 ⌊ ⁄ ⌋ - φ ( −) − τ Z ⌊ ⁄ ⌋ (11)

证明 :在非压缩感知方案中,数据负载最大的节点位于距离汇聚节点最近的位置,即标记为0层的环形区域。位于距离x<r处的节点需要承担来自位于距离x+r处节点发送的数据。令n 表示距离汇聚节点为x的节点数量,n 表示距离汇聚节点为 x+r的区域B 中的节点数量。 nn ( ) . 表示距离汇聚节点x的节点接收到的数据量,而 表示距离汇聚节点x的节点接收到的数据量。当某一层的节点接收到外层节点发送的数据时,它们将自身产生的数据添加到接收到的数据中,并向内层转发,如下所示:

  • ( ) ( ) (12)
    φ S*( )τ+ S 2 φ τ3 (13)

可以计算出,位于该位置的节点必须承担以下数据量:

φ S 2 φ τ3 (14)

类似地,节点在({v1})位置需要处理的数据量为: , 在 (Z ) 位置进行的操作如下:

φ ( −) − S 2 ( −) ( −) φ ( −) − τ3 (15)

节点在(Z )位置必须承担的数据量如下:

n φ ( −) − S 2 ( −) ( −) φ ( −) − τ3 (16)

最外层的节点不接收数据,其传输的数据量为自身的数据包大小,如下所示:

φ ( −) − τ (17) █

5.1.2 CS方案下的数据负载

CS方案对每个节点使用压缩。根据压缩感知原理,每个节点接收的数据包数量和传输的数据包数量均为 σn 。当区域内节点总数n确定时,该值也随之确定,且σ通常在0.05‐0.25[18]之间。因此,在CS方案中,单个节点需要承担的最大数据量为σnτ。

5.1.3 混合CS方案下的数据负载

在外围区域,当数据量小于 时,混合CS方案中节点承担的数据量与数据融合方案中的相似。在靠近汇聚节点区域,当数据包数量累积超过 时,节点开始压缩数据。因此,混合CS方案中节点承担的数据量与压缩感知方案中的相似。因此,混合CS方案中承担最大数据量的节点的数据收集与压缩感知方案中的相似,即该节点接收 数据包并传输 数据包。

因此,当 n足够大时,在混合压缩感知方案中,节点承担的最大数据量为0.05nτ 。然而,当n不够大时,混合压缩感知不会切换到压缩方案,此时节点承担的最大数据量小于,与数据融合方案中的情况类似。本文所考虑的网络为大规模网络,因此忽略n不大的情况。

5.1.4 MSDG方案下的数据负载

本节中主要符号的含义见表3。

表3: 符号

符号 描述
节点到距离的余数
条带中心除以
Ψ 位于第{v1}条带内部且距离<d 距簇头节点<的节点所承担的数据量的节点所承担的数据量
Ψ 位于第{v1}条带外部且距离<d 距簇头节点<的节点所承担的数据量的节点所承担的数据量
Θ 位于该节点接收的数据量第j个条带内部,距离压缩感知‐d node
Θ 位于该节点接收到的数据量 第j条带外侧,距离d处的簇头节点
第j个压缩感知条带到汇聚节点的距离

MSDG方案在网络中创建多个条带。在每个条带中,节点与CS节点之间的数据融合方法类似于第5.1.1节中的数据融合方法。也就是说,条带内的节点使用单跳或多跳路由连接到 CS节点。在MSDG方案中,假设条带宽度为 ,条带ID为 j =0 1 2 ⌊ ⌋ 1, , ,…,/ ‐ 。节点的数据:非 CS节点承担的数据量按如下方式计算:

推论1 : 假设第j条条带距离汇聚节点的距离为 L j (0 )。位于第j条条带内侧、距离 κ | κ 20 ⌊ ⌋ 3 ⌊ ⌋ 到条带中心的节点所承担的数据量如下:

{ Ψ S 2 −( ( )) −( ) Ψ ( ) τ3 y*0 ⌊ ⁄ ⌋ - Ψ (,/-−) τ y ⌊ ⁄ ⌋ (18)

证明 : 假设第j个条带到汇聚节点的距离为 L j (0 ),节点的传输半径为。位于第j个条带内部的节点到达CS节点的最大跳数为⌊/⌋。对于距离 κ | κ 0 ⌊ ⌋ ⌊ ⌋ + κ ⌊ ⌋ * 条带中心的节点,如果 ,该节点不转发数据,其承担的数据量为τ。根据定理2,当向CS环传输数据时,较远的节点需要寻找中继节点进行数据转发。位于(κ )的节点的中继节点是位于(κ )的节点。位于(κ )的节点接收到的数据量如下:

Θ S 2 − ( ( , / -− ) ) − ( ( , / -− ) ) τ3 (19) 在Θ 数据包与节点自身采集的数据聚合后,聚合数据被路由到压缩感知环并同时进行数据融合。该过程与定理2中的过程类似。因此,推论1可以获得。

推论2 : 假设第j条带与汇聚节点之间的距离为 L j (0 )。位于第j条带外侧、且到条带中心的距离为 κ | κ 20 ⌊ − ⌋3 ⌊ − ⌋ 的节点所承担的数据量如下:

{ Ψ S 2 ( ( )) ( ) Ψ ( ) τ3 y*0 ⌊( ) ⁄ ⌋ - Ψ (,( −)/-−) τ y ⌊( ) ⁄ ⌋ (20)

证明 :位于第j条带外部的节点到达条带中心的最大跳数为⌊ − ⌋。距离 ⌊ − ⌋ 处的节点不转发数据,该节点承担的数据量为τ。其他节点需要通过多跳路由将数据传输至CS节点。距离条带中心.⌊ − ⌋ /的节点需要由距离.⌊ − ⌋ /处的中继节点进行转发。根据定理2,距离.⌊ − ⌋ /处的节点接收到的数据量如下:

Θ S{ ( (0 1−)) ( (0 1−)) τ} (21)

在 数据包与节点自身收集的 τ数据聚合后,聚合数据被路由至条带中心,同时进行数据融合。因此,可得到推论2。

Θ █

与之前的方案相比,MSDG方案的构建需要节点承担一定的消息转发,从而消耗一定的能量。以下对 MSDG方案中节点所承担的消息数量进行分析。由于此处节点承担的数据量与之前分析中的数据包数量不同,指的是MSDG构建过程中节点间传输的消息数量,显然,消息中的数据位长度远小于数据包。MSDG方案的构建主要包含以下三个操作:(1)条带划分。此步骤中从最外层到汇聚节点形成最短路径;(2)启动CS路由。每个条带中心在此步骤中围绕汇聚节点发起路由;(3)形成从聚合节点到条带中心的路径。此步骤中,每个节点广播一次。因此,MSDG方案中节点所承担的消息数量由以下定理3给出。

定理3 : 设圆形区域的半径为,条带宽度为 U 。在 MSDG方案中,节点在构建MSDG方案时承载的平均消息量用公式22表示。

{ ℕ (⌈ ⁄ ⌉ ∑ ( π( )) ⌈(R−) ⁄ ⌉− )(π ) ⁄ ℕ (⌈ ⁄ ⌉ ∑ ( π( )) ⌈(R−) ⁄ ⌉− )(π ) k ⁄ (22)

证明 : 在构建MSDG方案时需要三个操作。每个操作中节点需要发送的消息数量计算如下。

(1)条带划分。此阶段仅创建一条从网络最外层边缘到汇聚节点的路由。由于网络半径为 ,节点发送半径为 ,因此构建该路由需要发送的消息数量为 N ⌈ ⁄ ⌉,接收的消息数量为 N ⌈ ⁄ ⌉ 。

(2) 启动CS路由。在此阶段,每个条带的中心区域执行环形路由。由于条带宽度为 ,条带数量为 ⌈( ) ⁄ ⌉。对于距离汇聚节点为 Y 的条带,环形路由传输的消息数量为:N y ⌈ πY ⁄ ⌉=⌈ πY⌉。接收的消息数量与传输的消息数量相同:N y ⌈ πY⌉。当条带位于网络最外层位置时,其周长最大,因此其消息负载也最大。此时,该阶段传输的消息数量为 N ∑( π( )) ⌈(R− ⁄ ⌉− ) ,接收的消息数量为 N =N 。

(3). 从聚合节点到条带中心形成一条路由。在此阶段,每个节点发送一个广播包。由于节点平均度为k,每个节点接收到的消息数量为k。

总之,在构建MSDG的过程中,平均发送的消息数量N和接收的消息数量N如下所示:

ℕ (ℕ ℕ )(π ) ⁄ +1 =(⌈ ⁄ ⌉ ∑ ( π( )) ⌈(R−) ⁄ ⌉− )(π ) ⁄ +1
ℕ (ℕ ℕ )(π ) ⁄ +k= (⌈ ⁄ ⌉ ∑ ( π( )) ⌈(R−) ⁄ ⌉− )(π ) ⁄ + k █

根据定理3,在构建MSDG方案时,节点所承担的负载非常小。原因如下:(1)消息主要包含节点ID,其长度通常比包长度短一个数量级;(2)MSDG构建完成后,网络会稳定运行一段时间,在经过多轮数据收集后才需要重新构建MSDG,而数据收集是定期进行的。因此,构建MSDG的消息负载小于数据收集的负载。(3)如定理3所示,消息负载主要由广播引起。发送一条消息时,将接收到k条消息,但(⌈ ⁄ ⌉ ∑( π( )) ⌈( R− ⁄ ⌉ − ) ) ( π ⁄ ) 的值远小于1。因此,MSDG方案本身的能量消耗非常小。

5.2 数据接收和传输的比较

在不同方案下

本节中主要符号的含义见表4。

表4: 符号

符号 描述
Ω 总数据量的最小值 在第j‐条带中执行
Ω 总数据量的最大值 在第j‐条带中执行
Υ̅ 承担的平均数据量的最小值 在第j条带中承担的
Υ̅ 承担的平均数据量的最大值 在第j条带中承担的
ω 在第数据j轮传输过程中,条带承担的总数据量。

MSDG方案通过条带和CS节点的轮换来平衡网络能量消耗。经过一段时间的运行时间后的平均能耗可以反映数据收集方案的真实性能。对于MSDG方案,在经过多轮数据收集后,每个节点的累积数据量相似,可以认为整个网络的数据近似均匀地分布在所有节点上。

∑ ∑ q q /n (23)

q 表示在第 ‐ 轮数据传输过程中,第 j 条带中第 q 个节点承担的数据量。c 表示轮数,n 是第 j 条带中所有节点的总数。一轮数据传输过程中整个网络承担的总数据量用 ω 表示,第 j 条带在一轮数据传输过程中承担的总数据量用 ω 表示。

∑ ∑ q q /n ω/n ω/n (24)

因此,我们计算节点在一轮数据传输中承担的平均数据量,并用它来替代不同轮次数据传输中节点承担的平均数据量。由于MSDG方案中节点的轮换,ω/n 可以表示在MSDG方案中一轮数据传输所承担的数据量。

,

定理4 :设圆形区域的半径为,条带宽度为 U 。在 MSDG方案中,第j层(j=0,1,2,… ⌊/⌋ )的节点在一轮数据传输中承担的最小和最大数据量分别用公式 25和公式26表示:

Υ̅ U τ π U τ(( j) π πjU)θτ ( ) ρπ 2 (25)
Υ̅ U τ ( π ) U τ(( ) ρπ 2 − ( π ) U)θτ ( ) ρπ 2 (26)

证明 条带在网络中的移动 如果条带中心距离汇聚节点最远,即第j个条带中心位于(j )。由于节点的传输半径为,条带中心内的CS节点数量为( π(j ) ) ⁄= π( j )U。当第j个条带中心位于j时,条带中心内的 CS节点数量为πjU。

: .

1). 当第 j个条带中心位于 j时,环形区域中承担的数据量由以下几部分组成:其一是会合路由中由外层转发的数据包。在每一层中,有U个候选起始节点转发数据,每个数据包的长度为。因此,承担的总数据量为U τ。第二部分是CS路由中节点承担的数据量。路由中的CS节点数量为πjU,每个节点转发1个长度为的数据包,承担的总数据量为πjU τ。第三部分是条带内数据融合所产生的数据量。条带内的节点数量为π((j )) ‐ π(j)=( j ) π 减去CS节点的数量,结果为( j π πjU )。设每个节点在数据融合过程中承担的平均数据量为θτ, θ()。则我们有:Ω U τ πjU τ(( j ) π πjU) θτ (27)

因此,在MSDG方案中,每个节点在每轮数据收集过程中承担的平均数据量如下:

Υ̅ U τ π U τ(( j ) π πjU)θτ ( )ρπ 2

2). 当第‐个条带中心位于(j )时,该圆形条带区域承担的数据量如下:

Ω U τ( πj )U τ(( j ) π ( πj )U)θτ (28)

因此,每个节点在一轮数据收集中承担的平均数据量如下: ,

Υ̅ U τ( π )U τ(( )ρπ 2 −( π )U)θτ ( )ρπ 2

表5: 所承担数据量的汇总

一轮数据传输中承担的最大数据量 生命周期
数据融合 φ φ
压缩感知和混合‐CS τ τ
MSDG ( )τ Υ ̅
5.2.1 数据融合、压缩感知和中的数据负载比较 混合CS方案

在本节中,我们比较不同方案下的数据量在不同的数据收集方案中进行。网络参数设置如下:节点总数为800~ 2000,分布区域半径为= 300,节点的最大传输距离为=15。在数据融合方案中,承担最大数据量的节点位于汇聚节点的一个传输半径范围内。因此,我们主要分析汇聚节点一个传输半径范围内的区域

示意图6

图7和图8分别展示了数据融合方案和CS方案中的数据负载。从图7可以看出,在距离汇聚节点一跳的范围内,数据融合方案的数据负载超过了CS方案(见图8)。因此,CS方案改善了网络中节点的数据负载,且CS方案优于数据融合方案。如图8所示,CS方案中节点的最大数据负载随着节点总数的增加而增加。

根据压缩感知原理,混合CS方案中的最大数据负载与CS方案相同。然而,当数据负载小于时,混合CS方案中节点的数据负载小于,而CS方案中所有节点的数据负载均为。换句话说,混合CS方案中单个节点的最大数据负载与CS方案相同。但对于整个网络而言,整体数据

混合CS方案的负载小于CS方案,这意味着混合CS方案优于CS方案。因此,MSDG方案主要与混合CS方案进行比较。

5.2.2 混合CS方案与MSDG方案中数据负载的比较

处的平均数据负载)

图9和图11分别显示了MSDG方案中节点在 j 和(j )处的平均数据负载。图10和图12分别提供了混合CS方案中节点的最大数据负载与MSDG方案中最大数据负载的比率。如图10所示,当n 800时,混合CS方案中节点的最大数据负载超过MSDG方案的10倍。由于网络寿命由能量消耗最多的节点决定,而节点的能量消耗与其数据负载成正比[4], ,这表明MSDG方案理论上可将网络寿命提高至少4倍。从图10和图12可以看出,n越大,接收和传输的数据负载减少越多。也就是说,网络规模越大,MSDG方案在降低能量消耗方面的效果相对于其他方案越好。

5.3 能量效率

表6: 符号

符号 描述
初始能量 gy
节点数量 Z
划分区域中的层数 分布式节点
j 条带的序列号,标记为 j=0 1, 2 ,⋯⋯, ⌊/ ⌋‐1 从内到外
最先耗尽的层的标签 能量
θ 节点的剩余能量百分比
第j层 第j层的剩余能量
剩余能量 gy整个网络
Ψ Ener gy网络的效率

能量效率指的是网络中能量被有效利用的比率,即能量剩余率越低,能量的有效利用率越高。

MSDG方案的能量效率分析如下:

定理5 :在MSDG策略中,最低的有效利用率如下:

Ψ ∑ , 2( )( ̅ − ̅ )/ ̅ - R2 (29)

证明 : 位于距离汇聚节点一跳范围内的节点将数据直接传输到汇聚节点。在每一轮中,一个节点传输的数据量为τ。在靠近汇聚节点区域,一个节点会从外部条带转发大小为τ的数据包。每个节点在一轮中平均传输的数据量为̅Υ Υ̅ (τ τ)/π 。对于其他环形区域中的节点,根据公式(4‐5),每轮单个节点最小和最大平均数据传输量分别由公式25和公式26给出。

n d n n n p

假设第‐层节点的能量最先耗尽。能量的有效利用率由不同层之间的差异决定。假设最先耗尽能量的条带在每轮数据传输中以̅Υ 的形式消耗初始能量,而其他层以̅Υ 的形式消耗初始能量,其中j 。即,某些层仍然存在剩余能量,节点的剩余能量百分比为:

θ (Υ̅ Υ̅ )/Υ̅ (30)

然后,第 th 层如下所示: e remaining energy of the j th - π ( j )(Υ̅ Υ̅ )/Υ̅ (31)

整个网络的剩余能量如下 : ∑ π ( j )(Υ̅ Υ̅ )/Υ̅ − (32)

网络的初始能量为 ,最终的能量有效利用率为如下: π ,

Ψ ∑ , ρπ 2 ( )( ̅ − ̅ )/ ̅ - ρπR 2 (33)

因此,这是上述公式在简化后的结果。 , p n pl n

图13显示了MSDG方案中网络节点数量增加时节点的能量利用率。从图13可以看出,MSDG方案中的能量利用率可达约74%。与10%的能量利用在[25],中提出的通用方案中,MSDG方案的收敛速率实现了显著提升。

6. 实验结果和分析

使用OMNET ++进行实验[37] 。实验主要关注以下性能方面:(1)网络中每个节点的能量消耗;(2)每个节点承担的数据量;(3)整个网络的寿命;(4)网络的剩余能量或能量利用率。

6.1 节点的数据负载

在MSDG方案中 , 网络中不同位置节点承担的数据量如图15所示。从 图15可以看出,条带内CS‐节点的数据负载大于非环节点。由于环形路径上的节点承担了较大的数据量,因此 MSDG方案需要在一段时间后改变环形路径的位置,使得上一轮数据收集中承担较大数据量的节点在下一轮中减少其数据负载。此外,条带内的每个节点轮流作为 CS‐节点,以实现能量消耗的均衡。如图16所示,在 MSDG方案中,

每个条带中的环节点在每轮数据收集中,经过10轮后从内到外依次轮换。此外,担任过环节点的节点比未担任过环节点的节点能量消耗更大。在每一轮中,CS节点的轮换基本能够平衡能量消耗,尚未担任CS节点的节点消耗的能量较少。与混合CS方案相比,我们的方案动态建立数据收集中心,并持续轮流变化,经过多轮后承担的平均数据量减少且更加均衡,这意味着网络寿命得到提升。

6.2 网络的能量消耗

图给出了节点在不同情况下的能量消耗17 - 对应于图15中不同位置的结果。由于节点的数据负载与能量消耗之间呈线性关系,因此图17的趋势与图15大致相同。图18显示了经过一段时间后MSDG方案与混合 CS方案的能量消耗对比。根据比较结果,在混合CS方案中,近汇点节点的数据负载大于其他节点,能量消耗仍然不够均衡。然而,在MSDG方案中,能量消耗比混合CS方案更加均衡。

6.3 能量消耗与效率

图19展示了MSDG方案与混合CS方案之间的最大累积数据负载及其比率。从图19(a)可以看出,在第一轮数据收集时,MSDG方案中节点承担的最大数据量与混合 CS方案基本相同。从第二轮开始,混合CS方案中节点承担的最大数据量迅速上升,而MSDG方案中节点承担的最大数据量增长相对较慢。这是因为CS节点环在每一轮中轮流改变位置,上一轮作为CS节点的节点在下一轮数据收集中只需承担较小的数据量。这种动态方法能够将网络负载分配到各个条带中。从实验结果可以看出,当数据收集轮数达到6轮时,MSDG方案的能量消耗仅为混合CS方案的1/5,即网络寿命提高了五倍,这表明了该方法的有效性

MSDG方案。

6.4 网络能源利用率

能量效率的实验结果如图20所示。与实现21%能源利用率的混合CS方案相比,MSDG方案策略获得了61% 的能源利用率,且剩余能量率降低。MSDG方案的能源利用率提高了3倍,证明了本文提出的MSDG方案的有效性。

7. 结论

本文中,MSDG路由方案结合了压缩感知与路由方案,改变了以往以汇聚点为中心的路由方案。首先,网络被划分为多个条带。在每个条带中,聚合节点采用数据融合方法收集数据并传输至条带中心。条带中心的 CS节点采用CS方案进行数据收集。MSDG方案充分利用了压缩感知方法的特性,多个数据包仍可融合为一个数据包,因此每个条带中的数据可以使用CS路由方法聚合为长度为的数据包。然后,采用会合路由将条带中的所有数据以长度为的数据包形式传输到汇聚节点。此外,条带和CS节点通过轮换实现均衡的网络负载。实验结果和理论分析表明,MSDG方案能有效提高网络寿命。

尽管MSDG方案能显著降低节点的数据负载并延长网络寿命,但其构建过程较为复杂,且采用的是集中式控制方法。因此,MSDG方案在实际应用中可能需要复杂的控制机制。未来,我们将进一步研究自适应和分布式方法,以降低协议的复杂性。

Delphi 12.3 作为一款面向 Windows 平台的集成开发环境,由 Embarcadero Technologies 负责其持续演进。该环境以 Object Pascal 语言为核心,并依托 Visual Component Library(VCL)框架,广泛应用于各类桌面软件、数据库系统及企业级解决方案的开发。在此生态中,Excel4Delphi 作为一个重要的社区开源项目,致力于搭建 Delphi 与 Microsoft Excel 之间的高效桥梁,使开发者能够在自研程序中直接调用 Excel 的文档处理、工作表管理、单元格操作及宏执行等功能。 该项目以库文件与组件包的形式提供,开发者将其集成至 Delphi 工程后,即可通过封装良好的接口实现对 Excel 的编程控制。具体功能涵盖创建与编辑工作簿、格式化单元格、批量导入导出数据,乃至执行内置公式与宏指令等高级操作。这一机制显著降低了在财务分析、报表自动生成、数据整理等场景中实现 Excel 功能集成的技术门槛,使开发者无需深入掌握 COM 编程或 Excel 底层 API 即可完成复杂任务。 使用 Excel4Delphi 需具备基础的 Delphi 编程知识,并对 Excel 对象模型有一定理解。实践中需注意不同 Excel 版本间的兼容性,并严格遵循项目文档进行环境配置与依赖部署。此外,操作过程中应遵循文件访问的最佳实践,例如确保目标文件未被独占锁定,并实施完整的异常处理机制,以防数据损毁或程序意外中断。 该项目的持续维护依赖于 Delphi 开发者社区的集体贡献,通过定期更以适配版开发环境与 Office 套件,并修复已发现的问题。对于需要深度融合 Excel 功能的 Delphi 应用而言,Excel4Delphi 提供了经过充分测试的可靠代码基础,使开发团队能更专注于业务逻辑与用户体验的优化,从而提升整体开发效率与软件质量。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值