期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

基于人工鱼群算法的无线室内定位优化

时间:2015-10-28 11:38 文章来源:http://www.lunwenbuluo.com 作者:黄仁,秦占明 点击次数:

  【摘要】:针对基于BP神经网络室内定位算法收敛速度慢和定位精度低的问题,提出了改进的人工鱼群算法(AFSA)和距离加权质心法。通过改进人工鱼觅食和寻优方式来提高人工鱼全局寻优的能力和速度,并用该算法来选取室内定位神经网络参数;通过改进的加权质心法计算距离,以减小室内复杂环境干扰造成的定位的误差。实验证明该改进方法使室内定位的平均精度比BP神经网络模型提高8%左右,并提高了室内定位的可靠性。
  【关键词】:室内定位;无线传感网络;人工鱼群算法;加权质心
  0引言
  无线传感网络室内定位算法分为两大类1:基于测距(range~based)的定位和基于非测距(range-ree)的定位2。室内定位方法有到达时间(TimeOfArrivalTOA),到达时间差(TimeDifferenceOfArrival,TDOA),到达角(AngleOfArrival,AOA)和接收信号强度指示(ReceivedSignalStrengthIndication,RSSI)3,基于位置指纹室内定位等。
  室内定位基于测距算法通过测量节点间的距离或角度,使用三边测量三角测量或最大似然估计定位法计算节点位置4,无需测距定位算法则不需要距离和角度信息,算法根据网络连通性等信息来实现节点定位5。传统的基于接收信号强度RSSI的室内定位技术基本上都是以无线信号传播模型为基础,通过拟合或直接根据经验得出信号传播模型中未知参数,再根据位置距离算法来最终实现定位6。但此方法依赖经验,普适性不强,精度不高。为改进传统定位不足之处,目前提出了改进的基于BP神经网络的距离损耗模型7室内定位算法和基于BP神经网络和泰勒级数的室内定位算法8研究模拟Shadowing室内定位9。该定位算法避免了对信号传播模型中参数的拟合,提高了定位精度;但是该算法收敛速度慢,同时定位过程中容易受到外界因素的干扰造成定位精度差,同时没有关注节点能量值大小对定位精度的影响。针对以上问题提出了基于改进人工鱼群算法神经网络参数方
  法来提高算法适用性、可靠性和泛化能力。
  1基于神经网络RSSI室内定位的不足
  无线信号在传播的过程中,随着距离的变化,信号强度的大小发生改变,通过这个特点可以得出信号强度与距离的关系。无线定位中普遍采用Shadowing模型,但是该模型没有考虑室内存在非视距传播的可能性,从而在此得到实际应用的RSSI测距公式10,如式(1)所示:
  RSSI=A+10nlg(d)⑴
  其中A和n为待定参数。为距离1m处锚节点处接收到的信号强度平均值的绝对值,而n为信号传播环境无关的信号常数。
  通过式(1)中距离损耗模的分析可以得出RSSI和传输距离之间存在非线性关系,Kolmogorov定理[11]证明任一连续函数都可由一个三层网络来实现。因此可以用BP神经网络来拟合接收信号强度RSSI与距离d之间的非线性函数关系[12]。
  BP神经网络算法的学习过程由信息的前向传播和误差的反向传播组成,需要在实际环境中取得大量的数据来训练神经网络。在神经网络前向传播的过程中,信息从输入层经隐含层处理并传向输出层,神经元的状态只受到上一层神经元的影响,在训练的过程中如果在输出层得不到期望的结果,则会转入算法的反向传播,将误差信号沿原来的连接路径返回,通过修改各层神经元的权值,使得误差均方最小。重复此过程,直至误差满足应用要求。基本的BP算法存在抗干扰能力差、收敛速度慢、易陷入局部极值点的缺点,Matlab神经网络工具箱中提供了十多种快速学习算法[13],经过反复实验和比较,本研究选tmincgf算法。该算法在不增加算法复杂性的前提下,可以提高收敛速度,并且可沿共扼方向达到全局最小点。但是基于BP神经网络的室内定位算法收敛速度相对较慢,泛化能力弱,容易得到局部最优而不是全局最优,造成定位精度偏低、误差较大。
  2改进的人工鱼群算法
  人工鱼群算法(ArtificialFishSwarmAlgorithm,AFSA)是一种基于动物行为活动特点构建起来的新型智能仿生算法[14],该算法由李晓磊等于2002年提出。算法借鉴鱼类鱼的觅食、随机,聚群追尾等行为,算法从构造单条人工鱼开始,通过寻找人工鱼群中个体的局部最优值,达到全局最优值[15],便引起了广泛的应用,算法主要用于模式识别参数寻优领域。在本文中假设用状态向量X表示第i条人工鱼的个体…其中%表示欲寻优的变量(i,J+E[1,2,ooo,n]);表达式Y=/(x)来表示人工鱼当前位置食物浓度,其中Y为目标函数值;visual表示人工鱼的感知其他人工鱼范围大小;step表示人工鱼移动的步长大小;S表示拥挤度因子。
  通过分析目前人工鱼群算法,在人工鱼在觅食行为中,通过多次模拟实验得知步长参数step与视野范围visual大小对人工鱼群算法收敛速度和精度存在很大的影响。如果参数大小设置不合理则人工鱼会陷入局部极值或精度不够等问题。人工鱼觅食行为中由于没有找到较优状态时,会随机选择一个状态,算法没有未充分利用其他人工鱼当前的状态,导致算法收敛速度较慢、计算量增大。通过分析人工鱼群算法优化神经网络的问题,本文对以上不足作以下改进。
  1)基于高斯函数的变长步长和视野范围。
  前人提出采用递减的二次函数来自动修改步长和视野范围[16,但是没有考虑到,在人工鱼的步长和可视范围越大可以使得人工鱼跳出局部最优值找到全局最优值,但是同样会造成人工鱼状态震荡,造成计算量的增加,收敛速度变慢。
  因此本文提出采用高斯函数来自动调整步长,开始人工鱼采用较小的步长和视野寻优;随着迭代次数增加开始按照高斯函数增加step和达到全
  局最优状态;但是随着人工鱼群算法的迭代次数增加到一定程度,人工鱼状态已到达局部最优时,这时采用较小步长和视野范围可以提高算法的局部范围内搜索的能力和提高搜索精度,同时能够减少算法的不必要计算开销。step和visual大小调整采用式(2):
  p=ae_(t_M/2)2/m2jvisual=visua/min+visualXp(2)
  step=stepmin+stepXp
  其中:范围,取值0到vm,,m为视野范围的最大值;step为当前步长,取值范围0到stepmin,为人工鱼的步长的最大值;m为鱼群算法最大的迭代次数;p为系数,其值服从中心在m/2的正态分布;a为系数,其值为常数范围[1m/2]。
  2)基于历史最优的觅食行为。
  在AFSA中,觅食行为是在可视范围内随机选择一个状态,然后判断其食物浓度是否满足前进条件:若满足,则前进一步;否则继续随机选择状态。整个行为过程是一个试探比较的过程,而移动行为是随机产生的,这将很可能使解有倒退现象产生。
  因此,本文对觅食行为进行改进,在每次试探过程中保存较优解,在试探TryNumber次之后,如果仍没有满足前进条件,则向直接移动到保存的尝试过程中最优解,以保证进步的原则并提高了搜索的速度。
  为了说明本文算法的有效性,本文在Matlab下实现提出的改进人工鱼群算法(ImprovedArtificialFishSwarmAlgorithm,IAFSA),然后通过选取典型函数做实验对比改进的人工鱼和人工鱼群算法,选取函数f1(x),/2(x)如下:sin(1/x)(x_0.16)2+0.1/2(x)=1+xsin(4nx)_ysin(4ny+n)+sin(6槡%+y2)⑷

  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15380085870
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15380085870
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
15380085870
微信号咨询:
lunwenbuluoli