【发明内容】
有鉴于此,本发明提供了一种确定离线定位数据质量的方法和装置,以便于能够衡量离线定位的质量,从而能够对离线定位数据的优化起指导作用。
具体技术方案如下:
本发明提供了一种确定离线定位数据质量的方法,该方法包括:
利用服务器端的在线定位日志和离线定位数据,确定离线定位数据的覆盖率和/或成功率;
其中所述确定离线定位数据的覆盖率包括:统计所述在线定位日志中设定时间段内的总记录数X,以及统计在线定位日志中设定时间段内的LAC标识信息在离线定位数据库中存在的记录数目Y,利用Y与X的比值确定离线定位数据的覆盖率;
所述确定离线定位数据的成功率包括:统计所述在线定位日志中设定时间段内的总记录数X,以及统计设定时间段内在线定位日志中的定位结果与离线定位数据一致的数量Z,利用Z与X的比值确定离线定位数据的成功率。
根据本发明一优选实施方式,所述LAC数据包括:LAC标识信息及其对应的位置信息。
根据本发明一优选实施方式,所述LAC数据是根据LAC对基站数据进行合并后得到的,所述基站数据包括基站标识、基站所属LAC标识以及基站的位置信息。
根据本发明一优选实施方式,所述根据LAC对基站数据进行合并包括:
将属于同一LAC的基站数据基于位置信息进行聚类,得到至少一个类;
记录LAC的标识信息及其对应类的中心点位置信息,以及轮廓信息或半径信息。
根据本发明一优选实施方式,所述统计设定时间段内在线定位日志中的定位结果与离线定位数据一致的数量Z包括:
比较在线定位日志中某基站ID对应的定位结果与该基站ID所属LAC标识信息在离线定位数据中对应的位置信息是否一致,如果是,则统计该定位结果;
针对设定时间段内在线定位日志中的所有定位结果均执行所述比较的操作,最终统计的定位结果数量为所述Z。
根据本发明一优选实施方式,在所述统计定位结果时,进一步记录离线定位数据中与所述定位结果一致的位置信息的定位精度信息;
该方法进一步包括:从统计的定位结果中确定预设精度信息的定位结果数目,利用该数目与X的比值确定所述预设精度对应的离线定位数据的成功率。
根据本发明一优选实施方式,利用确定的覆盖率和/成功率,优化离线定位数据的确定方法。
根据本发明一优选实施方式,所述利用确定的覆盖率和/成功率,优化离线定位数据的确定方法包括:
针对确定离线定位数据时采用的不同聚类方法分别计算得到的离线定位数据的覆盖率和/或正确率,选择覆盖率和/或正确率满足预设覆盖率要求和/或正确率要求的聚类方式;或者,
依据采用某聚类方法得到的离线定位数据的覆盖率和/或成功率,调整所述某聚类方法中的聚类参数值,直至得到的离线定位数据的覆盖率和/或成功率满足预设覆盖率要求和/或成功率要求。
根据本发明一优选实施方式,该方法进一步包括:
根据对离线定位数据的数据量要求,调整所述覆盖率要求和/或成功率要求,从而选择出得到的离线定位数据的数据量能够满足所述数据量要求的聚类方式和/或聚类参数。
本发明还提供了一种确定离线定位数据质量的装置,用于利用服务器端的在线定位日志和离线定位数据,确定离线定位数据的覆盖率和/或成功率;该装置包括:覆盖率确定单元和/或成功率确定单元;
所述覆盖率确定单元,用于统计所述在线定位日志中设定时间段内的总记录数X,以及统计在线定位日志中设定时间段内的LAC标识信息在离线定位数据库中存在的记录数目Y,利用Y与X的比值确定离线定位数据的覆盖率;
所述成功率确定单元,用于统计所述在线定位日志中设定时间段内的总记录数X,以及统计设定时间段内在线定位日志中的定位结果与离线定位数据一致的数量Z,利用Z与X的比值确定离线定位数据的成功率。
根据本发明一优选实施方式,所述LAC数据包括:LAC标识信息及其对应的位置信息。
根据本发明一优选实施方式,该装置还包括:离线数据确定单元,用于根据LAC对基站数据进行合并后得到所述LAC数据,所述基站数据包括基站标识、基站所属LAC标识以及基站的位置信息。
根据本发明一优选实施方式,所述离线数据确定单元,具体用于将属于同一LAC的基站数据基于位置信息进行聚类,得到至少一个类;记录LAC的标识信息及其对应类的中心点位置信息,以及轮廓信息或半径信息。
根据本发明一优选实施方式,所述成功率确定单元在统计所述Z时,具体执行:
比较在线定位日志中某基站ID对应的定位结果与该基站ID所属LAC标识信息在离线定位数据中对应的位置信息是否一致,如果是,则统计该定位结果;
针对设定时间段内在线定位日志中的所有定位结果均执行所述比较的操作,最终统计的定位结果数量为所述Z。
根据本发明一优选实施方式,所述成功率确定单元在所述统计定位结果时,进一步记录离线定位数据中与所述定位结果一致的位置信息的定位精度信息;从统计的定位结果中确定预设精度信息的定位结果数目,利用该数目与X的比值确定所述预设精度对应的离线定位数据的成功率。
根据本发明一优选实施方式,该装置还包括:优化单元,用于利用所述覆盖率确定单元确定的覆盖率和/或成功率确定单元确定的成功率,优化离线定位数据的确定方法。
根据本发明一优选实施方式,所述优化单元,具体用于针对确定离线定位数据时采用的不同聚类方法分别计算得到的离线定位数据的覆盖率和/或正确率,选择覆盖率和/或正确率满足预设覆盖率要求和/或正确率要求的聚类方式;或者,
依据采用某聚类方法得到的离线定位数据的覆盖率和/或成功率,调整所述某聚类方法中的聚类参数值,直至得到的离线定位数据的覆盖率和/或成功率满足预设覆盖率要求和/或成功率要求。
根据本发明一优选实施方式,所述优化单元,还用于根据对离线定位数据的数据量要求,调整所述覆盖率要求和/或成功率要求,从而选择出得到的离线定位数据的数据量能够满足所述数据量要求的聚类方式和/或聚类参数。
由以上技术方案可以看出,本发明利用服务器端的在线定位日志和离线定位数据,确定离线定位数据的覆盖率和/或成功率,利用覆盖率和/或成功率反映离线定位数据的质量,从而衡量离线定位的质量并对离线定位数据的优化起指导作用。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明的核心思想在于,利用服务器端的在线定位日志和离线定位数据库,确定离线定位数据的覆盖率和/或成功率,以此衡量离线定位数据的质量。并能够进一步依据离线定位数据的质量自适应地调节离线定位数据的确定方法。
本发明实施例所涉及的在线定位日志指的是对采用在线定位方式进行定位的行为记录,在线定位方式主要包括基站定位和wifi定位,因此,在线定位日志中可以包括:基站ID对应的定位结果、wifi标识对应的定位结果等等,还可以包括定位时间,基站ID所属的LAC(Location Area Code,位置区码)标识信息等。LAC是唯一识别我国数字公共陆地移动网络中每个位置区的,是一个2字节16进制的BCD码。LAC在每个小区广播信道上的系统消息中发送,移动设备在进行在线定位时获取基站ID的同时也会获取到该基站所属的LAC标识信息。服务器端在进行在线定位日志的记录时,也会记录各基站ID所属的LAC标识信息。
离线定位数据是可以用于移动设备进行离线定位所使用的数据,在本发明实施例中离线定位数据可以包括LAC数据,该LAC数据可以包括LAC标识信息及其对应的位置信息。该离线定位数据可以是对基站数据进行合并后得到的。下面对离线定位数据的产生过程进行介绍。
每一个基站数据都包含基站ID、所属LAC、基站的位置信息(例如经纬度)等属性信息,其中基站的位置信息可以是从运营商处获取的基站位置信息,也可以是经过对基站定位结果(可以从在线定位日志中获取)中同一基站对应的定位结果进行聚类后得到的中心点位置信息。
对数据库中的基站数据基于LAC进行合并,得到属于同一LAC的所有基站数据。在进行合并时,可以采用聚类的方式。即将属于同一LAC的基站数据基于位置信息进行聚类,大多数下,属于同一LAC的基站数据会被聚类成同一类,记录该LAC对应类的中心点的位置信息,该位置信息可以是经纬度,也可以是所在的行政区划信息,例如在xx省xx市xx区,更进一步地,还可以记录LAC对应类的轮廓信息或覆盖区域的半径。
经过观察发现一些相同运营商、不同MNC(移动网络号码,MobileNetwork Code)、相同LAC对应的位置信息通常会相互重叠,若重叠范围较大,则可以考虑合并,从而减少位置信息的数量。基于此,可以将同一个运营商的不同MNC、相同LAC的位置信息尽量合并,如果不能合并,则全部保留。例如,若同一LAC的两条位置信息分属于同一运营商的不同MNC,则当两个位置信息的中心偏移较小(例如小于指定距离范围)时,可以将这两条位置信息合并为一条;当两条位置信息的中心偏移较大(大于指定距离范围)时,认为两条位置信息不能被合并,需要分别作为一条位置信息。通过合并有利于减少数据量,节约存储资源。
在有些情况下,例如LAC覆盖的区域过大,则可能会产生同一LAC的基站数据会被聚类成多个类(本发明实施例中所述“多个”指代多于一个),此时可以对得到的类分别判断是否符合预设的属性标准,如果不符合,则将该类过滤掉。记录该LAC对应的符合属性标准的类的中心点的位置信息,还可以进一步记录符合属性标准的类的轮廓信息。
其中,上述属性标准可以采用但不限于以下所列中之一或任意组合:
1)类内基站的创建时间在最近的预设时间范围内。这种情况是为了防止有些基站创建时间很久,有可能实际的基站已经不再使用,但数据库中的基站数据未及时更新,对于这种情况产生的类可以将其过滤掉,不进行记录。
2)类的覆盖面积大于或等于预设的面积标准。有些基站离散于其他大多数基站而分布成一小类,用户在该类所覆盖区域的概率相比较其他类通常要低得多,往往是一些在距离市区很远的某些地方,基于某种特殊的需求而创建的基站,因此对于这种情况产生的类可以将其过滤掉。
3)类内基站的数量大于或等于预设的数量标准。通常对于用户较密集、需求量比较高的地方,通常会设置较多数量的基站。与上述第2)种情况类似的,有些基站离离散于其他大多数基站而分布成一小类,用户在该类所覆盖区域的概率相比较其他类通常要低得多,因此对于这种情况产生的类可以将其过滤掉。
在对基站数据基于位置信息进行聚类时,可以采用诸如K-means、K-medoids、DBSCAN(Density-Based Spatial Clustering of Applications withNoise,,具有噪声的基于密度的聚类方法)等聚类方法,本发明对聚类方式不加以限制。
最终得到的LAC数据可以包括:LAC标识信息及其对应的位置信息,其中LAC对应的位置信息可以包括所覆盖区域的中心点位置信息,还可以包括所覆盖区域的轮廓信息或半径信息。其中中心点位置信息可以采用经纬度描述,也可以采用行政区划信息描述。
确定LAC数据所基于的基站数据可以是从运营商处获取,也可以通过收集各种具有定位功能的应用的定位日志,从定位日志中获取。具有定位功能的应用可以是但不限于:各种地图。
本发明实施例中,离线定位数据的质量可以通过覆盖率和成功率中的至少一个来反映。
在确定离线定位数据的覆盖率时,首先统计在线定位日志中设定时间段内的总记录数X,以及统计在线定位日志中设定时间段内的LAC标识信息在离线定位数据库中存在的记录数目Y;然后利用Y与X的比值确定离线定位数据的覆盖率。例如,统计在线日志中一天内的总记录数,有X条定位记录,通常一天内在线定位日志的总记录数为亿次级别。这X条定位记录中的LAC标识信息在离线定位数据库中存在的记录数目为Y条,例如这X条定位记录中存在LAC1、LAC2、LAC3、LAC4(可能每个LAC都存在于多条定位记录中),其中LAC1、LAC2和LAC3在离线定位数据库中存在记录,那么Y为3。那么就可以将YX的值作为离线定位数据的覆盖率。
在确定离线定位数据的成功率时,可以统计设定时间段内在线定位结果与离线定位数据一致的数量Z,利用Z与X的比值确定离线定位数据的成功率。其中离线定位结果就是离线定位数据库中的位置信息。
具体地,可以将一天内的在线定位日志中的一条定位数据与离线定位数据进行比较,即首先确定该条定位数据中基站ID所属的LAC标识信息,再确定该LAC标识信息在离线定位数据中对应的位置信息,判断该条定位数据中的基站定位数据与LAC标识信息在离线定位数据中对应的位置信息一致,例如是否落入LAC标识信息对应的区域。举个例子,假设在线定位日志中的一条定位数据为:[基站a,LAC1,(39.98,116.30)],其中基站a为基站ID,LAC1为基站a所属的LAC标识,(39.98,116.30)为经纬度。利用该LAC1查询离线定位数据,假设得到的对应位置信息为:北京市海淀区,判断(39.98,116.30)是否落入北京市海淀区的范围,判断结果为是,说明该条定位数据与离线定位数据一致。对一天内的在线定位日志中的所有定位数据都执行类似比较,统计得出一致结果的数目,该数目就是Z。这里“一天”是预设时间段的一个例子。
另外,由于各LAC标识信息在离线定位数据库中对应的位置信息是存在不同精度的,即离线定位精度,该精度可以由区域半径或者行政区划信息(例如城市级别、区县级别等)来反映。因此可以分别针对不同精度统计出成功率。例如,在比较出在线定位日志中基站定位数据与LAC标识信息在离线定位数据中对应的位置信息一致时,除了统计得出一致结果的数目之外,进一步记录得出一致结果对应的离线定位精度。统计预设精度对应的一致结果数目,将该数目与X的比值确定该预设精度对应的离线定位数据的成功率。
在确定出离线定位数据的覆盖率和成功率后,可以自适应地优化离线定位数据的确定方法。其中对离线定位数据的确定方法进行的优化主要包括聚类方式的优化和聚类参数的优化。
1)优化离线定位数据所采用的聚类方式。
由之前描述的确定离线定位数据的过程中可以得知,离线定位数据是利用基站数据得到的,具体地,是基于位置信息对属于同一LAC的基站数据进行聚类后得到的。在聚类时,可以采用多种聚类方式,诸如K-means、K-medois、DBSCAN等聚类方法。
在本发明实施例中,可以分别计算不同聚类方式得到的离线定位数据的覆盖率和/正确率,选择覆盖率和/或正确率满足预设覆盖率要求和/或正确率要求的聚类方式。然后可以将利用选择的聚类方式得到的离线定位数据设置于移动设备,以便进行离线定位时使用。
2)优化确定离线定位数据所使用的聚类方法中的聚类参数。
当确定离线定位数据时,在基于位置信息对属于同一LAC的基站数据进行聚类时,执行聚类算法过程中会涉及到一些聚类参数,例如k-means算法中会涉及到每轮迭代得到的新的聚类中心与上一轮迭代得到的聚类中心之间的距离,当距离小于或等于预设距离阈值时,迭代结束。那么其中的距离阈值就是一个聚类参数。DBScan聚类方法涉及到的参数主要是扫描半径eps和最小包含点数minPts,大概的聚类过程为:任选一个未被访问的点开始,找出与其距离在eps之内的所有附近点,如果附近点的数量大于或等于minPts,则当前点与其附近点形成一个类,并且触发点被标记为已访问,然后递归,以相同的方法处理该类内所有未被标记为已访问的点,从而对类进行扩展。如果附近点的数量小于minPts,则该触发点被暂时标记为噪声点。
当确认使用一种聚类方法来对属于同一LAC的基站数据进行聚类从而得到离线定位数据时,可以对得到的离线定位数据确定覆盖率和/或成功率,依据得到的覆盖率和/或成功率调整聚类方法中的聚类参数值,直至得到的离线定位数据的覆盖率和/或成功率满足预设覆盖率要求和/或成功率要求。然后采用调整后的聚类参数值进行聚类后得到离线定位数据,使用该离线定位数据配置于移动设备,以便进行离线定位时使用。
更进一步地,根据应用需要的定位精度不同,可以分别针对不同定位精度来分别优化聚类方法和聚类参数,从而得到针对不同定位精度的离线定位数据。
例如,可以针对城市级别的精度分别计算离线定位数据的成功率和覆盖率,采用上述第1)或第2)所述的方式选择聚类方法和调整聚类参数,并利用选择的聚类方法和调整后的聚类参数得到城市级别的离线定位数据。再针对区县级别的精度分别计算离线定位数据的成功率和覆盖率,采用上述第1)或第2)所述的方式选择聚类方法和调整聚类参数,并利用选择的聚类方法和调整后的聚类参数得到城市区县级别的离线定位数据。
然后可以将城市级别的离线定位数据和区县级别的离线定位数据配置于移动设备,以便移动设备中的应用需要城市级别的定位精度时,采用城市级别的离线定位数据进行离线定位,当移动设备中的应用需要区县级别的定位精度时,采用区县级别的离线定位数据进行离线定位。
更进一步地,还可以根据对离线定位数据的数据量的要求,调整对覆盖率和/或成功率的预设要求,从而选择出得到的离线定位数据的数量能够满足要求的聚类方式和聚类参数。由于移动设备的存储量是限制的,那么对离线定位数据的数据量也会有一定要求,如果数据量太大移动设备可能无法存储或对性能有很大影响。通常覆盖率越高离线定位数据的数据量越大,成功率越高离线定位数据的数据量越大。因此,在选择聚类方式和调整聚类参数时,可以调整对离线定位数据库的覆盖率和/或成功率的要求,从而选择聚类方式和调整聚类参数使得在满足离线定位数据库的覆盖率和/或成功率的要求同时,满足离线定位数据的数据量要求。
图1为本发明实施例提供的装置结构图,该装置用于利用服务器端的在线定位日志和离线定位数据,确定离线定位数据的覆盖率和/或成功率,以此衡量离线定位数据的质量。如图1所示,该装置具体包括:覆盖率确定单元01和/或成功率确定单元02,图1中以同时包含这两个单元为例,还可以包括离线数据确定单元03和优化单元04。
覆盖率确定单元01负责统计在线定位日志中设定时间段内的总记录数X,以及统计在线定位日志中设定时间段内的LAC标识信息在离线定位数据库中存在的记录数目Y,利用Y与X的比值确定离线定位数据的覆盖率。
成功率确定单元02负责统计在线定位日志中设定时间段内的总记录数X,以及统计设定时间段内在线定位日志中的定位结果与离线定位数据一致的数量Z,利用Z与X的比值确定离线定位数据的成功率。
具体地,可以将一天内的在线定位日志中的一条定位数据与离线定位数据进行比较,即首先确定该条定位数据中基站ID所属的LAC标识信息,再确定该LAC标识信息在离线定位数据中对应的位置信息,判断该条定位数据中的基站定位数据与LAC标识信息在离线定位数据中对应的位置信息一致,例如是否落入LAC标识信息对应的区域。对一天内的在线定位日志中的所有定位数据都执行类似比较,统计得出一致结果的数目,该数目就是Z。
另外,成功率确定单元02在统计定位结果时,可以进一步记录离线定位数据中与定位结果一致的位置信息的定位精度信息;从统计的定位结果中确定预设精度信息的定位结果数目,利用该数目与X的比值就能够确定预设精度对应的离线定位数据的成功率。
离线定位数据库中的LAC数据包括:LAC标识信息及其对应的位置信息。该LAC数据可以由离线数据确定单元03得到。具体地,离线数据确定单元03根据LAC对基站数据进行合并后得到LAC数据,基站数据包括基站标识、基站所属LAC标识以及基站的位置信息。
离线数据确定单元03可以将属于同一LAC的基站数据基于位置信息进行聚类,得到至少一个类;记录LAC的标识信息及其对应类的中心点位置信息,以及轮廓信息或半径信息。得到LAC数据过程的更多细节可以参见上述方法实施例中的描述。
在确定出离线定位数据的覆盖率和成功率后,可以自适应地优化离线定位数据的确定方法,该优化处理由优化单元04执行。具体地,该优化处理可以包括聚类方法的优化和聚类参数的优化。
对于聚类方法的优化,优化单元04可以针对确定离线定位数据时采用的不同聚类方法分别计算得到的离线定位数据的覆盖率和/或正确率,选择覆盖率和/或正确率满足预设覆盖率要求和/或正确率要求的聚类方式。
对于聚类参数的优化,优化单元04可以依据采用某聚类方法得到的离线定位数据的覆盖率和/或成功率,调整某聚类方法中的聚类参数值,直至得到的离线定位数据的覆盖率和/或成功率满足预设覆盖率要求和/或成功率要求。
更进一步地,优化单元04可以根据对离线定位数据的数据量要求,调整覆盖率要求和/或成功率要求,从而选择出得到的离线定位数据的数据量能够满足数据量要求的聚类方式和/或聚类参数。由于移动设备的存储量是限制的,那么对离线定位数据的数据量也会有一定要求,如果数据量太大移动设备可能无法存储或对性能有很大影响。通常覆盖率越高离线定位数据的数据量越大,成功率越高离线定位数据的数据量越大。因此,在选择聚类方式和调整聚类参数时,可以调整对离线定位数据库的覆盖率和/或成功率的要求,从而选择聚类方式和调整聚类参数使得在满足离线定位数据库的覆盖率和/或成功率的要求同时,满足离线定位数据的数据量要求。
本发明提供的装置可以设置于服务器端,也可以设置为独立的装置。
由以上描述可以看出,本发明提供的方法和装置可以具备以下优点:
1)本发明利用服务器端的在线定位日志和离线定位数据,确定离线定位数据的覆盖率和/或成功率,利用覆盖率和/或成功率反映离线定位数据的质量,从而实现离线定位的质量衡量,并能够对离线定位数据的优化起指导作用。
2)本发明利用离线定位数据的覆盖率和/或成功率能够对确定离线定位数据的方法进行优化,即不需要依赖移动设备的反馈,在服务器端就能形成闭环反向进行数据优化,提高离线定位的质量。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。