本公开大体上涉及具有自动化驾驶能力的机动车辆。更具体地,本公开的方面涉及用于自主车辆的路径生成和场景规划。
当前制造的机动车辆,例如现代汽车,最初被装备有或者改装有车载电子装置的网络,车载电子装置提供有助于最大程度减少驾驶员工作的自动化驾驶能力。在汽车应用中,例如,最易识别的自动化驾驶特征的类型是巡航控制系统,其允许车辆操作员设置特定的车辆速度并使车载车辆计算机系统在无需驾驶员操作加速器或制动踏板的情况下保持该速度。下一代的自适应巡航控制(acc;也被称为自主巡航控制)是一种计算机自动化车辆控制特征,其调节车辆速度,与此同时随附地管理在主车辆与前导车辆或尾随车辆之间的前后间距。另一种类型的自动化驾驶特征是碰撞避免系统(cas),其检测即将到来的碰撞条件并向驾驶员提供警告,与此同时还在无需驾驶员输入的情况下自主地采取动作,例如通过转向或制动。在许多现代汽车上智能泊车辅助系统(ipas)、车道监测系统以及其他自主汽车操纵特征同样也是可用的。
随着车辆感测、通信以及控制系统持续地改进,制造商将坚持提供更多的自主驾驶能力,愿望是最终提供胜任在多样化的车辆类型间同时在城市和乡村场景下操作的完全自主的车辆。原始设备制造商(oem)正在趋向将“对话”汽车与采用用于车辆路径选择、车道变换、超车、场景规划等的自主系统的更高级别的驾驶自动化进行互连。自动化的路径生成系统利用车辆状态和动态传感器、相邻车辆和道路状况数据、以及路径预测算法来提供具有自动化车道中心和车道变换预测的路径生成。计算机辅助的重新路径选择技术通过预测的可选择行驶路线为车辆提供推荐行驶路径,其可以例如基于实时的和估计的车辆数据得到更新。
技术实现要素:
本文公开了用于自主车辆的场景规划和路线生成分布式计算系统和随附控制逻辑、操作方法和用于构建此类系统的方法,以及具有场景规划选择和实时轨迹规划能力的机动车辆。举例来说,提供了一种场景规划系统,该系统适时地利用基于云的服务来在动态道路场景下提供具有轨迹规划候选的综合列表。云部件利用高性能计算来生成优化的场景规划和轨迹候选,它们通过无线介质被传送给车辆中的场景规划模块。主车辆的场景规划模块评估本地感测的动态道路场景信息,以实时地选择最佳候选并提供其他可行的全局最优轨迹候选。该最佳候选被发送给车载轨迹规划器模块以用于由车辆的中央处理单元来进行最终细化和执行。在执行之前,轨迹规划器模块可以首先实时地确定该“最佳”候选是否是事实上的“最优”候选,例如通过估计该最佳候选是否是无碰撞选项和/或运动动态可行的。
通过将轨迹规划生成非车载到远程节点,所公开的特征有助于降低车辆中针对可能被视为自主驾驶的关键功能的场景规划的嵌入式计算能力要求。与降低车载计算要求相关的的优点是增加了车辆电池寿命,并且由此,改进了针对混合动力和蓄电池电动车辆的范围。另一种随附的益处可以包括统一了可行轨迹规划候选和车道等级道路边界信息的来源,由此使得能够在一队车辆之间共享云计算和合并计算。所公开的场景规划特征适时地利用基于云的服务以在动态道路场景下针对车辆中的轨迹生成提供更为有效、简化和全面的导航规划。这可以提供超过传感器视线的更长的规划范围,与此同时提供了可行轨迹规划候选和车道等级道路边界信息的统一来源。所公开的特征还可以基于个体车辆连接性带宽和延迟提供定制分辨率的云生成数据。
本公开的方面涉及用于自主车辆的基于云的场景规划和路径生成逻辑以及计算机可执行算法。例如,提供了一种用于控制机动车辆的自动化驾驶操作的方法。该代表性方法按照任意次序以及按照与所公开特征和选项中任一个的任意组合包括:确定车辆状态数据,该车辆状态数据可以包括机动车辆的当前位置、速度、加速度、前进方向等,以及路径规划数据,该路径规划数据可以包括机动车辆的起点和期望目的地;通过非机动车辆车载的远程计算节点(例如,后端云服务器计算机)基于车辆状态数据、路径规划数据和当前道路场景数据生成轨迹规划候选的列表,该当前道路场景数据可以包括车辆的实时情形/背景数据;通过远程计算节点针对轨迹规划候选的列表中的每个轨迹规划候选计算相应行驶成本;通过远程计算节点将轨迹规划候选的列表从最低相应行驶成本到最高相应行驶成本进行排序;将经排序的轨迹规划候选的列表从远程计算节点传送到机动车辆车载的驻留车辆控制器;通过驻留车辆控制器识别出具有最低相应行驶成本的轨迹规划候选;以及通过驻留车辆控制器基于所传送的轨迹规划候选执行自动化驾驶操作。
所公开的系统、方法和装置中的任一个可以任选地包括:通过远程计算节点的场景处理器针对机动车辆的起点和期望目的地估计场景规划。这种场景规划可以包括车道居中估计、车道变换估计、车辆超车估计,和/或目标避开估计。估计场景规划可以包括确定用来管理或以其他方式“处理”预期交通标志、交叉口、道路状况、车辆操纵、连接和/或交通状况的适当步骤。远程计算节点的场景处理器可以在途中跟踪车辆以辅助每个处理确定。估计的场景规划随后可以用于生成轨迹规划候选列表。而且,远程计算节点的参考路径生成器可以将针对已规划路径的高分辨率、多车道边界和操纵信息缓存到远程存储器装置中。缓存的信息随后可以用于帮助生成轨迹规划候选列表。
所公开的系统、方法和装置中的任一个可以任选地包括:远程计算节点的参考路径生成器可以将针对经排序的轨迹规划候选的列表的行驶成本传送至场景选择器模块。驻留车辆控制器的场景选择器模块随后可以确定动态车辆数据,例如本地感测的目标数据和机动车辆的行为偏好数据,并且随后基于该动态车辆数据更新针对轨迹规划候选的相应行驶成本。通过利用经更新的行驶成本,场景选择器模块随后可以将轨迹规划候选列表从经更新的最高相应行驶成本到经更新的最低相应行驶成本进行重新排序。
其他的选项可以包括:场景选择器模块将具有经更新的最低相应行驶成本的经更新的轨迹规划候选传送给实时轨迹规划器模块。轨迹规划器模块随后可以确定该候选是否是最优候选,例如,估计该经更新的轨迹规划候选是否会是无碰撞且运动动态可行的。如果经更新的轨迹规划候选并非最优候选,则实时轨迹规划器模块可以向场景选择器模块传送请求以请求另一轨迹规划候选,例如,具有第二最低相应行驶成本的轨迹规划候选。实时轨迹规划器模块可以通过将作为最优候选的经更新的轨迹规划候选细化来定义最终轨迹。在这种情况下,自动化驾驶操作基于经更新的最优和最终的轨迹规划候选来执行。
所公开的系统、方法和装置中的任一个可以任选地包括:远程计算节点的场景处理器进行状态估计,其可以包括获取本地融合地车道信息和获取语义道路场景数据。远程计算节点的参考路径生成器可以同时地识别一个或多个替代“恢复”规划。远程计算节点的场景处理器可以接收动态车辆数据,例如本地感测的目标数据和机动车辆行为偏好数据,以及应用程序(maplet)数据,例如针对机动车辆的起点和期望目的地的地理信息。应用程序(maplet)和动态车辆数据可以用于生成轨迹规划候选的列表。
本公开的其他方面涉及用于管理自主机动车辆的操作的分布式车辆控制系统和基于云的场景规划架构。如本文中所使用的,术语“机动车辆”可以包括任何相关的车辆平台,例如乘用车辆(内燃机、混合动力、完全电动、燃料电池等)、商业车辆、工业车辆、履带式车辆、越野车辆和全地形车辆(atv)、农场设备、船只、飞机等。此外,术语“自主车辆”可以包括可以被分类为美国汽车工程师学会(sae)级别2、3、4或5车辆的任何相关车辆平台。例如,sae级别0通常代表“无辅助”驾驶,其允许以短暂的干预由车辆生成警告,但是在其他情况下仅依赖人类控制。相比而言,sae级别3允许无辅助驾驶、部分辅助驾驶以及具有足够用于完全车辆控制(例如,转向、速度、加速度/减速度等)的车辆自动化的完全辅助驾驶,与此同时强制驾驶员在经校准时间帧内干预。在该范围的上端是级别5自动规划,其完全消除了人类干预(例如,无方向盘、油门踏板或换挡手柄)。
在一实例中,提供了一种自主车辆控制系统,其包括与远程(基于云的)计算节点无线通信的一个或多个机动车辆,该远程(基于云的)计算节点物理上非机动车辆车载且从机动车辆移置。每个机动车辆可以包括具有任何所需动力传动系的车辆车身以及安装至车辆车身的驻留车辆控制器。驻留车辆控制器包括场景选择器模块和实时轨迹规划器模块,而远程计算节点包括场景处理器和参考路径生成器处理器(在本文中“处理器”和“模块”可以互换地使用)。在系统操作期间,场景处理器确定针对该机动车辆的车辆状态数据和路径规划数据。车辆状态数据可以包括机动车辆的当前位置和速度,而路径规划数据可以包括机动车辆的起点和期望目的地。参考路径生成器处理器基于车辆状态数据、路径规划数据以及当前道路场景数据(例如,机动车辆的实时背景数据)生成轨迹规划候选的列表。
继续以上实例,参考路径生成器随后针对轨迹规划候选列表中的每个候选计算相应行驶成本,将轨迹规划候选的列表从最低到最高相应行驶成本进行排序,并且将经排序的列表传送给机动车辆的驻留车辆控制器。场景选择器模块从经排序的列表确定出最优轨迹规划候选,例如,具有最低相应行驶成本的候选。响应于接收到的轨迹规划候选是最优且经细化的候选,实时轨迹规划器基于该规划候选执行自动化驾驶操作。
以上发明内容并非旨在代表本公开的每个实施例或每个方面。而是,前述发明内容仅提供对本文中所阐述的一些新颖构思的范例。当结合附图和所附权利要求书时,通过对用于实现本公开的例示实例和代表性模式的以下详细描述,本公开的以上特征和优点以及其他特征和随附优点将是显而易见的。而且,本公开明确地包括以上和以下所提出的元件和特征的任何和全部组合和子组合。
附图说明
图1是根据本公开各方面的具有用于执行自主驾驶操作的车辆中控制器、传感器以及通信装置的网络的代表性机动车辆的示意图。
图2是根据本公开各方面的用于代表性场景规划系统的分布式计算架构的图解说明。
图3是说明用于图2的场景规划系统的操作布局和交换的工作流程图。
图4是根据本公开各方面的场景规划和路径生成协议的流程图,其对应于由车载和远程控制逻辑电路、可编程电子控制单元或其他基于计算机的装置或装置的网络所执行的指令。
本公开可具有各种修改和替代形式,并且已经通过附图中的示例示出了一些代表性实施例并将在本文中详细进行描述。然而,应当理解,本公开的新颖方面并不限于以上列举的附图中所例示说明的特定形式。而是,本公开覆盖落入由所附权利要求书所涵盖的本公开的范围内的所有修改、等同方式、组合、子组合、置换、分组以及替代形式。
具体实施方式
本公开可以有呈许多不同形式的实施例。在附图中已经示出并且在本文中将详细描述本公开的代表性实施例,同时要理解的是,这些例示的实例被提供作为所公开原理的范例,而非对本公开的广泛方面的限制。就这一点而言,在例如摘要、引言、发明内容和具体实施方式部分中描述但是未在权利要求书中明确阐述的元件和限制不应通过暗示、推断或其他方式被单独地或共同地包含在权利要求书中。
为了本详细描述的目的,除非明确地否认:单数包括复数,反之亦然;词语“和”以及“或”应当既可以是连接性的又可以是反义连接性的;词语“任何”以及“全部”应当均意指“任何且全部”;以及词语“包含”和“包括”以及“具有”应当各自意指“包括但不限于”。此外,近似的词语,例如“大约”、“几乎”、“基本上”、“近似”等,在本文中可以按照例如“在、接近、或接近在”或“在其0%至5%内”或“在可接受的制造公差内”或其任意逻辑组合的含义来使用。最后,方向性形容词和副词,例如前、后、内侧、外侧、右舷、左舷、垂直、水平、向上、向下、前方、后方、左方、右方等,可以是相对于机动车辆,例如,例如当车辆在正常行驶表面上可操作地定向时机动车辆的前向行驶方向。
现在参考附图,其中在整个若干视图中相同的附图标记指代相同的特征,在图1中示出了代表性的汽车,其大体上以10标示并且为了讨论的目的在此被描绘为轿车型的自主乘用车辆。封装在汽车10的车辆车身12内(例如,分布于整个不同车辆舱室)的是电子装置的车载网络,例如以下所述的各式各样的计算装置和控制单元。所示汽车10(在本文中也被称为“机动车辆”或简称为“车辆”)仅是本公开的方面和特征可以用来实践的示范性应用。相同道理,针对图1中所示特定架构的本构思的实施方式也应当被理解为本文中所公开构思和特征的示范性应用。同样,应当理解的是,本公开的方面和特征可以应用于任何数量和类型以及布置的联网控制器和装置,以及针对任何逻辑上相关类型的机动车辆来实现。此外,仅显示并在本文中另外详细描述了车辆10的选定部件。然而,本文所讨论的机动车辆和网络架构可以包括许多附加的和替代的特征以及其他可用的外围部件,例如,以用于实现本公开的各种方法和功能。最后,本文中所给出的附图未必是成比例的并且仅被提供用于指导性目的。因此,附图中所示的特定和相对尺寸不应被解释为进行限制。
图1的代表性车辆10最初配备有车辆远程通信和信息(通俗地被称为“远程信息处理”)单元14,其(例如,通过蜂窝塔、基站和/或移动交换中心(msc)等)与位于远程或“非车载”的云计算系统24无线地进行通信。作为非限制性实例,在图1中一般性示出的一些其他车辆硬件部件16包括显示装置18、麦克风28、扬声器30以及输入控制装置32(例如,按钮、旋钮、开关、键盘、触摸屏等)。通常,这些硬件部件16使用户能够与远程信息处理单元14以及车辆10内的其他系统和系统部件进行通信。麦克风28为车辆乘员提供了输入口头或其他听觉命令的手段;车辆10可以配备有利用人/机界面(hmi)技术的嵌入式语音处理单元。相反,扬声器30向车辆乘员提供可听输出,并且可以是专门用于和远程信息处理单元14一起使用的独立式扬声器或者可以是车辆音频系统22的一部分。音频系统22可操作地连接至网络连接接口34和音频总线20以接收模拟信息,通过一个或多个扬声器部件将其呈现为声音。
通信地耦合至远程信息处理单元14的是网络连接接口34,其合适的实例包括双绞线/光纤以太网交换机、内置/外置并行/串行通信总线、局域网(lan)接口、控制器局域网(can)、面向媒体系统传输(most)、本地互连网络(lin)接口等。其他适当的通信接口可以包括那些符合iso、sae以及ieee标准和规范的接口。网络连接接口34使车辆硬件16能够彼此发送和接收信号,以及同时与在车辆车身12外侧或“远程”和在车辆车身12内或“驻留于”车辆车身的各种系统和子系统发送和接收信号。这允许车辆10来执行各种车辆功能,例如控制车辆转向、管理车辆变速器的操作、控制发动机油门、接合/分离制动系统,以及其他自动化驾驶功能。例如,远程信息处理单元14向/从安全系统ecu52、发动机控制模块(ecm)54、信息娱乐应用模块56、传感器接口模块58、以及各式各样的其他车辆ecu60,例如变速器控制模块(tcm)、气候控制模块(ccm)、制动系统模块(bcm)等,接收和/或传送数据。
继续参考图1,远程信息处理单元14是一种既能单独地又能通过其与其他联网装置的通信提供混合服务的车载计算装置。这种远程信息处理单元14通常包括一个或多个处理器,它们可以体现为分立式微处理器、专用集成电路(asic)、中央处理单元(cpu)36等,可操作地耦合至一个或多个电子存储器装置38,每个该电子存储器装置可以采用cd-rom、磁盘、ic装置、半导体存储器(例如,各种类型的ram或rom)的形式,以及实时时钟(rtc)46。与远程非车载联网装置进行通信的能力通过蜂窝芯片组/部件40、无线调制解调器42、导航和定位芯片组/部件44(例如,全球定位系统(gps))、短距离无线通信装置48(例如,
为了辅助图1的自主车辆10导航简单和复杂的驾驶场景,包括超过停止和移动的车辆、对道路中静态和动态的目标正确地进行反应、在交叉口处适当地进行交互、在停车场进行操纵等,场景规划系统200提供对基于云的和/或其他远程计算服务的适时且有效的利用,该基于云的和/或其他远程计算服务为自主车辆规划计算提供大量的计算能力和资源。图2的场景规划系统200可以基于车辆校准的机会成本管理此类云/远程计算服务的使用。例如,场景规划系统200根据针对给定时间帧的可用无线通信带宽和网络信道延迟的程度,居中安排从远程计算服务提取的规划数据和估计候选的类型、量和/或分辨率。这样做时,场景规划系统200能够优化并有效地利用非车载计算资源,以用于在存在对自主车辆应用的各种连接性和通信约束条件的情况下,规划和自主驾驶有关的过程。
图2中的代表性场景规划系统200通常由三个可互操作的、通信连接的部分组成:输入提供方部分202、场景数据部分204,以及输出消费者部分206。在场景规划系统200的输入侧,可以体现为与车辆中电子控制单元相结合的后端服务器计算机(例如,图1中的远程信息处理单元14)的输入提供方部分202有助于生成、检索、计算和/或存储(被统一指定为“确定”)各种类型的输入数据,包括主车辆(hv)状态数据201、动态信息203、应用程序(maplet)数据205以及路径规划数据207。hv状态数据201可以大体上包括车辆10的当前位置、前进方向、速度和/或加速度信息。其他类型的车辆状态信息可以包括基于实时传感器的偏航、俯仰和滚转数据、横向速度、横向偏移以及前进方向角度。另一方面,应用程序(maplet)数据205可以包括用于执行期望驾驶操作的任何合适的导航信息,包括道路布局数据、地理数据、基础设施数据以及拓扑数据。其他应用程序(maplet)信息可以包括停止标志和停止灯数据、速度限制数据、规划道路施工和道路关闭数据等。此外,路径规划数据207包括车辆10当前或与其的开始点(起点)以及期望的结束点(目的地)。
图2的动态信息203可以大体上包含行为偏好和本地感测的目标信息。行为偏好的实例可以包括特定于给定自主车辆(av)的期望实践。例如,图1中汽车10的乘员可能偏好av在行驶时间上优先乘客舒适度。场景规划系统200可以通过优先能降低车道变换的数量和避开未铺砌或未修复道路的路径来到达给定目的地的路线来对该行为偏好做出响应,即使到目的地的总时间或到目的地的总距离大于其他替代路线。在另一方面,本地感测的目标信息包括和在汽车10外部的静态和动态目标有关且由本地安装在车辆车身12上的一个或多个传感器感测的信息。云计算系统24可以聚集或以其他方式访问众包的“全局感测”的目标信息,其可以通过与云计算系统24共享数据的若干车辆采集信息的集合。
继续参考图2,可以体现为远程计算节点(例如,图1中的云计算系统24)的场景数据部分204接收以上关于输入提供方部分202所讨论的任何或全部信息作为输入数据。在接收到所述数据之前、与其同时或在其之后,场景数据部分204针对场景规划确定信息的各种附加类别,包括参考轨迹数据209、左边界数据211、车道中心数据213、以及右边界数据215。参考轨迹数据209可以包括自主车辆10在近期时间帧(例如,下一个10秒到30秒)的即时路径信息(例如,轨迹、加速度、速度等)和即时场景信息(交通、行人等)。左边界数据211、车道中心数据213以及右边界数据215可以各自提供对应的道路几何形状数据,例如估计的或检测的或者存储器存储的左边距值、中点值和右边距值,它们分别对应于自主车辆10的参考轨迹209。在209、211、213和/或215处提供的附加道路特征数据可以包括车道的总数量、车道的类型或多个类型(例如,高速公路、服务器、住宅区等)、车道宽度、道路段中弯道的数量或严重程度等。
为了在动态道路场景下提供轨迹规划候选的综合列表,图2中的场景数据部分204还可以生成当前道路场景数据217和下一场景数据219。当前道路场景数据217可以包括指示车辆10的当前情形/背景数据的实时信息,而下一场景数据219可以包括指示车辆10的近期情形/背景数据的数据,例如下一个10秒到30秒。车道使用率数据221还可以被确定为估计潜在轨迹候选的当前、近期和/或未来道路的人口密度。作为非限制性实例,车道使用率数据221可以包括和车道的预测利用有关的信息,其可以根据车道中车辆的数量、车道中车辆的类型或多种类型(例如,救护车、救火车或警车,相对于标准乘用车辆,相对于自行车和其他行人车辆)、以及在该车道上所得到的或预期的交通/平均速度而不同。其他被聚集的数据可以包括:交通拥塞和相关状况223、环境温度和相关天气状况225、可见度水平和相关视线范围状况227,和/或光线水平和相关白天/夜间状况229。通过利用以上所述的数据的任意组合,场景数据部分204生成轨迹规划候选的综合列表并将其传送至输出消费者部分206的本地轨迹规划器231,该消费者部分206可以被体现为图1中的自主乘用车辆10。
图3给出了例示说明用于图2的场景规划系统200的操作布局和数据交换的工作流程图300。如以上所指出的,场景规划系统200可以通过以下作为典型:输入提供方部分202,其有助于采集或创建对于路径生成和场景规划可能需要的输入数据;场景数据部分204,其接收、聚集并处理各种输入以生成轨迹规划候选的列表;以及输出消费者部分206,其利用轨迹规划候选列表来识别、审查并执行最优轨迹候选。在图3中,场景数据部分204被描绘成远程云计算系统24,其大体上由于参考路径生成器处理器304交换数据的场景处理器302组成。同样地,输出消费者部分206被例示为具有场景规划选择器模块306的自主车辆10,该场景规划选择器模块306与场景数据部分204和实时轨迹规划器模块308交换数据。控制模块、模块、控制器、电子控制单元、处理器以及它们的置换可以被定义成包括以下的任何一种或各种组合:一个或多个逻辑电路、专用集成电路(asic)、电子电路、中央处理单元(例如,微处理器,和相关联的存储器和存储装置(例如,只读、可编程只读、随机存取、硬盘驱动、有形等),无论是驻留、远程的或两者的组合,执行一个或多个软件或固件程序或例程)、组合逻辑电路、输入/输出电路和装置、适当的信号调节和缓冲电路,以及用来提供所述功能的其他部件。
继续参考图3,场景处理器302与输入提供方部分202配合以积累hv状态数据201,这在以上已经参考图2进行了讨论。该操作可以涉及从车辆10获取初始位置、前进方向、速度和/或加速度(统称为“姿态数据”),并且基于来自各种传感器形式(例如,gps、车轮角度编码器、激光雷达、地图等)的传感器融合数据,确定近似于车辆10的本地化位置和前进方向的融合位置估计。随后可以通过初试姿态数据和融合的位置估计数据来确定自主车辆10的当前hv状态,可以在本地存储器中更新和存储当前hv状态。
通过结合应用程序(maplet)数据205和预先计算的当前规划信息(其可以被缓存到sram缓冲存储器作为存储块以用于快速读取操作)使用hv状态,场景处理器302可以在指定起点和指定目的地之间的路线上跟踪主车辆10。云计算系统24可以利用地图数据、全局规划以及车辆的当前状态来实现该过程,以预先计算进一步的场景规划所可能需要的信息,例如,通过开发对典型静止且预先绘图以便于参考的道路网络的了解。全局规划(或“任务规划”)可以包括和自主车辆10的开始/起点、目的地/目标有关的信息以及用来到达期望目的地/目标的更高级别的规划信息。预先计算并缓存的信息可以被用来找到当前分段(例如,车辆10当前正在其上的道路或车道的当前路段)和各种需要的连接和连接长度。
场景处理器302之后可以执行场景规划估计过程,其可以包括“场景处理”以确定用于管理预期交通标志、连接、交叉口、预期或意外的道路状况、车辆操纵和/或预期或意外的交通状况的适当步骤。如本文所使用的,术语“处理”可以被定义为包括用来确定将被添加到规划以管理各种预期任务(在停止标志或停止灯处停车,预期连接的定时和执行,提前操纵的定时和执行)的一个或多个适当步骤的协议或技术。搜索空间估计随后可以通过场景处理器302来进行以获取本地融合的车道信息以及获取语义道路场景信息。语义道路场景信息可以包括特定于自主车辆10的当前场景的语义信息(例如,并且按照机器可读的格式存储)。
一旦场景处理器302执行以上所述过程中的一个或多个或全部,参考路径生成器处理器304利用所得到的信息来生成场景数据候选和相应排名数据并将其传送至驻留于车辆10的场景规划选择器模块306。为了生成具有相关排名数据的候选,参考路径生成器304缓存针对规划路径的高分辨率、多车道边界和操纵信息,并且同时生成一个或多个替代的“恢复”规划,例如,对于其中车辆10偏离给定路径或给定路径意外地变得不可用的场景。在产生轨迹规划候选之后,参考路径生成器处理器304可以通过识别出用于车辆10根据每个轨迹规划候选导航的估计成本来计算导航规划成本地图。相关联的“成本”可以包括若干因素的组合,包括但不限于,针对给定候选的总能量消耗、针对给定候选的总旅程平滑度、完成给定候选所需要的总时间、y预期最大加速度和/或减速度、预期加加速度,时间延迟等。随后可以基于计算的成本对规划进行排名,最高的成本与最低的排名相关联。
驻留于输出消费者部分206的车辆10的场景规划选择器模块306与场景规划系统200的场景数据部分204进行通信,以从参考路径生成器处理器304检索获取轨迹规划候选和相关联的排名数据。通过利用该信息,连同可用的本地感测数据(例如,本地目标、车道数据以及其他本地输入),场景规划选择器模块306可操作为更新导航规划成本地图、(如果出现需求)对当前场景的候选重新排名,以及将最优候选或最优候选的子集连同场景数据发送至轨迹规划器模块308。本地场景规划选择器模块306在从远程云计算服务24接收到轨迹规划候选之后,可以从车载车辆传感器和本地车辆控制模块采集新的信息,该信息可以用于更新参考规划、它们的成本以及排名。
对于从场景规划选择器模块306接收的每个最优规划候选,实时轨迹规划器模块308检查候选的实用性,例如通过评估该候选是否可能是无碰撞的以及该候选是否可能是运动动态可行的等。如果车辆10的运动性和动态性将允许其在不加压或超过车辆动力传动系、制动和转向系统的可行操作空间的情况下遵照该规定的轨迹规划,则该轨迹规划可以被指定为运动动态可行的。例如,针对给定候选的车辆速度、加速度/减速度、以及乘员所体验的作用力应当满足对应的车辆校准边界,与此同时还满足多有的运动学上的车辆约束,例如当转向通过交通时避开障碍物。如果被视为实用的,轨迹规划器模块308将该规划细化以生成最终轨迹,该最终轨迹被发送至自主车辆控制模块或类似配置的车辆控制器以用于执行。如果轨迹规划候选被分类成不实用,则轨迹规划器模块308可以向场景规划选择器模块306请求另一规划候选,随后针对该新的候选重复以上所述的审查和细化过程。
现在参考图4的流程图,根据本公开的方面大体上以400描述了用于管理自主车辆(例如,图1中的汽车10)的操作的改进方法或控制策略。图4中所示且在以下进一步详细描述的操作中的一些或全部可以表示和处理器可执行指令相对应的散发,该处理器可执行指令可以例如存储在主或辅助后远程存储器中,并且例如由车载或远程控制器、处理单元、控制逻辑电路或其他模块或装置来执行,以执行以上或以下所述的和所公开构思有关的功能中任一个或全部。应当意识到,所示操作框的执行次序可以改变,可以添加附加的框,并且所述框中的一些可以被修改、合并或消除。
方法400在终端框401处利用用于可编程控制器或控制模块的处理器可执行指令开始,以针对用来控制机动车辆的自动化驾驶操作的协议调用初始化过程。在过程框403处,方法400提供了用于系统部件确定hv状态数据、应用程序(mplet)数据、路径规划数据以及动态信息的处理器可执行指令,它们中的全部已经在以上对图2和图3的讨论中详细进行了描述。在过程框405处,全部或部分通过在框403处采集或创建的数据来确定当前的主车辆状态。图4的方法400以指令继续到过程框407,在图中跟踪主车辆10,在过程框409处成立针对主车辆10的当前场景,以及在过程框411处估计搜索空间(执行搜索空间估计过程)。如图4中附图标记302所指示的,过程操作405、407、409和411可以由云计算系统24的场景处理器302来执行。就这一点而言,过程框411可能进一步需要场景处理器302与参考路径生成器处理器304交换数据。
继续对图4的代表性方法400的讨论,过程框413包括用来缓存针对规划路径的高分辨率、多车道边界信息和操纵信息的机器可读处理器可执行指令。过程框415可以利用缓存的数据、搜索空间估计、场景处理近似等,来生成针对期望车辆路径规划的参考规划候选的列表。如上所述,在过程框417处计算行驶成本并将其分配给每个参考规划候选,并且随后在过程框419处至少部分基于计算的成本对所列的候选进行排名。如图4中附图标记304所指示的,过程操作413、415、417和419可以由云计算系统24的参考路径生成器处理器304来执行。就这一点而言,过程框419可能进一步需要参考路径生成器处理器304与驻留于车辆10的场景规划选择器模块306交换数据。
方法400继续到过程框421,其处理器可执行指令用于可编程控制器或控制模块聚集并处理自主车辆10的本地感测数据和行为输入。通过利用该信息,方法400可以在过程框423处更新导航规划成本地图,以及在过程框425处识别出最优轨迹候选。如图4中附图标记306所指示的,过程操作421、423、和425可以由车辆10的场景规划选择器模块306来执行。就这一点而言,过程框425可能进一步需要场景规划选择器模块306与驻留于车辆10的实时轨迹规划器模块308交换数据。
继续参考图4,方法400继续到过程框427以检查在过程框425处所识别的最优轨迹候选的实用性。在决策框429处,方法400确定该最优轨迹候选是否应被视为实用的。如果方法400推断特定候选并非实用的(框429=否),则方法400前进到过程框431,同时向场景规划选择器模块306传送请求传送另一候选。方法400在过程框433处通过选择并传送下一个最优候选来自动地响应。随后在框427和429处针对其实用性对该新的候选进行评估。一旦方法400找到实用(框429=是)的候选,则方法400前进到框435以细化该实用的轨迹候选并由此确立最终轨迹,在437处该最终轨迹被传送至驻留车辆控制器或专用控制模块并由其执行。方法400随后可以在终止框439处终止和/或循环回到终止框401。如图4中附图标记308所指示的,过程操作427、429、431、435和437可以由车辆10的轨迹规划器模块308来执行。
在一些实施例中,本公开的方面可以通过指令的计算机可执行程序来实现,例如程序模块,通常被称为软件应用或应用程序,其由车载车辆计算机或驻留的远程的计算装置的分布式网络执行。在非限制性实例中,软件可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、以及数据结构。软件可以形成界面以允许计算机根据输入源作出反应。软件还可以与其他代码段协作,以响应于结合所接收数据的源接收的数据来发起各种任务。软件可以存储在各种存储器介质中的任一种上,例如cd-rom、磁盘、磁泡存储器以及半导体存储器(例如,各种类型的ram或rom)。
此外,本公开的方面可以利用各种计算机系统和计算机网络配置来实践,包括多处理器系统、基于微处理器的或可编程电子消费品、微型计算机、大型计算机等。此外,本公开的方面可以在分布式计算环境中实践,其中任务由通过通信网络链接的远程处理装置来执行。在分布式计算环境中,程序模块可以同时位于包括存储器存储装置的本地和远程计算机存储介质中。因此,本公开的方面可以结合各种硬件、软件或它们的组合在计算机系统或其他处理系统中实施。
本文中所述方法的任一种可以包括用于由以下执行的机器可读指令:(a)处理器,(b)控制器,和/或(c)任何其他合适的处理装置。本文所公开的任何算法、软件或方法可以按照存储在例如闪存、cd-rom、软盘、硬盘驱动器、数字通用光盘(dvd)或其他存储器装置的有形介质上的软件体现,但是本领域普通技术人员可以容易地理解,其整个算法和/或部分可以替代地由除了控制器之外的装置执行和/或以按照采用可用方式的固件或专用硬件体现(例如,其可以通过专用集成电路(asic)、可编程逻辑装置(pld)、现场可编程逻辑装置(fpld)、分立逻辑等来实现)。此外,尽管已经参考本文所示流程图描述了特定算法,但是本领域普通技术人员可以容易地理解,还可以替代地使用实现示例性机器可读指令的许多其他方法。
本公开的各个方面已经参考所示实施例详细进行了描述,但是,本领域技术人员可以意识到,在不脱离本公开的范围的情况下可以对其做出许多修改。本公开并不限于本文中所公开的精确构造和组成,通过前述描述显而易见的任何以及全部修改、改变和变型也在由所附权利要求书限定的本公开的范围之内。此外,本发明构思明确地包括前述元件和特征的任何以及全部组合和子组合。