控制自我和社会对象的安全性的方法和系统

文档序号:1803454 发布日期:2021-11-05 浏览:6次 >En<

阅读说明:本技术 控制自我和社会对象的安全性的方法和系统 (Method and system for controlling security of self and social objects ) 是由 丹尼尔·马克·格雷夫斯 于 2020-02-28 设计创作,主要内容包括:一种用于控制自我车辆和所述自我车辆的环境中的社会对象的安全性的方法或系统,包括:接收表示至少一个社会对象的数据并基于传感器数据而确定所述自我车辆的当前状态;基于所述当前状态,针对一组可能行为动作中的每一可能行为动作,预测对应于所述自我车辆的自我安全性值;针对每一可能行为动作,基于所述当前状态,预测对应于所述自我车辆的所述环境中的所述至少一个社会对象的社会安全性值;以及基于所述自我安全性值、所述社会安全性值及所述自我车辆的一个或多个目标来选择所述自我车辆的下一行为动作。(A method or system for controlling the security of an ego-vehicle and social objects in the environment of the ego-vehicle, comprising: receiving data representative of at least one social object and determining a current state of the ego-vehicle based on sensor data; predicting, based on the current state, a self-safety value corresponding to the ego-vehicle for each possible behavioral action in a set of possible behavioral actions; predicting, for each possible behavioral action, a social security value for the at least one social object in the environment corresponding to the ego-vehicle based on the current state; and selecting a next behavioral action of the ego-vehicle based on the ego-safety value, the social-safety value, and one or more goals of the ego-vehicle.)

控制自我和社会对象的安全性的方法和系统

相关申请

本申请要求于2019年2月28日提交的标题为“用于控制自我对象和社会对象的安全性的方法和系统(METHOD AND SYSTEM FOR CONTROLLING SAFETY OF EGO AND SOCIALOBJECTS)”的第62/811,936号美国临时专利申请案和2020年2月27日提交的标题为“用于控制自我对象和社会对象的安全性的方法和系统”的第16/803,386号美国专利申请案的权益的优先权,所述申请的内容以引用的方式并入本文中,如同全文再现一般。

技术领域

本申请涉及用于控制车辆和周围对象的安全性的系统。

背景技术

安全是自动驾驶系统(autonomous driving system,ADS)和高级驾驶员辅助系统(advanced driver assistance system,ADAS)的一个关键目标,包括受控车辆乘员的安全以及这些车辆附近其他人的安全。在这方面,安全可以分为两类,即以自我为中心或“自我”安全,也就是受控车辆(例如,自我车辆)及其乘员的安全;以及“社会”安全,即在自我车辆的环境内行动的其它对象的安全。

一些ADS和ADAS解决方案采用了自我车辆的控制主体,此控制主体已使用强化学习 (reinforcement learning,RL)技术进行训练。但是,已知的RL技术本质上往往会以自我为中心。考虑到控制其它对象的主体的行为,可以使用多主体RL方法,但是由于难以确定或理解控制其它对象的主体的策略,此类方法可能不准确。例如,难以确定另一车辆的驾驶员有没有正在注意。

出于上述原因和其它原因,我们对系统进行了改进,以保护自我车辆及其乘员以及在自我车辆的环境中行动的其它对象的安全。

发明内容

根据第一示例方面的是一种用于控制自我车辆及自我车辆的运行环境中的至少一个社会对象的安全性的方法。所述方法包括接收表示至少一个社会对象的数据,并基于传感器数据而确定自我车辆的当前状态。基于当前状态,针对一组可能行为动作中的每一可能行为动作,预测对应于自我车辆的自我安全性值。针对每一可能行为动作,基于当前状态,预测对应于自我车辆的环境中的所述至少一个社会对象的社会安全性值。基于自我安全性值、社会安全性值及自我车辆的一个或多个目标,选择自我车辆的下一行为动作。

在第一方面的至少一些示例中,针对每一可能行为动作,自我安全性值指示在所述可能行为动作由自我车辆执行且之后遵循目标策略的情况下障碍物不在自我车辆的自我安全区内的概率。社会安全性值指示对于所述至少一个社会对象,在所述可能行为动作由自我车辆执行且之后遵循目标策略的情况下自我车辆不在社会对象的社会安全区内的概率。

在先前方面的至少一些示例中,接收到的数据包括表示自我车辆的环境中的多个社会对象的数据。在此类示例中,所述方法包括:针对每一可能行为动作,预测每一个所述多个社会对象的相应社会安全性值,每一社会安全性值指示在所述可能行为动作由自我车辆执行且之后遵循目标策略的情况下自我车辆不在相应社会对象的相应社会安全区内的概率。

在先前方面的至少一些示例中,确定当前状态包括确定自我车辆的速度和方向,以及每一个所述多个社会对象的速度、方向和位置。

在先前方面的至少一些示例中,针对每一可能行为动作预测自我安全性值由经过训练的神经网络实现的通用值函数(general value function,GVF)执行。针对每一个所述多个社会对象的每一可能行为动作预测社会安全性值由经过训练的神经网络实现的另一GVF执行。

在先前方面的至少一些示例中,自我安全区包括物理空间,此物理空间包括且在自我车辆的行驶方向上延伸超出自我车辆,并且社会对象308的社会安全区包括且在社会对象的行驶方向上延伸超出社会对象。

在先前方面的至少一些示例中,针对每一可能行为动作,社会安全性值对应于自我车辆的环境中的多个社会对象,社会安全性值指示在所述可能行为动作由自我车辆执行且之后遵循目标策略的情况下自我车辆不在任一社会对象的相应社会安全区中的概率。

在先前方面的至少一些示例中,选择行为动作包括:通过将针对可能行为动作中的每一个预测的自我安全性值和社会安全性值中的每一个映射到相应的真值,执行自我安全性值和社会安全性值的模糊化;对真值应用模糊推理以产生目标模糊集合;以及将目标模糊集合去模糊以选择自我车辆的行为动作。

根据第二示例方面公开一种预测安全性控制系统。预测安全性控制系统包括:状态模块,用于基于传感器数据而确定当前状态;及自我安全性预测器模块,用于针对由动作模块产生的一组可能行为动作中的每一可能行为动作,基于当前状态而预测对应于自我车辆的自我安全性值。预测安全性控制系统还包括社会安全性预测器模块,所述社会安全性预测器模块用于针对可能行为动作中的每一个,基于当前状态而预测对应于自我车辆的环境中的至少一个社会对象的社会安全性值。安全性控制器用于基于针对可能行为动作中的每一个预测的自我安全性值和社会安全性值以及一个或多个目标来选择自我车辆的下一行为动作。

在示例实施例中,本文公开的系统和方法在一些情况下可以降低自我车辆采取的行为动作对诸如其它车辆和行人的社会对象造成的安全风险。本申请的系统和方法不仅考虑了自我车辆的安全,而且还考虑了社会对象的安全。在一些应用中,如本申请中所描述的社会安全性预测和自我安全性预测可应用于广泛环境,包括交叉路口处理、多车道高速公路驾驶、停车场、学校区域和其它极其需要社会安全的复杂环境。在一些示例中,社会安全性和自我安全性可以被视为独立的组成部分,从而可以在自动决策过程中为这些安全性分配不同的优先级。

附图说明

图1是与本申请的示例实施例相关的系统的示意图。

图2是根据本申请的一个示例实施例的包括车辆控制系统的车辆的框图。

图3是平面图或鸟瞰图,示出了道路交叉口附近的具有对应自我安全区的自我车辆和具有对应社会安全区的多个社会对象的示例。

图4是自我安全区的三维图。

图5是根据示例实施例的预测安全性控制系统的框图。

图6是根据示例实施例的图5的预测安全性控制系统的预测器模块的框图。

图7是图5的预测安全性控制系统的安全性控制器的框图。

图8是平面图或鸟瞰图,示出了停车场情形中具有对应自我安全区的自我车辆和具有对应社会安全区的多个社会对象的示例。

图9是平面图或鸟瞰图,示出了车道情形中具有对应自我安全区的自我车辆和具有对应社会安全区的多个社会对象的示例。

图10是根据示例实施例的表示通过图5的预测安全性控制系统采取的动作的框图。

图11是根据本申请的一个示例实施例的路径规划模块的框图。

图12是根据示例实施例的控制自我车辆及自我车辆环境中的至少一个社会对象的安全性的方法的流程图。

具体实施方式

下面是出现在本说明书中的所选首字母缩写词和术语及其相关定义的列表:

AC 以动作为条件

ACC 自适应巡航控制

动作 通过致动器实现的用于与环境交互的控制决策

ADAS 高级驾驶员辅助系统

ADS 自动驾驶系统

FIS 模糊推理系统

GVF 通用值函数

MPC 模型预测控制器

MCTS 蒙特卡罗树搜索

RL 强化学习

RPM 每分钟转数

状态 表示由一系列传感器构建的环境

TD 时间差

为方便起见,本申请参考机动车描述方法和系统的示例实施例,所述机动车例如是汽车、卡车、公共汽车、小艇或轮船、潜艇、飞机、仓库设备、建筑设备、拖拉机或其它农用设备。本申请的教示内容不限于任何特定类型的车辆,并且可以应用于不运载乘客的车辆以及运载乘客的车辆。本申请的教示内容还可以在包括但不限于自主真空吸尘器、漫游车(rover)、割草机、无人飞行器(unmanned aerial vehicle,UAV)和其它移动物体的移动机器人车辆中实施。

描述了旨在在包括例如ADS或ADAS的自动驾驶员替换或驾驶员辅助系统的车辆的背景下增强自我安全性和社会安全性的系统和方法的示例实施例。在这方面,自我安全性是指自我车辆(即,正在被控制的目标车辆)的安全性,而社会安全性是指自我车辆的环境内的社会对象的安全性。如本文中所使用,社会对象是指在环境中处于活动状态(即,移动或动态的,而不是固定在原处)的除自我车辆以外的对象。举例来说,社会对象可以包括非静止对象,例如但不限于其它车辆、自行车、踏板车、行人和动物。示例实施例涉及ADS(或ADAS)的规划系统的行为规划器,其中行为规划器用于预测可能的行为动作对自我车辆的安全(例如,自我安全性)以及自我车辆环境中的社会对象的安全(例如,社会安全性)的影响。在示例实施例中,可基于针对一组可能行为动作中的每一行为动作确定的预测自我安全性和预测社会安全性而选择合适的行为动作。因此,在至少一些示例实施例中,提高自我车辆和社会对象两者的安全性的问题可以通过以下来解决:配置行为规划器以考虑特定行为动作对自我车辆的安全以及对社会对象的安全产生的影响,并选择合适的行为动作来满足自我车辆和周围社会对象的安全要求。在示例实施例中,行为规划器的预测安全性控制系统用于评估以下两个问题:(a)如果遵循给定目标策略,那么自我车辆是否安全?;以及(b)如果遵循给定目标策略,那么自我车辆是否会使社会对象变得不安全?。

在至少一些示例中,除了自我安全性和社会安全性预测之外,还会针对不同类型的行为动作来预测自我舒适性,并且基于自我安全性、社会安全性和自我舒适性预测来选择特定行为动作。在这方面,自我舒适性对应于自我车辆乘员的身体和/或精神舒适度。举例来说,某种行为动作可能会使得自我车辆的线性或角加速度的速率是安全的,但是对于车辆的乘员而言在身体或精神上是不舒服的。

在至少一些示例中,预测函数用于进行安全性和任选地舒适性预测。这些预测函数可以使用通用值函数(general value function,GVF)框架通过强化学习(reinforcement learning,RL)来训练。可以在示例实施例中实施的GVF框架的示例在以下中描述:“R.Sutton,J.Modayil, M.Delp,T.Degris,P.Pilarski,A.White和D.Precup,“Horde:用于从非监督感觉运动交互中学习知识的可扩展实时架构(A scalable real-time architecture for learning knowledge from unsupervised sensorimotorinteraction)”,自动驾驶主体和多主体系统的第10届国际会议的会议记录,中国台湾台北,2011年。”强化学习(reinforcement learning,RL)能够通过学习经验,包括观察其它车辆的行为变化以及对安全性的影响,来处理其它车辆的随机和未知行为。RL 的示例在以下中描述:D.Silver,A.Huang,C.Maddison,A.Guez,L.Sifre,G.Driessche,J.Schrittwieser,I.Antonoglou和V.Panneershelvam,“利用深度神经网络和树搜索掌握围棋游戏(Mastering the game of Go with deep neural networks and treesearch)”,自然,第529卷,第 7587期,第484-489页,2016年。

系统概述

图1是根据本申请的示例实施例的示出系统100的选定元件的示意图,在此系统中可以实施用于控制车辆和周围对象的安全性的方法和系统。系统100包括嵌入在车辆105中的车辆控制系统115。在图2中更详细示出的车辆控制系统115耦合到车辆105的驾驶控制系统 150和机电系统190,如下文所描述。在各种实施例中,车辆控制系统115可使得车辆105能够以全自动、半自动或完全用户控制模式中的一种或多种来运行。

车辆105包括:多个环境传感器110,用于收集关于车辆100在其中运行的车辆105周围的外部环境的信息;及多个车辆传感器111,用于收集关于车辆105的运行状况的信息。环境传感器110可例如包括基于电磁(electromagnetic,EM)波的传感器,例如数码相机112、光探测与测距(light detection and ranging,LIDAR)单元114,及雷达单元116,如合成孔径雷达(SAR)单元。相机112、LIDAR单元114和雷达单元116位于车辆105周围,并且分别耦合到车辆控制系统115,如下文所描述。在示例实施例中,数码相机112、LIDAR单元 114和SAR单元116位于车辆105的前部、后部、左侧和右侧,以捕获关于车辆105的前部、后部、左侧和右侧的环境的信息。数码相机112、LIDAR单元114和雷达单元116安装或以其它方式定位成具有不同视场(fields of view,FOV)或覆盖区域,以便捕获关于车辆105周围环境的信息。在一些示例中,一些或所有邻近环境传感器110的FOV或覆盖区域部分地重叠。因此,车辆控制系统115接收由相机112、LIDAR单元114和雷达单元116收集的关于车辆105的外部环境的信息。在至少一些示例中,覆盖区域划分成区,包括例如前部区、后部区及右侧和左侧区。在至少一些示例中,相机112、LIDAR单元114和雷达单元116中的一个或多个配置有车载处理,并且可以在将所收集的信息作为传感器数据182提供到车辆控制系统115的其它系统之前对所收集的信息进行预处理。

车辆传感器111可以包括惯性测量单元(IMU)118、电子指南针119和其它车辆传感器 120,如速度计、转速计、车轮牵引力传感器、传动齿轮传感器、油门和制动器位置传感器,及转向角度传感器。在处于活动状态时,车辆传感器111反复地(例如,以规则的间隔)感测信息,并将感测到的信息作为传感器数据182实时地或近实时地提供给车辆控制系统115。车辆传感器111可以包括使用加速度计和陀螺仪的组合感测车辆的比力和角速率的IMU 118。车辆控制系统115还可使用从卫星接收器132和IMU 118接收到的信号来收集关于车辆105 的位置和定向的信息。车辆控制系统115可以使用来自卫星接收器132和车辆传感器111中的一个或多个的信息来确定车辆105的线速度、角速度、加速度、发动机RPM、传动齿轮和轮胎抓地力,以及其它因子。

车辆控制系统115还可包括一个或多个无线收发器130,使得车辆控制系统115能够与例如通信系统100的无线广域网(WAN)210的无线网络交换数据,以及任选地进行语音通信。车辆控制系统115可以使用无线WAN 210经由因特网等一个或多个通信网络220访问服务器240,例如驾驶辅助服务器。服务器240可以实施为数据中心中的一个或多个服务器模块,并且通常位于防火墙230的后面。服务器240连接到网络资源250,这些网络资源可以提供可供车辆控制系统115使用的补充数据源(例如,本地天气信息或由位于车辆105的运行环境中的其它环境传感器收集的信息,所述传感器例如是位于交通灯、道路标志、其它车辆等等上或与其集成的传感器)。

除了WAN 210之外,通信系统100还包括包含多个卫星的卫星网络260。车辆控制系统 115包括卫星接收器132(图2),卫星接收器132可以使用它从卫星网络260接收的信号来确定自己的位置。卫星网络260通常包括多个卫星,这些卫星是提供具有全球覆盖范围的自动地理空间定位的至少一个全球导航卫星系统(Global Navigation Satellite System,GNSS) 的一部分。例如,卫星网络260可以是GNSS卫星星座。示例GNSS包括美国NAVSTAR全球定位系统(GPS)或俄罗斯全球导航卫星系统(GLONASS)。已经部署的或正在开发的其它卫星导航系统包括欧盟的伽利略定位系统、中国的北斗导航卫星系统(BDS)、印度的区域卫星导航系统和日本的卫星导航系统。

图2示出根据本申请的示例实施例的车辆105的选定组件。如上文所提到,车辆105包括车辆控制系统115,此系统连接到驾驶控制系统150和机电系统190,还连接到环境传感器 110和车辆传感器111。车辆105还包括本领域中已知的各种结构元件,例如框架、车门、面板、座椅、窗户、后视镜等等,但是为了避免使本申请的教示内容不清楚,本申请中省略了这些结构元件。车辆控制系统115包括经由通信总线(未示出)耦合到多个组件的处理器系统102,所述通信总线提供各组件和处理器102之间的通信路径。处理器系统102耦合到驾驶控制系统150、随机存取存储器(RAM)122、只读存储器(ROM)124、诸如快闪可擦除可编程只读存储器(EPROM)(闪存)之类的永久性(非易失性)存储器126、用于与无线网络210交换射频信号的一个或多个无线收发器130、用于从卫星网络260接收卫星信号的卫星接收器132、实时时钟134,及触摸屏136。处理器系统102可包括一个或多个处理单元,包括例如一个或多个中央处理单元(CPU)、一个或多个图形处理单元(GPU)和其它处理单元。

所述一个或多个无线收发器130可包括一个或多个蜂窝式(RF)收发器,用于使用不同的无线数据通信协议和标准与多个不同的无线接入网(例如,蜂窝式网络)通信。车辆控制系统115可以与其地理覆盖区域内无线WAN 210(例如,蜂窝网络)的多个固定收发器基站 (其中一个在图1中示出)中的任一个通信。所述一个或多个无线收发器130可以通过无线 WAN 210发送和接收信号。所述一个或多个无线收发器130可包括支持多个射频频段的多频段蜂窝式收发器。

所述一个或多个无线收发器130还可包括无线局域网(WLAN)收发器,用于经由WLAN 接入点(AP)与WLAN(未示出)通信。WLAN可包括符合IEEE 802.11x标准(有时被称为)或另一通信协议的Wi-Fi无线网络。

所述一个或多个无线收发器130还可包括短程无线收发器,例如收发器,用于与智能手机或平板电脑等移动计算装置通信。所述一个或多个无线收发器130还可包括其它短程无线收发器,包括但不限于近场通信(NFC)、IEEE 802.15.3a(也称为超宽带(UWB))、 Z-Wave、ZigBee、ANT/ANT+或红外(例如,红外数据协会(IrDA)通信)。

在至少一些示例中,无线收发器130中的一个或多个使得车辆控制系统115能够接收由在车辆控制系统的环境中或附近运行的其它车辆的车辆控制系统产生的第三方信息,所述第三方信息可例如包括关于其它车辆产生的状态信息或关于车辆105如何被其它车辆感知的信息。在一些示例中,此类信息可以使用预先确定的通信协议通过点对点信令来传送,并且在一些示例中,此类信息可以通过中间服务(例如,从网络资源250)提供。

车辆控制系统115还包括一个或多个扬声器138、一个或多个麦克风140和一个或多个数据端口142,如串行数据端口(例如,通用串行总线(USB)数据端口)。系统还可包括其它传感器,例如轮胎压力传感器(TPS)、车门接触开关、光传感器、接近传感器等。

驾驶控制系统150用于控制车辆105的移动。驾驶控制系统150可例如包括转向控制器 152,以及速度控制器154,它们都可以实施为驾驶控制系统150内的软件模块或控制块。当处于全自动或半自动驾驶模式时,转向控制器152和速度控制器154从自动驾驶系统170(针对自动驾驶模式)或者从驾驶辅助系统166(针对半自动驾驶模式)接收导航指令,并产生控制信号来控制车辆105的转向、制动和油门中的一个或多个。驾驶控制系统150可包括额外组件,用来控制车辆105的其它方面,包括例如控制方向灯和制动灯。

机电系统190从驾驶控制系统150接收控制信号以操作车辆105的机械组件。机械系统 190实行车辆105的物理操作。机械系统190包括用于控制发动机施加给车轮的动力的油门 196、用于控制车轮方向的转向系统192和用于向滚轮施加制动力的制动器194。例如,发动机可以是汽油动力发动机、电池动力发动机或混合动力发动机。机械系统190中可以包括其它组件,包括例如方向灯、制动灯、风扇和窗户。

车辆控制系统115的图形用户界面(graphical user interface,GUI)由处理器102渲染并显示在触摸屏136上。用户可以使用触摸屏和任选地其它输入装置(例如,按钮、拨盘)与 GUI交互,以选择车辆105的驾驶模式(例如,全自动驾驶模式或半自动驾驶模式)并显示相关信息,例如导航信息、驾驶信息、停车信息、媒体播放器信息、气候控制信息等。GUI 可包括一系列可以遍历的内容特定菜单。

车辆控制系统115的存储器126上存储了可由处理器系统102执行的软件指令集合,这些软件指令集合将车辆控制系统115配置成除了实施GUI之外还实施多个系统161。系统161 包括操作系统160,以及用于半自动驾驶(一般被称为高级自动驾驶员辅助系统(ADAS)) 的驾驶辅助系统166和用于全自动驾驶的自动驾驶系统(ADS)170中的一个或两个。驾驶辅助系统166和自动驾驶系统170均可包括以下中的一个或多个:导航规划和控制模块、车辆定位模块、停车辅助模块,及自动停车模块、车辆状态确定模块以及其它模块。在图2中示出的示例实施例中,系统161包括感知模块171和路径规划模块173。系统161还可包括其它模块174,这些模块可包括例如地图模块、导航模块、气候控制模块、媒体播放器模块、电话模块和消息传递模块。在示例实施例中,各种系统和系统模块用于在车辆105的运行期间交互。

参考图11,路径规划模块173包括任务规划器1102、行为规划器1104和运动规划器1106。行为规划器1104包括预测安全性控制系统172。预测安全性控制系统172使本文中所描述的方法的操作得以执行。

再次参考图2,存储器126还存储各种数据180。数据180可包括:从传感器110接收到的传感器数据182;包括用户偏好、设置和任选地个人媒体文件(例如,音乐、视频、指令等)的用户数据184;以及包括经由无线收发器130下载的数据的下载缓存186,此数据包括例如从网络资源250下载的数据。传感器数据182可包括表示来自每个相机112的图像的图像数据、来自LIDAR单元114的表示点云的LIDAR数据、来自雷达单元116的雷达数据,以及来自其它车辆传感器120的其它传感器数据。系统软件、软件模块、特定的装置应用程序或其部分可以临时加载到RAM 122等用于存储运行时间数据变量和其它类型的数据或信息的易失性存储装置中。由车辆控制系统115接收的数据还可存储在RAM 122中。尽管针对各种类型的存储器描述了特定功能,但是这仅是一个示例,并且还可以使用对不同类型的存储器的不同功能分配。

路径规划系统

再次参考,图11是示出路径规划模块173的其它细节的框图。应理解,在涉及机器学习的一些示例中,路径规划系统173或路径规划模块173的组件可以在车辆105的外部(例如,在模拟器系统中)进行训练。在下文所论述的示例中,任务规划器1102和运动规划器1106 中的一个或多个可包括在模拟器中进行训练的神经网络。

一般来说,路径规划可具有三个执行级别,即任务级别(例如,由任务规划器1102执行)、行为级别(例如,由行为规划器1104执行)和运动级别(例如,由运动规划器1106执行)。

一般来说,路径规划的目的在于确定车辆105从第一状态(例如,由车辆的当前位置和定向或预期的未来位置和定向定义)行驶到目标状态(例如,由用户定义的最终目的地)的路径。路径规划还可包括确定去往一个或多个中间目标状态的一个或多个子路径。路径规划模块173通过考虑可驾驶地面(例如,规定的车道)、障碍物(例如,行人和其它车辆)、交通法规(例如,遵守交通信号灯)和用户定义的偏好(例如,避开收费公路)等条件来确定适当的路径和子路径。

由路径规划模块173执行的路径规划可以是动态的,并且可以随着环境的改变而重复执行。环境的改变可能是因为车辆105的移动(例如,车辆105接近新检测到的障碍物)以及环境的动态性质(例如,不断移动的行人和其它移动车辆)。

如上文所提及,路径规划可具有不同执行级别,例如任务级别、行为级别和运动级别。任务级别的路径规划被视为高(或更全局)级别的路径规划,运动级别的路径规划被视为低 (或更局部)级别的路径规划,而行为级别的路径规划被视为在任务和运动级别之间。一般来说,高级别的路径规划的输出可以形成低级别的路径规划的输入的至少部分。

在每个规划级别,规划路径可以被定义为一系列点,每个点定义自我车辆105的规划目标位置(例如,x和y坐标)。每个点可以另外定义车辆105的规划速度、定向、加速度和/或角速度,由此定义了车辆105在每个目标位置处的规划状态。规划路径可因此定义车辆105 将沿着规划行程行驶的一组位置(或更一般来说,一组状态)。

任务级别的路径规划(简称为任务规划)涉及在高级别或全局级别下规划自主车辆的路径。自我车辆105的第一状态可以是行程的起点(例如,用户的家),且自我车辆105的目标状态可以是最终目的地点(例如,用户的工作场所)。选择一条行驶经过一组道路的路线是任务规划的示例。一般来说,一旦被设定(例如,通过用户输入),最终目的地点在整个行程过程中就不会改变。尽管最终目的地点可能不变,但是通过任务规划规划的路径在整个行程过程中可能会发生变化。例如,不断变化的交通状况可能需要任务规划动态地更新规划路径,以避开拥塞的道路。用户还可在行程过程中的任何时间更改最终目的地点。

任务规划器1102的输入数据可包括例如GPS数据(例如,用于确定自我车辆105的起点的GPS坐标)、地理地图数据(例如,来自内部或外部地图数据库)、交通数据(例如,来自外部交通状况监测系统)、最终目的地点(例如,定义为x和y坐标或定义为经度和纬度坐标),以及任何用户定义的偏好(例如,避开收费公路的偏好)。

从任务规划器1102输出的规划路径定义从起点到达最终目的地点要行驶的路线。任务规划器1102的输出可包括定义沿着路线的一组中间目标状态(或沿途点)的数据。例如,可以在道路交叉口处定义中间目标状态,以指示在每个交叉口处采用哪条道路。中间目标状态可用于行为级别的路径规划。

行为规划器1104包括预测安全性控制系统172。行为规划器1104从任务规划器1102接收规划路线,包括所述一组中间目标状态(如果存在)。行为规划器1104产生车辆105的规划行为动作,以便相比于任务规划器1102,做出更局部且更短期的驾驶决策。例如,行为规划器1105可确保车辆105遵循特定行为规则(例如,左转应该在最左侧车道进行)。在图11 所示的实施例中,预测安全性控制系统172是行为规划器1104的子系统,它包括可由处理器执行的指令,此处理器例如是车辆控制系统115的处理器102。预测安全性控制系统172可由行为规划器1104调用,使得预测安全性控制系统172的指令得以执行。当预测安全性控制系统172的指令由车辆控制系统115的处理器102执行时,预测安全性控制系统172选择行为动作。行为规划器11014从预测安全性控制系统172接收选定的行为动作,使行为规划器1104产生车辆105的能够达到目标的规划行为动作。

规划行为动作由运动规划器1106接收。如下文将进一步论述的,规划行为动作可以作为状态输入数据由运动规划器1106接收。运动规划器1106应找到一条既满足规划的行为动作又以相对安全、舒适和快速的方式在环境中通行的轨迹。运动规划器1106在结构化和非结构化环境中都提供了车辆105的安全稳定通行。结构化环境一般是具有明确规定的可驾驶区域和不可驾驶区域的环境(例如,具有清晰的车道标记的高速公路),它可能已经规定了希望所有车辆都遵循的驾驶规则。非结构化环境一般是没有明确规定(或者没有规定)可驾驶区域和不可驾驶区域的环境(例如,空旷田间),它可能不太具有或者没有针对预期车辆行为的驾驶规则。不管环境是结构化还是非结构化的,环境还可能是高度动态的(例如,行人和其它车辆都在移动),并且每个动态障碍物可能具有不同且独立的行为。

预测安全性控制系统

在示例实施例中,行为规划器1104包括预测安全性控制系统172。车辆105的车辆控制系统115的预测安全性控制系统172用于预测特定行为动作对车辆105(在下文中称为自我车辆105)的安全性以及在自我车辆105的环境内行动的其它社会对象产生的影响,并选择合适的行为动作来解决自我车辆105和周围社会对象的安全要求。

在此方面,在示例实施例中,预测安全性控制系统172用于定义围绕自我车辆105的一个或多个自我安全区z和围绕任何周围社会对象的一个或多个社会安全区z,并选择行为动作,旨在使社会对象避开自我车辆的安全区z并使自我车辆避开任一社会对象的安全区z。自我安全区z是在至少一个方向上延伸超出自我车辆105的尺寸的物理空间,社会对象的社会安全区z是在至少一个方向上延伸超出所述社会对象的尺寸的物理空间。

出于说明性目的,图3用鸟瞰图示出接近交叉路口的自我车辆105以及三个社会对象 308(1)、308(2)和308(3)(统称为社会对象308)。在图3中,社会对象308全部示出为车辆,但是社会对象还可包括其它类型的活动对象,例如骑自行车的人、行人和动物。

在图3中可以看到,使用虚线来指示预测安全性控制系统172针对每一个车辆定义的行驶方向安全区具体地说,在自我车辆105周围示出行驶方向自我安全区z310,并且在社会对象308(1)、308(2)和308(3)(共同地或一般地使用附图标记308来指代)周围示出行驶方向社会安全区z312(1)、312(2)和312(3)(共同地或一般地使用附图标记312来指代)。

在示例实施例中,除了行驶方向安全区(为方便起见,它将被称为前部安全区)之外,还可为自我车辆105和每个社会对象308定义其它安全区,包括例如后部安全区(即,与行驶方向相反)及右侧和左侧安全区(即,在垂直于行驶方向的水平方向上)。在能够进行三维移动的车辆(例如,具有飞行能力的车辆和潜水艇)的情况下,还可定义上下安全区。在一些示例中,可以为自我车辆105和每个社会对象308定义全向安全区。

在至少一些示例中,安全区被定义为相对于相应自我车辆105和社会对象308的三维(3D) 空间,就此而言,图4示出相对于自我车辆105的3D前部自我安全区z310,如图所示,此安全区具有区长度zheight、区宽度zwidth和区zheight。如下文将更详细地解释,安全区尺寸中的一个或多个(例如,区长度zlength)可以由预测安全性控制系统172基于所感测的车辆状态的一个或多个特性来自适应地确定,所述特性例如是速度。在一些示例中,一些区尺寸(例如,高度和宽度)可以仅基于预先确定的车辆尺寸。

如箭头314所指示,此箭头指示响应于可能动作而预测的自我车辆105的路径,图3表示可能的左转情形。仅基于自我车辆前部安全区z 310,自我车辆看起来能够安全左转。但是,考虑到社会对象308(1)的前部社会安全区z 312(1),可以确定预测的自我车辆路径314与前部社会安全区z 312(1)相交。因此,可以决定立即制动而不是左转。

因此,在示例实施例中,预测安全性控制系统172用于选择行为动作,旨在使社会对象 308避开自我安全区(例如,z 310)并使自我车辆105避开任一社会对象308的社会安全区 (例如,z 312(1)、312(2)和312(3))。现将参考图5提供预测安全性控制系统172的示例架构和操作,本图示出根据示例实施例的预测安全性控制系统172的功能框图。

如图5所示,在示例实施例中,预测安全性控制系统172包括:预测感知单元502,用于基于根据从环境传感器110和车辆传感器111接收到的传感器数据(即,由传感器110感测的关于自我车辆105的运行环境的信息和由车辆传感器111感测的关于自我车辆100的信息)确定的当前状态就可能的未来状态做出预测516;及安全性控制器512,用于基于预测的未来状态来选择行为动作。

在示例实施例中,预测感知单元502包括状态模块510预测器模块404、406、408的集合503。

状态模块

状态模块510用于将从环境传感器110、车辆传感器111以及一些示例中的外部资源(例如,网络资源250或其它社会对象)接收到的传感器数据映射到自我车辆105的当前车辆状态st。自我车辆状态st∈S(其中S表示所有可能的状态值)是自我车辆环境在离散时间t的表示,并且包括描述自我车辆105周围的物理环境的各方面的数值(例如,状态数据)(st,env)和自我车辆150自身的物理车辆运行参数的数值(例如,状态数据)(st,op)。

在一些示例中,自我车辆状态st中所包括的关于自我车辆105的物理运行参数的车辆参数状态数据st,op可基于从车辆传感器111接收到的传感器数据。关于当前物理运行参数的车辆参数状态数据st,op可包括例如:自我车辆速度v;发动机RPM;传动齿轮;油门位置;制动器位置;转向角度;角加速度;线性加速度;以及车辆俯仰角、偏航角和滚转角。

在示例实施例中,自我车辆状态st中所包括的关于自我车辆105周围的物理环境的环境状态数据st,env可以基于由嵌入的环境传感器110(例如,相机112、LIDAR单元114和雷达单元116中的一个或多个)检测到的关于自我车辆105的周围环境的传感器数据而确定。环境状态数据st,env可例如包括关于障碍物(例如,静止对象和社会对象)、道路车道、交通灯、路边和高架标志、道路标记、道路状况和自我车辆105的周围环境内的其它可检测要素的数据。在至少一些示例中,环境传感器110中的一个或多个可具有车载处理能力,从而实现智能输出,例如附近社会对象的距离测量或速度测量,但是在一些示例中,此类计算可由状态模块510基于来自传感器110的不太精炼的数据而执行。举例来说,LIDAR单元114可提供距离图像或表示点云的点云数据,点云提供对自我车辆105周围的物理环境(包括例如社会对象308)的360度覆盖。在一些示例中,来自LIDAR单元114的周围环境数据可补充有来自相机112和雷达单元116中的一个或两个的数据。

在一些示例中,还可通过无线收发器130从其它资源接收关于自我车辆105的周围环境的数据,包括例如来自网络资源250的关于天气或道路状况的数据,以及从其它社会对象308 直接或间接接收到的数据。举例来说,环境中的第三方车辆可用于传送关于它们自身的所感知状态(例如,基于它们自己的传感器数据)、规划行为或规划动作中的一个或多个的信息。

如上文所提到,由状态模块510产生的关于自我车辆105周围的物理环境的环境状态数据st,env包括关于静止对象和移动对象的数据,包括关于社会对象308的数据。在一些示例中,环境状态数据st,env中所包括的数据可限于指示障碍物在自我车辆105的环境中的存在情况和位置的数据。在示例实施例中,状态模块510用于产生关于社会对象308的额外状态数据。就此而言,在一些示例实施例中,状态模块510包括社会对象检测器函数514,它用于识别自我车辆105的环境内的社会对象308,并产生在时间t检测到的每一社会对象308(i)的代表性社会对象状态在示例实施例中,相对于社会对象308(i)产生的社会对象状态可包括唯一标识符和指示以下中的一个或多个的数据:社会对象308(i)的速度v、社会对象308(i)的相对位置和/或绝对位置和方向,及社会对象308(i)的尺寸,等等。因此,社会对象检测器函数 514用于产生包括的社会对象状态数据集合Ot,其中是在时间t检测到的社会对象的数目。社会对象308的数目通常会发生变化,并且在示例实施例中,社会对象检测器函数514用于将在数据集合Ot中表示的社会对象数目限于阈值数目K。例如,当在时间t在自我车辆105的环境内可以检测到的社会对象308的数目大于K时,社会对象检测器函数514可用于只产生个最近的社会对象308的SODI在示例实施例中,社会对象检测器函数514可以采用已知对象检测方法或者从其它采用已知对象检测方法的模块接收对象数据。一个合适的对象检测方法的示例在以下中描述:Joseph Redmon,Santosh Divvala,Ross Girshick,Ali Farhadi;只需瞄一眼:统一的实时对象检测(You Only Look Once: Unified,Real-Time Object Detection);arXiv:1506.02640v5,2016年5月9日。

因此,在示例实施例中,自我车辆105在时间t的状态数据可以表示为st=st,env,st,op,Ot

在示例实施例中,状态模块510的一些或所有功能性可由车辆控制系统115的系统中非预测感知单元502的模块实施。例如,状态模块510的一些或所有功能性可在感知系统171 中实施。

在示例实施例中,除了上文所描述的自我车辆状态st之外,状态模块510还用于计算额外状态数据。计算出的这个状态数据st,calc可例如包括指示当前自我车辆安全性的数据、指示当前社会对象安全性的数据,以及任选地指示当前自我车辆舒适性的数据。就此而言,在示例实施例中,状态模块510包括用于计算自我车辆105的自我车辆安全状态的自我安全性函数516、用于计算每一个社会对象308的社会对象安全状态的社会对象安全性函数517,以及用于计算自我车辆105的舒适状态的舒适性函数518。

在一些示例中,当前安全状态和当前舒适状态只在训练预测器模块504、506、508时计算。例如,当前自我安全状态、当前社会对象安全状态和当前舒适状态可分别用于产生相应的累积量信号(伪奖励信号),以便训练自我安全性、社会安全性和舒适性GVF,这些GVF在示例实施例中用于实施自我安全性预测器模块504、社会安全性预测器模块506和舒适性预测器模块508(在下文更详细地描述)。

如上文关于图3和4所提到,预测安全性控制系统172用于定义围绕自我车辆105的一个或多个自我安全区z,和围绕任一周围社会对象308的一个或多个社会安全区z。在示例实施例中,自我车辆105的安全区z由自我安全性函数516定义,且相应社会对象308的安全区z由社会对象安全性函数517确定,并且安全状态是逐区确定的。

在一个示例中,自我安全性函数516(safe)是一种映射关于当前自我车辆状态st∈S的参数、关于安全性和安全区z∈Zego的参数的函数,表示如下:

safe:S×Hsafe×Zego→[0,1] (1)

自我安全状态函数516的输出是介于0和1之间的值,它指示针对特定安全区z的自我车辆105的安全状态,其中1是安全,0是不安全。可能的自我安全区z包括:全向(在所有方向上安全或不安全);围绕车辆的特定空间区/区域;围绕车辆的特定方向。在以下描述中,例如上文关于图3和4所论述的那些的行驶方向(例如,前部)安全区用于说明示例实施例。

在一个示例实施例中,自我安全状态函数516进行配置,得到结论:如果来自环境传感器110的数据指示区z中没有障碍物,那么区z在时间t的自我安全状态是安全。在特定示例中,选择安全性参数来表示如果从Lidar单元114接收到的表示点云的LIDAR数据指示不到阈值数目个数据点处于自我安全区z的界限内,那么自我安全区z在时间t是安全的。在一些示例中,阈值可为1个点,并且在一些示例中,可以将阈值设定得较高,以免误报。

因此,在示例实施例中,自我车辆安全性函数516被定义为:

其中o是在围绕自我车辆105的环境中检测到的对象(例如,静止对象或社会对象308)。区z∈Zego是相对于自我车辆105定向的三维区。在所示出的示例中,如图4中所示,前部自我安全区的长度是速度的函数,使得zlength=zsafe+Vlength,其中zsafe=vtspacingg+dmin;其中tspacing表示自我车辆105和对象o之间的预定义安全时间阈值间隔;dmin是停止时自我车辆105和对象o之间的预定义最小安全距离;Vlength是车辆长度;且v是自我车辆105的速度。

在示例实施例中,预定义安全性阈值tspacing和dmmin可在限值内基于用户输入偏好hpref

在一个示例中,社会对象安全性函数517(socialsafe)是一种根据下式将当前状态、检测到的社会对象的参数、关于安全性(例如,关于间隔的人类偏好)和社会安全区z∈Zsocial的参数映射到社会安全性值的函数:

socialsafe:S×O×Hsafe×Zsocial→[0,1] (3)

社会安全性值(即,上式的输出)是介于0和1之间的值,它指示社会对象308相对于所述社会对象308的特定安全区z的安全级别,其中1是安全,0是不安全。在示例实施例中,社会对象安全性函数517用于确定如果从环境传感器110接收到的传感器数据指示自我车辆 105不在任一社会对象的社会安全区z中,那么在时间t,社会障碍物安全状态是安全。在示例实施例中,社会对象安全性函数517可以使用由社会对象检测器514产生的社会对象状态数据来预测所述对象的社会安全性。在一些示例中,作为预测关于社会对象的社会安全性的替代或补充,社会对象安全性函数517可以输出全局社会安全性值,它指示周围环境中的所有社会对象的全局安全性值。例如,全局社会安全性值可基于达到所定义阈值的各个社会安全性值的一个或多个组合而确定。

在示例实施例中,针对社会安全区zl的社会对象308的社会对象安全性函数517被定义为:

其中z是社会对象308(i)的社会安全区z∈Zsocial(每一社会对象具有一组一个或多个社会安全区Zsocial),是社会对象308(i)的状态,且e是自我车辆105占用的三维几何体积。社会对象308的社会安全区z是基于参考自我车辆105给出的坐标来定义的;社会安全区zl是通过围绕社会对象308定义限界框并沿着行驶方向添加安全距离zsafe以确定社会对象前面的安全区域来计算的。类似于上文所论述的自我车辆105,安全距离zsafe可以是社会对象的速度的函数。

尽管上文只阐述了前部安全区的函数,但是如上文所提到,在示例实施例中,还可确定其它可能的区z的状态,包括例如:全向安全区(在所有方向上安全或不安全);以及围绕车辆的其它特定空间区/区域,包括例如侧区以及在支持3D运动的对象的情况下的竖直区。在示例实施例中,自我车辆105的区特定自我车辆舒适状态函数518表示为:

comfort:S×Hcomfort×Z→[0,1] (5)

舒适安全性值(即,舒适状态函数的输出)是介于0和1之间的值,它指示自我车辆105 (相对于一个特定区)的舒适级别,其中1是舒适,0是不舒适。在一个示例实施例中,自我车辆舒适状态函数518被定义为:

其中是在时间t从加速度计传感器(例如,IMU 118中所包括的加速度计传感器) 接收到的表示自我车辆105的加速度或振动的加速计数据的均方根(root meansquare,RMS),θaccel是自我车辆105的测得加速度或振动的舒适性阈值。

在一些实施例中,安全性、社会安全性和舒适性函数是基于人类专家设定的算法和标准来定义的。在一些示例中,安全性和舒适性阈值中的一个或两个(例如,可以在定义的安全性限值内基于用户输入偏好)可以基于通过网络资源250接收到的道路和天气状况自动调整,也可以基于相机112感测到的道路表面状况。

预测器模块

如图5中所示,预测器模块504、506、508的集合503包括自我安全性预测器模块504、社会安全性预测器模块506,并且在至少一些示例中,还包括舒适性预测器模块508。由状态模块510构建的状态st供预测器模块504、506、508用于确定关于各种行为动作对自我车辆 105的环境产生的影响的一组以动作为条件(action conditioned,AC)的预测516。AC预测 516是以行为动作为条件的,因为预测所指示的未来时间的预测状态以特定行为动作at发生为条件。在示例实施例中,t1可以是1到5秒。

就此而言,在示例实施例中,预测感知单元502接收所有可能行为动作的集合A作为来自动作模块520(它可以是行为规划器1104的一部分)的输入,给定当前车辆状态st,自我车辆105可能采取这些可能行为动作。在一些示例中,集合A可包括可能在未来持续时间内以定义的间隔发生的所有行为动作,例如在接下来5秒中的每一秒可能发生的所有行为动作。在示例实施例中,集合A中的行为动作将分别为速度控制器154指定目标速度vt。例如,可以在区间[0,vmax]中指定目标速度vt,其中0是停止,vmax是速度控制器154所准许的最大允许目标速度。行为动作at中还可包括目标方向(例如,转向角度)(例如,-1=-50度到+1=+50度,其中0度是无角度)。在示例实施例中,所有可能行为动作的集合A是由动作模块520使用已知技术产生的。在一些示例实施例中,动作模块520用于基于由任务规划器1102输出的规划路线和自我车辆105的当前状态来选择准许行为动作的集合A。在一些示例中,所有准许行为动作可包括所有在物理上合理的行为,并且在一些示例中,考虑到当地法律,并且为了消除非法行为,可以对准许行为动作的集合进行智能筛选。

如下文将更详细地描述,由预测器模块504、506、508的集合503输出的AC预测516被提供给安全性控制器512,所述安全性控制器基于AC预测516选择合适的行为动作来实现一个或多个目标。目标包括目标速度vt、目标方向、目标安全性、目标舒适性、目标车道中的一个或多个。因此,预测感知单元502提供一组AC预测516,它们有效地形成自我车辆 105周围环境的交互式模型,从而向安全性控制器512提供安全性控制器512选择使定义的成本函数最小化或使总奖励最大化的行为动作所需要的输入。

参考图6,在一些实施方案中,预测器模块504、506、508各自包括一个或多个相应的预测器函数604、606、608,这些预测器函数由学习主体基于通过强化学习(reinforcement learning,RL)训练的机器学习算法实施(例如,参见上述R.Sutton等人和D.Silver等人的论文)。例如,预测器函数604、606和608可以实施为一个或多个呈经过训练的神经网络的形式的学习主体,所述神经网络使用车辆控制系统115的处理器系统102的一个或多个CPU或 GPU来实施。在一些示例中,每个预测器函数604、606、608使用单独的神经网络,但是在一些实施例中,多个预测器可以使用一个神经网络的至少一些层——例如在一些实施方案中,一个或多个或所有预测器及一个或多个层有可能共享相同输入(状态),这意味着所有预测器有可能在单个神经网络中实施,每个预测使用这个神经网络中的多个发散的输出分支。

基于神经网络(NN)的预测器函数604、606、608可以使用不同方法来训练,但是在示例实施例中,使用了RL来确定每一个基于NN的预测器函数604、606、608的GVF(在本文中也被称为预测器GVF)。将在下文更详细地描述用于训练预测器函数604、606、608的示例实施例。在一些替代实施例中,预测器函数604、606、608中的一个或多个由基于规则的算法实施。

在至少一些示例实施例中,预测感知单元502包括总共|Zego|+|Zsocial|+|Zcomfort|个预测器函数,其中|Zego|是自我车辆安全区的数目,|Zsocial|是社会对象安全区的数目,且|Zcomfort|是自我车辆舒适区的数目。例如,在只考虑前部自我安全区、前部社会对象安全区和前部自我车辆舒适区的情况下,预测器函数的数目是三个,如图6中所示,即:前部区自我安全性预测器GVF 604(fego);前部区社会对象安全性预测器GVF 606(fsocial);以及前部区自我车辆舒适性预测器GVF 608(fcomfort)。在一些实施例中,舒适性预测器模块508及其对应的预测器GVF 608可以省略。

预测器函数604、606、608共同就环境做出预测516,从而为安全性控制器512提供预测状态空间pt∈P。预测516是以动作为条件的“假设分析”,用来评估可能动作对自我安全性、社会安全性和舒适性的长期影响(例如,在接下来的1到5秒内)。由预测器模块504、506、508的集合503执行的从状态空间S=st,Ot到预测状态空间P的映射可以表示为:

p:S→P (7)

每个预测器函数604、606、608产生预测的一个向量,这个向量用于状态st中的所有可能行为动作其中n=|A|是可用行为动作的数目。对于可用的每个行为动作,由预测器模块504、506和508及其相应的预测器函数504、506、508共同输出的预测的数目是

现将更详细地描述预测器模块504、506和508中的每一个及其相应的预测器函数504、 506、508。在示例实施例中,自我安全性预测器模块504用于针对多个不同的可能行为动作中的每一个,基于当前车辆状态st预测未来自我安全性预测如上文所提到,自我安全性预测器模块504包括每一自我安全区的预测器GVF在图6所示的示例中,只示出了前部区自我安全性预测器GVF在示例实施例中,来自输入到前部自我安全区预测器GVF的自我车辆状态空间(st)的特定数据可针对给定时间t包括:(1)物理自我车辆运行状态st,op,其包括以下数据:自我车辆速度vt、传动齿轮、发动机RPM、转向角度、油门位置和制动器位置;以及(2)自我车辆环境状态st,env,其可例如包括表示点云的LIDAR数据和/或其它环境数据,如图像数据或雷达数据。对于每个可能的输入行为动作输入可包括自我目标速度vtarget和目标转向角度(或方向)。在一些示例中,安全区的输出安全性预测是自我安全性值,它指示基于特定行为动作自我安全区z在未来时间t+1没有静止和移动障碍物(例如,另一车辆)两者的概率。在一些示例中,预测的自我安全性表示为归一化到0和1之间的概率值,其中0是不安全(例如,100%确定障碍物会出现在自我安全区中),1是安全(例如,100%确定不会有障碍物出现在自我安全区中)。

就此而言,前部区自我安全性预测器GVF将当前状态、安全性偏好安全区z∈Zego和下一行为动作映射到介于0和1之间的值,如下所示:

fego:S×A×Hsafe×Z→[0,1] (8)

针对每一行为动作的前部自我安全区预测器GVF的输出是前部自我安全区的安全性概率的标量表示。

在一些示例中,还可任选地包括当前自我车辆安全状态safe作为自我车辆安全性预测器 GVF 604的输入。在示例实施例中,在训练预测器GVFfego604学习预测时,包括当前自我车辆安全状态safe作为自我车辆安全性预测器GVFfego604的输入,如下文更详细描述。

社会对象安全性预测器模块506用于针对多个不同的可能行为动作基于当前自我车辆状态st和社会对象状态空间Ot来预测个社会对象中的每一个的未来社会对象安全性预测如上文所提到,社会对象安全性预测器模块506包括每一自我车辆安全区的预测器GVF在图6所示的示例中,只示出了前部区社会对象安全性预测器GVF在示例实施例中,来自输入到前部社会对象安全区预测器的自我车辆状态空间(st)的特定数据可针对给定时间t包括:(1) 物理自我车辆运行状态st,op,其包括以下数据:自我车辆速度vt、传动齿轮、发动机RPM、转向角度、油门位置、自我车辆尺寸和制动器位置;(2)自我车辆环境状态st,env,它可例如包括表示点云的LIDAR数据和/或其它环境数据,如图像数据或雷达数据;以及(3)个社会对象中的每一个的社会对象状态其包括每一社会对象的:相对于自我车辆的位置、速度、朝向或方向和转向率。对于每个可能的输入行为动作输入可包括自我车辆目标速度vtarget和自我车辆目标转向角度(或方向)。在一些示例中,每一社会对象的安全区的输出社会安全性预测是社会安全性值,它指示基于特定行为动作社会对象安全区z在未来时间t+1没有自我车辆105的概率。在一些示例中,预测的社会区安全性表示为归一化到0和1之间的概率值,其中0是不安全(例如,100%确定自我车辆会出现在社会对象安全区中),1是安全(例如,100%确定自我车辆不会出现在社会对象安全区中)。

就此而言,前部区社会车辆安全性预测器GVF将当前状态、安全性偏好社会安全区z∈Zsocial,和下一行为动作映射到介于0和1之间的值,如下所示:

fsocial:S×O×A×Hsafe×Zsocial→[0,1] (9)

每一社会对象针对每一行为动作的前部自我安全区预测器GVF的输出是前部社会对象安全区的安全性概率的标量表示。

在一些示例中,还可任选地包括当前社会对象安全状态socialsafe作为社会对象安全性预测器GVF 606的输入。在示例实施例中,在训练预测器GVF学习预测时,包括社会对象安全状态socialsafe作为社会对象安全性预测器GVF 606的输入,如下文更详细描述。

在包括舒适性预测器模块508的实施例中,舒适性预测器模块508可以按照与自我安全性预测器模块504相同的方式配置,但是舒适性预测器模块508是就自我车辆舒适性风险区而就不是安全区做出预测。就此而言,舒适性预测器模块508用于针对多个不同行为动作中的每一个,基于当前车辆状态st预测未来车辆舒适性预测如上文所提到,自我车辆舒适性预测器模块508包括每一自我车辆舒适区的预测器GVF在图6所示的示例中,只示出了前部区自我车辆安全性预测器GVF在示例实施例中,来自输入到前部自我车辆安全区预测器GVF的自我车辆状态空间(st)的特定数据可针对给定时间t包括:物理自我车辆运行状态st,op,其包括以下数据:自我车辆速度vt、传动齿轮、发动机RPM、转向角度、油门位置、制动器位置以及从例如IMU 118的车辆传感器111接收到的指示自我车辆105的加速度的线性和/或传感器数据的短期历史(例如,最后“K”个RMS读数)。对于每个可能的输入行为动作输入可包括自我目标速度vtarget和目标转向角度。在一些示例中,车辆舒适性预测指示基于特定行为动作自我车辆105的RMS加速度在未来时间t+1处于舒适性阈值内的概率。在一些示例中,预测的舒适性表示为归一化到0和1之间的概率值,其中0是不舒适(例如, 100%确定自我车辆将在舒适性阈值之外),1是舒适(例如,100%确定自我车辆舒适性将在阈值之内)。

在一些示例实施例中,舒适性预测器模块508还可以任选地接收当前舒适状态comfort(st,z)作为输入。

因此,在时间t由预测感知单元502针对每个可用的行为动作输出的AC预测516可以表示为:

这些AC预测516共同地为安全性控制器512提供预测状态空间pt∈P。所有这些预测都是以动作为条件的“假设分析”,可以用于评估不同行为动作将对自我车辆安全性、社会对象安全性和自我车辆舒适性产生的影响。

安全性控制器

预测pt被提供给安全性控制器512,所述安全性控制器用于选择自我车辆105的下一行为动作以使安全性、舒适性和其它目标最大化。安全性控制器512可以表示为将当前状态和当前预测状态映射到下一行为动作的函数fcontrol,如下:

fcontrol:S×P→A (11)

在示例实施例中,安全性控制器512可实施多个不同的控制器。在本申请所公开的示例实施例中,如图7中所指示,安全性控制器512包括用于选择目标速度vtarget的模糊推理系统 (FIS)控制器702和用于实现目标速度vtarget的经典PID控制器714(例如,它可以是速度控制器154的部分)。在示例实施例中,FIS控制器702用于寻找符合以下语言表述的行为动作:

要采取的行为动作将使自我车辆保持安全 (12)

并且要采取的行为动作将使所有社会对象保持安全

并且要采取的行为动作将使自我车辆保持舒适

在示例实施例中,FIS控制器702用于将行为动作的选择看作最大化问题,但是最大化只是一个可以使用的去模糊方法。如图7中所示,在一个示例中,FIS控制器702实施以下模块或操作:(a)模糊化模块720;(b)模糊推理模块722;以及(c)去模糊模块724。

模糊化模块720包括:(i)用于将自我安全性预测pego映射到模糊真值mego的模糊化函数SAFEego;(ii)用于将每个社会对象的社会安全性预测psocial映射到模糊真值msocial的模糊化函数SAFEsocial;以及(iii)用于将自我舒适性预测pcomfort映射到模糊真值mcomfort的模糊化函数COMFORTego。因此,在示例实施例中,模糊化函数SAFEego、SAFEsocial、COMFORTego将预测pt映射到分级的真值或介于0和1之间的值,这些值表示行为动作的安全性预测对于终端用户来说是安全的程度,如下:

前部安全性SAFEeao:[0,1]→[0,1]

后部安全性SAFEsocial:[0,1]→[0,1]

前部舒适性COMFORTego:[0,1]→[0,1]

由模糊化模块720执行的映射可以表示为:

其中自我、社会和舒适性的真值分别表示为

模糊推理模块722用于相对于真值应用模糊推理以产生符合以下表述(16)(它是语言表述(12)的重述)的目标模糊集合:

其中∧是标准t-范数算子(常见的t-范数是最小值或乘积),是目标模糊集合。

目标模糊集合是表述(12)的特征,并且表示符合表述的每个行为动作的隶属度值。去模糊模块724用于通过向目标模糊集合应用去模糊以选择单个最佳行为动作来产生最终行为动作。尽管在示例实施例中,去模糊模块724用于选择具有最大隶属度的行为动作,但是存在不同的去模糊方法。去模糊模块返回使通过下式计算出的隶属度值最大化的行为动作

在一些示例实施例中,COMFORTego可以省略,但是包括它可以使选定的行为动作随时间推移按顺序排好,从而使自我车辆105的行驶更平稳。

在示例实施例中,目标速度vtarget可以是例如由驾驶辅助系统166或自动驾驶系统170设定的最大期望速度。模糊化函数Safeego、Safesocial、Comfortego和模糊推理模块722可以使用基于规则的算法来实施,并且在一些实施例中,可以实施为经由机器学习进行学习的可训练函数。在基于规则的实施方案中,模糊化函数Safeego、Safesocial、Comfortego和模糊推理模块 722可以通过手动制定来配置,以优化目标模糊集合。在一些实施例中,选择供模糊化函数 Safeego、Safesocial、Comfortego和模糊推理模块722用于输出目标模糊集合的定义和规则以支持整个行为动作空间,从而缓解可能找不到合适的行为动作的情形。在无保护左转时的行为动作空间为左转或让行的情况下,向运动规划器1106发出制定将由驾驶控制系统150执行的运动规划的行为命令。

在示例实施例中,为了确保自我安全性的重要性高于社会安全性,可以设定要求:这意味着在整个域中,自我安全性的真值必须高于社会安全性的真值。也可以将SAFEego和SAFEsocial简单地解释为恒等函数,因为安全性的概率预测也可以被视为真值。但是,在示例实施例中,从系统程序员的视角来看,模糊集合可以增加控制对预测的解译的灵活性。

学习预测器

如上文所提到,在示例实施例中,基于上述R.Sutton等人的论文中所公开的方法,使用 RL来训练自我车辆安全性预测器GVF 604(fego)、社会对象安全性预测器GVF 606(fsocial)、自我车辆舒适性预测器GVF 608(fcomfort)。为构建每个GVF,定义了累积量(伪奖励)函数、伪终止函数和目标策略。对于终止函数的常数值,即折减因子γ,可以通过下面的关系式控制预测的时间范围:

其中nΔt是要预测的未来时间步数。

用于预测舒适性的累积量是:

校正因子1-γ将所有未来累积量的总和归一化,使得总回报是:

用于预测自我安全性和社会安全性的累积量分别为:

针对所有行为动作at和状态st的目标策略π(at|st)=1可用于以下情形:选择适当的目标策略可能比出于数据收集目的而构建一个简单的通用策略更具挑战性。通过定义用于数据收集和训练的专家策略来进行学习可比使用具有指定目标策略的传统离线策略学习(off-policy learning)更稳定。在至少一些示例实施例中,数据收集和学习可以由专业的人类驾驶员来完成。

在一个示例中,自我安全性预测器GVF的训练被视为函数学习问题,但是多个不同的数据收集和训练(DCT)系统也是可能的。要学习的用于预测前部区自我安全性的函数是:

其中是预测的在未来Δt个时间步的安全性,如公式(18)中所描述,st是表示系统状态的向量,且at是可能要采取的行为动作。

此函数被实现为标准前馈神经网络。用于预测前部自我安全性的累积量是:

其中是自我车辆的当前前部安全性,z=FRONT是方向,且γ是折减因子。

校正因子1-γ将所有未来累积量的总和归一化,使得前部自我安全性预测器GVF602(1)表示所有未来前部安全性的加权平均值。

在本示例实施例中,选择状态-动作-奖励-状态-动作(SARSA)学习来训练自我和社会安全性预测器函数,以提高学习稳定性。在示例实施例中,可以使用专家策略来收集数据,而不是使用传统的离线策略RL学习。在示例实施例中,数据收集涉及创建如图3中示出的转弯情形、如图8中示出的停车场情形和如图9中示出的车道情形。在每一个示例情形中,自我车辆和社会对象可以由相应的控制器控制,所述控制器基于预定义规则和限制来控制自我车辆和社会对象的方向和速度。

在一些示例中,可以使用两种类型的DCT控制器,即,忽略所有其它对象且仅旨在实现目标速度的“基本控制器”和旨在实现目标速度和目标车辆间隔的“基线控制器”。在示例实施例中,用于安全性预测器训练的数据收集可通过实际道路数据、通过模拟或通过这两个的组合来搜集。对整个状态和行为动作空间的训练数据覆盖对于泛化(generalization)来说是合乎需要的,并且在示例实施例中,是通过每个控制器参数的缓慢随机行走模拟在不同策略下的样本行为来实现的,样本行为例如是非常谨慎的跟车和紧贴行驶(tail-gating)。在本示例中,这些参数是目标速度和目标车头时距(headway)(例如,车辆间隔)。希望策略在较短的时间段内保持相对恒定,使得安全性预测器能够学习泛化。

使用安全性预测器DCT系统,收集训练数据并将其用于训练相应的预测器GVF,这些预测器GVF能够预测自我车辆105和社会对象的概率性未来安全性,其中假设行为动作在短时间内相对恒定。

如上文所提到,可以使用其它模拟系统,甚至可以使用人类专家来收集训练预测器GVF 所需的数据,只要能够提供对状态和行为动作空间的充足覆盖来训练可以很好地进行泛化的 GVF即可。在示例实施例中,在训练期间,DCT系统观察足够多样化的行为和情形,使得产生的安全性和舒适性预测器函数能够做出有意义的预测。在示例实施例中,自我车辆和社会对象的行为是充分不相关的,以免引入可能会产生不良甚至不正确的预测的偏向。

在示例实施例中,离线训练是为了提高学习的稳定性和安全性;但是应注意,实施预测器函数(经过训练)的已训练GVF可以使用离线策略RL学习连续地实时收集和改进预测。

作为上述训练的结果,关于输入动作的目标策略固有地嵌入到自我车辆安全性预测器GVF 604(fego)、社会对象安全性预测器GVF 606(fsocial)、自我车辆舒适性预测器GVF608 (fcomfort)中的每一个中。因此,在正常运行过程中,由这些GVF输出的相应预测是基于输入状态以及嵌入到预测器函数中的目标策略。因此:针对某一行为动作的自我安全性预测指示基于当前状态和自我车辆105遵循目标策略两者,自我车辆105安全的概率;针对某一行为动作的社会安全性预测指示基于当前状态和自我车辆105遵循目标策略两者,社会对象安全的概率;并且针对某一行为动作的自我舒适性预测指示基于当前状态和自我车辆105遵循目标策略两者,自我车辆105舒适的概率。在示例实施例中,在此背景下,目标策略可以在未来的一段持续时间内遵循类似于输入行为动作的一组行为动作。

预测安全性控制系统的总结

在示例实施例中,如图10中所示,如上文所描述的预测安全性控制系统172的操作总结如下:

(1)在时间t接收传感器数据(例如,从传感器110、111接收)并映射到状态表示st(动作802);

(2)在时间t基于当前传感器数据,检测环境中的所有社会对象并确定在时间t的社会对象状态社会对象状态包括社会对象位置、方向、速度中的一个或组合 (动作804);

(3)可选地(例如在训练期间),计算所有区z∈Zego的当前自我安全性级别safe(st,z)和舒适性级别comfort(st),并计算所有区z∈Zsocial的所有检测到的社会对象ot∈O的当前社会安全性级别social(st,ot,z)(动作806);

(4)根据当前状态st而确定所有可能行为动作的集合A(动作808);

(5)针对每一可能行为动作(假设分析)a.计算舒适性预测 b.针对每一自我区计算自我安全性预测c.针对每一社会区z∈Zsocial和检测到的对象ot∈O,计算社会安全性预测 (动作810);以及

(6)选择下一行为动作如下:a.接收所有自我和社会区及所有社会对象ot∈O的自我舒适性自我安全性的预测;b.将舒适性预测模糊化(真值) c.将每一方向的自我安全性预测模糊化(真值) d.将每一方向和检测到的对象的社会安全性预测模糊化(真值)e.对目标模糊集合模糊推理,其中∧是 t-范数 以及f.将模糊集合去模糊以选择特定的下一行为动作at(动作812)。

根据上文可以了解,预测安全性控制系统172不仅考虑了自我车辆105的安全性,而且还考虑了其它社会对象308的安全性。社会安全性预测器与自我安全性预测器合作,以一种可应用于广泛环境的方式来解决安全问题,这些环境包括交叉路口处理、多车道高速公路驾驶、停车场、学校区域和其它极其需要社会安全的复杂环境。在示例实施例中,预测安全性控制系统172专注于确定自我车辆105的动作是否会使得另一移动对象不安全/安全,而不是考虑另一车辆的全局安全性。社会安全性和自我安全性可以被视为独立的组成部分,因此可以对这些安全性进行不同的优先级排序(例如,旨在最大限度地减少潜在的生命损失),并且可以更全面地看待安全问题,从而更好地反映人类的实际驾驶情况。

图3的情形涉及控制自我车辆105在交叉路口进行无保护的左转。常见的解决方案涉及经典的行为规划和运动规划方法,包括避撞时间法,但是对具有许多参与者(车辆、行人等) 的交叉路口的环境进行建模可能颇具挑战性。一些现代方法包括使用强化学习向运动规划器发出命令,如“左转”或“让行”。这种非常简单的方法不容易考虑到社会车辆的安全性,因为强化学习方法的奖励通常是以自我为中心的,原因是主体很难观察到其它主体的动作。防止已经学习过的主体危险地插到其它车辆的前面的最常见方法是尽量减少社会主体的制动,但这通常需要对它们的行为进行不准确的建模,确定它们的制动量。可以使用多主体RL方法来考虑其它主体,但很难确定或理解其它主体的策略,包括其他驾驶员有没有真正地注意到(并因此能够遵循安全策略并在需要时减速)。与常见的解决方案相比,预测安全性控制系统172利用安全性的定义(在替代实施例中可以应用非上述定义的定义)来预测其它车辆(或更一般地说,对象)的安全性,并使用自我安全性和社会安全性来控制处于交叉路口的自我车辆105。

在一些示例中,通过预测社会安全性,预测安全性控制系统172能够预测在交叉路口进行无保护的左转之前需要等待,以便保护其它社会对象308免受自我车辆105的伤害,同时依旧及时地到达目的地车道。

如上文所提到,在示例实施例中,使用通用值函数(general value function,GVF)框架经由强化学习(reinforcement learning,RL)来学习自我和社会安全性预测器函数。强化学习可以通过学习经验或看到驾驶员遵循各种行为以及对确定他们的安全是否受我们影响产生的影响来处理其他驾驶员的随机和未知行为。

在图3、8和9中所示的示例情形中,目标是使自我车辆105避开社会对象308的社会安全区312,并使社会对象308避开自我安全区310。在一些情况下,自我车辆105可能会出现很难甚至不可能完全避免的不安全情形;在这些状况下,可以设定优先选择自我安全性或社会安全性的优先级。在图9的高速公路车道情形的情况下,优先考虑自我车辆105的前部安全性是合乎逻辑的,因为来自后方车辆的大多数追尾碰撞不会是自我驾驶员的过失。

在示例实施例中,本文公开的系统和方法在一些情况下可以降低自我车辆105采取的行为动作对诸如其它车辆和行人的社会对象308造成的安全风险。在示例实施例中,预测感知单元502使用从一系列车载传感器110、111和任选地外部数据源获得的信息就世界(例如,自我车辆105的运行环境)做出预测,所述外部数据源例如是位于车辆运行环境中或云中的其它车辆。预测以行为动作为条件,从而允许安全性控制器512选择能够达到安全性控制器 512的目标的行为动作。就此而言,向安全性控制器512将世界表示为以行为动作为条件的预测,这些预测形成环境的交互式模型,此模型包括关于不同的行为动作可以如何控制环境以使某一成本函数最小化或使总奖励最大化的信息。

在图3的左转问题的背景下,预测感知单元502产生自我安全性和社会安全性的预测,并且这些预测取决于将在环境中采取的下一动作。预测可以分解为围绕自我车辆的自我安全区,例如前部和后方的自我安全区(可以定义重叠区)。还定义围绕每一社会对象308的社会安全区,并且相对于自我车辆105针对这些社会安全区预测安全性概率。

在示例实施例中,如上文所描述,预测感知单元502输出包括每个自我安全区没有障碍物的概率的预测,所述障碍物包括社会对象308和静止障碍物。预测感知单元502还输出围绕每一社会对象308的每一社会安全区没有自我车辆105的概率。在社会安全性的背景下,忽略了静止对象或非社会对象。

在示例实施例中,安全性控制器512用于使自我安全性、社会安全性和任选地如舒适性之类的其它目标最大化,同时使那些目标与在例如速度限值的界限内快速到达目的地达到平衡。安全性控制器512用于使自我安全区保持无其它障碍物(静止的和动态的),同时还使分配给社会对象308的安全区保持无自我车辆105,从而提高自我车辆105在道路上行驶时的自我和社会安全性。安全性控制器512从预测感知单元502接收预测并使用经典模糊推理选择行为动作,以供自我车辆105在环境中执行。由安全性控制器512产生的行为动作可以提供给驾驶控制系统150的运动规划器1106,从而激活在环境内运行的自我车辆105的致动器。

图12是根据示例实施例的进一步总结由预测安全性控制系统172实施的用于控制自我车辆和自我车辆的环境中的至少一个社会对象的安全性的方法的流程图。所述方法包括接收表示至少一个社会对象308的数据(动作1202),以及基于传感器数据而确定自我车辆105的当前状态(动作1204)。基于当前状态,针对一组可能行为动作中的每一可能行为动作,预测对应于自我车辆的自我安全性值(动作1206)。针对每一可能行为动作,基于当前状态,预测对应于自我车辆105的环境中的所述至少一个社会对象的社会安全性值(动作1208)。基于自我安全性值、社会安全性值及自我车辆105的一个或多个目标,选择自我车辆105的下一行为动作(动作1210)。

在至少一些示例实施例中,针对每一可能行为动作,自我安全性值指示在所述可能行为动作由自我车辆105执行且之后遵循目标策略的情况下障碍物不在自我车辆105的自我安全区310内的概率。针对所述至少一个社会对象308,社会安全性值指示在所述可能行为动作由自我车辆105执行且之后遵循目标策略的情况下自我车辆105不在社会对象308的社会安全区312内的概率。

在至少一些示例实施例中,在动作1202中,接收到的数据包括表示自我车辆105的环境中的多个社会对象308的数据。所述方法包括针对每一可能行为动作,预测所述多个社会对象308中的每一个的相应社会安全性值,每一社会安全性值指示在所述可能行为动作由自我车辆105执行且之后遵循目标策略的情况下自我车辆105不在相应社会对象308的相应社会安全区312内的概率。

在一些示例实施例中,确定当前状态(动作1204)包括确定自我车辆105的速度和方向,以及所述多个社会对象308中的每一个的速度、方向和位置。

在一些示例实施例中,针对每一可能行为动作预测自我安全性值(动作1206)由经过训练的神经网络实现的通用值函数(general value function,GVF)执行。针对每一个所述多个社会对象的每一可能行为动作预测社会安全性值(动作1208)由经过训练的神经网络实现的另一GVF执行。

在示例实施例中,自我安全区包括物理空间,所述物理空间包括且在自我车辆105的行驶方向上延伸超出自我车辆105,并且社会对象308的社会安全区包括且在社会对象308的行驶方向上延伸超出社会对象308。

在其它示例实施例中,针对每一可能行为动作,社会安全性值对应于自我车辆105的环境中的多个社会对象308,社会安全性值指示在所述可能行为动作由自我车辆105执行且之后遵循目标策略的情况下自我车辆105不在任一社会对象308的相应社会安全区内的概率。

在一些示例实施例中,选择行为动作(动作1202)包括:通过将针对可能行为动作中的每一个预测的自我安全性值和社会安全性值中的每一个映射到相应真值,执行自我安全性值和社会安全性值的模糊化;对真值应用模糊推理以产生目标模糊集合;以及将目标模糊集合去模糊以选择自我车辆的行为动作。

预测安全性控制系统的替代性实施例

在上文所描述的示例实施例中,预测感知单元502包括社会对象检测器514,用于提供每个检测到的社会对象的社会对象状态oi t。但是,在替代性示例实施例中,省略了社会对象检测器514,并且没有将每个检测到的社会对象的状态显式地提供给社会安全性预测器模块 506。相反,社会安全性预测器GVF fsocial只用于映射来自传感器数据的社会对象安全性(例如,来自状态数据st,env,而不会添加来自社会对象检测器的状态数据oi t)。在此类实施例中,社会对象检测器514在训练期间仍然可以使用。但是,社会安全性预测器模块506的每个动作只产生一个社会安全性预测,而不是产生个社会安全性预测。通过这种方式,一旦被部署在自动驾驶车辆(例如,自我车辆105)上,社会安全性预测器模块506就不依赖于对象检测器514。

在这个替代实施例中,分别针对可用的每一行为动作及自我和社会安全区,在时间t的预测状态pt并不表示为公式(10),而是表示为:

在目前描述的实施例中,只考虑了一个自我安全区和一个社会安全区,即,分别在自我车辆的行驶方向上和在社会对象的行驶方向上的区(不管行驶方向是前进还是后退)。

出于训练目的,用于训练自我安全性GVF fego 604和自我舒适性GVF fcomfort 608的累积量与上文定义的那些相同。但是,上文针对训练社会安全性GVF fsocial606的公式(22)中所述的累积量定义被替换为采用用于所有检测到的对象的单个累积量的定义。有很多方法可以做到这一点:一种方法是对所有社会安全性值使用逻辑与运算符,即:

另一方法是计算安全的社会对象的百分比:

后者(例如,公式(27))的训练可能更具挑战性,因为车辆的社会安全比自我安全更普遍(原因是与社会安全性相比,自我车辆105对自身安全的控制力更强,因此(27)的累积量可能变化不大)。这意味着自我和社会安全性预测器的训练仍然取决于对场景中的所有对象的检测。但是,当解决方案被部署在车辆上时,GVF fsocial606正在学习预测,而不依赖于要显式检测的对象。因此,用于社会安全性预测的函数映射为:

fsocial:S×A×Z (28)

在一些实施例中,学习此函数映射可以使社会安全性预测器GVF fsocial606识别出社会威胁,而不用真正显式地执行对象检测。

修改第一实施例的安全性控制器512,使得目标模糊集合通过下式来确定:

其中是社会安全性的真值的隶属度,且

如上文所提到,当预测安全性控制系统172部署在自动驾驶车辆(例如,自我车辆105) 上时,这个替代方案在训练后不再需要社会对象检测器514。可以训练社会安全性预测器GVF fsocial606,以便从表示点云LIDAR数据或图像数据隐式地识别威胁社会安全的对象,而不是将对象参数显式地传递到社会安全性预测器GVF fsocial606。这样做的优点是能够在不需要实时对象检测约束的情况下学习预测其中可以使用极精确的对象检测的环境中的社会安全性。接着,社会安全性预测器GVF fsocial606可以部署在实时预测安全性控制系统172中,而不需要在线对象检测器514,这种在线对象检测器可能会因为引入时延而降低实时精确度。

其它示例实施例

尽管在本文中描述为集成到ADAS 166或ADS 170中的系统,但是在示例实施例中,预测安全性控制系统172可以是用于记录信息和提供反馈的独立系统。在一些示例实施例中,预测安全性控制系统172可以用于提供发布驾驶员指南的监视和警报模块的被动安全系统。对于示例实施例,在车辆受人类驾驶员控制的情况下,安全性控制器512的输出可用于触发针对驾驶员的消息,例如“左转”的可视和/或可听消息。就此而言,预测安全性控制系统172 可以是单独系统,也可以集成到自动驾驶系统(即,ADAS 166或ADS 170)中。

本申请参考附图进行,附图中示出了实施例。但是,可以使用许多不同的实施例,因此,不应将本说明理解为限于在本文中阐述的实施例。实际上,提供这些实施例是为了使得本申请将是彻底且完整的。所示系统、模块和装置的功能元件的单独框或所示分离不一定要求这些功能的物理分离,因为这些元件之间的通信可以通过消息传递、函数调用、共享存储器空间等方式发生,而不必进行任何这种物理分离。因此,功能不需要在物理分离或逻辑分离的平台中实施,但是在本文中为了便于解释,将它们单独示出。不同的装置可以具有不同的设计,使得尽管一些装置在固定功能硬件中实施一些功能,但是其它装置可以使用从机器可读介质获得的代码在可编程处理器中实施这些功能。

还公开了所公开范围内的所有值和子范围。并且,尽管本文中公开和示出的系统、装置和过程可包括特定数量的元件/组件,但是可以修改所述系统、装置和组合件以包括额外的或更少的此类元件/组件。例如,尽管所公开的元件/组件中的任一个可能表示为单数,但是可以修改本文所公开的实施例以包括多个此类元件/组件。本文所描述的主题旨在覆盖并涵盖所有适当的技术变化。

尽管本申请至少部分地在方法方面加以描述,但是本领域的普通技术人员应理解,本申请还涉及用于执行所述方法的至少一些方面和特征的各种组件,无论是通过硬件(DSP、GPU、ASIC或FPGA)、软件还是它们的组合来执行。因此,本申请的技术方案可以体现在非易失性或非暂时性的机器可读介质(例如,光盘、闪存等)中,此介质上存储有可执行指令,所述指令有形地存储在介质上,使得处理装置(例如,车辆控制系统)能够执行本文中所公开的方法的示例。

在不脱离权利要求书的主题的情况下,可按其它特定形式来实现本申请。所描述的示例实施例在各方面都仅仅是说明性的,而不是限制性的。本申请旨在覆盖并涵盖所有适当的技术变化。因此,本申请的范围由所附权利要求书描述,而不是由上述描述内容描述。权利要求书的范围不应受在示例中阐述的实施例限制,而是应当被给予与说明书总体相一致的最宽泛的解释。

42页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:轨道车辆的车轮装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!