基于改进的粒子群算法的dv-oh算法研究.docxVIP

基于改进的粒子群算法的dv-oh算法研究.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于改进的粒子群算法的dv-oh算法研究 0 rang-标准algorithm和值得测距的算法 无线传感器定位算法通常分为两种类型:基于测距算法的算法和基于测距算法的算法(range-grace)。 1 德维算法原理及误差分析 DV-Hop算法定位过程包括以下阶段 1.1 保留跳数,发跳数 锚节点首先向邻居节点广播包含自身位置、ID号和跳数值为0的信息,邻居节点第一次收到该信息后,保留该信息,并将跳数加1发送到它的邻居节点。对于收到同一个锚节点发来的信息,以最小原则更新本地跳数值。该阶段完成后,监测区域中所有节点都已知道锚节点的位置坐标及到锚节点的最小跳数。 1.2 计算节点的平均跳转距离 每一个锚节点通过式(1)计算自身的平均跳距。 式中:(x 1.3 平均跳距的确定 未知节点采用距离本身最近的锚节点的平均跳距作为自己的平均跳距。未知节点k到锚节点i的估算距离记为d 式中:Hop Size 把式(3)写成AX=B的形式,A,B和X的具体值如下: 解之可得: 1.4 未对锚节点间的跳数对比 1)曲线代直线和通信范围内节点跳数均视为1跳。在传统DV-Hop算法中,锚节点的平均跳距是根据锚节点之间的实际距离与两者之间跳数的比值求得,监测区域中的锚节点是随机分布的,路径不可能都是直线,锚节点之间的跳数越多,计算得到的平均跳距误差越大。 在计算跳数时,通信范围内的跳数均视为1跳。锚节点B和C都在锚节点A的通信范围内,传统DV-Hop算法都按照1跳距离计算A与B,A与C之间的跳数。但实际上锚节点B和C到锚节点A的跳数存在误差,如图1所示。 2)未知节点仅仅采用单一锚节点的平均跳距。在传统DV-Hop算法里,未知节点采用距离自身最近的锚节点的跳距作为平均跳距,求得两者之间的距离,但是监测区域里的节点是随机分布的,距离未知节点最近的锚节点不能反映其他锚节点的分布情况。 2 改进的dv-匹配算法 2.1 用信度较高的锚节点 针对1.4节1)中误差的原因,在计算锚节点平均跳距时选用可信度较高的锚节点,即选用共线度较高的锚节点。 式中:δ为理想平均跳距;d 采用文献 修正后,锚节点间的跳数计算公式为: 因此,求解锚节点的平均跳距改为: 2.2 未知节点平均跳距的确定 针对1.4节2)中存在的问题,区别于传统DV-Hop算法,采用满足定位条件的锚节点的平均跳距误差为权重,综合求得未知节点的平均跳距。 式中error 式中:h_error 锚节点i的权重为: 结合式(16),未知节点k的平均跳距为: 2.3 采用粒子群算法优化未知节点的位置 2.3.1 颗粒群算法的原理 粒子群优化算法 式中:V 2.3.2 初始位置函数 1)初始化粒子速度、位置和数目,算法在初始阶段,粒子的初始位置就是全局最优位置。 2)计算每个粒子的适应度函数: 3)粒子与适应度函数作比较,并通过式(18)和式(19)更新自身速度和位置。 4)当达到最大迭代次数后,算法结束。 3 节点通信半径对节点定位误差影响 采用Matlab R2015b仿真平台对本文改进的算法进行仿真,并与传统DV-Hop算法和DV-Hop+PSO算法进行对比。实验环境设置如下:仿真区域大小为100 m×100 m,随机放置100个传感节点,其中锚节点的比例为8%,传感节点的通信半径为R=30 m。采用节点平均定位误差error 式中: 网络节点随机分布如图2所示,其中网络节点总数为100,锚节点数为8。 图3表示锚节点数为8,节点传输半径为30 m时,本文改进的DV-Hop算法、传统DV-Hop算法和DV-Hop+PSO算法的节点定位误差,从图3中仿真结果看出,本文改进的算法定位误差相对较低。 1)不同锚节点数对定位的影响 图4表示锚节点数对节点平均定位误差的影响,设置节点总数为100,节点传输半径为30 m,锚节点数依次取10,15,20,25,30时对平均定位误差的影响。从仿真结果图中可以看出,随着锚节点数量的增加,节点的平均定位误差在减小,定位精度在提高,说明增加锚节点数量,能够提高定位精度,也揭示了该算法依赖锚节点进行定位的本质。 2)不同通信半径对定位的影响 图5表示在节点总数为100,锚节点数为10时,通信半径大小对节点定位的影响。从仿真结果看出,随着节点通信半径的增加,平均定位误差在逐步减少,定位精度在提高。说明通信半径影响着节点之间的跳数,如果通信半径设置的过小,导致很多节点之间无法通信,进而无法完成定位工作;反之,则导致定位误差增大。 4 改进的dv-hop算法 针对传统DV-Hop算法的不足,本文提出了一种改进的DV-Hop算法,通过仿真结果看出,改进的算法在定位精度上优于传统DV-Hop算法和DV-Hop+PSO算法。但在网络开销、PSO优化上还存在不足,这也是后期研究的方向。

文档评论(0)

xlwkyc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档