基于FOA改进MCB算法的无线传感网络节点定位精度分析

2023-12-21 11:59张海霞
电子产品世界 2023年10期
关键词:无线传感器定位精度算法

张海霞

关键词:FOA 改进MCB 算法;无线传感器;网络节点;定位精度

中图分类号:TP212.9 文献标识码:A

0 引言

现阶段,为确保现场监测高效率和灵活性,需将移动节点加入无线传感网络(wireless sensornetwork,WSN)应用系统中,对于研究人员而言,目前亟须解决的问题是怎样利用WSN 节点在动态过程中完成高精度及低能耗定位[1-2]。同时针对移动节点定位算法,需要提前判断移动节点定位分析时应用的定位算法是否具有现有静态节点[3]。

应用广泛的优化算法包括各类群智能优化算法,可明显提高定位精度[4-5]。自适应蒙特卡洛定位(adaptive Monte Carlo localization,AMCL) 算法的主要特征体现为二维码信息的高度融合。里程计模型误差修正主要参考绝对位置信息,由二维码提供,在此基础上完成采样工作,下次迭代所需粒子数量以状态空间粒子分布状态作为确定的依据,实现粒子數量的自适应调整[6]。大多数学者均十分关注上述各类算法的优势和特点,其可显著促进智能优化领域算法改进。

关于算法有效性的测试分析,已被应用于工业控制、智能汽车与资金管理等领域[7-8],但目前尚未出现将上述算法用于WSN 移动节点定位的文献报道。本文为了提高无线传感网络定位精度,应用果蝇优化算法(fruit fly optimization algorithm,FOA)-蒙特卡洛锚盒(Monte Carlo anchor box,MCB)算法(简称“FOA 改进MCB 算法”)对无线传感网络系统中移动节点进行定位建模,分析了移动速度、锚节点密度和样本数对定位精度的影响。

1 FOA改进MCB算法

收敛快速及操作简单等均为FOA 算法的优势。FOA 改进MCB 算法的主要流程包括:针对模型未知节点坐标应用MCB 算法进行计算,理论预估距离的计算需参考距离表达式,然后再对锚节点与定位节点间距进行测试,进行差异对比后修正位置,节点坐标最优值通过选用迭代处理方式获取。

根据最适应度函数找出果蝇群体内对应的果蝇个体。针对个体及适应度值确定对应最优和最佳位置坐标。

2 FOA改进MCB算法实现过程

FOA 改进MCB 算法对应的具体流程如图1 所示。下面将详细介绍实现该算法的流程。

步骤1:初始化参数。果蝇速度及位置移动情况需参考式(1)获取。

步骤2:根据MCB 算法完成移动节点坐标计算。

(1)在WSN 内通过锚节点发送位置坐标,锚节点数量表示为j,取值1,2,…,m。

(2)锚节点位置由移动节点i 测试得出,锚盒由两个锚节点构成。

(3)对计算锚节点与样本个体之间得到欧式距离,将未满足条件的样本去除,参考过滤模式采用MCB 算法进行设定,赋权值给有效样本。

(4)最终锚节点需重复步骤(3)才可获取。

(5)移动节点在t 时刻对应的坐标需通过加权平均方式对样本点进行计算获取。

步骤3:计算求解锚节点j 与各果蝇个体i 之间的距离Dij,然后采用适应度函数计算各果蝇适应度。

步骤4:获取各果蝇对应的最佳坐标。

步骤5:比较各果蝇上一代与这一代的适应度值,根据差异大小判断适应度值优劣情况。

步骤6:在未满足迭代终止条件下,需进行后续循环,跳转至步骤3 重新按相关要求执行,若满足相应条件,以当前个体位置为移动最佳节点。

对每次迭代前后的味道浓度值进行判断对比,若数值更优返回步骤6 执行,若数值无明显变化循环迭代则需重新进行,整个算法结束需达到终止条件。

3 实验仿真

FOA 改进MCB算法的精确度主要利用MATLAB软件仿真进行验证,对比MCB 算法及FOA 改进MCB 算法获取的结果,具体如下。

3.1 测试环境

仿真测试环节的各项参数设定主要参考表1 数据。设定20 m 为节点通信半径,按随机方式选取60 个节点并在100 m×100 m 范围内完成部署,节点分布如图2 所示。

适应度变化结果如图3 所示。选取的迭代方式以FOA 算法为主,稳定适应度函数在进化至第15代后逐渐趋于稳定,有利于降低能量消耗及简化计算流程。

3.2 移动速度对定位精度的影响

节点移动速度对定位误差的影响结果如图4 所示。与MCB 算法相比,FOA 改进MCB 算法表现出的定位效果更佳,精度更高,同时还发现定位误差随着节点移动速度增大而逐渐增大。这种情况出现的主要因素是在移动速度较慢的情况下节点位置的不确定性更大,影响定位精度。

3.3 锚节点数量对定位精度的影响

被定位节点随着锚节点数量增加而不断增加,获取的信息数据也更多,位置可靠度进一步得到提高。移动节点定位误差和锚节点数量在移动速度为10 m/s 的条件下变化曲线如图5 所示。经观察对比得出,随着锚节点数量的增加,定位误差表现为降低的趋势。这是因为移动节点在定位期间获取的锚节点信息极少,定位节点获取的信息随着锚节点数量增大而增多,有利于定位误差的减少。在锚节点数量相同的情况下,经对比得出FOA 改进MCB 算法的定位精度更高,所以MCB 算法效率可通过结合FOA 算法得到进一步提高。

4 结论

本文开展基于FOA 改进MCB 算法的无线传感网络节点定位精度分析,得到如下结论。

(1)相较于MCB 算法,FOA 改进MCB 算法具有更优的定位精度,且定位误差随着节点移动速度的增加而增大。

(2)定位误差随着锚节点数量的增加而下降。

该研究可以提高无线传感网络节点定位精度,但在应对异常数据时存在收敛效率低的问题,期待后续引入智能算法进行加强。

猜你喜欢
无线传感器定位精度算法
北斗定位精度可达两三米
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
GPS定位精度研究
GPS定位精度研究
进位加法的两种算法
组合导航的AGV定位精度的改善
无线传感器网络故障检测研究
能量均衡的无线传感器网络路由算法的研究
基于物联网的井场一体化应用