确信罪犯藏身地址问题.docx
《确信罪犯藏身地址问题.docx》由会员分享,可在线阅读,更多相关《确信罪犯藏身地址问题.docx(28页珍藏版)》请在冰豆网上搜索。
确信罪犯藏身地址问题
4.确信罪犯藏身地址问题
已知罪犯系列犯法的地址坐标如下:
Place
Dimension
Longitude
1
53°49'"N
1°32'"W
2
53°48'"N
1°31'"W
3
53°50'"N
1°29'"W
4
53°48'"N
1°45'"W
5
53°49'"N
1°31'"W
6
53°25'"N
2°15'"W
7
53°47'"N
1°46'"W
8
53°39'"N
1°46'"W
9
53°27'"N
2°13'"W
10
53°42'"N
1°52'"W
11
53°47'"N
1°45'"W
12
53°48'"N
1°40'"W
13
53°49'"N
1°34'"W
(1)将角度制的坐标转换为弧度制坐标;
(2)将系列犯法的地址(13个)的球面坐标转换为平面坐标;并画出这些点的图形(要求带适当宽度的网格,行宽*10^3,列宽h=*10^3)。
(3)求这13个点之间距离的最大值和最小值;别离求这13个点相邻点横坐标和纵坐标之差绝对值的最大值和最小值;
4.对所得13个点的每一个点,在其周围找16个点(可疑点),其中格宽为d=500。
将这16个点与其余的12个犯法的地址进行比较,假设与某犯法的地址距离小于等于d,那么去掉该可疑点。
求出所有剩余的点(组成可疑点集合)。
(5)关于d=500:
500:
60000,重复上述进程,关于不同的d,求可疑点的个数,画出d与可疑点个数的图形,并确信d为何值使,可疑点个数最小。
(6)对上述所得的d,类似问题4,求可疑点YD。
(7)关于YD中每一个点(如第j个点),计算该点到问题2中的13个点
的距离
,成立该点的衰减函数:
,求
的最大值及YD中对应的点——罪犯所在的可能性最大的点,并将该点加在问题2的图形上。
(8)关于d=(21:
30)*500,重复上述进程,关于不同的d,求罪犯所在的可能性最大的点,并将这些点加在问题2的图形上。
四
编辑m文件disiti1
functionradian=disiti1(x)
d=size(x,1);
fori=1:
d;
a=deg2rad(x(i,1));
b=deg2rad(x(i,2)/60);
c=deg2rad(x(i,3)/3600);
radian(i,1)=a+b+c;
end
输入纬度:
weidu=[53,49,;53,48,;53,50,;53,48,;53,49,;53,25,;53,47,;53,39,;53,27,;53,42,;53,47,;53,48,;53,49,]
结果:
disiqi1(weidu)
输入经度为:
jingdu=[1,32,;1,31,;1,29,;1,45,;1,31,;2,15,;1,46,;1,46,;2,13,;1,52,;1,45,;1,40,;1,34,]
结果:
disiti1(jingdu)
以地心为原点,赤道平面为投影平面,其中a是坐标点的纬度,b是坐标点的经度。
地球半径R为6380000米。
x=Rcos(a)cos(b)
y=Rcos(a)sin(b)
新建M文件:
functionplane=disiti2(a,b)
c=size(a,1);
r=6400000;
fori=1:
c
d(i,1)=r*cos(a(i))*cos(b(i));
d(i,2)=r*cos(a(i))*sin(b(i));
end
x1=(min(d(:
1))-1250):
1250:
(max(d(:
1))+1250);
y1=(min(d(:
2))-2500):
2500:
(max(d(:
2))+2500);
[X1,Y1]=meshgrid(x1,y1);
holdon;
plot(X1,Y1,'b');
plot(X1',Y1','b');
plot(d(:
1),d(:
2),'o')
holdoff;
vpa(d)
输入:
a=[]
b=[]
运行m文件函数:
disiti2(a,b)
结果为:
ans=
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
4.3.1
a=
[[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]
[,]]
z=zeros(13,13);
fork=1:
13
forl=1:
13
z(k,l)=sqrt((a(k,1)-a(l,1))*(a(k,1)-a(l,1))+(a(k,2)-a(l,2))*(a(k,2)-a(l,2)))
end
end
d=z+eye(13,13)*10000
结果为:
d=+004*
m=max(max(d))
n=min(min(d))
结果为:
m=+004
n=
4.3.2
k=min(d)
h=zeros(13,2)
fori=1:
13
u=find(d(:
i)==k(i));
h(i,1)=a(i,1)-a(u,1);
h(i,2)=a(i,2)-a(u,2);
end
h;
v=abs(h)
m=max(v)
n=min(v)
v=
+003*
m=+003*
n=
t=[];
d=500;
fori=1:
13
e=[(a(i,1)+d),a(i,2);
(a(i,1)+2*d),a(i,2);
(a(i,1)-d),a(i,2);
(a(i,1)-2*d),a(i,2);
a(i,1),(a(i,2)+d);
a(i,1),(a(i,2)+2*d);
a(i,1),(a(i,2)-d);
a(i,1),(a(i,2)-2*d);
(a(i,1)+d),(a(i,2)+d);
(a(i,1)+2*d),(a(i,2)+2*d);
(a(i,1)-d),(a(i,2)-d);
(a(i,1)-2*d),(a(i,2)-2*d);
(a(i,1)+d),(a(i,2)-d)
(a(i,1)+2*d),(a(i,2)-2*d)
(a(i,1)-d),(a(i,2)+d);
(a(i,1)-2*d),(a(i,2)+2*d)];
fork=1:
16
forj=1:
13
ifj~=i
w(j,1)=sqrt((e(k,1)-a(j,1))*(e(k,1)-a(j,1))+(e(k,2)-a(j,2))*(e(k,2)-a(j,2)));
end
end
ifmin(w)>d
h=e(k,:
);
t=[t;h];
end
end
end
t
t=
+006*
u=size(t,1)
u=184
l=[]
ford=500:
500:
60000
q=[];
t=[];
fori=1:
13
e=[(a(i,1)+d),a(i,2);
(a(i,1)+2*d),a(i,2);
(a(i,1)-d),a(i,2);
(a(i,1)-2*d),a(i,2);
a(i,1),(a(i,2)+d);
a(i,1),(a(i,2)+2*d);
a(i,1),(a(i,2)-d);
a(i,1),(a(i,2)-2*d);
(a(i,1)+d),(a(i,2)+d);
(a(i,1)+2*d),(a(i,2)+2*d);
(a(i,1)-d),(a(i,2)-d);
(a(i,1)-2*d),(a(i,2)-2*d);
(a(i,1)+d),(a(i,2)-d)
(a(i,1)+2*d),(a(i,2)-2*d)
(a(i,1)-d),(a(i,2)+d);
(a(i,1)-2*d),(a(i,2)+2*d)];
fork=1:
16
forj=1:
13
ifj~=i
w(j,1)=sqrt((e(k,1)-a(j,1))*(e(k,1)-a(j,1))+(e(k,2)-a(j,2))*(e(k,2)-a(j,2)));
end
end
ifmin(w)>d
h=e(k,:
);
t=[t;h];
end
end
end
u=size(t,1);
l=[l;u]
end
l
d=500:
500:
60000;
plot(d,l)
y=min(l)
y=119
x=find(l==119)
x=35
c=35*500
c=
17500
d=17500
t=[];
fori=1:
13
e=[(a(i,1)+d),a(i,2);
(a(i,1)+2*d),a(i,2);
(a(i,1)-d),a(i,2);
(a(i,1)-2*d),a(i,2);
a(i,1),(a(i,2)+d);
a(i,1),(a(i,2)+2*d);
a(i,1),(a(i,2)-d);
a(i,1),(a(i,2)-2*d);
(a(i,1)+d),(a(i,2)+d);
(a(i,1)+2*d),(a(i,2)+2*d);
(a(i,1)-d),(a(i,2)-d);
(a(i,1)-2*d),(a(i,2)-2*d);
(a(i,1)+d),(a(i,