CN104794175A - 基于度量k最近对的景点和酒店最佳配对方法 - Google Patents
基于度量k最近对的景点和酒店最佳配对方法 Download PDFInfo
- Publication number
- CN104794175A CN104794175A CN201510152106.8A CN201510152106A CN104794175A CN 104794175 A CN104794175 A CN 104794175A CN 201510152106 A CN201510152106 A CN 201510152106A CN 104794175 A CN104794175 A CN 104794175A
- Authority
- CN
- China
- Prior art keywords
- hotel
- recently
- sight spot
- distance
- combination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了基于度量k最近对的景点和酒店最佳配对方法。本发明采用M树对旅游区数据集和酒店数据集分别进行索引,利用估计的第k个最近对距离和k最近对距离上界积极地修剪查询空间,以获得初步的查询结果,然后对其进行补全,从而获得距离最近的k个景点和酒店组合。本发明充分利用了空间数据库中索引技术和k最近对查询技术,丰富和优化了度量空间下的k最近对查询处理方法;采用深度优先遍历和最佳优先遍历相结合的方式;利用k最近对的距离上界和度量空间的三角不等式,开发若干有效的剪枝策略来修剪查找空间;提出基于估计的第k个最近对距离的积极剪裁和补全的算法框架,从而大大降低了I/O和CPU时间。
Description
技术领域
本发明涉及数据库的索引与查询技术,特别是基于度量k最近对的景点和酒店最佳配对方法。
背景技术
查询/搜索是计算机科学的基本问题,存在于目前几乎所有的计算机应用领域。现有的查询处理大多关注欧氏空间,并用欧式距离来度量对象之间的邻近关系;但在许多的实际应用,如地理信息系统、数据挖掘、模式识别,对象之间的邻近关系并不能用欧式距离来度量,而需要用借助其它的距离度量方式。例如,路网上的两个位置间的距离度量需要借助于路网距离,即连接两点的最短路径长度;字符串之间的距离度量需要使用编辑距离。
为此,我们需要借助度量空间。度量空间是支持任意距离函数的一种更为广泛的空间,其距离函数需满足非负性、对称性和三角不等式特性。为了快速、有效地组织、存储和访问度量空间数据,专家学者们提出了大量的索引方式。迄今为止,影响最大、应用最广泛的是M树。M树是Ciaccia、Patella和Zezula在1997年提出的,它是一棵基于外存的平衡树,其更新操作代价小且无需重构树。
最近邻对查询是一种典型的空间查询类型,它在地理信息系统、数据挖掘、推荐系统等领域具有广阔的应用前景。最近邻对查询从两个数据集中查找距离最近的一组点对,而k最近对查询则是找出距离最近的k组点对。其可以用于景点和酒店最佳配对,即返回相对位置最近的k组景点和酒店组合,从而为旅游行者提供合理推荐。其中,景点和酒店之间的距离为路网距离。
目前,针对k最近对查询处理方法大多针对欧式空间,并利用欧式空间的几何特性以加速查询;但不幸的是,这些几何特性在度量空间不存在。所以,这些方法不能用来解决度量k最近对查询。此外,已有的度量k最近对查询方法是基于内存的方法,即假设整个数据集可以保存在内存中,因而适用性有限,扩展性差,不能用来处理大规模数据。
发明内容
本发明要克服现有技术的上述缺点,提供基于度量k最近对的景点和酒店最佳配对方法。
本发明解决其技术问题所采用的技术方案步骤如下:
步骤(1):收集景点和酒店的位置数据,然后对景点和酒店数据集分别建立索引,并估计第k个最近对的距离;
步骤(2):遍历景点和酒店数据集索引,并修剪查找空间,以获得多个景点和酒店组合,其组合个数不大于k;
步骤(3):补全k最近对查询结果集,以找到k个最近的景点和酒店组合;
步骤(4):向用户返回步骤(3)中所得的k个景点和酒店组合,以供用户选择最佳的景点和酒店组合。
步骤(1)中每一个景点或酒店是通过一个位置坐标数据点表示;采用M树对景点集和酒店集分别进行索引,M树中每个结点项包含一个中心数据点、结点覆盖区域半径、以及中心数据点到其父结点项的中心数据点的距离信息;并利用统计的景点数据集和酒店数据集之间的距离分布函数F()计算估计的第k个最近对距离,即第k个最近景点和酒店组合的距离,具体的估计距离为min{r|F(r)≥k}。
步骤(2)中采用深度优先遍历和最佳优先遍历结合的方式遍历两棵M树;深度优先遍历方式即自顶而下同时遍历两棵M树,而最佳优先遍历则按照结点项组合间最小距离升序来同时遍历两棵M树;结点项组合间最小距离被定义为两个结点项数据点中心点间的距离减去两个结点项覆盖区域半径;根据结点项组合间最小距离分为两种遍历情况:
2.1)结点项组合间最小距离小于等于0,则采用深度优先遍历;
2.2)结点项组合间最小距离大于0,则采用最佳优先遍历;
在遍历过程中,利用估计的第k个最近对距离以及k最近对距离上界对查找空间进行剪裁;若结点项组合间近似最小距离或者最小距离大于估计的第k个最近对距离或者k最近对距离上界,则对该结点项组合进行剪裁;其中近似最小距离可以通过M树中存储的距离以及已计算的父结点项组合间距离,并根据度量空间的三角不等特性计算所得,且近似最小距离是最小距离的下界值;k最近对距离上界初始化为无穷大,并在查找过程中不断被更新收敛;最后,利用未被剪裁的景点和酒店组合更新查询结果以及k最近对距离上界。
步骤(3)中对步骤(2)中所获得的初步查询结果集进行补全,根据步骤(2)中所获的景点和酒店组合的个数分为两种情况:
3.1)步骤(2)中所获得的景点和酒店组合个数等于k个,则说明估计的第k个最近对距离精确或偏大;因而,无需对步骤(2)中所获得的查询结果集进行补全,也就是说步骤(2)中所得的k个景点和酒店的组合就是最终查询结果集;
3.2)步骤(2)中所获得的所获得的景点和酒店组合个数小于k个,则说明估计的第k个最近对距离偏小,即在步骤(2)中利用估计的第k个最近对距离剪裁了一些正确结果;因而,采用最佳优先的遍历方式继续遍历被估计的第k个最近对距离剪裁的结点项组合,以补全查询结果集,从而获得k个最近的景点和酒店组合。
步骤(4)退出k最近对查询,向用户返回步骤(3)中所得的k个景点和酒店组合,以供用户选择最佳组合。
本发明具有的有益效果是:
本发明充分利用了空间数据库中索引技术和k最近对查询技术,丰富和优化了度量空间下的查询方法以及k最近对查询处理方法;采用深度优先遍历和最佳优先遍历相结合的方式;利用k最近对的距离上界和度量空间的三角不等式,开发若干有效的剪枝策略来修剪查找空间;提出基于估计第k个最近对距离的积极剪裁和补全的算法框架,从而大大降低了I/O和CPU时间。
附图说明
图1是本发明的实施步骤流程图。
图2为基于度量k最近对查询的景点和酒店最佳配对方法的工作原理示意图。
图3为M树结点项组合间最小距离和估计最小距离示意图。
具体实施方式
现结合附图和具体实施对本发明的技术方案作进一步说明:
如图1,图2所示,本发明具体实施过程和工作原理如下:
步骤(1):收集景点和酒店的位置数据,然后对景点和酒店数据集分别建立索引,并估计第k个最近对的距离;
步骤(2):遍历景点和酒店数据集索引,并修剪查找空间,以获得多个景点和酒店组合,其组合个数不大于k;
步骤(3):补全k最近对查询结果集,以找到k个最近的景点和酒店组合;
步骤(4):向用户返回步骤(3)中所得的k个景点和酒店组合,以供用户选择最佳的景点和酒店组合。
步骤(1)中每一个景点或酒店是通过一个位置坐标数据点表示;采用M树对景点集合和酒店集进行分别索引,M树中每个结点项包含一个中心数据点、结点覆盖区域半径、以及中心数据点到其父结点项的中心数据点的距离信息;如图3所示,EP1、EP2、EP3为景点结点项,EQ1、EQ2、EQ3是酒店结点项,其中p6是Ep1的中心数据点,d(p6,p8)为Ep1的覆盖区域半径,d(p1,p6)是EP3的中心数据点p6到其父结点项PEP的中心数据点p1距离;接着,利用统计的景点数据集和酒店数据集间距离分布函数F()计算估计的第k个最近对距离,即第k个最近的景点和酒店组合距离,具体的估计距离为min{r|F(r)≥k}。具体如图2中的索引模块和第k个最近对距离估计模块所示。
步骤(2)中采用深度优先遍历和最佳优先遍历结合的方式遍历两棵M树;深度优先遍历方式即自顶而下同时遍历两棵M树,而最佳优先遍历则按照结点项组合间最小距离升序来同时遍历两棵M树;结点项组合间最小距离被定义为两个结点项数据点中心点间的距离减去两个结点项覆盖区域半径;如图3中所示,mindist(Ep2,EQ3)即为Ep2和EQ3结点项组合间最小距离;具体如图2中的k最近对查询积极修剪模块所示,根据结点项组合间最小距离分为两种遍历情况:
2.1)结点项组合间最小距离小于等于0,则采用深度优先遍历;
2.2)结点项组合间最小距离大于0,则采用最佳优先遍历;
在遍历过程中,利用估计的第k个最近对距离以及k最近对距离上界对查找空间进行剪裁;若结点项组合间近似最小距离或者最小距离大于估计的第k个最近对距离或者k最近对距离上界,则对该结点项组合进行剪裁;其中近似最小距离可以通过M树中存储的距离以及已计算的父结点项组合间距离,并根据度量空间的三角不等特性计算所得,且近似最小距离是最小距离的下界值;如图3所示,图中结点项EP3和EQ3间近似最小距离即为|d(PEP.RO,EQ3.RO)-d(EP3.RO,PEP.RO)|-EP3.r-EQ3.r,其中d(PEP.RO,EQ3.RO)为结点项EQ3中心点到配对结点EP3的父结点项PEP中心点的距离,由于索引自顶向下遍历,故d(PEP.RO,EQ3.RO)距离已知;k最近对距离上界初始化为无穷大,并在查找过程中不断被更新收敛;最后,利用未被剪裁的景点和酒店组合更新查询结果集和k最近对距离上界。
步骤(3)中对步骤(2)中所获得的查询结果集进行补全,具体如图2中的k最近对查询补全模块所示,根据步骤(2)中所获的景点和酒店组合的个数分为两种情况:
3.1)步骤(2)中所获得的景点和酒店组合个数等于k个,则说明估计的第k个最近对距离精确或偏大;因而,无需对步骤(2)中所获得的查询结果集进行补全,也就是说步骤(2)中所得的k个景点和酒店的组合就是最终查询结果集;
3.2)步骤(2)中所获得的所获得的景点和酒店组合个数小于k个,则说明估计的第k个最近对距离偏小,即在步骤(2)中利用估计的第k个最近对距离剪裁了一些正确结果;因而,采用最佳优先的遍历方式继续遍历被估计的第k个最近对距离剪裁的结点项组合,以补全查询结果集,从而获得k个最近的景点和酒店组合。
步骤(4)退出k最近对查询,向用户返回步骤(3)中所获得的k个景点和酒店组合,以供用户选择最佳的景点和酒店组合。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施案例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (5)
1.基于度量k最近对的景点和酒店最佳配对方法:其特征在于该方法的步骤如下:
步骤(1):收集景点和酒店的位置数据,然后对景点和酒店数据集分别建立索引,并估计第k个最近对的距离;
步骤(2):遍历景点和酒店数据集索引,并修剪查询空间,以获得多个景点和酒店组合,其组合个数不大于k;
步骤(3):补全k最近对查询结果集,以找到k个最近的景点和酒店组合;
步骤(4):向用户返回步骤(3)中所得的k个景点和酒店组合,以供用户选择最佳的景点和酒店组合。
2.根据权利要求1所述的基于度量k最近对的景点和酒店最佳配对方法,其特征在于:步骤(1)中每一个景点或酒店是通过一个位置坐标数据点表示;采用M树对景点数据集和酒店数据集进行分别索引;M树中每个结点项包含一个中心数据点、结点覆盖区域半径、以及中心数据点到其父结点项的中心数据点的距离信息;并利用统计的景点数据集和酒店数据集间距离分布函数F()计算估计的第k个最近对距离,即第k个最近景点和酒店组合的距离,具体的估计距离为min{r|F(r)≥k}。
3.根据权利要求1所述的基于度量k最近对的景点和酒店最佳配对方法,其特征在于:步骤(2)中采用深度优先遍历和最佳优先遍历结合的方式遍历两棵M树;深度优先遍历方式即自顶而下同时遍历两棵M树,而最佳优先遍历则按照结点项组合间最小距离升序来同时遍历两棵M树;结点项组合间最小距离被定义为两个结点项数据点中心点间的距离减去两个结点项覆盖区域半径;根据结点项组合间最小距离分为两种遍历情况:
2.1)结点项组合间最小距离小于等于0,则采用深度优先遍历;
2.2)结点项组合间最小距离大于0,则采用最佳优先遍历;
在遍历过程中,利用估计的第k个最近对距离以及k最近对距离上界对查询空间进行剪裁;若结点项组合间近似最小距离或者最小距离大于估计的第k个最近对距离或者k最近对距离上界,则该结点项组合可以被剪裁;其中近似最小距离可以通过M树中存储的距离以及已计算的父结点项组合间距离,并根据度量空间的三角不等特性计算所得,且近似最小距离是最小距离的下界值;k最近对距离上界初始化为无穷大,并在查找过程中不断被更新收敛;最后,利用未被剪裁的景点和酒店组合更新查询结果以及k最近对距离上界。
4.根据权利要求1所述的基于度量k最近对的景点和酒店最佳配对方法,其特征在于:对步骤(2)中所获得的初步查询结果集进行补全,根据步骤(2)中所获的景点和酒店组合的个数分为两种情况:
3.1)步骤(2)中所获得的景点和酒店组合个数等于k个,则说明估计的第k个最近对距离精确或偏大;因而,无需对步骤(2)中所获得的查询结果集进行补全,也就是说步骤(2)中所得的k个景点和酒店的组合就是最终查询结果集;
3.2)步骤(2)中所获得的所获得的景点和酒店组合个数小于k个,则说明估计的第k个最近对距离偏小,即在步骤(2)中利用估计的第k个最近对距离剪裁了一些正确结果;因而,采用最佳优先的遍历方式继续遍历被估计的第k个最近对距离剪裁的结点项组合,以补全查询结果集,从而获得k个最近的景点和酒店组合。
5.根据权利要求1所述的基于度量k最近对的景点和酒店最佳配对方法,其特征在于:退出k最近对查询,向用户返回步骤(3)中所得k个最近的景点和酒店组合,以供用户选择最佳组合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510152106.8A CN104794175B (zh) | 2015-04-01 | 2015-04-01 | 基于度量k最近对的景点和酒店最佳配对方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510152106.8A CN104794175B (zh) | 2015-04-01 | 2015-04-01 | 基于度量k最近对的景点和酒店最佳配对方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104794175A true CN104794175A (zh) | 2015-07-22 |
CN104794175B CN104794175B (zh) | 2018-01-23 |
Family
ID=53558967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510152106.8A Active CN104794175B (zh) | 2015-04-01 | 2015-04-01 | 基于度量k最近对的景点和酒店最佳配对方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104794175B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106251164A (zh) * | 2016-03-21 | 2016-12-21 | 上海驴徒电子商务有限公司 | 一种景区推荐方法及系统 |
WO2018018208A1 (zh) * | 2016-07-24 | 2018-02-01 | 严映军 | 一种基于酒店的景点推荐技术使用统计方法以及搜索系统 |
CN108717640A (zh) * | 2018-01-24 | 2018-10-30 | 北京穷游天下科技发展有限公司 | 旅游信息的数据处理方法和电子设备 |
CN110825778A (zh) * | 2019-11-05 | 2020-02-21 | 上海景域文化传播股份有限公司 | 一种自动组合酒店和景点成度假线路的装置和方法 |
CN113901329A (zh) * | 2021-12-07 | 2022-01-07 | 环球数科集团有限公司 | 旅游住宿推荐方法、装置和计算机设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1451804A4 (en) * | 2001-10-26 | 2005-11-23 | Dmitry Edward Terez | METHODS AND APPARATUS FOR DETERMINING TONE HEIGHT |
AU2011274286A1 (en) * | 2010-06-29 | 2012-12-13 | Springsense Pty Ltd | Method and system for determining word senses by latent semantic distance |
CN103235831A (zh) * | 2013-05-15 | 2013-08-07 | 西南大学 | 基于路网的移动对象位置索引结构及索引方法 |
-
2015
- 2015-04-01 CN CN201510152106.8A patent/CN104794175B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1451804A4 (en) * | 2001-10-26 | 2005-11-23 | Dmitry Edward Terez | METHODS AND APPARATUS FOR DETERMINING TONE HEIGHT |
AU2011274286A1 (en) * | 2010-06-29 | 2012-12-13 | Springsense Pty Ltd | Method and system for determining word senses by latent semantic distance |
CN103235831A (zh) * | 2013-05-15 | 2013-08-07 | 西南大学 | 基于路网的移动对象位置索引结构及索引方法 |
Non-Patent Citations (2)
Title |
---|
A.CORRAL: "algorithms for processing k-closest-pair queries in spatial databases", 《DATA &KNOWLEDGE ENGINEERING》 * |
A.CORRAL等: "closest pair queries in spatial databases", 《IN:PROCEEDINGS OF THE ACM INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106251164A (zh) * | 2016-03-21 | 2016-12-21 | 上海驴徒电子商务有限公司 | 一种景区推荐方法及系统 |
WO2018018208A1 (zh) * | 2016-07-24 | 2018-02-01 | 严映军 | 一种基于酒店的景点推荐技术使用统计方法以及搜索系统 |
CN108717640A (zh) * | 2018-01-24 | 2018-10-30 | 北京穷游天下科技发展有限公司 | 旅游信息的数据处理方法和电子设备 |
CN108717640B (zh) * | 2018-01-24 | 2023-11-28 | 北京穷游天下科技发展有限公司 | 旅游信息的数据处理方法和电子设备 |
CN110825778A (zh) * | 2019-11-05 | 2020-02-21 | 上海景域文化传播股份有限公司 | 一种自动组合酒店和景点成度假线路的装置和方法 |
CN110825778B (zh) * | 2019-11-05 | 2020-12-25 | 上海景域文化传播股份有限公司 | 一种自动组合酒店和景点成度假线路的装置和方法 |
CN113901329A (zh) * | 2021-12-07 | 2022-01-07 | 环球数科集团有限公司 | 旅游住宿推荐方法、装置和计算机设备 |
CN113901329B (zh) * | 2021-12-07 | 2022-03-22 | 环球数科集团有限公司 | 旅游住宿推荐方法、装置和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104794175B (zh) | 2018-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104794175A (zh) | 基于度量k最近对的景点和酒店最佳配对方法 | |
CN103491187B (zh) | 一种基于云计算的大数据统一分析处理方法 | |
CN104376112B (zh) | 一种路网上空间关键字检索的方法 | |
CN106528589B (zh) | 数据管理方法及装置 | |
CN106570062B (zh) | 一种路网轨迹不确定移动对象范围查询系统及方法 | |
CN110765331B (zh) | 一种时空数据的检索方法及系统 | |
CN104346444B (zh) | 一种基于路网反空间关键字查询的最佳选址方法 | |
CN102662974A (zh) | 一种基于邻接节点树的网络图索引方法 | |
CN104881427A (zh) | 一种面向电网调控运行的数据血统分析方法 | |
CN106447097A (zh) | 一种受限最长频繁路径的查询方法 | |
CN107633068A (zh) | 滑动窗口下基于位置top‑k关键词查询的快速索引方法及系统 | |
CN102012908B (zh) | 障碍物环境中可视移动近邻的查询方法 | |
Aljubayrin et al. | Skyline trips of multiple POIs categories | |
WO2020215437A1 (zh) | 应用于电子地图的空间关键字查询的近似搜索方法 | |
Cho et al. | A GPS trajectory map-matching mechanism with DTG big data on the HBase system | |
Escribano et al. | Piet: a gis-olap implementation | |
CN103500165A (zh) | 一种结合聚类和双key值的高维向量检索方法 | |
Ji et al. | Clockwise compression for trajectory data under road network constraints | |
Gu et al. | An Efficient Method for k Nearest Neighbor Searching in Obstructed Spatial Databases. | |
CN102207965A (zh) | 一种时空景点游览序列选择系统和方法 | |
CN104731965A (zh) | 一种基于互联网地图的酒店查询方法 | |
Kong et al. | Trajectory query based on trajectory segments with activities | |
CN103778194B (zh) | 一种基于反向轮廓带的商品推荐方法 | |
CN108415954A (zh) | 一种不确定单色相互最近邻查询处理方法 | |
CN108628950A (zh) | 一种基于文本-域倒排的空间文本查询方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |