一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

终端定位方法、装置、设备及存储介质与流程

2022-09-02 19:34:17 来源:中国专利 TAG:


1.本技术涉及通信技术领域,尤其涉及一种终端定位方法、装置、设备及存储介质。


背景技术:

2.目前无线定位技术引起了人们越来越多的研究,无线定位技术是为了确定终端的地理位置而采用的技术,可以利用无线通信网络的资源来直接或间接地得到终端的地理位置信息。
3.现有技术中,在对终端进行定位时,通常采用例如toa(time of arrival,到达时间)、tdoa(time difference of arrival,到达时间差)、aoa(angle-of-arrival,到达角度)、rssi(received signal strength indication,接收信号强度指示)等测距方法。
4.然而,由于终端的位置具有不确定性,其可能是静止的,也可能是移动的,导致现有的终端定位方法存在定位准确度低的问题。


技术实现要素:

5.本技术提供一种终端定位方法、装置、设备及存储介质,用以解决现有技术存在的问题。
6.第一方面,本技术提供一种终端定位方法,包括:
7.获取最近一次对终端进行定位得到的历史定位结果;
8.根据所述历史定位结果,确定当前时刻对所述终端进行定位时的当前搜索空间;
9.基于所述当前搜索空间对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果。
10.在一些实施例中,所述根据所述历史定位结果,确定当前时刻对所述终端进行定位时的当前搜索空间,包括:
11.确定以所述历史定位结果为中心位置的空间为所述当前搜索空间。
12.在一些实施例中,所述当前搜索空间小于或者等于历史搜索空间,所述历史搜索空间为最近一次对终端进行定位时的搜索空间。
13.在一些实施例中,所述基于所述当前搜索空间对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果,包括:
14.获取最近一次对终端进行定位时使用的历史搜索参数;
15.根据所述历史搜索参数确定当前时刻对应的当前搜索参数;
16.根据所述当前搜索空间以及所述当前搜索参数,对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果。
17.在一些实施例中,所述历史搜索参数包括历史粒子数以及历史迭代次数,所述当前搜索参数包括当前粒子数以及当前迭代次数;所述当前粒子数小于或者等于所述历史粒子数,所述当前迭代次数小于或者等于所述历史迭代次数。
18.在一些实施例中,所述根据所述当前搜索空间以及所述当前搜索参数,对所述终
端进行搜索定位,得到所述终端在当前时刻的定位结果,包括:
19.在所述当前搜索空间内随机生成粒子群,对所述粒子群中每个粒子的粒子参数进行初始化,并根据每个粒子初始化后的粒子参数确定所述粒子群的全局最优解;
20.迭代执行根据所述当前粒子数对每个粒子的粒子参数进行更新、并根据更新后的粒子参数对所述粒子群的全局最优解进行更新的步骤,直至迭代次数达到所述当前迭代次数。
21.第二方面,本技术提供一种终端定位设备,包括:存储器,收发机,处理器:
22.存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行以下操作:
23.获取最近一次对终端进行定位得到的历史定位结果;
24.根据所述历史定位结果,确定当前时刻对所述终端进行定位时的当前搜索空间;
25.基于所述当前搜索空间对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果。
26.在一些实施例中,所述根据所述历史定位结果,确定当前时刻对所述终端进行定位时的当前搜索空间,包括:
27.确定以所述历史定位结果为中心位置的空间为所述当前搜索空间。
28.在一些实施例中,所述当前搜索空间小于或者等于历史搜索空间,所述历史搜索空间为最近一次对终端进行定位时的搜索空间。
29.在一些实施例中,所述基于所述当前搜索空间对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果,包括:
30.获取最近一次对终端进行定位时使用的历史搜索参数;
31.根据所述历史搜索参数确定当前时刻对应的当前搜索参数;
32.根据所述当前搜索空间以及所述当前搜索参数,对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果。
33.在一些实施例中,所述历史搜索参数包括历史粒子数以及历史迭代次数,所述当前搜索参数包括当前粒子数以及当前迭代次数;所述当前粒子数小于或者等于所述历史粒子数,所述当前迭代次数小于或者等于所述历史迭代次数。
34.在一些实施例中,所述根据所述当前搜索空间以及所述当前搜索参数,对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果,包括:
35.在所述当前搜索空间内随机生成粒子群,对所述粒子群中每个粒子的粒子参数进行初始化,并根据每个粒子初始化后的粒子参数确定所述粒子群的全局最优解;
36.迭代执行根据所述当前粒子数对每个粒子的粒子参数进行更新、并根据更新后的粒子参数对所述粒子群的全局最优解进行更新的步骤,直至迭代次数达到所述当前迭代次数。
37.第三方面,本技术提供一种终端定位装置,包括:
38.结果获取单元,用于获取最近一次对终端进行定位得到的历史定位结果;
39.空间确定单元,用于根据所述历史定位结果,确定当前时刻对所述终端进行定位时的当前搜索空间;
40.终端定位单元,用于基于所述当前搜索空间对所述终端进行搜索定位,得到所述
终端在当前时刻的定位结果。
41.第四方面,本技术提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行上述的方法。
42.本技术提供的终端定位方法、装置、设备及存储介质,该方法包括:获取最近一次对终端进行定位得到的历史定位结果;根据所述历史定位结果,确定当前时刻对所述终端进行定位时的当前搜索空间;基于所述当前搜索空间对所述终端进行搜索定位,得到所述终端在当前时刻的定位结果。本技术通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间,因此,本技术的方案可以在保证算法结果准确性的同时,降低算法的复杂度,从而实现对终端的快速定位。
附图说明
43.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
44.图1为本技术实施例提供的终端定位方法的示意图;
45.图2为本技术实施例中基于当前搜索空间对终端进行搜索定位,得到终端在当前时刻的定位结果的示意图;
46.图3为本技术实施例中根据当前搜索空间以及当前搜索参数,通过pso算法对终端进行搜索定位,得到终端在当前时刻的定位结果的示意图;
47.图4为本技术实施例中通过pso算法对终端进行定位的示意图;
48.图5为本技术实施例提供的终端定位装置的示意图;
49.图6为本技术实施例提供的终端定位设备的结构示意图。
50.通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
51.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
52.在本技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本技术实施例中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
53.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
54.现有的无线定位技术在对终端进行室内定位时,一般使用多边定位法来进行测
量,常见的室内定位算法包括toa、tdoa、aoa以及rssi等方法。在得到终端与每个基站的距离后,需要通过算法进行定位,典型的定位算法通常包括最小二乘(least square,ls)定位算法、chan算法、泰勒级数展开算法(taylor算法)以及pso算法。
55.具体的,假设定位系统中有m个基站对终端进行定位。终端的位置坐标为(x,y),基站的位置坐标分别为(xi,yi),1≤i≤m,假设m-1个基站到达终端的信号与服务基站(bs1)到达终端的信号之间的来波时间差为ti,i=2,3,

,m,由tdoa原理可以计算出:
56.r
i-r1=c
·
ti[0057][0058]
记r
i-r1=r
i1
,将方程线性化,可以得到方程:
[0059][0060]
对于上述方程的求解,可以采用ls算法、chan算法以及泰勒级数展开算法。
[0061]
其中,ls的解法是将上述的(1)式的m-1个式子中消掉r1项,建立h=z
·vt
·
(v
·vt
)-1
的关系式进行求解,这里的,h=[x,y]。
[0062]
泰勒级数的解法是根据一个初始的位置(x0,y0)计算ri,进而计算h
t
和g
t
,并结合协方差矩阵q进行计算根据(x0 δx,y0 δy)继续进行计算。
[0063]
chan算法是假设p=[x,y,r]
t
,hc=gcp εc,其中,
[0064][0065][0066][0067]
其中的q是tdoa测量值误差的协方差矩阵(代替了误差εc的协方差矩阵)。
[0068]
pso算法是在一个确定的空间区域内初始化一些粒子,每个粒子都一个由被优化的函数决定的适应值,以及运动的方向和距离,然后粒子随当前的最优粒子在解空间中进行搜索,最终确定ue的位置估计值。
[0069]
在上述的算法中,ls算法是次最优算法,而且需要构造一个可用的矩阵。而chan算法是一种求解上述双曲线方程组的非递归算法,并采用了两步最大似然估计(ml)。而taylor算法则是一种需要初始估计位置的递归算法,在每一次递归中通过求解tdoa测量误差的局部线性最小二乘(ls)解来改进估计位置。
[0070]
前者chan的特点是计算量小,但是在噪声服从高斯分布的环境下,定位精度高,但是在非视距环境下,chan算法的定位精度下降。而且chan算法在tdoa测量误差比较小时,具
有优的估计性能,但是随着tdoa测量误差的增加,该算法性能迅速下降。并且在nlos(non line of sight,非视距)环境下,chan算法的定位精度下降。而taylor算法的特点是计算量大,能够适用于各种信道环境,在初始位置与实际位置接近的情况下能得到准确的计算结果。但是,在初始位置选择不好的情况下,算法将很难收敛,而在实际应用中,初始位置是很难确定的,因此,这也限制了taylor级数展开法的定位精度的提高。
[0071]
因此,有些改进的算法中使用ls算法和泰勒级数相结合的方法,即使用ls算法确定一个ue的初始位置,再使用泰勒级数算法对ue的更精确的位置进行定位。但是,这里的ls算法是次最优算法。也有些改进的算法中,使用chan算法和泰勒级数相结合的方法,即使用chan算法确定一个ue的初始位置,再使用泰勒级数算法对ue的更精确的位置进行定位。但是,这里的chan算法的准确度受到使用场景及场景与建模是否匹配等因素的影响,因此,也会影响到taylor级数算法结果的精度,从而使得taylor算法难收敛。
[0072]
不仅如此,移动终端的状态可能是静止的,也可能是移动的,这都不能提前预知。因此,现有的终端定位方法存在定位准确度低的问题。
[0073]
本技术方案的主要构思为:对于终端的状态无法提前预知的情况,不受信道环境的pso算法是比较好的选择,一方面,可以使用上一时刻的pso算法的位置估计结果,来作为当前时刻使用pso算法进行终端定位的初始位置,这样可以很好地避免了上述的chan算法的问题;另一方面,可以使用比上一时刻pso算法的参数复杂度更小的粒子参数和迭代参数,这样可以降低算法的复杂度和降低算法时延。
[0074]
下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
[0075]
可以理解,本技术中终端定位方法的处理步骤可以由网络设备实现。
[0076]
在本技术中,网络设备可以是基站,具体可以是全球移动通讯(global system of mobile communication,简称gsm)或码分多址(code division multiple access,简称cdma)中的基站(base transceiver station,简称bts)和/或基站控制器,也可以是宽带码分多址(wideband code division multiple access,简称wcdma)中的基站(nodeb,简称nb)和/或无线网络控制器(radio network controller,简称rnc),还可以是长期演进(long term evolution,简称lte)中的演进型基站(evolutional node b,简称enb或enodeb),或者中继站或接入点,或者未来5g网络中的基站(gnb)等,本技术实施例在此并不限定。
[0077]
另外,终端设备可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(radio access network,简称ran)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(personal communication service,简称pcs)电话、无绳电话、会话发起协议(session initiation protocol,简称sip)话机、无线本地环路(wireless local loop,简称wll)站、个人数字助理(personal digital assistant,简称pda)等设备。无线终
端也可以称为系统、订户单元(subscriber unit)、订户站(subscriber station),移动站(mobile station)、移动台(mobile)、远程站(remote station)、远程终端(remote terminal)、接入终端(access terminal)、用户终端(user terminal)、用户代理(user agent)、用户设备(user device or user equipment),在此不作限定。可选的,上述终端设备还可以是智能手表、平板电脑等设备。
[0078]
图1为本技术实施例提供的终端定位方法的示意图,如图1所示,该方法主要包括以下步骤:
[0079]
s100、获取最近一次对终端进行定位得到的历史定位结果;
[0080]
其中,最近一次对终端进行定位得到的历史定位结果,可以是上一时刻通过pso算法对终端进行定位所得到的历史定位结果,具体可以是采用pso算法在上一时刻对应的搜索空间内对终端进行位置搜索,从而得到该历史定位结果。
[0081]
s200、根据历史定位结果,确定当前时刻对终端进行定位时的当前搜索空间;
[0082]
在获取最近一次的历史定位结果后,可以根据该历史定位结果来确定当前时刻对终端进行定位时的当前搜索空间,也就是说,在当前时刻,可以是基于当前搜索空间来对终端进行位置搜索。
[0083]
s300、基于当前搜索空间对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0084]
在确定当前时刻对终端进行定位时的当前搜索空间后,可以采用pso算法在当前搜索空间内对终端进行搜索定位,从而得到终端在当前时刻的定位结果。
[0085]
现有技术的pso算法定位处理流程中,不同时刻的搜索空间之间并不具备关联性,这就使得现有技术在每个时刻都需要花费一定的时间来确定搜索空间,导致算法的复杂度增加,定位速度较慢。
[0086]
而本实施例的方案主要是通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间,因此,本实施例的方案可以在保证算法结果准确性的同时,降低算法的复杂度,从而实现对终端的快速定位。
[0087]
在一些实施例中,根据历史定位结果,确定当前时刻对终端进行定位时的当前搜索空间,包括:s210、确定以历史定位结果为中心位置的空间为当前搜索空间。
[0088]
具体的,在通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间时,可以将上一时刻通过pso算法得到的历史定位结果作为当前搜索空间的中心位置,从而可以快速确定当前搜索空间,降低算法的复杂度。
[0089]
可选的,在确定当前搜索空间时,以历史定位结果为中心位置的空间具体可以是方形空间,也可以是圆形空间等,本技术对搜索空间的形状不做限定。
[0090]
可选的,对于采用pso算法对终端进行定位的初始时刻(即t=0),在首次确定搜索空间时,可以是以各基站之间的连线所构成的最大空间作为初始时刻对应的搜索空间,或者,可以是以各基站的外接圆作为初始时刻对应的搜索空间。
[0091]
在一些实施例中,当前搜索空间小于或者等于历史搜索空间,历史搜索空间为最近一次对终端进行定位时的搜索空间。
[0092]
具体的,在通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间时,当前搜索空间可以是小于或者等于上一时刻对终端进行定位时的搜索空间,也就是说,本实施例在采用pso算法持续对终端进行定位的过程中,搜索空间不断减小,从而有助于降低
算法的复杂度。
[0093]
图2为本技术实施例中基于当前搜索空间对终端进行搜索定位,得到终端在当前时刻的定位结果的示意图,如图2所示,该处理流程主要包括以下步骤:
[0094]
s310、获取最近一次对终端进行定位时使用的历史搜索参数;
[0095]
s320、根据历史搜索参数确定当前时刻对应的当前搜索参数;
[0096]
s330、根据当前搜索空间以及当前搜索参数,对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0097]
可选的,历史搜索参数包括历史粒子数以及历史迭代次数,当前搜索参数包括当前粒子数以及当前迭代次数;当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数。
[0098]
具体的,在通过pso算法对终端进行定位时,除了通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间之外,本实施例还包括对pso算法的搜索参数的更新。搜索参数具体包括粒子数以及迭代次数,相应的,搜索参数的更新包括粒子数的更新以及迭代次数的更新。
[0099]
另外,现有技术的pso算法定位处理流程中,不同时刻的搜索参数之间并不具备关联性,使得算法的复杂度增加。而本实施例的方案主要是通过上一时刻的pso算法使用的历史搜索参数来确定当前时刻对应的当前搜索参数,且由于当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数,也就是说,本实施例在采用pso算法持续对终端进行定位的过程中,搜索参数不断减小,从而有助于降低算法的复杂度。
[0100]
在一些实施例中,根据当前搜索空间以及当前搜索参数,对终端进行搜索定位,得到终端在当前时刻的定位结果,包括:
[0101]
s331、在当前搜索空间内随机生成粒子群,对粒子群中每个粒子的粒子参数进行初始化,并根据每个粒子初始化后的粒子参数确定粒子群的全局最优解;
[0102]
s332、迭代执行根据当前粒子数对每个粒子的粒子参数进行更新、并根据更新后的粒子参数对粒子群的全局最优解进行更新的步骤,直至迭代次数达到当前迭代次数。
[0103]
其中,粒子参数包括粒子的速度和位置。
[0104]
具体的,图3为本技术实施例中根据当前搜索空间以及当前搜索参数,通过pso算法对终端进行搜索定位,得到终端在当前时刻的定位结果的示意图,如图3所示,该处理过程包括以下步骤:
[0105]
s331a、在当前搜索空间内随机生成粒子群,并对每个粒子的速度和位置进行随机初始化;
[0106]
s331b、根据初始化后的粒子速度和粒子位置进行评估,得到粒子群的全局最优解;
[0107]
s332a、确定迭代处理的迭代次数是否达到当前迭代次数;
[0108]
s332b、若未达到,说明当前不满足算法结束条件,因此对每个粒子的速度和位置进行更新;
[0109]
s332c、根据更新后的粒子参数,评估每个粒子的函数适应值;
[0110]
s332d、根据评估结果更新每个粒子的历史最优位置;
[0111]
s332e、根据更新后每个粒子的历史最优位置,对粒子群的全局最优位置进行更
新。
[0112]
上述处理过程为迭代处理,直至迭代次数达到当前迭代次数,说明当前已经满足算法的结束条件,可以停止处理。从而,通过上述迭代处理过程,可以准确、快速得到终端在当前时刻的定位结果。
[0113]
在一些实施例中,对本技术方案的具体应用场景进行解释说明。
[0114]
图4为本技术实施例中通过pso算法对终端进行定位的示意图,如图4所示,在采用pso算法对终端进行定位的初始时刻(t=0),可以在一个较大的初始搜索空间a0内进行终端的位置搜索,搜索过程中使用的搜索参数包括粒子数p0和迭代次数k0,得到初始时刻的定位结果r0,即终端的定位位置(x0,y0)。
[0115]
在下一时刻(t=1),可以以初始时刻的定位结果r0为中心位置来确定新的搜索空间a1,搜索空间a1可以是小于或者等于搜索空间a0,即a1≤a0。另外,搜索过程中使用的搜索参数包括粒子数p1和迭代次数k1,其中,p1≤p0,k1≤k0,在t=1时刻得到的定位结果r1包括终端的定位位置(x1,y1)。
[0116]
以此类推,在第n时刻(t=n),可以以第n-1时刻的定位结果rn-1(即(xn-1,y n-1))为中心位置来确定新的搜索空间an,搜索空间an可以是小于或者等于搜索空间an-1,即an≤an-1。另外,搜索过程中使用的搜索参数包括粒子数pn和迭代次数kn,其中,pn≤pn-1,kn≤kn-1,在t=n时刻得到的定位结果rn包括终端的定位位置(xn,yn)。
[0117]
从而,通过上述处理流程,在保证pso算法性能(即定位结果的准确性)的同时,可以明显减小pso算法搜索的范围大小,且由于搜索参数更小,也可以降低算法的复杂度。
[0118]
可以理解,上述处理过程属于二维定位过程,若实际情况中是对终端进行三维定位,则终端的定位结果ri包括定位位置(xi,yi,zi),i=1,2,3

,n。
[0119]
在一些实施例中,最近一次对终端进行定位得到的历史定位结果,具体还包括终端位于历史搜索空间的内部区域或者外部区域。
[0120]
其中,在终端位于历史搜索空间的内部区域时,如果每一时刻pso算法都采用了标准既定的粒子数和迭代次数进行搜索,并且每次搜索区域的大小均相同,则算法的复杂度会比较高,而且算法的性能不会提高明显,这是因为当前待定位的终端所在的位置区域比较理想。
[0121]
因此,通过采用范围逐渐减小的搜索空间a,以及结合逐渐减小的粒子数k和迭代次数p,即ai≤ai-1,ki≤ki-1,pi≤pi-1,可以在保证pso算法性能的同时,降低算法的复杂度。
[0122]
另外,在终端位于历史搜索空间的外部区域时,由于待定位的终端的位置对于pso算法的搜索来说很难达到既定的要求,此时可以采用一个合适的初始位置作为pso算法的搜索的区域的中心位置进行搜索,以提高pso算法的搜索性能。而考虑到其他经典的算法,例如chan算法等,在这种情况下也无法进行有效的工作,且由于chan算法受到信道环境的影响比较大。因此,本实施例在采用pso算法对终端进行定位时,在某一个时刻通过算法进行定位得到一个定位位置后,在后续的时刻进行终端定位时,可以将上一时刻的pso算法的定位位置结果作为当前时刻的pso算法的中心位置来设定当前搜索空间。并且,通过采用范围逐渐减小的搜索空间a,以及结合逐渐减小的粒子数k和迭代次数p,即ai≤ai-1,ki≤ki-1,pi≤pi-1,可以在保证pso算法性能的同时,降低算法的复杂度。
[0123]
应该理解的是,虽然上述实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0124]
在一些实施例中,提供一种终端定位装置。图5为本技术实施例提供的终端定位装置的示意图,如图5所示,该装置包括:
[0125]
结果获取单元100,用于获取最近一次对终端进行定位得到的历史定位结果;
[0126]
空间确定单元200,用于根据历史定位结果,确定当前时刻对终端进行定位时的当前搜索空间;
[0127]
终端定位单元300,用于基于当前搜索空间对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0128]
关于终端定位装置的具体限定可以参见上文中对于终端定位方法的限定,在此不再赘述。上述终端定位装置中的各个单元可全部或部分通过软件、硬件及其组合来实现。上述各单元可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个单元对应的操作。
[0129]
从而,通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间,可以在保证算法结果准确性的同时,降低算法的复杂度,从而实现对终端的快速定位。
[0130]
在一些实施例中,空间确定单元200还用于:确定以历史定位结果为中心位置的空间为当前搜索空间。
[0131]
具体的,在通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间时,可以将上一时刻通过pso算法得到的历史定位结果作为当前搜索空间的中心位置,从而可以快速确定当前搜索空间,降低算法的复杂度。
[0132]
在一些实施例中,当前搜索空间小于或者等于历史搜索空间,历史搜索空间为最近一次对终端进行定位时的搜索空间。
[0133]
具体的,在通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间时,当前搜索空间可以是小于或者等于上一时刻对终端进行定位时的搜索空间,也就是说,本实施例在采用pso算法持续对终端进行定位的过程中,搜索空间不断减小,从而有助于降低算法的复杂度。
[0134]
在一些实施例中,终端定位单元300还用于:获取最近一次对终端进行定位时使用的历史搜索参数;根据历史搜索参数确定当前时刻对应的当前搜索参数;根据当前搜索空间以及当前搜索参数,对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0135]
在一些实施例中,历史搜索参数包括历史粒子数以及历史迭代次数,当前搜索参数包括当前粒子数以及当前迭代次数;当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数。
[0136]
具体的,在通过pso算法对终端进行定位时,除了通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间之外,本实施例还包括对pso算法的搜索参数的更新。搜索参数具体包括粒子数以及迭代次数,相应的,搜索参数的更新包括粒子数的更新以及迭
代次数的更新。
[0137]
另外,现有技术的pso算法定位处理流程中,不同时刻的搜索参数之间并不具备关联性,使得算法的复杂度增加。而本实施例的方案主要是通过上一时刻的pso算法使用的历史搜索参数来确定当前时刻对应的当前搜索参数,且由于当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数,也就是说,本实施例在采用pso算法持续对终端进行定位的过程中,搜索参数不断减小,从而有助于降低算法的复杂度。
[0138]
在一些实施例中,终端定位单元300还用于:在当前搜索空间内随机生成粒子群,对粒子群中每个粒子的粒子参数进行初始化,并根据每个粒子初始化后的粒子参数确定粒子群的全局最优解;迭代执行根据当前粒子数对每个粒子的粒子参数进行更新、并根据更新后的粒子参数对粒子群的全局最优解进行更新的步骤,直至迭代次数达到当前迭代次数。
[0139]
上述处理过程为迭代处理,直至迭代次数达到当前迭代次数,说明当前已经满足算法的结束条件,可以停止处理。从而,通过上述迭代处理过程,可以准确、快速得到终端在当前时刻的定位结果。
[0140]
在一些实施例中,提供一种终端定位设备。图6为本技术实施例提供的终端定位设备的结构示意图,如图6所示,该终端定位设备,包括:存储器112,收发机113,处理器111:
[0141]
存储器112,用于存储计算机程序;收发机113,用于在所述处理器111的控制下收发数据;处理器111,用于读取所述存储器112中的计算机程序并执行以下操作:
[0142]
获取最近一次对终端进行定位得到的历史定位结果;根据历史定位结果,确定当前时刻对终端进行定位时的当前搜索空间;基于当前搜索空间对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0143]
从而,通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间,可以在保证算法结果准确性的同时,降低算法的复杂度,从而实现对终端的快速定位。
[0144]
在一些实施例中,处理器111调用存储器112存储的程序,还用于执行:确定以历史定位结果为中心位置的空间为当前搜索空间。
[0145]
具体的,在通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间时,可以将上一时刻通过pso算法得到的历史定位结果作为当前搜索空间的中心位置,从而可以快速确定当前搜索空间,降低算法的复杂度。
[0146]
在一些实施例中,当前搜索空间小于或者等于历史搜索空间,历史搜索空间为最近一次对终端进行定位时的搜索空间。
[0147]
具体的,在通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间时,当前搜索空间可以是小于或者等于上一时刻对终端进行定位时的搜索空间,也就是说,本实施例在采用pso算法持续对终端进行定位的过程中,搜索空间不断减小,从而有助于降低算法的复杂度。
[0148]
在一些实施例中,处理器111调用存储器112存储的程序,还用于执行:获取最近一次对终端进行定位时使用的历史搜索参数;根据历史搜索参数确定当前时刻对应的当前搜索参数;根据当前搜索空间以及当前搜索参数,对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0149]
在一些实施例中,历史搜索参数包括历史粒子数以及历史迭代次数,当前搜索参
数包括当前粒子数以及当前迭代次数;当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数。
[0150]
具体的,在通过pso算法对终端进行定位时,除了通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间之外,本实施例还包括对pso算法的搜索参数的更新。搜索参数具体包括粒子数以及迭代次数,相应的,搜索参数的更新包括粒子数的更新以及迭代次数的更新。
[0151]
另外,现有技术的pso算法定位处理流程中,不同时刻的搜索参数之间并不具备关联性,使得算法的复杂度增加。而本实施例的方案主要是通过上一时刻的pso算法使用的历史搜索参数来确定当前时刻对应的当前搜索参数,且由于当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数,也就是说,本实施例在采用pso算法持续对终端进行定位的过程中,搜索参数不断减小,从而有助于降低算法的复杂度。
[0152]
在一些实施例中,处理器111调用存储器112存储的程序,还用于执行:在当前搜索空间内随机生成粒子群,对粒子群中每个粒子的粒子参数进行初始化,并根据每个粒子初始化后的粒子参数确定粒子群的全局最优解;迭代执行根据当前粒子数对每个粒子的粒子参数进行更新、并根据更新后的粒子参数对粒子群的全局最优解进行更新的步骤,直至迭代次数达到当前迭代次数。
[0153]
上述处理过程为迭代处理,直至迭代次数达到当前迭代次数,说明当前已经满足算法的结束条件,可以停止处理。从而,通过上述迭代处理过程,可以准确、快速得到终端在当前时刻的定位结果。
[0154]
在上述终端定位设备中,存储器和处理器之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或者多条通信总线或信号线实现电性连接,如可以通过总线连接。存储器中存储有实现数据访问控制方法的计算机执行指令,包括至少一个可以软件或固件的形式存储于存储器中的软件功能单元,处理器通过运行存储在存储器内的软件程序以及单元,从而执行各种功能应用以及数据处理。
[0155]
存储器可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。其中,存储器用于存储程序,处理器在接收到执行指令后,执行程序。进一步地,上述存储器内的软件程序以及单元还可包括操作系统,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通信,从而提供其他软件组件的运行环境。
[0156]
处理器可以是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0157]
在一些实施例中,提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现以下步骤:
[0158]
获取最近一次对终端进行定位得到的历史定位结果;根据历史定位结果,确定当
前时刻对终端进行定位时的当前搜索空间;基于当前搜索空间对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0159]
本实施例中,通过上一时刻的pso算法定位结果来确定当前时刻的当前搜索空间,可以在保证算法结果准确性的同时,降低算法的复杂度,从而实现对终端的快速定位。
[0160]
在一些实施例中,计算机执行指令被处理器执行时还用于实现:确定以历史定位结果为中心位置的空间为当前搜索空间。
[0161]
在一些实施例中,当前搜索空间小于或者等于历史搜索空间,历史搜索空间为最近一次对终端进行定位时的搜索空间。
[0162]
在一些实施例中,计算机执行指令被处理器执行时还用于实现:获取最近一次对终端进行定位时使用的历史搜索参数;根据历史搜索参数确定当前时刻对应的当前搜索参数;根据当前搜索空间以及当前搜索参数,对终端进行搜索定位,得到终端在当前时刻的定位结果。
[0163]
在一些实施例中,历史搜索参数包括历史粒子数以及历史迭代次数,当前搜索参数包括当前粒子数以及当前迭代次数;当前粒子数小于或者等于历史粒子数,当前迭代次数小于或者等于历史迭代次数。
[0164]
在一些实施例中,计算机执行指令被处理器执行时还用于实现:在当前搜索空间内随机生成粒子群,对粒子群中每个粒子的粒子参数进行初始化,并根据每个粒子初始化后的粒子参数确定粒子群的全局最优解;迭代执行根据当前粒子数对每个粒子的粒子参数进行更新、并根据更新后的粒子参数对粒子群的全局最优解进行更新的步骤,直至迭代次数达到当前迭代次数。
[0165]
在一些实施例中,提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本技术各方法实施例的步骤。
[0166]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0167]
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
[0168]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献