基于蚁群优化的WSN网络数据融合算法*
2020-04-11丁华
丁 华
(南京师范大学泰州学院 教育技术中心,江苏 泰州 225300)
近年来,随着无线通信技术、传感器技术的发展,无线传感器网络(wireless sensor network,WSN)作为一种自组织无线网络已经获得了越来越广泛的重视和应用[1-2].WSN网络能够实时感知、采集覆盖范围内各种环境信息,并使用多跳路由完成数据聚合和传输.WSN网络能够不受时间、地点、环境限制地采集和获取信息,并且其具有自组织、部署迅捷、高容错性和强隐蔽性等技术优势.
为了全面监测网络部署环境,WSN网络一般密集布设无线节点,且需要定时频繁采集数据并向邻居节点发送.这样不仅导致网络中传输的数据高度重复冗余,而且加重了节点能耗负担,影响了WSN网络的工作时长和使用.针对上述问题,在WSN网络中通过聚合无线传输,减少节点能量损耗,并提升WSN网络的工作时长,已经成为业内重点关注的研究方法之一.
无线传感器网络中传感器节点能耗最大的模块是数据通信模块,因此减少网络中的数据传输是节能的关键.数据融合可以利用无线传感器节点的运算和对多源数据的互补性来提高信息的质量,并通过中间融合节点消除数据之间的冗余性和相似性,降低无线数据的传输量[3].数据融合将感知节点采集的各种初始信息进行聚合、去冗余处理,并通过数据融合算法选取合适的传感器节点作为融合的中间节点,最终将精简后的数据发送至汇聚节点,从而实现减少节点能耗,提升网络工作时长的目标.
图1 WSN网络中数据融合传输示意图Fig.1 Schematic diagram of data aggregation transmission in WSN
蚁群算法一般划分为适应阶段与协作阶段.在适应阶段,被选择路径根据蚂蚁留下的信息素调整自身节点选择概率,某条路径上的信息素越多,被选择的概率越大;在协作阶段,各条候选路径通过信息的交流,搜索最优路径解.蚁群算法可视为分布式智能系统,分布在区域内的多个点同时出发进行搜索,具有全局搜索能力,增加了算法的可靠性.
为减少WSN网络中数据传输量、优化无线传输距离,本文提出了一种基于蚁群优化的WSN网络数据融合算法.该算法在构造数据融合树时,根据WSN网络的传输特点改进了蚁群算法,考虑了路径偏转角对路由的影响,调整节点选择概率;同时对最优的多个路径更新信息素,以提升最优路径的搜索能力.为了验证算法的有效性,在WSN网络节点能量消耗、传输延迟方面与经典算法对比,经实验发现,该算法能够有效延长网络的生命周期、降低节点能耗,并能改善网络负载均衡性.
1 融合算法模型设计
为了减少WSN网络数据传输量,均衡节点能耗负载,并改善数据传输时延,本文将数据融合与节点路由相结合,利用改进的蚁群算法寻找从源节点到宿节点的最优路径.
1.1 算法模型
基于蚁群算法的数据融合算法利用人工蚂蚁模拟真实蚂蚁,根据节点的信息素量和能量状态启发因子进行权衡,寻找最优的数据融合路径.在搜索过程中,蚂蚁根据待选择路径上的启发信息和残留信息量,计算状态转移概率.转移概率计算表达式为
(1)
(2)
本文算法首先计算邻居节点的转发概率,从中选取最优路由路径.转发概率由路径信息素和启发因子决定.启发因子需要根据算法应用环境的不同而改变;信息素由蚂蚁经过此段路径的频率决定,需要设定有效的更新策略.为了避免残留信息太多,减弱启发信息的作用,蚂蚁在每走完一步之后,对残留的节点信息素进行更新.t+n时刻路径(i,j)上信息素表示为
τij(t+n)=(1-ρ)τij(t)+Δτij
(3)
(4)
(5)
分取10.00 mL浓度为5 mg/mL铅标准溶液于300 mL烧杯中,按分析步骤进行测定,沉淀后分别放置不同的时间,测定结果见表2。
1.2 构造数据融合树
在无线传感器网络中,分散在监测区域的传感器节点将采集到的信息逐步传输至汇聚节点,从而形成一棵反向组播树,即无线数据包融合树[6-7],其结构如图2所示.融合树模型中包含:叶子节点、中间节点和宿节点.叶子节点负责采集数据,并将数据汇聚至中间节点;中间节点将子节点传送过来的数据进行融合处理,通过路由选择,最终将数据传输至宿节点.
图2 无线数据融合树模型Fig.2 Model for wireless data aggregation tree
WSN网络可描述为一个简化的网络图G={V,E},V为WSN网络中的无线传感器节点集,E为节点间的无线链路集.若节点vi与vj支持点对点直传,则表示为无线链路eij=(vi,vj),eij∈E.基于此,本文算法将WSN网络中的节点生成无线数据融合树,沿着数据融合树提供的路由路径进行数据融合与传输,并发送至汇聚节点.
1.3 算法设计
算法对最优的多个路径更新信息素,以提升最优路径的全局搜索能力,并进行数据融合与传输.基于蚁群优化的WSN网络数据融合算法具体步骤如下:
1) 将无线传感器节点和相关参数初始化.
2) 源节点以固定功率向周围广播请求信息,邻居节点收到请求信息后,根据接收的信号强度计算节点距离.
3) 获取节点邻居列表信息.源节点周期性地对邻居节点发送hello数据包,更新距离信息.无线传感器网络中每个节点都需要更新、维护邻居列表,邻居列表内容包含:汇聚节点的位置信息、本节点和邻节点的位置信息.
4) 基于偏转角确定转发节点的选择概率,以获取最优路径.虽然源节点与宿节点之间的直线距离最短,但所有数据转发都采用直线路径,会造成该路线负载过重,转发冲突和能量消耗也急剧上升.需要利用转发节点间的偏转角定义转发概率,从而选择最优的下一跳父节点进行数据转发.
偏转角定义如下:设节点i和节点j相邻,称θ=〈i,j〉为边e(i,j)在节点j相对于宿节点的偏转角.定义节点i在节点j处的偏转角选择参数为
(6)
由式(6)可知,宿节点的偏转角越小,被选择路径越接近直线,该节点越有可能被选择.
蚁群算法一般根据节点间距离、启发因子大小计算选择概率.节点距离越小,启发因子越大,选择概率越大.这种单一的选择机制可能引导蚁群局限于当前一跳的距离优势,选择偏离方向的某个节点,造成局部最优解.基于此,本文通过在启发因子中加入偏转角,从而调整转发节点的选择概率.在选择下一跳节点时,若选择节点相对于宿节点的偏转角越小,则到达宿节点的路径越近.
5) 更新节点信息素.本算法对节点信息素进行动态自适应调节策略,初始时取一个相对较大的初始值ρinit;经过T1时间段后对ρ进行调节,取值λρ(t-1);T2过后,调整为最小值ρmin.更新表达式为
(7)
式中,λ为信息素调节参数.
节点信息素的设定策略决定着蚁群算法的搜索能力和收敛速度.若ρ太小,节点信息素挥发慢,会使收敛速度降低;若ρ太大,节点信息素挥发较快,会使算法过早收敛,无法达到最优解.
在更新策略上,多只蚂蚁从源节点出发,最后会寻找到多条到达汇聚节点的较优路径.由于WSN网络状况是不断变化的,路由路径只需要一条,因而无需将每次循环经历的所有节点信息素都同步更新;但若只更新当前最优路径上的节点信息素,往往使蚂蚁满足于局部最优解,降低了算法全局搜索和优化能力.为此,在每次循环完成后,同时更新最优及次优路径的节点信息素,使得算法的收敛速度和全局搜索能力最优.利用改进后蚁群算法的概率公式寻找到达汇聚节点的最短路径,这些最短路径最终形成从源节点到宿节点的最短路径树,本算法的流程图如图3所示.
图3 算法流程图Fig.3 Flow chart of algorithm
2 仿真实验与分析
实验采用MATLAB进行仿真,构建一个半径为100 m的圆形区域,在其中随机部署10~100个无线传感器节点.为验证算法的性能,将本文算法与经典算法SPT、ACO[8]和AEDT[9]进行对比.由于蚁群算法中存在多项参数,不同的参数组合会影响算法的收敛速度以及路径搜索质量.表1中各参数的获取是通过仿真试验调试获取,经过仿真运行6~7次,在相关参数的设置区间内稍作调整,最终获取表1所示的本算法参数配置.
表1 仿真参数设置Tab.1 Simulation parameter settings
假定4种算法都采用相同的网络覆盖策略,当WSN网络中生存节点逐步减少,直至无法有效覆盖所在区域时的时长称为该WSN的网络生命周期.图4显示了4种算法在不同节点个数下,WSN网络的生命周期变化趋势.随着节点个数的增多,WSN网络的生命周期都呈现上升趋势.因为随着WSN网络节点的增多,即使有少数传感器节点由于能量耗尽而无法工作,WSN网络有更多的备份节点维持网络的运行.比较4种算法可知,SPT与ACO算法对应的WSN网络生命周期较短.当网络节点较少时,本文算法的生命周期略低于AEDT算法,随着节点的增多,本文算法网络生命周期长的优势逐渐凸显,在4种算法中具有最长的网络生命周期.这说明本文算法能够根据节点能量选择融合路径,减少网络整体的无线传输能耗.
图4 4种算法的网络生命周期对比Fig.4 Comparison of network life cycles of 4 algorithms
在WSN网络中,节点负载均衡也是影响网络工作周期的重要因素.有效的路由融合算法需要能够均衡WSN网络中节点的负载,使得各个节点的能量平均消耗,不会因部分节点能量提前耗尽而影响网络通信.图5为4种算法的节点负载方差对比图.
图5 4种算法的节点负载方差对比Fig.5 Comparison of node load variance of 4 algorithms
如图5所示,SPT、ACO算法由于没有充分考虑节点能量,节点传输负载的差异性也极大.这使得WSN网络会由于部分节点过早的能量耗尽而无法工作.而AEDT和本文算法节点负载方差较为平稳,网络中的节点负载处于均衡状态.其中,本文算法随着节点的增多,负载方差还略有下降,从而保证各个节点的能量均衡消耗,提升整个网络的工作周期.
图6为4种算法在无线数据包汇聚延迟方面的性能对比.综合而言,随着网络规模的增大,4种算法的无线数据包的汇聚延迟也在逐渐增大.其中,SPT、ACO算法时延性能较差,随着节点的增多,无线数据包汇聚时延增长接近线性.而AEDT算法考虑了数据延迟的因素,时延效果相对更好.而本文算法的时延性能较优,尤其是当节点数大于60时,时延增长趋势暂缓.这是因为本文算法的路径选择策略综合考虑距离与负载的影响,能够自主选择最优的传输路径.
图6 4种算法的数据包汇聚延迟对比Fig.6 Comparison of data package aggregation delay of 4 algorithms
3 结 论
针对无线传感器网络存在的数据传输量大、局部节点负载过重等问题,本文提出一种基于蚁群算法的数据融合算法.该算法根据路径偏转角调整节点选择概率,改进了信息素更新策略,采用新型策略指引蚂蚁和数据有偏向性地进行路径搜素,并能有效适应网络拓扑结构和能量变化.经实验仿真和分析发现,本文算法能够有效延长网络的生命周期、降低节点能耗,并能改善网络负载.
本文提出的基于WSN网络的数据融合算法也存在一定的局限性,比如:节点选择概率除了考虑路径偏转角,也需要考虑估计链路质量、节点负载等因素;节点信息素更新的策略也需要进一步优化.这些问题将在下一步研究中重点关注,提出更优的解决方案.