用于基于自动生成的课程序列的自主车辆的强化学习的方法和装置与流程

文档序号:18702926发布日期:2019-09-17 23:11阅读:287来源:国知局
用于基于自动生成的课程序列的自主车辆的强化学习的方法和装置与流程

本公开一般涉及对自主机动车辆控制系统编程。更具体地,本公开的方面涉及用于行为规划的系统、方法和设备,其使用在复杂环境中基于自动生成课程序列的自主车辆的强化学习。



背景技术:

现代车辆的操作变得更加自动化,即能够以越来越少的驾驶员干预提供驾驶控制。车辆自动化被分类为数字级别,范围从零(对应于没有自动化与全人为控制)到五(对应于完全自动化,无人为控制)。各种自动驾驶辅助系统,例如巡航控制、自适应巡航控制和停车辅助系统对应于较低的自动化水平,而真正的“无人驾驶”车辆对应于较高的自动化水平。

由于安全问题,适当的情况意识对于自主驾驶至关重要。即使希望将所有可用信息放入自主驾驶决策过程中;但是,对于实际实施,系统的输入数据应该是有限的和可管理的;因此,它需要精心设计,以提高决策效率和充分性。自主车辆通常必须生成数据结构以感知车辆周围的情况。通过安装在自主驾驶车辆上的传感器,将大量信息传递给系统;因此,对安全驾驶的所有感知数据进行有效分析至关重要。

对于自主车辆和人类驾驶员两者来说,密集的城市环境及其对应的大量信息都尤其困难。例如,如何接近然后穿越城市交叉路口是一个困难的问题,并且是大多数交通事故发生的情况。这种高事故率的主要原因在于驾驶员需要注意的大量外部因素。在接近停车标志时,驾驶员需要注意前方的车辆,以避免距离太近或太远。同时,驾驶员需要准确地停在停车线上,这样它就不会阻挡交叉路口或撞到从其他方向接近的其他车辆。随后,驾驶员需要做出正确的决定在何时开始穿越交叉路口。新驾驶员可能难以知道何时穿越,甚至一些有经验的驾驶员可能会错过重要的交通信息。因此,交叉路口的自主驾驶行为可能非常有益。然而,为了设计一种可靠的规划算法,允许自驾驶车辆做出安全决策,工程师需要具有足够的洞察力,以预见每一种可能的不良情况。在复杂的城市场景中不可预测的环境变化和频繁的人机交互将影响算法并使得处理各种规划任务变得极其困难,例如前进是否安全,或前车的适当相对距离是多少。

交叉路口穿越问题的先前基于距离的算法总是包括一些调谐参数来处理不同的场景。调谐这些参数是费力的,因为算法不容易适应各种环境情况。这些算法还需要设计大量基于距离的规则来处理不同的情况。期望感知自主车辆周围的情况,其具有降低的计算复杂性,而不会丢失关键细节以改进导航和控制决策。

在该背景技术部分中公开的上述信息仅用于增强对本发明背景的理解,因此其可能包含不构成本国对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本文公开了用于提供自主车辆控制的自动车辆控制系统训练系统和相关控制逻辑,用于制造这些系统的方法和用于操作这种系统的方法,以及配备有车载控制系统的机动车辆。作为示例而非限制,提出了一种具有车载车辆控制学习和控制系统的汽车。

根据本发明的一个方面,一种训练车辆控制系统的方法,包括确定最终任务,从第一车辆传感器接收输入,响应于最终任务以及输入确定第一任务和第二任务,其中第二任务具有比第一任务更高的难度,训练代理执行第一任务以便生成最大化第一奖励的动作策略,并且响应于最大化第二奖励的动作策略执行第二任务,并响应于动作策略控制车辆执行第二任务。

根据本发明的另一方面,一种用于装置的装置,包括用于检测输入的传感器,用于确定最终任务的处理器,所述处理器还可操作以响应最终任务和输入确定第一任务和第二任务,其中第二任务具有比第一任务更高的难度,执行第一任务以便生成最大化第一奖励的动作策略,并且响应于最大化第二奖励的动作策略来执行第二任务,响应于动作策略产生控制信号,并响应控制信号控制车辆。

通过以下结合附图对优选实施例的详细描述,本公开的上述优点和其他优点和特征将变得显而易见。

附图说明

本发明的上述和其他特征和优点以及实现它们的方式将变得更加明显,并且通过参考下面结合附图对本发明实施例的描述,将更好地理解本发明,其中:

图1示出了根据示范性实施例的包括用于机动车辆的移动车辆通信和控制系统的操作环境。

图2示出了根据示范性实施例的包括多个不同控制系统的ads,用于确定车辆附近的检测到的特征或物体的存在、位置、分类和路径。

图3示出了示范性框图,示出了根据另一示范性实施例的用于基于自动生成的课程序列的自主车辆的强化学习的系统的示范性实施方式。

图4示出了示范性流程图,示出了用于基于自动生成的课程序列的自主车辆的强化学习的方法的示范性实施方式。

本文阐述的示例说明了本发明的优选实施例,并且这些示例不应被解释为以任何方式限制本发明的范围。

具体实施方式

本文描述了本公开的实施例。然而,应该理解,所公开的实施例仅仅是示例,并且其他实施例可以采用各种和替代形式。这些图不一定按比例缩放;某些功能可能会被夸大或最小化,以显示特定部件的详细信息。因此,本文公开的具体结构和功能细节不应被解释为限制性的,而仅仅是代表性的。参考任何一个附图示出和描述的各种特征可以与一个或多个其他附图中示出的特征组合,以产生未明确示出或描述的实施例。所示特征的组合提供了典型应用的代表性实施例。然而,对于特定应用或实施方式,可能需要与本公开的教导一致的特征的各种组合和修改。

图1示意性地示出了包括用于机动车辆12的移动车辆通信和控制系统10的操作环境。用于车辆12的通信和控制系统10通常包括一个或多个无线载波系统60、陆地通信网络62、计算机64、联网无线设备57、包括但不限于智能手机、平板电脑或可穿戴设备例如手表、以及远程访问中心78。

在图1中示意性地示出的车辆12包括推进系统13,推进系统13在各种实施例中可包括内燃发动机,诸如牵引马达的电机,和/或燃料电池推进系统。在所示实施例中,车辆12被描绘为乘用车,但是应当理解,包括摩托车、卡车、运动型多功能车(suv)、休闲车(rv)、船舶、飞机等的任何其他车辆也可以使用。

车辆12还包括变速器14,变速器14配置为根据可选择的速比将来自推进系统13的动力传递到多个车轮15。根据各种实施例,变速器14可包括步进比自动变速器、无级变速器或其他适当的变速器。车辆12还包括车轮制动器17,车轮制动器17配置为向车轮15提供制动转矩。在各种实施例中,车轮制动器17可包括摩擦制动器、再生制动系统例如电机、和/或其他适当的制动系统。

车辆12另外还包括转向系统16。虽然为了说明的目的而描绘为包括方向盘,但是在本公开的范围内预期的一些实施例中,转向系统16可以不包括方向盘。

车辆12包括无线通信系统28,其配置成与其他车辆(“v2v”)和/或基础设施(“v2i”)无线通信。在示范性实施例中,无线通信系统28被配置为使用ieee802.11标准或通过使用蜂窝数据通信经由无线局域网(wlan)进行通信。然而,诸如专用短程通信(dsrc)信道的附加或替代通信方法也被认为在本公开的范围内。dsrc信道是指专为汽车应用而设计的单向或双向短程至中程无线通信信道以及对应的协议和标准集。

推进系统13、变速器14、转向系统16和车轮制动器17与至少一个控制器22通信或在其控制下。虽然为了说明的目的描绘为单个单元,但是控制器22可以另外包括一个或多个其他控制器,统称为“控制器”。控制器22可包括与各种类型的计算机可读存储设备或介质通信的微处理器,例如中央处理单元(cpu)或图形处理单元(gpu)。计算机可读存储设备或介质可以包括例如只读存储器(rom)、随机存取存储器(ram)和保活存储器(kam)中的易失性和非易失性存储装置。kam是持久性或非易失性存储器,可用于在cpu断电时存储各种操作变量。计算机可读存储设备或介质可以使用许多已知存储器设备中的任何一种来实现,例如prom(可编程只读存储器),eprom(电子prom),eeprom(电可擦除prom),闪存或能够存储数据的任何其他电子、磁性、光学或组合存储器设备,其中一些代表可执行指令,由控制器22用于控制车辆。

控制器22包括用于自动控制车辆中的各种致动器的自动驾驶系统(ads)24。在示范性实施例中,ads24是所谓的四级或五级自动化系统。四级系统表示“高度自动化”,指的是动态驾驶任务的所有方面的自动驾驶系统的驾驶模式特定性能,即使人类驾驶员没有对干预请求做出适当响应也是如此。五级系统表示“完全自动化”,指的是自动驾驶系统在可由人类驾驶员管理的所有道路和环境条件下的动态驾驶任务的所有方面的全时性能。在示范性实施例中,ads24被配置成响应于来自多个传感器26(其可以包括gps、雷达、激光雷达、光学相机、热像仪、超声波传感器和/或适当的附加传感器)的输入,控制推进系统13、变速器14、转向系统16和车轮制动器17以分别控制车辆加速、转向和制动,而无需经由多个致动器30进行人为干预。

图1示出了可以与车辆12的无线通信系统28通信的若干联网设备。可以经由无线通信系统28与车辆12通信的联网设备之一是联网的无线设备57。无线设备57可以包括计算机处理能力,能够使用短程无线协议进行通信的收发器,以及可视显示器59。计算机处理能力包括可编程设备形式的微处理器,其包括存储在内部存储器结构中的一个或多个指令,并应用于接收二进制输入以创建二进制输出。在一些实施例中,联网无线设备57包括能够接收gps卫星信号并基于那些信号生成gps坐标的gps模块。在其他实施例中,联网无线设备57包括蜂窝通信功能,使得联网无线设备57使用一个或多个蜂窝通信协议在无线载波系统60上执行语音和/或数据通信,如本文所讨论的。视觉显示器59还可以包括触摸屏图形用户界面。

无线载波系统60优选地是蜂窝电话系统,其包括多个小区塔70(仅示出一个),一个或多个移动交换中心(msc)72,以及将无线载波系统60与陆地通信网络62连接所需的任何其他网络组件。每个小区塔70包括发送和接收天线以及基站,来自不同小区塔的基站直接或经由诸如基站控制器的中间设备连接到msc72。无线载波系统60可以实现任何合适的通信技术,包括例如数字技术,例如cdma(例如,cdma2000),lte(例如,4glte或5glte),gsm/gprs或其他当前或新兴的无线技术。其他小区塔/基站/msc布置是可能的并且可以与无线载波系统60一起使用。例如,基站和小区塔可以共同位于同一站点或者它们可以彼此远程定位,每个基站可以负责单个小区塔,或者单个基站可以服务于各个小区塔,或者各个基站可以耦合到单个msc,仅举几个可能的布置。

除了使用无线载波系统60之外,可以使用卫星通信形式的第二无线载波系统来提供与车辆12的单向或双向通信。这可以使用一个或多个通信卫星66和上行链路发送站67来完成。单向通信可以包括例如卫星无线电服务,其中发送站67接收节目内容(新闻、音乐等)、打包以便上载、然后发送到卫星66,其向订户广播节目。双向通信可以包括,例如,使用卫星66来中继车辆12和站67之间的电话通信的卫星电话服务。除了无线载波系统60之外或代替无线载波系统60,可以使用卫星电话。

陆地网络62可以是连接到一个或多个陆线电话的传统陆基电信网络,并且将无线载波系统60连接到远程接入中心78。例如,陆地网络62可以包括公共交换电话网络(pstn),例如用于提供硬连线电话、分组交换数据通信和互联网基础设施的网络。陆地网络62的一个或多个段可以通过使用标准有线网络、光纤或其他光学网络、有线网络、电力线,诸如无线局域网(wlan)的其他无线网络或提供宽带无线接入(bwa)的网络或其任何组合来实现。此外,远程访问中心78不需要经由陆地网络62连接,而是可以包括无线电话设备,使得它可以直接与无线网络(例如无线载波系统60)通信。

虽然在图1中示出为单个设备,但是计算机64可以包括可经由诸如互联网的私人或公共网络访问的多个计算机。每个计算机64可用于一个或多个目的。在示范性实施例中,计算机64可以被配置为车辆12经由无线通信系统28和无线载波60可访问的网络服务器。其他计算机64可以包括例如:服务中心计算机,诊断信息和其他车辆数据可以经由无线通信系统28或第三方存储库从车辆上载到服务中心计算机或从服务中心计算机提供车辆数据或其他信息,无论是否通过与车辆12、远程访问中心78、联网无线设备57或这些的某种组合进行通信。计算机64可以维护可搜索的数据库和数据库管理系统,该系统允许输入、删除和修改数据以及接收在数据库内定位数据的请求。计算机64还可以用于提供诸如dns服务之类的互联网连接,或者用作使用dhcp或其他合适协议来为车辆12分配ip地址的网络地址服务器。

远程访问中心78被设计为向车辆12的无线通信系统28提供多个不同的系统功能,并且根据图1所示的示范性实施例,通常包括一个或多个交换机80、服务器82、数据库84、现场顾问86以及自动语音响应系统(vrs)88。这些各种远程访问中心组件优选地经由有线或无线局域网90彼此耦合。交换机80,可以是专用分支交换(pbx)的交换机、路由输入信号,使得语音传输通常通过普通电话发送给现场顾问86,或者使用voip发送到自动语音响应系统88。现场顾问电话也可以使用voip,如图1中的虚线所示。通过交换机80的voip和其他数据通信是经由连接在交换机80和网络90之间的调制解调器(未示出)实现的。数据传输经由调制解调器传递到服务器82和/或数据库84。数据库84可以存储账户信息,例如订户认证信息、车辆标识符、简档记录、行为模式和其他相关的订户信息。数据传输也可以由无线系统进行,例如802.11x、gprs等。尽管已经描述了所示实施例,因为它将与使用现场顾问86的有人操作的远程访问中心78结合使用,但是应当理解,远程访问中心可以将vrs88用作自动顾问或可以使用vrs88和现场顾问86的组合。

如图2所示,ads24包括多个不同的控制系统,至少包括用于确定车辆附近的检测到的特征或物体的存在、位置、分类和路径的感知系统32。感知系统32被配置为从各种传感器(例如图1中所示的传感器26)接收输入,并合成和处理传感器输入以生成用作ads24的其他控制算法的输入的参数。

感知系统32包括传感器融合和预处理模块34,其处理和合成来自各种传感器26的传感器数据27。传感器融合和预处理模块34执行传感器数据27的校准,包括但不限于,lidar到激光雷达校准、相机到激光雷达校准、激光雷达到底盘校准、以及激光雷达光束强度校准。传感器融合和预处理模块34输出预处理的传感器输出35。

分类和分割模块36接收预处理的传感器输出35并执行物体分类、图像分类、交通灯分类、物体分割、地面分割和物体跟踪过程。物体分类包括但不限于识别和分类周围环境中的物体,包括交通信号和标志的识别和分类、radar融合和跟踪以考虑传感器的放置和视野(fov)以及经由lidar融合拒绝误报以消除城市环境中存在的许多误报,例如井盖、桥梁、架空树木或灯杆、以及雷达横截面高但不影响车辆沿其路径行驶的能力的其他障碍物。由分类和分割模型36执行的附加物体分类和跟踪过程包括但不限于自由空间检测和高级跟踪,其融合来自radar轨道、lidar分割、lidar分类、图像分类、物体形状拟合模型、语义信息、运动预测、栅格地图、静态障碍物地图和其他来源的数据,以产生高质量的物体轨迹。

分类和分割模块36另外执行交通控制设备分类和交通控制设备与车道关联和交通控制设备行为模型的融合。分类和分割模块36生成包括物体标识信息的物体分类和分割输出37。

定位和地图模块40使用物体分类和分割输出37来计算参数,包括但不限于在典型和具有挑战性的驾驶场景中估计车辆12的位置和取向。这些具有挑战性的驾驶场景包括但不限于具有许多汽车的动态环境(例如,密集交通)、具有大规模障碍物的环境(例如,道路施工或建筑工地)、丘陵、多车道道路、单车道道路、各种道路标记和建筑物或其缺乏(例如,住宅区与商业区)、桥梁和立交桥(车辆当前路段的上方和下方)。

定位和地图模块40还结合了由于经由车辆12在操作期间执行的车载地图功能获得的扩展地图区域和经由无线通信系统28“推送”到车辆12的地图数据而收集的新数据。定位和地图模块40用新信息(例如,新车道标记、新建筑结构、建筑区域的添加或移除等)更新先前地图数据,同时保持未受影响的地图区域未被修改。可以生成或更新的地图数据的示例包括但不限于屈服线分类、车道边界生成、车道连接、次要和主要道路的分类、左转弯和右转弯的分类以及交叉车道创建。

在一些实施例中,定位和地图模块40使用slam技术来开发周围环境的地图。slam是simultaneouslocalizationandmapping(同时定位和构建地图)的首字母缩写。slam技术构建环境地图并跟踪物体在环境中的位置。graphslam是slam的变体,它采用稀疏矩阵,用于生成包含观察相互依赖性的图。

地图内的物体位置由以物体的预测路径为中心的高斯概率分布表示。最简单形式的slam利用三个约束:初始位置约束;相对运动约束,它是物体的路径;和相对测量约束,它是物体到地标的一个或多个测量值。

初始运动约束是车辆的初始姿势(例如,位置和方向),其包括车辆在二维或三维空间中的位置,包括俯仰、滚转和偏航数据。相对运动约束是物体的移位运动,其包含一定程度的灵活性以适应地图一致性。相对测量约束包括从物体传感器到地标的一个或多个测量值。初始位置约束、相对运动约束和相对测量约束通常是高斯概率分布。传感器生成的地图内的物体定位方法通常采用卡尔曼滤波器,各种统计相关方法,例如pearson乘积矩相关和/或粒子滤波器。

在一些实施例中,一旦构建了地图,就通过粒子滤波器实时地实现车辆定位。与贝叶斯或卡尔曼滤波器不同,粒子滤波器适用于非线性系统。为了定位车辆,经由高斯概率分布在预期均值周围生成粒子。为每个粒子分配数字权重,表示粒子位置对预测位置的准确性。考虑传感器数据并调整粒子权重以适应传感器数据。粒子与传感器调整位置的距离越近,粒子权重的数值越大。

当动作命令发生时,每个粒子被更新为新的预测位置。在新的预测位置处观察传感器数据,并且为每个粒子分配表示粒子位置相对于预测位置和传感器数据的准确度的新权重。对粒子进行重新采样,选择具有最大数值大小的权重,从而提高预测的和传感器校正的物体位置的准确度。通常,重采样数据的均值、方差和标准偏差提供新的物体位置可能性。

粒子滤波处理表示为:

p(ht|ht-1,at,dt)等式1

其中ht是当前的假设,即物体位置。ht-1是前一个物体位置,at是动作,通常是马达命令,并且dt是可观察数据。

在一些实施例中,定位和地图模块40通过结合来自多个源的数据来维持车辆的全球位置的估计,如上面在扩展卡尔曼滤波器(ekf)框架中所讨论的。卡尔曼滤波器是基于递归贝叶斯滤波器的线性滤波器。递归贝叶斯滤波器(也称为递归贝叶斯估计)基本上将估计的后验替换为先前位置以在新的估计迭代上计算新的后验。这有效地产生:

p(ht|ht-1,dt)等式2

其中假设ht的概率是通过前一次迭代ht-1的假设和当前时间t的数据dt估计的。

卡尔曼滤波器添加一个动作变量at,其中t是时间迭代,产生:

p(ht|ht-1,at,dt)等式3

其中假设ht的概率基于先前的假设ht-1,动作at和当前时间t的数据dt。

在机器人技术中广泛使用,卡尔曼滤波器估计当前位置,其是联合概率分布,并且基于动作命令预测新位置,该新位置也是联合概率分布,称为状态预测。获取传感器数据并计算分离的联合概率分布,称为传感器预测。

状态预测表示为:

x′t=axt-1+bμ+εt等式4

其中x't是基于先前状态axt-1、bμ和ξt的新状态。常数a和b由感兴趣的物理定义,μ通常是机器人马达命令,并且ξt是高斯状态误差预测。

传感器预测表示为:

z′t=cxt+εz等式5

其中z't是新的传感器估计,c是函数,并且ξz是高斯传感器误差预测。

新的预测状态估计表示为:

xest=x′t+k(zt-z′t)等式6

其中产品k(zt-z't)被称为卡尔曼增益因子。如果传感器预测z't与实际传感器数据zt之间的差异(也即,zt-z't)合理地接近零,则x't被认为是新的状态估计。如果zt-z't合理地大于零,则添加k(zt-z't)因子以产生新的状态估计。

当接收到车辆运动信息时,ekf更新车辆位置估计,同时还扩展估计协方差。一旦传感器协方差被集成到ekf中,定位和地图模块40就生成定位和地图输出41,其包括车辆12相对于检测到的障碍物和道路特征的位置和取向。

车辆测距模块46从车辆传感器26接收数据27并生成车辆测距输出47,其包括例如车辆航向、速度和距离信息。绝对定位模块42接收定位和地图输出41和车辆测距信息47,并生成车辆位置输出43,其用于如下所述的单独计算中。

物体预测模块38使用物体分类和分割输出37来生成参数,包括但不限于检测到的障碍物相对于车辆的位置,检测到的障碍物相对于车辆的预测路径,以及交通车道相对于车辆的位置和方向。在一些实施例中可以使用贝叶斯模型来基于语义信息、先前轨迹和瞬时姿势来预测驾驶员或行人意图,其中姿势是物体的位置和取向的组合。

贝叶斯定理通常用于机器人,也称为贝叶斯滤波器,是条件概率的一种形式。贝叶斯定理,如下面的等式7所示,提出在给定数据d时的假设h的概率等于假设的概率h乘以给定假设h时的数据d的似然性除以数据p(d)的概率。

p(h/d)被称为后验,并且p(h)被称为先验。贝叶斯定理测量了在数据d中体现的证据解释之前(先前)和之后(后验)对命题的概率信任程度。贝叶斯定理在迭代时通常递归使用。在每次新的迭代中,先前的后验成为产生新后验的先验,直到迭代完成。关于物体(包括行人、周围车辆和其他运动物体)的预测路径的数据被输出作为物体预测输出39,并且在如下所述的单独计算中使用。

ads24还包括观察模块44和解释模块48。观察模块44生成由解释模块48接收的观察输出45。观察模块44和解释模块48允许远程访问中心78访问。现场专家或顾问,例如如图1所示的顾问86可以可选地检查物体预测输出39并提供附加的输入和/或超控自动驾驶操作,并且如果车辆情况需要或要求则承担车辆的操作。解释模块48生成解释输出49,其包括由现场专家提供的附加输入(如果有的话)。

路径规划模块50处理和合成从远程访问中心78的在线数据库或现场专家接收的对象预测输出39、解释输出49和附加路由信息79,以确定在遵守交通规则和避免任何检测到的障碍物的同时将车辆保持在期望路线上的车辆路径。路径规划模块50采用被配置为避开车辆附近的任何检测到的障碍物,将车辆保持在当前行车道中并且将车辆保持在期望路线上的算法。路径规划模块50使用姿势图优化技术,包括非线性最小二乘姿态图优化,以六个自由度优化汽车车辆轨迹的地图并减少路径误差。路径规划模块50输出车辆路径信息作为路径规划输出51。路径规划输出51包括基于车辆路线的命令的车辆路径、相对于路线的车辆位置、车道的位置和取向、以及任何检测到的障碍的存在和路径。

第一控制模块52处理和合成路径规划输出51和车辆位置输出43以生成第一控制输出53。在远程接管车辆操作模式的情况下,第一控制模块52还结合了由远程访问中心78提供的路由信息79。

车辆控制模块54接收第一控制输出53以及从车辆测距仪46接收的速度和航向信息47,并生成车辆控制输出55。车辆控制输出55包括一组致动器命令以实现来自车辆控制模块54的命令的路径,包括但不限于转向命令、换挡命令、油门命令和制动命令。

车辆控制输出55被传递到致动器30。在示范性实施例中,致动器30包括转向控制、换挡器控制、油门控制和制动控制。转向控制可以例如控制如图1所示的转向系统16。换挡器控制可以例如控制如图1所示的变速器14。油门控制可以例如控制推进系统13,如图1所示。制动控制可以是例如如图1所示的控制车轮制动器17。

所公开的方法可以与任何数量的不同系统一起使用,并且不具体限于这里示出的操作环境。系统10及其各个部件的架构、构造、设置和操作通常是已知的。此处未示出的其他系统也可以采用所公开的方法。

现在转到图3,示出了示范性框图,其示出了用于基于自动生成的课程序列的自主车辆300的强化学习的系统的示范性实施方式。该系统包括至少一个用于接收外部信息的传感器或环境状态信息330。该系统还包括处理器310,处理器用于确定由自主车辆执行的任务。处理器310可操作以确定与最终任务相关联的多个任务并按困难的顺序对这些任务进行排序。处理器根据课程序列以复杂度的顺序执行任务,其中执行的任务的结果用于确定对后续任务的批评。然后,处理器310可操作以生成动作策略以控制车辆控制系统并响应于动作策略生成控制信号。该系统还包括控制器320,用于响应于控制信号和环境状态信息控制车辆。

该系统可操作以使用强化学习(rl)来生成用于自主车辆控制的控制算法,其通过应用深度强化学习(drl)方法来通过收集周围车辆和道路的信息训练可以自主学习如何接近和穿越城市停止标志交叉路口的控制算法。与基于规则的算法不同,rl算法可以学习在训练过程中基于错误和试验来处理不可预测和可变的情况。与监督学习不同,rl不需要大量标记数据来训练基于数据的模型。该算法使得能够根据记录的经验开发从环境状态到代理动作的灵活地图功能,这类似于人类驾驶员学习驾驶的方式。

以前,drl方法遇到了高维状态空间问题的困难,例如复杂城市环境中的自主车辆决策。为了克服这个问题,先前的drl算法需要很长的训练时间段才能获得可接受的结果。对于高维状态空间的难题,这些算法无法保证在有限的训练时间段收敛损失函数和满意的性能。

当前系统通过实施课程学习(cl)系统来解决这些问题,其中系统不直接通过解决问题的复杂实例来学习任务,而是从更简单的情况开始并逐渐增加困难。cl用于通过从简单情况开始而不是随机初始化来降低困难问题的复杂性。该系统用于将cl应用于drl算法,以便通过使用基于自动生成的课程序列(agcs)的强化学习方法来简化和加速训练过程,其流程图如图4所示。

基于agcs的强化学习是分层强化学习方法,其中高级强化学习结构负责根据具有其自身的困难的每个任务的当前训练迭代的总奖励自动生成课程序列。同时,在较低级rl结构中,可以应用诸如dqn或ddpg的传统drl算法来训练可以针对不同场景执行离散或连续动作的策略。图4示出了根据基于agcs的dqn的示范性dr1算法的流程图。包括块405、440、445、450和410的内循环是dqn过程,并且外循环是用于生成课程序列的过程。在外部部分,课程生成策略被制定为k武装强盗问题,其中基于基于agcs的方法使用基于动作值的增量方法的任务数来选择k。示范性框架允许容易地并入其他方法。更新课程生成的q函数,其中i∈[1,n]是任务id,并且k是一个特定的训练迭代。

qki+1=αri+(1-α)qki(1)

qi的值可以用于评估每个任务的难度,其中较高值表示较高难度级别,并且基于agcs的rl可以经由boltzmann分布探索方法选择在下一次迭代中训练的任务。

π(ct|ht)=exp(qit)/∑inexp(qti)

具有更高qc的更容易的任务将被选择作为下一次训练迭代的课程的更高概率。

用于离散或连续动作的深度强化学习方法通常在重放缓冲区中存储st、at、rt、st+1、+1的元组的最后m个经验。但是,这种形式的重放缓冲区不会识别重要的转换,并且总是使用与m的有限存储器大小成比例的最近转换来覆盖。传统的rl方法使用统一采样,这同样重视重放存储器中的所有转换,并且可能导致失败案例多于成功时期的不平衡的存储器。在示范性实施例中,基于为下一次训练迭代选择任务的概率,将缓冲区添加到重放缓冲区b。这意味着具有更高的奖励和更好的性能将同时具有更高的被添加到重放缓冲区的可能性。同时,如果转换包括穿越或停止的成功,则它也将以更高的概率存储在缓冲区中。如果没有选择转换,它将被放弃而不存储到缓冲区中,这样我们可以为更重要的转换节省更多空间。

现在转到图4,示出了示出用于基于自动生成的课程序列的自主车辆400的强化学习的方法的示范性实施方式的流程图。该方法包括两个工作流程,以便在复杂情况下训练自主车辆行为。第一工作流程是深度增强学习算法,其中车辆控制系统在第一时间被呈现观察或状态440。观察可以包括与最后转换相关联的奖励。该方法然后可操作以评估动作策略445,然后从可用的动作组中选择动作450。该动作返回到环境设置405。然后,响应于动作450的执行,将内在奖励发送到评估网络410。评估网络用于响应于时间差异误差通过更新神经网络的参数来训练动作策略445。

工作流程的第二个是agcs,其中第一个平均奖励415被确定用于对多种n种任务的观察,其中平均奖励415是从n个任务中的每个任务的奖励链确定的。在该示范性实施例中,课程生成过程的策略被公式化为k武装强盗问题,其中基于任务的数量选择k,并且基于动作值的增量方法用于agcs。平均奖励415用于驱动agcs。平均奖励415应用于更高状态420系列的观察。基于等式(q^i_{k+1}=\alphar^i+(1-\alpha)q^i_k)计算类似于动作值的任务值。q^i的值可用于评估每个任务的效用。课程策略425确定课程序列中的下一个任务,该任务可以基于从n个任务中的每个任务、更高级别状态420和奖励415的当前任务值函数q^i导出的玻尔兹曼分布探索方法。在该示范性实施例中,n可以是6-8个任务,但是可以选择任意数量的任务。确定任务的动作值435并生成任务的顺序。按照agcs规定的顺序执行430任务。确定一系列任务435,其中针对所选任务的特定任务确定特定困难,选择该特定任务的动作值,确定任务,动作是选择要改进的特定任务。每个任务与内在奖励相关联,其中内在奖励用于确定每个任务的表现。学习块435基于内在工作保持更新的信息,并尝试基于车辆成功地导航任务的百分比来学习该功能。重放缓冲区455用于存储代理遇到的内容的经验,优先重放缓冲区,具有更高奖励的转换比没有产生较低奖励的转换优先级更高,并根据成功赋予优先级以减少访问时间。

虽然在前面的详细描述中已经呈现了至少一个示范性实施例,但是应该理解存在大量的变型。还应当理解,一个或多个示范性实施例仅是示例,并不旨在以任何方式限制本公开的范围、适用性或配置。相反,前面的详细描述将为本领域技术人员提供用于实现一个或多个示范性实施例的便利路线图。应当理解,在不脱离所附权利要求及其合法等同物所阐述的本公开的范围的情况下,可以对元件的功能和布置进行各种改变。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1