软件工程硕士论文移动对象轨迹的最近邻居查询研究.doc
《软件工程硕士论文移动对象轨迹的最近邻居查询研究.doc》由会员分享,可在线阅读,更多相关《软件工程硕士论文移动对象轨迹的最近邻居查询研究.doc(90页珍藏版)》请在三一办公上搜索。
1、 密级: 硕 士 学 位 论 文 论文题目 移动对象轨迹的最近邻居查询研究作者姓名 指导教师 教授 学科(专业) 软件工程 所在学院 软件学院 提交日期 2007-05-15 A Dissertation Submitted to Zhejiang University for the Degree of Master of EngineeringTITLE: Nearest Neighbor Query Processing on Moving Object TrajectoryAuthor: Supervisor: Professor Subject: Software Engineeri
2、ng College: College of Software TechnologySubmitted Date: May 15, 2007 摘要随着无线通讯和位置定位系统的发展,移动对象数据库(MOD)变得越来越重要,也对数据库研究提出了极大的挑战。基于时间和空间的查询算法成为一些基于位置的服务急需解决的问题。比如:交通控制,近邻信息访问和对野生动物迁徙特性的分析等。而其中一个重要的查询类型就是k最近邻居(kNN)查询。它主要用来查询离某一移动对象最近的k个轨迹。据我们所知,在已有的研究文献中,他们主要处理的是对于一系列连续移动点的将来或者当前位置的查询,这些查询或者基于静态的查询点或者基于
3、连续移动的查询点。但是对于历史移动对象轨迹的最近邻居查询却很少。基于此,在本文中,首先,我们提出了两种基于最佳优先(Best-First)策略的算法:BFPkNN和BFTkNN。分别用来处理静态查询点以及移动轨迹的k最近邻居(kNN)。并且为了减少内存消耗和CPU时间,本文给出了一些有效的剪枝策略。这些剪枝策略能够有效的避免访问那些不可能包含最终结果的节点,也能剔除掉那些不会成为最终结果的迹线段。其次,我们还提出了在历史移动对象轨迹上处理连续k最近邻居查询的两个算法:HCP-kNN和HCT-kNN。同时我们分析并给出了在连续kNN查询中常用的维护和更新k个最近邻居列表(kNearestList
4、s)算法。再次,本文提出了在存储有历史移动对象轨迹的基于R树的索引结构上进行受限k最近邻居(CkNN)查询的概念,以及有效的处理方法。具体来说,为了有效处理CkNN我们提出了区域查询和kNN查询的依次查询方法以及在kNN查询中整合区域查询的方法。另外,我们还给出了两个算法,一个是截取迹线段得到时间域在某一范围内,空间区域包含在受限区域CR内的部分迹线段的算法,另外一个是截取节点获得时间在指定范围内,空间范围在CR内的部分记录的算法。关键词移动对象轨迹,TB树,k最近邻居查询,受限k最近邻居查询AbstractWith the integration of wireless communicat
5、ions and positioning technologies, the concept of Moving Object Databases (MOD) has become increasingly important, and has posed a great challenge to the database community. Emerging location-dependent services call for new query processing algorithms and techniques to deal with both the spatial and
6、 temporal domains. Examples of these new services include traffic monitoring, nearby information accessing and migration patterns analyzing of wild animals. An important class of queries that is definitely useful for MOD processing is the so-called k nearest neighbor (k-NN) queries, where one is int
7、erested in finding the k closest trajectories to a predefined query object Q. To our knowledge, in the literature such queries primarily deal with either static or continuously moving query points over stationary datasets, or queries about the future or current positions of a set of continuously mov
8、ing points. Apparently, these types of queries do not cover NN search on historical trajectories.Motivated by this problem, in this paper, We develop two algorithms based on Best-First traversal paradigm, called BFPkNN and BFTkNN, which handle the kNN retrieval with respect to the static query point
9、 and the moving query trajectory, respectively. In addition, we also enable several effective pruning heuristics to prune away all unnecessary nodes such that the memory space consumption and the CPU time can be decreased. The pruning heuristics avoids accessing nodes that cannot contain qualifying
10、entries and discard any unnecessary entries. We also present two algorithms, called HCP-kNN and HCT-kNN, which deal with the problem of efficiently processing historical continuous k-Nearest Neighbor. An effective update strategy to maintain the nearest lists is proposed for continuous kNN search. F
11、urthermore, We introduce and solve the constrained k-nearest neighbor (CkNN) query on R-tree-like structures storing historical information about moving object trajectories. We present several algorithms to handle the CkNN query problem efficiently. In particular, our techniques process CkNN queries
12、 by either combining conditions of range and kNN queries, or by modifying the existing kNN query algorithms. Inadditionally, we present a algorithm to get the partial entry of trajectory segment that are contained in constrained region CR fully and its lifetime is within a specified time extent and
13、a algorithm to get the portion of node N whose temporal extent is within a given time period as well as spatial area is contained in CR.Key words: Moving Object Trajectory, TB Tree, k nearest neighbour query, constraint kNN query目录摘要iAbstractii图目录III表目录V第1章 绪论11.1 研究背景11.1.1 数据库索引11.1.2 移动对象和移动对象数据库
14、31.1.3 基于R-tree的移动对象索引技术51.2 研究内容81.3 研究目标101.4 本文结构组织101.5 本章小结11第2章 历史移动对象的查询研究综述132.1 区域查询132.2 基于轨迹查询142.3 k( 1)最近邻居查询142.4 相似轨迹查询152.5 不确定轨迹查询162.6 本章小结16第3章 历史移动对象的k最近邻居查询183.1 引言183.2 相关工作183.3 度量(metric)193.3.1 TB树193.3.2 剪枝策略203.4 点的k最近邻居查询算法233.4.1 算法描述233.4.2 算法分析243.5 轨迹的k最近邻居查询算法253.6 实
15、验评估283.6.1 BFPkNN算法的实验结果293.6.2 BFTkNN算法的实验结果313.7 本章小结33第4章 历史移动对象的连续k最近邻居查询344.1 引言344.2 相关工作354.3 k最近列表的更新364.4 点的连续k最近邻居查询算法424.5 轨迹的连续k最近邻居查询算法434.6 实验评估454.6.1 HCP-kNN 算法的试验结果464.6.2 HCT-kNN 算法的试验结果474.7 本章小结48第5章 历史移动对象的受限k最近邻居查询505.1 引言505.2 相关工作535.3 静止点受限k最近邻居查询算法545.3.1 “两步走”策略545.3.2 “一步
16、走”策略565.4 轨迹受限k最近邻居查询算法605.5 实验评估645.5.1 CkNNP算法的试验结果655.5.2 CkNNT算法的试验结果675.6 本章小结68第6章 总结与展望696.1 本文完成的主要研究工作696.2 本文的主要贡献以及创新点696.3 进一步的研究工作70参考文献72攻读硕士学位期间主要的研究成果78致谢79图目录图3.1 移动对象轨迹的k最近邻居查询示例2图3.2 TB树结构示例2图3.3 BFPkNN算法伪代码2图3.4 BFTkNN算法伪代码2图3.5 GetMaxDistTrajetory算法伪代码2图3.6 GetMinDistTrajectory算
17、法伪代码2图3.7 BFPkNN 的k变化性能评估2图3.8 BFPkNN TE变化性能评估2图3.9 BFPkNN #MO变化性能评估2图3.10 BFTkNN k变化性能评估2图3.11 BFTkNN TE 变化性能评估2图3.12 BFTkNN #MO变化性能评估2图4.1 移动对象轨迹的连续k最近邻居查询示例2图4.2 结构M中各变量意义示意图2图4.3 UpdatekNearests 算法伪代码2图4.4 UpdateNearests 算法伪代码2图4.5 T和M距离关系示意图2图4.6 nT和nM距离关系示意图2图4.7 HCP-kNN算法伪代码2图4.8 HCT-kNN算法伪代码
18、2图4.9 HCP-kNN k 变化性能评估2图4.10 HCP-kNN TE变化性能评估2图4.11 HCP-kNN #MO变化性能评估2图4.12 HCT-kNN k变化性能评估2图4.13 HCT-kNN TE变化性能评估2图4.14 HCT-kNN #MO变化性能评估2图5.1 非受限最近邻居查询和受限最近邻居查询比较(k = 3)2图5.2 静态点和移动轨迹受限最近邻居查询示例(k = 2)2图5.3 CkNNP-DF算法伪代码2图5.4 GetEntryInConstraint算法伪代码2图5.5 GetNodeInConstraint算法伪代码2图5.6 CkNNP-BF算法伪代
19、码2图5.7 CkNNT-DF算法伪代码2图5.8 CkNNT-BF算法伪代码2图5.9 CkNNP算法 CR变化性能评估2图5.10 CkNNP k变化性能评估2图5.11 CkNNP TE变化性能评估2图5.12 CkNNP #MO变化性能评估2图5.13 CkNNT CR变化性能评估2图5.14 CkNNT k变化性能评估2图5.15 CkNNT TE变化性能评估2图5.16 CkNNT #MO变化性能评估2表目录表3.1 真实和合成数据集2第1章 绪论1.1 研究背景移动计算、无线通讯和定位技术的快速发展使得跟踪和管理实际生活中的移动对象轨迹成为了现实。在许多重要领域应用中,诸如交通管
20、制、车辆监控、智能导航、智能物流配送、城市数字规划、数字战场与仿真、移动电子商务、网络游戏等,用户需要有效地存储和查询各种移动对象轨迹信息。例如,在交通管制应用中,交通部门可以通过分析车辆轨迹信息来有效地提供交通拥堵预防、车辆限速等服务。移动对象轨迹是物体在某一个时间段内所经过的路线。它可看作二维或三维的时间序列,其固有的复杂性和海量性使得传统的数据库查询处理技术不能或不能有效地发挥作用,进而必须研究新的查询处理技术来支持各种移动对象轨迹的查询问题。因此,如何提供各种高效的移动对象轨迹查询处理技术成为了当前涉及移动对象轨迹信息的时空数据库研究领域的重点与热点之一。目前在移动对象轨迹的查询处理技
21、术方面,研究工作尚局限于区域查询和基于轨迹查询等处理问题上,仍面临许多重要的查询问题急需解决。此外,移动对象轨迹的查询处理包括对历史信息的查询和对当前及将来信息的查询。在本文中,我们拟对历史移动对象轨迹的查询处理技术进行深入地研究,因为它是众多实际应用中的共性支撑技术。综上所述,历史移动对象轨迹的查询处理技术研究具有现实的理论意义和广阔的应用前景,但因移动对象轨迹独特的特性,使得这一问题的研究面临不小的挑战。1.1.1 数据库索引数据库索引的目的是优化数据库的存储结构,以支持对数据的高效存取与查询处理,保障数据库管理系统的数据处理能力。索引是这样一种数据结构:它以记录的特征(通常是一个或多个字
22、段的值)为输入,并能快速地找出具有该特征的所有记录。具体的说,索引使我们只需要查看所有可能记录中的一小部分就能找到所需要的记录。目前已有多种不同的数据结构可用做索引,下面我们将对它们的研究发展历程做一简单的讨论。1)排序文件上的简单索引:由一个称为数据文件的排序文件得到另一个称为索引文件的文件,而这个索引文件是由关键字与指针对所组成的。若要在索引文件中查找关键字为K的记录,则可以在指针所指向的数据文件中查找关键字为K的记录。2)非排序文件上的辅助索引:这种数据结构可用于任何索引目的,即有助于查找给定一个或多个字段值的记录。它与主索引的最大差别在于辅助索引不决定数据文件中记录的存放位置,而仅能得
23、到记录的当前存放位置,这一位置可能是由建立在其他某个字段上的主索引确定的。3)B-tree:B-tree是一种可在任何文件上建立索引的常用方法,它最初是由Bayer和mcCreight于1972年提出来的。由于B-tree及其它的变体能够自动的保持与数据文件大小相适应的索引层次,能够对所使用的存储块空间进行管理,从而使得每个索引块的充满程度在半满与全满之间,不再需要溢出块。B-tree是建立索引的强有力工具,它已经成为了商用数据库管理系统中一种最常用的索引结构。4)散列表:散列表是另一种有用而重要的索引结构,它以关键字为参数并根据散列函数(或称哈希函数)来计算记录的链接位置。基本的索引方法都是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 硕士论文 移动 对象 轨迹 最近 邻居 查询 研究
链接地址:https://www.31ppt.com/p-2395948.html