一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于天气的速度和路线规划的制作方法

2022-10-26 18:50:00 来源:中国专利 TAG:

基于天气的速度和路线规划
1.相关申请的交叉引用
2.本技术要求2021年3月20日提交的美国非临时申请no.17/207,663的优先权,该申请要求2020年3月20日提交的美国临时专利申请no.62/992,544的优先权,其全部内容通过引用并入本文。


背景技术:

3.车辆可以被配置为在自动模式下操作;在自动模式下,车辆在没有或几乎没有来自驾驶员输入的情况下通过环境导航。这种自动驾驶车辆可以包括一个或多个系统(例如,传感器和相关的计算设备),这些系统被配置为检测关于车辆运行环境的信息。车辆及其相关的计算机实现控制器使用检测到的信息通过环境导航。例如,如果所述(一个或多个)系统检测到车辆正在接近障碍物,并由计算机实现控制器确定,则控制器会调整车辆的方向控制以使车辆绕过障碍物。
4.操作自动驾驶车辆时,恶劣天气会降低自动操作的性能或可靠性。例如,恶劣天气可能导致运输货物时的安全问题、传感器可靠性降低、车辆损坏、货物丢失或长时间延误。在短途自动驾驶车辆行驶期间,天气问题不大,因为可以更容易地预测和规划天气。然而,在长距离行驶(例如,1,000英里)期间,更远处的天气会出现不确定性,因为天气总是在变化,并且在长距离行驶之前可能难以计划。车辆在长途驾驶中遇到恶劣或其他不良天气的机会更多,并且是否会遇到破坏性天气也存在更多不确定性。缓解该问题的解决方案允许自动驾驶车辆在不太严格的限制下运行,并且长途货运的天气问题不会成为瓶颈。


技术实现要素:

5.本公开一般涉及基于天气状况的自动驾驶车辆的速度规划。
6.因此,第一实施例描述了由配置为控制车辆操作的计算系统执行的方法。该方法涉及:识别一个或多个共同连接至少两个地点的潜在路段。该方法还涉及:接收预测每个潜在路段沿途的未来天气状况的时空天气信息。该方法还涉及:对于每个潜在路段,评估部分成本函数,该部分成本函数包括一组路段加权成本因素的总和,其中,至少一个路段加权成本因素包括基于沿潜在路段的未来天气状况的不良天气风险因素。该方法还涉及:基于总成本函数的最小化,选择一组选定的路段和相应的路段目标速度供车辆在至少两个地点之间穿行时使用,以避免不良天气状况,其中,总成本函数是与共同连接至少两个地点的一组路段相关联的部分成本函数的总和。
7.第二实施例描述了一件制造品,包括其上存储有指令的非暂时性计算机可读介质,当由计算系统中的处理器执行时,使所述计算系统执行以下操作。该操作包括:识别一个或多个共同连接至少两个地点的潜在路段。该操作还包括:接收预测每个潜在路段沿途的未来天气状况的时空天气信息。该操作还包括:对于每个潜在路段,评估部分成本函数,该部分成本函数包括一组路段加权成本因素的总和,其中,至少一个路段加权成本因素包括基于沿潜在路段的未来天气状况的不良天气风险因素。该操作还包括:基于总成本函数
的最小化,选择一组选定的路段和相应的路段目标速度供车辆在至少两个地点之间穿行时使用,以避免不良天气状况,其中,总成本函数是与共同连接至少两个地点的一组路段相关联的部分成本函数的总和。
8.第三实施例描述了一种系统,该系统包括:至少一个处理器;和存储器,用于存储指令,当由所述至少一个处理器执行时,该存储器使所述至少一个处理器执行以下操作。该操作包括:识别一个或多个共同连接至少两个地点的潜在路段。该操作还包括:接收预测每个潜在路段沿途的未来天气状况的时空天气信息。该操作还包括:对于每个潜在路段,评估部分成本函数,该部分成本函数包括一组路段加权成本因素的总和,其中,至少一个路段加权成本因素包括基于沿潜在路段的未来天气状况的不良天气风险因素。该操作还包括:基于总成本函数的最小化,选择一组选定的路段和相应的路段目标速度供车辆在至少两个地点之间穿行时使用,以避免不良天气状况,其中,总成本函数是与共同连接至少两个地点的一组路段相关联的部分成本函数的总和。
9.这些以及其他实施例、方面、优点和替代方案对于本领域普通技术人员而言将通过在适当处参考附图阅读以下详细描述而变得显而易见。此外,应当理解,本文提供的该概要和其他描述以及附图旨在仅通过示例的方式来说明实施例,因此,还可能包括大量变化。例如,结构元件和处理步骤可以重新排列、组合、分布、消除或以其他方式改变,同时保持在所要求的实施例的范围内。
附图说明
10.图1是示出根据一个或多个示例实施例的车辆的功能框图。
11.图2a示出了根据一个或多个示例实施例的车辆的侧视图。
12.图2b示出了根据一个或多个示例实施例的车辆的俯视图。
13.图2c示出了根据一个或多个示例实施例的车辆的前视图。
14.图2d示出了根据一个或多个示例实施例的车辆的后视图。
15.图2e示出了根据一个或多个示例实施例的车辆的附加视图。
16.图3示出了具有牵引单元和半挂车的半挂车卡车形式的示例车辆的侧视图。
17.图4是与自动驾驶车辆相关的各种计算系统之间的无线通信的概念图。
18.图5示出了根据一个或多个示例实施例的示例分段路线。
19.图6示出了根据一个或多个示例实施例的示例速度曲线。
20.图7示出了根据示例实施例的基于天气的速度和路线规划方法的流程图。
21.图8是根据示例实施方式的计算机程序的示意图。
具体实施方式
22.在以下详细描述中,参照形成其一部分的附图。在图中,相似的符号通常标识相似的组件,除非上下文另有说明。详细描述、附图和权利要求中描述的示例性实施例并不意味着限制。可以使用其他实施例,并且可以做出其他改变,而不背离本文提出的主题的范围。将容易理解的是,本公开的各方面,如本文一般描述的和图中所示,可以以各种不同的配置来排布、替换、组合、分离和设计,所有这些都在本文中进行了明确地考虑。
23.本公开提供了用于自动驾驶车辆(例如卡车)的速度规划的方法和系统,该车辆正
在或将要沿路线行驶,特别是基于沿路线的预测天气状况,例如与一个或多个路段有关的天气预报。如此,可以调节速度以有利地最小化行驶通过的至少一部分路途上预测将出现的不良天气状况的风险(例如,以最短的时间行驶于不良天气状况或完全避免行驶于不良天气状况),从而促进车辆更可靠和/或安全地计划行程。不良天气状况可以包括例如大雨或大雪、浓雾、冰或雨夹雪,以及其他可能性。车辆控制系统和/或相关计算设备以及处理器认为不良天气类型可以预先定义(例如,在车辆软件中硬编码)并根据需要动态更新,或者可以某种其他方式确定。
24.为了确定用于组成特定路线的路段的一组最佳目标速度(例如,第一路段的第一目标速度、第二路段的第二目标速度等),例如,车辆可以使用成本函数。例如,车辆可以计算整个路线中每个路段的目标速度的最佳序列,以最小化应用于整个路线的成本函数,该成本函数是在此速度目标选择下每个路段的成本之和。每个路段的成本可以基于各种成本因素,例如当车辆沿给定路段行驶时预期出现的天气状况的概率和/或严重性,以及其他可能的因素。
25.本公开还提供了用于调整沿路线行驶的自动驾驶车辆(例如卡车)的路线的方法和系统,特别是基于沿路线的预测天气状况,例如与一个或多个路段有关的天气预报。如此,可以调整路线以有利地最小化行驶通过的至少一部分路途上预测将出现的不良天气状况(例如,大雨或大雪、大雾等)的风险,从而促进车辆更可靠和/或安全地计划行程。
26.本文将更详细地讨论,关于确定路线和/或速度组应该首先是什么样的路线和/或速度组(或应该在行驶期间调整到什么样的路线和/或速度组)可以基于最小化通过不良天气状况的行程,并且也许另外基于避免其他环境状况/障碍,例如交通、施工或异常或危险状况(例如事故、坑洼、附近的野火、警察活动等)。车辆的控制系统可以不断地重新规划其路线或当前路线上的策略,以考虑最新状况并针对这些状况优化路线或路线上的策略。
27.现在参考附图,图1是示出示例车辆100的功能框图。车辆100可以表示能够完全或部分地以自动模式操作的车辆。更具体地,车辆100可以通过接收来自计算系统(例如,车辆控制系统)的控制指令以自动模式运行而无需人机交互(或减少人机交互)。作为在自动模式下操作的一部分,车辆100可以使用传感器(例如,传感器系统104)来检测和尽量识别周围环境的物体,以实现安全导航。在一些实施方式中,车辆100还可以包括使驾驶员(或远程操作员)能够控制车辆100的操作的子系统。
28.如图1所示,车辆100包括各种子系统,例如推进系统102、传感器系统104、控制系统106、一个或多个外围设备108、电源110、计算系统112、数据存储器114和用户界面116。车辆100的子系统和部件可以以各种方式互连(例如,有线或无线连接)。在其他示例中,车辆100可以包括更多或更少的子系统。此外,本文描述的车辆100的功能可以被划分为附加功能或物理组件,或在实施方式中组合为更少的功能或物理组件。
29.推进系统102可以包括一个或多个可操作以向车辆100提供动力运动的组件,并且可以包括发动机/马达118、能源119、变速器120和车轮/轮胎121,以及其他可能的组件。例如,发动机/马达118可以被配置为将能源119转换为机械能并且可以对应于内燃机、一个或多个电动机、蒸汽机或斯特林发动机以及其他可能的选项中的一种或其组合。例如,在一些实施方式中,推进系统102可以包括多种类型的发动机和/或马达,例如汽油发动机和电动机。
30.能源119代表可以全部或部分地为车辆100的一个或多个系统(例如,发动机/马达118)提供动力的能源。例如,能源119可以对应于汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和/或其他电源。在一些实施方式中,能源119可以包括燃油箱、电池、电容器和/或飞轮的组合。
31.变速器120可以将机械动力从发动机/马达118传递到车轮/轮胎121和/或车辆100的其他可能系统。因此,变速器120可以包括齿轮箱、离合器、差速器和驱动轴,以及其他可能的组件。驱动轴可以包括连接到一个或多个车轮/轮胎121的轴。
32.车辆100的车轮/轮胎121可以具有示例实施方式中的各种配置。例如,车辆100可以以独轮车、自行车/摩托车、三轮车或汽车/卡车四轮形式,以及其他可能的配置存在。因此,车轮/轮胎121可以以各种方式连接到车辆100并且可以为不同的材料,例如金属和橡胶。
33.传感器系统104可以包括各种类型的传感器,例如全球定位系统(global positioning system,gps)122、惯性测量单元(inertial measurement unit,imu)124、一个或多个雷达单元126、激光测距仪/激光雷达单元128、摄像机130、转向传感器123和油门/制动传感器125,以及其他可能的传感器。在一些实施方式中,传感器系统104还可以包括被配置为监测车辆100的内部系统的传感器(例如,o2监测器、燃油表、发动机油温、制动器状况)。
34.gps 122可以包括收发器,该收发器可操作以提供关于车辆100相对于地球的位置的信息。imu 124可以具有使用一个或多个加速度计和/或陀螺仪的配置并且可以基于惯性加速度感测车辆100的位置和方向变化。例如,imu 124可以在车辆100静止或运动时检测车辆100的俯仰和偏航。
35.雷达单元126可以代表一个或多个系统,该系统被配置为使用无线电信号来感测车辆100的本地环境内的物体(例如,雷达信号),包括物体的速度和航向。因此,雷达单元126可以包括一个或多个配备有一个或多个天线的雷达单元,该天线配置为如上所述地发送和接收雷达信号。在一些实施方式中,雷达单元126可以对应于可安装的雷达系统,该雷达系统被配置为获得车辆100的周围环境的测量值。例如,雷达单元126可以包括一个或多个雷达单元,该雷达单元被配置为耦合到车辆的底部。
36.激光测距仪/激光雷达128可以包括一个或多个激光源、激光扫描仪和一个或多个检测器,以及其他系统组件,并且可以在相干模式(例如,使用外差检测)或非相干检测模式下操作。摄像机130可以包括一个或多个设备(例如,静态相机或摄像机),其被配置为捕捉车辆100的环境的图像。
37.转向传感器123可以感测车辆100的转向角,其可以涉及测量方向盘的角度或测量表示方向盘角度的电信号。在一些实施方式中,转向传感器123可以测量车辆100的车轮的角度,例如检测车轮相对于车辆100的前轴的角度。转向传感器123也可以被配置为测量车辆100的方向盘角度、表示方向盘角度的电信号、以及车轮角度的组合(或子集)。
38.油门/制动传感器125可以检测车辆100的油门位置或制动位置之一。例如,油门/制动传感器125可以测量油门踏板(油门)和制动踏板两者的角度,或者可以测量例如,可以表示油门踏板(油门)的角度和/或制动踏板的角度的电信号。油门/制动传感器125还可测量车辆100的油门体的角度,其可包括为发动机/马达118提供能量源119的调制的物理机构
的一部分(例如,蝶阀或化油器)。另外,油门/制动传感器125可以测量车辆100的转子上的一个或多个制动片的压力或油门踏板(油门)和制动踏板的角度、表示油门踏板(油门)和制动踏板的角度的电信号、油门体的角度、以及至少一个制动片正施加到车辆100的转子上的压力的组合(或子集)。在其他实施例中,油门/制动传感器125可以被配置为测量施加在车辆踏板,例如油门或制动踏板上的压力。
39.控制系统106可以包括被配置为辅助导航车辆100的组件,例如转向单元132、油门134、制动单元136、传感器融合算法138、计算机视觉系统140、导航/路径系统142和避障系统144。更具体而言,转向单元132可操作以调整车辆100的航向,而油门134可控制发动机/马达118的运行速度以控制车辆100的加速。制动单元136可使车辆100减速,这可能涉及使用摩擦以使车轮/轮胎121减速。在一些实施方式中,制动单元136可以将车轮/轮胎121的动能转换为电流以供车辆100的一个或多个系统后续使用。
40.传感器融合算法138可以包括卡尔曼滤波器、贝叶斯网络或可以处理来自传感器系统104的数据的其他算法。在一些实施方式中,传感器融合算法138可以提供基于传入传感器数据的评估,例如个体物体的评估和/或特征,对特定情况的评估,和/或对给定情况下的潜在影响的评估。
41.计算机视觉系统140可以包括可操作以处理和分析图像以确定物体、环境物体(例如,红绿灯、道路边界等)和障碍物的硬件和软件。因此,计算机视觉系统140可以使用物体识别、运动结构(structure from motion,sfm)、视频跟踪和计算机视觉中使用的其他算法,例如,以识别物体、映射环境、跟踪物体、估计物体的速度、等等。
42.导航/路径系统142可以确定车辆100的行驶路径,其可涉及在操作期间动态调整导航。因此,导航/路径系统142可以使用来自传感器融合算法138、gps 122和地图以及其他来源的数据来导航车辆100。避障系统144可以基于传感器数据评估潜在障碍物并使车辆100的系统避免或以其他方式成功越过潜在的障碍。
43.如图1所示,车辆100还可以包括外围设备108,例如无线通信系统146、触摸屏148、麦克风150和/或扬声器152。外围设备108可以为用户提供控件或其他元件以与用户界面116交互。例如,触摸屏148可以向车辆100的用户提供信息。用户界面116还可以通过触摸屏148接受来自用户的输入。外围设备108还可以使车辆100能够与诸如其他车辆设备之类的设备通信。
44.无线通信系统146可以直接或经由通信网络与一个或多个设备进行无线通信。例如,无线通信系统146可以使用蜂窝通信,例如cdma、evdo、gsm/gprs、例如wimax或lte的4g蜂窝通信,或5g蜂窝通信。替代地,无线通信系统146可以使用wifi或其他可能的连接与无线局域网(wireless local area network,wlan)通信。例如,无线通信系统146还可以使用红外链路、蓝牙或紫峰直接与设备通信。在本公开的上下文中,也可以使用诸如各种车辆通信系统的其他无线协议。例如,无线通信系统146可以包括一个或多个专用短程通信(dedicated short-range communications,dsrc)设备,该设备可以包括车辆和/或路边站之间的公共和/或私人数据通信。
45.车辆100可以包括用于为组件供电的电源110。在一些实施方式中,电源110可以包括可充电锂离子电池或铅酸电池。例如,电源110可以包括一个或多个被配置为提供电力的电池。车辆100也可以使用其他类型的电源。在示例实现中,电源110和能源119可以集成到
单个能源中。
46.车辆100还可以包括计算系统112以执行操作,例如其中描述的操作。因此,计算系统112可以包括至少一个处理器113(其可以包括至少一个微处理器),该处理器113可操作以执行存储在诸如数据存储器114的非暂时性计算机可读介质中的指令115。在一些实施方式中,计算系统112可以表示可用于以分布式方式控制车辆100的各个组件或子系统的多个计算设备。
47.在一些实施方式中,数据存储器114可以包含指令115(例如,程序逻辑),该指令115可由处理器113执行以执行车辆100的各种功能,包括以上结合图1描述的那些。指令115可以至少包括用于执行本文中关于图7描述的操作的指令。数据存储器114也可以包含附加指令,包括对推进系统102、传感器系统104、控制系统106和外围设备108中的一个或多个进行数据发送,数据接收,交互和/或控制的指令。
48.除指令115之外,数据存储器114可以存储诸如道路地图、路径信息以及其他信息之类的数据。在车辆100以自动、半自动和/或手动模式操作期间,车辆100和计算系统112可以使用这种信息。
49.车辆100可包括用于向车辆100的用户提供信息或从其接收输入的用户界面116。用户界面116可控制可显示在触摸屏148上的交互式图像的内容和/或布局,或实现对其的控制。此外,用户界面116可以包括一组外围设备108内的一个或多个输入/输出设备,例如无线通信系统146、触摸屏148、麦克风150和扬声器152。
50.计算系统112可以基于从各种子系统(例如,推进系统102、传感器系统104和控制系统106)以及从用户界面116接收的输入来控制车辆100的功能。例如,计算系统112可以利用来自传感器系统104的输入,以便估计由推进系统102和控制系统106产生的输出。根据实施例,计算系统112可操作用于监测车辆100及其子系统的多个方面。在一些实施例中,计算系统112可以基于从传感器系统104接收的信号禁用车辆100的一些或所有功能。
51.车辆100的组件可以被配置为与它们各自系统内或外的其他组件以互连的方式工作。例如,在示例实施例中,摄像机130可以捕获多个图像,这些图像可以表示关于自动模式下运行的车辆100的环境状态的信息。环境状态可以包括车辆运行的道路参数。例如,计算机视觉系统140能够基于道路的多个图像识别坡度(斜坡)或其他特征。另外,gps 122和计算机视觉系统140识别的特征的组合可以与存储在数据存储器114中的地图数据一起使用,以确定特定的道路参数。此外,雷达单元126还可以提供关于车辆周围环境的信息。
52.换言之,各种传感器(可以称为输入指示和输出指示传感器)和计算系统112的组合可以交互以提供用于控制车辆的输入的指示或对车辆周围环境的指示。
53.在一些实施例中,计算系统112可以基于由无线电系统之外的系统提供的数据来确定各种物体。例如,车辆100可以具有激光器或其他光学传感器,其被配置为感测车辆视野中的物体。计算系统112可以使用来自各种传感器的输出来确定关于车辆视野中的物体的信息,并且可以确定车辆至各种物体的距离和方向信息。计算系统112还可以基于来自各种传感器的输出来确定物体是有利还是不利。
54.尽管图1示出了车辆100的各种组件,即无线通信系统146、计算系统112、数据存储器114和用户界面116,其被集成到车辆100中,但是这些组件中的一个或多个可以独立于车辆100进行单独安装或关联。例如,数据存储器114可以部分或全部与车辆100分立存在。因
此,车辆100的提供形式可以是:设备元件分开定位或一起定位。构成车辆100的设备元件可以有线和/或无线方式通信地耦合在一起。
55.图2a、2b、2c、2d和2e示出了车辆100的物理配置的不同视图。包括的各种视图用以描绘车辆100上的示例传感器位置202、204、206、208、210。在其他示例中,传感器在车辆100上可以具有不同的位置。虽然车辆100在图2a至2e中被描绘为厢式货车,但车辆100在示例中可以具有其他配置,例如卡车、轿车、半挂车卡车、摩托车、公共汽车、穿梭车、高尔夫球车、越野车、机器人设备或农用车辆,以及其他可能的示例。
56.如上所述,车辆100可以包括耦合在各种外部位置的传感器,例如传感器位置202至210。车辆传感器包括一种或多种类型的传感器,每个传感器被配置为从周围环境捕获信息或执行其他操作(例如,通信链路,获得整体定位信息)。例如,传感器位置202至210可以用作一个或多个摄像机、雷达、激光雷达、测距仪、无线电设备(例如,蓝牙和/或802.11)和声学传感器以及其他可能类型的传感器的任何组合的位置.
57.当在图2a至2e所示的示例传感器位置202至210处耦合时,可以使用各种机械紧固件,包括永久性或非永久性紧固件。例如,可以使用螺栓、螺钉、夹子、闩锁、铆钉、锚和其他类型的紧固件。在一些示例中,传感器可以使用粘合剂连接到车辆。在进一步的示例中,传感器可以设计和构建为车辆部件的一部分(例如,车镜的一部分)。
58.在一些实施方式中,一个或多个传感器可以使用可操作以调整一个或多个传感器的朝向的可移动底座定位在传感器位置202至210处。可移动底座可以包括旋转平台,该旋转平台可以旋转传感器以便从车辆100周围的多个方向获得信息。例如,位于传感器位置202的传感器可以使用能够在特定角度和/或方位角范围内旋转和扫描的可移动底座。因此,车辆100可以包括使一个或多个传感器能够安装在车辆100的车顶上的机械结构。此外,在示例中还可以包括其他安装位置。
59.图3示出了具有牵引单元302和半挂车304的半挂车卡车形式的示例车辆300的侧视图。
60.车辆300代表更大的车辆,其可以使用本文描述的任何操作来促进在计划路线上的行驶,例如为了将物品递送到特定位置的目的。车辆300的配置用作一个示例实现。其他示例可能涉及其他类型的车辆(例如,多拖车卡车、军用车辆、越野车辆)。
61.如图3所示,牵引单元302包括发动机舱306、驾驶室308、气坝310、燃油箱312和牵引车联轴器(fifth wheeling coupling)314。牵引单元302可配置为在半挂车304内导航和运输物品。因此,牵引单元302代表被配置为在半挂车304内运输物体的车辆的一种示例配置。牵引单元302的其他示例也是可能的。
62.发动机舱306代表可以容纳发动机的区域。因此,发动机可以对应于复杂机械设备,该复杂机械设备被配置为将能量转化为牵引单元302的有用运动。在一些示例中,牵引单元302可以包括一个或多个发动机。在其他状况下,牵引单元302可以是由一个或多个电动机驱动的电动车辆。
63.客舱308被示为可允许驾驶员和/或乘客就座的封闭空间。在其他示例中,舱室308的尺寸和配置可以不同。因此,车厢308还可以包括可允许驾驶员或乘客休息的卧铺。气坝310代表空气动力设备配置,以增强牵引单元302的操作。
64.半挂车304显示为耦合到牵引单元302并且包括封闭的货物空间316和起落架317,
起落架317被配置为在半挂车304与牵引单元302分离时使用。因此,半挂车304和牵引单元302可以包括若干组件,该组件配置为将半挂车304和牵引单元302耦合在一起。货物空间316可以在牵引单元302运输期间容纳并保护物体或材料。
65.在一些实施例中,车辆300还可以包括一个或多个雷达单元和/或其他车辆传感器系统。例如,雷达单元318a、318b显示为耦合到牵引单元302的底部。雷达单元318a、318b的位置和朝向表示将雷达单元318a、318b耦合到牵引单元302的一个示例布局。在其他示例中,牵引单元302可以在其他位置包括更多或更少的雷达单元。例如,牵引单元302可以仅包括耦合到其底部的雷达单元318b。此外,虽然雷达单元318a、318b显示在牵引单元302的保险杠线下方,但在其他示例中,雷达单元318a、318b可以定位在距离地面的不同高度处。
66.附加地或替代地,车辆300可以包括耦合到车辆300的其他位置的雷达单元或其他传感器单元,例如半挂车304的下侧(例如,车身底部)。例如,雷达单元320a、320b、320c和320d显示为耦合到半挂车304的下侧。雷达单元320a、320b、320c和320d的位置和朝向表示将雷达单元耦合到半挂车304的一个示例布局。在其他示例中,半挂车304可以在其他位置包括更多或更少的雷达单元。此外,虽然雷达单元320a、320b、320c和320d显示为在半挂车304的保险杠线下方,但在其他示例中,雷达单元320a、320b、320c和320d可以定位在距离地面的不同高度处。
67.图4是根据示例实现的,与自动驾驶车辆相关的各种计算系统之间的无线通信的概念图。特别地,无线通信可以通过网络404在远程计算系统402和车辆100(例如,车辆100的计算系统112)之间发生。无线通信也可以在服务器计算系统406和远程计算系统402之间以及服务器计算系统406和车辆100之间发生。在车辆100的操作期间,车辆可以从服务器计算系统406和远程计算系统402两者发送和接收数据以辅助车辆100的操作。车辆100可以传送与其操作相关的数据以及来自其传感器的数据至服务器计算系统406和远程计算系统402。另外,车辆100可以从服务器计算系统406和计算系统402接收与车辆传感器感测到的物体有关的操作指令和/或数据。
68.车辆100可以对应于能够在位置之间运送乘客或物体的各种类型的车辆,并且可以采用上述任何一种或多种车辆的形式,包括车辆300的形式。
69.远程计算系统402可以代表与远程协助和操作技术相关的任何类型的设备,包括但不限于本文描述的那些。在示例中,远程计算系统402可以代表任何类型的设备,该设备被配置为(i)接收与车辆100有关的信息,(ii)提供界面,人类操作员或计算机操作员可以通过该界面依次感知信息并输入与车辆100相关的响应信息,以及(iii)将响应发送到车辆100或其他设备。远程计算系统402可以采取各种形式,例如工作站、台式计算机、膝上型计算机、平板电脑、移动电话(例如,智能电话)和/或服务器。在一些示例中,远程计算系统402可以包括在网络配置中一起操作的多个计算设备。
70.远程计算系统402可以包括与车辆100的子系统和组件相似或相同的一个或多个子系统和组件。远程计算系统402至少可以包括一个处理器,该处理器配置为用于执行本文所述的各种操作。在一些实施方式中,远程计算系统402还可以包括用户界面,该用户界面包括输入/输出设备,例如触摸屏和扬声器。还可以包括其他示例。
71.网络404表示能够实现远程计算系统402和车辆100之间的无线通信的基础设施。网络404还能够实现服务器计算系统406和远程计算系统402之间以及服务器计算系统406
和车辆100之间的无线通信。
72.远程计算系统402的位置可以在示例中变化。例如,远程计算系统402可以具有远离车辆100的远程位置,该位置具有经由网络404的无线通信。在另一个示例中,远程计算系统402可以对应于车辆100内的计算设备,该计算设备与车辆100分离,但是通过该计算设备人类操作员可以与车辆100的乘客或驾驶员进行交互。在一些示例中,远程计算系统402可以是具有可由车辆100的乘客操作的触摸屏的计算设备。在一些示例中,远程计算系统402可以是一种计算设备,其具有可由车辆100的乘客操作的触摸屏。
73.在一些实施方式中,本文描述的由远程计算系统402执行的操作可以附加地或替代地由车辆100(即,由车辆100的任何(一个或多个)系统或(一个或多个)子系统)执行。换言之,车辆100可以被配置为提供一种远程辅助机制,车辆的驾驶员或乘客可以与该远程辅助机制进行交互。
74.服务器计算系统406可以被配置为通过网络404与远程计算系统402和车辆100进行无线通信(或者可能直接与远程计算系统402和/或车辆100通信)。服务器计算系统406可以代表被配置为接收、存储、确定和/或发送与车辆100及其远程协助有关的信息的任何计算设备。这样,服务器计算系统406可以被配置为执行任何(一项或多项)操作,或该(一项或多项)操作的一部分,其在本文中被描述为由远程计算系统402和/或车辆100执行。与远程协助相关的无线通信的一些实现可以使用服务器计算系统406,而其他通信可能不使用服务器计算系统406。
75.服务器计算系统406可以包括与远程计算系统402和/或车辆100的子系统和组件类似或相同的一个或多个子系统和组件,例如配置为用于执行本文描述的各种操作的处理器,以及用于接收来自远程计算系统402和车辆100的信息并向远程计算系统402和车辆100提供信息的无线通信界面。
76.现在将更详细地描述与基于天气的速度和路线规划有关的示例操作。
77.以下描述的操作,包括图7的方法700的操作,将主要描述为由车辆100执行,即由车辆100的计算系统112执行。然而,应该理解,对于方法700,以及本文公开的其他过程和方法,下面描述的操作可以附加地或替代地全部或部分地由上述车辆100的其他系统执行、由多个车辆执行(即,使得操作分布在多个车辆计算系统上)、由远程服务器/外部计算系统(例如,系统402和406)执行、和/或由一个或多个外部计算系统和一个或多个车辆的组合执行,以及其他可能的情况。
78.所公开的操作通常可以涉及确定一组路段和相应的路段目标速度以供车辆100在穿行路线时使用,从而避免或最小化在路线上已识别的不良天气状况下的行程。所公开的操作利用时空天气信息,例如超本地天气预报或其他类型的天气数据,以便准确预测天气状况(包括希望避免的不良天气)将出现在车辆100可能沿其行驶的各种路线的路段上的时间和/或位置。在一些实施例中,时空天气信息可以由计算系统112通过无线通信系统146或通过另一通信装置来接收。如本文所述,可以周期性地和/或动态地接收时空天气信息。计算系统112可以使用时空天气信息以及下文更详细描述的多种其他技术来找到最佳速度/路线行驶以避免不良天气。在某些状况下,完全避免不良天气可能过于理想化,尽管在其他情况下,可以以最小化车辆100暴露于此类不良天气为目标实施所公开的操作,例如在不理想的情景下选择完全避免不良天气的路线或速度(例如,车辆100具有特定的运输时间并且
没有其他可用或理想的路线选项)。
79.在一个示例中,车辆100可以行驶的路线可以采取的形式为:车辆100沿着各种道路和/或其他可行驶区域从初始位置行驶到目的地所遵循的一组导航方向。路线可以由至少两个地点定义或可以通过至少两个地点,包括但不限于建筑物、其他地标、十字路口、街道标志、限速变化的位置(例如,限速标志)、上坡道或下坡道、加油站、充电站、装卸码头、维护设施、城镇/城市/州/县/等的定义边界、和/或天气特定片区出现或预测即将出现于其中的边界区域的估计边缘、以及其他可能的情况。
80.在一些示例中,计算系统112可以使用本文所讨论的公开操作(例如,方法700)和/或使用一种或多种其他技术来确定路线本身。在其他示例中,计算系统112可以从远离车辆100的另一个计算系统(例如,服务器计算系统406)接收标识路线的数据。在其他示例中,标识路线可以涉及参考存储在计算系统112可访问的存储器中的存在路线。在其他示例中,识别路线可以涉及确定路线,例如通过确定到达特定目的地的多个路线选项,然后基于一个或多个标准(例如,时间、距离等)选择多个路线选项之一。
81.在一个实施例中,计算系统112可以在车辆100从初始位置出发之前确定路线,如上所述。例如,在达拉斯和洛杉矶之间可能存在三种不同的路线变化,每一种都有各自的固定距离。计算系统112可以使用一个或多个所公开的操作来确定首先选择哪条路线。因此,构成车辆100根据本公开行驶路线的路段可以是预定路线或多条预定路线中选定路线的路段。
82.在另一个实施例中,计算系统112可以使用除方法700之外的一种或多种技术来确定路线,然后可以执行所公开的操作中的一个或多个(例如,一次或交互地,诸如以重复的间隔或连续地)以调整行驶期间的路线,进而优化以获得更好的天气状况(权衡牺牲一些距离/时间以提高安全性或有条件的可预测性)。
83.在另一个实施例中,计算系统112可以在出发之后识别新路线,然后使用所公开操作中的一个或多个来选择(然后可能调整)新路线之一。
84.为了便于评估沿车辆100可能经过的潜在路段的天气状况,以及帮助确定或调整路线本身,计算系统112可以将至少两个地点之间的路线视为一个或多个共同连接至少两个地点的潜在路段。如本文将更详细讨论的,计算系统112有时可以规划(或重新规划)路线,然后将路线划分为一个或多个潜在路段以用于执行本文描述的技术,或者可以替代地使用本文描述的技术来首先确定路线。
85.图5示出了计算系统112可以如何划分路线502的一个示例。路线502可以是车辆100被设置为即将行驶的预先计划路线(或其路段的一部分),或者可以是车辆100可以行驶的多条潜在路线中的一条(或其路段的一部分)。如上所述,路段504a至504b中的每一个可以是至少两个地点506a至506c之间的路线502的部分。具体来说,路线上的决策点可以定义路段。例如,路段504b的地点可以是车辆在路线506c和路线决策点506b上的当前地理位置。或者,计算系统112可以通过两个未来决策点来定义一个路段。例如,计算系统112可以通过决策点506a和决策点506b定义路段504a。决策点可以是车辆100的控制器必须做出决定是否停留在路线上、离开路线并针对路段采取路线调整或者停车的点。路线决策点的示例可以是附近运营补给站520(例如,装卸码头、卡车和其他车辆的维修设施)、高速公路出口510、道路交叉口512、或高速公路立交桥514的关闭点。决策点也可以是车辆100可从调整的
路线返回到路线的点。
86.基于对上述决策点附加或替代使用的一个或多个标准,潜在的路段也可以其他方式识别。在一些示例中,天气可以定义或以其他方式对应于计算系统112在执行本文描述的技术时考虑的路段。例如,计算系统112接收的天气数据(在本文中也称为“时空天气信息”或“预测天气数据”)可以识别其中存在一种或多种特定天气状况的地理区域,无论其是不良天气状况(例如,大雨)或非不良天气状况(例如,小雨或雾)。在这种情况下,计算系统112可以将特定路段的边界设置为存在(一种或多种)天气状况的预期或当前边界。作为具体示例,特定路段的起点可以对应于沿着预计暴雨的边界的点并且特定路段的终点可以对应于沿预计暴雨的边界的另一个点。因此,特定路段完全在暴雨的边界内。换句话说,路线的特定路段可以由沿该路线的一天气片区或多个天气片区来定义。具体地,定义该路段的两个地点可以是在该路线上预测的天气状况的起点和预测的天气状况的终点,使得该路段包含所有特定天气片区。在其他情况下,特定路段可以被选择为包括天气片区的路段,但也包括其他不包括任何不良天气的地理区域。
87.在另一个实施例中,可以将这些路段固定下来,从而可以将路线分成由路线上地理位置定义的等长的路段。附加地或替代地,可以不断地更新这些路段。如此,路段可以随着车辆100沿着路线移动。例如,路段可以在车辆100前方半英里处开始并在目的地处结束,使得路段每半英里连续更新并以小间隔沿路线移动。将路段分成更新的小间隔可以使其更准确。替代地,可以连续更新这些路段,但沿路线与车辆100保持预定距离。例如,路段的第一路段(例如,在所有路段中依次排在第一位的路段)可以在车辆100前方半英里处开始;第二路段可以在车辆100前方两英里处开始,依此类推。此外,这些路段可能不会覆盖整个路线,但可以沿路线的一部分延伸,使其仅覆盖车辆100前方路线的一半。
88.在另一实施例中,距离测量或时间测量中的一个或多个可以定义路线上路段的长度或持续时间。例如,路段可以沿路线以1英里为增量。替代地,可以通过车辆100到达路线中的某个点的预期时间,以及在到达该点之后持续1小时的增量来定义这些路段。在某些情况下,沿路线的路段可能会略微重叠(例如,几英里、几英尺或其他距离)。当相同或相似的天气数据也存在于第一路段中时,路段重叠可以提高对依次紧随第一路段的路段中的天气数据的预测的准确性。由于较近的路段在天气数据置信度方面的差异较小,因此可以将较远的预测标记为可靠。例如,当较远路段包括与较近路段重叠的天气片区时,计算系统112可以对较远路段的天气预报标记的置信度高于其他更远路段的天气预报的置信度。
89.根据所公开的技术,计算系统112还可以接收对沿计算系统112识别的每个潜在路段(包括但不限于上述的路段类型)的未来天气状况具有预测性的时空天气信息。
90.在一些情况下,可以在集中位置接收天气数据,例如(i)可以与自动驾驶车辆车队或其他类型车辆车队通信的服务器计算系统和/或(ii)可以与车辆车队通信的另一车辆的计算系统。因此,天气数据可以存储在一个集中位置,然后在车队的车辆之间进行分派,以便车队都可以相应地调整其速度。此外,当前在路线上行驶的车辆可以使用其传感器获取代表其当前行驶面临的天气状况的数据,并将获取的数据发送到集中位置,以便与其他车辆共享数据。车辆收集的天气数据可进一步用于改进未来天气模型,从而随着时间的推移提高准确性。附加地或替代地,天气数据可以直接发送到另一车辆并存储在车辆上的存储器中。
91.在一个实施例中,计算系统112可以查询路线中跨越一个或多个路段的天气预报。在一些示例中,可以通过利用超本地天气预报来获得这些特定于路段的天气预报。超本地天气预报可以采取特定地区天气预报的形式,并且可以具体到如同在精确的gps位置确定每分钟至一小时的天气数据一样。当车辆100沿路线行驶时,即使当天气数据跨越多个路段时,这些路段也可以允许定期收集和更新更准确的超本地天气数据,因为查询可以是针对接近查询时间的超本地天气。在一些实施例中,仅在包含路线的路线区域中进行查询。替代地,也可以使用对应于更大地理区域(例如,城镇或县)的一般预测。特别地,在预测到有较大不期望天气模式横跨该路线的情况下,考虑远离车辆100的天气模式,以对处于该不期望天气模式路段的车辆100的到达时间做出显着改变可能是有意义的。
92.在一些示例中,可以针对预测车辆100到达路段的特定时间查询超本地天气预报。在这样的示例中,对于距车辆100较远并且具有较难预测到达时间的路段,其超本地天气预测可能不太准确。在一些实施例中,超本地天气的查询仅可能进行于车辆100可以在查询时间附近到达的最接近车辆100的路线的路段;而对于距离车辆100最远的路段,其到达时间距查询时间更远,仅可(例如,以较低的分辨率)查询一般预测。例如,计算系统112可以分钟或亚分钟的分辨率查询沿路线前方十英里的精确天气。这是因为,在本地时间范围内,预测天气的准确性很高。替代地,对于路线中距离车辆100两小时路程的位置,计算系统112可以进行更粗略地查询。例如,在15分钟增量估计中或在路线的较长路段中。由于在更远的路段到达时间的差异更大,高分辨率天气查询可能不那么准确,因此可以使用一般预测来确定更远路段周围区域的天气。对于超本地天气和一般预测二者,如果对这些预测的查询是针对与查询时间相差太远的时间,则天气预报的方差可能会更高。
93.为了接收天气数据,计算系统112可以进一步以预定间隔查询跨越在车辆100的当前位置之前并且在预定距离内的一个或多个路段的天气预报。例如,可以以预定义的时间间隔(例如每5到10分钟)搜索天气数据,从而优化查询。每5到10分钟查询一次可以允许天气发展和巩固,但这样的查询可能不会允许太大的时间跨度以至于天气变得不可预测且难以计划。在一些情况下,对于最接近车辆100的路段,天气预报可能是最准确的,因为车辆100到达路段的时间变数较小。由于可以准确预测到达该路段的时间,所以该位置的天气数据预测可以更精确,尤其是当其处于天气模式的中间时。因此,查询最多的是天气模式的边界,因为这些位置对路线的不确定性和影响最大。
94.对于天气状况以更大确定性/准确度预测的潜在路段,可能不需要像包含天气模式边界的潜在路段那样高频率查询。替代地,对于包含天气模式的边界并因此对车辆100应该行驶的速度和/或路线具有更大不确定性和影响的路段,可高频率查询,以便更好地预测该路段的天气数据。然而,由于难以产生准确的天气数据预测,可以确定距离车辆100较大距离的路段可以低频率查询。
95.在一些示例中,计算系统112可能不会以相同的频率查询所有路段。如果天气通常是晴朗的,则可以进行低频率查询,但是如果天气为有雾、下雪、下雨等,直至不期望的程度,则计算系统112可以增加查询的频率以最大化可能影响行驶计划的信息。例如,起初,由于路段到达时间的可能变化,对于远离车辆100的路段可能不会频繁查询。但是,对于较远的路段可以使用一般预报查询,以提醒计算系统注意可能的即将到来的天气状况。例如,在更远路段查询期间接收的预测天气数据可以使计算系统112意识到特别不良天气的可能
性。如果预测的天气数据指示恶劣天气的风险,则计算系统112可以更高的频率查询更远的路段,以便更好地预测传入的天气数据,从而规划车辆100将要行驶的速度。例如,车辆100可以在4小时内行驶250英里。通过将速度每小时调整5或10英里,车辆100可以在其预测位置和实际位置之间跨跃30英里。这30英里可以帮助避免不期望天气。此外,对于预测了与车辆行驶特别相关的天气数据的路段,可以相对其他路段对其进行更频繁地查询。
96.计算系统112可以各种方式接收预测的天气数据。在示例实施例中,计算系统112可以从气象站服务器或其他类型的服务器接收预测的天气数据。气象站服务器可以是沿路线或靠近路线的特定地理区域、路段等本地气象站服务器,即,专用于特定地理区域、路段等的气象站服务器,并且被配置为获取对应于特定地理区域、路段等的天气数据,并将天气数据发送至一个或多个车辆计算系统。附加地或替代地,气象站服务器可以是全局气象站服务器,其被配置为获取对应于多个位置,例如整个州、县、国家等的气象数据。全局气象站服务器还可以作为服务器运行,该服务器被配置为从多个本地气象站服务器收集天气数据并将收集到的天气数据发送到一个或多个车辆计算系统。在一些实施例中,气象站服务器可以被配置为以各种方式预测天气状况并且在天气数据中包括不同类型的信息。例如,气象站服务器可以预测雾、薄雾、雪、雨等形式的天气状况。这种天气状况预测的行为可能涉及气象站服务器(或车辆100)监视和分析雾、薄雾、雨等指示的质量。还可以包括本地或全局气象站服务器的其他示例功能。
97.为了便于从气象站服务器接收预测的天气数据,计算系统112可以从多个可能的气象站服务器中选择一个气象站服务器,并向选择的气象站服务器发送对预测天气数据的查询。计算系统112随后可以从选择的气象站接收响应于查询的气象数据。
98.此外,在一些实施例中,气象站服务器可以被配置为将某些位置的预测天气数据的更新发布到车队(例如,与多个不同车辆相关联的多个不同车辆计算系统)或单个车辆。此外,气象站服务器可以被配置为响应于从计算系统112接收到对预测天气数据的查询和/或没有被计算系统112特别请求(例如,被配置为每30分钟发布一次特定位置的天气数据更新),向车辆系统发送预测天气数据。其他示例也是可能的。
99.在本文提供的任何示例中,可以对预测的天气数据加时间戳,以便计算系统112可以使用时间戳作为参考来调整其速度和/或路线。
100.在另一个示例实施例中,可以从第二车辆(例如,领先/在先车辆)接收预测天气数据。具体地,计算系统112可以识别第二车辆已经或正在位于车辆100当前位置之前并在预定距离内的一个或多个潜在路段中行驶。车辆100可以查询第二车辆是否在车辆100的当前位置之前预定距离。如果第二车辆离车辆100太远,则第二车辆收集的数据可能不准确。在行驶时,第二辆车可能已经收集了有关其环境的数据,例如预测天气数据或当前天气数据。一旦第二车辆被识别,车辆100可以通过向第二车辆的第二计算系统查询一个或多个路段中的预测天气数据,来请求由第二车辆收集的天气数据。
101.在另外的示例实施例中,气象站服务器可以从第二车辆收集天气数据。例如,在行驶时,第二辆车可能已经收集了有关其环境的数据,例如其正在行驶时面临的天气数据。气象站服务器可以向第二辆车查询收集到的天气数据,或者第二车辆计算系统可以自动将收集到的天气数据发送到气象站服务器。气象站服务器可以使用从第二车辆收集的天气数据以及天气预报来进行天气预测以供计算系统112接收。
102.除了允许更有效地查询路线之外,路段还可以允许计算系统112使用车辆速度来确定预计车辆100何时到达特定路段。如上面所讨论的,可以进一步查询特定路段以获得预测的天气数据,并且计算系统112可以确定在预测车辆100将以第一速度行驶通过特定路段时,预测天气将出现在该特定路段。
103.使用成本函数,计算系统112可以基于成本因素输入来输出成本。成本因素可以包括针对多个目标速度中的每个相应目标速度的路段的预测天气数据。基于与最低成本相关联的速度,对于路线的特定路段,车辆100可以调整车辆的速度并避开对特定路段所预测的天气状况。选择与最低成本相关联的速度在本文中也可以称为使成本最小化或使关于速度的成本函数最小化。
104.在一些情况下,可以将不同的第二成本函数用于车辆的多个目标路线,其中第二成本函数包括作为输入的第二组成本因素并且提供基于第二成本因素的成本作为输出,其中对于多条目标路线中的每条相应的目标路线,第二成本因素包括预测的天气数据和相应的目标路线。第二成本函数可以将多个目标路线视为可变输入。随着不同的目标路线被输入到成本函数中,成本函数的值可能会改变。例如,一条路线可能比另一条路线具有更快的到达时间。另外地,目标路线可以包括将车辆引导至运营补给站的路线。
105.在一个实施例中,成本函数可以包括部分成本函数和总成本函数。部分成本函数可以对车辆100可以行驶的每个潜在路段确定成本。部分成本函数可以包括一组路段加权成本因素,例如基于沿相应潜在路段的未来天气状况的不良天气风险。路段加权成本因素可以包括可以根据速度而改变的数值。然后可以将每个相应的潜在路段的路段加权成本因素加在一起。路段加权成本因素的总和值可以被看作是每个相应潜在路段的部分成本。
106.总成本函数可用于对选择以目标速度供车辆在至少两个地点之间穿行时利用的路段确定最小化的成本。总成本函数可以取每个潜在路段的所有部分成本函数,并将其加在一起。总成本函数可以考虑哪些路段将共同连接行程的起点和终点的两个地点,并且可以通过考虑不同的速度来使针对每个路段的成本最小化以确定最小总成本。总成本函数的结果可以是一组选定的跨越两个地点的路段和供车辆利用的对应路段目标速度,以避开不良的天气状况。
107.等式1、等式2和等式3分别提供了部分成本函数、总成本函数,以及一种通过使总成本函数最小化来确定一组最优路段目标速度s
opt
的方式的示例,其中总成本函数应用于n个潜在路段。
108.c1(s)=(w_weather1*weather_risk(s)1) w_fuel1*fuel_consumption(s)1
109.w_eta1*eta(s)1)
ꢀꢀ
(等式1)
110.c(s)=∑n(cn(s))
ꢀꢀ
(等式2)
111.s
opt
=argminsc(s)
ꢀꢀ
(等式3)
112.特别地,等式1显示了c1(s)作为针对第一潜在路段(n=1)的示例部分成本函数。一般情况下,部分成本函数可以充当作为速度函数的每潜在路段成本的度量。如所示,等式1的部分成本函数由一组路段加权成本因素组成,每个成本因素都包括成本因素(作为速度的函数)和相关联的权重。等式1的部分成本函数包括三个成本因素,即不良天气风险因素、燃油消耗因素和eta因素,其中每一个因素都代表作为速度函数的相应类型的风险/成本。然而,如本文所描述的,考虑了其他类型的路段加权成本因素,并且可以将此类其他成本因
素并入部分成本函数中。
113.对于计算成本的部分成本函数,成本因素可以被赋予数值。例如,天气风险可以映射到数字,这样1可以是天气发生的最低风险,而10可以是最高的风险,而燃油消耗可以是通常以一定速度燃烧的燃油量。因为权重可以与具有不同比例的值相关联,所以在一些情况下可以对这些权重进行归一化。在一些示例中,对于给定的成本因素,与其相关联的权重可以基于在车辆沿路线行驶时成本因素的绝对或相对重要性。例如,当车辆在没有机会补充燃油的长途旅行中时,可以对燃油消耗进行重加权。在一些示例中,例如,如果该成本因素的重要性在路段间有所不同,则针对特定成本因素的权重可在路段间发生改变。
114.每个成本因素可以具有作为沿给定路段的车辆速度的函数的不同值。例如,在每小时60英里时,车辆遇到天气状况的几率可能很高,因此成本因素的数值很高,但如果车辆减速至每小时50英里,天气可能会结束,因此成本因素的价值可能很低。类似地,部分成本函数可以基于不同的速度计算成本因素的成本。例如,在每小时60英里时,车辆可能比以每小时50英里行驶时消耗更多的燃油。
115.等式2接下来显示了c(s)作为针对一组n个潜在路段的示例总成本函数。特别地,总成本函数可以将按每个潜在路段的部分成本函数计算的所有成本相加作为速度函数。
116.等式3接下来显示了如何优化总成本函数c(s)以找到产生最低的成本的一组选定的路段和对应路段目标速度s
opt
。特别地,总成本函数可以考虑潜在路段中的哪些潜在路段共同连接至少两个地点。基于哪些潜在路段可以共同连接至少两个地点,总成本函数可以对使总成本最小化的每个潜在路段确定目标速度。输出s
opt
可以是供车辆在行驶时利用的使总成本函数最小化的一组选定的路段和对应路段目标速度。
117.如前所述,成本函数可以根据不同的速度对成本因素的合计计算成本。为了确定该组最优速度,可以使成本函数最小化。通过使成本函数最小化,可以对每个路段确定速度,当与针对其他路段的其他速度作为一个整体时,该速度可以产生最低的成本函数。然后可以将每个路段的速度合并到针对该路线的该组最优速度中。
118.成本函数可用于对多个成本因素计算总成本,这些成本因素基于输入变量而改变。成本函数可以包括多个成本因素,每个成本因素都有一个相关联的数值。例如,降雨量可以映射到天气的数值量,到达时间可以是行程中剩余的时间量。如前所述,每个成本因素的值可能会根据输入变量的变化而变化,这反过来会影响总成本。例如,计算系统112可以将预测的天气和到达时间视为成本函数中的成本因素。这些成本因素中的每一个成本因素都可以根据速度而改变。例如,在一些速度下,沿该路线,车辆可能会遇到恶劣天气,或者车辆可能在一些速度下到达时间晚。然后,成本函数可以基于这些可变成本因素输出成本。与恶劣天气和到达时间晚相关联的速度也可能与高昂的总成本相关联。成本函数可以考虑多个速度并选择与最低总成本相关联的任何速度。具体地,计算系统112可以根据成本函数来计算成本,该成本函数对预测车辆100将遇到天气数据的时间所预测的天气数据考虑在内以确定以最低成本避开天气的多个速度和路线调整。
119.对于成本函数输入,计算系统112可以考虑多个加权成本因素、多个速度和多个路线以确定最低成本。计算系统112可以基于最低成本调整路线。成本函数可以通过离散优化以及通过将权重分配给多个成本因素来确定。成本因素可以包括,例如,路线上发生天气状况的概率、车辆100从路线的起点已行驶的距离、车辆100自路线的起点开始使用的燃油量、
预计车辆100到达路线的终点所需的剩余时间和/或从车辆100到已知运营补给站的距离,以及其他可能的成本因素。成本因素可以进一步被分配数值以计算成本函数的成本。例如,可以将天气状况发生的概率映射到数值,例如天气越恶劣,数值越高。距离可以是路线上行驶的英里数也可以是路线上剩余的英里数,燃油量可以是燃油利用率,剩余时间可以是路线上剩余的小时数或分钟数,并且距运营补给站的距离可以是车辆距运营补给站的英里数。
120.从超本地天气预报查询的天气数据还可以包括成本函数中所考虑的天气数据的概率。成本函数在计算成本时可以首先考虑离车辆最近的天气。然而,在一些实施例中,在计算成本函数时可能会忽略某一路段的天气数据。例如,指示特定天气状况具有低于特定阈值发生概率(例如,低于40%)的天气数据可以被计算系统112忽略。换句话说,当调整路线时,计算系统112可能不会考虑识别一种或多种具有小于特定发生概率的天气状况的天气数据。在其他示例中,预测的天气数据可能不包括任何天气数据。
121.在成本函数中考虑的成本因素中的每一个成本因素都可以基于成本因素的重要性值被分配权重。例如,如果车辆100具有到达目的地的最后期限,并且没有查询即将到来的路段的天气,则预测车辆100到达路线终点所需的剩余时间的成本因素可以比路线上发生天气状况的概率的成本因素加权更多。成本函数中使用的权重可以加起来为1,或者每个都可以是任何整数乘数。
122.在一个实施例中,计算系统112可以向每个路段分配权重,该权重基于对应于该路段的预测天气数据。特别是,当路段由预测的天气状况定义时,天气状况的严重性可能会影响路段的权重。例如,由冰雹定义的路段的可以比由小阵雨定义的路段加权更重。
123.在一些示例中,用户可以基于用户偏好手动输入(或编写指示一个或多个权重的源代码或其他指令)成本因素的权重中的一个或多个权重,并且计算系统112可以相应地实施成本因素。另加地或替代地,计算系统112本身可以设置一个或多个成本因素的权重。
124.进一步地,即使在权重由用户设置和/或由计算系统112自动设置的实施例中,计算系统112也可以在旅程期间修正成本函数。例如,计算系统可以在车辆在该路线上行驶时对成本因素动态调整权重中的至少一个权重。例如,权重可能根据一天中的时间而改变。由于夜间在不期望天气下行驶会增加风险,因此随着夜晚的临近,天气概率的权重可能会在整个路线上改变。因此,成本函数可以在夜间不期望的天气的路段比白天更重地对天气因素进行加权。另外地,如果路线长,可能会对所消耗的燃油给予更多的权重,或者如果有重要的交付,所花费的时间可能会被加权更高。
125.在另外的示例中,成本因素的权重可以基于被平衡的目标和风险保持相对静态。然而,关于在当前行程之后发生的事件的新信息也可能导致计算系统112更新权重。例如,在开始之前或在该路线上行驶时,可以选择车辆100来行驶后续行程。在那种情况下,计算系统112可以增加预测车辆100到达路线的终点所需的剩余时间的权重,以尝试迅速到达目的地,以便可用于后续行程。在另外的实施例中,计算系统112可以通过在旅程期间添加额外的成本因素来修正成本函数,例如分配给每个路段的一个或多个相应的成本因素。例如,计算系统112可以接收造成大交通延误的沿路线的事故的信息。计算系统112可以将沿路线的事故添加为成本因素,并根据延迟量对成本因素进行加权,以便更新目标速度和/或路线。
126.在一个实施例中,考虑到预测的天气数据,成本函数可以用与以相应目标速度操作车辆相关联的风险来缩放成本。具体地,当车辆以预测的天气数据行驶时,成本函数可以对可能对车辆造成风险的因素给予更多的权重。例如,在雨中以40mph的速度行驶可能风险很小,但在雨中以60mph的速度行驶可能具有更高的风险。较高的风险可能超过提前到达目的地的好处。
127.如前所述,成本函数可以考虑其值将基于输入而改变的多个变量。例如,以70mph的速度行驶可以有更快的估计的到达时间(eta),并且可能比每小时55英里的行驶使用更多的燃油。因此,取决于两种不同速度的因素的总成本可能不同。计算系统112此后可以根据成本函数提供的成本确定最低成本。一个实施例还可以以与成本函数类似的方式包括根据第二成本函数提供的成本确定最低成本。第二成本函数可以输入不同的路线和具有运营补给站的不同路线以改变成本因素。然后计算系统112可以确定最低成本。
128.选定的目标速度可以用作车辆100在具有不期望的天气状况的路段之前的一个或多个路段上的目标速度,和/或可以用作车辆100在具有不期望的天气状况的路段上的目标速度。例如,为了避开路线的四个路段中的第三路段的天气状况,可以在第一路段或第二路段中使用选定的目标速度,以便车辆100减速足够的时间以让天气状况在第三路段结束。另外地或替代地,为了避开相同的天气状况,可以在第三路段中使用选定的目标速度(例如,在车辆100到达第三路段中存在天气状况的部分之前)。其他示例也是可能的。
129.在一些示例中,用于穿越最优路段的最优目标速度可以包括在车辆100的速度曲线中。速度曲线是或包括车辆100的一个或多个通过指定范围定义的理想速度、一个或多个约束(例如,将车辆的速度保持在55mph以达到特定目标)或平均值。然而,车辆100的实际速度可以由车辆的车载计算机基于当前道路或环境状况实时确定。
130.速度曲线可以采取各种形式,例如速度范围、最大或最小速度、或车辆100将在路线上行驶的速度序列或列表,包括车辆100将在该路线上行驶的选定的目标速度。也就是说,速度曲线定义了当车辆100在路线上行驶时车辆100的速度将随时间改变的方式。速度曲线也可以随着车辆100在路线上行驶而实时改变。
131.在一些将路线分成路段的实施例中,如下文更详细描述的,对于一个或多个路段中的每一个路段,速度曲线可以包括车辆100对该路段可以行驶的一个或多个速度。例如,对于被划分为多个路段的路线,可以对多个路段中的每个路段评估成本函数。在那些情况下,速度曲线中的速度序列可以包括与多个路段中的每个路段的最低成本相关联的相应目标速度。
132.如前所述,除了允许更有效地查询路线之外,路线的路段还可用于基于预测的天气数据规划速度曲线。特别地,计算系统112可以确定车辆正在以第一速度行驶。可以对该路线的至少一个路段将速度从第一目标速度调整为选定的目标速度,以避开在路线的即将到来的路段中的不期望的天气状况。选定的速度可以并入更新的速度曲线中,然后计算系统112可以实施更新的速度曲线。例如,可以在当前路段的起点时将速度从第一目标速度改变至可以让车辆100避开在该路段中预测的不期望天气的选定的目标速度。更新速度曲线可以通过将速度曲线中的速度从第一速度降低至选定的目标速度来完成,以使车辆100减速并允许不期望天气结束,同时继续在路段中行驶。计算系统还可以在车辆行驶时动态地执行该方法,使得计算系统反复更新速度曲线。
133.调整速度曲线也可以通过将车辆100的速度从第一目标速度增加至更高的选定的目标速度来完成,以使车辆100在不期望天气状况到达的时间之前或在预计将发生不期望天气状况的大部分时间之前穿过其当前路段的剩余部分或特定路段的至少一部分。可替代地,选定的速度可以在路段中的某个点或时间来实施。这样,车辆100可以逐渐改变速度以便在正确的时间达到选定的速度,而不是立即改变至选定的速度。然后更新的速度曲线应用于当前路段的持续时间。计算系统112还可以将路段中的速度曲线从第一速度更新至调整后的速度以避开在路线的即将到来的第二路段中预测的天气状况。然而,在天气模式或状况极端并且证明不可能通过正常行驶速度避开的情况下,车辆100可以有意减速并在路段中的路肩或高速公路外停下一段确定的时间,直到更多合适的计划可用为止。换言之,计算系统112在设定的时间内执行零速度动作(例如,允许时间在优化中流逝,同时零前进)。
134.图6以图表600的形式绘示了针对路线610的示例速度曲线。在该图上,x轴表示时间,而y轴表示沿路线610前进的距离。在实践中,计算系统112可以对多个路线选项确定最优速度曲线。例如,计算系统112可以确定从达拉斯到洛杉矶有三个路线选项。路线610中的每个路线选项可以跨越多条高速公路并在地理方向上有所不同,但可以具有固定的距离。计算系统112可以对每个路线选项确定最优速度曲线并且选择具有最低成本的路线作为路线610。图6绘示了针对路线610的一种可能的路线选项的最优速度曲线。在该图上,x轴表示时间,而y轴表示沿路线610前进的距离。图6的曲线图包括直线,该直线表示车辆100从路线610中的距离=0至离开固定距离的目标(例如,10小时内650英里)的速度曲线的初始速度602。进一步地,应当理解,图6的图中所示的直线并不指示路线610在地理上是笔直的,而是表示车辆100以固定速度行驶的速度曲线的一部分。在其他变化中,线的较陡的部分是指沿路线610的较快的速度。分别地,线的较平的部分是指沿路线610的较慢的速度。平线604表示速度=0的固定时间段的点。
135.另外,图6还描绘了不期望天气状况,其表示为路线610上的块状区域606,并在特定时间窗口内影响沿路线610的特定距离。在示例实施例中,车辆100可能以每小时65英里(mph)的速度在路线610上行驶。然而,在65mph时,车辆100可能会遇到不期望天气。通过对速度曲线的部分608将速度降低至45mph,车辆100可以避开路线610上的不期望天气。因此,计算系统112可以更新速度曲线以对路线610进行调整。由于路线610可以同时具有速度和路线分量,所以对路线610的调整可以被认为是以下中的至少一项:通过选择目标速度进行调整或选择目标路线。该图还绘示了针对路线610的速度与调整后的速度之间的到达时间的差616。
136.超本地天气的使用可以允许计算系统112在车辆100沿其路线行驶时进行查询,以获得针对各个未来时间和沿路线更远的位置的天气状况的概率结果。这样的查询可以提供沿路线的天气的概率和分布,并允许计算系统112规划与沿行进路线的天气概率一致的速度曲线。例如,车辆100在图的一部分期间可以走得更慢,这将减少其前进,从而将车辆100置于图的空间中的不同范围内。
137.图6还在图上示出了表示在旅途期间可能的最大速度的第一条线612。一些实施例还可以包括表示对路线可能花费的最大时间量的第二条线614。在一些实施例中,当由用户输入指定时,对路线可能花费的最大时间量可以是硬约束或边界框。例如,路线610可以在旅途期间暂时低于最大时间线614,但路线610可以在最大时间线614之上结束。这样,时间
线614可以表示在某个时间,车辆100也应该在某一距离处的边界框。然而,在一些示例中,最大时间量不是必要的约束或边界框。第一条线和第二条线之间的空间可以表示沿着以及围绕被搜索恶劣天气的路线的(一个或多个)区域。
138.在一些示例中,计算系统112还可以从多个目标路线中选择使特定成本函数(例如,上面提到的第二成本函数)最小化的目标路线。在一些情况下,这可能涉及选择通往运营补给站的路线。选择与最低成本相关联的目标路线在本文中也可以被称为使成本最小化或使关于路线的成本函数最小化。一旦计算系统112对多条目标路线计算了成本,计算系统就可以选择与最低成本相关联的目标路线。
139.一旦选择了一组目标速度供车辆100利用,计算系统112可以控制车辆100根据该组目标速度进行操作。在示例中,控制车辆100根据该组目标速度进行操作的动作可以涉及计算系统112向车辆100的控制系统106发送指令以根据该组目标速度进行操作。因为该组目标速度可以并入速度曲线中,所以计算系统112还可以控制车辆100根据速度曲线进行操作。指令可以包括表示其中并入了该组选定的目标速度的速度曲线的数据。在接收到指令时,控制系统106可以响应地控制车辆100以上述方式中的一种或多种方式导航。进一步地,计算系统112可以类似地控制车辆100根据选定的目标路线进行操作。
140.基于最小化的成本函数,计算系统112可以对速度和/或路线进行调整,并控制车辆100根据该调整进行操作。该调整可以是或包括用于避开该路线的至少一个路段中的天气状况的该组选定的目标速度和/或车辆100被配置为导航以避开该路线的至少一个路段中的天气状况的选定的目标路线。在示例实施例中,计算系统112可以实施该组选定的目标速度和选定的目标路线。通过实施这两者,车辆100可以更好地被装备以避开不期望天气。进一步地,计算系统112可以在车辆100行驶时动态地计算成本函数,以在车辆100在路线上行驶时重复更新路线和速度曲线以避开不期望天气。
141.由计算系统112查询的作为调整基础的天气数据可以采取各种类型的天气相关信息的形式,例如雾、冰冻温度、雪、雨、雨夹雪或其他降水,以及其他可能性。在示例实施例中,预测的天气数据也可以用于确定并选择目标路线以避开路段中存在的危险道路状况。如前所讨论的,计算系统112可以通过查询特定路段的天气数据来接收预测的道路状况数据,并确定尽管该天气状况可能不再在特定路段中,但是预测的天气数据(或计算系统112接收的其他数据)指示当车辆的速度曲线计划车辆在特定路段中以第一速度行驶时,天气造成了预测会存在的危险道路状况。例如,大雨可能会使道路潮湿、湿滑,或者雨雪可能会使道路结冰、湿滑。因此,计算系统112可以基于被纳入危险道路状况的最小化的成本函数来调整车辆100的速度以避开危险道路状况。作为接收预测道路状况数据的附加或替代,计算系统112可以接收指示与不同潜在路段相关联的高度和/或倾斜度的数据,并且计算系统112可以使用该数据作为避开某些路段的基础,如果可能的话,例如倾斜度大于阈值的路段。这对于运载重货物的重型卡车可能特别有用。
142.在示例实施例中,计算系统112可以对该路线的至少一个路段确定用于避开天气状况的选定的目标速度。如前所述,当车辆100沿该路线行驶时,车辆100可以查询即将到来的路段以确定每个路段中的天气并将车辆100当前在速度曲线中行驶的速度调整为选定的目标速度。计算系统112可以用选定的目标速度调整速度曲线,并控制车辆100根据选定的目标速度进行操作,使得车辆的速度在沿路线的一个或多个点处增加,速度在沿路线的一
个或多个点处降低,和/或使车辆100在沿路线的一个或多个点处完全停止一段特定的时间。选定的速度调整可以取决于预测的天气数据的类型和位置。例如,可以降低车辆100的速度以避开未来路段中的天气预测,或者可以仅降低到足以在不太严重的天气下提供安全驾驶条件。然而,如果没有更低的成本,或如果没有高于阈值水平的天气数据,则车辆100可能不需要更新其速度曲线,在这种情况下,车辆100可以遵守最优速度曲线和针对该路线的最优路线。
143.为了避开不期望天气,可以在车辆100的当前路段中调整速度曲线,以谨慎地穿越没有机会让车辆100靠边停车的未来路段。例如,计算系统112可以调整当前路段中的速度曲线,以自由地避开在没有机会靠边停车的长而窄的桥上出现任何天气模式。因为用于调整路线的决策点相距更远,所以计算系统112可以对天气更敏感。可替代地,可以调整路线以避开桥梁的全部。
144.在一些实施例中,确定用于避开天气状况的选定的目标速度包括确定用于避开天气状况的使成本函数最小化的最优速度,并且对至少一个路段将速度从第一目标速度调整为调整后的速度包括对至少一个路段将速度从第一目标速度调整为调整后的最优速度。选定的目标速度可以被视为最优速度或调整后的最优速度。例如,计算系统112可以通过最小化的成本函数来确定最优速度。为了优化速度,可以搜索离散的速度曲线并对其进行编码,以通过减速来“等待”沿该路线的天气结束,或通过加速来“领先”天气。表示沿路段的动作的每个离散选项然后可以由成本进行加权。然后,计算系统112可以将最低成本速度曲线设置为用于避开天气状况的最优速度。然后,计算系统112可以将最优速度设置为调整后的速度。
145.在一些实施例中,计算系统112可以对路线设置速度曲线,并且如果计算系统112确定预测的天气数据超过严重性的置信阈值,则可能只更新速度曲线。如果超过置信度阈值,则计算系统112接下来可以通过使车辆100慢下来来更新速度曲线以避开天气,以便在车辆100到达之前让不期望天气结束。可替代地以及另外地,如果查询返回的结果指示(i)路段中的天气晴朗,则计算系统112可以提供指令(例如,向控制系统106)以令车辆100加速,但(ii)如果车辆100在特定时间没有行进通过路段的至少一部分,天气将在大约特定时间变得不期望,因此车辆100可能在不期望天气下通过。计算系统112还可以对超过置信度阈值的天气数据的严重性进行排序,以精确地确定如何更新速度曲线以避开更多或最恶劣的天气。基于天气的严重性,即使最恶劣天气的置信水平低于不太恶劣的天气的置信水平,最恶劣的天气也可以排名更高。然而,在一些实施例中,计算系统112可以随着恶劣天气的接近而更新速度曲线。例如,如果在车辆100前方有一场车辆100必须减速才能错过的中等风暴,但更远的前方有一场车辆100必须加速才能避开的危险风暴,车辆100可以减速来错过该第一风暴,然后针对第二风暴进行优化,包括靠边停车等待风暴结束。
146.在示例实施例中,计算系统112还可以控制车辆根据选定的目标路线操作。特别是,计算系统可以确定车辆100在第一目标路线上并且将路线从第一路线调整(例如,调整一组导航方向)到选定的目标路线(例如,到一组选定的新导航路线)。可以将路线从第一路线调整到在具有不期望天气的特定路段中或在具有不期望天气的路段之前的路段中,以便避开该天气。在示例实施例中,路线的路段可用于对路线进行调整。特别是,计算系统112可以以预定的时间间隔查询车辆100在预定距离内穿越当前位置之前的一个或多个路段的天
气预报。一旦使用查询的预测天气数据为路线的特定路段计算最小化成本函数,计算系统112就可以确定与最小化成本函数相关联的特定路段的目标路线。选定的目标路线可用于避免在车辆100的速度曲线计划使车辆100在路线的特定路段中以第一速度行驶时预计出现的不期望天气状况和危险道路状况。
147.计算系统112可以接收所预测的道路状况数据,评估车辆的多个目标速度的成本函数,其中,成本函数包括作为输入的一组成本因素并且提供基于成本因素的成本作为输出,其中,对于多个目标速度中的每个相应目标速度,成本因素包括所预测的道路状况数据和相应目标速度,从成本函数提供的成本中确定最低成本,从多个目标速度中选择与最低成本相关联的目标速度,并控制车辆按照选定的目标速度操作以避开危险道路状况。例如,如前所述,计算系统112可以通过查询特定路段的天气数据来接收预测的路况数据,并确定尽管特定路段中不再存在该天气状况,但是天气造成的危险道路状况,预计当车辆的速度曲线计划使车辆在路线的特定路段中以第一速度行驶时出现。因此,计算系统112可以调整车辆100的速度和/或路线,以基于将危险道路状况考虑在内的最小成本函数来避免危险道路状况。
148.如前所述,决策点可以定义路段。在每个决策点,计算系统112可以确定在决策点采取选定目标路线的成本是否会低于继续沿该路线行驶的成本。如果成本较低,则车辆100可以针对至少该路段采取选定的目标路线。调整路线可以由计算系统112动态地执行。例如,一旦将路线调整为选定的目标路线,计算系统112就可以进行进一步的调整。在标记已调整路线的特定段结束的决策点处,计算系统112可以决定返回该路线,或进一步偏离该路线。在示例实施例中,高速公路可以具有与高速公路相邻的辅路。再参考图6,高速公路618的侧边是辅路616。辅路616在路线602上的每个决策点606a-606b很容易到达。辅路的限速通常低于高速公路的限速。在有天气状况下在辅路上限速行驶的成本可能低于在有天气状况下在高速公路上以较低速度行驶的成本。即使在高速公路上降低了速度曲线,仍然可能存在其他车辆高速行驶造成的风险,从而增加成本。也就是说,计算系统112将选择具有比路线的特定路段的成本更低的成本的调整路线,以避免天气状况。类似地,一旦车辆100已经在天气状况下通过辅路,计算系统112可以重新计算最小化的成本以使车辆100在下一个决策点返回高速公路上的路线。
149.在示例实施例中,计算系统112可以控制车辆100根据选定的目标路线操作并且前进到运营补给站。具体地,计算系统112可以确定具有至少比路线的特定路段的成本更低的成本的选定的目标路线包括确定运营补给站的位置并将至少特定路段的路线重定向到运营补给站。例如,在具有不期望天气状况的特定路段中,计算系统112可以确定通过将速度降低到零来最小化成本函数。然而,在车辆100正在导航的特定路段或未来路段中,将车辆100停在路边可能并不安全。在示例实施例中,车辆100可以将目标路线导到安全位置并将速度曲线减小到零,从而有效地将车辆100停在已知的安全位置以等待不期望天气过去。因此,具有至少比路线的特定路段的成本更低的成本的目标路线可以是将特定路段的路线重定向到运营补给站并停止。再参考图6,可从路线602进入运营补给站。如果天气变得太危险,则基于最小化成本函数,计算系统112可以指令车辆100在决策点606b处离开高速公路618并前往运营补给站620。运营补给站的位置可以存储在计算系统112的存储器中。或者,集中控制系统可以将运营补给站的位置发送到计算系统112。
150.计算系统112还可以确定将成本函数最小化的最佳调整路线,以对于至少一个路段将路线调整到最佳调整路线。应当理解,可以将选定的目标路线认为是最佳调整路线。为了优化路线,可以搜索避开天气的不连续路段。然后可以通过成本对不连续路线进行加权。计算系统112可以将成本最低的不连续路线设置为避开天气状况的最佳调整路线。然后将最佳调整路线设置为车辆100导航的调整路线。此外,计算系统可以有意地、自动地整体延迟出发时间,以最大限度地优化路线。
151.如前所述,计算系统112可以在车辆100行驶时动态地更新路线。具体而言,当车辆100行驶时,可以基于变化的成本函数重复更新车辆100针对特定路段的路线。计算系统112可以在车辆正在导航第一目标路线的当前路段时评估第二成本函数,从多个目标路线中选择与最低成本相关联的第二目标路线,并且在当前路段的结尾处将路线从第一目标路线调整到第二个目标路线。调整到第二目标路线可以在车辆行驶时发生,并且可以继续重复更新,使得路线继续改变。
152.然而,也可以在不分割路线的情况下将路线动态更新。例如,计算系统112可以接收在路线上的车辆100前方大约1到10英里的预定距离的预测的超本地天气数据。基于所预测的天气数据,计算系统112可以动态地更新成本函数以确定用于以最低成本导航路线的新策略。如果用于导航的新策略低于用于导航路线的计划策略,则计算系统112可以基于新策略对路线进行调整。在本实施例中,速度和路线可以不断更新以最小化成本函数,而不是根据路段进行更新。
153.在一些实施例中,计算系统112还可以针对路线的至少一段确定车辆100被配置导航的选定目标速度和选定目标路线,以避免天气状况。例如,计算系统112可以调节车辆100的速度以有利地避免预计将在路线的一段中发生的恶劣或其他不期望天气。然而,如果在调整速度后车辆100的速度曲线仍预测车辆100在该路线的该路段中遇到天气状况,则可以在至少该路段中调整路线以进一步避开该天气状况。
154.在示例实施例中,可以基于天气预报动态地执行对速度和/或路线的调整以及对车辆100的控制。例如,如果在车辆100的当前位置之前的预定距离内的路线的一个或多个路段的天气预报是不期望的并且如果成本函数已经确定了较低的成本,计算系统112可以不断地改变路线。
155.在示例实施例中,可以在车辆100开始在路线上行驶之前执行本文中关于图7公开的操作。例如,在车辆100离开之前,该方法可用于确定初始路线以针对优选的天气状况进行优化。
156.在一些实施例中,计算系统112可能不将路线划分为多个路段。相反,例如,计算系统112可以查询与沿着路线或靠近路线的一个或多个位置相关联的天气数据,并且在识别出路线的特定路段(例如,贯穿城市的高速公路的一部分)中的预测天气状况时,计算系统112可以执行上述其他操作以避免预测的天气状况。其他示例也是可能的。
157.图7是根据示例实施例的方法700的流程图。方法700可以包括如框702至708中的一个或多个所示的一个或多个操作、功能或动作。尽管按顺序说明了每个方法的框,但在某些状况下,这些框可以并行执行,和/或以与本文描述的顺序不同的顺序执行。此外,各种框可以组合成更少的框、划分成额外的框和/或基于期望的实现进行移除。
158.此外,对于方法700以及本文公开的其他过程和方法,该流程图示出了当前实施例
的一种可能实现的功能和操作。在这方面,每个框可以表示一个模块、一个路段、制造或操作过程的一部分,或程序代码的一部分,其包括一个或多个可由处理器执行的指令,用于实现过程中的特定逻辑功能或步骤。该程序代码可以存储在任何类型的计算机可读介质上,例如,包括磁盘或硬盘驱动器的存储设备。计算机可读介质可以包括非暂时性计算机可读介质,例如,诸如寄存器存储器、处理器高速缓存和随机存取存储器(random access memory,ram)等短时间存储数据的计算机可读介质。计算机可读介质还可以包括非暂时性介质,例如辅助或持久性长期存储,例如只读存储器(read only memory,rom)、光盘或磁盘、光盘只读存储器(compact-disc read only memory,cd-rom)。计算机可读介质也可以是任何其他易失性或非易失性存储系统。例如,计算机可读介质可以被认为是计算机可读存储介质或有形存储设备。
159.附加地或替代地,对于方法700以及本文公开的其他过程和方法,流程图中的一个或多个框可以表示被接线以在过程中执行特定逻辑功能的电路。
160.方法700可由各种计算系统执行,例如被配置为控制车辆100的计算系统112。其他计算系统——包括那些车载或远离车辆100的计算系统——可以执行方法700的一个或多个操作和/或上述操作中的一个或多个,例如服务器计算系统406。
161.在框702,方法700涉及识别一个或多个共同连接至少两个地点的潜在路段。
162.在框704,方法700涉及接收预测每个潜在路段沿途的未来天气状况的时空天气信息。举例来说,时空天气信息可以是或包括超本地天气预报或其他类型的天气数据,包括本文讨论的任何数据。在一些情况下,可以在框702之后执行框704,并且一个或多个潜在路段的识别可以至少部分地基于时空天气信息(例如,指定作为潜在路段的一部分完全在暴雨中的道路)。
163.在框706,方法700涉及对于每个潜在路段,评估部分成本函数,该部分成本函数包括一组路段加权成本因素的总和,其中,对于每个潜在路段,评估部分成本函数,该部分成本函数包括一组路段加权成本因素的总和。也就是说,部分成本函数可以是或包括给定潜在路段的至少天气方面的加权风险。
164.在框708,方法700涉及基于总成本函数的最小化,选择一组选定的路段和相应的路段目标速度供车辆在至少两个地点之间穿行时使用,以避免不利的天气状况,其中,总成本函数是与共同连接至少两个地点的一组路段相关联的部分成本函数的总和。
165.通过方法700,在一些实施方式中,计算系统可以评估许多不同可能路段中的每一个,如果这些路段导致车辆行驶面临不良天气,则可能不选择其中的一些路段。然而,在其他实施方式中,方法700结果可以是:选择当前存在不良天气状况的路段,但结果也可以是:针对不良天气状况路段之前的至少一个路段选择至少一个目标速度,以避免不良天气状况(例如,车辆减速或靠边停车并停在较早路段,以便在不良天气过去后可以行驶通过不良天气路段)。
166.作为示例,总成本函数可以采用上述等式1的形式,并且总成本函数的最小化可以由上述等式2表示。
167.一组选定的路段可以是共同形成路线的连续路段的序列,例如由第一路段、随后的第二路段、以及随后的第三路段组成的路线,第三路段在车辆目的地结束。因此,对应的选定路段目标速度可以包括第一目标速度(车辆将根据其穿越第一路段)、第二目标速度
(车辆将根据其穿越第二路段)、以及第三目标速度(车辆将根据其穿越第三路段)。
168.在一些实施例中,基于总成本函数选择的给定目标速度可以是或包括(i)车辆应该沿着相应的选定路段行驶的速度范围(包含或不包含),(ii)车辆沿相应选定路段行驶时应达到或低于的最大速度,(iii)车辆沿相应选定路段行驶时应达到或超过的最低速度,或(iv)车辆应沿相应选定路段行驶时的平均速度。此外,在一些情况下,可以确定或更新车辆的速度曲线以包括选择的目标速度。
169.在一些实施例中,如上所述,所述至少两个地点包括车辆在路线上的当前地理位置和路线决策点。例如,路线决策点可以是运营补给站(例如,设施的装卸码头或维修设施)、高速公路出口、十字路口、加油站或充电站、或立交桥。
170.在一些实施例中,方法700还可涉及:基于时空天气信息识别对应于一个或多个选定路段的一个或多个不良天气地理区域。例如,一个或多个选定路段可以是其边界对应于存在或预期存在不良天气的地理区域的边界的路段,例如暴雨或一组多种不良天气状况,在其地理区域中可能或可能不会至少部分重叠。作为更具体的示例,暴雨可能占据第一地理区域并且浓雾可能占据与第一地理区域至少部分重叠的第二地理区域。因此,作为选定路段之一的一个潜在路段可以是起点和终点都落在第一和第二地理区域的组合的边界上或在其内部的路段,使得暴雨和/或浓雾出现或预计出现在整个路段。在这样的实施例中,可以选择针对在一个或多个不良天气地理区域内的任何选定路段而选择的目标速度以减轻沿那个/那些选定路段的不良天气影响(例如,在暴雨存在的路段之前使车辆减速,因此当车辆到达该路段时暴雨不再存在)。
171.在一些实施例中,识别一个或多个潜在路段的动作可以涉及识别车辆的当前位置和车辆的目的地之间的存在限速变化的一个或多个限速变化点,然后将一个或多个潜在路段识别为共同连接包括所识别的一个或多个限速变化点的至少两个地点的一个或多个潜在路段。例如,潜在路段可以是限速为55mph的路段,并且此后可以在限速从55mph变为65mph的位置(例如,在限速标志处)开始新的路段。限速更改点可能是路段的有用起点或终点,因为该路段中存在的限速会限制车辆的目标速度(例如,沿65mph的路段,车辆可以以55mph的目标速度行驶,但可能不会低于此速度)。
172.在一些实施例中,识别一个或多个潜在路段的动作可以涉及识别预定路线。也就是说,预定路线可以包括一组选定的路段。换句话说,虽然方法700可以用于选择一组最佳目标速度和/或一组最佳路段供车辆使用,但方法700也可以用于选择一组最佳目标速度以用于沿已选定或规划的路线车辆使用,以避免沿预定路线的不良天气状况。
173.在类似的实施例中,识别一个或多个潜在路段的动作可以涉及识别多条预定路线,每条路线将车辆的当前位置连接到车辆的目的地,在这种情况下,选择该组选定的路段的动作包括从多个预定路线中进行选择。换言之,方法700可用于从有限数量的选项中选择最佳路线(和相关联的最佳目标速度)。例如,车辆可以接收从达拉斯仓库行驶到波士顿仓库的三个路线选项,并且方法700可以用于跨三个路线选项进行优化。
174.在一些实施例中,且如上所述,接收时空天气信息的动作可以涉及识别已经行驶或当前正在行驶在所述一个或多个潜在路段中的至少一个上并且在距离所述车辆当前位置预定距离内所述车辆当前位置之前的领头车辆。接收时空天气信息的动作还可以涉及响应于识别领头车辆,查询领头车辆的第二计算系统(例如,领头车辆上的中央计算系统/控
制系统)以获得所述时空天气信息的至少一部分。另外或可替代地,时空天气信息的至少一部分可以从正在与包括车辆和领头车辆的车队进行通信的服务器计算系统中检索。
175.在一些实施例中,并且与本文对成本函数的讨论一致地,可以根据在框706所指的部分成本函数使用的每个路段加权成本因素可以包括相应成本因素和相应权重。在一些示例中,相应权重可以用作相应成本因素的乘数,并且可以是表示该相应成本因素的期望权重或重要性的整数或其他数值。这种权重可以是静态的,也可以随着车辆周围环境的变化或车辆能力的变化而动态变化。例如,起初不良天气风险因素的权重可能很高,但是,如果车辆的传感器系统得到改进,使得车辆受到预定严重程度的雨、雪等的威胁较小,则可以降低重量。
176.在一些实施例中,对应于特定成本因素的权重对于两个或更多个不同的潜在路段可以是相同的或者是不同的。此外,在一些情况下,可以为每个潜在的路段分配相应的权重。权重可以跨多个路段使用,也可以逐个路段使用。例如,已知具有平坦地形和/或低车流量的潜在路段可以被赋予比已知具有崎岖地形和/或高车流量的潜在路段更低的不良天气风险因素权重。
177.在一些实施例中,不良天气风险因素可以基于沿着给定潜在路段的一种或多种未来天气状况。如上所述,一种类型的未来天气状况可以是或包括雨、雾、雪、冻雨、雨夹雪和/或冰雹,以及其他可能性。另外或可替代地,不良天气风险因素可以基于沿给定潜在路段的未来天气状况的预期严重性和/或基于在预期所述车辆将沿着给定潜在路段行驶时沿着给定潜在路段出现未来天气状况的概率。
178.如上所述,各种路段加权成本因素可用于本文描述的技术最小化以获得最佳速度和/或路线的部分成本函数(以及因此的总成本函数)。在一些实施例中,例如,除了不良天气风险因素之外,该组路段加权成本因素还可以包括:(i)距离因素,该距离因素基于所述车辆从至少两个地点中的路线起点已经行驶或预计行驶的总距离;(ii)燃油消耗因素,该燃油消耗因素基于所述车辆当前或预期的燃油水平的;和/或(iii)eta(估计的到达时间)因素,该eta因素基于所述车辆到达路线中间点或路线终点的eta。其他路段加权成本因素也是可能的,包括但不限于基于车辆预计交付货物的交付时间窗口的交付因素、基于给定潜在路段的已知倾斜角和/或高度的地面高度因素、基于沿给定潜在路段的交通或车辆事故的道路交通/事故因素、和/或基于沿给定潜在路段的具有高人口密度或往往有很多人的已知区域的公共区域因素。
179.在一些实施例中,在给定的时间点,例如当车辆离开其起始位置并且被靠边停车或行驶时的时间点,对于所有或一些潜在的路线段,可以从部分成本函数中添加或删除包括上述因素的路段加权成本因素。例如,道路交通/事故因素最初可能不被包括作为任何部分成本函数的一部分,但如果确定道路事故突然发生了,则可以再次执行方法700并且道路交通/事故因素可以至少包含在事故发生的潜在路段的部分成本函数中。作为另一个示例,这在车辆行驶到特定的第一目的地并且然后在前往特定的第一目的地的途中,车辆计算系统接收到在到达第一目的地之后行驶到随后的目的地的指令的情况下可能特别有用。可以共同将第一个目的地连接到后续目的地的潜在路段可能具有与之相关的新成本因素,以供车辆考虑,并且这样的成本因素因此可以用于至少那些潜在的路段。
180.例如,为了便于添加路段加权成本因素,方法700可以包括:在车辆已经开始沿着
选定的一组路段行进之后,确定不同于该组路段加权成本因素的新的路段加权成本因素,将新的路段加权成本因素添加到该组路段加权成本因素以形成一组新的路段加权成本因素,然后,对于每个剩余的选定路段,基于该组新的路段加权成本因素评估部分成本函数,并使用更新的部分成本函数评估总成本函数。
181.在一些实施方式中,可以在车辆离开至少两个地点的路线起点之前执行方法700和上述其他操作中的一个或多个。
182.在其他实施方式中,方法700和上述其他操作中的一个或多个可以在车辆行驶时周期性地和/或动态地执行,以便调整该组选定路段和对应的路段目标速度,以供车辆在至少两个地点之间穿行时使用。因此,当车辆行驶时,可以重新评估路线本身和/或每个路段的目标速度,以便保持从路线起点、通过任何中间点直到路线终点或更远的最佳路线和/或行驶速度。
183.图8是图示根据本文示出的至少一些实施例布置的示例计算机程序产品的概念性局部视图的示意图,该示例计算机程序产品包括用于在计算设备上执行计算机进程的计算机程序。在一些实施例中,所公开的方法可以实现为计算机程序指令,该计算机程序指令以机器可读格式编码在非暂时性计算机可读存储介质上,或在其他非暂时性介质或制品上编码。
184.在一个实施例中,示例计算机程序产品800是使用信号承载介质802提供的,该信号承载介质802可以包括一个或多个编程指令804,当由一个或多个处理器执行时,指令可以提供根据图7描述的功能或部分功能。在一些示例中,信号承载介质802可以包含非暂时性计算机可读介质806,例如但不限于硬盘驱动器、光盘(cd)、数字视频盘(dvd)、数字磁带、内存等。在一些实施方式中,信号承载介质802可以包括计算机可记录介质808,例如但不限于存储器、读/写(r/w)cd、r/w dvd等。在一些实施方式中,信号承载介质802可以包含通信介质810,例如但不限于数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路等)。因此,例如,信号承载介质802可以通过通信介质810的无线形式来传送。
185.一个或多个编程指令804可以是例如计算机可执行和/或逻辑实现的指令。在一些示例中,诸如图1的计算系统112的计算设备可以被配置为响应于由计算机可读介质806、计算机可记录介质808和/或通信介质810中的一个或多个传送到计算系统112的编程指令804来提供各种操作、功能或动作。其他设备可以执行本文所述的操作、功能或动作。
186.非暂时性计算机可读介质也可以分布在多个数据存储元件之间,这些数据存储元件可以彼此远程定位。执行一些或所有存储指令的计算设备可以是车辆,例如图1-3中所示的车辆100。或者,执行一些或所有存储指令的计算设备可以是另一个计算设备,例如服务器。
187.以上详细描述参考附图描述了所公开的系统、设备和方法的各种特征和功能。尽管本文已经公开了各个方面和实施例,但其他方面和实施例将是显而易见的。本文所公开的各个方面和实施例是出于说明的目的而不旨在限制,真实范围由以下权利要求指示。
188.应当理解,本文描述的配置仅用于示例的目的。这样,本领域的技术人员将理解,可以使用其他配置和其他元件(例如,机器、装置、接口、功能、命令和功能分组等)来代替,并且根据期望的结果可以完全省略一些元件。此外,所描述的许多元件是功能实体,它们可以以任何合适的组合和位置实现为离散或分布式组件或与其他组件结合。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献