用于车队导航、调度以及多个车辆、多个目的地指定路线的方法及系统的制作方法

文档序号:6497807阅读:680来源:国知局
用于车队导航、调度以及多个车辆、多个目的地指定路线的方法及系统的制作方法
【专利摘要】一种用于为多个车辆调度并且指定路线到多个目的地的系统和方法,具有或者没有约束,包括软件核心,通过分析由于标准和用户定义的自变量的变化,在两个维度上,对于用户想要的因变量,该系统和方法使用有界地理区域(“BGRs”)和节点对以明确地最优化。本发明存储节点对数据,并且能够使用误差函数、反馈、以及ANOVA/MANOVA来创建严格收敛的调度和导航解。
【专利说明】用于车队导航、调度以及多个车辆、多个目的地指定路线的方法及系统【技术领域】
[0001]本发明涉及导航路线计算和指引的领域,尤其是对普遍的导航问题的多个车辆、多个目的地的解。
【背景技术】
[0002]导航系统包括某些必需的要素:输入/输出设备;处理单元,导航计算核心;通常包括街道和兴趣点(Points of Interest, “POIs”)的地理数据库;以及用于确定位置全球定位系统芯片集;等等。对于汽车系统来说,另外有提供引领和速度信息的陀螺仪芯片。在现有系统中存在重大的缺陷。通过OEMS设置在车辆中的导航系统需要昂贵的硬件和软件,其比在其所安装的汽车废弃地更快。此外,车载地理数据库需要例如硬盘驱动器的存储介质,相对地,该介质比其他电子元件更易于故障,并且必须定期地更新数据库。
[0003]基于服务器的导航系统是那些在其中指引算法常驻(resident)在中央处理单元或者服务器上的导航系统。终端用户使用包括移动电话、计算机、便携式导航设备、嵌入式车辆系统和移动数据终端(Mobile Data Terminals,“MDT”)的各种设备输入导航目的地。终端用户请求经由移动电话网络、卫星网络、W1-Fi网络,或者包括无线连接和有线连接的混合的网络,被无线地传输给服务器。无线链接可以在许多环境(例如,隧道、主要城市中心中的混凝土峡谷、无人区、以及无线使用繁重的时候)中被中断。依赖于系统是如何配置的,需要传送的数据的量常常压垮无线资源。手机和个人导航类似地受到限制。
[0004]在任何地理区域中,本身存在用于导航数据库信息的少量源。导航数据库将提供用于街道的坐标和名称,以及为每条道路定义街道类型(例如,住宅、商业、高速公路、州际公路等)。导航数据库常常还包括兴趣点(“P0IS”),该兴趣点是本地商业、城市的地方或者具有历史意义的地方、学校、教堂、以及公众常去的其他地方。在美国,美国人口普查局提供拓扑集成的地理编码与参照系统数据(Topologically Integrated Geographic Encodingand Referencing System data, “TIGER data”)。TIGER数据不包括在美国的可导航街道的完整集合,它也不提供P0IS。存在导航数据库的多个商业供应商,其提供POIs和可导航街道的实质上的完整集合。在美国,最大的两家是Navteq?:和Tele Atlas?。除非文本是明确地相反的,否则在此专利中POIs的使用都意味着兴趣点的一般概念,而不是兴趣点的任何特定的、离散收集。在韩国和日本,导航数据库是受政府控制的。从政府拥有的延伸到私人的服务的其他权限提供导航数据库。包括苹果(Apple)和谷歌(Google)的其他导航和导航数据库竞争者正在迅速进入市场。此外,众包革命正在影响地图数据库。例如,MapBox正在致力于被称为O penStreetMap的开源协作地图数据库。通常,在这一点上,几乎所有车辆和移动电话导航都依赖于来自一个源的导航软件,以及来自另一个源的免费的导航数据库。几乎总是,单个实体将导航组件作为完整的解决方案(solut1n)打包并且出售。
[0005]尽管有其的限制,过去的二十年中已经见到了针对导航的先进的电子设备的激增。二十年前,大多数车辆只有非常少的电子内容,并且手机或者移动电话还处于它们的初期。今天,在车辆和无线电子中的革命已经使得基于导航的全球定位无所不在。然而,激增的选项对客户还没有呈现最优化的整体解决方案。大多数导航解决方案依赖于超过10年的计算核心。
[0006]所有当前的导航算法依赖于一维最优化。通过变化长度和形状的矢量来表示所有街道。根本上,当前方法表示街道有两种方式。在第一种中,所有矢量都是直线向量。曲线被分解成多个直线段。。在第二种中,用一种形状或者另一形状的曲线和齿条来模拟道路的自然弯曲。
[0007]为了发现路线,当前算法在一维中分段最优化。存在许多单独的算法来执行一维分段导航最优化,这些算法包括但不限于:单边决策树、双边决策树、带门限的单边决策树、带门限的双边决策树、桶算法、以及漏桶算法。从起点或者从起点和目的地二者生成多个路线段。在处理过程中,将线路与另一个路线进行比较,并且建立单个或者多个拒绝标准来抛弃发散的(divergent)解(solution)。最终,在起点与目的地之间生成单个路线,或者在中间相遇(在从起点和目的地二者生成分段解的情况下)或者在目的地相遇(仅从起点生成分段解的情况下)。十分奇怪的是,如果处理是真正的分段最优化解,则算法是从起点开始还是从目的地开始与计算目的无关。在许多算法中,当对换起点和目的地时,在单边决策中计算将挑选不同的路线。某些算法通过计算两条路线并且随后将更有效率或者最优化的路线呈现给终端用户来修正这一点。
[0008]通过道路加权来使处理容易。本质上,州际公路和其他高速公路比主要大道具有更高的加权。主要大道比铺设的次要道路具有更高的加权,依次地,次要道路比住宅区街道具有更高的加权。加权与分段、一维最优化进行组合,以在任何起点和目的地之间选择路线。不幸的是,这样的加权经 常终止于“对州际公路的偏爱”。导航系统的许多用户注意到了即使当州际公路或者高速公路明显地绕开在起点和目的地之间的直线时,该系统倾向于优选州际公路或者高速公路路线。
[0009]找出关于当前技术的主要特征是其使用分段最优化(piece-wise optimization)和加权来创建路线。甚至在相对局部的区域内,即使现代的处理器和算法将易于允许明确的局部的解,也不创建明确的解。分段最优化和加权创建了对于州际公路或者高速公路行驶的偏爱。这种过时的计算核心创建了遗留的人工产品,其实质上影响了今天的导航系统的性能。这些核心是为例如第一代RTOS处理器的慢速处理器而编写的。这些核心假设了比当前能够处理的数据量(例如,万兆字节系统)小得多的数据量。这些核心假设无线数据传输(如果有的话)将会有比当前能够达到的速度实质上慢得多的速度。
[0010]这并不是说在过去的二十年中公司没有一直在更新他们的软件。它意味的是,在最初编写核心软件的部分时,内在地置入了许多限制,无论是通过委任还是省略的方式,这使得难于创建真正跟得上时代的更新。此外,在重新预想他们的软件时,对于什么是可能的,大多数软件团队具有未阐明的(常常是无意识的)预想,原因是他们是从包括了他们的遗留代码的知识库开始的。
[0011]由过时的导航核心所导致的遗留的人工产品包括不准确的估计到达时间(Estimated-Time-of-Arrival,“ETA”)计算、缺少学习、不能利用用于正常导航的软件的相同软件来处理多个车辆/多个目的地问题、不能对多个车辆/多个目的地问题最优化解、当用户已经实质地偏离了所计算的路线时不能合理地评估、以及不能在设备之间(例如,在车载单元和手机之间)来回传递导航。
[0012]大多数导航系统能够以10%或者更少的误差率、80% -90%的时间给出ETA。大多数客户对此满意,因为(I)他们不依赖ETA信息作为他们的到达时间的唯一估计;(2)ETA信息是比他们从其他源得到的信息更好的信息;和/或(3)终端用户已经将他们对系统能水平可用性的期望正常化。然而,存在对于误差率是严格地不可接受的这类用户。例如,商用车辆驾驶员、商用车队操作者、具有紧张的截止日期的人们、以及居住在拥堵地区的人们(当前技术在这里表现不佳)。
[0013]欠佳的ETAs部分地与当前导航核心不能以任何有意义的意识去学习有关。例如,大多数人们知道在星期一早晨(排除假期),洛杉矶的州际公路405将在上午8:00变得拥堵。但当前的导航核心不知道。同样地,在大都市底特律的1-696、在芝加哥的1-90/94、在波士顿的1-95、以及在主要城市的许多其他主要州际公路都是例行地拥堵的。在这些道路上高峰期的行驶速度平均在60m.p.h (每小时的里程)和10m.p.h (每小时的里程)之间变动。许多变动是完全可预测的:特定的时间、日期、以及尤其差的状况,例如星期五下午和雨天。不幸的是,当前的导航解不能先验地评估这种情况。
[0014]当前的系统试图用“动态导航”来掩盖这一问题。动态导航通常必需使用“实时”交通数据(对用户来说是额外的花费),,用于如果存在拥堵则对用户重新指定路线。实事求是地说,对于动态导航来说没有什么是动态的。大多数“实时”交通报道具有20分钟或者更多的延迟,并且来自单一源。在垄断领域中很少或者没有动机来改进性能,馈送到动态导航系统中的交通数据是退化的。此外,例行地向交通拥堵开始路线,仅在导航系统的加权函数最终从实时交通信息系统中计算了可行动的事件时才重新指定路线,制造出大的问题,损失了终端用户的时间、金钱和安宁。
[0015]当前的导航系统中没有一个处理多个车辆/多个目的地问题。当然,车队所有者和需要这种的服务其他人必须购买导航包和调度包这两者,或者购买具有嵌入式导航包的调度包。这些解决方案比传统的导航核心更加过时。他们还未能意识到多个车辆/多个目的地导航解仅仅是单个车辆/单个目的地问题的数学上的概括。实际上,大多数当前导航包现在能够对于多个目的地执行单个车辆导航。不幸的是,它是正在以线性分段的方法(计算上低效率并且无效),而不是以完整的方式(计算上高效率并且有效)来做这件事的。
[0016]试图解决多个车辆/多个目的地问题的商业上可用的调度系统做的不好。事实上,在许多细分市场中,例如消防车辆,用户更喜欢手动执行这些行动,因为商业上可用的软件的输出是如此欠佳以致于其代表了比手动执行行动更大的费用。
[0017]对多个车辆、多个目的地导航的较差的解决方案对用户和社会造成了许多费用。例如,使用对他们的ETA具有10%误差的产品的大车队的所有者,通常不得不在两者之间选择:在给定的日子中拥有比所需要的更多的车辆(增加支出)或者放松服务标准(流失客户)。对于许多人来说,在居家服务呼叫期间,这个问题本身就呈现出来。电缆公司、电话公司、以及维修人员通常告诉人们大致的时间,例如上午9点到中午,而不是给出更精确的时间。这导致感到挫败的客户以及商业上的损失(人们不得不不必要地放弃服务呼叫)。
[0018]大多数人们已经了解了靠近他们的家和生意的优选的路线。这些优选的路线为用户提供了较快速和/或更方便的路线。如果用户持续地穿过优选的路线,当前的导航核心不能以有意义的方式合并这些数据。
[0019]在市场上存在试图通过“学习”优选的路线来掩盖这一不足的一些解。然而,这些系统的方式奏效,用户不得不在点A与点B之间行驶。随着重复,系统将学会优选的子路线,在该优选的子路线上在点A与点B之间指引用户。然而,系统不能以对终端用户有用的方式来概括该信息。用户已经采用了三次或者四次系统告诉用户他们应当采取的路线之后,大多数用户将发现系统中的可疑值。用户想要的是获取信息的方式,例如避开交通控制设备、进入或者离开商务园区、购物中心和居住子分区的详细路线、并且对由单元所执行的所有其他路线指弓I来概括信息。
[0020]当遇到合理地重新指定路线的人们时,商业上可用的导航软件核心都有问题。在大多数系统中,所计算的路线的任何发散(divergence)都将导致系统重新计算解,这将本质上使用户返回到最初计算的路线上。这些重新计算通常必需原路返回、曲折行进、或者立即将初始路线返回给用户。对于与所建议的路线的小发散可能没有准备,以合理的距离无缝地重将用户新引导进入最初建议的路线。
[0021]当前的导航系统还缺乏互用性。终端用户可能在他们的汽车内有一个系统,在他们的膝上型电脑上有一个系统,并且在手机上有一个系统。然而,对于很少的例外,数据能够从一个系统中传递到另一个系统中。此外,在手机上开始导航、进入到车辆中、并且使车辆的导航系统提供手机上所计算的导航是不可能的。

【发明内容】

[0022]正如大多数导航系统一样,这个导航系统包括具有用户接口的输入/输出设备、用于地理定位(例如,GPS天线和芯片集)的方法、基于服务器的导航数据库、终端用户处理器和存储器、基于服务器的处理器和存储器、用于在终端用户和服务器之间通信的无线方法、和导航软件核心。
[0023]正如许多系统一样,用户将使用POIs、地址或者存储器来输入目的地。起点被假设为用户的当前位置,除非指定了某些其他点。用户可以指定最短时间、最短距离、用户所定义的费用函数(例如最少油耗)、或者排除(例如,没有州际公路或者没有收费公路)。为了从起点到达目的地,发明将计算导航解。
[0024]在地球表面上,或者在代表地球表面的一部分的任何抽象上,在用户需要导航设备的帮助的任何局部化区域中能够创建有界地理区域(Bounded Geographic Regions,BGRs)。在每个BGR内将存在多个街道和兴趣点(Points of Interest, POIs)。在BGR的外围存在节点,其代表街道与BGR的边界的交点。
[0025]当在BGR内导航时,只有四个可能:(1)用户在一个节点进入BGR,并且通过另一个节点退出BGR ; (2)用户在BGR内起始旅程并且通过节点退出BGR ; (3)用户通过节点进入BGR并且目的地位于BGR内;或者(4)起点和目的地两者都位于BGR内。在情况2,为了计算目的而将起点作为节点对待。在情况3,为了计算目的而将目的地作为节点对待。在情况4,为了计算目的而将起点和目的地两者都作为节点对待。因此,在每个BGR中,能够标识有限数目的节点对(Node Pairs),来代表穿越BGR的总的可能解集。此外,BGRs是大小可调的,使得对每个节点对能够有快速的、明确的解。
[0026]此发明将为终端用户最优化某些用户定义的因变量(dependent variable):(1)时间;(2)距离;(3)燃料;(4)费用;或者(5)其他具有商业价值的、用户定义的因变量。发明将通过创建估算函数来完成这些,估算函数能够用于为每个节点对提供值。估算函数将基于来自导航数据库以及历史数据的道路类型,使用加权因数来为每个节点对创建值。
[0027]导航软件核心将标识有限数目的BGRs,这些BGRs将是在起点和目的地之间地理上合理临近的,在这些BGRs中计算解。通过为每个BGR的每个节点对确定值,能够明确地解出最优化解。通过创建足够小以致于能够有明确解的BGRs,这一系统和方法将允许对于路线的二维最优化。
[0028]一旦对于节点对计算出了解,则将解存入节点对查找表中(Node Pair Look-UpTable, NPLUT)。NPLUT是按BGR排序的,使得在任何给定的时间上,仅将最局部的解呈现给处理单元,以改进速度和效率。单元能够对每个节点对比较实际的性能与计算出的值。使用误差函数,单元能够对节点对调整所存储的解。此外,NPLUT既存储变量又存储属性(数字的事件或者标志)数据,允许全因子的ANOVA或者MANOVA计算,依赖于感兴趣的因变量的数目。NPLUT能够使用因子,这些因子包括但不限于:时间、星期、日期、驾驶员、驾龄、驾驶员学习驾驶的地点(波士顿驾驶员总是驾驶得很快),特别事件的发生(例如,附近的足球比赛)、施工、降水、温度等等。
[0029]在NPLUT内,每个BGR和节点对具有唯一的标志符(designator)或者名称。许多编号方案能够用于两者。能够使用序号编号方案、基数编号方案、字母数字式编号方案(有或者没有意义)、或者基于BGR的维度和经度的标识方案来对BGRs排序。内部编号方案应当关注数据库和计算上的效率。用于给BGR排序方案的值并不需要呈现给终端用户。如果将BGR编号或者排序呈现给终端用户是有利的,则创建变换将易于引用的标志符(例如,1、
2、3、等)显示给终端用户。对于某些车队应用者来说这可能是有帮助的,例如消防车队,当前在消防车队中使用分区来分配车辆和序号。
[0030]对于每个BGR的每个节点,需要指派唯一的标志符。节点对标识符将随后作为两个节点的唯一标志符,以及相关联的BGR的标志符。为了全面描述节点对,人们需要既标识BGR又标识节点对。节点对标志符的节点部分将是对系统可交换的。在真实世界中,每个节点代表当道路穿过BGR的边界时的道路上的点。因此,节点对标志符将给出两个位置,或者在同一道路上,或者在不同道路上,两者都在特定的BGR的边界上。
[0031]在NPLUT中,每个节点对参考将对每个因变量(例如,时间、距离、燃料消耗、主干道导航、等等)具有值。对于穿过节点对的每个导航,将测量或者估计实际值。随后将实际值连同与旅程有关的自变量(independent variable) 一起存储到NPLUT中,这些自变量例如驾驶员的年龄、驾驶员的性别、驾驶员的职业、车辆类型、车龄、时间、星期、日期、天气等等。每次导航后,中间ANOVA和MANOVA值(例如,总和、平方和等等)能够被存储并且与节点对旅程相关连。以这种方式,当特定用户导航时,能够对每个节点对呈现调整的值。
[0032]用于调整给每个节点对提供的值的反馈可以是简单的最小平方差计算,误差函数更严重地赞成最近的事件或者其他常用的控制系统误差修正方法。真正可预测的交通仅仅是正确地标识了感兴趣的因变量,并且捕获到感兴趣的自变量。如果一个人做到了这些则系统将以如同数据和数学允许的准确性那样来预测交通。
[0033]由于导航是基于服务器的,因此能够以非当前可用的方式来使用BGRs、节点对和自变量。例如,如果在芝加哥的天气开始影响交通,则典型地它将在给定的时间量内到达底特律。可以将简单的辅助处理附加到系统上,其基于脱离自变量来估计例如芝加哥的天气与底特律的天气之间的延时周期,以及从芝加哥天气变得影响底特律交通的天气的与时间相关的可能性。系统随后能够基于脱离迫近的天气或者其他可预测的未来事件而为未来的旅程创建ETAs。随着数据的修正变得更确定,随后能够定期更新未来旅程的ETAs。
[0034]多个车辆、多个目的地(Multi-Vehicle,Multi-Destination, “MVMD”)导航是单个车辆到达单个目的地问题的推广。MVMD通常与车队相关联。能够有许多不同种类的MVMD问题。递送公司,例如联邦快递公司(Fedex)或者邮局,具有MVMD问题。进行居家访问的维修工和电缆公司有MVMD问题。卡车公司具有MVMD问题。出租汽车和豪华轿车具有MVMD问题。我们将指派定义为对于单个车辆给出一个或者更多目的地。指派给单个车辆的目的地的次序被称为“路线”。我们将约束条件(Constraint)定义为对于一个或者更多车辆的目的地的次序上的限制。
[0035]约束条件的类型有很多。首先,让我们将“减站”定义为乘客或者载荷在此下车的目的地。“加站”是乘客或者载荷在此被添加到车辆上的目的地。载荷分担是约束条件,其中路线终结于两个或者更多个减站,并且载荷中的所有项目的最大重量或者最大尺寸是被限制的。车辆搭乘是约束条件,其中路线终结于两个或者更多个减站,并且在给定的时间内车辆中的乘客的总数是受限的。立即联动(Linkage)是约束条件,其中给定的目的地必须立即跟随给定的起点。联动是约束条件,其中在给定的车辆中给定的目的地必须跟随给定的起点。约束条件还可以是车队特有的。例如,特定的出租汽车公司具有要求在20分钟内接收订单的服务标准,这将作为解的约束条件。
[0036]为车辆生成路线的过程被称为“调度”。要求车辆到达目的地的离散的数据库条目被称为订单。订单可以包括一个起点和一个目的地、一个起点和几个目的地、或者几个起点和几个目的地。对于本发明来说,调度2台或者2000台车辆是相同的。首先,需要对于车队选择应变量。将对所有订单和所有车辆的所有目的地输入到调度数据库中。系统将这样启动:通过最小化由整个车队所穿过的BGRs的数目、令每个车辆到达第一个目的地、同时履行任何约束条件。这将归结为简单的矩阵数学,由于组织BGRs和节点对的方式。以同样的方式接近每个附加的目的地,同时前一个目的地作为新的起点。如果由于特定路线违反了约束条件而调度失败,则系统将迭代,对造成约束条件违反的目的地给予优先权。以这种方式,系统快速标识出可能的约束条件违反,并且将试图利用无约束条件违反来最优化。有时,不存在不违反约束条件的解。将系统设计为提供具有最小约束条件违反的最优化解。如果特定车队想要的话,系统能够提供具有更多约束条件违反的额外的最优化解。以这种方式,车队调度者能够在最优化的路线和服务违反(约束条件违反)之间确定适当的权衡。
[0037]MVMD问题在其限制中能够被用于综合交通管理系统。随着在拥堵的城市区域中更多车辆使用数目有限的道路,市政当局将寻找保持交通移动的某些总体解决方案。在使用以上定义的MVMD方法的综合交通管理系统中,BGRs将对于总体数目的车辆具有饱和水平。交通管理系 统能够在拥堵的城市区域中水平加载所有BGRs,最小化该区域中所有车辆到达它们的目的地所花费的总体时间。这种解决方案将有效地增加道路网络的总体容量。
[0038]系统还能够在同一车队内容纳多个服务类型。例如,乘客运输公司可以同时具有豪华轿车、出租车和搭乘服务。系统能够容易地为车队调度者处理此事。每个服务类型被分开处理:豪华轿车调度对于豪华轿车订单进行最优化;出租车调度对于出租车订单进行最优化;以及搭乘调度对于搭乘订单进行最优化。然而,系统对于多种服务的车队具有一个重要的特征。当调度未能在没有约束条件违反中为服务找到路线时,与车队调度者的规则相一致地,系统能够使用其他服务类型车辆来试图服务约束条件违反。例如,如果搭乘订单导致了约束条件违反,则车队调度者能够利用出租车或者豪华轿车来服务该订单。此外,在对于甚至更困难的问题的车队解决方案上,将为调度者提供系统。例如,如果约束条件违反是关于豪华轿车服务的,则系统能够为调度者提供使用出租车或者搭乘的解决方案。以这种方式,代表性的试图满足豪华轿车的订单的客户服务能够为乘客呈现最多样化的选项:这里的豪华轿车将乘坐多久,这里的出租车将乘坐多久,这里的共享乘车将乘坐多久。
[0039]车辆共乘和载荷分担是更复杂的,由于停站次序与分组旅程是分开的数学问题的事实,但是他们是直接相关的。能够通过具有下面的方法的系统来确定停站顺序。确定所有加站的中点(Midpoint of Plus Stops, “PSM”)。确定所有减站的中点(Midpoint of MinusStops, “MSM”)。找到PSM和MSM的中点(Midpoint, “MID”)。离MID最远的加站是第一个搭乘点。离MID最远的减站是最后一个下车点。
[0040]对于一些车队来说,筹 划车辆也是必要的。例如,在没有当前订单时需要筹划的出租汽车,或者没有当前呼叫时的警察。在给定的服务区域内,每个BGR具有时间相关的订单密度(例如,在一个小时内有多少订单)。在服务区域中对于每个BGR的时间相关的订单密度能够被用作虚拟订单。系统能够采用自由车辆的数目并解决该虚拟订单,仿佛他们是真实的订单一样。以这种方式,在考虑到所有的车队约束条件时,空闲车辆将被分配给最可能的位置。
【专利附图】

【附图说明】
[0041]有13幅相关的附图。图I是系统通信的透视图。图2是替选实施例的系统通信的透视图。图3是替选实施例的系统通信的透视图。图4是替选实施例的系统通信的透视图。图5是替选实施例的系统通信的透视图。图6是替选实施例的系统通信的透视图。
[0042]图7显示了由本新颖的系统所体现的高级软件方法的流程图。图8显示了在常驻服务器中通过虚拟剖分(virtual tessellation)用于创建BGRs的流程图。图9显示了在常驻服务器中用于创建BGRs的替选方法。图10显示了用于在常驻服务器上设置车队客户的流程图。图11显示了使用了 BGRs和节点对基于导航方法的服务器的流程图。图12显示了手持或者远程电子设备软件处理的流程图。图13显示了在剖分的立方体中内接的地球。
【具体实施方式】
[0043]以下描述表示了发明人当前的优选实施例。描述并不意在限制发明,而是意在示出发明的一般操作原则。利用附图示出示例。
[0044]图7显示了与系统相关联的软件方法的高级流程图。一些操作仅在操作的设置上执行:99最初的开始、26加载地图数据库;62通过子程序创建BGRs、以及56系统初始化。可以从任何地图数据库销售商购买地图数据库26,或者可以使用众包地图数据库。系统初始化包括诸如形成NPLUT、使用任何可用数据填充NPLUT、创建用户数据库、使用任何可用数据填充用户数据库的管理程序,以及类似的任务。一旦系统已经被初始化56并且已经使用BGR子程序62创建了 BGRs,则系统能够接受导航输入55。
[0045]图13显示了内接于剖分的立方体302中的地球301。在计算机中,能够转动或者倾斜虚拟的地球301直到感兴趣的地理地块被置于中心。在几乎所有情况下,即使地球301是椭球体,也能够使感兴趣的地理区域与内接立方体302的面几乎平行。通过适当地选择立方体302上的剖分的尺寸,人们能够影响被投影到地球301上的BGR的尺寸。将这种方法称为虚拟剖分,因为地球301上的图案并非技术上的剖分,因为所有的BGRs不会是相同的形状和尺寸。
[0046]图8显示了使用虚拟剖分生成BGRs的方法。首先,系统在立方体44中内接地球。立方体的面45的中心是以超过感兴趣的地理区域为中心的。选择用于立方体的面的开始剖分尺寸46。标准的表面积(Standard Surface Area, SSA)是用于BGRs的目标表面积。大约I平方公里的BGR SSA看起来是理想的。其次,设置用于SSA64的变化限制(variationlimit)。这个数目应当是小的(小于10%)。所有BGRs都应当具有与SSA非常接近的表面积,为了最小化混淆的数据(在变化的分析过程中非正交的自变量)的可能性。如果希望的话,内接立方体上的剖分正方形47的尺寸是可以变化的。尽管这在计算上更难,然而这将最小化SSA变化(仅最内层片是正方形,每个后续层都是具有越来越高的纵横比的长方形。立方体剖分被投影到地球48上以创建初始BGRs。评估所有BGRs的SSA49。如果SSA分析成功(okay) 50,则存储BGRs53,并且GBR生成处理结束59。如果SSA分析不成功50,则擦除所有GBRs51。接下来,系统调整开始剖分尺寸52,调整外层剖分比率(剖分的立方体的面的外层多快变成纵横比越来越高的长方形)63,并且调整SSA变化限制64。随后重新开始整个过程47。
[0047]图9显示了用于生成BGRs的替选实施例的流程图。通过发现感兴趣的地理区域65的质心来开始过程58。创建单个BGR66,其表面积等于SSA并且至少有四条边。设置SSA变化限制64。围绕现有的BGR(S)来创建BGRs的层,其中BGRs的新层具有其最小化的周长67。分析用于层的SSA49。只要SSA分析成功,则添加BGRs的附加层。如果SSA不成功50,则仅分析最后一层的SSA69。如果最后一层包括与感兴趣的地理区域的边界重叠的BGRs70,并且这是SSA不被接受的唯一原因的话,则存储BGRs71。如果它不是边缘地理70,则擦除最后一层BGRs51。可允许的最大周长将比之前的迭代(iteration)增加了 10% 68,并且创建BGRs的新层67。持续该过程直到用BGRs覆盖整个感兴趣的地理区域72。
[0048]在图7中,一旦出现了 BGR程序62,则能够出现车队设置61 (图10)。在图10中,用车队设置80来登记每个客户或者车队。这包括使用关于车辆81、驾驶员86、和提供的服务91的信息来填充数据库。关于车队车辆81的所收集的数据包括车辆号码82、车辆类型(包括燃料类型)83、车辆的里程84、以及其他用户定义的车辆数据(自变量或者属性数据)85。关于驾驶员的所收集的数据包括姓名87、驾驶员号码或者标识88、雇佣类型(雇工、独立的承包人、所有者/操作员、等等)89、以及其他用户定义的驾驶员数据(自变量或者属性数据)90。关于车队服务所收集的数据包括客户类型92、服务标准93、服务范围94、以及其他用户所定义的服务数据(自变量和属性数据)95。数据库还允许用户定义的加燃料站96。一旦定义完所有数据,数据就被加载到数据库97中,并且程序结束98。
[0049]从图7,经由无线装置接收终端用户导航输入请求32。图1显示了无线通信和地理定位的实施例,这对于导航来说是必需的。终端用户在车辆201中,车辆201内置或者安装有远程电子设备(Remote Electronic Device, “RED”)。车辆201经由GPS芯片组、陀螺仪、和/或卫星收发机来进行地理定位。多个卫星200将GPS信号提供给车辆201的GPS收发机。车辆201随后能够利用无线网络202将其位置通信给中心服务器203。无线网络202可以是蜂窝或者移动电话网络、射频网络、或者其他无线装置。还可以经过例如w1-fi网络的混合装置网络来完成传输,该w1-fi网络经由有线互联网连接(未示出)向服务器下载并且上传请求。
[0050]图2显示了用于通信和地理定位系统的替选实施例。在图2中,车辆201已经被手机、MDT、或者RED204所取代。手机、MDT、或者RED204经由卫星网络200进行地理定位。手机、MDT、或者RED204经由无线网络202与服务器203通信。
[0051]图3显示了用于图2中的通信和地理定位系统的替选实施例。在此系统中,无线网络202用于地理定位以及与服务器的通信这两者。手机、MDT、或者RED204能够使用多个手机发射塔或者天线来识别其当前位置。这些数据能够与导航请求一起传输给远程服务器203。
[0052]图4显示了用于图2中的通信和地理定位系统的替选实施例。在此系统中,卫星200用于地理定位以及通信这两者。尽管GPS卫星当前对于通信并不是多任务的,然而可想到的是,在未来将会出现对于同一个卫星200完成地理定位信息和通信这两者。然而,此系统是根据当前的卫星趋势建造的:一套卫星200提供地理定位信息,并且另一卫星200用于与远程服务器203的通信。
[0053]图5显示了用于图1中的通信和地理定位系统的替选实施例。在此系统中,无线网络202用于地理定位以及与服务器通信这两者。车辆201能够使用多个手机发射塔或者天线来识别其当前的位置。这些数据能够与导航请求一起传输给远程服务器203。
[0054]图6显示了用于图1中的通信和地理定位系统的替选实施例。在此系统中,卫星200用于地理定位以及通信这两者。一套卫星200提供地理定位信息,并且另一卫星200用于与远程服务器203的通信。
[0055]在图7中,终端用户导航请求32通过图1到图6中的通信与地理定位系统的其中一个进行通信。无论车辆201还是手机、MDT、或者RED204,用户通过用户软件方法与系统进行的交互,通常被称为用户应用。在图12中,通过确保注册了用户102来开始用户应用101。如果注册了用户102,则出现目的地输入128。用户能够添加多个目的地127、128,可以指定排序或者允许系统为旅程排序。一旦完成输入127,则经由图1-图6中所示的装置将数据传输129给远程服务器。在这一点上,被给出了目的地输入128时,我们将远程服务器203处理为:产生导航路线的黑盒子。远程服务器203传输路线,由终端用户接收129该路线。终端用户应用101以预先确定的时间间隔通过传输126其位置,将pingl30远程服务器203。远程服务器203将用户的进度与远程服务器预测的用户的应该的进度做比较。如果朝向目的地的进度处于可接受的标准之外,则远程服务器203将发送重新指定路线信号125给用户应用101。终端用户单元将通知终端用户重新指定路线,同时远程服务器203提供替选的路线。通过终端用户应用101将接收126新路线。最终,重新指定路线或者不重新指定路线,终端用户都将到达目的地124。到达目的地后,终端用户的应用101将最终的pingl23传输给远程服务器203,使得远程服务器具备本次旅程的完整历史。
[0056]在开始终端用户应用101时,如果未注册该用户,则单元允许通过打开账户103来注册。在打开账户103后,用户选择ping频率104、导航优选106、和导航排除105。用户随后必须完成关于他自己或她自己的、以及关于他或她的车辆的自变量。驾驶员信息107包括驾龄108、驾驶记录109、每年驾驶里程数110、年龄111、婚姻状态112、家庭地址113、用户学习驾驶的地点114、用户职业115、用户性别116、以及其他公司或者集团定义的数据117。车辆信息118包括车辆所有者119、制造和型号120、型号年代121和车辆的英里数(里程)122。自变量数据应当具有非常高的质量,原因是用户将明白他们在回答问题时的准确性可能直接涉及系统能够多好地为他们提供导航。
[0057]图7显示了在终端用户输入32之后出现的导航60。在图11中,通过选择导航最优化因数I来开始导航60。一旦创建了 BGRs,发明才能够创建导航解。图11显示了单个车辆导航解。用户通过选择最优化因数I或者因变量:时间、距离、燃料、费用、或者用户定义的因变量来开始。接下来,如果想要的话,用户从考虑2中排除某些解,例如州际公路、收费公路、桥、或者其他可能的路线。用户使用输入设备输入一个或者更多目的地3。如果输入多于一个目的地,则用户能够选择6目的地的自动的10或者手动的5排序。当选择手动的5排序时,自动的目的地排序模块10将服从于手动输入。一旦排序完成,则识别起点和接下来的或者唯一的目的地9。如果在开始7中仅有单个目的地输入,则导航核心直接移动到标识起点和目的地9。
[0058]为了在起点和目的地之间计算,本发明将识别线性地位于起点和目的地8之间的BGRs,并且将他们指定为激活。这些BGRs被叫做Genl。在包含起点的BGR中,起点被指定为唯一的入口节点(entry node) 12。在包含当前目的地9的BGR中,当前目的地被指定为唯一出口节点(exit node) 13。在所有其他BGRs中,通过仅选择那些在其两边都具有BGR的节点11来创建节点对。导航核心创建用于所有激活的BGRs的节点对列表16。在多处理器系统中,导航核心将为考虑20下的所有节点对同时创建临时BGR阵列,并且测量NPLUT14来看在考虑17下对任何节点对是否存在解。如果在NPLUT中存在节点对解,则将其放置在临时BGR阵列20中。如果不存在,则使用用于每个街道类别的加权函数,本发明对每个BGR19的每个节点对进行因变量计算,捕获用于每个可能的解的路线信息。本发明将从可能的解集21中删除任何排除。由于对于初始计算仅用到了 BGRs的有限的集,因此并非每个BGR的所有节点都是可能的入口和/或出口。从兴趣节点所生成的数据能够以临时数据库格式,或者以允许快速访问的任何其他数据处理格式存储在阵列中20。这些临时数据能够被存储在缓冲存储器中、硬盘驱动器上或者任何其他类型的适宜的存储元件中。在多核处理器环境下,这样的计算是迅速的,原因是能够独立计算每个BGRs。
[0059]本发明随后通过发现从起点到目的地的初始最小解来创建初始试验路线,仅穿行于线性地位于起点和目的地之间的BGRs22。作为对于初始路线计算的边界条件,一个BGR的出口节点是相邻BGR的入口节点。通过创建可能的解的矩阵,本发明得出了明确的解。
[0060]一旦标识了初始试验路线,解引擎将相邻的所有BGRs添加到GenlBGRs23、18,并且大量重复以上过程。新的BGRs被叫做Gen2。现在GenlBGRs在计算中使用所有节点。Gen2BGRs使用节点的缩减集,原因是并非所有节点都具有与他们相关联的相邻BGR。
[0061] 为了计算Gen2试验路线,排除Genl计算中所计算出的可能的解,原因是在临时阵列20中能够发现这些可能解。本发明再次应用了边界条件:一个BGR的出口节点是相邻BGR的入口节点。通过创建可能唯一解的矩阵(排除了 Genl解),本发明得出了明确的解、Gen2试验路线22。
[0062]以对Gen223,18很多相同的方式对Gen3重复该处理。与Gen2BGRs相邻的所有BGRs都被添加到计算中。从可能的解集中排除所有以前考虑过的试验解。计算出Gen3的明确的解。
[0063]将Gen A称为最优解。选择退出条件使得完成C的生成,其中C = A+B,这里C是生成的总数,A是最优生成,并且B是最优解之后计算的想要的发散解的数目。例如,如果Genl试验路线对于Gen2或者Gen3试验路线来说是优选的,并且计算停止,则将Genl试验路线呈现给用户作为优选的路线,C = 3,A = I并且B = 2。
[0064]实际上,B与起点和目的地之间的距离相关23。此外,能够通过简单的误差反馈函数来最优化B的选择,其中误差与距离相关。通过最大化速度限值来设置B的上限。换句话说,当车辆将不得不超过围绕外围的最大的可允许的速度限制为了提供比当前可用的解更优的解时,处理结束。
[0065]对于MVMD导航,对所有车辆重复以上处理。通过最小化所穿过的BGRs的数目为了让所有车辆到达初步的目的地,来确定初始目的地。对于每个车辆和目的地对,以上算法创建了路线。在第一个目的地再次指派每个车辆的目的地,同时系统试图最小化所穿过的BFRs的数目,为了让所有车辆都到达他们的下一个目的地。以这种方式,能够处理有或者没有约束条件下的多个车辆多个目的地问题。
【权利要求】
1.一种导航指引的方法和系统,至少包括:终端用户设备,具有用于输入目的地并且接收指引或者指定路线的装置;地图数据库,包括道路和可选的POlS ;用于确定车辆位置的设备和方法,例如全球定位系统;服务器或者存储器与处理元件的其他集合;用于在终端用户设备与服务器之间通信的装置;NPLUT数据库;以及导航软件核心,常驻在服务器上,具有创建有界地理区域(Bounded Geographic Regions, “BGRs”),识别可能是可能解的一部分的用于每个BGR的节点对,访问NPLUT以得到用于每个节点对的解,以及基于由用户提供的因变量和作为解数据库的固有部分的自变量来最优化导航解的能力。
2.根据权利要求1所述的发明,其中所述系统解决用于多个车辆/多个目的地问题。
3.根据权利要求2所述的发明,其中所述系统对于每个车辆提出路线。
4.根据权利要求2所述的发明,其中所述系统沿着所述路线跟踪每个车辆的进度。
5.根据权利要求2所述的发明,其中所述系统允许对于车辆共乘或者载荷分担的车队进行调度。
6.根据权利要求2所述的发明,其中当沿着其路线的单个车辆的进度与所预测的值的发散超过用户定义的量时,所述系统将为一个或者更多车辆重新指定路线。
7.根据权利要求2所述的发明,其中所述系统使用用户定义的约束条件解决用于多个车辆/多个目的地问题。
8.根据权利要求2所述的发明,其中所述软件包括误差函数计数器和反馈程序来修正存储在NPLUT数据库中的因变量值。
9.根据权利要求2所述的发明,其中在所述终端用户到达目的地的同时或者到达目的地的之后,对于因变量和自变量的用于每个节点对解的每个终端用户的实际值都与NPLUT通信并且被存储在NPLUT中,所述因变量例如为时间、距离、燃料使用、费用、以及任何用户定义的因变量。
10.根据权利要求2所述的发明,其中对于在NPLUT中的每个因变的节点对,捕获并且存储相关联的自变量因数,该因数包括变量和属性这两者,例如但不限于,一天的时间、日期、星期几、温度、施工、降水、驾驶员的年龄、驾驶员的职业、驾驶员的性别、车辆类型、车龄、车辆里程、以及特别事件,其能够用于创建存储在NPLUT中的因变量的ANOVA和MANOVA计算,从而在未来的导航期间给出更准确的估计。
11.根据权利要求10所述的发明,其中通过仅存储来自之前的导航迭代的、必须的ANOVA或者MANOVA的总和以及乘积并且从所计算的总和以及乘积删除基础数据,来压缩NPLUT数据库。
12.根据权利要求2所述的发明,其中终端用户的设备存储器仅存储激活的BGRs的细节。
13.根据权利要求2所述的发明,其中经由到多个车辆、移动电话、移动数据终端、或者远程电子设备的无线连接或者卫星连接,来完成与服务器的通信。
14.根据权利要求2所述的发明,其中服务器还能够从其他数据源收集数据,用于包含在NPLUT中,作为与节点对相关联的变量或者属性数据,其他数据源包括但不限于NHTSA交通传感器信息、警方报告、本地交通报告、以及施工报告。
15.根据权利要求2所述的发明,其中所述系统用于在拥堵的城市区域中的交通进行监控和指定路线。
【文档编号】G06F17/00GK104025075SQ201280064665
【公开日】2014年9月3日 申请日期:2012年10月26日 优先权日:2011年10月26日
【发明者】托马斯·保罗·希德, 约翰·卡尔弗·希德 申请人:托马斯·保罗·希德, 约翰·卡尔弗·希德
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1