CN111565990B - 用于自主车辆的软件验证 - Google Patents
用于自主车辆的软件验证 Download PDFInfo
- Publication number
- CN111565990B CN111565990B CN201980007710.8A CN201980007710A CN111565990B CN 111565990 B CN111565990 B CN 111565990B CN 201980007710 A CN201980007710 A CN 201980007710A CN 111565990 B CN111565990 B CN 111565990B
- Authority
- CN
- China
- Prior art keywords
- scenario
- control software
- autonomous control
- verification model
- 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.)
- Active
Links
- 238000012795 verification Methods 0.000 claims abstract description 141
- 230000004044 response Effects 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 29
- 238000010200 validation analysis Methods 0.000 claims description 5
- 230000008447 perception Effects 0.000 description 25
- 230000015654 memory Effects 0.000 description 20
- 230000001133 acceleration Effects 0.000 description 17
- 230000006399 behavior Effects 0.000 description 12
- 230000006378 damage Effects 0.000 description 9
- 238000012360 testing method Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000035484 reaction time Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 230000002567 autonomic effect Effects 0.000 description 4
- 230000036461 convulsion Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3608—Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
-
- 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
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/14—Adaptive cruise control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/18—Conjoint control of vehicle sub-units of different type or different function including control of braking systems
-
- 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
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2300/00—Purposes or special features of road vehicle drive control systems
- B60Y2300/08—Predicting or avoiding probable or impending collision
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2300/00—Purposes or special features of road vehicle drive control systems
- B60Y2300/14—Cruise control
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Traffic Control Systems (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开的一些方面涉及验证用于自主地操作车辆的自主控制软件。例如,运行自主控制软件经过驾驶情景,以观察自主控制软件的结果。运行验证模型经过驾驶情景多次,以对于多次中的每一次,观察模型的结果。基于软件的结果是否指示在软件控制下的虚拟车辆在单次期间与另一对象碰撞来确定软件是否通过驾驶情景。基于模型的结果是否指示在模型控制下的虚拟车辆在多次中的任一次中与另一对象碰撞来确定验证模型是否通过驾驶情景。基于确定验证软件。
Description
相关申请的交叉引用
本申请是2018年1月8日提交的美国专利申请第15/864,239号的继续,通过引用将该美国专利申请的公开内容结合于此。
技术领域
本申请一般地涉及用于自主车辆的软件验证,并且更具体地,涉及验证用于在自主驾驶模式下操作车辆的自主控制软件的方法以及用于验证用于在自主驾驶模式下操作车辆的自主控制软件的***。
背景技术
自主车辆(例如不需要人类驾驶员的车辆)可以用于帮助将乘客或物品从一个位置运输到另一位置。这样的车辆可以在完全自主模式下操作,在完全自主模式下,乘客可以提供某初始输入,诸如接载或目的地位置,而车辆例如通过确定并沿循可能需要该车辆对其他道路用户(诸如车辆、行人、骑行者等)做出响应并与其他道路用户进行交互的路线来将自身操纵到该位置。至关重要的是,在由这些车辆使用的在自主模式下进行操作的自主控制软件被实际用于在车辆与其他对象进行交互的区域中控制车辆之前,要测试并验证这样的软件。
发明内容
本公开的一个方面提供了一种验证用于在自主驾驶模式下操作车辆的自主控制软件的方法。该方法包括:运行所述自主控制软件经过驾驶情景单次,以观察该情景对于所述自主控制软件的结果;运行验证模型经过所述驾驶情景多次,以对于多次中的每一次,观察该情景对于所述验证模型的结果;基于所述情景对于所述自主控制软件的结果是否指示在所述自主控制软件控制下的虚拟车辆在所述单次期间与另一对象碰撞来确定所述自主控制软件是否通过(pass)驾驶情景;基于所述情景对于所述验证模型的结果是否指示在所述验证模型控制下的虚拟车辆在所述多次中的任一次中与另一对象碰撞来确定所述验证模型是否通过驾驶情景;和基于所述确定验证所述自主控制软件。
在一个示例中,驾驶情景是给定类别的驾驶情景的多个驾驶情景中的一个,并且验证所述自主控制软件是基于在给定类别的所述多个驾驶情景的全部上评估所述自主控制软件和所述验证模型的表现的。在该示例中,该方法还包括:将所述自主控制软件通过的多个驾驶情景与在多次中至少通过一次的多个情景进行比较,并且,验证所述自主控制软件还基于所述比较。在另一示例中,运行所述验证模型经过所述驾驶情景多次包括:对于预定一组一般类型的响应中识别的每种类型的响应,运行所述情景一次。在另一示例中,所述多次中的每一次与所述验证模型的响应不同对应,使得所述多次中的第一次包括制动响应,所述多次中的第二次包括向右转弯响应,所述多次中的第三次包括向左转弯响应,所述多次中的第四次包括制动和向右转弯响应,并且所述多次中的第五次包括制动和向左转弯响应。在另一示例中,确定所述自主控制软件是否通过所述驾驶情景还基于与所述另一对象的任何碰撞的严重程度级别。在该示例中,验证所述自主控制软件还基于所述严重程度级别。在另一示例中,确定所述验证模型是否通过所述驾驶情景还基于与所述另一对象的任何碰撞的严重程度级别。在该示例中,验证所述自主控制软件还基于所述严重程度级别。在另一示例中,该方法还包括识别移交时间,所述移交时间用于在情景中给予所述自主控制软件或所述验证模型对虚拟车辆的控制,所述移交时间与如果在情景中两个对象都在相应的当前轨迹上继续、则在虚拟车辆将与另一对象碰撞之前情景内的预定秒数对应,并且,所述移交时间用于运行所述验证模型经过所述驾驶情景并运行自主控制软件经过所述驾驶情景。在此示例中,所述移交时间用于运行所述自主控制软件经过所述驾驶情景。另外地或替代地,该方法还包括将所述情景和所述移交时间提供给人类操作员以确认所述移交时间。
本公开的另一方面提供了一种用于验证自主控制软件的***,该自主控制软件用于在自主驾驶模式下操作车辆。该***包括具有一个或多个处理器的一个或多个计算设备,该一个或多个处理器被配置为:运行所述自主控制软件经过驾驶情景单次,以观察该情景对于所述自主控制软件的结果;运行验证模型经过所述驾驶情景多次,以对于多次中的每一次,观察该情景对于所述验证模型的结果;基于情景对于所述自主控制软件的结果是否指示在所述自主控制软件控制下的虚拟车辆在所述单次期间与另一对象碰撞来确定所述自主控制软件是否通过驾驶情景;基于情景对于所述验证模型的结果是否指示在所述验证模型控制下的虚拟车辆在所述多次中的任一次中与另一对象碰撞来确定所述验证模型是否通过驾驶情景;和基于所述确定验证所述自主控制软件。
在一个示例中,所述驾驶情景是给定类别的驾驶情景的多个驾驶情景中的一个,并且,验证所述自主控制软件是基于在给定类别的所述多个驾驶情景的全部上评估所述自主控制软件和所述验证模型的表现的。在该示例中,一个或多个处理器被配置为将所述自主控制软件通过的多个驾驶情景与在多次中至少通过一次的多个情景进行比较,并且,验证所述自主控制软件还基于所述比较。在另一示例中,一个或多个处理器还被配置为还基于与所述另一对象的任何碰撞的严重程度级别,确定所述自主控制软件是否通过所述驾驶情景。在另一示例中,一个或多个处理器还被配置为还基于与所述另一对象的任何碰撞的严重程度级别,确定所述验证模型通过所述驾驶情景。在另一示例中,一个或多个处理器还被配置为识别移交时间,所述移交时间用于在情景中给予所述自主控制软件或所述验证模型对虚拟车辆的控制,所述移交时间与如果在情景中两个对象都在相应的当前轨迹上继续、则在虚拟车辆将与另一对象碰撞之前情景内的预定秒数对应,并且,所述移交时间用于运行所述验证模型经过所述驾驶情景并运行自主控制软件经过所述驾驶情景。在另一示例中,该***还包括自主控制软件。在另一示例中,***还包括验证模型。
附图说明
图1是根据示例性实施例的示例车辆的功能图。
图2是根据本公开的一些方面的地图信息的示例。
图3是根据本公开的一些方面的车辆的示例外部视图。
图4是根据本公开的一些方面的示例***的示意图。
图5是根据本公开的一些方面的图4的***的功能图。
图6是根据本公开的一些方面的情景的示例表示。
图7是根据本公开的一些方面的可能响应的示例图。
图8是根据本公开的一些方面的示例流程图。
具体实施方式
综述
本技术涉及验证用于在自主驾驶模式下控制车辆的自主控制软件。用于验证或部分地验证自主控制软件的一种方法可以涉及评估在不同类型的情况下自主控制软件是否将与理想化的人类驾驶员以相同的制动、加速和转向能力控制车辆一样好(如果不是更好的话)地控制自主车辆。为了实现这一点,可以基于仿真或情景的结果,将自主控制软件与该理想化的人类驾驶员的验证模型进行比较。由于人类通常是不可预测的,因此可以通过确立一组特性来生成验证模型。这些特性可以与刺激、感知反应时间、运动或“行进”时间以及控制表现有关。换句话说,该验证模型可以包括理想化的人类将如何注意、做出反应并最终进行响应(例如,通过制动、转弯或采取某个其他动作)以避免即将发生的碰撞的验证模型。在这方面,实际上可以期望在许多情况下,验证模型可以表现得与人类驾驶员一样好或更好。
可以将情景生成为测试对行为不适当的另一对象的响应的情况。在这方面,情景不仅是仅在周围行驶的车辆,而且还是其中车辆的响应对于车辆和任何其他对象的安全至关重要的情况。
可以根据由人或自主车辆观察到的实际驾驶事件或根据由人类操作员想象的情况来生成不同的情景。每个情景的关键特征是“移交(handover)时间”或自主控制软件和验证模型被给予情景内对车辆的控制的时间。可以根据每个情景的情形为该情景自动选择移交时间,之后由人类操作员确认或手动调整移交时间。使用具有人工审查的用于移交时间的较简单的验证模型可以减少不必要的复杂性和计算,并可以在较大的数据集上提供更一致的结果。
然后,可以运行自主控制软件和验证模型经过情景,以便评估表现。如果没有碰撞,或者如果有碰撞但损伤的可能性非常低,则自主控制软件可以“通过”情景。在评估验证模型的表现时,验证模型可以在多个不同响应中的每一个下运行相同的情景。如果验证模型使用多个不同响应中的任何一个通过,则可以认为验证模型已经通过该情景。另外,与验证模型相比,自主控制软件通过情景的要求可能会不同。例如,对自主控制软件的要求可能比对验证模型的要求更为严格。
然后,可以比较情景的结果,以与验证模型相比评估自主控制软件的表现。在一个实例中,自主控制软件可能需要满足某些要求,诸如通过至少与验证模型一样多的情景。如果自主控制软件对于所有类别的情景都能够满足这些要求,则可以认为自主控制软件关于验证模型被验证,或者如果还使用了其他验证过程,则可以认为自主控制软件至少部分地关于验证模型被验证。换句话说,满足要求可以指示自主控制软件对于自主控制软件和验证模型在其上被运行的情景至少与验证模型一样好。在这方面,可以认为自主控制软件足以用于实际驾驶情况,而不仅仅是在仿真中使用。替代地,如果自主控制软件对于特定情景组无法满足这些要求,则可以对结果进行更详细的评估,以确定如何根据需要稍稍调整自主控制软件。
本文描述的特征可以提供验证用于自主车辆的自主控制软件的安全和有效的方式。例如,自主控制软件不仅可以在数十万种情景中进行测试而不会危及实际人员的生命和财产,而且还可以与基准进行比较,以确认自主控制软件实际上是“安全的”。此外,使用这些情景可以大大加快对自主控制软件的评估,因为可以在几个小时内运行数千个测试,而不是手动创建和运行每个情景将花费的数个月。此外,情景在不总是保证安全的情况下对安全性提供了高标准,并提供了用于评估自主控制软件的响应的基准,而不仅仅是观察这样的响应并“猜测”它们是否有效。在没有这样的测试的情况下,使用未验证的自主控制软件对人员或财产造成损伤的风险可能太大。
示例***
如图1所示,根据本公开的一个方面的车辆100包括各种部件。尽管本公开的某些方面对于特定类型的车辆特别有用,但该车辆可以是任何类型的车辆,包括但不限于汽车、卡车、摩托车、巴士、休闲车等。该车辆可以具有一个或多个计算设备,诸如包含一个或多个处理器120、存储器130和通常在通用计算设备中存在的其他部件的计算设备110。
存储器130存储一个或多个处理器120可访问的信息,包括可由处理器120执行或以其他方式使用的指令134和数据132。存储器130可以是能够存储处理器可访问的信息的任何类型,包括计算设备可读介质或存储可以借助电子设备读取的数据的其他介质,诸如硬盘驱动器、存储卡、ROM、RAM、DVD或其他光盘以及其他可写和只读存储器。***和方法可以包括前述的不同组合,由此,指令和数据的不同部分被存储在不同类型的介质上。
指令134可以是由处理器直接执行(诸如,机器代码)或间接执行(例如,脚本)的任何指令集。例如,指令可以作为计算设备代码存储在计算设备可读介质上。在这方面,术语“软件”、“指令”和“程序”在本文中可以互换使用。指令可以以目标代码格式存储以供处理器直接处理,或者以任何其他计算设备语言存储,包括脚本或独立源代码模块的集合,这些脚本或独立源代码模块的集合按需进行解释或被预先编译。指令的功能、方法和例程在下面更详细地说明。
数据132可以由处理器120根据指令134进行获取、存储或修改。例如,尽管要求保护的主题不受任何特定数据结构的限制,但是数据可以存储在计算设备寄存器中、在关系数据库中作为具有多个不同字段和记录的表、在XML文档或平面文件中。数据也可以以任何计算设备可读格式来格式化。
一个或多个处理器120可以是任何常规处理器,诸如可商购获得的CPU。替代地,一个或多个处理器可以是专用设备,诸如ASIC或其他基于硬件的处理器。尽管图1在功能上将计算设备110的处理器、存储器和其他元件示出为位于同一块内,但是本领域普通技术人员将理解,处理器、计算设备或存储器实际上可以包括可以或可以不存储在同一物理壳体内的多个处理器、计算设备或存储器。例如,存储器可以是位于与计算设备110的壳体不同的壳体中的硬盘驱动器或其他存储介质。因此,提及处理器或计算设备将被理解为包括提及可以或可以不并行操作的处理器或计算设备或存储器的集合。
计算设备110可以包括通常关于计算设备使用的所有部件,诸如上述处理器和存储器,以及用户输入150(例如,鼠标、键盘、触摸屏和/或麦克风),和各种电子显示器(例如,具有屏幕的监视器或可操作为显示信息的任何其他电子设备)。在该示例中,车辆包括内部电子显示器152以及一个或多个扬声器154以提供信息或视听体验。在这方面,内部电子显示器152可以位于车辆100的车厢内,并且可以由计算设备110用来向车辆100内的乘客提供信息。
计算设备110还可以包括一个或多个无线网络连接156,以促进与其他计算设备(诸如下面详细描述的客户端计算设备和服务器计算设备)的通信。无线网络连接可以包括短距离通信协议,诸如蓝牙、低功耗蓝牙(LE)、蜂窝连接,以及各种配置和协议,包括互联网、万维网、内联网、虚拟专用网、广域网、局域网、使用一个或多个公司专有的通信协议的专用网络、以太网、WiFi和HTTP以及上述的各种组合。
在一个示例中,计算设备110可以是自主驾驶计算***的控制计算设备或被并入车辆100中。自主驾驶计算***可以能够与车辆的各种部件进行通信,以便根据存储器130的自主控制软件控制车辆100的运动,这在下面进行进一步讨论。例如,返回图1,计算设备110可以与车辆100的各种***(诸如减速***160、加速***162、转向***164、信号(signaling)***166、路线选择***168、定位***170、感知***172和动力***174(即车辆的发动机或马达))通信,以便根据存储器130的指令134控制车辆100的运动、速度等。同样,尽管这些***被示为在计算设备110的外部,但是实际上,这些***也可以被并入计算设备110中,同样作为用于控制车辆100的自主驾驶计算***。
作为示例,计算设备110可以与减速***160和/或加速***162(诸如制动器、加速器踏板和/或车辆的引擎或马达)的一个或多个致动器交互,以便控制车辆的速度。类似地,计算设备110可以使用转向***164(诸如方向盘、转向轴和/或齿条和小齿轮***中的小齿轮和齿条)的一个或多个致动器,以便控制车辆100的方向。例如,如果车辆100被配置为在道路上使用,诸如汽车或卡车,则转向***可以包括一个或多个致动器,以控制车轮的角度来使车辆转弯。信号***166可以由计算设备110使用,以便通过例如在需要时点亮转向信号或制动灯来向其他驾驶员或车辆发信号通知车辆的意图。
计算***110可以使用路线选择***168来确定并沿循到达位置的路线。在这方面,路线选择***168和/或数据132可以存储详细的地图信息,例如,高度详细的地图,其标识道路的形状和高程、车道线、交叉路口、人行横道、限速、交通信号、建筑物、标志、实时交通信息、植被或其他这样的对象和信息。
图2是包括交叉路口202和204的一段道路的地图信息200的示例。在此示例中,地图信息200包括标识车道线210、212、214、交通信号灯220、222、人行横道230、人行道240、停车标志250、252和让车标志260的形状、位置和其他特性的信息。尽管此处将地图信息描绘为基于图像的地图,但地图信息不必完全基于图像(例如栅格)。例如,地图信息可以包括诸如道路、车道、交叉路口以及这些特征之间的连接的信息的一个或多个道路图形或图形网络。每个特征可以被存储为图形数据,并且可以与诸如地理位置及其是否与其他相关特征有联系的信息关联,例如,停车标志可以与道路和交叉路口等有联系。在一些示例中,关联的数据可以包括道路图形的基于网格的索引,以允许有效地查找特定道路图形特征。
计算设备110可以使用定位***170,以便确定车辆在地图上或地球上的相对或绝对位置。例如,定位***170可以包括GPS接收器,以确定设备的纬度、经度和/或高度位置。其他位置***(诸如基于激光的定位***、惯性辅助GPS或基于相机的定位)也可以用于识别车辆的位置。车辆的位置可以包括绝对地理位置,诸如纬度、经度和高度,以及相对位置信息,诸如相对于紧靠其周围的其他汽车的位置,其通常可以用比绝对地理位置低的噪声来确定。
定位***170还可以包括与计算设备110通信的其他设备,诸如加速度计、陀螺仪或其他方向/速度检测设备,以确定车辆的方向和速度或对其的改变。仅通过示例的方式,加速设备可以确定其相对于重力方向或垂直于其的平面的俯仰、偏航或横滚(或对其的改变)。该设备还可以跟踪速度的增加或减少以及这样的改变的方向。如本文阐述的设备的位置和取向数据的提供可以自动地提供给计算设备110、其他计算设备以及前述的组合。
感知***172还包括用于检测该车辆外部的对象(诸如其他车辆、道路中的障碍物、交通信号、标志、树木等)的一个或多个部件。例如,感知***172可以包括激光器、声纳、雷达、相机和/或记录可以由计算设备110处理的数据的任何其他检测设备。在车辆是诸如小型厢旅车的乘用车的情况下,小型厢旅车可以包括安装在车顶或其他便利位置的激光器或其他传感器。例如,图3是车辆100的示例外部视图。在该示例中,车顶顶部壳体310和圆顶壳体312可包括激光雷达传感器以及各种相机和雷达单元。另外,位于车辆100的前端的壳体320和在车辆的驾驶员和乘客侧的壳体330、332可以各自存储激光雷达传感器。例如,壳体330位于驾驶员门360的前面。车辆100还包括用于雷达单元和/或相机的壳体340、342,其也位于车辆100的车顶上。附加雷达单元和相机(未示出)可以位于车辆100的前端和后端处和/或沿着车顶或车顶顶部壳体310的其他位置上。
计算设备110可以通过控制各种部件来控制车辆的方向和速度。举例来说,计算设备110可以使用来自详细地图信息的数据和路线选择***168完全自主地将车辆导航到目的地位置。在需要安全到达该位置时,计算设备110可以使用定位***170来确定车辆的位置并使用感知***172来检测对象并对对象做出响应。为了这样做,计算设备110可以使车辆加速(例如,通过增加由加速***162提供给发动机的燃料或其他能量)、减速(例如,通过减少供应给发动机的燃料、改变档位和/或通过由减速***160施加制动)、改变方向(例如,通过转向***164转动车辆100的前轮或后轮)和发信号通知这样的改变(例如,通过点亮信号***166的转向信号)。因此,加速***162和减速***160可以是包括在车辆的发动机和车辆的车轮之间的各种部件的传动***的一部分。同样,通过控制这些***,计算设备110也可以控制车辆的传动***,以便自主地操纵车辆。
车辆100的计算设备110还可以接收来自其他计算设备的信息或将信息传送到其他计算设备,诸如,作为运输服务的一部分的那些计算设备以及其他计算设备。图4和图5分别是示例***400的示意图和功能图,该示例***400包括经由网络460连接的多个计算设备410、420、430、440和存储***450。***400还包括车辆100,以及可以与车辆100相同或相似地被配置的车辆100A。尽管为了简单起见仅描绘了少量车辆和计算设备,但是一般的***可以包括显著更多的车辆和计算设备。
如图4所示,计算设备410、420、430、440中的每一个可以包括一个或多个处理器、存储器、数据和指令。可以类似于计算设备110的一个或多个处理器120、存储器130、数据132和指令134来配置这样的处理器、存储器、数据和指令。
网络460和中间节点可以包括各种配置和协议,包括诸如蓝牙、蓝牙LE的短距离通信协议、互联网、万维网、内联网、虚拟专用网、广域网、局域网、使用一个或多个公司专有的通信协议的专用网络、以太网、WiFi和HTTP以及上述的各种组合。能够向和从其他计算设备传输数据的任何设备(诸如调制解调器和无线接口)可以促进这样的通信。
在一个示例中,一个或多个计算设备110可以包括具有多个计算设备的一个或多个服务器计算设备,例如负载平衡服务器场,该一个或多个服务器计算设备与网络的不同节点交换信息,以用于接收、处理和传输去往和来自其他计算设备的数据的目的。例如,一个或多个计算设备410可以包括一个或多个服务器计算设备,其能够经由网络460与车辆100的计算设备110或车辆100A的类似计算设备以及计算设备420、430、440进行通信。例如,车辆100、100A可以是可以由服务器计算设备调度到各个位置的车队的一部分。在这方面,服务器计算设备410可以用作验证计算***,该验证计算***可以用于验证诸如车辆100和车辆100A的车辆可以用于在自主驾驶模式下操作的自主控制软件。另外,服务器计算设备410可以使用网络460传输信息并在诸如计算设备420、430、440的显示器424、434、444的显示器上向用户(诸如用户422、432、442)呈现信息。在这方面,计算设备420、430、440可以被认为是客户端计算设备。
如图4所示,每个客户端计算设备420、430、440可以是旨在供用户422、432、442使用的个人计算设备,并且具有通常关于个人计算设备使用的所有部件,包括一个或多个处理器(例如,中央处理单元(CPU))、存储数据和指令的存储器(例如,RAM和内部硬盘驱动器)、显示器(诸如,显示器424、434、444)(例如,具有屏幕的监视器、触摸屏、投影仪、电视或可操作为显示信息的其他设备)以及用户输入设备426、436、446(例如,鼠标、键盘、触摸屏或麦克风)。客户端计算设备还可以包括用于记录视频流的相机、扬声器、网络接口设备以及用于将这些元件彼此连接的所有部件。
尽管客户端计算设备420、430和440各自可以包括全尺寸个人计算设备,但是它们可以替代地包括能够通过诸如互联网的网络与服务器无线地交换数据的移动计算设备。仅通过示例的方式,客户端计算设备420可以是移动电话或诸如启用无线的PDA、平板PC、可穿戴计算设备或***或能够经由互联网或其他网络获得信息的上网本的设备。在另一示例中,客户端计算设备430可以是可穿戴计算***,如图4所示,示为手表。作为示例,用户可以使用小型键盘、小键盘、麦克风,借助相机使用视觉信号,或触摸屏来输入信息。
在一些示例中,客户端计算设备440可以是管理员或操作员用以审查情景结果、移交时间和验证信息的操作工作站,如下文进一步讨论。尽管在图4和5中仅示出了单个操作工作站440,但是在一般的***中可以包括任何数量的这样的工作站。另外,尽管将操作工作站描绘为台式计算机,但是操作工作站可以包括各种类型的个人计算设备,诸如膝上型计算机、上网本、平板计算机等。
与存储器130一样,存储***450可以是能够存储服务器计算设备410可访问的信息的任何类型的计算机化存储装置,诸如硬盘驱动器、存储卡、ROM、RAM、DVD、CD-ROM、可写和只读存储器。另外,存储***450可以包括分布式存储***,其中,数据存储在物理上可以位于相同或不同地理位置的多个不同的存储设备上。如图4和图5所示,存储***450可以经由网络460连接到计算设备,和/或可以直接连接到或并入计算设备110、410、420、430、440等中的任何一个。
存储***450可以存储各种类型的信息,这在下面更详细地描述。该信息可以由服务器计算设备(诸如一个或多个服务器计算设备410)获取或以其他方式访问,以便执行本文描述的一些或全部特征。例如,存储***450可以存储表示理想化的人类驾驶员的预期行为的验证模型。可以通过确立一组特性来生成验证模型。这些可以与响应时间有关,例如,与理想化的人类驾驶员一样,通过移动脚或手以改变车辆的制动、加速和/或转向行为来对视觉或可听刺激做出反应的响应时间。验证模型还可包括用于确定虚拟车辆应如何做出行为的一组规则。这些规则可以限定诸如虚拟车辆的路径、虚拟车辆的速度以及虚拟车辆如何对不同对象做出反应的行为。该组特性和该组规则可以允许验证模型控制虚拟车辆(即,制动、转弯等),就好像理想的人在控制虚拟车辆一样。这样的数据可以从现有的人类响应(或反应)研究中获得,或者可以通过运行实验来测试实际人类行为而生成。在这方面,实际上可以期望在许多情形下,验证模型表现得与人类驾驶员一样好或更好。
然而,与一般人类驾驶员不同,可以假定验证模型比自主车辆感知到其环境内的更多信息,甚至被遮挡的对象(例如,因为它们处于车辆的盲点或在另一对象后面)。换句话说,验证模型的感知甚至可以是“完美的”,甚至比对自主车辆所预期要好。这可以允许验证模型至少具有与名义上的人类一样的能力,同时在超人类的表现方面会犯错。例如,对于验证模型,驾驶行为(诸如反应时间和转弯)可能非常像人类,而感知可以几乎是“超人类的”。替代地,验证模型的感知可以仅在达某距离(例如300英尺或更多或更少)是完美的,并且超过该距离,验证模型可以具有不完美的感知或没有感知。作为另一替代方案,可以将验证模型的感知限制为特定的视野,或者使验证模型的感知将不包括一般人类驾驶员的盲点或遮挡区域。当然,这些仅是示例,并且模型的特征(包括行为或感知)可以更接近地建模人类表现或是超人类的。
除了验证模型之外,存储***450还可以存储多个情景。可以将情景生成为测试对行为不适当(例如,超速、跑过停车标志或红灯、不按规则驾驶等)的另一对象的响应的情况。在这方面,情景不仅是仅在周围行驶的车辆,而且还是其中车辆的响应对于车辆和任何其他对象的安全至关重要的情况。每个情景可以包括限定虚拟车辆的环境的信息,诸如限定诸如道路的形状、位置、方向等的特性的道路信息。另外,每个情景还可以包括对象信息,该对象信息限定对象的特性,诸如,诸如车辆、行人、骑行者、植被、路缘、车道线、人行道、人行横道、建筑物等的对象的形状、位置、取向、速度等。此外,每个情景可以包括与车辆100对应的虚拟车辆的特性,包括虚拟车辆的形状、位置、取向、速度等。此外,每个情景的环境和其他对象可以包括现实世界记录的数据(例如,由感知***(诸如车辆100的感知***172)生成的传感器数据)、纯合成对象或在仿真中创建的传感器数据或这些的任意组合。
每个情景还可以与“移交时间”或自主控制软件和验证模型被给予情景内对控制虚拟车辆的控制的时间关联。可以根据每个情景的情形为该情景自动选择移交时间。在某些情况下,移交时间可以由人类操作员进一步确认或手动调整,例如使用操作工作站440。在一个示例中,对于给定情景,如果自主车辆在该情景中在将来的某个预定时间段(诸如5秒或更多或更少)会与另一对象(诸如车辆、行人或骑行者)碰撞,则可以将此选择为移交时间。该示例假定自主车辆和其他对象都将在其当前路径上继续(即使在实际情景中并非如此)。然后,该移交时间可以被确认是合理的或由人类操作员调整。使用具有人工审查的用于移交时间的较简单的验证过程减少不必要的复杂性和计算,并可以在较大的数据集上提供更一致的结果。
还可以使用不同的方法来确定移交时间。例如,移交时间可以与人类驾驶员不太可能停止其行为的时间点(诸如人类驾驶员不再能够舒适地制动以避免碰撞的时间点)对应。替代地,移交时间可以与人类驾驶员的感知将变得不完美或小于某个特定阈值的时间点对应。在又一个示例中,如果情景导致自主控制软件造成虚拟车辆的碰撞,则在相同情况下用于验证模型的移交时间可以要早几秒。当然,这些示例中的任何一个也可以被确认为合理的或者由人类操作员进行调整。
作为另一示例,可以基于自主控制软件或验证模型的感知来确定移交时间。例如,具有不完美感知的验证模型或自主控制软件可能无法立即看到,或者更确切地说,观察到某个对象,即使该对象以其将需要紧急响应的方式进行行为。因此,移交时间可以与验证模型或自主控制软件将会或实际上应当观察到该对象的时间点对应。例如,如果有行人从停放的车辆后面走入道路,则具有完美感知的验证模型可以早早开始对该人做出反应,因为该验证模型或自主控制软件甚至在他或她在停放的车辆后面时也能观察到该行人走动。但是,具有不完美感知的验证模型或自主控制软件可能会稍后做出反应,因为该验证模型或自主控制软件直到他或她从停放的车辆后面走出来才看到或观察到该行人。当操作员手动设置移交时间时,该操作员也可以手动编码不完美的感知,例如,通过将移交时间设置为人从停放的车辆后面走出来的时间。
图6提供了与地图信息200对应的一段道路的情景的示例600。在该示例中,交叉路口602和604分别与交叉路口202和204对应。在这方面,车道线210、612、614,交通信号灯620、622,人行横道630,人行道640,停车标志650、652和让车标志660的形状、位置和其他特性与车道线210、212、214,交通信号灯220、222,人行横道230,人行道240,停车标志250、252和让车标志260的形状、位置其他特性对应。
在示例600中,与车辆100或车辆100A对应的虚拟自主车辆610正在接近交叉路口604。第二虚拟车辆620也正在接近交叉路口604。这种情景可能包括虚拟车辆620“表现不佳”,因为车辆620可以忽视停车标志650。在这种情景中,如果虚拟自主车辆610和虚拟车辆620以其当前速度继续接下来的5秒(即直到将来的预定时间段),则虚拟车辆将彼此碰撞。因此,示例600表示在移交时间的情景。
可以以各种方式来布置情景。例如,将情景分组为类别或以其他方式与类别关联,并且可以将这些类别分组在一起成为更大的类别分组。例如,在交叉路口的停车标志处右转的情景可以是一个类别。作为另一示例,示例600可以与虚拟车辆正通过交叉路口而没有转弯的其他情景一起被分组为一类别。类似地,可以将与停车标志有关的所有类别一起分组成停车标志情景的类别分组。此外,给定类别或类别组内的情景各自略微不同。例如,虚拟自主车辆和其他车辆的速度和位置可以在不同情景上更改以及其他车辆的行为也会更改。弯道或交叉路口的形状也可以变化。可以根据由人或自主车辆观察到的实际驾驶事件或根据由人类操作员想象的情况来生成不同的情景。通过将情景分组为类别,如下所论述,如果自主控制软件不执行得充分好,则将更容易看出自主控制软件的问题的所在。
另外,存储***450还可以存储将由车辆(诸如车辆100)用以在自主驾驶模式下操作车辆的自主控制软件。存储在存储***450中的该自主控制软件可以是尚未被验证的版本。一旦被验证,自主控制软件就可以被发送到例如车辆100的存储器130,以便由计算设备110用以在自主驾驶模式下控制车辆100。
示例方法
除了上述和附图中示出的操作之外,现在将描述各种操作。应当理解,不必以下面描述的精确顺序执行以下操作。而是,可以以不同的顺序或同时地处理各个步骤,并且还可以添加或省略步骤。
为了验证将被存储在存储器130中以供车辆100的计算设备110使用的自主控制软件,必须分别构建或确定验证模型、情景和移交时间。如上所述,可以由服务器计算设备(诸如服务器计算设备410)和/或一个或多个操作工作站(诸如操作工作站440)使用如上所论述的一组特性来生成验证模型。可以使用诸如车辆100或车辆100A的车辆的实际驾驶体验来生成情景并如上所论述确定适当的移交时间。该信息可以如上所述存储在存储***450中。
服务器计算设备410然后可以访问存储***450以便验证存储在存储***450中的自主控制软件。例如,服务器计算设备410可以逐类别、逐类别分组地运行自主控制软件和验证模型中的每一个经过存储***450的情景,以便评估表现。与一次运行所有类别中的所有情景相反,一次使用一个类别和/或类别分组来验证自主控制软件可以提供识别如何能够改进自主控制软件的机会。例如,自主控制软件和验证软件可以运行经过示例600的情景以及与示例600相同的类别或类别分组内的任何其他情景。
当运行自主控制软件经过给定情景时,情景的细节可以用于生成仿真。例如,如果需要,可以将情景的环境和对象转换成传感器数据,诸如感知***172的感知***将被期望将该传感器数据提供给将根据自主控制软件进行操作的车辆100的计算设备110。替代地,如果情景已经包括传感器数据,则可以简单地“播放”情景。在任一种情况下,自主控制软件都“体验”或处理情景,就好像该自主控制软件实际上在车辆100上运行一样。换句话说,自主控制软件仅被提供感知***172将能够检测的关于情景的信息,而不是情景的每个细节。例如,返回示例600,服务器计算设备410可以运行情景,使得自主控制软件被给予对详细地图信息200以及将由虚拟自主车辆610的感知***检测到的任何信息的访问。
自主控制软件可以针对每个情景仅选择虚拟自主车辆要遵循的一个响应。当然,由自主控制软件确定的响应将根据该软件的编程来确定。这些响应的实际特性可以由任意数量的变量决定,这些变量包括例如虚拟车辆的能力(制动、加速、转向控制等)以及自主车辆软件如何执行这样的响应。因此,仿真可以在给定选择的,或者更确切地说,确定的类型的响应的情况下提供情景的预期结果。该预期结果可以包括诸如虚拟自主车辆的最终姿态、情景中任何其他车辆或对象的最终姿态、响应时间、是否存在与任何对象的碰撞等的信息。
然后,预期结果可以用于评估自主控制软件的表现,或者更确切地说,确定自主控制软件“通过”还是“未通过”给定情景。例如,如果没有碰撞、如果没有碰撞并且在虚拟车辆和另一对象(本来可能与之有碰撞的对象)之间至少存在某最小缓冲距离(诸如2英尺或更多或更少)、如果没有碰撞并且车辆不需要进行不安全的操纵来避免碰撞(诸如通过驶离道路、超速、驶向迎面驶来的车辆、使用高的纵向或横向加速或猛冲(jerk)或其他危险的操纵)、如果没有碰撞并且开始对该情景中的潜在碰撞做出反应的反应时间不太慢(诸如,超过一秒的若干分之几、一秒、几秒或更多或更少,这取决于情景)、如果有碰撞但损伤的可能性非常低或任何其他这样的考虑,则自主控制软件可以通过情景。
分析损伤的可能性可以涉及使用给定情景的结果的特性来识别碰撞的属性,诸如在碰撞时虚拟车辆及其与之碰撞的对象的速度和/或冲击位置、冲击角度,以便使用已知的精算技术和对于车辆碰撞的计算来确定和量化预期的损伤结果。在这方面,可以使用损伤严重程度(severity)***(诸如,损伤严重程度的AIS分类(由汽车医学促进协会发布)或道路车辆功能安全的ISO26262标准中定义的严重程度等级)来量化预期的损伤结果,以帮助识别“通过”或“未通过”标准。举例来说,使用表2中的严重程度等级定义,可以认为具有严重程度级别S0或S1的碰撞为“通过”。所有其他碰撞可以被认为“未通过”。下面的表1提供了简易损伤评分***的示例表示,并且表2提供了上述ES级别与表1的AIS评分代码之间的映射。
表1
表2
除了运行自主控制软件经过情景之外,验证模型还可以运行经过情景以确定自主控制软件是否将通过情景。然而,不是将验证模型限制于将由感知***172提供给计算设备110的数据,验证模型被提供有关于情景的所有信息。在这方面,验证模型具有如上所述的完美感知,因此,被提供有比自主控制软件多的关于情景的信息。替代地,可以如以上任何示例中一样限制验证模型的感知。
另外,当评估验证模型的表现时,验证模型可以使用用于验证模型的一组特性和一组规则在预定的一组一般类型的响应的全部或子组下运行相同的情景。换句话说,验证模型实际上“替代了”自主控制软件。如图7的示例700所示,这些一般类别的响应可以包括制动(由路径A表示)、向右转弯(由路径B表示)、向左转弯(由路径C表示)、制动和向右转弯(由路径D表示)或制动和向左转弯(由路径E表示)。其他类型的响应也可以包括其他类型的反应,诸如什么都不做(即不改变加速度/减速度或方向)、在向左或向右转弯时加速、加速、或转弯、制动或以不同速率加速。
同样,将使用例如由人类操作员针对特定情景或情景类别选择的这样的响应的预定组或预定子组中的不同响应中的每个,运行验证模型经过情景。换句话说,示例600的情景,假定预定组包括与示例700中的可能路径A-E对应的一般类型的响应,则将针对五个可能路径中的每一个运行该情景一次。在这方面,验证模型将具有尝试该预定组中的每种类型的响应的机会,包括在每个情景中制动、向右转弯、向左转弯、制动并向右转弯、或制动并向左转弯。
同样,这些响应的实际特性可以由任意数量的变量决定,这些变量包括例如虚拟车辆的能力(制动、加速、转向控制等)以及验证模型如何根据用于验证模型的一组特性和一组规则执行这样的响应。可以针对某些情景、情景类别或所有情景调整或特别地选择该组规则。例如,该组规则可以限定模型是否应当忽略情景中的其他对象、尝试同等地避开情景中的所有对象或与其他类型的对象(例如路缘、中间带(medians)等)相比尝试更多地避开情景中的某些对象(诸如人、骑行者或其他车辆)。这些组规则还可以限定在响应于情景之前虚拟车辆的速度,诸如,例如,虚拟模型是否应保持恒定速度、模型是否应保持特定速度(每小时25英里或更多或更少)或者模型是否应使用自主控制软件确定的相同速度计划。该组规则还可以限定在响应于情景之前模型是否应遵循特定的几何形状(geometry)、模型是否应始终遵循相同的几何形状(例如,始终直行)或模型是否应使用自主控制软件确定的相同的几何形状。
在某些情况下,验证模型的某响应类型的特定特性以及虚拟车辆的加速度(横向和前向)也可以由该组规则来限定。例如,可以在该组规则或情景中编码制动的特定坡度,以使验证模型首先非常用力地开始施加制动(减速),但是一旦虚拟车辆达到一定级别的减速或速度,验证模型就可以以较缓的速率施加制动。
尽管示例预定组仅包括5种一般类型的响应,但是该组可以包括不同或其他类型的响应,诸如,什么都不做(即不改变加速度/减速度或方向)、在向左或向右转弯时加速或加速。作为另一示例,不是使用预定一组响应的全部或子组,人类操作员可以用“最佳”行为对验证模型进行编码,验证模型可以运行情景并根据验证模型预测对于给定情景什么将是最佳的响应,验证模型可以始终使用相同的响应(例如,始终继续直行),或者使验证模型沿循自主车辆软件针对给定情景确定的相同路径(即,相同的几何形状),但允许验证模型确定如何或是否改变虚拟车辆的速度。
可以使用与用于自主控制软件相同或相似的规则来确定使用响应中的给定一个响应验证模型是通过还是未通过情景。作为示例,基于例如以下中的任意一个,验证模型可以通过情景:如果没有碰撞、如果没有碰撞并且在虚拟车辆和另一对象之间至少存在某最小缓冲距离、如果没有碰撞并且车辆不需要进行不安全的操纵来避免碰撞、如果没有碰撞并且开始对情景中的潜在碰撞做出反应的反应时间不太慢,如上面的示例中所讨论。如果验证模型使用不同响应中的任何一个通过了情景,则可以认为该验证模型已经通过了该情景。在这方面,每对验证模型进行五次测试,就对自主控制软件进行一次测试。
然后,可以将情景的结果进行比较以与验证模型相比来评估自主控制软件的表现。在一个实例中,自主控制软件可能需要满足某些要求,诸如通过至少与验证模型一样多的情景。此外,为了给比较结果提供更大的实用性,并与验证模型相比,提供对自主控制软件的更有用的分析,可以通过汇总各个情景的评估或将其分组在一起来评估对于给定类别或类别分组的结果,以确定对于该给定类别或类别分组与验证模型相比自主控制软件的表现如何。例如,为了“通过”类别或类别分组,可以将自主控制软件的结果与验证模型的结果进行比较。
作为示例,为了通过给定类别,可能需要自主控制软件实现以下要求中的一个或多个:在给定类别内与验证模型相比在相等或更多数量的情景中避免碰撞;在给定类别的情景的全部或子组上实现大于或等于验证模型针对这些情景所实现的平均缓冲距离的平均缓冲距离;在给定类别的情景的全部或子组上实现大于或等于验证模型针对这些情景所实现的开始对潜在碰撞做出反应的平均反应时间的开始对潜在碰撞做出反应的平均反应时间;在给定类别的情景的全部或子组上实现小于或等于验证模型所实现的平均表现测度(metric)的平均表现测度(诸如,最大横向加速度或减速度、最大纵向加速度或减速度或猛冲);使虚拟车辆在给定类别的情景的全部或子组上执行与验证软件使虚拟车辆针对这些情景执行的操纵一样安全或更安全的操纵;以及在给定类别的情景的全部或子组上,与验证软件对于这些情景相比,不具有更多的某个严重程度级别或更大级别(诸如S2或S3)的碰撞。可以通过向由虚拟车辆执行的每种类型的操纵(例如,停留在车道内、离开车道、离开道路等)分配惩罚或得分值,并对自主控制软件和验证模型两者在多个情景上加算总得分,来评估对于给定情景类别的操纵的“安全性”。在此示例中,可以将那些总得分的值进行比较,以确定自主控制软件对验证模式的表现,或者更确切地说,确定自主控制软件对于给定类别的情景的结果是否与验证模型对于给定类别的情景的表现一样安全或比其更安全。如上所述,类别和类别分组内的这种粒度可以提供对可以在何处以及如何改进自主控制软件的更好的理解。
类似地,为了通过给定的类别分组,可能需要自主控制软件实现针对给定类别的前述要求中的一个或多个,但是不是在给定类别的情景上进行评估,可以在类别或类别分组内的所有情景上评估该要求。作为其一部分,在评估对于类别分组的那些要求时,可以加和或平均对于该类别分组内的多个类别的碰撞的数量、平均缓冲距离、平均反应时间、平均表现测度、操纵安全性总得分、某个严重程度级别或更大级别的碰撞的数量等,以便简化该过程。同样,如上所述,类别和类别分组内的这种粒度可以提供对可以在何处以及如何改进自主控制软件的更好的理解。
如果自主控制软件能够取决于如何进行评估满足对于所有情景、类别和/或类别分组的前述要求,则可以认为自主控制软件关于验证模型被验证,或者如果还使用了其他验证过程,则可以认为自主控制软件关于验证模型至少部分地被验证。换句话说,满足要求可以指示自主控制软件对于自主控制软件和验证模型在其上被运行的情景至少与验证模型一样好。替代地,如果自主控制软件对于特定情景类别无法满足前述要求,则可以对结果进行更详细的评估,以确定如何根据需要稍稍调整自主控制软件。可以重新运行情景并且按照需要评估自主控制软件。
可以仅单次、每次验证模型被更新、周期性地或者每次运行自主控制软件经过情景,来运行验证模型经过情景。通过每次运行自主控制软件经过情景时运行验证模型经过情景,这确保在验证自主车辆控制软件时考虑了对验证模型的任何最新改变。
图8包括用于验证自主控制软件的一些示例的示例流程图800,其可以由一个或多个处理器(诸如计算设备410的处理器)执行。例如,在框810处,运行自主控制软件经过驾驶情景单次,以观察该情景对于自主控制软件的结果。在框820处,运行验证模型经过驾驶情景多次,以对于多次中的每一次,观察该情景对于验证模型的结果。在框830处,基于情景对于自主控制软件的结果是否指示在自主控制软件控制下的虚拟车辆在单次期间与另一对象碰撞来确定自主控制软件是否通过驾驶情景。在框840处,基于情景对于验证模型的结果是否指示在验证模型控制下的虚拟车辆在多次中的任一次中与另一对象碰撞来确定验证模型是否通过驾驶情景。在框850处,基于确定验证自主控制软件。
除非另有说明,否则前述替代示例不是互相排斥的,而是可以以各种组合实现以取得独特的优点。由于可以在不脱离权利要求限定的主题的情况下利用以上讨论的特征的这些和其他变形以及组合,因此,对实施例的前述描述应当以说明的方式而不是以限制权利要求限定的主题的方式进行。另外,本文描述的示例以及用短语表达为“诸如”、“包括”等的分句的提供不应被解释为将权利要求的主题限制于特定示例。而是,这些示例仅旨在说明许多可能的实施例之一。此外,在不同附图中的相同附图标记可以标识相同或相似的元件。
Claims (20)
1.一种验证用于在自主驾驶模式下操作车辆的自主控制软件的方法,所述方法包括:
运行所述自主控制软件经过驾驶情景单次,以观察情景对于所述自主控制软件的结果;
运行验证模型经过所述驾驶情景多次,以对于多次中的每一次,观察情景对于所述验证模型的结果;
基于情景对于所述自主控制软件的结果是否指示在所述自主控制软件控制下的虚拟车辆在所述单次期间与另一对象碰撞来确定所述自主控制软件是否通过驾驶情景;
基于情景对于所述验证模型的结果是否指示在所述验证模型控制下的虚拟车辆在所述多次中的任一次中与另一对象碰撞来确定所述验证模型是否通过驾驶情景;以及
基于所述自主控制软件是否通过驾驶情景的确定和所述验证模型是否通过驾驶情景的确定来验证所述自主控制软件。
2.根据权利要求1所述的方法,其中,所述驾驶情景是给定类别的驾驶情景的多个驾驶情景中的一个,并且其中,验证所述自主控制软件是基于在给定类别的所述多个驾驶情景的全部上评估所述自主控制软件和所述验证模型的表现的。
3.根据权利要求2所述的方法,还包括:将所述自主控制软件通过的多个驾驶情景与在多次中至少通过一次的多个情景进行比较,并且其中,验证所述自主控制软件还基于所述比较。
4.根据权利要求1所述的方法,其中,运行所述验证模型经过所述驾驶情景多次包括:对于预定一组一般类型的响应中识别的每种类型的响应,运行所述情景一次。
5.根据权利要求1所述的方法,其中,所述多次中的每一次与所述验证模型的响应不同对应,使得所述多次中的第一次包括制动响应,所述多次中的第二次包括向右转弯响应,所述多次中的第三次包括向左转弯响应,所述多次中的第四次包括制动和向右转弯响应,并且所述多次中的第五次包括制动和向左转弯响应。
6.根据权利要求1所述的方法,其中,确定所述自主控制软件是否通过所述驾驶情景还基于与所述另一对象的任何碰撞的严重程度级别。
7.根据权利要求6所述的方法,其中,验证所述自主控制软件还基于所述严重程度级别。
8.根据权利要求1所述的方法,其中,确定所述验证模型是否通过所述驾驶情景还基于与所述另一对象的任何碰撞的严重程度级别。
9.根据权利要求8所述的方法,其中,验证所述自主控制软件还基于所述严重程度级别。
10.根据权利要求1所述的方法,还包括:识别移交时间,所述移交时间用于在情景中给予所述自主控制软件或所述验证模型对虚拟车辆的控制,所述移交时间与如果在情景中两个对象都在相应的当前轨迹上继续、则在虚拟车辆将与另一对象碰撞之前情景内的预定秒数对应,并且其中,所述移交时间用于运行所述验证模型经过所述驾驶情景并运行自主控制软件经过所述驾驶情景。
11.根据权利要求10所述的方法,其中,所述移交时间用于运行所述自主控制软件经过所述驾驶情景。
12.根据权利要求10所述的方法,还包括:将所述情景和所述移交时间提供给人类操作员以确认所述移交时间。
13.一种用于验证自主控制软件的***,所述自主控制软件用于在自主驾驶模式下操作车辆,所述***包括具有一个或多个处理器的一个或多个计算设备,所述一个或多个处理器被配置为:
运行所述自主控制软件经过驾驶情景单次,以观察情景对于所述自主控制软件的结果;
运行验证模型经过所述驾驶情景多次,以对于多次中的每一次,观察情景对于所述验证模型的结果;
基于情景对于所述自主控制软件的结果是否指示在所述自主控制软件控制下的虚拟车辆在所述单次期间与另一对象碰撞来确定所述自主控制软件是否通过驾驶情景;
基于情景对于所述验证模型的结果是否指示在所述验证模型控制下的虚拟车辆在所述多次中的任一次中与另一对象碰撞来确定所述验证模型是否通过驾驶情景;以及
基于所述自主控制软件是否通过驾驶情景的确定和所述验证模型是否通过驾驶情景的确定来验证所述自主控制软件。
14.根据权利要求13所述的***,其中,所述驾驶情景是给定类别的驾驶情景的多个驾驶情景中的一个,并且其中,验证所述自主控制软件是基于在给定类别的所述多个驾驶情景的全部上评估所述自主控制软件和所述验证模型的表现的。
15.根据权利要求14所述的***,其中,所述一个或多个处理器还被配置为:将所述自主控制软件通过的多个驾驶情景与在多次中至少通过一次的多个情景进行比较,并且其中,验证所述自主控制软件还基于所述比较。
16.根据权利要求13所述的***,其中,所述一个或多个处理器还被配置为:还基于与所述另一对象的任何碰撞的严重程度级别,确定所述自主控制软件是否通过所述驾驶情景。
17.根据权利要求13所述的***,其中,所述一个或多个处理器还被配置为:还基于与所述另一对象的任何碰撞的严重程度级别,确定所述验证模型是否通过所述驾驶情景。
18.根据权利要求13所述的***,其中,所述一个或多个处理器还被配置为:识别移交时间,所述移交时间用于在情景中给予所述自主控制软件或所述验证模型对虚拟车辆的控制,所述移交时间与如果在情景中两个对象都在相应的当前轨迹上继续、则在虚拟车辆将与另一对象碰撞之前情景内的预定秒数对应,并且其中,所述移交时间用于运行所述验证模型经过所述驾驶情景并运行自主控制软件经过所述驾驶情景。
19.根据权利要求13所述的***,还包括所述自主控制软件。
20.根据权利要求13所述的***,还包括所述验证模型。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/864,239 US10831636B2 (en) | 2018-01-08 | 2018-01-08 | Software validation for autonomous vehicles |
US15/864,239 | 2018-01-08 | ||
PCT/US2019/012713 WO2019136447A1 (en) | 2018-01-08 | 2019-01-08 | Software validation for autonomous vehicles |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111565990A CN111565990A (zh) | 2020-08-21 |
CN111565990B true CN111565990B (zh) | 2023-07-25 |
Family
ID=67139542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980007710.8A Active CN111565990B (zh) | 2018-01-08 | 2019-01-08 | 用于自主车辆的软件验证 |
Country Status (8)
Country | Link |
---|---|
US (3) | US10831636B2 (zh) |
EP (1) | EP3710327B1 (zh) |
JP (1) | JP7183273B2 (zh) |
KR (1) | KR102355257B1 (zh) |
CN (1) | CN111565990B (zh) |
AU (2) | AU2019205817B2 (zh) |
SG (1) | SG11202005671RA (zh) |
WO (1) | WO2019136447A1 (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3525374B1 (en) * | 2018-02-07 | 2021-10-06 | Volkswagen Aktiengesellschaft | Method for data communication between at least two participants of a wireless communication system, corresponding control unit and vehicle equipped with a control unit as well as computer program |
JP6806107B2 (ja) * | 2018-03-20 | 2021-01-06 | 日本電気株式会社 | 障害物認識支援装置、障害物認識支援方法、プログラム |
EP3584748A1 (de) * | 2018-06-20 | 2019-12-25 | Siemens Aktiengesellschaft | Verfahren zur erzeugung eines testdatensatzes, verfahren zum testen, verfahren zum betreiben eines systems, vorrichtung, steuerungssystem, computerprogrammprodukt, computerlesbares medium, erzeugung und verwendung |
US10896116B1 (en) | 2018-10-19 | 2021-01-19 | Waymo Llc | Detecting performance regressions in software for controlling autonomous vehicles |
US20200211394A1 (en) * | 2018-12-26 | 2020-07-02 | Zoox, Inc. | Collision avoidance system |
US11332132B2 (en) * | 2019-08-30 | 2022-05-17 | Argo AI, LLC | Method of handling occlusions at intersections in operation of autonomous vehicle |
US11494533B2 (en) * | 2019-11-27 | 2022-11-08 | Waymo Llc | Simulations with modified agents for testing autonomous vehicle software |
DE102020204867A1 (de) * | 2020-04-17 | 2021-10-21 | Volkswagen Aktiengesellschaft | Verfahren und System zum Betreiben einer Fahrmanöverplanung mindestens eines zumindest teilautomatisiert fahrenden Fahrzeugs |
US11886193B1 (en) * | 2020-06-04 | 2024-01-30 | Nuro, Inc. | Methods and apparatus for using scene-based metrics to gate readiness of autonomous systems |
EP3940487B1 (en) * | 2020-07-14 | 2023-09-20 | Zenuity AB | Estimation of probability of collision with increasing severity level for autonomous vehicles |
CN111881520B (zh) * | 2020-07-31 | 2022-01-11 | 广州文远知行科技有限公司 | 一种自动驾驶测试的异常检测方法、装置、计算机设备及存储介质 |
KR102335372B1 (ko) * | 2020-10-19 | 2021-12-06 | 주식회사 오비고 | QC(Quality Control) 검증앱을 이용하여 자율주행차량의 동작을 검증하는 방법 및 관제 서버 |
CN112559371B (zh) * | 2020-12-24 | 2023-07-28 | 北京百度网讯科技有限公司 | 一种自动驾驶测试方法、装置及电子设备 |
EP4291986A1 (en) * | 2021-02-12 | 2023-12-20 | Five AI Limited | Performance testing for trajectory planners |
US11932260B2 (en) | 2021-03-30 | 2024-03-19 | Motional Ad Llc | Selecting testing scenarios for evaluating the performance of autonomous vehicles |
CN113076261B (zh) * | 2021-04-29 | 2024-06-21 | 安徽江淮汽车集团股份有限公司 | 自动泊车测试方法、设备、存储介质及装置 |
US11834070B2 (en) * | 2021-07-08 | 2023-12-05 | Waymo Llc | Probabilistic simulation sampling from agent data |
US20230102929A1 (en) * | 2021-09-24 | 2023-03-30 | Embark Trucks, Inc. | Autonomous vehicle automated scenario characterization |
KR102625974B1 (ko) * | 2021-11-29 | 2024-01-18 | 주식회사 오비고 | 자율주행차량의 운행 검증에 필요한 검증 시나리오를 편집하는 방법 및 이를 이용한 서버 |
KR102434475B1 (ko) * | 2022-01-21 | 2022-08-19 | 주식회사 모라이 | 자율 주행 알고리즘의 성능 평가 방법 및 시스템 |
CN114501516B (zh) * | 2022-02-14 | 2024-03-12 | 成都市以太节点科技有限公司 | 一种车地无线通信切换室内测试方法及*** |
WO2023186296A1 (en) * | 2022-03-30 | 2023-10-05 | Siemens Aktiengesellschaft | Determination of an impact impa of deployment of an autonomous vehicle in an environment |
US20230356750A1 (en) * | 2022-05-09 | 2023-11-09 | Motional Ad Llc | Autonomous Vehicle Validation using Real-World Adversarial Events |
KR102579590B1 (ko) * | 2022-12-28 | 2023-09-18 | 도로교통공단 | 도로교통법 기반 자율주행차 운전능력 평가시나리오 생성 시스템 |
DE102023000357B3 (de) | 2023-02-06 | 2024-06-06 | Mercedes-Benz Group AG | Verfahren zum Erzeugen von Testdaten für eine Simulation eines Assistenzsystems eines zumindest teilweise assistiert betriebenen Kraftfahrzeugs, Computerprogrammprodukt, computerlesbares Speichermedium sowie elektronische Recheneinrichtung |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004090659A2 (en) * | 2003-04-10 | 2004-10-21 | Mukesh Dalal | Optimizing active decision making using simulated decision making |
US9483948B1 (en) * | 2015-08-07 | 2016-11-01 | International Business Machines Corporation | Automated control of interactions between self-driving vehicles and pedestrians |
CN106153352A (zh) * | 2016-07-04 | 2016-11-23 | 江苏大学 | 一种无人驾驶车辆测试验证平台及其测试方法 |
CN106991041A (zh) * | 2015-11-06 | 2017-07-28 | 福特全球技术公司 | 用于测试用于自主车辆的软件的方法和装置 |
CN107264534A (zh) * | 2017-05-23 | 2017-10-20 | 北京理工大学 | 基于驾驶员经验模型的智能驾驶控制***和方法、车辆 |
Family Cites Families (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4677691B2 (ja) | 2001-07-24 | 2011-04-27 | 株式会社日立製作所 | 自動車の制御方法 |
US8924049B2 (en) * | 2003-01-06 | 2014-12-30 | General Electric Company | System and method for controlling movement of vehicles |
US20070260438A1 (en) * | 2006-05-08 | 2007-11-08 | Langer William J | Vehicle testing and simulation using integrated simulation model and physical parts |
US7308327B2 (en) * | 2006-05-12 | 2007-12-11 | Ford Motor Company | Method of application protocol monitoring for programmable logic controllers |
GB0611960D0 (en) * | 2006-06-16 | 2006-07-26 | Ibm | Software testing method and system |
US20080091352A1 (en) * | 2006-10-11 | 2008-04-17 | O'hare James K | Automobile collision avoidance system |
US8626565B2 (en) * | 2008-06-30 | 2014-01-07 | Autonomous Solutions, Inc. | Vehicle dispatching method and system |
US20100057405A1 (en) * | 2008-08-28 | 2010-03-04 | Sony Corporation | Automated software testing environment |
US8473171B2 (en) * | 2008-10-09 | 2013-06-25 | GM Global Technology Operations LLC | Apparatus and method for optimizing a vehicle collision preparation response |
US8126642B2 (en) * | 2008-10-24 | 2012-02-28 | Gray & Company, Inc. | Control and systems for autonomously driven vehicles |
US8126736B2 (en) * | 2009-01-23 | 2012-02-28 | Warsaw Orthopedic, Inc. | Methods and systems for diagnosing, treating, or tracking spinal disorders |
WO2010101749A1 (en) * | 2009-03-05 | 2010-09-10 | Massachusetts Institute Of Technology | Predictive semi-autonomous vehicle navigation system |
WO2013066809A1 (en) * | 2011-11-01 | 2013-05-10 | Raytheon Company | System to establish trustworthiness of autonomous agent |
KR101703144B1 (ko) * | 2012-02-09 | 2017-02-06 | 한국전자통신연구원 | 차량의 자율주행 장치 및 그 방법 |
US8881126B2 (en) * | 2012-07-31 | 2014-11-04 | Oracle International Corporation | Systems and methods for testing a compiler through compile-time decision feedback |
WO2014106110A1 (en) * | 2012-12-31 | 2014-07-03 | Shuster, Gary, Stephen | Decision making using algorithmic or programmatic analysis |
KR20140095882A (ko) * | 2013-01-25 | 2014-08-04 | 삼성전자주식회사 | 모바일 장치를 검증하기 위한 테스트 시스템 및 이의 구동 방법 |
DE102013213171A1 (de) * | 2013-07-04 | 2015-01-08 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Betreiben eines Kraftfahrzeugs in einem automatisierten Fahrbetrieb |
JP2015049187A (ja) * | 2013-09-03 | 2015-03-16 | 株式会社日立製作所 | シミュレーション走行ルート生成方法およびそのシステム |
EP2865576B1 (en) | 2013-10-22 | 2018-07-04 | Honda Research Institute Europe GmbH | Composite confidence estimation for predictive driver assistant systems |
US9406177B2 (en) | 2013-12-20 | 2016-08-02 | Ford Global Technologies, Llc | Fault handling in an autonomous vehicle |
US9650051B2 (en) * | 2013-12-22 | 2017-05-16 | Lytx, Inc. | Autonomous driving comparison and evaluation |
US10380693B2 (en) | 2014-02-25 | 2019-08-13 | State Farm Mutual Automobile Insurance Company | Systems and methods for generating data that is representative of an insurance policy for an autonomous vehicle |
US10089693B1 (en) * | 2014-05-20 | 2018-10-02 | State Farm Mutual Automobile Insurance Company | Fully autonomous vehicle insurance pricing |
EP2990290B1 (en) * | 2014-09-01 | 2019-11-06 | Honda Research Institute Europe GmbH | Method and system for post-collision manoeuvre planning and vehicle equipped with such system |
CN111380545A (zh) * | 2015-02-10 | 2020-07-07 | 御眼视觉技术有限公司 | 用于自主车辆导航的方法、服务器、自主车辆以及介质 |
US20160314224A1 (en) | 2015-04-24 | 2016-10-27 | Northrop Grumman Systems Corporation | Autonomous vehicle simulation system |
US20160357262A1 (en) * | 2015-06-05 | 2016-12-08 | Arafat M.A. ANSARI | Smart vehicle |
US9604641B2 (en) * | 2015-06-16 | 2017-03-28 | Honda Motor Co., Ltd. | System and method for providing vehicle collision avoidance at an intersection |
DE102015010167B4 (de) * | 2015-08-11 | 2017-12-07 | Dspace Digital Signal Processing And Control Engineering Gmbh | Berechnung einer Solltrajektorie |
US9805605B2 (en) * | 2015-08-12 | 2017-10-31 | Madhusoodhan Ramanujam | Using autonomous vehicles in a taxi service |
US9587952B1 (en) | 2015-09-09 | 2017-03-07 | Allstate Insurance Company | Altering autonomous or semi-autonomous vehicle operation based on route traversal values |
US9751506B2 (en) * | 2015-10-27 | 2017-09-05 | GM Global Technology Operations LLC | Algorithms for avoiding automotive crashes at left and right turn intersections |
US10496766B2 (en) * | 2015-11-05 | 2019-12-03 | Zoox, Inc. | Simulation system and methods for autonomous vehicles |
DE102016220913A1 (de) * | 2015-11-06 | 2017-05-11 | Ford Global Technologies, Llc | Verfahren und Vorrichtung zur Generierung von Testfällen für autonome Fahrzeuge |
US10521215B2 (en) * | 2015-12-10 | 2019-12-31 | Intel Corporation | Technologies for customized crowd-sourced features, automated safety and quality assurance with a technical computing environment |
US10073965B2 (en) * | 2015-12-15 | 2018-09-11 | Nagravision S.A. | Methods and systems for validating an autonomous system that includes a dynamic-code module and a static-code module |
US9915543B2 (en) * | 2016-01-05 | 2018-03-13 | Allstate Insurance Company | Data processing system communicating with a map data processing system to determine or alter a navigation path based on one or more road segments |
US10474964B2 (en) * | 2016-01-26 | 2019-11-12 | Ford Global Technologies, Llc | Training algorithm for collision avoidance |
US10552573B2 (en) | 2016-03-18 | 2020-02-04 | Toyota Jidosha Kabushiki Kaisha | Vehicle simulation device for crowd-sourced vehicle simulation data |
US10346564B2 (en) | 2016-03-30 | 2019-07-09 | Toyota Jidosha Kabushiki Kaisha | Dynamic virtual object generation for testing autonomous vehicles in simulated driving scenarios |
US10054944B2 (en) * | 2016-04-01 | 2018-08-21 | Jaguar Land Rover Limited | System and method for configuring autonomous vehicle responses based on a driver profile |
CN105911986A (zh) | 2016-04-25 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | 无人驾驶车辆感知测试***和测试方法 |
ITUA20163204A1 (it) * | 2016-05-06 | 2017-11-06 | Cnh Ind Italia Spa | Apparato per la prevenzione automatica delle collisioni. |
EP3485337B1 (en) * | 2016-09-23 | 2020-10-21 | Apple Inc. | Decision making for autonomous vehicle motion control |
US10489529B2 (en) * | 2016-10-14 | 2019-11-26 | Zoox, Inc. | Scenario description language |
US10421460B2 (en) * | 2016-11-09 | 2019-09-24 | Baidu Usa Llc | Evaluation framework for decision making of autonomous driving vehicle |
EP3352028A1 (de) * | 2017-01-23 | 2018-07-25 | dSPACE digital signal processing and control engineering GmbH | Verfahren zum test einer steuergerätefunktion eines steuergeräts eines fahrzeugs |
CN106951627A (zh) * | 2017-03-15 | 2017-07-14 | 北京百度网讯科技有限公司 | 车辆自动驾驶的仿真测试方法、装置、设备及计算机可读存储介质 |
EP3605248A4 (en) * | 2017-03-31 | 2020-04-29 | Sony Corporation | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, COMPUTER PROGRAM, AND PROGRAM DESIGN METHOD |
US10884902B2 (en) * | 2017-05-23 | 2021-01-05 | Uatc, Llc | Software version verification for autonomous vehicles |
US11282016B2 (en) * | 2017-05-23 | 2022-03-22 | Uatc, Llc | Individualized risk vehicle matching for an on-demand transportation service |
US10431023B1 (en) * | 2017-08-21 | 2019-10-01 | Uber Technologies, Inc. | Systems and methods to test an autonomous vehicle |
US10885240B2 (en) * | 2017-11-02 | 2021-01-05 | Uatc, Llc | Deterministic simulation framework for autonomous vehicle testing |
AU2018267541A1 (en) | 2017-11-20 | 2019-06-06 | Ashok Krishnan | Systems and methods of training vehicles |
US10860018B2 (en) * | 2017-11-30 | 2020-12-08 | Tusimple, Inc. | System and method for generating simulated vehicles with configured behaviors for analyzing autonomous vehicle motion planners |
US10303178B1 (en) * | 2017-12-15 | 2019-05-28 | Waymo Llc | Collision mitigation static occupancy grid |
-
2018
- 2018-01-08 US US15/864,239 patent/US10831636B2/en active Active
-
2019
- 2019-01-08 AU AU2019205817A patent/AU2019205817B2/en not_active Ceased
- 2019-01-08 SG SG11202005671RA patent/SG11202005671RA/en unknown
- 2019-01-08 KR KR1020207019371A patent/KR102355257B1/ko active IP Right Grant
- 2019-01-08 WO PCT/US2019/012713 patent/WO2019136447A1/en unknown
- 2019-01-08 EP EP19735706.4A patent/EP3710327B1/en active Active
- 2019-01-08 JP JP2020533203A patent/JP7183273B2/ja active Active
- 2019-01-08 CN CN201980007710.8A patent/CN111565990B/zh active Active
-
2020
- 2020-09-23 US US17/029,663 patent/US11210200B2/en active Active
-
2021
- 2021-11-02 US US17/517,207 patent/US11645189B2/en active Active
-
2022
- 2022-03-30 AU AU2022202150A patent/AU2022202150B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004090659A2 (en) * | 2003-04-10 | 2004-10-21 | Mukesh Dalal | Optimizing active decision making using simulated decision making |
US9483948B1 (en) * | 2015-08-07 | 2016-11-01 | International Business Machines Corporation | Automated control of interactions between self-driving vehicles and pedestrians |
CN106991041A (zh) * | 2015-11-06 | 2017-07-28 | 福特全球技术公司 | 用于测试用于自主车辆的软件的方法和装置 |
CN106153352A (zh) * | 2016-07-04 | 2016-11-23 | 江苏大学 | 一种无人驾驶车辆测试验证平台及其测试方法 |
CN107264534A (zh) * | 2017-05-23 | 2017-10-20 | 北京理工大学 | 基于驾驶员经验模型的智能驾驶控制***和方法、车辆 |
Also Published As
Publication number | Publication date |
---|---|
US20210004313A1 (en) | 2021-01-07 |
AU2019205817B2 (en) | 2022-01-27 |
AU2019205817A1 (en) | 2020-07-09 |
CN111565990A (zh) | 2020-08-21 |
US20190213103A1 (en) | 2019-07-11 |
WO2019136447A1 (en) | 2019-07-11 |
US11210200B2 (en) | 2021-12-28 |
SG11202005671RA (en) | 2020-07-29 |
AU2022202150B2 (en) | 2022-07-14 |
EP3710327B1 (en) | 2023-11-08 |
JP2021509646A (ja) | 2021-04-01 |
US10831636B2 (en) | 2020-11-10 |
KR20200085363A (ko) | 2020-07-14 |
EP3710327A4 (en) | 2021-09-01 |
US20220100635A1 (en) | 2022-03-31 |
US11645189B2 (en) | 2023-05-09 |
AU2022202150A1 (en) | 2022-04-21 |
EP3710327A1 (en) | 2020-09-23 |
JP7183273B2 (ja) | 2022-12-05 |
KR102355257B1 (ko) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111565990B (zh) | 用于自主车辆的软件验证 | |
US10896122B2 (en) | Using divergence to conduct log-based simulations | |
US12005897B1 (en) | Speed planning for autonomous vehicles | |
US11385991B1 (en) | Collision evaluation for log-based simulations | |
CN114746323A (zh) | 用于测试自主车辆软件的具有修改的因素的模拟 | |
CN113692373B (zh) | 自动驾驶车辆服务的滞留和范围分析 | |
AU2018373022B2 (en) | Using discomfort for speed planning for autonomous vehicles | |
US20240083458A1 (en) | Using simulations to identify differences between behaviors of manually-driven and autonomous vehicles | |
US11926332B1 (en) | Assessing surprise for autonomous vehicles | |
US20230382400A1 (en) | Extracting agent intent from log data for running log-based simulations for evaluating autonomous vehicle software | |
CN112740188B (zh) | 使用偏差进行基于日志的模拟 | |
US20240017741A1 (en) | Validation of trajectory planning for autonomous vehicles | |
WO2022168671A1 (ja) | 処理装置、処理方法、処理プログラム、処理システム | |
WO2022202001A1 (ja) | 処理方法、処理システム、処理プログラム | |
WO2022168672A1 (ja) | 処理装置、処理方法、処理プログラム、処理システム | |
WO2023120505A1 (ja) | 方法、処理システム及び記録装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |