瞿 霞,华建祥
(福建林业职业技术学院 自动化工程系,福建 南平 353000)
物联网是新一代信息技术的重要组成部分[1]。从技术架构看,物联网感知层是物联网的基础和核心,由于感知层中的节点将采集到的信息传递到物联网的上层作进一步处理与分析,因而感知层也是信息采集的关键部分。节点部署是物联网感知层网络工作的基础,对网络的运行状况和寿命有很大的影响。网络节点的部署问题涉及到覆盖、连接和节约能量消耗3个方面,因此物联网的感知层为了实现更好的感知效果,需要对网络上的最优节点进行部署,保证感知层网络具有较高的覆盖率和良好的节点通信[2]。
目前,该领域已经出现了一些研究成果。钱开国等[3]提出移动通信网络中继节点部署优化方法。设定网络中无移动中继节点时,组建网络节点能量消耗模型。融合贪婪算法完善静态路由树的拓扑结构,使得路由树的拓扑结构收敛于最优位置,以此对移动通信网络中继节点部署。该方法的部署效果较好,但是复杂度较高,无法进行普遍应用。徐力等[4]在概率感知优化模型下,将无线传感器网络的覆盖率和移动节点的能耗作为多目标优化函数,通过改进混合粒子群优化算法不断迭代,调整移动节点的最优位置,控制网络覆盖率最大化,同时减小移动距离,使得能耗最小化。该方法主要解决了传感网络部署的能耗问题,但是部署过程网络覆盖率较小。谭景文[5]提出了基于温度空间分布规律的传感节点部署方法。该方法以流体力学仿真结果为依据,结合节点测量数据,动态预测节点放置位置。该方法的应用过程较为简单,但是部署覆盖率较低。
提出一种针对物联网感知层的网络节点部署方法,即网络最优节点的分组部署方法[6]。通过该方法的设计与实现,能够解决传统节点部署方法当中存在的问题,从而实现节点部署的寻优精度的提升。
在物联网环境下,感知层网络节点部署需要经历节点投放、节点分组、节点估计等多个步骤,最终得到节点部署结果。具体的网络最优节点分组部署方法的实现流程如图1所示。
物联网感知层节点的部署问题可以转化为决策变量到一组目标映射的求解问题,因此需要建立感知层网络节点的部署求解模型[7]。在物联网感知层网络节点分组部署问题中,需要保证网络的安全性的同时提高网络覆盖率。因此在网络最优节点分组部署方法设计过程中,需要将节点连通的安全性以及网络覆盖率考虑在内,分别从目标函数和约束条件两个方面进行感知层网络节点部署模型的建立。
图1 网络最优节点分组部署方法Fig.1 Network optimal node group deployment method
1.1.1 目标函数
感知层网络节点部署模型中的目标函数主要针对安全连通度和网络覆盖率两个方面。其中网络最优节点的连通度主要是指网络中的节点范围之内能够和其通信的相邻节点的数量与网络中总节点数量二次方的比值[8]。得到的比值越大,则网络节点之间的连通度越大,网络中存在的通路越多。因此有关于网络连通度的部署模型计算目标函数可以表示为:
式中,ρij表示的是相邻节点的连通因子,连通因子的计算公式如下:
其中,d(Si,Sj)表示任意节点与其相邻节点之间的距离,N表示节点数量,Rc为任意节点的通信半径[9]。
而网络覆盖率方面目标函数的建立,主要是将节点分组部署的区域T,离散成为N个目标点集的表示方式。因此可以将覆盖率目标函数表示为:
式中:Tl表示的是感知目标节点;P(Si,Tl)为节点Si对Tl的感知概率。
1.1.2 约束条件
节点模型的约束条件是为了保证网络中任意两个节点之间都存在着至少一条可以顺利连接的通信路径,且尽量保证节点消耗的能量最低。
结合感知层网络节点部署模型的目标函数和约束条件,可以将网络最优节点约束条件用式(4)来表示:
对感知层最优节点数进行估算,首先需要对网络最优节点进行求解,得出节点的最优解集。首先初始化网络普通节点z,其中最大迭代次数为tmax,随机初始化所有的节点位置以及速度。通过建立的感知层网络节点部署模型计算目标函数C,更新节点的惯性权重,计算节点的适应度值,更新网络普通节点的极值。同时根据密集距离,采用比例选择的方法为每一个网络选取全局最优节点。当迭代满足t≥tmax时,迭代循环结束,同时输出最优解集。否则对目标函数进行更新计算。在理想状态下,假设物联网感知层的网络节点的通信距离为r,最大距离为2r。图2(a)表示了理想状态下全覆盖节点部署情况,图2(b)表示了理想状态下连通性覆盖节点部署情况。
图2 理想状态下节点部署情况图Fig.2 Node deployment under ideal conditions
那么在理想状态下全覆盖感知节点的有效覆盖面积Sp可以表示为:
连通性部署感知节点的有效覆盖面积Spc可以表示为:
连通性部署所需节点个数较少,因此将得到的节点最优解集投放到边长m×n的矩形区域,那么需要投放的最少感知节点个数可以表示为:
通过式(7)可以得出最少感知节点数目,为了确保节点的组网工作可以适当的添加最优节点。
在获得最优节点数目的前提下,对物联网感知层最优节点进行分组处理。首先需要定义最优节点中的中心节点,中心节点定义的标准为带宽达到前20%。将中心节点投放到环境当中,并进行简单部署。定义一个距离值,即为分组半径,测量中心节点与普通最优节点之间的网络距离,若得出的网络距离结果小于分组半径,则将该最优节点分配到该中心节点的范围之内。按照同样的方法可以将投放的所有网络最优节点进行分组,得到如图3的分组结果。
图3 (a)中心节点分组结果(b)最优节点分组结果Fig.3 (a)Result of central node grouping(b)Result of optimal node grouping
在一定的时间间隔内,物联网感知层的网络最优节点会根据发布的信息采集指令进行最大距离的移动,为了平衡各个节点之间的移动距离,保证其功能的实现,需要将节点Si在t步移动距离定义为:
节点Si在t步的位置更新情况通过式(9)来计算:
上式中,u为网络最优节点的平衡权值,St-new和Si-old分别表示感知层节点Si在t步范围之内的初始位置和终止位置[10],Fi(t)为网络最优节点在t步内的所承受的虚拟合力,max(step)为节点单次移动的最大步长。
在此基础上进行中心节点的更新定位,得到中心节点的坐标位置X=(x,y)。已知k个感知节点所接收到的信号强度P,则定位结果可以通过中心节点的定位结果与信号强度来估计:
式中,Q表示节点信号的发射功率,β为常量参数。通过公式得到中心位置的更新定位结果。
在得到更新位置的条件下,对网络最优节点之间的传输距离进行控制,在相同的分组组别当中,假设物联网感知层的最优节点为A、B、C、D、E、F,其中A为感知层的采集节点,B到F节点为网络经过的中间节点,最终到达网络接收终端,传输过程如图4所示。
图4 节点传输距离控制示意图Fig.4 Control of node transmission distance
在节点分组传输过程中,采用测距部署的方法,计算相邻节点之间的距离,并按照节点的覆盖范围设定该组节点之间的传输距离阙值[11]。网络最优节点在执行任务以及自由移动的过程当中,需要遵循两个条件,一个是相邻两节点之间需要保证在阙值范围之内,另一个条件为节点与该组中心节点的距离,控制在max(step)之内。在节点的传输距离控制完成之后,覆盖范围即为以中心节点为中心,信号传输最远距离为半径的圆的并集。
在物联网感知层网络节点的传输过程中,将网络节点进行连通,保证节点之间的协同数据处理工作。提出节点的连通加权率为:
式中σ1和σ2表示的是连通率的归一化权值,F和F'分别表示连通前的节点数据集和连通后的节点数据集。将感知层网络节点连通之后,对新的节点位置进行计算,并与初始位置进行比较,保留较大值并重新赋值给X[12]。最终的物联网感知层网络最优节点分组部署结果如图5所示。
图5 节点分组部署输出结果Fig.5 Node grouping deployment output
为了检验物联网感知层网络最优节点分组部署方法的有效性,以网络覆盖率为实验指标进行仿真实验研究,以下为仿真实验结果。通过对实验结果的分析,验证研究方法的有效性。
此次验证实验选用NS3仿真工具作为网络节点分组部署的仿真平台。NS3仿真工具属于一种开源的离散事件网络节点模拟器,使用C++与Java语言进行编码的语言实现,同时也支持Python等语言脚本代码的运行。在物联网感知层网络最优节点分组部署方法的验证仿真实验当中,借助NS3仿真工具来搭建一个多节点的物联网感知层,其界面如图6所示。
图6 仿真环境生成的大规模网络节点场景Fig.6 A large-scale network node scenario generated by the simulation environment
在此环境下,设置网络最优节点的部署区域面积为100 m×100 m,总节点个数为100个,使用随机部署方式确定网络节点的初始状态,物联网感知层节点的感知半径以及通信半径分别为5和10 m。在此实验环境下,进行仿真验证的具体操作。
在保证网络连通性质完好的情况下,对物联网感知层节点分组部署方法的网络覆盖率进行仿真实验验证。选取仿真环境中的100个节点,平均将其分为两组。其中编号为1~50的节点使用传统的网络节点部署方法进行部署。而编号为51~100的节点使用设计完成的最优节点分组部署方法进行部署。规定两组节点的初始部署覆盖率为72.64%,综合节点的最大与最小传输半径,可以计算出每一个节点的网络覆盖范围,进而得出网络最优节点分组部署方法节点数与分组传输半径之间的关系。参考仿真实验中节点数与分组传输半径的关系,可以分别得出网络最优节点分组部署方法的覆盖率计算结果。同理得出传统方法节点数与传输半径之间的关系,进而计算传统部署方法的网络覆盖率。
经过仿真实验过程得到两种方法下的节点数与分组传输半径的关系数据如表1所示。
表1 节点数与分组传输半径的关系表Tab.1 The relationship between the number of nodes and the packet transmission radius
网络覆盖率的计算公式为:
在物联网环境下,通过使用网络最优节点分组部署方法,能够保证网络覆盖率,得到了较好的应用结果。由于仿真实验当中设置的节点数量较少,无法得到有关于网络安全连通度的实验结果。因此在下一阶段的工作研究当中,需要对安全连通问题进行实验对比与验证,以提供更符合实际的结果,保证网络最优节点分组部署方法在物联网感知层内的应用价值。