失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【WSN定位】基于加权双曲线的Dvhop定位算法【Matlab代码#16】

【WSN定位】基于加权双曲线的Dvhop定位算法【Matlab代码#16】

时间:2023-11-05 20:18:17

相关推荐

【WSN定位】基于加权双曲线的Dvhop定位算法【Matlab代码#16】

文章目录

【`获取资源`请见文章第6节:资源获取】1. 原始Dvhop定位2. 基于双曲线的Dvhop定位3. 对原始模型加权4. 部分代码5. 结果展示6. 资源获取7. 参考文献

获取资源请见文章第6节:资源获取】

1. 原始Dvhop定位

可参考Dvhop定位算法

2. 基于双曲线的Dvhop定位

双曲线定位算法是一种通过将待定位节点定位在以锚节点为焦点、两锚节点之间距离为焦距的双曲线上,根据各双曲线之间的交点确定待定位节点坐标的多边定位算法。待定位节点 u u u与锚节点 i i i之间的距离为:

假设 u u u到锚节点 i i i的距离与到锚节点 j j j的距离之差为 r i j r_{ij} rij​,则有 r i j = d u i − d u j r_{ij}=d_{ui}-d_{uj} rij​=dui​−duj​, u u u位于以锚节点 i i i和 j j j ( j ≠ i ) (j≠i) (j=i)为焦点、到焦点距离差值为r_{ij}的双曲线上。

令 K = x 2 + y 2 K=x^2+y^2 K=x2+y2,带入误差项后可得:

将 K 、 x 、 y K、x、y K、x、y看作未知数,上面式子可以改写为:

由最小二乘法可得:

那么待定位节点坐标可计算得到:

其中, c ( 2 ) c(2) c(2)表示列向量 c c c的第二项, c ( 3 ) c(3) c(3)表示列向量 c c c的第三项。

3. 对原始模型加权

加权最小二乘法的思想是对原模型进行加权,对误差项方差较大的观测值赋予较小的权值,而对误差项方差较小的观测值赋予较大的权值,使之成为一个新的不存在异方差性的模型。加权最小二乘估计的性能指标为:

其中, W W W为正定的权值矩阵。

4. 部分代码

for i=1:UNAmountE1(i)=mean(error1(:,i))/R;E2(i)=mean(error2(:,i))/R;E3(i)=mean(error3(:,i))/R;endmean(E1)mean(E2)mean(E3)figure(1)x=(1:UNAmount);box onhold onplot(x,E1,'k-p','MarkerFaceColor','y')hold onplot(x,E2,'k-+','MarkerFaceColor','g')hold onplot(x,E3,'k-o','MarkerFaceColor','r'),axis([1,80,0.18,0.4])hold onlegend('基于双曲线定位的DV-Hop算法','文献10算法','本文改进算法')xlabel('待定位节点') ylabel('定位误差')

5. 结果展示

6. 资源获取

可以获取完整代码资源。

7. 参考文献

易仁杰.基于加权双曲线定位的DV-Hop改进算法

如果觉得《【WSN定位】基于加权双曲线的Dvhop定位算法【Matlab代码#16】》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。