CN115907250A - 用于调整自主驾驶车辆的运动规划器的基于学习的评论器 - Google Patents
用于调整自主驾驶车辆的运动规划器的基于学习的评论器 Download PDFInfo
- Publication number
- CN115907250A CN115907250A CN202211406032.2A CN202211406032A CN115907250A CN 115907250 A CN115907250 A CN 115907250A CN 202211406032 A CN202211406032 A CN 202211406032A CN 115907250 A CN115907250 A CN 115907250A
- Authority
- CN
- China
- Prior art keywords
- trajectories
- learning
- trajectory
- parameters
- driving
- 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.)
- Pending
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0002—Automatic control, details of type of controller or control system architecture
- B60W2050/0008—Feedback, closed loop systems or details of feedback error signal
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
- B60W2050/0083—Setting, resetting, calibration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
本文描述了一种训练用于调整自主驾驶车辆的基于规则的运动规划器的基于学习的评论器的方法,一种使用具有基于学习的评论器的自主调整框架调整运动规划器的方法。方法包括接收包括人类驾驶轨迹和从人类驾驶轨迹得出的随机轨迹的训练数据;使用训练数据训练基于学习的评论器;通过比较第一组轨迹和第二组轨迹识别一组不一致的轨迹;以及在神经网络训练平台处,基于一组不一致的轨迹改进基于学习的评论器。
Description
技术领域
本公开的实施例一般涉及操作自主车辆。更特别地,本公开的实施例涉及自主驾驶车辆的运动规划器的参数调整。
背景技术
当以自主模式驾驶时,自主驾驶车辆(ADV)可以减轻乘坐者,尤其是驾驶员的一些驾驶相关责任。当以自主模式操作时,车辆可以使用车载传感器导航到各种位置,从而允许车辆以最小的人机交互或者在没有任何乘客的一些情况下行驶。
运动规划,也称为路径规划,是大规模、注重安全、真实世界自主驾驶车辆的关键。运动规划器可以是基于规则的或基于学习的。每种类型的运动规划器有其优点和缺点。例如,基于规则的运动规划器将运动规划制定为受约束的优化问题。尽管基于规则的运动规划器是可靠且可解释的,但其性能在很大程度上取决于优化问题与参数的关系如何。这些参数是为各种目的而设计的,诸如建模不同的场景、平衡每个单个目标的权重,因此需要手动微调以获得最优性能。另一方面,基于学习的规划器从大量的人类示范中学习,以创建类似人类的驾驶规划,从而避免繁琐的规则和约束设计过程。然而,缺乏可解释性阻碍了其在自主驾驶等注重安全的任务中的应用。
发明内容
第一方面,提供一种用于训练用于调整自主驾驶车辆(ADV)的运动规划器的基于学习的评论器的计算机实现的方法,所述方法包括:
通过自主驾驶模拟平台接收包括人类驾驶轨迹和从人类驾驶轨迹得出的随机轨迹的训练数据;
通过自主驾驶模拟平台使用训练数据训练基于学习的评论器;
通过在自主驾驶模拟平台处运行的基于学习的评论器,通过比较第一组轨迹和第二组轨迹来识别一组不一致的轨迹,其中第一组轨迹由具有第一组参数的运动规划器生成,并且第二组轨迹由具有第二组参数的运动规划器生成;以及
通过神经网络训练平台,基于一组不一致的轨迹来改进基于学习的评论器。
第二方面,提供一种其中存储有指令的非暂时性机器可读介质,当所述指令由处理器执行时,使所述处理器执行如第一方面所述的方法的操作。
第三方面,提供一种调整自主驾驶车辆(ADV)的运动规划器的方法,包括:
从基于学习的评论器建立目标函数;
应用优化操作来优化目标函数,以确定用于一个或多个驾驶环境的自主驾驶车辆(ADV)的动态模型的运动规划器的一组最优参数;
使用具有用于一个或多个驾驶环境的一组最优参数的运动规划器生成第一组轨迹;
使用具有用于一个或多个驾驶环境的一组现有参数的基于学习的评论器生成第二组轨迹;
生成指示第一组轨迹和第二组轨迹之间的差异的分数。
通过本公开的实施例,自主调整框架可以消除繁琐的参数调整中的人力,减少调整时间,同时保留基于规则的运动规划器的物理和安全约束。此外,当基于学习的评论器使用不同的人类驾驶数据集进行训练时,自主调整框架可以创建个性化的运动规划器。
附图说明
本公开的实施例通过示例的方式示出并且不限于附图中的图,在附图中相同的附图标记表示相似的元件。
图1示出了根据一个实施例的运动规划器调整框架100。
图2A、2B和2C示出了根据一个实施例的如何从示范轨迹生成附加轨迹。
图3示出了根据一个实施例的基于学习的评论器的输入特征。
图4A、4B和4C示出了根据一个实施例的用于训练基于学习的评论器的损失函数。
图5A和5B示出了根据实施例的基于学习的评论器的架构设计。
图6示出了用于本发明的一些实施例的自主驾驶模拟平台的示例。
图7是示出根据一个实施例的训练用于调整ADV的运动规划器的基于学习的评论器的过程的流程图。
图8是示出根据一个实施例的调整ADV的运动规划器的过程的流程图。
图9是示出根据一个实施例的ADV的框图。
图10是示出根据一个实施例的ADV的控制系统的框图。
图11是示出根据一个实施例的ADV的自主驾驶系统的示例的框图。
具体实施方式
将参考以下讨论的细节描述本公开的各个实施例和方面,并且附图将示出各个实施例。以下描述和附图是本公开的说明并且不应被解释为限制本公开。描述了许多具体细节以提供对本公开的各个实施例的全面理解。然而,在某些情况下,为了提供对本公开的实施例的简要讨论,没有描述公知或常规的细节。
说明书中对“一个实施例”或“实施例”的引用意味着结合该实施例描述的特定特征、结构或特性可包括在本公开的至少一个实施例中。在说明书中的各个地方出现的短语“在一个实施例中”不一定都指同一实施例。
如上所述,基于规则的运动规划器具有许多优点,但需要手动调整,这通常是低效的,并且高度依赖于经验知识。本发明中的运动规划器可以是ADV的速度规划器或规划模块。在本公开中,一些实施例使用轨迹来示出,并且一些实施例使用速度规划来示出。使用轨迹示出的实施例可以使用速度规划类似地示出,反之亦然。
根据各种实施例,本文描述的是用于调整ADV的运动规划器的自主调整框架,以及训练基于学习的评论器的方法,其是自主调整框架的关键组件。
在实施例中,一种训练基于学习的评论器的方法包括在自主驾驶模拟平台处接收包括人类驾驶轨迹和从人类驾驶轨迹得出的随机轨迹的训练数据;通过自主驾驶模拟平台使用训练数据训练基于学习的评论器。方法进一步包括通过在自主驾驶模拟平台处运行的基于学习的评论器,通过比较第一组轨迹和第二组轨迹来识别一组不一致的轨迹。第一组轨迹由具有第一组参数的运动规划器生成,并且第二组轨迹由具有第二组参数的运动规划器生成。方法进一步包括通过自主驾驶模拟平台基于一组不一致的轨迹对基于学习的评论器进行改进。
在实施例中,自主驾驶模拟平台包括用于训练神经网络、模拟ADV以及调整ADV的每个模块的参数的硬件组件和服务。运动规划器是ADV的模块之一,在自主驾驶模拟平台中以动态模型表示。运动规划器可以是规划模块、速度规划模块或规划模块与支出规划模块的组合模块。
在一个实施例中,运动规划器的第一组参数由基于学习的评论器针对一个或多个驾驶环境识别,并且第二组参数是用于运动规划器的一组现有参数。每个随机轨迹从人类驾驶轨迹中的一个得出。从相应的人类驾驶轨迹得出随机轨迹包括确定相应的人类驾驶轨迹的起点和终点,改变相应的人类驾驶轨迹的一个或多个参数中的一个,以及用改变后的参数替换人类驾驶轨迹的相应参数以得到随机轨迹。可以通过对参数赋予从预定范围中选择的不同值来改变参数。
在一个实施例中,基于学习的评论器包括编码器和相似性网络,并且编码器和相似性网络中的每一个是神经网络模型。编码器和相似性网络中的每一个是递归神经网络(RNN)或多层感知器(MLP)网络中的一个。在一个实施例中,编码器是RNN网络,每个RNN单元是门控循环单元(GRU)。
在一个实施例中,从训练数据中提取的特征包括速度特征、路径特征和障碍物特征,并且每个特征与目标特征相关联,并且目标特征是地图场景相关特征。这些提取的特征可用于训练基于学习的评论器。
在一个实施例中,经训练的编码器可以使用人类驾驶轨迹被训练,对速度特征、路径特征、障碍物特征和相关的目标特征进行编码,以及生成具有与人类驾驶轨迹不同的轨迹的嵌入。相似性网络使用人类驾驶轨迹和随机轨迹进行训练,并生成反映由运动规划器生成的轨迹与嵌入的相应轨迹之间差异的分数。
在一个实施例中,用于训练基于学习的评论器的损失函数可以包括用于测量轨迹之间的相似性的元素,这加速了基于学习的评论器的训练过程。
在另一个实施例中,本文描述了一种调整自主驾驶车辆(ADV)的运动规划器的方法。方法包括从基于学习的评论器构建目标函数;以及应用优化操作来优化目标函数,以确定用于一个或多个驾驶环境的自主驾驶车辆(ADV)的动态模型的运动规划器的一组最优参数。方法进一步包括使用具有用于一个或多个驾驶环境的一组最优参数的运动规划器生成第一组轨迹;使用具有用于一个或多个驾驶环境的一组现有参数的基于学习的评论器生成第二组轨迹;以及生成指示第一组轨迹和第二组轨迹之间的差异的分数。
在一个实施例中,方法进一步包括通过比较第一组轨迹和第二组轨迹来识别一组不一致的轨迹;以及基于一组不一致的轨迹改进基于学习的评论器。
在一个实施例中,可以在闭环中重复上述操作,直到分数达到预定阈值。
自主调整框架可以部署到自主驾驶模拟平台,并且可以包括用作可定制运动规划器度量的基于学习的评论器。基于学习的评论器可以基于驾驶环境提取人类驾驶轨迹的潜在空间嵌入,并且可以测量运动规划器生成的轨迹与伪人类驾驶规划之间的相似性。因此,使用基于学习的评论器,自主调整框架可以通过选择一组最优参数来自主引导基于规则的运动规划器生成类似人类的驾驶轨迹。
在一个实施例中,在自主驾驶模拟平台中,运动规划器可以是ADV的动态模型的规划模块或速度模块。运动规划器是参数化的,因此是高度可配置的。自主调整框架可以使用贝叶斯参数搜索方法或基于序列模型的算法配置来加快参数调整过程。
在一个实施例中,基于学习的评论器充当描述运动规划器的各种参数的成本的目标函数。因此,通过优化基于学习的评论器,自主调整框架可以识别出一组最优参数来优化运动规划器的参数。
在一个实施例中,基于学习的评论器使用逆强化学习(IRL)方法进行训练,并且可以基于人类驾驶数据定量测量轨迹。借助此基于学习的评论器,还包括基于模拟的评估的自主调整框架可以使基于规则的运动规划器能够实现类似人类的运动规划。
与现有的调整框架相比,自主调整框架可以去除繁琐的参数调整中的人力,减少调整时间,并使运动规划器的部署更具可扩展性。此外,保留了基于规则的运动规划器中的物理和安全约束,从而保持了可靠性。此外,当使用不同的人类驾驶数据集进行训练时,基于学习的评论器可以提取不同的驾驶风格,这可以进一步反映在由自主调整框架调整的运动规划器中,以创建不同的个性化运动规划器。
上述实施例并非穷举本发明的所有方面。预期本发明包括可以从上面总结的各种实施例的所有合适组合以及下文公开的那些实施例中实施的所有实施例。
运动规划器调整框架
图1示出了根据一个实施例的运动规划器调整框架100。运动规划器框架包括数据阶段103、训练阶段105、调整阶段107和评估阶段109,每个阶段包括完成一组执行多个功能的操作的多个软件和/或硬件组件。
在数据阶段103中,收集专家轨迹111,使用加速时间采样器(AT-采样器)113从中生成随机轨迹115。专家轨迹111是由由人类手动,例如聘请的专业司机驾驶的一个或多个ADV生成的人类驾驶轨迹。
专家轨迹111,也称为示范轨迹,可以包含在ADV被手动驾驶时记录的记录文件中。每个专家轨迹可以包括ADV预期通过的点,以及ADV的几个驾驶参数,诸如ADV在每个点的航向、速度、加加速度和加速度。
在一个实施例中,AT采样器113可以是用于生成附加轨迹以增加训练数据集的大小的软件组件。由于专家轨迹111是通过人类手动驾驶的车辆收集的,因此它们受到可用资源的限制,例如,可以雇用的专业司机的数量。AT采样器113可以从专家轨迹111生成附加轨迹。
随机轨迹115是由AT采样器113生成的附加轨迹。从每个专家轨迹,即人类驾驶轨迹,AT采样器113可以生成许多其他轨迹(例如,1000个轨迹),每个生成的轨迹与原始专家轨迹具有相同的起点和目的点,但中间有一个或多个不同的点,和/或专家/示范轨迹上每个点上的ADV的一个或多个驾驶参数有变化。
作为说明性示例,专家轨迹以点A开始,以Z结束,并通过点B、C、E、F和G,每个点的加速度分别为0.1m/s2、0.5m/s2、0.9m/s2、0.2m/s2和0.7m/s2。从此专家轨迹,AT-采样器113可以在点B、C、E、E、F和G中的一个或多个处使用不同的加速度来生成不同的轨迹。不同的加速度可从0.1m/s2和0.9m/s2之间的范围内选择。AT-采样器113可以从范围内采样不同的加速度并使用它们来生成不同的轨迹。
在一个实施例中,为了避免生成不真实的样本并减少样本空间,AT-采样器113可以从加速度参数推断速度和加加速度参数。
在训练阶段105中,特征提取器117可以从示范轨迹111和生成的轨迹115中提取特征。特征提取器117可以是将在图6中详细描述的自主驾驶模拟平台的一部分。提取的特征可以用于训练基于学习的评论器119。提取的特征的示例可以包括轨迹上每个点处ADV的速度、加速度、加加速度和航向。
在一个实施例中,示范轨迹111和生成的轨迹115是相关联的,并且可以在基于学习的评论器119的训练期间考虑这种对应关系。例如,仅当生成的轨迹与一个示范轨迹具有单一关联时才可以计算出该生成轨迹的损失。在一个实施例中,逆强化学习(IRL)用于训练基于学习的评论器。IRL是训练算法,用于通过观察代理(即基于学习的评论器119)的行为来学习其目标、价值或奖励。
在调整阶段107中,由自主驾驶模拟平台执行贝叶斯优化操作121以通过优化从基于学习的评论器119构建的目标函数来调整ADV的运动规划器。
例如,如果θ表示参数化确定性策略,其是从一组环境配置序列C到自我车辆的配置序列的映射。因此,θ可以表示运动规划器或速度规划器。当运动规划器或速度规划器的参数固定时,映射是固定的。此外,让我们假设fcritic表示基于学习的评论器生成的成本,用于测量由速度规划器或运动规划器相对于配置C生成的速度规划或轨迹的质量。然后,可以从基于学习的评论器构建目标函数:
在上述目标函数中,表示速度规划器,C是在各种场景中生成的一组预测环境配置,并且Fcritic是成本的组合,每一个是fcritic,用于由速度规划器生成的一系列速度规划中的不同速度规划。使用多个速度规划以便准确反映速度规划器的性能,因为单个速度规划可能无法反映运动规划器在不同场景中的性能。自主驾驶模拟平台可以使用贝叶斯优化操作121来识别将使总成本Fcritic最小化的速度规划器的一组参数。这组参数将是速度规划器的最优参数。因此,自主驾驶模拟平台通过识别将使由速度规划器生成的一系列速度规划的总成本最小化的一组参数来调整速度规划器。
在一个实施例中,速度规划器的调整过程可以通过使用具有第一组参数的速度规划器生成第一组速度规划来开始。每个生成的速度规划可以作为输入提供给基于学习的评论器,评论器可以生成分数,指示生成的速度规划与人类驾驶速度规划的接近程度。越接近,分数越低。可以计算第一组速度规划的总分以获得第一总分。
然后,为速度规划器选择第二组参数,其生成第二组速度规划。对于第二组速度规划,基于学习的评论器可以生成第二总分。该过程可以继续,直到找到满足预定阈值的总分或达到预定迭代次数。
以上描述以速度规划器的调整为例来说明速度规划器的参数是如何调整的。可以如上所述类似地调整运动规划器。
在调整阶段107中,可以识别一些不一致的轨迹125。不一致的轨迹125是运动规划器按预期执行但基于学习的评论器119报告高成本的极端情况,反之亦然。之所以存在这些极端情况,是因为很难为一些罕见的场景收集数据。因此,基于学习的评论器119可能已经在不使用罕见场景的数据的情况下被训练。当在调整阶段期间遇到这种罕见的场景时,基于学习的评论器119不太可能报告准确的成本。这些极端情况可以是高成本的良好行为情况或低成本的不良行为情况。自主驾驶模拟平台在调整运动规划器的参数的同时,可以收集极端情况,并将其添加到训练数据集中,以改进基于学习的评论器119。
在评估阶段109中,可以将调整的运动规划器部署到自主驾驶模拟平台。默认轨迹127和调整轨迹131可以根据评估度量129进行比较,评估度量129可以是与评估度量123相同的评估度量的集合。默认轨迹127在被调整之前由运动规划器生成。自主驾驶模拟平台可以使用相同的记录文件来重新创建虚拟环境,以生成默认轨迹127和调整轨迹131。默认轨迹127和调整轨迹131之间的比较结果可以用于改进基于学习的评论器119和评估度量123和129。
图2A、2B和2C示出了根据一个实施例的如何从示范轨迹生成附加轨迹。图2B示出了示例加速度-时间空间,其中包括一系列加速度与时间的关系。诸如图1中描述的113的AT采样器可以对加速度-时间空间进行采样,并使用采样的加速度来生成如图2A中所示的加加速度特征和图2C中所示的速度特征。加速度、加加速度和速度的各种组合可用于生成对应于每个示范轨迹的附加轨迹。
图3示出了根据一个实施例的基于学习的评论器的输入特征。如图3中所示,用于基于学习的评论器的输入特征包括速度相关特征301、路径相关特征303和障碍物相关特征305。速度特征301可以包括速度、加速度和加加速度。路径相关特征303可以包括速度限制、航向角和曲率。障碍物相关特征可以包括与自我车辆相关的六个相对方向的特征;固定方向为左前、前、右前、左后、后、右后。障碍物相关特征的示例可以包括障碍物类型、相对位置、速度、Frenet坐标系中的加速度和到自我车辆的欧几里得距离。上述每个特征都可以与轨迹的地图场景相关度量中的一个相关联。
在一个实施例中,所有上述特征可以从由人类驾驶员,例如,聘请的专业驾驶员手动驾驶的各种ADV记录的记录文件中提取。
图4A、4B和4C示出了根据一个实施例的用于训练基于学习的评论器的损失函数。
在一个实施例中,可以使用具有人类驾驶数据和调整的人类驾驶数据的逆强化学习(IRL)来训练基于学习的评论器。AT采样器可以调整人类驾驶数据以获取附加数据以增加训练数据集的大小。
IRL的目的是最小化或最大化参数化目标函数。当要最小化目标函数时,可以将其参数化为成本函数、损失函数或误差函数。当要最大化目标函数时,可以将其参数化为奖励函数。
在损失函数中,τ是训练数据集D中的轨迹,并且τ*是示范轨迹D*中的轨迹。如所示,损失函数包括两个部分4a和4b。部分4a表示人类驾驶轨迹的成本,并且因此最小化部分4a将降低人类驾驶轨迹的成本。为了避免减少太多,被限制为大于0的值。最小化部分4b意味着具有sim(τ,τ*)的回归项sim(τ,τ*)表示轨迹与人类驾驶轨迹的相似性。因此,损失函数既使人类驾驶轨迹的成本最小化,又使轨迹与相应的人类驾驶轨迹的相似性回归。
使用上述损失函数来训练基于学习的评论器的好处如图4B和4C所示,其中y轴表示奖励,x轴sim(τ,τ*)表示轨迹到一个最优轨迹τ*的相似性。
图4B示出了使用不考虑轨迹相似性的传统最大熵IRL的训练,并且图4C示出了使用关于轨迹相似性属性的回归的训练。
在一个实施例中,两个轨迹之间的相似性可以用两个轨迹的归一化速度特征之间的Ll距离来定义。L1距离也称为曼哈顿距离,是所有维度(例如,速度、加速度、加加速度)中测量值之间的绝对距离之和。
如图4B和4C中所示,当sim(τ,τ*)为0时,意味着当轨迹和人类驾驶轨迹之间没有差异时,奖励R在图4B和4C中都被最大化。
然而,在图4B中,将最大化所有可能轨迹的熵而不考虑任何轨迹之间的相似性。因此,与图4C相比,图4B中的奖励函数具有许多局部最优值,这使得优化更加困难,图4C中的奖励函数没有任何局部最优值。
当轨迹更类似于人类驾驶轨迹时,可以预期更高的奖励。在图4C中,给出了轨迹与人类驾驶轨迹的相似性的定量度量,这进一步有利于优化。
图5A和5B示出了根据实施例的基于学习的评论器的架构设计。图5A示出了编码器501的训练过程。使用人类驾驶轨迹一起训练编码器501和解码器506。
在编码器501的训练过程中,编码器501将环境特征和目标特征feag编码到嵌入515中。环境特征包括上述用于图3中描述的基于学习的评论器的训练的所有输入特征(除了速度特征)。当输入特征被编码到嵌入515中时,它们具有更少的维度。这种维度压缩可以加快基于学习的评论器的训练和推理。然后,作为训练编码器501的过程的一部分,解码器506可以基于环境特征从嵌入层515恢复速度特征。
嵌入515是具有相对低维空间的神经网络层,其可以使机器学习在像稀疏向量这样的大输入上更容易。
在一个实施例中,上述用于训练编码器501的编码器-解码器模型是门控循环单元(GRU)-编码器-解码器(GRU-ED)模型。编码器501和解码器506都可以是递归神经网络。
在图5A中,RNN单元503、505和507中的每一个是具有两个输入、隐藏状态和输入状态的GRU。轨迹506、508和510被依次馈送到编码器501。此外,目标特征feag 504被传递到线性层502,并映射到线性层502的初始隐藏状态。如所示,编码器501的输入序列是相反的顺序,这使得嵌入515聚焦于在最近的时隙中的特征。
图5B示出了基于学习的评论器的示例,其包括编码器501、嵌入层517和相似性网络527。在推理期间,预训练的编码器501可以生成示范嵌入515,在给定特定环境的情况下,可以从中恢复轨迹和/速度规划。这些轨迹和/或速度特征可以不是由记录文件记录的原始轨迹和/或速度规划。相反,它们是基于学习的评论器基于其训练推断的轨迹和/或速度规划。
推断的轨迹和/或速度规划可以与待由基于学习的评论器评估的由运动规划器生成的轨迹和/或速度规划一起被馈送到相似性网络527中。
相似性网络527可以是多层感知器(MLP)模型或RNN模型,并且可以使用包括人类驾驶轨迹和由AT采样器生成的随机轨迹的数据集来训练。经训练的相似性网络527可用于测量来自嵌入层515的示范轨迹与由运动规划器生成的轨迹512之间的相似性。
图6示出了用于本发明的一些实施例的自主驾驶模拟平台的示例。ADV的安全性和可靠性由大规模的功能和性能测试来保证,如果这些测试是使用在道路上的物理车辆进行的,那么这些测试是昂贵且耗时的。此图中所示的模拟平台601可用于以更低成本和更有效的方式执行这些任务。
在一个实施例中,示例模拟平台601包括ADV的动态模型602、基于游戏引擎的模拟器619和记录文件播放器621。基于游戏引擎的模拟器619可以提供3D虚拟世界,其中传感器可以感知并为环境的每个部分提供精确的真值数据。记录文件播放器621可以回放现实世界中记录的记录文件,用于在测试动态模型602的各个模块的功能和性能中使用。
在一个实施例中,ADV动态模型602可以是包括多个核心软件模块的虚拟车辆,多个核心软件模块包括感知模块605、预测模块605、规划模块607、控制模块609、速度规划器模块613、CAN总线模块611和定位模块615。这些模块的功能在图9和图11中详细描述。
如进一步所示,模拟平台601可以包括监护模块623,其是执行动作中心的功能并在监控器625检测到故障时进行干预的安全模块。当所有模块按预期工作时,监护模块623允许控制流正常工作。当监控器625检测到其中一个模块发生故障时,监护模块623可以阻止控制信号到达CAN总线611并且可以使ADV动态模型602停止。
模拟平台601可以包括人机界面(HMI)627,其是用于查看动态模型602的状态并实时控制动态模型602的模块。
图7是示出根据一个实施例的训练用于调整ADV的运动规划器的基于学习的评论器的过程的流程图。过程可以由可以包括软件、硬件或其组合的处理逻辑来执行。例如,过程可以由图6中描述的自主模拟平台中的各种组件和服务执行。
参考图7,在操作701中,处理逻辑接收训练数据,训练数据包括人类驾驶轨迹和从人类驾驶轨迹得出的随机轨迹。在操作703中,处理逻辑使用训练数据训练基于学习的评论器。在操作705中,处理逻辑通过比较第一组轨迹和第二组轨迹识别一组不一致的轨迹。第一组轨迹由具有第一组参数的运动规划器生成,并且第二组轨迹由具有第二组参数的运动规划器生成。在操作707中,处理逻辑基于一组不一致的轨迹集改进基于学习的评论器。
图8示出了根据一个实施例的调整自主驾驶车辆(ADV)的运动规划器的过程的流程图。过程可以由可以包括软件、硬件或其组合的处理逻辑来执行。例如,过程可以由图6中描述的自主模拟平台中的各种组件和服务执行。
参考图8,在操作801中,处理逻辑从基于学习的评论器构建目标函数。在操作803中,处理逻辑应用优化操作来优化目标函数,以确定用于一个或多个驾驶环境的自主驾驶车辆(ADV)的动态模型的运动规划器的一组最优参数。在操作805中,处理逻辑使用具有用于一个或多个驾驶环境的一组最优参数的运动规划器来生成第一组轨迹。在操作807中,处理逻辑使用具有用于一个或多个驾驶环境的一组现有参数的基于学习的评论器来生成第二组轨迹。在操作809中,处理逻辑生成指示第一组轨迹和第二组轨迹之间的差异的分数。
自主驾驶车辆
图9是示出根据一个实施例的自主驾驶车辆的框图。参考图9,自主驾驶车辆901可以通过网络通信地耦接到一个或多个服务器,该网络可以是任何类型的网络,诸如局域网(LAN)、诸如因特网的广域网(WAN)、蜂窝网络、卫星网络、或其组合,有线或无线。服务器可以是任何类型的服务器或服务器群集,诸如Web或云服务器、应用服务器、后端服务器或其组合。服务器可以是数据分析服务器、内容服务器、交通信息服务器、地图和兴趣点(mapand point of interest,MPOI)服务器或位置服务器等。
自主驾驶车辆指的是能够被配置为处于自主模式中的车辆,在自主模式中,车辆在驾驶员很少或没有输入的情况下导航通过环境。这种自主驾驶车辆可包括具有一个或多个传感器的传感器系统,传感器被配置为检测关于车辆操作于其中的环境的信息。车辆及其相关联的控制器使用检测的信息导航通过环境。自主驾驶车辆901可以以手动模式、全自主模式或部分自主模式操作。
在一个实施例中,自主驾驶车辆901包括但不限于自主驾驶系统(ADS)910、车辆控制系统911、无线通信系统912、用户接口系统913和传感器系统915。自主驾驶车辆901还可包括在普通车辆中包括的某些常见组件,诸如引擎、车轮、转向盘、变速器等,这些组件可以被车辆控制系统911和/或ADS 910使用各种通信信号和/或命令(例如加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等)控制。
组件910-915可以经由互连、总线、网络或其组合彼此通信地耦接。例如,组件910-519可以经由控制器局域网(CAN)总线彼此通信地耦接。CAN总线是一种车辆总线标准,其被设计为允许微控制器和设备在没有主机的应用中彼此通信。它是基于消息的协议,最初被设计用于汽车内的多路电气布线,但是也用于许多其它环境中。
现在参考图10,在一个实施例中,传感器系统915包括但不限于一个或多个相机1011、全球定位系统(GPS)单元1012、惯性测量单元(IMU)1013、雷达单元1014以及光检测和测距(light detection and range,LIDAR)单元1015。GPS系统1012可包括可操作以提供关于自主驾驶车辆的位置的信息的收发器。IMU单元1013可基于惯性加速度感测自主驾驶车辆的位置和朝向变化。雷达单元1014可以表示使用无线电信号感测自主驾驶车辆的局部环境内的对象的系统。在一些实施例中,除了感测对象之外,雷达单元1014还可以额外地感测对象的速度和/或航向。LIDAR单元1015可以使用激光感测自主驾驶车辆所处的环境中的对象。LIDAR单元1015可包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他系统组件。相机1011可包括一个或多个设备以捕获自主驾驶车辆周围的环境的图像。相机1011可以是静态相机和/或摄影机。相机可以是机械可移动的,例如通过将相机安装在旋转和/或倾斜的平台上。
传感器系统915还可包括其它传感器,诸如声纳传感器、红外传感器、转向传感器、油门传感器、制动传感器和音频传感器(例如麦克风)。音频传感器可以被配置为捕获来自自主驾驶车辆周围的环境的声音。转向传感器可以被配置为感测转向盘、车辆的车轮或其组合的转向角。油门传感器和制动传感器分别感测车辆的油门位置和制动位置。在一些情况下,油门传感器和制动传感器可以集成为集成的油门/制动传感器。
在一个实施例中,车辆控制系统911包括但不限于转向单元1001、油门单元1002(也称为加速单元)和制动单元1003。转向单元1001用于调节车辆的方向或航向。油门单元1002用于控制马达或引擎的速度,马达或引擎的速度转而控制车辆的速度和加速度。制动单元1003通过提供摩擦力以使车辆的车轮或轮胎变慢来使车辆减速。注意,图10所示的组件可以以硬件、软件或其组合实现。
返回参考图9,无线通信系统912允许在自主驾驶车辆901和外部系统,诸如设备、传感器、其他车辆等之间的通信。例如,无线通信系统912可以直接或经由通信网络与一个或多个设备无线通信。无线通信系统912可以使用任何蜂窝通信网络或无线局域网(WLAN),例如使用WiFi与另一组件或系统通信。无线通信系统912可以例如使用红外链路、蓝牙等直接与设备(例如,乘客的移动设备、显示设备、车辆901内的扬声器)通信。用户接口系统913可以是在车辆901内实现的外围设备的部分,包括例如键盘、触摸屏显示设备、麦克风和扬声器等。
自主驾驶车辆901的一些或所有功能可以由ADS 910控制或管理,尤其是当以自主驾驶模式操作时。ADS 910包括必要的硬件(例如,处理器、存储器、存储设备)和软件(例如,操作系统、规划和路由程序),以从传感器系统915、控制系统911、无线通信系统912和/或用户接口系统913接收信息,处理接收的信息,规划从起点到目的地点的路线或路径,然后基于规划和控制信息驾驶车辆901。可替换地,ADS 910可以与车辆控制系统911集成。
例如,作为乘客的用户可以例如经由用户接口指定行程的起始位置和目的地。ADS910获得行程相关数据。例如,ADS 910可以从MPOI服务器获得位置和路线数据。位置服务器提供位置服务,以及MPOI服务器提供地图服务和某些位置的POI。可替换地,这种位置和MPOI信息可本地缓存在ADS 910的永久存储设备中。
当自主驾驶车辆901沿着路线移动时,ADS 910还可以从交通信息系统或服务器(traffic information system or server,TIS)获得实时交通信息。注意,服务器可以由第三方实体操作。可替换地,服务器的功能可以与ADS 910集成。基于实时交通信息、MPOI信息和位置信息,以及由传感器系统915检测或感测的实时局部环境数据(例如,障碍物、对象、附近车辆),ADS 910可规划最佳路线,并例如经由控制系统911根据规划路线驾驶车辆901,以安全且高效地到达指定目的地。
图11是示出根据一个实施例的自主驾驶系统910的示例的框图。自主驾驶系统910可以被实施为图9的自主驾驶车辆901的一部分,包括但不限于ADS 910、控制系统911和传感器系统915。
参考图11,ADS 910包括但不限于定位模块1101、感知模块1102、预测模块1103、决策模块1104、规划模块1105、控制模块1106、路由模块1107、速度规划器模块1108。这些模块和图6中描述的模块执行类似的功能。
模块1101-1108中的一些或全部可以以软件、硬件或其组合实现。例如,这些模块可被安装在永久存储设备1152中,加载到存储器1151中,并由一个或多个处理器(未示出)执行。注意,这些模块中的一些或全部可以通信地耦接到图9的车辆控制系统911的一些或全部模块或与之集成。模块1101-1108中的一些可以被集成在一起作为集成模块。
定位模块1101确定自主驾驶车辆901的当前位置(例如,利用GPS单元1012)并管理与用户的行程或路线有关的任何数据。定位模块1101(也称为地图和路线模块)管理与用户的行程或路线有关的任何数据。用户可以例如经由用户接口登录并指定行程的起始位置和目的地。定位模块1101与自主驾驶车辆901的其他组件通信,诸如地图和路线数据1111,以获得与行程有关的数据。例如,定位模块1101可以从位置服务器和地图与POI(MPOI)服务器获得位置和路线数据。位置服务器提供位置服务,以及MPOI服务器提供地图服务和某些位置的POI,它们可作为地图和路线数据1111的部分被缓存。当自主驾驶车辆901沿着路线移动时,定位模块1101还可以从交通信息系统或服务器获得实时交通信息。
基于由传感器系统915提供的传感器数据和由定位模块1101获得的定位信息,由感知模块1102确定对周围环境的感知。感知信息可以表示普通驾驶员将感知到的驾驶员正在驾驶的车辆周围的情况。感知可包括车道配置、交通灯信号、例如以对象形式的另一车辆、行人、建筑物、人行横道或其它交通相关标志(例如,停止标志、让步标志)等的相对位置。车道配置包括描述一个或多个车道的信息,诸如,例如车道的形状(例如,直的或弯曲的)、车道的宽度、道路中的车道数量、单向或双向车道、合并或分离车道、驶出车道等。
感知模块1102可包括计算机视觉系统或计算机视觉系统的功能,以处理和分析由一个或多个相机捕获的图像,以便识别自主驾驶车辆的环境中的对象和/或特征。对象可包括交通信号、车行道边界、其他车辆、行人和/或障碍物等。计算机视觉系统可使用对象识别算法、视频跟踪和其它计算机视觉技术。在一些实施例中,计算机视觉系统可以映射环境、跟踪对象、以及估计对象的速度等。感知模块1102还可基于由诸如雷达和/或LIDAR的其他传感器提供的其他传感器数据检测对象。
对于每个对象,预测模块1103预测对象将在环境下表现什么。鉴于一组地图/路线信息1111和交通规则1112,基于感知在时间点的驾驶环境的感知数据执行预测。例如,如果对象是在相反方向上的车辆并且当前驾驶环境包括十字路口,则预测模块1103将预测车辆将可能直线向前移动还是转弯。如果感知数据指示十字路口没有交通灯,则预测模块1103可以预测车辆在进入十字路口之前可能必须完全停止。如果感知数据指示车辆当前处于仅左转弯车道或仅右转弯车道,则预测模块1103可预测车辆将更可能分别进行左转弯或右转弯。
对于每个对象,决策模块1104作出关于如何处理该对象的决策。例如,对于特定对象(例如,在交叉路线中的另一车辆)以及描述该对象的元数据(例如,速度、方向、转向角),决策模块1104决定如何遇到该对象(例如,超车、让行、停止、通过)。决策模块1104可根据一组规则,诸如交通规则或驾驶规则1112作出这些决策,这组规则可存储于永久存储设备1152中。
路由模块1107被配置为提供从起点到目的地点的一条或多条路线或路径。对于例如从用户接收到的从起始位置到目的地位置的给定行程,路由模块1107获得路线和地图信息1111并且确定从起始位置用以到达目的地位置的所有可能的路线或路径。路由模块1107可以为其确定的从起始位置用以到达目的地位置的每条路线生成地形图形式的参考线。参考线是指没有来自诸如其它车辆、障碍物或交通状况的其它者的任何干扰的理想路线或路径。也就是说,如果在道路上没有其它车辆、行人或障碍物,则ADV应该精确地或紧密地跟随参考线。然后,地形图被提供给决策模块1104和/或规划模块1105。决策模块1104和/或规划模块1105检查所有可能的路线,以鉴于由其它模块提供的其它数据(诸如来自定位模块1101的交通状况、由感知模块1102感知的驾驶环境和由预测模块1103预测的交通状况)选择和修正最佳路线中的一个。取决于在时间点的特定驾驶环境,用于控制ADV的实际路径或路线可以接近或不同的于由路由模块1107提供的参考线。
基于对于每个感知的对象的决策,规划模块1105使用由路由模块1107提供的参考线作为基础规划用于自主驾驶车辆的路径或路线以及驾驶参数(例如,距离、速度和/或转向角)。也就是说,对于给定对象,决策模块1104决策对该对象做什么,而规划模块1105确定如何做。例如,对于给定对象,决策模块1104可以决策经过对象,而规划模块1105可以确定是在对象的左侧还是右侧经过。规划和控制数据由规划模块1105生成,包括描述车辆1101在下一个移动周期(例如,下一个路线/路径段)中将如何移动的信息。例如,规划和控制数据可指示车辆912以30英里每小时(mph)的速度移动10米,然后以25mph的速度改变到右车道。
速度规划器1108可以是规划模块1105的一部分或单独的模块。给定规划的轨迹,速度规划器1108引导ADV沿着规划的路径以一系列适当的速度v=[vi,…],i∈[0,N]穿过,其中vi=dsi/dt和dsi是在t=i时沿路径的穿过距离,dt是采样时间。
基于规划和控制数据,控制模块1106通过根据由规划和控制数据限定的路线或路径向车辆控制系统911发送适当的命令或信号控制和驾驶自主驾驶车辆。规划和控制数据包括足够的信息以沿着路径或路线在不同的时间点使用适当的车辆设置或驾驶参数(例如,油门、制动、转向命令)将车辆从路线或路径的第一点驾驶到第二点。
在一个实施例中,规划阶段在多个规划周期(也称为驾驶周期,诸如在100毫秒(ms)的每个时间间隔内)内执行。对于每个规划周期或驾驶周期,将基于规划和控制数据发出一个或多个控制命令。也就是说,对于每100ms,规划模块1105规划下一个路线段或路径段,例如包括目标位置和ADV到达目标位置所需的时间。可替换地,规划模块1105还可指定具体速度、方向和/或转向角等。在一个实施例中,规划模块1105为下一预定的时间段,诸如5秒规划路线段或路径段。对于每个规划周期,规划模块1105基于在先前周期中规划的目标位置规划用于当前周期(例如,下一个5秒)的目标位置。然后控制模块1106基于当前周期的规划和控制数据生成一个或多个控制命令(例如,油门、制动、转向控制命令)。
注意,决策模块1104和规划模块1105可以集成为集成模块。决策模块1104/规划模块1105可包括导航系统或导航系统的功能,以确定用于自主驾驶车辆的驾驶路径。例如,导航系统可以确定一系列速度和方向航向,以影响自主驾驶车辆沿着基本上避开感知的障碍物的路径的移动,同时大体使自主驾驶车辆沿着通向最终目的地的基于车行道的路径前进。目的地可以根据经由用户接口系统913的用户输入而被设置。当自主驾驶车辆在操作时,导航系统可以动态地更新驾驶路径。导航系统可以并入来自GPS系统的数据和一个或多个地图,以便确定用于自主驾驶车辆的驾驶路径。
根据一个实施例,如上所述的自主驾驶系统的系统架构包括但不限于应用层、规划和控制(PNC)层、感知层、设备驱动层、固件层和硬件层。应用层可以包括与自主驾驶车辆的用户或乘客交互的用户接口或配置应用,例如与用户接口系统913相关联的功能。PNC层可以包括至少规划模块1105和控制模块1106的功能。感知层可以包括至少感知模块1102的功能。在一个实施例中,存在包括预测模块1103和/或决策模块1104的功能的附加层。可替换地,这样的功能可以包括在PNC层中和/或感知层中。固件层可以至少代表传感器系统915的功能,其可以以现场可编程门阵列(FPGA)的形式实现。硬件层可以代表自主驾驶车辆的硬件,诸如控制系统911。应用层、PNC层和感知层可以经由设备驱动层与固件层和硬件层进行通信。
注意,如上所示和所述的一些或所有组件可以用软件、硬件或其组合实现。例如,这些组件可以被实现为安装并存储在永久存储设备中的软件,软件可以由处理器(未示出)加载并执行在存储器中以执行贯穿本申请所述的过程或操作。可替换地,这些组件可被实现为被编程或嵌入到专用硬件中的可执行代码,专用硬件诸如集成电路(例如,专用IC或ASIC)、数字信号处理器(DSP)或现场可编程门阵列(FPGA),可执行代码可经由来自应用的对应驱动器和/或操作系统访问。此外,这些组件可以被实现为处理器或处理器内核中的特定硬件逻辑,作为经由一个或多个特定指令软件组件可访问的指令集的一部分。
已经关于对计算机存储器内的数据位的操作的算法和符号表示呈现了前述详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用来最有效地将他们的工作实质传达给本领域的其他技术人员的方式。算法在这里并且通常被认为是导致期望结果的自洽操作序列。这些操作是需要对物理量进行物理操纵的那些操作。
然而,应当记住的是,所有这些和类似的术语都与适当的物理量相关联,并且仅仅是应用于这些量的方便的标记。除非特别声明,否则从以上讨论中显而易见的是,应当理解的是,在整个说明书中,使用诸如所附权利要求书中所阐述的术语的讨论指的是计算机系统或类似电子计算设备的动作和过程,所述计算机系统或类似电子计算设备将计算机系统的寄存器和存储器内的表示为物理(电子)量的数据操纵和变换成计算机系统存储器或寄存器或其它这样的信息存储、传输或显示设备内的类似地表示为物理量的其它数据。
本公开的实施例还涉及用于执行本文的操作的装置。这种计算机程序存储在非瞬态计算机可读介质中。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机制。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪存设备)。
在前述附图中描述的过程或方法可以由包括硬件(例如,电路、专用逻辑等)、软件(例如,体现在非暂时性计算机可读介质上)或两者的组合的处理逻辑来执行。尽管以上根据一些顺序操作描述了过程或方法,但是应当理解的是,可以以不同的顺序执行所述的一些操作。此外,一些操作可以并行地而不是顺序地执行。
本公开的实施例不是参考任何特别编程语言描述的。将了解,可使用各种编程语言实施如本文所述的本公开的实施例的教示。
在前述说明书中,已经参考本公开的具体示例性实施例描述了本公开的实施例。显然,在不背离如所附权利要求书中所阐述的本公开的更宽的精神和范围的情况下,可以对其进行各种修正。因此,说明书和附图应被认为是说明性的而不是限制性的。
Claims (15)
1.一种用于训练用于调整自主驾驶车辆(ADV)的运动规划器的基于学习的评论器的计算机实现的方法,所述方法包括:
通过自主驾驶模拟平台接收包括人类驾驶轨迹和从人类驾驶轨迹得出的随机轨迹的训练数据;
通过自主驾驶模拟平台使用训练数据训练基于学习的评论器;
通过在自主驾驶模拟平台处运行的基于学习的评论器,通过比较第一组轨迹和第二组轨迹来识别一组不一致的轨迹,其中第一组轨迹由具有第一组参数的运动规划器生成,并且第二组轨迹由具有第二组参数的运动规划器生成;以及
通过神经网络训练平台,基于一组不一致的轨迹来改进基于学习的评论器。
2.根据权利要求1所述的方法,其中,运动规划器的第一组参数由基于学习的评论器针对一个或多个驾驶环境识别,并且第二组参数是运动规划器的一组现有参数。
3.根据权利要求1所述的方法,其中,随机轨迹中的每一个是从人类驾驶轨迹中的一个得出的,并且其中从相应的人类驾驶轨迹得出随机轨迹包括:
确定相应的人类驾驶轨迹的起点和终点;
改变相应的人类驾驶轨迹的一个或多个参数中的一个;以及
用改变后的参数替换人类驾驶轨迹的相应参数以得到随机轨迹。
4.根据权利要求3所述的方法,其中,通过对参数赋予从预定范围中选择的不同值来改变参数。
5.根据权利要求1所述的方法,其中,基于学习的评论器包括编码器和相似性网络,其中编码器和相似性网络中的每一个是神经网络模型。
6.根据权利要求5所述的方法,其中,编码器和相似性网络中的每一个是递归神经网络(RNN)或多层感知器(MLP)网络中的一个。
7.根据权利要求6所述的方法,其中,编码器是RNN网络,其中每个RNN单元是门控循环单元(GRU)。
8.根据权利要求5所述的方法,其中,从训练数据提取的特征包括速度特征、路径特征和障碍物特征,其中每个特征与目标特征相关联,其中目标特征是地图场景相关特征。
9.根据权利要求8所述的方法,其中,经训练的编码器使用人类驾驶轨迹进行训练,对速度特征、路径特征、障碍物特征和相关联的目标特征进行编码,并生成具有与人类驾驶轨迹不同的轨迹的嵌入。
10.根据权利要求8所述的方法,其中,相似性网络使用人类驾驶轨迹和随机轨迹进行训练,并且将生成反映由运动规划器生成的轨迹与来自嵌入的相应轨迹之间的差异的分数。
11.根据权利要求1所述的方法,其中,基于学习的评论器是使用具有用于测量轨迹之间相似性的元素的损失函数来训练的。
12.一种其中存储有指令的非暂时性机器可读介质,当所述指令由处理器执行时,使所述处理器执行如权利要求1至11中任一项所述的方法的操作。
13.一种调整自主驾驶车辆(ADV)的运动规划器的方法,包括:
从基于学习的评论器建立目标函数;
应用优化操作来优化目标函数,以确定用于一个或多个驾驶环境的自主驾驶车辆(ADV)的动态模型的运动规划器的一组最优参数;
使用具有用于一个或多个驾驶环境的一组最优参数的运动规划器生成第一组轨迹;
使用具有用于一个或多个驾驶环境的一组现有参数的基于学习的评论器生成第二组轨迹;
生成指示第一组轨迹和第二组轨迹之间的差异的分数。
14.根据权利要求13所述的方法,进一步包括:
通过比较第一组轨迹和第二组轨迹识别一组不一致的轨迹;
基于一组不一致的轨迹改进基于学习的评论器。
15.根据权利要求14所述的方法,进一步包括:
在闭环中执行识别和改进,直到分数达到预定阈值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/456,545 | 2021-11-24 | ||
US17/456,545 US20230159047A1 (en) | 2021-11-24 | 2021-11-24 | Learning-based critic for tuning a motion planner of autonomous driving vehicle |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115907250A true CN115907250A (zh) | 2023-04-04 |
Family
ID=84178902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211406032.2A Pending CN115907250A (zh) | 2021-11-24 | 2022-11-10 | 用于调整自主驾驶车辆的运动规划器的基于学习的评论器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230159047A1 (zh) |
EP (1) | EP4113393A3 (zh) |
CN (1) | CN115907250A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117601904A (zh) * | 2024-01-22 | 2024-02-27 | 中国第一汽车股份有限公司 | 车辆行驶轨迹的规划方法、装置、车辆及存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230406345A1 (en) * | 2022-06-17 | 2023-12-21 | Baidu Usa Llc | Distributional expert demonstrations for autonomous driving |
CN116680656B (zh) * | 2023-07-31 | 2023-11-07 | 合肥海普微电子有限公司 | 基于生成型预训练变换器的自动驾驶运动规划方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11568207B2 (en) * | 2018-09-27 | 2023-01-31 | Deepmind Technologies Limited | Learning observation representations by predicting the future in latent space |
-
2021
- 2021-11-24 US US17/456,545 patent/US20230159047A1/en active Pending
-
2022
- 2022-11-10 CN CN202211406032.2A patent/CN115907250A/zh active Pending
- 2022-11-16 EP EP22207758.8A patent/EP4113393A3/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117601904A (zh) * | 2024-01-22 | 2024-02-27 | 中国第一汽车股份有限公司 | 车辆行驶轨迹的规划方法、装置、车辆及存储介质 |
CN117601904B (zh) * | 2024-01-22 | 2024-05-14 | 中国第一汽车股份有限公司 | 车辆行驶轨迹的规划方法、装置、车辆及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4113393A2 (en) | 2023-01-04 |
US20230159047A1 (en) | 2023-05-25 |
EP4113393A3 (en) | 2023-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11269329B2 (en) | Dynamic model with learning based localization correction system | |
CN111775945B (zh) | 用于自动驾驶的用于检测最接近的路径内对象的方法和装置 | |
CN112977473B (zh) | 用于预测移动障碍物驶出十字路口的方法及系统 | |
CN112829769B (zh) | 自动驾驶车辆的混合规划系统 | |
KR102589587B1 (ko) | 자율 주행 차량용 동적 모델 평가 패키지 | |
US11860634B2 (en) | Lane-attention: predicting vehicles' moving trajectories by learning their attention over lanes | |
CN112149487A (zh) | 一种用于自动驾驶的用于训练神经网络对象检测模型的用于确定锚框的方法 | |
EP4113393A2 (en) | Learning-based critic for tuning a motion planner of autonomous driving vehicle | |
EP4198804A1 (en) | Simulation obstacle vehicles with driving styles | |
US11254326B2 (en) | Automatic comfort score system based on human driving reference data | |
US11814073B2 (en) | Learning based controller for autonomous driving | |
EP4082856A2 (en) | E2e learning-based evaluator for an autonomous driving vehicle | |
CN112441016B (zh) | 基于齿轮的车辆载荷推断系统 | |
US11300955B2 (en) | Method for determining ride stability of an autonomous driving system controlling an autonomous driving vehicle | |
CN116736855A (zh) | 评估自主驾驶规划和控制的方法和系统 | |
CN117312841A (zh) | 自动驾驶车辆训练数据的制定方法、电子设备和介质 | |
US20240034353A1 (en) | Automatic generation of corner scenarios data for tuning autonomous vehicles | |
US20230042001A1 (en) | Weighted planning trajectory profiling method for autonomous vehicle | |
CN115158359A (zh) | 改进自主驾驶车辆的规划模块的方法及系统 | |
US20230406362A1 (en) | Planning-impacted prediction evaluation | |
CN115320635A (zh) | 评估自主驾驶车辆的规划功能的方法及系统 | |
CN116929364A (zh) | 用于未预见场景的自动驾驶车辆的轨迹规划 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |