论文部分内容阅读
无线传感器网络的信息采集工作中,采集的信息需要附加该传感器节点位置信息才具有实际应用性。因此,如何获得网络中未知节点的位置信息、减小节点定位算法的定位误差,是无线传感器网络节点定位问题的主要考虑点。花授粉算法(Flower Pollination Algorithm,FPA)是一种新型的启发式群智能算法。相较于其他算法,FPA算法拥有较好的全局搜索和局部搜索平衡性,但同时也存在缺乏变异机制、易陷入局部最优等问题。针对这些问题,提出一种改进的花授粉算法——IFPA算法(Improved flower pollination algorithm,IFPA)。IFPA算法在全局授粉过程中为Levy飞行步长添加了权重因子,权重因子根据算法迭代次数进行变化,加快了算法收敛速度;在局部授粉过程中,引入历史最优解,使花粉个体进行定向位置更新,同时添加高斯变异因子作为变异机制,加强了算法跳出局部最优的能力。利用4个经典的标准测试函数,将IFPA算法与粒子群算法(Particle swarm optimization,PSO)、FPA算法进行实验对比,验证了IFPA算法收敛更快,精度更高。本文研究了将IFPA算法应用于无线传感器网络定位,主要包括以下两个方面内容:一是针对传统RSSI定位算法中最小二乘法对未知节点位置求解精度受测距误差影响较大的问题,提出了IFPA-RSSI定位算法。在存在测距误差条件下,将RSSI定位问题转化为测距误差最小化问题,采用IFPA算法进行未知节点位置优化求解,提升RSSI定位算法定位精度。算法的基本思路为:设置初始花粉个体群,每一个花粉个体代表未知节点位置的一个候选解,以未知节点到锚节点的实际距离与距离测量值之间的误差作为适应度函数,进行花粉个体位置迭代更新,得出最优值,即最接近未知节点实际位置的坐标值。实验仿真表明,IFPA-RSSI算法的定位精度优于传统RSSI定位算法、PSO-RSSI定位算法和FPA-RSSI定位算法。二是针对ELM定位算法的定位精度受ELM网络中输入权重和隐含阈值初始赋值影响较大的问题,将IFPA算法用于ELM定位算法的改进,提出了IFPA-ELM定位算法。算法的基本思路是:将IFPA算法作为ELM网络的学习方法,通过网络输出值与期望输出值之间的误差作为适应度函数,对ELM网络的初始输入权值和隐含阈值进行优化选取,并根据最优值对ELM网络初始结构进行赋值,再利用优化后的ELM网络进行未知节点位置求解。实验仿真表明IFPA-ELM定位算法的定位精度优于传统ELM定位算法、基于PSO-ELM定位算法和基于FPA-ELM定位算法。