搜索数据库的方法、生成索引结构的导航设备和方法技术

技术编号:7809415 阅读:143 留言:0更新日期:2012-09-27 08:19
本发明专利技术提供了一种在导航设备数据库中执行相似性搜索的方法,其使用了度量索引结构。该索引结构包括多个节点。当接收到查询对象(51)时,访问与至少一个对象(52,55,59,60)相关联的索引结构的节点。按照距离度量确定查询对象(51)和至少一个对象(52,55,59,60)之间的距离(65,66)。基于所确定的距离,选择性地访问该索引结构中的另一个节点。

【技术实现步骤摘要】
搜索数据库的方法、生成索引结构的导航设备和方法
本专利技术涉及在导航设备中使用的数据库搜索方法和设备。本专利技术尤其涉及使用索引结构搜索导航设备数据库的方法、生成索引结构的导航设备和方法。
技术介绍
众所周知,导航设备执行诸如在两个位置之间的路线搜索的功能。现代导航设备还可提供附加功能,诸如起到行程向导的作用,其根据需求输出关于兴趣点(POI)的信息。这样的信息可包括街道或POI的名称,而且还可包括附加文本或多媒体信息。例如,一些导航设备可包括行程向导功能,以文本和/或多媒体的形式输出关于对象的详细解释。鉴于在现代导航设备之中使用的数据库的大小,在该数据库中进行搜索是相当大的挑战。尤其是在执行对文本字符串、音位字符串(phonemestring)、多媒体对象,或在欧几里得(Euclidean)空间中未定义出的其它对象的搜索的时候。在2D或3D空间中定义的对象的几何坐标可使得这些对象能够基于它们的坐标被编入索引,用于基于坐标的搜索。这样的编入索引对于诸如文本字符串、音位字符串、多媒体对象,或在欧几里得空间中未定义出的其它对象更具有挑战性。进一步地,当针对诸如文本字符串、音位字符串,或多媒体对象进行搜索时,用户可能不仅对获得准确的命中感兴趣,用户还可能会对获得关于与查询近似但不必相同的搜索结果的信息感兴趣。对于许多应用,诸如输入路线搜索的起始和终点位置、中间点或转接点,或输入POI时,用户可能不知道对该名称的正确文本表达。在数据库中依据字符串首字母搜索准确匹配的常规技术在当这些首字母中出现拼写错误时可能会失败。进一步地,在导航设备中,由于存储空间限制所强加的约束和可用的运算时间的界限,使得实现高效的容错(fault-tolerant)的搜索尤其具有挑战性。
技术实现思路
据此,存在对提供能够进行容错搜索的方法和导航设备的需求。尤其是对使容错搜索能够被高效地执行的这样的方法和导航设备的需求。这种需求通过独立权利要求中所述的设备和方法来解决。从属权利要求定义了各种实施方式。依据一个方面,提供了一种在导航设备数据库中执行相似性搜索的方法。该相似性搜索是使用一种索引结构执行的。该数据库包括多个对象,并且该索引结构包括多个节点。接收查询对象。访问与多个对象中的至少一个对象相关联的索引结构的节点。对于所访问节点中的至少一个对象,依据距离度量(distancemetric)确定在查询对象和该对象之间的距离。基于所确定的距离,选择性地访问索引结构的另一节点。该方法使用相似性搜索。这使得模糊搜索能够被实现成,模糊搜索不仅提供关于准确匹配的信息,而且还在数据库中检索出了关于最相似对象的信息。在该方法中,确定出在查询对象和索引结构的节点中的对象之间的距离,以识别出将要访问哪个(些)其它的节点。这使得该搜索能够被高效地执行。不需要访问既不包括也不指向距查询对象的距离大于阈值的对象的节点。通过使用依据距离度量确定的距离,定量地评估出查询对象和在索引结构中包括的对象之间的相似性或非相似性。该索引结构可被存储在导航设备的存储设备中。该索引结构可以是度量索引结构。依据常规术语,度量索引结构是仅考虑对象之间(而非它们在多维空间中的坐标之间)的相对距离的索引,以对该索引进行分割。该索引结构可尤其是M树(M-tree)、优势点树(vantage-pointtree),或依据距离度量组织的任意其它的树结构。该索引结构是按照距离函数组织的,其与用于确定查询对象和执行搜索的对象之间距离的距离相同。使用常规术语,“距离度量”或“度量”在此被理解为指示满足自反性、对称性和三角不等性的基本条件的距离函数。使用常规术语,术语“相似性搜索”在此被用于指示对对象的搜索,这些对象满足关于相对于查询对象的相似性或非相似性的给定准则。例子包括,搜索具有非相似性的对象,该非相似性是作为依据小于固定阈值的距离度量的距离而被测量的,或者,搜索具有最小非相似性的对象,该最小非相似性是作为依据被索引的对象当中距查询对象的距离度量的距离而被测量的。可以但不必确定出在查询对象和由该搜索中访问的节点表示的所有对象之间的准确距离。针对沿着穿过该索引结构的路径的节点中的至少一些,可足以确定出该查询对象和该索引结构中相应的对象之间距离的下界。这些对象可以是字符串,尤其是音位字符串或文本字符串,相应地,查询对象可以是音位字符串或文本字符串。这使得能够执行对音位字符串或文本字符串的容错搜索。当输入起始和终点位置时、当在数据库中搜索POI时、当搜索被存储在该数据库中的文本或多媒体数据时,或者在类似情况下,这样的搜索可能是有用的。用于字符串对象的距离度量可从多个可用的字符串度量中的任意一种中被选定。例如,该距离度量可以是基于Levenshtein距离的。该距离函数还可以是Damerau-Levenshtein距离、Jaro-Winkler距离、汉明(Hamming)距离、按照Soundex距离度量所确定的距离、Needleman-Wunsch距离、Gotoh距离、Smith-Waterman-Gotoh距离、P≥1的Lp距离,或者遵守自反性、对称性和三角不等性的基本条件的任意其它字符串度量中的任意一种。可接收文本输入并执行文本到音位的转换,以由该文本输入生成查询对象。备选地或额外地,该查询对象可以是由语音输入生成的音位字符串。该索引结构可进一步包括关于在被访问的节点中包括的至少一个对象和该索引结构中其它对象之间距离的距离信息。对于具有父对象的任意节点,该距离信息可包括在该节点中的该对象与其父对象之间的距离。该距离信息可被存储在该索引结构中。备选地或额外地,对于指向另一个节点的任意对象,即,其不在叶节点中,该距离信息可包括该对象和在与该对象相关联的索引结构的子树中包括的任意对象之间距离的上界。该距离上界还可被称为覆盖半径,因为其表示了该对象周围的距离,在其子树中的所有对象位于该距离之内。通过将这样的距离信息包括到该索引结构中,该距离信息可在运行时被使用,而不需要在相似性搜索中对其进行计算。因此可增强搜索的性能。基于查询对象和被访问的节点中包括的对象之间的距离,并且基于距离信息,可选择性地执行对另一个节点的访问。可执行阈值比较。基于该阈值比较,可确定是否必须搜索索引的子树。备选地或附加地,基于阈值比较,可确定是否需要计算查询对象和在该索引结构中的对象之间的准确距离。可将查询对象与在该节点中包括的对象之间的距离和覆盖半径与搜索半径之和相比较。如果该阈值比较表明查询对象和在节点中包括的对象之间的距离大于求和值,则不需要访问该对象所指向的索引结构的子树。搜索半径可以是固定的,或者可以使其随着相似性搜索的进行而变化。节点可包括若干个对象。针对若干个对象中的每一个,索引结构可包括在相应的对象与在该相应的对象指向的索引结构的子树中包括的任意对象之间的距离上界。基于所确定的距离,可从相似性搜索中选择性地剪除对象。剪除可基于查询对象和在节点中的对象之间所确定出的距离,并基于对象的覆盖半径来执行。可以迭代的方式重复确定距离和选择性地访问另一个节点的步骤。在重复这些步骤时,不需要针对节点中的对象中的每一个都计算查询对象和该节点中包括的对象之间的距离。查询对象和节点中包括的对象之间的距离可基于某种准则选择性地计算,这种本文档来自技高网
...
搜索数据库的方法、生成索引结构的导航设备和方法

【技术保护点】

【技术特征摘要】
2011.02.23 EP 11155710.41.一种使用索引结构(10;70)在导航设备数据库中执行相似性搜索的方法,所述数据库包括多个对象,所述索引结构(10;70)包括多个节点(11-17;71-75),所述方法包括:在导航设备的车辆接口和输入接口之一处接收查询对象(51),所述导航设备进一步包括存储索引结构的存储设备;访问所述索引结构(10;70)的第一节点(11-13;71-73),其中,存储在所述数据库中的所述多个对象包括多个音位字符串,所述索引结构中包括多个节点,所述多个节点包括叶节点,每一个叶节点与至少一个音位字符串相关联,其中,所述索引结构还包括关于所述至少一个对象和所述索引结构中的其它对象之间距离的距离信息,其中所述第一节点与所述多个对象中的至少一个对象(52,55,59,60)相关联,对于所述多个对象中的每一个,所述距离信息包括,相应的对象和与所述相应的对象相关联的所述索引结构的子树中包括的任意对象之间的距离的上界;对于与所述第一节点(11-13;71-73)相关联的所述至少一个对象(52,55,59,60)中的每个对象,分别确定所述查询对象(51)和所述对象之间的距离(65,66),所述距离(65,66)按照距离度量被分别确定;对于所述多个对象中的每一个,确定所述查询对象与相应的对象之间的距离是否小于固定的预定搜索半径和存储在所述索引结构的所述第一节点中的相应的对象的覆盖半径的求和值;以及基于所述距离信息和所确定的距离(65,66),选择性地访问所述索引结构(10;70)中的第二节点(12-17;72-75)。2.如权利要求1所述的方法,其中所述查询对象(51)为音位字符串或文本字符串。3.如权利要求2所述的方法,其中所述接收所述查询对象(51)包括接收文本输入和执行文本到音位的转换。4.如权利要求1所述的方法,其中所述查询对象(51)为音位字符串或文本字符串,并且其中所述接收所述查询对象(51)包括接收文本输入和执行文本到音位的转换。5.如权利要求1所述的方法,其中,基于所确定的距离(65;66),从所述相似性搜索中选择性地剪除对象。6.如权利要求1所述的方法,其中,所述确定距离(65;66)和选择性地访问所述第二节点(12-17;72-75),在所述第二节点(12-17;72-75)是所述索引结构(10;70)的叶节点(14-17;74,75)时终止。7.如权利要求1所述的方法,其中,识别出根据所述距离度量确定的位于距所述查询对象(51)预定的距离(58)内的所有对象。8.如权利要求1所述的方法,其中,识别出整数k>1个对象,其代表根据所述距离度量确定的所述查询对象(51)的k个最接近邻居。9.如权利要求8所述的方法,其中,以基于所述查询对象(51)和相应的被识别的对象之间的距离所确定的顺序,输出所述被识别的对象。10.一种导航设备,包括:存...

【专利技术属性】
技术研发人员:A普里雅克欣P库纳斯J威尔舍
申请(专利权)人:哈曼贝克自动系统股份有限公司
类型:发明
国别省市:

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

1