Dv-Hop定位算法

1   DV-Hop 定位算法

  DV-Hop定位算法是APS算法系列中使用最为广泛的定位方法, 其定位过程不依赖于测距方法, 利用多跳信标节点信息来参与节点定位, 定位覆盖率较大。DV-Hop 算法非常类似于传统网络中的距离向量路由机制, 在该定位机制中, 未知节点首先计算与信标节点的最小跳数, 然后估算平均每跳距离, 利用最小跳数乘以平均每跳距离, 估算得到未知节点与信标节点之间的距离, 再利用三边测量法或极大似然估计法计算未知节点的坐标。

  DV-Hop定位算法可以分为以下3个阶段:

  ( 1) 计算未知节点与每个信标节点的最小跳数。

  信标节点向邻居节点广播自身位置信息的分组, 其中包括跳数字段, 初始化为0.接收节点记录具有到每个信标节点的最小跳数, 忽略来自同一个信标节点的较大跳数的分组。然后将跳数值加1,并转发给邻居节点。通过这个方法网络中的所有节点能够记录下到每个信标节点的最小跳数。

  ( 2) 计算未知节点与信标节点的实际跳段距离。

  每个信标节点根据第1阶段中记录的其他信标节点的位置信息和相距跳数, 利用式(1)估算平均每跳的实际距离:

  其中, ( xi, yi )、( xj, yj )是信标节点i、j 的坐标, hj 是信标节点i与j( i≠j)之间的跳段数。

  然后, 信标节点将计算的每跳平均距离用带有生存期的字段的分组广播到网络中, 未知节点仅记录接收到的第1个每跳平均距离, 并转发给邻居节点。这个策略可以确保绝大多数未知节点从最近的信标节点接收每跳平均距离。未知节点接收到平均每跳距离后, 根据记录的跳数, 计算到每个信标节点之间的距离。

  ( 3) 未知节点计算自身位置。

  未知节点利用第2阶段中记录的到各个信标节点的跳段距离, 利用三边测量法或极大似然估计法计算出自身坐标。

  如图1所示, 经过第1和第2阶段, 能够计算出信标节点L1 与L2、L3 之间的距离和跳数。信标节点L2 计算得到校正值(即每跳平均距离)为( 40 +75) / ( 2+ 5) = 16. 42.假设未知节点A 从L2 获得校正值, 则它与3 个信标节点之间的距离分别为L1: 3 ×16. 42, L2: 2 ×16. 42, L3: 3×16. 42, 最后可利用三边测量法确定节点A 的位置。

图1   DV-Hop算法示意图

图1   DV  H op算法示意图

  DV -Hop算法采用平均每跳距离来估算实际距离, 对节点的硬件要求低, 实现简单。其缺点是利用跳段距离代替直线距离, 存在一定的误差。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值