一种基于Voronoi图的反k最近邻查询方法技术

技术编号:8834384 阅读:149 留言:0更新日期:2013-06-22 20:35
本发明专利技术公开一种基于Voronoi图的反k最近邻查询方法,属于空间数据查询技术领域。包括下述步骤:步骤1:根据查询站点集,生成相应的Voronoi图;步骤2:导入查询对象数据集;步骤3:输入k值和查询点q的坐标,按k值调用步骤1所生成Voronoi图,得到RkNN查询结果;步骤4:结束。本发明专利技术实现变化频繁的数据集下的双色RkNN查询,即在某一k阶Voronoi图上可以查询出R(k-1)NN、RkNN、R(k+1)NN的结果。本发明专利技术减少了预计算量,并且查询效率与现有方法相比有较大提高,而且随着查询对象集数量的增大,这种优势也越明显,增强了Voronoi图的应用性。

【技术实现步骤摘要】

本专利技术涉及一种查询方法,特别涉及一种基于VOTonoi图的反k最近邻查询方法,属于空间数据查询

技术介绍
空间数据库中移动对象查询技术可以应用于城市交通、航空航天、通讯网络等存在移动对象的网络中,它可以根据大量的时空数据来挖掘信息从而提供给客户相关咨询。典型的空间查询是最近邻(nearest neighbors, NN)查询和k最近邻(k nearestneighbors, kNN)查询。例如:旅客会问哪家酒店距离车站最近;司机会查询最近的2个加油站在什么地方。反最近邻(reverse nearest neighbors, RNN)查询是NN查询的变种,其回答谁把查询对象看成最近邻居,如某个城市的一系列连锁店可能要给客户发布一些广告,每个连锁店发广告的客户群是不同的,这些客户的范围可以定义成为受到某个连锁店影响的客户群,用RNN查询就可以确定这些群体;还有在移动数据库系统中各个移动对象倾向于在最近或者反向对进的对象中共享一些信息等等。此外,在游戏领域,空间数据库查询技术也有一定的发展前景,比如由美国的Blizzard公司开发的大型网络游戏中,游戏玩家在地图侦测中发现敌人或寻找建筑物等操作就是kNN和RNN的体现。反k最近邻(reverse k nearest neighbors, RkNN)查询则是kNN查询的补充和发展,按数据集的不同分为单色RkNN查询和双色RkNN (bichromatic reverse k nearestneighbors, BRkNN)查询。F.korn 和 S.Muthukrishnan 提出 了 RNN 查询的概念,并给出 了求解RNN的查询方法。使用了两个R树来进行查询、插入、删除操作。Yang和Lin改进了以上的方法,使得用单一树进行RNN查询和NN查询成为可能。Stanoi等人提出了一种在没有预测的情况下进行计算的方法。该方法将查询点的周边范围划分成6个大小相同的扇区,首先在各自的扇区内找到RNN的候选对象;其次,对于每个候选对象完成了一个独立的NN查询来判断这个候选对象是不是最后的结果。Maheshwari等人提出了主存数据结构的RNN查询,对于每个点其结构维持着其到最近邻的距离。Stanoi等人提出的方法在高维空间中,随着维数的增加,RNN的候选值呈现指数增长。效率大幅降低。为了解决这个问题,Singh等人提出了通过执行常规的kNN查询找出RkNN候选值。但该方法的缺点在于不是总能找到所有的RkNN点。Tao等人提出的方法与Stanoi等人提出的相似,该方法分成筛选和精炼两个阶段,给定一个查询点q,方法递归回到q点未划分的空间,直到没有候选对象剩下。在过滤的步骤时,去除了一些确定为错误结果的候选对象。在基于Voronoi图的RNN查询方面,李松、郝忠孝提出的在欧几里德平面内的Voronoi图中使用Range-k验证法来查找结果。即以点集中一点为中心,点到查询点的距离为半径生成一个判断圆来以此找出RNN。该方法只适用于对单色RkNN的查询,在双色RkNN查询时存在大量不必要的I/O操作。Maytham Safar则提出了网络Voronoi图的空间中进行RNN查询。方法适用于交通网络等方面,在查询对象频繁更换时效率很低。Voronoi图是同给定的客体离散集(如点集)的距离确定的空间分解,特别是点集p={pl, p2,…,pn}的Voronoi图被定义为cell集。这里每个cell, V(pi)是一个空间区域,由距离Pi比距离P中其他点更近的全部空间数据点组成。Voronoi图可以推广到k阶Voronoi图(order k voronoi diagram,KVD),距离判断法是一种现有的Voronoi图的生成方法,图1为利用该方法生成的3阶Voronoi图,图2为利用该方法生成的2阶3阶混合Voronoi图。在KVD中每个区域中的查询对象依据BRkNN的定义可知,就是当前区域的生成元的RkNN值。如图1所示,查找站点3的R3NN值:首先定位那些生成元所含站点3的Voronoi 区域,有 V(1,3,5)、V(1,3,4)、V(l,3, 6)、V(1,2,3)四个。因此,这四个 Voronoi区域内所包含的查询对象都是站点3的R3NN查询结果。但是,现有的使用KVD执行BRkNN查询方法具有明显的缺点: (I)高代价的预计算。KVD需要预计算所有的KVD的cell和与cell相关的所有信息如生成元、Voronoi边、Voronoi顶点等。(2)不支持动态改变的k值。KVD仅能适应带有明确k值的RkNN查询,KVD适应k值不大于图的阶数的RkNN查询。因此,这个技术不适用于预先不知道k值或可能动态改变k值的情形。(3)效率低下的更新操作。对于每个插入或删除操作,cell不得不重新计算。
技术实现思路
本专利技术针对上述问题及缺点,为了能够实现在单张k阶Voronoi图上查询多个k值的BRkNN结果,提供了(BRKVD),来实现变化频繁的数据集下的双色RkNN查询,即在某一 k阶Voronoi图上可以查询出R(k— I)NN,RkNN、R(k + I) NN 的结果。本专利技术的目的 是通过以下技术方案实现的:一种基于VOTonoi图的反k最近邻查询方法,是采用过滤-提炼的框架模型。在过滤阶段,按k值调用所需要的Voronoi图,并以查询站点为依据在该Voronoi图上确定由哪些Voronoi多边形组成查询范围,然后将查询范围内的所有查询对象定为候选集。在提炼阶段,以k值为标准,如果k值与调用的Voronoi图的阶数相同,那么候选集中所有的查询对象即为结果;如果不同,那么先将所有候选集中相同的查询对象筛选出来确定为结果,然后使用Range-k验证方法验证余下的候选对象,从而得到最终的查询结果,具体包括下述步骤: 步骤1:根据查询站点集,生成相应的Voronoi图,方法为:现有的Voronoi图生成方法; 步骤2:导入查询对象数据集,方法为:对数据文件进行读取,并显示数据; 步骤3:输入k值和查询点q的坐标,按k值采用步骤I所生成阶数为m的Voronoi图,得到RkNN查询结果,其中: 当k = m时,所有包含站点q的多边形内的查询对象即为结果, 当k < m时,查检所有包含站点q的多边形内的查询对象,当查询对象的位置在包含站点q的k 一 3阶Voronoi多边形内,即为结果;当不在时,以Range-k验证法确定结果,即以查询对象为圆心,到站点q的距离为半径做圆,当圆内及圆上所包含的站点数彡k,即为结果,反之则不是, 当k > m时,所有包含站点q的Voronoi多边形内的查询对象即为结果;并且分别检查这些多边形的邻接多边形内的查询对象,以查询对象为圆心,到站点q的距离为半径做圆,当圆内及圆上所包含的站点数< k + 1,即为结果,反之则不是; 步骤4:结束。步骤I所述的根据查询站点集,生成相应的Voronoi图,能够查询出R(k — I) NN,RkNN、R(k + I) NN 的结果。本专利技术与现有技术相比具有下列优点效果:实现了在单张k阶VOTonoi图上查询多个k值的BRkNN结果。根据Voronoi图的性质可知R(k本文档来自技高网
...

【技术保护点】
一种基于Voronoi图的反k最近邻查询方法,其特征在于:包括下述步骤:步骤1:根据查询站点集,生成相应的Voronoi图,方法为:现有的Voronoi图生成方法;步骤2:导入查询对象数据集,方法为:对数据文件进行读取,并显示数据;步骤3:输入k值和查询点q的坐标,按k值采用步骤1所生成阶数为m的Voronoi图,得到RkNN查询结果,其中:当k=m时,所有包含站点q的多边形内的查询对象即为结果,当k<m时,查检所有包含站点q的多边形内的查询对象,当查询对象的位置在包含站点q的k-3阶Voronoi多边形内,即为结果;当不在时,以Range?k验证法确定结果,即以查询对象为圆心,到站点q的距离为半径做圆,当圆内及圆上所包含的站点数≤k,即为结果,反之则不是,当k>m时,所有包含站点q的Voronoi多边形内的查询对象即为结果;并且分别检查这些多边形的邻接多边形内的查询对象,以查询对象为圆心,到站点q的距离为半径做圆,当圆内及圆上所包含的站点数≤k+1,即为结果,反之则不是;步骤4:结束。

【技术特征摘要】
2012.11.01 CN 201210430002.51.一种基于VOTonoi图的反k最近邻查询方法,其特征在于:包括下述步骤: 步骤1:根据查询站点集,生成相应的Voronoi图,方法为:现有的Voronoi图生成方法; 步骤2:导入查询对象数据集,方法为:对数据文件进行读取,并显示数据; 步骤3:输入k值和查询点q的坐标,按k值采用步骤I所生成阶数为m的Voronoi图,得到RkNN查询结果,其中: 当k = m时,所有包含站点q的多边形内的查询对象即为结果, 当k < m时,查检所有包含站点q的多边形内的查询对象,当查询对象的位置在包含站点q的k 一 3阶V...

【专利技术属性】
技术研发人员:宋晓宇孙焕良许景科王永会赵明
申请(专利权)人:沈阳建筑大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1