【 仿真 】基于多维相似性分析的移动定位方法仿真

版权声明:本博客内容来自于个人学习过程中的总结,参考了互联网、数据手册、帮助文档、书本以及论文等上的内容,仅供学习交流使用,如有侵权,请联系,我会重写!转载请注明地址! https://blog.csdn.net/Reborn_Lee/article/details/84206489

上篇博文是对论文:MOBILE LOCALIZATON METHOD BASED ON MULTIDIMENSIONAL SIMILARITY ANALYSIS做出的笔记,博文地址:https://blog.csdn.net/Reborn_Lee/article/details/84202353#CONCLUSION

声明:下面的仿真,定位误差和论文中的有点不一样,原因是因为目标位置论文没有给出,只是给出了一个区域范围,我取这个区域中的任意一点,稍微不一样也是正常的,但是趋势都是一样的。

这篇博文将对论文给出的方法进行仿真,仿真的条件:

三个基站位于(0,0),(2500,4330)和(5000,0),距离测量误差为高斯分布,零均值和标准差为30,所有单位 是米。

先给出一次实验的定位示意图:

此时,移动站的位置为:x0 = [3000,2000]';

可见,估计出来的目标位置和实际位置重合,故能够定位。

下面考虑定位的均方根误差:

为了比较上述两种方法的性能,将7个移动台固定在不同的区域坐标系的象限中。

移动站的位置分别为:

x_ms1 = [3000,7000]';
x_ms2 = [-1000,3000]';
x_ms3 = [3000,2000]';
x_ms4 = [5000,3000]';
x_ms5 = [-3000,-1000]';
x_ms6 = [3000,-1000]';
x_ms7 = [7000,-1000]';

ms1——ms7对应上图中的7个区域。坐标是这个区域内的任意一个坐标。试验次数300.

仿真结果如下:

下图中的横坐标是7个区域,可见在目标在每个区域的定位均方根误差是不同的。

下面是传统的LLS方法的仿真结果,为了方便比较,横坐标仍然是七个区域,取相同的目标。

LLS算法的RMSE:

如果认真的比较上面两个图可以看出,这篇文章中提出的估计方法的均方差误差在大多数情况下小于LLS算法,也就是定位精度会稍微提高了一点。

仿真程序就不给出了,有兴趣的私信我即可。

还是给出一次定位的程序吧:

自己编写的,如果有问题,也可以和我讨论:

clc
clear
close all

%measurement platform position
x1 = [0,0]';
x2 = [2500,4330]';
x3 = [5000,0]';
L = 3; %the number of measurements platform

X = [x1,x2,x3];
%target position
x0 = [3000,2000]';

% standard deviation of 30
sigma2 = 900 ;

n = sqrt(sigma2).*randn(L,1); %noise vector with standard deviation of 30
dl = sqrt( sum((X'-ones(L,1)*x0').^2,2) ); %the range measurement with free noise
rl = dl + n;     %the range measurement with noise


D = X' - ones(L,1)*X(:,1)';
D = D(2:L,:);

D1 = sum( (X(:,2:L)').^2, 2 );
D2 = sum((ones(L-1,1)*X(:,1)').^2 ,2);
D3 = ( ones(L-1,1)*rl(1) ).^2 - rl(2:L).^2 ;
D0 = D1 - D2 + D3;
x = 0.5*pinv(D)*D0;

% measurement platform position
plot(X(1,:),X(2,:),'d'); 
axis([-4000,8000,-4000,8000]);
xlabel('x(m)');ylabel('y(m)');

hold on 
%target real position
plot(x0(1),x0(2),'*');
hold on 
%estimation target position
plot(x(1),x(2),'bO');
hold off

legend('Measurement platform position','Real position','Estimation position');

其实一次定位的程序给出来了,那么均方根误差自己就可以根据这个程序改改即可。

原论文地址:https://download.csdn.net/download/reborn_lee/10792598

猜你喜欢

转载自blog.csdn.net/Reborn_Lee/article/details/84206489