CN115933667A - 用于操作自主驾驶车辆的方法和*** - Google Patents
用于操作自主驾驶车辆的方法和*** Download PDFInfo
- Publication number
- CN115933667A CN115933667A CN202211619160.5A CN202211619160A CN115933667A CN 115933667 A CN115933667 A CN 115933667A CN 202211619160 A CN202211619160 A CN 202211619160A CN 115933667 A CN115933667 A CN 115933667A
- Authority
- CN
- China
- Prior art keywords
- path
- adv
- confidence
- segment
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000008447 perception Effects 0.000 claims abstract description 16
- 230000001133 acceleration Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 8
- 238000003062 neural network model Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 230000007423 decrease Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 12
- 230000033001 locomotion Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 238000007405 data analysis Methods 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 230000000284 resting effect Effects 0.000 description 3
- 238000002379 ultrasonic velocimetry Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000001953 sensory effect Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012887 quadratic function Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
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
- B60W60/0027—Planning or execution of driving tasks using trajectory prediction for other traffic participants
-
- 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
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- 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
- B60W30/143—Speed control
-
- 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
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
-
- 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
- B60W60/0015—Planning or execution of driving tasks specially adapted for safety
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/80—Spatial relation or speed relative to objects
-
- 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
- B60W2555/00—Input parameters relating to exterior conditions, not covered by groups B60W2552/00, B60W2554/00
- B60W2555/60—Traffic rules, e.g. speed limits or right of way
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/20—Data confidence level
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/40—High definition maps
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
- B60W2556/50—External transmission of data to or from the vehicle of positioning data, e.g. GPS [Global Positioning System] data
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Traffic Control Systems (AREA)
Abstract
本文描述用于操作自主驾驶车辆的方法和***,用于在ADV的规划模块生成的规划路径的至少一部分由于交通和/或路况变化而不确定时,保证ADV的控制级别的安全。规划模块在生成路径时,还基于一个或多个感知数据、地图信息或交通规则生成路径的每个段的置信度。离ADV越远,置信度降低。当ADV的控制模块获得路径和相关的置信度时,控制模块发出控制命令,只跟踪置信度超过阈值的一个或两个段,并对路径的其余部分发出默认控制命令。
Description
技术领域
本公开的实施例一般涉及操作自主驾驶车辆。更特别地,本公开的实施例涉及用于操作自主驾驶车辆的方法和***,其基于规划路径的置信度处理规划路径以确保安全。
背景技术
以自主模式(例如,无人驾驶)操作的车辆可以减轻乘坐者,尤其是驾驶员的一些驾驶相关责任。当以自主模式操作时,车辆可以使用车载传感器导航到各种位置,从而允许车辆以最小的人机交互或者在没有任何乘客的一些情况下行驶。
运动规划和控制是自主驾驶的关键操作。然而,传统的运动规划操作基于感知的环境生成路径,并且控制操作生成控制命令,以使车辆能够跟踪路径。
然而,在一些驾驶环境中,交通变化很快,并且几秒钟前基于当时现有交通和/或条件的规划路径可能不是对于车辆基于当前交通和/或路况的最佳路径。对于下一段时间的规划路径,当车辆到达那里时,有些部分可能是无效的。因此,如果车辆在不考虑交通和/或路况变化的情况下仍然沿着整条路径行驶,车辆可能会在行驶过程中暴露在危险的状况下,因为车辆会有效地沿着一条不反映实际行驶环境的路径行驶。
发明内容
一方面,本公开的实施例提供一种用于操作自主驾驶车辆(ADV)的方法,包括:
通过ADV生成包括多个段的路径,每个段具有不同的置信度;
通过所述ADV生成控制命令集的第一序列,以驱动所述ADV跟踪所述多个段中的一个或多个段,所述一个或多个段的每个的置信度超过预定阈值;
通过所述ADV调整所述路径的其余段的每个段,包括修正所述段的一个或多个参数;以及通过所述ADV生成控制命令集的第二序列,以驱动所述ADV跟踪所述路径的每个经调整的段。
另一方面,本公开的实施例提供一种非暂时性机器可读介质,其上存储有用于操作自主驾驶车辆(ADV)的指令,其中由处理器执行指令时,导致处理器执行如上所述的方法的操作。
另一方面,本公开的实施例提供一种数据处理***,包括:
处理器;以及
与处理器耦接的存储器,以存储用于操作自主驾驶车辆(ADV)的指令,指令由所述处理器执行时,导致所述处理器执行如上所述的方法的操作。
另一方面,本公开的实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序由处理器执行时,使所述处理器执行如上所述的方法。
根据本公开,基于规划路径的置信度处理规划路径,从而保证ADV的驾驶安全。
附图说明
本公开的实施例通过示例的方式示出并且不限于附图中的图,在附图中相同的附图标记表示相似的元件。
图1是示出根据一个实施例的联网***的框图。
图2是示出根据一个实施例的自主驾驶车辆的示例的框图。
图3A-3B是示出根据一个实施例的与自主驾驶车辆一起使用的自主驾驶***的示例的框图。
图4是示出根据一个实施例的决策和规划***的示例的框图。
图5是示出根据一个实施例的站-横向距离(station-lateral)图的框图。
图6A和6B是示出根据一些实施例的站时(station-time)图的框图。
图7是示出根据一个实施例的进行不确定性规划时的安全保证控制的***。
图8A和8B示出了具有不同置信度的两个规划路径的示例。
图9示出根据实施例为规划路径生成置信度的基于规则的算法。
图10示出根据实施例的基于规则的规划路径处理算法705。
图11示出根据一个实施例的提供安全保证控制的过程。
具体实施方式
将参考以下讨论的细节描述本公开的各个实施例和方面,并且附图将示出各个实施例。以下描述和附图是本公开的说明并且不应被解释为限制本公开。描述了许多具体细节以提供对本公开的各个实施例的全面理解。然而,在某些情况下,为了提供对本公开的实施例的简要讨论,没有描述公知或常规的细节。
说明书中对“一个实施例”或“实施例”的引用意味着结合该实施例描述的特定特征、结构或特性可包括在本公开的至少一个实施例中。在说明书中的各个地方出现的短语“在一个实施例中”不一定都指同一实施例。
根据一些实施例,本文描述了方法和***,用于在ADV的规划模块生成的规划路径的至少一部分由于交通和/或路况变化而不确定时,保证ADV的控制级别的安全。规划模块在生成路径时,还基于感知数据、地图信息或交通规则中的一个或多个生成路径的每个段的置信度。当ADV的控制模块获得路径和相关的置信度时,控制模块发出控制命令以只跟踪置信度超过阈值的一个或两个段,并对路径的其余部分发出默认控制命令。
在本发明所述的各个实施例中,路径和轨迹可互换使用。各个实施例可在控制模块中处理规划不确定性,从而确保在规划不确定性存在时驾驶过程更安全。
在一个实施例中,被修正的一个或多个参数包括ADV在此调整的段上的每个参考点处的速度、航向或加速度中的一个或多个。一个或多个参数的每个被修正为预定的常数值。
在一个实施例中,路径的多个段的每个段的置信度是使用一组规则基于感知数据、地图信息和路径规则生成的或者使用经训练的神经网络模型生成的。神经网络模型仅为路径的第一段生成置信度,并且其中规划模块为路径的其余部分提供默认置信度。
在一个实施例中,路径和路径的每个段的置信度以数据结构,诸如链表,从ADV的规划模块传递到的ADV的控制模块。
上述实施例并不是本发明的所有方面的详述。可以设想,本发明包括可以从以上总结的各种实施例的所有适当组合中实践的所有实施例,以及下面公开的那些实施例。
自主驾驶车辆
图1是示出根据本公开的一个实施例的自主车辆网络配置的框图。参考图1,网络配置100包括自主驾驶车辆(ADV)101,ADV 101可以通过网络102通信地耦接到一个或多个服务器103-104。尽管示出一个ADV,但是多个ADV可以通过网络102彼此耦接和/或耦接到服务器103-104。网络102可以是任何类型的网络,诸如局域网(LAN)、诸如因特网的广域网(WAN)、蜂窝网络、卫星网络、或其组合,有线或无线。服务器103-104可以是任何类型的服务器或服务器群集,诸如Web或云服务器、应用服务器、后端服务器或其组合。服务器103-104可以是数据分析服务器、内容服务器、交通信息服务器、地图和兴趣点(map and point ofinterest,MPOI)服务器或位置服务器等。
ADV指的是能够被配置为处于自主模式的车辆,在自主模式中,车辆在驾驶员很少或没有输入的情况下导航通过环境。这种ADV可包括具有一个或多个传感器的传感器***,传感器被配置为检测关于车辆操作于其中的环境的信息。车辆及其相关联的控制器使用检测的信息导航通过环境。ADV 101可以以手动模式、全自主模式或部分自主模式操作。
在一个实施例中,ADV 101包括但不限于自主驾驶***(ADS)110、车辆控制***111、无线通信***112、用户接口***113和传感器***115。ADV 101进一步可包括在普通车辆中包括的某些常见组件,诸如引擎、车轮、转向盘、变速器等,这些组件可以被车辆控制***111和/或ADS 110使用各种通信信号和/或命令(例如加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等)控制。
组件110-115可以经由互连、总线、网络或其组合彼此通信地耦接。例如,组件110-115可以经由控制器局域网(CAN)总线彼此通信地耦接。CAN总线是一种车辆总线标准,其被设计为允许微控制器和设备在没有主机的应用中彼此通信。它是基于消息的协议,最初被设计用于车辆内的多路电气布线,但是也用于许多其它环境中。
现在参考图2,在一个实施例中,传感器***115包括但不限于一个或多个相机211、全球定位***(GPS)单元212、惯性测量单元(IMU)213、雷达单元214以及光检测和测距(light detection and range,LIDAR)单元215。GPS***212可包括可操作以提供关于ADV的位置的信息的收发器。IMU单元213可基于惯性加速度感测ADV的位置和朝向变化。雷达单元214可以表示使用无线电信号感测ADV的局部环境内的对象的***。在一些实施例中,除了感测对象之外,雷达单元214还可以额外地感测对象的速度和/或航向。LIDAR单元215可以使用激光感测ADV所处的环境中的对象。LIDAR单元215可包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他***组件。相机211可包括一个或多个设备以捕获ADV周围的环境的图像。相机211可以是静态相机和/或摄影机。相机可以是机械可移动的,例如通过将相机安装在旋转和/或倾斜的平台上。
传感器***115进一步可包括其它传感器,诸如声纳传感器、红外传感器、转向传感器、油门传感器、制动传感器和音频传感器(例如麦克风)。音频传感器可以被配置为捕获来自ADV周围的环境的声音。转向传感器可以被配置为感测转向盘、车辆的车轮或其组合的转向角。油门传感器和制动传感器分别感测车辆的油门位置和制动位置。在一些情况下,油门传感器和制动传感器可以集成为集成的油门/制动传感器。
在一个实施例中,车辆控制***111包括但不限于转向单元201、油门单元202(也称为加速单元)和制动单元203。转向单元201用于调节车辆的方向或航向。油门单元202用于控制马达或引擎的速度,马达或引擎的速度转而控制车辆的速度和加速度。制动单元203通过提供摩擦力以使车辆的车轮或轮胎变慢来使车辆减速。注意,图2所示的组件可以以硬件、软件或其组合实现。
返回参考图1,无线通信***112允许在ADV 101和外部***,诸如设备、传感器、其他车辆等之间的通信。例如,无线通信***112可以直接或经由通信网络与一个或多个设备无线通信,例如经由网络102与服务器103-104通信。无线通信***112可以使用任何蜂窝通信网络或无线局域网(WLAN),例如使用WiFi与另一组件或***通信。无线通信***112可以例如使用红外链路、蓝牙等直接与设备(例如,乘客的移动设备、显示设备、车辆101内的扬声器)通信。用户接口***113可以是在车辆101内实现的***设备的部分,包括例如键盘、触摸屏显示设备、麦克风和扬声器等。
ADV 101的一些或所有功能可以由ADS 110控制或管理,尤其是当以自主驾驶模式操作时。ADS 110包括必要的硬件(例如,处理器、存储器、存储设备)和软件(例如,操作***、规划和路由程序),以从传感器***115、控制***111、无线通信***112和/或用户接口***113接收信息,处理接收的信息,规划从起点到目的地点的路线或路径,然后基于规划和控制信息驾驶车辆101。可替换地,ADS 110可以与车辆控制***111集成。
例如,作为乘客的用户可以例如经由用户接口指定行程的起始位置和目的地。ADS110获得行程相关数据。例如,ADS 110可以从MPOI服务器获得位置和路线数据,MPOI服务器可以是服务器103-104的部分。位置服务器提供位置服务,以及MPOI服务器提供地图服务和某些位置的POI。可替换地,这种位置和MPOI信息可本地缓存在ADS 110的永久存储设备中。
当ADV 101沿着路线移动时,ADS 110还可以从交通信息***或服务器(trafficinformation system or server,TIS)获得实时交通信息。注意,服务器103-104可以由第三方实体操作。可替换地,服务器103-104的功能可以与ADS 110集成。基于实时交通信息、MPOI信息和位置信息,以及由传感器***115检测或感测的实时局部环境数据(例如,障碍物、对象、附近车辆),ADS 110可规划最佳路线,并例如经由控制***111根据规划路线驾驶车辆101,以安全且高效地到达指定目的地。
服务器103可以是用以执行用于各种客户端的数据分析服务的数据分析***。在一个实施例中,数据分析***103包括数据收集器121和机器学习引擎122。数据收集器121从各种车辆(ADV或者是由人类驾驶员驾驶的常规车辆)收集驾驶统计123。驾驶统计123包括指示发出的驾驶命令(例如,油门、制动、转向命令)和由车辆的传感器在不同的时间点捕获的车辆的响应(例如,速度、加速度、减速度、方向)的信息。驾驶统计123进一步可包括描述不同的时间点的驾驶环境的信息,诸如路线(包括起始位置和目的地位置)、MPOI、道路状况、天气状况等。
基于驾驶统计123,机器学习引擎122出于各种目的而生成或训练一组规则、算法和/或预测模型124。然后,算法124可以被上传到ADV上以在自主驾驶期间实时地使用。
图3A和3B是示出根据一个实施例的与ADV一起使用的自主驾驶***的示例的框图。***300可以被实现为图1的ADV 101的部分,包括但不限于ADS 110、控制***111和传感器***115。参考图3A-3B,ADS 110包括但不限于定位模块301、感知模块302、预测模块303、决策模块304、规划模块305、控制模块306、和路由模块307。
模块301-307中的一些或全部可以以软件、硬件或其组合实现。例如,这些模块可被安装在永久存储设备352中,加载到存储器351中,并由一个或多个处理器(未示出)执行。注意,这些模块中的一些或全部可以通信地耦接到图2的车辆控制***111的一些或全部模块或与之集成。模块301-307中的一些可以被集成在一起作为集成模块。
定位模块301确定ADV 300的当前位置(例如,利用GPS单元212)并管理与用户的行程或路线有关的任何数据。定位模块301(也称为地图和路线模块)管理与用户的行程或路线有关的任何数据。用户可以例如经由用户接口登录并指定行程的起始位置和目的地。定位模块301与ADV 300的其他组件交流诸如地图和路线数据311,以获得与行程有关的数据。例如,定位模块301可以从位置服务器和地图与POI(MPOI)服务器获得位置和路线数据。位置服务器提供位置服务,以及MPOI服务器提供地图服务和某些位置的POI,它们可作为地图和路线数据311的部分被缓存。当ADV 300沿着路线移动时,定位模块301还可以从交通信息***或服务器获得实时交通信息。
基于由传感器***115提供的传感器数据和由定位模块301获得的定位信息,由感知模块302确定对周围环境的感知。感知信息可以表示普通驾驶员将感知到的驾驶员正在驾驶的车辆周围的情况。感知可包括车道配置、交通灯信号、例如以对象形式的另一车辆、行人、建筑物、人行横道或其它交通相关标志(例如,停止标志、让步标志)等的相对位置。车道配置包括描述一个或多个车道的信息,诸如,例如车道的形状(例如,直的或弯曲的)、车道的宽度、道路中的车道数量、单向或双向车道、合并或分离车道、驶出车道等。
感知模块302可包括计算机视觉***或计算机视觉***的功能,以处理和分析由一个或多个相机捕获的图像,以便识别ADV的环境中的对象和/或特征。对象可包括交通信号、车行道边界、其他车辆、行人和/或障碍物等。计算机视觉***可使用对象识别算法、视频跟踪和其它计算机视觉技术。在一些实施例中,计算机视觉***可以映射环境、跟踪对象、以及估计对象的速度等。感知模块302还可基于由诸如雷达和/或LIDAR的其他传感器提供的其他传感器数据检测对象。
对于每个对象,预测模块303预测对象将在环境下表现什么。鉴于一组地图/路线信息311和交通规则312,基于感知在时间点的驾驶环境的感知数据执行预测。例如,如果对象是在相反方向上的车辆并且当前驾驶环境包括十字路口,则预测模块303将预测车辆将可能直线向前移动还是转弯。如果感知数据指示十字路口没有交通灯,则预测模块303可以预测车辆在进入十字路口之前可能必须完全停止。如果感知数据指示车辆当前处于仅左转弯车道或仅右转弯车道,则预测模块303可预测车辆将更可能分别进行左转弯或右转弯。
对于每个对象,决策模块304作出关于如何处理该对象的决策。例如,对于特定对象(例如,在交叉路线中的另一车辆)以及描述该对象的元数据(例如,速度、方向、转向角),决策模块304决定如何遇到该对象(例如,超车、让行、停止、通过)。决策模块304可根据一组规则,诸如交通规则或驾驶规则312作出这些决策,这组规则可存储于永久存储设备352中。
路由模块307被配置为提供从起点到目的地点的一条或多条路线或路径。对于例如从用户接收到的从起始位置到目的地位置的给定行程,路由模块307获得路线和地图信息311并且确定从起始位置用以到达目的地位置的所有可能的路线或路径。路由模块307可以为其确定的从起始位置用以到达目的地位置的每条路线生成地形图形式的参考线。参考线是指没有来自诸如其它车辆、障碍物或交通状况的其它者的任何干扰的理想路线或路径。也就是说,如果在道路上没有其它车辆、行人或障碍物,则ADV应该精确地或紧密地跟随参考线。然后,地形图被提供给决策模块304和/或规划模块305。决策模块304和/或规划模块305检查所有可能的路线,以鉴于由其它模块提供的其它数据(诸如来自定位模块301的交通状况、由感知模块302感知的驾驶环境和由预测模块303预测的交通状况)选择和修正最佳路线中的一个。取决于在时间点的特定驾驶环境,用于控制ADV的实际路径或路线可以接近或不同的于由路由模块307提供的参考线。
基于对于每个感知的对象的决策,规划模块305使用由路由模块307提供的参考线作为基础规划用于ADV的路径或路线以及驾驶参数(例如,距离、速度和/或转向角)。也就是说,对于给定对象,决策模块304决策对该对象做什么,而规划模块305确定如何做。例如,对于给定对象,决策模块304可以决策经过对象,而规划模块305可以确定是在对象的左侧还是右侧经过。规划和控制数据由规划模块305生成,包括描述车辆300在下一个移动周期(例如,下一个路线/路径段)中将如何移动的信息。例如,规划和控制数据可指示车辆300以30英里每小时(mph)的速度移动10米,然后以25mph的速度改变到右车道。
基于规划和控制数据,控制模块306通过根据由规划和控制数据限定的路线或路径向车辆控制***111发送适当的命令或信号控制和驾驶ADV。规划和控制数据包括足够的信息以沿着路径或路线在不同的时间点使用适当的车辆设置或驾驶参数(例如,油门、制动、转向命令)将车辆从路线或路径的第一点驾驶到第二点。
在一个实施例中,规划阶段在多个规划周期(也称为驾驶周期,诸如在100毫秒(ms)的每个时间间隔内)内执行。对于每个规划周期或驾驶周期,将基于规划和控制数据发出一个或多个控制命令。也就是说,对于每100ms,规划模块305规划下一个路线段或路径段,例如包括目标位置和ADV到达目标位置所需的时间。可替换地,规划模块305进一步可指定具体速度、方向和/或转向角等。在一个实施例中,规划模块305为下一预定的时间段,诸如5秒规划路线段或路径段。对于每个规划周期,规划模块305基于在先前周期中规划的目标位置规划用于当前周期(例如,下一个5秒)的目标位置。然后控制模块306基于当前周期的规划和控制数据生成一个或多个控制命令(例如,油门、制动、转向控制命令)。
注意,决策模块304和规划模块305可以集成为集成模块。决策模块304/规划模块305可包括导航***或导航***的功能,以确定用于ADV的驾驶路径。例如,导航***可以确定一系列速度和方向航向,以影响ADV沿着基本上避开感知的障碍物的路径的移动,同时大体使ADV沿着通向最终目的地的基于车行道的路径前进。目的地可以根据经由用户接口***113的用户输入而被设置。当ADV在操作时,导航***可以动态地更新驾驶路径。导航***可以并入来自GPS***的数据和一个或多个地图,以便确定用于ADV的驾驶路径。
图4是示出了根据一个实施例的决策和规划***的示例的框图。***400可以被实现为图3A-3B中的自主驾驶***300的一部分来执行路径规划和速度规划操作。参考图4,决策和规划***400(也称为规划和控制或PnC***或模块)包括,除其他外,路由模块307、定位/感知数据401、路径决策模块403、速度决策模块405、路径规划模块407、速度规划模块409、聚合器411和轨迹计算器413。
路径决策模块403和速度决策模块405可以作为决策模块304的一部分实现。在一个实施例中,路径决策模块403可包括路径状态机、一个或多个路径交通规则和站-横向距离(station-lateral)图生成器。路径决策模块403可以使用动态规划为路径/速度规划模块407和409生成粗略的路径配置文件作为初始约束。
在一个实施例中,路径状态机至少包括三种状态:巡航状态、变更车道状态和/或空闲状态。路径状态机提供先前的规划结果和重要信息,诸如ADV是在巡航还是在变更车道。路径交通规则可能是图3A中驾驶/交通规则312的一部分,包括可能影响路径决策模块的结果的交通规则。例如,路径交通规则可以包括交通信息,诸如附近的建筑交通标志,ADV可以避开有这种建筑交通标志的车道。路径决策模块403可以根据由路由模块307提供的状态、交通规则、参考线以及ADV的感知模块302感知到的障碍来决定如何处理感知到的障碍(即:忽略、超车、让路、停车、通过),作为粗略路径配置文件的一部分。
例如,在一个实施例中,粗略的路径配置文件是由成本函数生成的,该成本函数基于以下成本组成:路径曲率和参考线和/或参考点到障碍物的距离。选择参考线上的点,并将其移动到参考线的左边或右边,作为表示路径候选的候选运动。每一个候选运动具有相应的成本。参考线上的一个或多个点的候选运动的相关成本可以用动态规划的方法依次求解最优成本,每次一个点。
在一个实施例中,站-横向距离(SL)图生成器(未示出)生成SL图作为粗略路径配置文件的一部分。SL图是二维几何图(类似于x-y坐标平面),其包括由ADV感知的障碍信息。从SL图中,路径决策模块403可以根据障碍决策布局ADV路径。动态规划(也称为动态优化)是数学优化方法,它将待解决的问题分解为一系列值函数,每个值函数只需求解一次,并存储它们的解。下次出现相同的值函数时,只需查找之前计算的解,而不是重新计算它的解,从而节省计算时间。
速度决策过程405或速度决策模块包括速度状态机、速度交通规则和站时(ST)图生成器(未示出)。速度决策过程405或速度决策模块可以使用动态规划为路径/速度规划模块407和409生成粗略的速度配置文件作为初始约束。在一个实施例中,速度状态机包括至少两种状态:加速状态和/或减速状态。速度交通规则可能是图3A中驾驶/交通规则312的一部分,包括可能影响速度决策模块的结果的交通规则。例如,速度交通规则可以包括交通信息,诸如红灯/绿灯、交叉路线上的另一辆车等。从速度状态机的状态、速度交通规则、由决策模块403生成的粗略路径配置文件/SL图以及感知到的障碍,速度决策模块405可以生成粗略的速度配置文件来控制何时加速和/或减慢ADV。SL图生成器可以生成站时(ST)图作为粗略速度配置文件的一部分。
在一个实施例中,路径规划模块407包括一个或多个SL图、几何平滑器和路径成本模块(未示出)。SL图可以包括由路径决策模块403的SL图生成器生成的SL图。路径规划模块407可以使用粗略的路径配置文件(例如,SL图)作为初始约束,以使用二次规划重新计算最优参考线。二次规划(QP)涉及到受界限、线性等式和不等式约束的目标函数(例如,有几个变量的二次函数)的最小化或最大化。
动态规划与二次规划的一个区别是,二次规划一次性优化参考线上所有点的所有候选运动。几何平滑器可以应用平滑算法(诸如B样条或回归)到输出的SL图。路径成本模块可以使用路径成本函数重新计算参考线,以优化用于参考点的候选运动的总成本,例如,使用由QP模块执行的QP优化(未示出)。例如,在一个实施例中,总路径成本函数可以定义如下:
路径成本=∑点(航向)2+∑点(曲率)2+∑点(距离)2,
其中,将参考线上的所有点的路径成本相加,航向表示点相对于参考线的径向角度(例如方向)的差值,曲率表示由这些点相对于针对该点的参考线形成的曲线的曲率的差值,以及距离表示从点到参考线的横向(垂直于参考线的方向)距离。在一些实施例中,距离表示从点到参考线的目标位置或中间点的距离。在另一个实施例中,曲率成本是相邻点处形成的曲线的曲率值之间的变化。注意,参考线上的点可以被选为与相邻点距离相等的点。基于路径成本,路径成本模块可以使用二次规划优化而最小化路径成本(例如通过QP模块)来重新计算参考线。
速度规划模块409包括ST图、序列平滑器和速度成本模块。ST图可以包括由速度决策模块405的ST图生成器生成的ST图。速度规划模块409可以使用粗略的速度配置文件(例如,ST图)和路径规划模块407的结果作为初始约束来计算最佳ST曲线。序列平滑器可以对点的时间序列应用平滑算法(诸如B样条或回归)。速度成本模块可以使用速度成本函数重新计算ST图,以优化在不同时间点上的运动候选(例如,加速/减速)的总成本。
例如,在一个实施例中,总速度成本函数可以是:
速度成本=∑点(速度′)2+∑点(速度″)2+(距离)2,
其中,在所有时间进展点上对速度成本求和,速度’表示加速度值或在两个相邻点之间改变速度的成本,速度”表示加加速值,或加速度值的导数或在两个相邻点之间改变加速度的成本,以及距离表示从ST点到目的地位置的距离。在这里,速度成本模块通过使用二次规划优化而最小化速度成本(例如通过QP模块)来计算ST图。
聚合器411执行对路径和速度规划结果进行聚合的功能。例如,在一个实施例中,聚合器411可以将二维ST图和SL图组合成三维SLT图。在另一个实施例中,聚合器411可以基于SL参考线或ST曲线上的两个连续点进行插值(或填充附加点)。在另一个实施例中,聚合器411可以将参考点从(S,L)坐标转换为(x,y)坐标。轨迹发生器413可以计算出最终的轨迹来控制ADV 510。例如,基于由聚合器411提供的SLT图,轨迹生成器413计算(x,y,T)点的列表,指示ADV应该在什么时候通过特定的(x,y)坐标。
因此,路径决策模块403和速度决策模块405被配置为生成考虑障碍物和/或交通条件的粗略路径配置文件和粗略速度配置文件。针对关于障碍物的所有路径和速度决策,路径规划模块407和速度规划模块409根据障碍物,使用QP编程优化粗略路径配置文件和粗略速度配置文件,以生成路径成本和/或速度成本最小的最优轨迹。
图5是示出了根据一个实施例的SL图的框图。参考图5,SL图500有S水平轴,或站点,和L垂直轴,或横向距离。如上所述,SL坐标是相对的几何坐标系,它参考参考线上的特定的静止点,并遵循参考线。例如,(S,L)=(1,0)坐标可以表示在参考线上的静止点(即参考点)前方一米,且具有零米横向偏移。A(S,L)=(2,1)参考点可以表示沿参考线的静止参考点前方两米,以及与参考线垂直1米的横向偏移,例如左偏移。
参考图5,SL图500包括参考线501和由ADV 510感知到的障碍物503-509。在一个实施例中,障碍物503-509可被ADV 510的雷达或LIDAR单元在不同的坐标系中感知并转换为SL坐标系。在另一个实施例中,障碍物503-509可以是人为形成的障碍作为约束,以便决策和规划模块将不会在受约束的几何空间中搜索。在此示例中,路径决策模块可以为每个障碍物503-509生成决策,诸如避开障碍物503-508和轻推(非常接近)障碍物509(即,这些障碍物可能是其他车辆、建筑物和/或结构)的决策。然后,路径规划模块可以鉴于障碍物503-509基于路径成本,以如前所述的最小的总成本,使用QP规划对参考线501进行微调,重新计算或优化参考线501。在此示例中,ADV从障碍物509的左侧轻推或非常接近障碍物509。
图6A和6B是示出了根据一些实施例的ST图的框图。参考图6A,ST图600有站(或S)纵轴和时间(或T)横轴。ST图600包括曲线601和障碍物603-607。如前所述,ST图上的曲线601表示ADV在什么时候,离站点有多远。例如,(T,S)=(10000,150)可以表示在10000毫秒后,ADV距离静止点(即参考点)150米。在此示例中,障碍物603可以是要被避免的建筑物/结构,以及障碍物607可以是对应于超越行驶中的车辆的决策的人工障碍。
参考图6B,在此场景中,将人工障碍605添加到ST图610中作为约束。人工障碍可以是红灯或在距离站点参考点约S2的距离的车道上的行人的示例,如由ADV感知到的。障碍605对应的是“停止”ADV的决策,直到人工障碍在较晚的时间被移除(例如,交通灯由红色变为绿色,或行人不再在车道中)。
保证安全的控制
图7示出了根据一个实施例的进行不确定性规划时用于保证安全的控制的***。如图7所示,在规划模块305中可以提供置信度生成器701,用于为由规划模块305所规划的路径的每个段生成置信度。
在一个实施例中,规划模块305可以为后面的时间间隔(例如,下一个8秒)生成规划的路径(也称为规划路径)。每个规划路径可以是数据结构(例如,链表),其包括描述规划路径上每个参考点的多个参数的信息。用于每个参考点的参数可以包括速度、曲率和航向。参数指定ADV在每个参考点的预期动作或状态。
在此实施例中,规划模块305在生成规划路径707时,可将规划路径划分为多个段,每个段具有不同的置信度。例如,规划路径707被划分段为A 709、段B 711、以及段C 713。段A 709的置信度为100%,段B 711的置信度为90%,段C 713的置信度为60%。这些置信度只是说明性的示例。在许多情况下,规划路径可以具有从一个段到下一个段变化不大的置信指标。例如,具有三个段的规划路径可以有三个置信度,分别为100%、99%和95%。
在一个实施例中,路径的特定段的置信度越高,当在未来规划周期中生成新的轨迹时,ADV到达了这个特定的段时,规划模块305修正特定段的可能性就越小。
例如,对于具有100%置信度的段A,ADV将不会修正段,并因此将发出控制命令(例如,油门、刹车、转向控制命令)来跟踪段。对于置信度为60%的段C,当ADV到达该段时,ADV很可能修正路径段。
在一个实施例中,每个规划路径的置信度是对应于该规划路径的段的物理道路的段的交通和/或道路状况的反映。在真实的驾驶环境中,例如在交通和/道路状况不断变化的繁忙街道上,由于交通和/道路状况的变化,在特定时间(例如t0)生成的规划路径在另一个时间(例如t0+5)可能不是最优路径。相应的物理道路段距离ADV生成规划路径的时间越远,对应的路径段的置信度就越低,因为当ADV到达该道路段时,交通和/或道路状况将更加不确定。
在一个实施例中,置信度生成器701可以实现一种算法,该算法将感知数据、地图信息和交通规则作为输入,为规划路径707生成置信度。可替代地,经训练的神经网络模型可以用来生成规划路径707的置信度。
规划路径707和规划路径的不同段709、711和713的相关置信度可以传递703给控制模块306,控制模块306可以实现基于规则的路径处理算法705来处理规划路径707。
例如,控制模块306可以按顺序发出多组控制命令,以使ADV仅在路径段的相关置信度超过阈值(例如,95%)时才能以最低的成本跟踪路径段。对于那些路径段的置信度不超过阈值的路径段,控制模块306会按顺序发出多组默认控制命令。
因此,通过跟踪高置信度的路径段,ADV可以减少自身面临的危险,从而提高ADV的安全性。
图8A和8B示出了具有不同置信度的分布的规划路径的两个示例。图8A中所示的路径有三个段。第一段从t0501开始,到t5503结束,并且置信度为100%;第二段从t5503开始,到t7505结束,并且置信度为80%;以及第三段从t7505开始,到t8507结束,并且置信度为40%。如图所示,路径段的置信度随着路径段距离生成路径的时间t0越远而降低。
在图8B中,由于交通状况和/或道路状况的变化,规划路径的置信度分布相应地变化。虽然规划路径仍然有三个段,即第一段介于t0509和t5 511之间,置信度为100%,第二段介于t5511和t7513之间,置信度为80%,以及第三段介于t7513和t8515之间,置信度为40%,但置信度为100%的段远短于图8A中相应的段,而置信度为40%的段比图8A中相应的段长得多。此置信度分布可能反映了繁忙的交通和/或较差的道路状况,这给规划路径带来了更多的不确定性。
在一个实施例中,图8A和图8B中所示的路径可以在不同的规划周期中生成,其中图8B中的路径在较晚的规划周期中生成。
图9示出了根据实施例为规划路径生成置信度的基于规则的算法。此算法可以使用软件、硬件或两者的组合来实现。
如图9中所示,在操作901中,置信度生成器701检查所收集的规划路径上每个参考点的感知数据、地图信息和/或交通规则。
在操作903中,置信度生成器701确定在其间交通状况和道路状况都不可能发生变化的规划路径的段,并且给路径段分配100%的置信度。在此操作中,置信度生成器701可以首先确定在感知到的驾驶环境中是否有任何交通。如果在感知到的驾驶环境中没有交通,置信度生成器701可以确定交通状况不太可能改变,并可以计算出应该分配100%的置信度的规划路径的段。在一个实施例中,为了计算规划路径的段的长度,置信度生成器701可以基于ADV的感知范围和ADV在驾驶环境中可能的最大相对速度确定时间段。利用计算出的时间段,置信度生成器701可以基于此时间段计算出规划路径上的距离。
在一个实施例中,基于ADV的感知范围和ADV的最大相对速度计算的时间段是没有任何交通可以干扰ADV的操作的时间段。
在一个实施例中,感知范围是安装在ADV上的LiDAR设备或安装在ADV上的相机单元或安装在ADV上的雷达单元的最大探测距离,并且ADV的最大相对速度是驾驶环境的限速与ADV的当前速度之和。在一个实施例中,最大的相对速度表示ADV相对于从相反方向驶进感知范围的另一车辆的速度。
例如,如果ADV在限速35英里每小时的路段上以33英里每小时的速度行驶,并且具有500米(约0.310686英里)的感知范围的ADV的传感器没有检测到任何交通,置信度生成器701可以计算出时间段为0.310686/(35+33)=0.00456891176小时=16.45秒。因此,置信度生成器可以在最初16秒内为规划路径的段分配100%的置信度。
如果在感知区域内有交通,置信度生成器701可以确定ADV是否行驶在有实车道线的车道上,如果是,置信度生成器701也可以对在有实车道线的车道内的规划路径的段分配100%的置信度。
如果在感知范围内有交通,并且ADV没有行驶在有实车道线的车道上,置信度生成器701可以将100%的置信度分配给规划路径的预定段(例如,规划路径的前2秒)。假设无论交通状况和道路状况如何,规划路径的前两秒总是可靠的。
在操作905中,置信度生成器701识别在其间交通状况或道路状况可能发生变化的规划的下一个段,并为该路径段分配80%的置信度。
在一个实施例中,当感知区域中有交通时,并且ADV不是在有实车道线的车道上行驶时,交通状况可能发生变化。在这种情况下,置信度生成器701可以将接下来的4个段识别为下一个段。
在操作907中,置信度生成器107可以将60%的置信度分配给规划段的剩余部分。
在上述示例算法中,分配给每个段的置信度仅用于说明目的,并可基于实际实现进行更改。
上述算法是为规划路径生成置信度的一种方法,并且基于感知数据、地图数据和交通规则,可以使用许多其他算法或方法。
例如,另一种算法可以将任何规划路径仅划分为两个段,第一段的置信度为100%,规划路径的其余部分的置信度为50%。第一段按操作901中所述的方式确定。第二段是减去第一段后规划路径的剩余部分。
在另一个实施例中,用于为规划路径生成置信度的算法可以完全基于预测模块303。如果在特定段内,预测模块能够准确预测ADV周围的障碍物在特定段内的运动情况,则对规划路径的特定段给予100%的置信度。对于无法准确预测ADV周围的障碍物的规划路径的剩余部分,将给予50%的置信度。
在另一个实施例中,神经网络模型,例如卷积神经网络,可以基于从特定道路段收集的感知数据、地图信息和交通规则进行训练。经训练的神经网络模型可以被训练为只识别规划路径的第一段(例如,前2秒),并为第一段分配100%的置信度,以及为剩余路径提供50%的默认置信度。
图10示出了根据实施例的基于规则的规划路径处理算法705。此算法可以使用软件、硬件或两者的组合来实现。
在一个实施例中,在操作1001中,在从规划模块305接收到规划路径以及每个段的置信度之后,控制模块306可以执行对信息的分析,包括参考点和参考点的相关参数,以及路径的置信度。控制模块306可以在此操作中确定每个段中的参考点的数量。
在操作1003中,控制模块306可以识别置信度超过阈值的规划路径的一个或多个段。例如,如果规划路径包括三个段,分别具有100%、94%和50%的置信度。控制模块306可以将阈值设置为90%。因此可以识别出置信度为100%的段和置信度为94%的段。
在操作1005中,控制模块可以按顺序发出多组控制命令,以驱动ADV跟踪规划路径的一个或多个段。
在操作1007中,控制模块306可以在规划路径的其余部分保持恒定参数(例如,恒定速度、恒定曲率和恒定航向)。基于之前收集到的驾驶统计数据,可以预先确定恒定参数。例如,对于剩下的每一段,控制模块306可以发出命令,以保持35英里每小时的恒定速度,零曲率,和具有100%的置信度的最后一段的末尾处的ADV的航向。因此,ADV有效地忽略了规划路径的剩余段。
在一个实施例中,忽略规划路径的剩余段不会对ADV造成危险,因为在ADV到达任何剩余段之前,已经生成了新的规划路径来引导ADV。
在一个实施例中,忽略规划路径段意味着控制模块可以基于规划路径段的置信度动态调整控制参数。控制模块是模型预测控制,因此可以沿着规划路径预测预定的秒数(例如,3秒或5秒),并基于预定秒数的路径段的置信度提前采取行动。
作为说明性示例,如果规划模块生成包括具有100%置信度的路径段(例如,下一个5秒)的规划路径,控制模块一旦接收到规划路径,就可以发出控制命令,以增加加速,以驾驶车辆达到速度限制。然而,如果同一路径段的置信度只有40%,这意味着车辆只有40%的置信在未来5秒内没有障碍物,控制模块可以在进入路径段之前开始减速,并准备很快刹车,以防障碍物出现。
因此,控制模块可以发出控制命令,以使车辆达到置信度超过预定阈值(例如,期望速度、期望航向等)的路径段的预期驾驶状态。控制模块还可以对置信度低于预定阈值的路径段提前调整控制命令,以防一些危险的驾驶情况。如上所讨论的,调整控制命令的一种方法是在进入低置信度的路径段之前发出恒定的控制命令。
图11示出了根据一个实施例提供保证安全的控制的过程。该过程可以由处理逻辑执行,该处理逻辑可以包括软件、硬件或它们的组合。例如,该过程可以由图7中描述的规划模块305和控制模块306执行。
如图11中所示,在操作1101中,处理逻辑生成包括多个段的路径,每个段具有不同的置信度。在操作1103中,处理逻辑生成控制命令集的第一序列,以驱动ADV跟踪多个段中的一个或多个段,一个或多个段的每一个的置信度超过预定阈值。在操作1105中,处理逻辑调整路径的剩余段的每个段,包括修正段的一个或多个参数。在操作1107中,处理逻辑生成控制命令集的第二序列,以驱动ADV跟踪路径的每个经调整的段。
注意,如上所示和所述的一些或所有组件可以用软件、硬件或其组合实现。例如,这些组件可以被实现为安装并存储在永久存储设备中的软件,软件可以由处理器(未示出)加载并执行在存储器中以执行贯穿本申请所述的过程或操作。可替换地,这些组件可被实现为被编程或嵌入到专用硬件中的可执行代码,专用硬件诸如集成电路(例如,专用IC或ASIC)、数字信号处理器(DSP)或现场可编程门阵列(FPGA),可执行代码可经由来自应用的对应驱动器和/或操作***访问。此外,这些组件可以被实现为处理器或处理器内核中的特定硬件逻辑,作为经由一个或多个特定指令软件组件可访问的指令集的一部分。
已经关于对计算机存储器内的数据位的操作的算法和符号表示呈现了前述详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用来最有效地将他们的工作实质传达给本领域的其他技术人员的方式。算法在这里并且通常被认为是导致期望结果的自洽操作序列。这些操作是需要对物理量进行物理操纵的那些操作。
然而,应当记住的是,所有这些和类似的术语都与适当的物理量相关联,并且仅仅是应用于这些量的方便的标记。除非特别声明,否则从以上讨论中显而易见的是,应当理解的是,在整个说明书中,使用诸如所附权利要求书中所阐述的术语的讨论指的是计算机***或类似电子计算设备的动作和过程,所述计算机***或类似电子计算设备将计算机***的寄存器和存储器内的表示为物理(电子)量的数据操纵和变换成计算机***存储器或寄存器或其它这样的信息存储、传输或显示设备内的类似地表示为物理量的其它数据。
本公开的实施例还涉及用于执行本文的操作的装置。这种计算机程序存储在非瞬态计算机可读介质中。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机制。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪存设备)。
在前述附图中描述的过程或方法可以由包括硬件(例如,电路、专用逻辑等)、软件(例如,体现在非暂时性计算机可读介质上)或两者的组合的处理逻辑来执行。尽管以上根据一些顺序操作描述了过程或方法,但是应当理解的是,可以以不同的顺序执行所述的一些操作。此外,一些操作可以并行地而不是顺序地执行。
本公开的实施例不是参考任何特别编程语言描述的。将了解,可使用各种编程语言实施如本文所述的本公开的实施例的教示。
在前述说明书中,已经参考本公开的具体示例性实施例描述了本公开的实施例。显然,在不背离如所附权利要求书中所阐述的本公开的更宽的精神和范围的情况下,可以对其进行各种修正。因此,说明书和附图应被认为是说明性的而不是限制性的。
Claims (10)
1.一种用于操作自主驾驶车辆(ADV)的方法,包括:
通过ADV生成包括多个段的路径,每个段具有不同的置信度;
通过所述ADV生成控制命令集的第一序列,以驱动所述ADV跟踪所述多个段中的一个或多个段,所述一个或多个段的每个的置信度超过预定阈值;
通过所述ADV调整所述路径的其余段的每个段,包括修正所述段的一个或多个参数;以及
通过所述ADV生成控制命令集的第二序列,以驱动所述ADV跟踪所述路径的每个经调整的段。
2.如权利要求1所述的方法,其中被修正的一个或多个参数包括所述ADV在所述经调整的段上的每个点处的速度、航向或加速度中的一个或多个。
3.如权利要求2所述的方法,其中所述一个或多个参数的每个被修正为预定的常数值。
4.如权利要求1所述的方法,其中使用一组规则基于感知数据、地图信息和交通规则生成所述路径的多个段的每个段的置信度。
5.如权利要求1所述的方法,其中使用经训练的神经网络模型生成所述路径的多个段的每个段的置信度。
6.如权利要求1所述的方法,其中所述神经网络模型仅为所述路径的第一段生成置信度,并且其中所述规划模块为所述路径的其余部分提供默认置信度。
7.如权利要求1所述的方法,其中所述路径和所述路径的每个段的置信度从所述ADV的规划模块传递到所述ADV的控制模块。
8.一种非暂时性机器可读介质,其上存储有用于操作自主驾驶车辆(ADV)的指令,其中由处理器执行指令时,导致处理器执行如权利要求1至7中任一项所述的方法的操作。
9.一种数据处理***,包括:
处理器;以及
与处理器耦接的存储器,以存储用于操作自主驾驶车辆(ADV)的指令,指令由所述处理器执行时,导致所述处理器执行如权利要求1至7中任一项所述的方法的操作。
10.一种计算机程序产品,包括计算机程序,所述计算机程序由处理器执行时,使所述处理器执行如权利要求1至7中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/645,857 | 2021-12-23 | ||
US17/645,857 US20230202517A1 (en) | 2021-12-23 | 2021-12-23 | Safety guaranteed control when planning with uncertainty |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115933667A true CN115933667A (zh) | 2023-04-07 |
Family
ID=84536159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211619160.5A Pending CN115933667A (zh) | 2021-12-23 | 2022-12-14 | 用于操作自主驾驶车辆的方法和*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230202517A1 (zh) |
EP (1) | EP4151490B1 (zh) |
CN (1) | CN115933667A (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8457827B1 (en) * | 2012-03-15 | 2013-06-04 | Google Inc. | Modifying behavior of autonomous vehicle based on predicted behavior of other vehicles |
DE102014212478A1 (de) * | 2014-06-27 | 2015-12-31 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zur Erstellung eines Umfeldmodells eines Fahrzeugs |
US20190094865A1 (en) * | 2017-09-27 | 2019-03-28 | Toyota Research Institute, Inc. | Autonomous vehicle control systems and methods of operating a vehicle using the same |
US10928820B1 (en) * | 2019-11-12 | 2021-02-23 | Baidu Usa Llc | Confidence levels along the same predicted trajectory of an obstacle |
JP2023553980A (ja) * | 2020-12-14 | 2023-12-26 | メイ モビリティー,インコーポレイテッド | 自律車両安全プラットフォームシステム及び方法 |
US11787438B2 (en) * | 2020-12-17 | 2023-10-17 | Zoox, Inc. | Collaborative vehicle path generation |
WO2023129656A1 (en) * | 2021-12-29 | 2023-07-06 | Mobileye Vision Technologies Ltd. | Calculating vehicle speed for a road curve |
-
2021
- 2021-12-23 US US17/645,857 patent/US20230202517A1/en active Pending
-
2022
- 2022-12-14 CN CN202211619160.5A patent/CN115933667A/zh active Pending
- 2022-12-14 EP EP22213567.5A patent/EP4151490B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP4151490B1 (en) | 2024-02-28 |
US20230202517A1 (en) | 2023-06-29 |
EP4151490A1 (en) | 2023-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112572451A (zh) | 用于自主驾驶车辆执行的方法和装置 | |
CN112498365A (zh) | 基于置信度水平和距离、响应于障碍物的自动驾驶车辆的延迟决策 | |
US11485360B2 (en) | Dynamic speed limit adjustment system based on perception results | |
US11586209B2 (en) | Differential dynamic programming (DDP) based planning architecture for autonomous driving vehicles | |
CN113703436B (zh) | 用于路径规划的并行障碍物缓冲*** | |
US11567506B2 (en) | Speed planning guidance line for mild slow down | |
US11628858B2 (en) | Hybrid planning system for autonomous vehicles | |
CN112149487A (zh) | 一种用于自动驾驶的用于训练神经网络对象检测模型的用于确定锚框的方法 | |
EP3925844B1 (en) | Relative speed based speed planning for buffer area | |
CN113619597B (zh) | 自动驾驶车辆速度限制变更的规划*** | |
US11787440B2 (en) | Lane boundary and vehicle speed based nudge decision | |
US20230391356A1 (en) | Dynamic scenario parameters for an autonomous driving vehicle | |
CN115871712A (zh) | 操作自主驾驶车辆的方法和*** | |
EP3838697A1 (en) | Speed planning using a speed planning guideline for idle speed of autonomous driving vehicles | |
US20230053243A1 (en) | Hybrid Performance Critic for Planning Module's Parameter Tuning in Autonomous Driving Vehicles | |
EP3857327B1 (en) | Implementation of dynamic cost function of self-driving vehicles | |
EP4151490B1 (en) | Safety guaranteed control when planning with uncertainty | |
CN112601869B (zh) | 操作自主驾驶车辆的方法、机器可读介质及数据处理*** | |
US20240140432A1 (en) | Long-distance autonomous lane change | |
US20240025442A1 (en) | Trajectory planning in autonomous driving vehicles for unforeseen scenarios | |
US20240166239A1 (en) | Trajectory planning for navigating small objects on road | |
CN116009539A (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 |