CN111985614B - 一种构建自动驾驶决策系统的方法、系统和介质 - Google Patents

一种构建自动驾驶决策系统的方法、系统和介质 Download PDF

Info

Publication number
CN111985614B
CN111985614B CN202010715409.7A CN202010715409A CN111985614B CN 111985614 B CN111985614 B CN 111985614B CN 202010715409 A CN202010715409 A CN 202010715409A CN 111985614 B CN111985614 B CN 111985614B
Authority
CN
China
Prior art keywords
module
action vector
experience
data
network
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
Application number
CN202010715409.7A
Other languages
English (en)
Other versions
CN111985614A (zh
Inventor
牛京玉
胡瑜
韩银和
李晓维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN202010715409.7A priority Critical patent/CN111985614B/zh
Publication of CN111985614A publication Critical patent/CN111985614A/zh
Application granted granted Critical
Publication of CN111985614B publication Critical patent/CN111985614B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Traffic Control Systems (AREA)
  • Feedback Control In General (AREA)

Abstract

本发明实施例提供了一种构建自动驾驶决策系统的方法、系统和介质,所述自动驾驶决策系统包括强化学习模块和安全保障模块,所述安全保障模块包括基于规则的子模块和基于数据驱动的子模块,所述方法包括:A1、随机初始化强化学习模块和基于数据驱动的子模块的神经网络参数;A2、对自动驾驶决策系统依次进行第一学习阶段和第二学习阶段的训练;本发明无需大量的专家经验指导自动驾驶决策系统如何进行决策,节约了大量的训练成本,而且本发明的系统输出解析解作为经纠正的安全的动作向量,为驾驶的安全性提供了理论支撑,可以提高在实际应用中根据自动驾驶决策系统决策生成的动作向量进行自动驾驶的安全性。

Description

一种构建自动驾驶决策系统的方法、系统和介质
技术领域
本发明涉及智能车技术领域,具体来说涉及自动驾驶行为决策技术领域,更具体地说,涉及一种构建自动驾驶决策系统的方法、系统和介质。
背景技术
行为决策技术是自动驾驶技术中一个至关重要的组成环节。目前,自动驾驶决策方法主要可分为两大类:基于规则的方法和基于学习的方法。基于规则的方法是硬编码的规则方法,是由人类专家精心手工设计的传统方法,比如决策树,有限状态机。基于规则的方法在概念上易于理解,但往往仅适用于特定的驾驶环境,对环境变化非常敏感,通用性差。而相比于硬编码的规则方法,基于学习的方法在处理更复杂环境中的驾驶决策问题方法更具优势。随着近年来深度学习的不断发展,基于学习的方法又可分为监督模仿学习和深度强化学习。监督模仿学习利用收集到的大量人类专家驾驶数据来学习策略,该类方法严重依赖于训练数据的质量和行为场景的数量、种类,无法很好地应对数据集中未涉及到的驾驶场景。而强化学习方法则是通过不断探索、试错来自主学习一个能够最大化累计奖励期望的最优策略,是当前自动驾驶决策问题的一个具有潜力的发展方向。
然而,强化学习算法的探索过程可能会导致智能车采取一些不安全的动作,造成严重的人身伤害或经济损失。因此,针对安全性要求严格的自动驾驶场景,现有的提高强化学习安全性的方法有:奖励塑形(reward shaping)和调整强化学习的探索过程。奖励塑形的方法是通过在指导强化学习策略更新的奖励函数中添加相应的危险惩罚实现的,简单直观,但其无法保证驾驶策略学习过程中的安全性,只能做到减少违反安全的次数。另一类调整强化学习探索过程的方法又可细分为动作屏蔽(action masking)和动作纠正两类。动作屏蔽方法适用于离散动作空间的强化学习算法,每一次只采用当前状态下计算得到的安全动作集合中奖励值最大的动作执行。该类方法可保证策略学习过程的安全性,但其具有如下缺点:第一,该算法的实现需要先通过强化学习算法获得高层级驾驶命令,再匹配至相应的低层级行为控制。其中,高层级驾驶命令的语义和个数需要根据具体的驾驶任务来定义,低层级行为控制也需要利用专家经验来手工设计精调。这些专家经验的加入不仅带来了大量的人工投入,而且还无法保证策略收敛至最优点。第二,这些方法目前仅用于处理短程、低速、几何结构简单的道路场景。动作纠正方法则是从监测并纠正由策略生成的不安全动作的角度来处理安全性问题的。相比于动作屏蔽方法而言,动作纠正方法既可部署于高层级驾驶命令,又可直接部署于低层级的驾驶行为控制,可扩展性更好。但这类方法中的监测和动作纠正设计仍然是利用专家经验手工设计的,不仅需要大量的专家经验,而且现有的自动驾驶决策系统采用的动作纠正方法缺少理论支撑,难以保证在实际应用中根据自动驾驶决策系统在训练和执行过程中生成的动作向量的安全性。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种构建自动驾驶决策系统的方法、系统和介质。
本发明的目的是通过以下技术方案实现的:
根据本发明的第一方面,提供一种构建自动驾驶决策系统的方法,所述自动驾驶决策系统包括强化学习模块和安全保障模块,所述安全保障模块包括基于规则的子模块和基于数据驱动的子模块,所述方法包括:A1、随机初始化强化学习模块和基于数据驱动的子模块的神经网络参数;A2、对自动驾驶决策系统依次进行第一学习阶段和第二学习阶段的训练,其中,每个学习阶段分别多次执行以下训练:用强化学习模块根据智能车的当前状态生成动作向量,用安全保障模块对动作向量进行纠正得到安全的动作向量,根据该安全的动作向量在任务环境中执行驾驶后产生新的状态和奖励值,并收集本次纠正前和纠正后的经验样本存入经验池;从经验池中随机采样经验样本用于训练更新强化学习模块以及基于数据驱动的子模块的神经网络参数;其中,第一学习阶段用基于规则的子模块对动作向量进行纠正,第二学习阶段用基于数据驱动的子模块对动作向量进行纠正得到的解析解作为安全的动作向量。
在本发明的一些实施例中,多次执行第一学习阶段的训练,在基于数据驱动的子模块学习到的纠正能力达到预设水平后进入第二学习阶段。
在本发明的一些实施例中,自动驾驶决策系统通过以下方式确认基于数据驱动的子模块学习到的纠正能力是否达到预设水平:从经验池近期收集的经验样本中随机采样经验样本,用基于数据驱动的子模块根据采样的经验样本的当前状态和动作向量生成预测状态,计算预测状态与实际状态的相对误差,如果连续多次计算的相对误差均小于预设误差阈值,则判定基于数据驱动的子模块学习到的纠正能力已达到预设水平。
在本发明的一些实施例中,所述强化学习模块根据智能车的当前状态生成的动作向量、预测根据该动作向量在任务环境中执行驾驶后产生新的状态和奖励值,所述经验样本包括不安全的经验样本和安全的经验样本,其中,不安全的经验样本是被安全保障模块纠正前由强化学习模块生成的样本,安全的经验样本是经过安全保障模块纠正后的安全的动作向量应用到实际的任务环境中生成的样本。
在本发明的一些实施例中,所述经验样本包括:当前状态、动作向量、新的状态、奖励值和安全约束值,其中,安全约束值为第一数值时表示该经验样本是安全的经验样本,安全约束值为第二数值时表示该经验样本是不安全的经验样本。
在本发明的一些实施例中,所述基于规则的子模块包括运动学自行车模型和比例调节器,所述基于规则的子模块根据当前状态和强化学习模块生成的动作向量在所述运动学自行车模型模拟智能车的运动以预测智能车在未来的两个时间步内是否能够保障驾驶的安全性,若是,则保留强化学习模块生成的动作向量不变,若否,则用比例调节器纠正强化学习模块生成的动作向量使其脱离不安全的动作取值。
在本发明的一些实施例中,所述基于数据驱动的子模块包括李雅普诺夫函数网络和汽车动力学模型网络,通过李雅普诺夫函数网络和汽车动力学模型网络预测并求解一个可纠正不安全动作的解析解作为安全的动作向量。
在本发明的一些实施例中,基于数据驱动的子模块基于李雅普诺夫函数网络对强化学习模块生成的动作向量进行纠正得到解析解,并用汽车动力学模型网络根据当前状态和解析解预测智能车在未来的多个时间步内的预测状态是否安全,若是,则保留解析解不变,若否,则对解析解进行二次纠正。
在本发明的一些实施例中,所述强化学习模型采用根据深度确定性策略梯度算法构建和更新的Actor网络和Critic网络,所述Actor网络根据当前状态生成动作向量,Critic网络根据当前状态估计执行该动作向量后的期望累积奖励并根据期望累积奖励为该动作向量进行评分,所述强化学习模型用评分的结果指导Actor网络优化更新其神经网络参数。
在本发明的一些实施例中,所述第一学习阶段的训练采用的用于计算奖励值的奖励函数为适于让自动驾驶决策系统学习到在低速条件下沿道路中心安全地行驶到更远的距离的能力的函数。
优选的,所述第一学习阶段的训练采用的奖励函数为:
Figure BDA0002597972860000041
其中,rt为当前时刻t的奖励值,vt是当前智能车的行驶速度,Δt是当前时刻和下一时刻之间的时间间隔,ψ_dist=(cosψ-|sinψ|-|Δdist|),ψ是道路轴线和智能车间的夹角,Δdist是智能车距离道路中心的距离,Vlow是第一学习阶段设定的最大运行速度。
在本发明的一些实施例中,所述第二学习阶段的训练采用的用于计算奖励值的奖励函数为适于让自动驾驶决策系统学习到在保障安全的情况下提升行驶速度和稳定性的能力的函数。
优选的,所述第二学习阶段的训练采用的奖励函数为:
Figure BDA0002597972860000042
其中,Δl是相邻两时间步之间智能车行驶的距离,ψ是道路轴线和智能车间的夹角,Δdist是智能车距离道路中心的距离。
根据本发明的第二方面,提供一种采用第一方面所述方法构建的自动驾驶决策系统,所述自动驾驶决策系统包括:强化学习模块,用于根据智能车的当前状态生成动作向量;安全保障模块,所述安全保障模块包括基于数据驱动的子模块,所述基于数据驱动的子模块用于根据动作向量进行纠正得到的安全的动作向量控制智能车进行自动驾驶。
在本发明的一些实施例中,所述安全保障模块还包括基于规则的子模块,在基于数据驱动的子模块纠正得到的安全的动作向量不适用于当前任务环境时,所述基于规则的子模块对强化学习模块生成的动作向量进行纠正得到安全的动作向量以控制智能车进行自动驾驶。
根据本发明的第三方面,提供一种电子设备,包括:一个或多个处理器;以及存储器,其中存储器用于存储一个或多个可执行指令;所述一个或多个处理器被配置为经由执行所述一个或多个可执行指令以实现权利要求第一方面所述方法的步骤。
与现有技术相比,本发明的优点在于:
本发明无需大量的专家经验指导自动驾驶决策系统如何进行决策,节约了大量的训练成本,而且本发明的系统输出解析解作为经纠正的安全的动作向量,为驾驶的安全性提供了理论支撑,可以提高在实际应用中根据自动驾驶决策系统决策生成的动作向量进行自动驾驶的安全性。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的自动驾驶决策系统的结构示意图;
图2为根据本发明实施例的汽车动力学模型网络的结构示意图;
图3为根据本发明实施例的一种构建自动驾驶决策系统的方法的流程示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如在背景技术部分提到的,现有的自动驾驶技术中,基于规则的方法需要由人类专家精心手工设计,对环境变化非常敏感,通用性差;基于学习的方法分为监督模仿学习和深度强化学习,其中,监督模仿学习利用收集到的大量人类专家驾驶数据来学习策略,该类方法严重依赖于训练数据的质量和行为场景的数量、种类,无法很好地应对数据集中未涉及到的驾驶场景,而强化学习方法则是通过不断探索、试错来自主学习一个能够最大化累计奖励期望的最优策略,是当前自动驾驶决策问题的一个具有潜力的发展方向。可见现有技术中,采用基于规则的方法或者基于强化学习方法的系统,均无法很好地保证自动驾驶的安全性。因此,本发明提出一种构建自动驾驶决策系统的方法,该方法构建的自动驾驶决策系统包括强化学习模块、安全保障模块,安全保障模块包括基于规则的子模块和基于数据驱动的子模块,对自动驾驶决策系统依次进行第一学习阶段和第二学习阶段的训练得到最终的自动驾驶决策系统,第一学习阶段用基于规则的子模块对动作向量进行纠正,第二学习阶段用基于数据驱动的子模块对动作向量进行纠正得到解析解作为安全的动作向量,训练时不断累计经验样本用于后续训练,在该过程中,本发明无需大量的专家经验指导自动驾驶决策系统如何进行决策,节约了大量的训练成本,而且本发明的系统输出解析解作为经纠正的安全的动作向量,为驾驶的安全性提供了理论支撑,可以提高在实际应用中根据自动驾驶决策系统决策生成的动作向量进行自动驾驶的安全性。
本发明提供一种构建自动驾驶决策系统的方法,该自动驾驶决策系统包括强化学习模块、安全保障模块,安全保障模块包括基于规则的子模块和基于数据驱动的子模块,方法包括步骤A1、A2。为了更好地理解本发明,下面结合具体的实施例针对每一个步骤分别进行详细说明。
在步骤A1中,随机初始化强化学习模块和基于数据驱动的子模块的神经网络参数。
根据本发明的一个实施例,随机初始化前,参见图1,本发明先构建初始的自动驾驶决策系统,如前面提到的,该系统包括强化学习模块和安全保障模块。强化学习模块是指根据机器学习领域中的强化学习(Reinforcement Learning)技术构建的模块。简单地来说,强化学习的过程是通过与任务环境不断交互来收集经验数据,并利用不断探索试错的方式来指导决策算法向着可获取累计奖励期望最大的方向收敛。强化学习模型采用根据深度确定性策略梯度算法(Deep Deterministic Policy Gradient,简称DDPG算法)构建和更新的Actor网络和Critic网络,DDPG算法是一种用于连续控制的离线学习的Actor-Critic算法(等同于一些文献中所说的演员-评论家算法或者行动者和评论家算法),可以利用来自不同来源的数据来更新网络参数,具有较高的数据效率。安全保障模块是用于对强化学习模块输出的动作向量at进行纠正以输出安全的动作向量
Figure BDA0002597972860000061
的模块。智能车根据安全的动作向量进行安全动作以自动驾驶,安全动作例如包括转向、油门和刹车。安全保障模块包括基于规则的子模块和基于数据驱动的子模块。基于规则的子模块基于纠正不安全动作的动作调节器对动作向量进行粗调。基于数据驱动的子模块结合基于李雅普诺夫函数和汽车动力学模型的网络,利用拉格朗日乘子法和KKT(Karush Kuhn Tucker)条件求得纠正动作向量的解析解。构建好初始的自动驾驶决策系统后,对强化学习模块的Actor网络和Critic网络以及基于数据驱动的子模块的李雅普诺夫函数网络和汽车动力学模型的神经网络参数进行随机初始化。本发明中,参数、网络参数和神经网络参数这三个术语可以互换使用。
在步骤A2中,对自动驾驶决策系统依次进行第一学习阶段和第二学习阶段的训练。其中,每个学习阶段分别多次执行以下训练:用强化学习模块根据智能车的当前状态生成动作向量,用安全保障模块对动作向量进行纠正得到安全的动作向量,根据该安全的动作向量在任务环境中执行驾驶后产生新的状态(也可称下一状态,这两个术语在本发明中可以互换使用)和奖励值,并收集本次纠正前和纠正后的经验样本存入经验池;从经验池中随机采样经验样本用于训练更新强化学习模块以及基于数据驱动的子模块的神经网络参数;其中,第一学习阶段用基于规则的子模块对动作向量进行纠正,第二学习阶段用基于数据驱动的子模块对动作向量进行纠正得到的解析解作为安全的动作向量。
根据本发明的一个实施例,第一学习阶段的训练包括:用强化学习模块根据智能车的当前状态生成动作向量,用基于规则的子模块对动作向量进行纠正得到安全的动作向量,根据该安全的动作向量在任务环境中执行驾驶后产生新的状态和奖励值,并收集本次纠正前和纠正后的经验样本存入经验池;从经验池中随机采样经验样本用于训练更新强化学习模块以及基于数据驱动的子模块的神经网络参数。在开始进行第一学习阶段的训练时,由于基于数据驱动的子模块还不具备纠正能力,因此,最初由基于规则的子模块对动作向量进行纠正,并将相关的经验存入经验池用于训练更新强化学习模块以及基于数据驱动的子模块的神经网络参数。应当说明的是,本发明的基于规则的子模块与现有工作中基于规则的动作纠正方法高度依赖专家经验精调出一个同时满足性能、安全要求的基于规则的安全保障模块的优化方案不同。本发明的基于规则的子模块包括:一个简化的经典汽车运动学模型(即运动学自行车模型)和比例调节器,基于规则的子模块根据当前状态和强化学习模块生成的动作向量在运动学自行车模型模拟智能车的运动以预测智能车在未来的两个时间步内是否能够保障驾驶的安全性,若是,则保留强化学习模块生成的动作向量不变,若否,则用比例调节器纠正强化学习模块生成的动作向量使其脱离不安全的动作取值。本发明第一学习阶段的动作纠正思路是仅保证在较低速行驶中获取一个可摆脱当前强化学习模块的策略产生的不安全动作的动作调节器,该调节值无需投入大量的专家经验来确保其基于当前状态下的最优解,即本阶段鼓励在驾驶效率提升之前优先提高策略的安全性。换言之,本发明采用一个无需大量专家经验参数的运动学自行车模型即可很好地近似拟合汽车的运动,并通过该模型预测在当前状态和强化学习输出动作的共同作用下是否会在未来的两个时间步(即时刻t+1和t+2)内保证驾驶的安全性,如果能够保证则保持原动作不用纠正,否则利用比例调节器来粗纠正当前不安全的动作,使其脱离不安全的动作取值,但并不要求该纠正动作在性能上的表现好坏,即不需要付出大量的专家经验来精调纠正值在策略不断学习更新的同时,安全保障模块中基于数据驱动的子模块也利用第一学习阶段中不断收集的数据(即经验池中的经验样本)进行训练,使得本发明的自动驾驶决策系统在初期可以在不需要付出大量的专家经验学习到如何低速地安全行驶。
根据本发明的一个实施例,在第一学习阶段,自动驾驶决策系统根据适于该阶段的奖励函数计算奖励值。为了让智能车在第一学习阶段以较低速度安全行驶,该阶段的适应性奖励函数的设计原则为:自动匹配本阶段以驾驶性能提升之前优先提高策略安全性的策略学习目标,鼓励汽车保持低速驾驶,远离道路边界,避免使智能车严重偏离道路轴线方向的动作。优选的,第一学习阶段的训练采用的用于计算奖励值的奖励函数为适于让自动驾驶决策系统学习到在低速条件下沿道路中心安全地行驶到更远的距离的能力的函数。优选的,第一学习阶段的训练采用的奖励函数为:
Figure BDA0002597972860000081
其中,rt为当前时刻t的奖励值,vt是当前智能车的行驶速度,Δt是当前时刻和下一时刻之间的时间间隔,ψ_dist=(cosψ-|sinψ|-|Δdist|),ψ是道路轴线和智能车间的夹角,Δdist是智能车距离道路中心的距离,Vlow是第一学习阶段设定的最大运行速度。
根据本发明的一个实施例,在第一学习阶段,基于数据驱动的子模块基于经验池中的数据进行不断训练的过程中,自动驾驶决策系统或者安全保障模块分析基于数据驱动的子模块学习到的纠正能力是否达到预设水平,若是,则进入第二学习阶段的训练,若否,则继续或者重复第一学习阶段的训练。自动驾驶决策系统通过以下方式确认基于数据驱动的子模块学习到的纠正能力是否达到预设水平:从经验池近期收集的经验样本中随机采样经验样本,用基于数据驱动的子模块根据采样的经验样本的当前状态和动作向量生成预测状态,计算预测状态与实际状态的相对误差,如果连续多次计算的相对误差均小于预设误差阈值,则判定基于数据驱动的子模块学习到的纠正能力已达到预设水平。连续多次计算的具体次数可以根据用户设定的预设次数来设定,例如,用户设定预设次数为6次,预设误差阈值为3%,如果这连续6次的相对误差均小于3%,则判定基于数据驱动的子模块学习到的纠正能力已达到预设水平。该过程所采用的一个示意性的计算公式为:
Figure BDA0002597972860000082
其中,ω表示汽车动力学模型网络参数,M是采样数据量,N是传感器的数量,sn是第n位传感器采集的实际状态数据,fn是预测的第n位传感器的预测状态数据。例如,
Figure BDA0002597972860000083
表示第n位传感器采集状态st+1的实际状态数据,fn(st,at;ω)表示以ω为参数的汽车动力学网络模型预测在状态st下采用动作向量at时将得到的下一状态。应当理解的是,该判定方法仅是较优的一种方法,但不是唯一的方法,比如,用于还可以设定绝对误差作为是否进入第二学习阶段的判断标准,本发明对此不作任何限制。
根据本发明的一个实施例,进入第二学习阶段后,该阶段的训练包括:用强化学习模块根据智能车的当前状态生成动作向量,用基于数据驱动的子模块对动作向量进行纠正得到的解析解作为安全的动作向量(即用基于数据驱动的子模块基于动作向量预测并求解一个可纠正不安全动作的解析解作为安全的动作向量),根据该安全的动作向量在任务环境中执行驾驶后产生新的状态和奖励值,并收集本次纠正前和纠正后的经验样本存入经验池;从经验池中随机采样经验样本用于训练更新强化学习模块以及基于数据驱动的子模块的神经网络参数。可以看到,第二学习阶段是基于数据驱动的子模块自适应地进行纠正后,将经验样本存入经验池进行强化学习的过程。优选的,基于数据驱动的子模块包括李雅普诺夫函数网络和汽车动力学模型网络,通过李雅普诺夫函数网络和汽车动力学模型网络预测并求解一个可纠正不安全动作的解析解作为安全的动作向量。优选的,基于数据驱动的子模块基于李雅普诺夫函数网络对强化学习模块生成的动作向量进行纠正得到解析解,并用汽车动力学模型网络根据当前状态和解析解预测智能车在未来的多个时间步内的预测状态是否安全,若是,则保留解析解不变,若否,则对解析解进行二次纠正。
根据本发明的一个实施例,在第二学习阶段,自动驾驶决策系统根据适于该阶段的奖励函数计算奖励值。优选的,第二学习阶段的训练用于计算奖励值的奖励函数为适于让自动驾驶决策系统学习到在保障安全的情况下提升行驶速度和稳定性的能力的函数。
优选的,第二学习阶段的训练采用的奖励函数为:
Figure BDA0002597972860000091
其中,Δl是相邻两时间步之间智能车行驶的距离,ψ是道路轴线和智能车间的夹角,Δdist是智能车距离道路中心的距离。
根据本发明的一个实施例,在前面的第一学习阶段和第二学习阶段中,自动驾驶决策系统会不断地收集经验样本放入经验池。经验池在强化学习领域往往也称为重放缓冲器(Replay Buffer),这两个术语在本发明中可以互换使用。经验池可以设置为强化学习模块的一部分,强化学习模块收集经验样本存入经验池,但是经验池中的经验样本在强化学习模块和安全保障模块之间共享。强化学习模块和基于数据驱动的模块可以根据重放缓冲器内的经验样本进行强化学习。优选的,强化学习模块根据智能车的当前状态生成的动作向量并预测根据该动作向量在任务环境中执行驾驶后产生新的状态和奖励值(作为组成不安全的经验样本的元素)。经验样本包括不安全的经验样本和安全的经验样本,其中,不安全的经验样本是被安全保障模块纠正前由强化学习模块生成的样本,安全的经验样本是经过安全保障模块纠正后的安全的动作向量应用到实际的任务环境中生成的样本。优选的,经验样本包括:当前状态、动作向量、新的状态、奖励值和安全约束值,其中,安全约束值为第一数值时表示该经验样本是安全的经验样本,安全约束值为第二数值时表示该经验样本是不安全的经验样本。例如,第一数值是0,第二数值是1。每个经验样本还包括回合结束标志。计算累积奖励期望时根据回合结束标志判断是否结束计算。例如,回合结束标志包括第一标志、第二标志和第三标志。第一标志表示不结束,第二标志表示意外结束,第三标志表示成功结束。例如,第一标志是0,第二标志是1,第三标志是2。计算期望累积奖励时如果计算到某个经验样本时其回合结束标志是0则继续往后计算,如果是1或2则结束计算。
优选的,为了解决现有自动驾驶决策系统缺少对具有复杂道路环境的高速驾驶环境的研究且当前策略的安全约束全程依赖专家经验设计,难以确保在实际应用中策略学习和测试过程的安全性和稳定性的问题。本发明可以对任务环境中的场景进行优化设置。优选的,本发明的任务环境(也可称驾驶环境,在本发明中这两个术语可以互换使用)包括多种彼此不同的复杂道路环境。任务环境可以是在特定仿真器上设计的模拟的任务环境,也可以是实际的任务环境(也可称为真实的驾驶环境)。复杂道路环境例如是直道、直角弯、S弯、高低起伏的坡道、窄道和发卡弯中的多种。在训练的过程中,通过任务环境中多种彼此不同的路段,让智能车学习到在不同几何形状的路段下的策略,以适用于不同的任务环境,特别是直角弯、S弯、高低起伏的坡道、窄道、发卡弯这种复杂的道路环境。而且,结合本发明的这种两阶段的训练过程,在无需大量的专家经验的情况下,该自动驾驶决策系统在这些复杂道路环境下的驾驶安全性会逐渐得到提高,使得本发明能够安全地在这些环境下运行。
下面结合具体的公式说明强化学习模块和基于数据驱动的子模块的更新过程。
如前面提及的,强化学习模块包括Actor网络和Critic网络,Actor网络根据当前状态生成动作向量,Critic网络根据当前状态估计执行该动作向量后的累积奖励期望并根据累积奖励期望为该动作向量进行评分,强化学习模型用评分的结果指导Actor网络优化更新其神经网络参数。强化学习模块的神经网络参数是根据经验样本中的当前状态、动作向量、下一状态和奖励值来更新的。例如,以θπ为参数的Actor网络π(stπ)根据当前时刻t的状态st(即当前状态)生成动作向量at,以θQ为参数的Critic网络Q(st,atQ)根据当前时刻t的当前状态st和动作向量at估计后续的累积奖励期望,根据累积奖励期望为当前策略(决策产生的动作向量)的驾驶情况评分,用评分的结果指导Actor网络优化更新其神经网络参数。贝尔曼公式(Bellman Equation),Critic网络可进一步由公式Q(st,at)=E[rt+γQ(st+1,π(st+1))]来近似表达,其中,E[·]表示对括号中的内容计算期望,rt表示奖励值,γ是控制未来奖励影响占比的折扣因子,γ∈[0,1],γ具体数值可由用户根据经验或者需要设定,st+1表示下一状态,Q(st+1,π(st+1)表示根据下一状态st+1和动作π(st+1)估计下一状态st+1后续的累计奖励期望。应当理解的是,动作向量是用于让智能车采取相应的动作(转向、油门、刹车)进行自动驾驶的控制信号。生成动作向量的过程即是进行决策的过程。当前状态和下一状态中的状态就是指智能车驾驶至某个时刻由部署在智能车上的传感器收集到的状态数据;状态数据例如是车辆距离道路周围的距离、车辆当前航向角、车辆距离道路中心的距离、汽车车速、车轮转速、发动机转速。下一状态就是智能车驾驶至下一时刻时由部署在智能车上的传感器再次收集到的状态数据。
Actor网络的更新公式
Figure BDA0002597972860000111
表示为:
Figure BDA0002597972860000112
其中,M表示每次训练时采样的数据样本数量,γ是控制未来奖励影响占比的折扣因子(由用户根据经验设定),a表示动作,s表示状态,
Figure BDA0002597972860000113
表示Critic网络估计的累计奖励期望对动作向量的偏导数,
Figure BDA0002597972860000114
表示Actor网络估计的动作向量对该网络参数的偏导数;
Critic网络的损失函数L(θQ)如下:
Figure BDA0002597972860000115
其中,θQ表示Critic网络的网络参数,M表示每次训练时采样的数据样本数量,yt表示根据贝尔曼公式和Critic网络对应的目标网络计算的累计奖励期望的参考值,rt表示当前的动作向量的奖励值,
Figure BDA0002597972860000116
表示Critic网络对应的目标网络的网络参数,
Figure BDA0002597972860000117
可以简化为
Figure BDA0002597972860000118
表示下一状态st+1和动作向量at+1对应的以
Figure BDA0002597972860000119
为参数的Critic网络对应的目标网络,
Figure BDA00025979728600001110
是下一状态st+1和下一动作对应的以
Figure BDA00025979728600001111
为参数的Actor网络对应的目标网络,
Figure BDA00025979728600001112
表示Actor网络对应的目标网络的网络参数。
优选的,为了稳定训练,根据一个延迟因子来更新Actor网络和Critic网络的神经网络参数,Actor网络对应的目标网络的网络参数的更新公式为:
Figure BDA00025979728600001113
其中,τ表示延迟因子,
Figure BDA00025979728600001114
表示当前更新后的Actor网络对应的目标网络的网络参数,θt+1 π表示当前更新后的Actor网络的网络参数,
Figure BDA0002597972860000121
表示当前还未更新时的Actor网络的目标网络的网络参数;Critic网络对应的目标网络的网络参数的更新公式为:
Figure BDA0002597972860000122
其中,τ表示延迟因子,
Figure BDA0002597972860000123
表示当前更新后的Critic网络对应的目标网络的网络参数,θt+1 Q表示当前更新后的Critic网络的网络参数,
Figure BDA0002597972860000124
表示当前还未更新时的Critic网络对应的目标网络的网络参数。
如前面提及的,基于数据驱动的子模块包括:李雅普诺夫函数网络和汽车动力学模型网络。
基于数据驱动的子模块中的李雅普诺夫函数网络用于估算累计安全约束的期望值函数,该函数通过纠正强化学习模块生成的不安全动作的方式来促使强化学习策略在保证性能的同时,向着更安全的方向更新网络。李雅普诺夫函数网络的神经网络参数是根据经验样本中的当前状态、动作向量、新的状态和安全约束来更新的。李雅普诺夫函数网络也可以采用类似深度确定性策略梯度算法中Critic网络的构建和参数更新(基于该网络的纠正原理,也可以采用其他的神经网络来实现),其优化目标函数可表达为:
Figure BDA0002597972860000125
Figure BDA0002597972860000126
Figure BDA0002597972860000127
其中,
Figure BDA0002597972860000128
是基于李雅普诺夫函数的纠正操作后的动作向量,
Figure BDA0002597972860000129
是最小化纠正动作和策略输出动作间差异的最优解,πθ(st)是更新后的强化学习策略,πθ-1(st)是更新前的强化学习策略,d0是累计安全损失的上限阈值,s.t.表示约束条件(Subjectto,受限制于),ξ表示李雅普诺夫函数网络的网络参数,
Figure BDA00025979728600001210
是以当前状态和基于李雅普诺夫函数的纠正操作后的动作向量为输入的李雅普诺夫函数累计安全约束期望,
Figure BDA00025979728600001211
表示以当前状态和强化学习模块的Actor网络的动作向量为输入的李雅普诺夫函数累计安全约束期望,
Figure BDA00025979728600001212
表示以本回合初始状态为输入在当前决策方案下的安全约束期望。李雅普诺夫函数神经网络的网络结构和更新方式可以设置为与强化学习模块的Critic网络一致,由于前面对这种网络结构进行了详细的描述,此处不再赘述,不同点是李雅普诺夫函数网络评估的累计安全约束期望,即强化学习模块中的Critic网络中的奖励值rt换为安全约束dt则可得到李雅普诺夫函数网络,计算时也通过回合结束标志来判断是否结束当前计算。通过对李雅普诺夫函数进行一阶泰勒展开,可以将上述优化目标转化为:
Figure BDA0002597972860000131
Figure BDA0002597972860000132
Figure BDA0002597972860000133
其中,η(st)是平衡最大化奖励和保持安全两者影响的调节因子,η(st)∈[0,1),
Figure BDA0002597972860000134
表示李雅普诺夫函数对于动作向量的偏导数,T表示转置,:=表示赋值。由于本发明的安全约束可表达为单一变量形式,因此,可通过拉格朗日乘子法和KKT(Karush Kuhn Tucker)条件求得基于李雅普诺夫函数的解析解(也可称为解析纠正动作解),公式如下:
Figure BDA0002597972860000135
Figure BDA0002597972860000136
其中,[·]+=max(·,0),λ*(st)表示求出的最优的拉格朗日乘子系数。由于基于李雅普诺夫函数的纠正步骤总是保证纠正后动作向量的安全性不会差于强化学习策略的输出动作,并利用纠正后更安全的动作引导强化学习模块的Actor网络的参数更新。换言之,如果更新前强化学习模块的Actor网络的强化学习策略是合理安全的,基于李雅普诺夫函数的解析解也能保证安全性;否则基于李雅普诺夫函数的动作纠正只能保证策略向着更安全的方向学习,但无法保证安全约束的0违反,即李雅普诺夫函数网络不能保证完全不违反安全约束。因此,本发明还设计了一个基于汽车动力学模型网络的解析解来补偿上述问题。
为了进一步提高安全性,将当前状态和经过李雅普诺夫函数网络纠正后的动作向量再输入汽车动力学模型网络来预测智能车的多步未来状态是否安全,一旦检测到未来一段范围内可能发生危险,则提早纠正当前动作使其摆脱预测危险的发生,加强算法对高速驾驶时遭遇危险状况的反应灵敏度。例如,设置预测的最大步数为P,如果预测从当前状态往后的未来P步状态均安全,则保持李雅普诺夫函数网络的纠正结果,否则需对李雅普诺夫函数网络纠正后的动作向量进行二次纠正。由于此处的动作纠正是基于汽车动力学模型网络的多步未来预测,因此,可以将其简称为远见纠正。此时对应的优化目标函数如下:
Figure BDA0002597972860000141
Figure BDA0002597972860000142
其中,
Figure BDA0002597972860000143
是经过基于李雅普诺夫函数纠正后的动作向量(对应于前面的动作向量
Figure BDA0002597972860000144
),at是经过远见纠正后的动作向量空间中的动作向量,
Figure BDA0002597972860000145
是从经过远见纠正后的动作向量空间得到的最优的动作向量(即经过基于数据驱动的子模块纠正后输出的动作向量),
Figure BDA0002597972860000146
是时刻t+k的预测状态,也可简称为预测状态
Figure BDA0002597972860000147
可简化表示为f(st,at;ω),表示神经网络参数为ω的汽车动力学模型,
Figure BDA0002597972860000148
Figure BDA0002597972860000149
的第i位传感器数据用于表征该时间步下智能车距离道路中心轴线的距离,K表示多步预测的步数上限值,
Figure BDA00025979728600001410
Figure BDA00025979728600001411
的第j位传感器数据用于表征时刻t+k时智能车的行驶速度,Ts是智能车距离道路边缘的下限安全阈值,Tv是防止智能车在学习过程中行驶过于保守降低驾驶效率的速度下限阈值。由于每次只会使能一个约束,即当安全约束起作用时,不论速度如何优先保证安全;而当在安全驾驶中出现速度约束不满足的情况,则激活纠正动作来调整驾驶速度。因此,只有单一约束在同一时刻发挥作用的情况,可通过拉格朗日乘子法和KKT条件来求得上述优化目标的经远见纠正的解析解(也可称为解析远见纠正解),公式如下:
Figure BDA00025979728600001412
Figure BDA00025979728600001413
Figure BDA00025979728600001414
Figure BDA00025979728600001415
其中,
Figure BDA00025979728600001416
表示时刻t+k纠正后的最优动作向量,
Figure BDA00025979728600001417
是安全约束的最优化的拉格朗日乘子系数,
Figure BDA00025979728600001418
是速度约束的最优化的拉格朗日乘子系数,
Figure BDA00025979728600001419
是一步安全约束预测
Figure BDA00025979728600001420
的动作偏导,
Figure BDA00025979728600001421
是一步速度约束预测
Figure BDA00025979728600001422
的动作偏导。
训练汽车动力学模型网络f(st,at;ω)的经验样本采样自经验池。汽车动力学模型网络的神经网络参数是根据经验样本中当前状态、动作向量、新的状态来更新的。如图2所示,该汽车动力学模型网络的结构主要基于残差网络的捷径连接结构(ShortcutConnection),将其与全连接层进行结合,设计了一种对动作变化敏感的残差网络结构,该残差网络结构包括依次连接的四个全连接层和线形整流激活函数层,其中,四个全连接层的前三层的神经元的激励函数采用线形整流激活函数,第四层采用全连接层,输入残差网络结构的向量依次经过四个全连接层的处理后的向量与输入残差网络结构的向量相加后向量输入后续的线形整流激活函数层,输出基于当前状态应用当前动作后的状态变化量
Figure BDA0002597972860000151
简单地说,该汽车动力学模型获取的当前状态和动作向量经过一个全连接层(FullyConnected Layers,FC)的连接后进入残差网络结构,通过由全连接层和线形整流激活函数(ReLU)构成的残差网络结构,输出基于当前状态应用当前动作后的状态变化量
Figure BDA0002597972860000156
再加上当前状态st,最终得到下一状态的预测值
Figure BDA0002597972860000157
该过程的计算公式如下:
Figure BDA0002597972860000152
其中,
Figure BDA0002597972860000153
是应用动作后引起的智能车状态变化量。损失函数采用智能车多传感器的加权均方差损失,公式如下:
Figure BDA0002597972860000154
其中,M是采样数据量,N是传感器的数量,sn是第n位传感器采集的实际状态数据,fn是预测的第n位传感器的预测状态数据,kn是第n位传感器对应数据的权重参数。多传感器例如是测距仪、角度传感器、汽车速度传感器、车轮转速传感器、发动机转速传感器。测距仪可以用于测量智能车距离道路中心的距离,角度传感器例如可以用于测量道路轴线(若是弯道则是当前所处道路位置的瞬时轴线)和智能车间的夹角(车辆当前航向角)。应当注意的是,虽然本发明的实施例仅给出了这些传感器用于示例,但是,实际上,其他与智能车行车状态有关的传感器感测的状态量也可用本发明,本发明对此不作任何限制。
根据本发明的一个实施例,提供一种构建自动驾驶决策系统的方法,该系统包括强化学习模块(也可称深度强化学习模块)、安全保障模块,安全保障模块包括基于规则的子模块和基于数据驱动的子模块,参见图3,该方法包括:步骤S1:获取由安装在智能车上的多传感器数据组成的当前状态,初始化强化学习模块、基于数据驱动的子模块的神经网络参数(强化学习模块的神经网络参数包括前面提及的参数θπ、θQ
Figure BDA0002597972860000155
基于数据驱动的子模块的神经网络参数包括前面提及的参数ξ、ω),进入第一学习阶段;步骤S2:在第一学习阶段中,安全保障模块使能其基于规则的子模块,当前状态首先输入强化学习模块,由其神经网络(也可称策略网络)输出一个用于连续控制车体行驶的动作向量,该动作向量再通过基于规则的子模块的安全监测和纠正后,输出安全的动作向量;步骤S3:将该安全的动作向量应用于实际的任务环境,获取新的状态,并利用适应第一学习阶段的奖励函数计算奖励值,再将该过程中产生的经验数据(对应于经验样本)收集到强化学习的重放缓冲器(对应于经验池)中;步骤S4:根据收集到的经验数据训练并更新强化学习模块以及基于数据驱动的模块的网络参数;步骤S5:判断基于数据驱动的子模块是否已经学习到可靠的修正能力,若是,则本发明进入第二学习阶段,若否,则返回步骤S2;步骤S6:在第二学习阶段中,当前状态先输入强化学习模块,其输出的动作向量再通过基于数据驱动的子模块,利用李雅普诺夫函数网络和汽车动力学模型网络监测并求解一个可纠正不安全动作的解析解作为安全的动作向量进行输出;步骤S7:输出的安全的动作向量应用于任务环境,获取新的状态,并利用适应第二学习阶段的奖励函数计算奖励值,再将该过程中产生的经验数据收集到强化学习的重放缓冲器中;步骤S8:根据收集到的经验数据进一步训练并更新强化学习模块以及基于数据驱动的子模块的网络参数。
本发明还提供一种采用前述实施例所述方法构建的自动驾驶决策系统,所述自动驾驶决策系统包括:强化学习模块,用于根据智能车的当前状态生成动作向量;安全保障模块,所述安全保障模块包括基于数据驱动的子模块,所述基于数据驱动的子模块用于根据动作向量进行纠正得到的安全的动作向量控制智能车进行自动驾驶。优选的,安全保障模块还包括基于规则的子模块,在基于数据驱动的子模块纠正得到的安全的动作向量不适用于当前任务环境时,所述基于规则的子模块对强化学习模块生成的动作向量进行纠正得到安全的动作向量以控制智能车进行自动驾驶。应当理解的是,在本发明的系统应用到实际环境后(即在智能车上部署自动驾驶决策系统让智能车在实际环境中进行自动驾驶),本发明的强化学习模块和基于数据驱动的子模块仍可以不断地收集数据作为经验样本存入经验池,不断地进行强化学习,使得强化学习模块和基于数据驱动的子模块进一步的提高。该实施例的技术方案至少能够实现以下有益技术效果:由于智能车在基于数据驱动的子模块纠正得到的安全的动作向量不适用于当前任务环境时,基于规则的子模块对强化学习模块生成的动作向量进行纠正得到安全的动作向量以控制智能车进行自动驾驶,可以使得本发明的系统在新场景下也具有较好的适应性,而且,由于本发明的系统在应用过程中不断地进行强化学习,其多次经历某个特定场景后,其针对该特定场景进行适应性也会增强。具体表现在,第一次或者前几次经过该新的特定场景时会用基于规则的子模块纠正得到的安全的动作向量进行低速行驶并训练强化学习模块和基于数据驱动的子模块,强化学习策略将学习到新知识提升驾驶性能(更安全、更高效),且当基于数据驱动的子模块学习到的纠正能力达到预设水平后再次经历该特定场景时,则基于数据驱动的子模块可以对强化学习模块输出的动作向量进行可靠地纠正,输出安全的动作向量控制智能车安全行驶。与现有工作相比,本发明能够同时保障在策略在探索学习过程和测试执行阶段的驾驶安全性,并且能够快速地收敛至一个更高效、稳定的自动驾驶决策系统,实现了比现有方法的平均速度高6%且稳定性提高3%的性能提升,在实验的高速驾驶下自动驾驶决策系统未出现违反安全性的决策(0安全违反)。此外,本发明还缓解了现有方法对专家经验的长期依赖,也无需预先收集满足特定需求的大量专家数据,增强了算法在新场景的通用性。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (16)

1.一种构建自动驾驶决策系统的方法,所述自动驾驶决策系统包括强化学习模块和安全保障模块,所述安全保障模块包括基于规则的子模块和基于数据驱动的子模块,所述方法包括:
A1、随机初始化强化学习模块和基于数据驱动的子模块的神经网络参数;
A2、对自动驾驶决策系统依次进行第一学习阶段和第二学习阶段的训练,其中,每个学习阶段分别多次执行以下训练:
用强化学习模块根据智能车的当前状态生成动作向量,用安全保障模块对动作向量进行纠正得到安全的动作向量,根据该安全的动作向量在任务环境中执行驾驶后产生新的状态和奖励值,并收集本次纠正前和纠正后的经验样本存入经验池;
从经验池中随机采样经验样本用于训练更新强化学习模块以及基于数据驱动的子模块的神经网络参数;
其中,第一学习阶段用基于规则的子模块对动作向量进行纠正,第二学习阶段用基于数据驱动的子模块对动作向量进行纠正得到的解析解作为安全的动作向量,其中,基于规则的子模块包括运动学自行车模型和比例调节器,所述基于规则的子模块根据当前状态和强化学习模块生成的动作向量在所述运动学自行车模型模拟智能车的运动以预测智能车在未来的两个时间步内是否能够保障驾驶的安全性以对动作向量进行纠正;基于数据驱动的子模块包括李雅普诺夫函数网络和汽车动力学模型网络,通过李雅普诺夫函数网络和汽车动力学模型网络预测并求解一个可纠正不安全动作的解析解作为安全的动作向量。
2.根据权利要求1所述的构建自动驾驶决策系统的方法,其特征在于,多次执行第一学习阶段的训练,在基于数据驱动的子模块学习到的纠正能力达到预设水平后进入第二学习阶段。
3.根据权利要求2所述的构建自动驾驶决策系统的方法,其特征在于,自动驾驶决策系统通过以下方式确认基于数据驱动的子模块学习到的纠正能力是否达到预设水平:
从经验池近期收集的经验样本中随机采样经验样本,用基于数据驱动的子模块根据采样的经验样本的当前状态和动作向量生成预测状态,计算预测状态与实际状态的相对误差,如果连续多次计算的相对误差均小于预设误差阈值,则判定基于数据驱动的子模块学习到的纠正能力已达到预设水平。
4.根据权利要求2所述的构建自动驾驶决策系统的方法,其特征在于,所述强化学习模块根据智能车的当前状态生成的动作向量、预测根据该动作向量在任务环境中执行驾驶后产生新的状态和奖励值,
所述经验样本包括不安全的经验样本和安全的经验样本,其中,不安全的经验样本是被安全保障模块纠正前由强化学习模块生成的样本,安全的经验样本是经过安全保障模块纠正后的安全的动作向量应用到实际的任务环境中生成的样本。
5.根据权利要求4所述的构建自动驾驶决策系统的方法,其特征在于,所述经验样本包括:当前状态、动作向量、新的状态、奖励值和安全约束值,其中,安全约束值为第一数值时表示该经验样本是安全的经验样本,安全约束值为第二数值时表示该经验样本是不安全的经验样本。
6.根据权利要求2所述的构建自动驾驶决策系统的方法,其特征在于,所述基于规则的子模块按照以下方式对动作向量进行纠正:预测智能车在未来的两个时间步内是否能够保障驾驶的安全性,若是,则保留强化学习模块生成的动作向量不变,若否,则用比例调节器纠正强化学习模块生成的动作向量使其脱离不安全的动作取值。
7.根据权利要求6所述的构建自动驾驶决策系统的方法,其特征在于,基于数据驱动的子模块基于李雅普诺夫函数网络对强化学习模块生成的动作向量进行纠正得到解析解,并用汽车动力学模型网络根据当前状态和解析解预测智能车在未来的多个时间步内的预测状态是否安全,若是,则保留解析解不变,若否,则对解析解进行二次纠正。
8.根据权利要求1至7任一项所述的构建自动驾驶决策系统的方法,其特征在于,所述强化学习模型采用根据深度确定性策略梯度算法构建和更新的Actor网络和Critic网络,所述Actor网络根据当前状态生成动作向量,Critic网络根据当前状态估计执行该动作向量后的期望累积奖励并根据期望累积奖励为该动作向量进行评分,所述强化学习模型用评分的结果指导Actor网络优化更新其神经网络参数。
9.根据权利要求8所述的构建自动驾驶决策系统的方法,其特征在于,所述第一学习阶段的训练采用的用于计算奖励值的奖励函数为适于让自动驾驶决策系统学习到在低速条件下沿道路中心安全地行驶到更远的距离的能力的函数。
10.根据权利要求9所述的构建自动驾驶决策系统的方法,其特征在于,所述第一学习阶段的训练采用的奖励函数为:
Figure FDA0003987102780000031
其中,rt为当前时刻t的奖励值,vt是当前智能车的行驶速度,Δt是当前时刻和下一时刻之间的时间间隔,ψ_dist=(cosψ-|sinψ|-|Δdist|),ψ是道路轴线和智能车间的夹角,Δdist是智能车距离道路中心的距离,Vlow是第一学习阶段设定的最大运行速度。
11.根据权利要求9所述的构建自动驾驶决策系统的方法,其特征在于,所述第二学习阶段的训练采用的用于计算奖励值的奖励函数为适于让自动驾驶决策系统学习到在保障安全的情况下提升行驶速度和稳定性的能力的函数。
12.根据权利要求11所述的构建自动驾驶决策系统的方法,其特征在于,所述第二学习阶段的训练采用的奖励函数为:
Figure FDA0003987102780000032
其中,Δl是相邻两时间步之间智能车行驶的距离,ψ是道路轴线和智能车间的夹角,Δdist是智能车距离道路中心的距离。
13.一种采用权利要求1至12任一项所述方法构建的自动驾驶决策系统,其特征在于,所述自动驾驶决策系统包括:
强化学习模块,用于根据智能车的当前状态生成动作向量;
安全保障模块,所述安全保障模块包括基于数据驱动的子模块,所述基于数据驱动的子模块用于根据动作向量进行纠正得到的安全的动作向量控制智能车进行自动驾驶。
14.根据权利要求13所述的自动驾驶决策系统,其特征在于,所述安全保障模块还包括基于规则的子模块,在基于数据驱动的子模块纠正得到的安全的动作向量不适用于当前任务环境时,所述基于规则的子模块对强化学习模块生成的动作向量进行纠正得到安全的动作向量以控制智能车进行自动驾驶。
15.一种计算机可读存储介质,其特征在于,其上包含有计算机程序,所述计算机程序可被处理器执行以实现权利要求1至12中任一项所述方法的步骤。
16.一种电子设备,其特征在于,包括:
一个或多个处理器;以及
存储器,其中存储器用于存储一个或多个可执行指令;
所述一个或多个处理器被配置为经由执行所述一个或多个可执行指令以实现权利要求1至12中任一项所述方法的步骤。
CN202010715409.7A 2020-07-23 2020-07-23 一种构建自动驾驶决策系统的方法、系统和介质 Active CN111985614B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010715409.7A CN111985614B (zh) 2020-07-23 2020-07-23 一种构建自动驾驶决策系统的方法、系统和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010715409.7A CN111985614B (zh) 2020-07-23 2020-07-23 一种构建自动驾驶决策系统的方法、系统和介质

Publications (2)

Publication Number Publication Date
CN111985614A CN111985614A (zh) 2020-11-24
CN111985614B true CN111985614B (zh) 2023-03-24

Family

ID=73438738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010715409.7A Active CN111985614B (zh) 2020-07-23 2020-07-23 一种构建自动驾驶决策系统的方法、系统和介质

Country Status (1)

Country Link
CN (1) CN111985614B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112802356B (zh) * 2020-12-30 2022-01-04 深圳市微网力合信息技术有限公司 一种基于物联网的车辆自动驾驶方法及终端
CN112801273A (zh) * 2021-01-29 2021-05-14 江苏大学 一种基于变分自编码器和强化学习的自动驾驶控制器及训练方法
CN112861269B (zh) * 2021-03-11 2022-08-30 合肥工业大学 一种基于深度强化学习优先提取的汽车纵向多态控制方法
CN115113618A (zh) * 2021-03-23 2022-09-27 华东师范大学 Agv小车深度视觉导航控制系统以及控制方法
CN112977606B (zh) * 2021-04-01 2022-11-11 清华大学 基于ddpg的线控转向系统转向补偿控制方法及装置
CN113159341A (zh) * 2021-04-23 2021-07-23 中国电力科学研究院有限公司 融合深度强化学习和专家经验的配电网辅助决策方法及系统
CN113386790B (zh) * 2021-06-09 2022-07-12 扬州大学 一种面向跨海大桥路况的自动驾驶决策方法
CN113591375B (zh) * 2021-07-16 2023-04-25 四川大学 一种基于智能体的多能源系统最优协同运行方法
CN113552883B (zh) * 2021-07-19 2024-05-14 吉林大学 基于深度强化学习的地面无人车自主驾驶方法及系统
CN113501008B (zh) * 2021-08-12 2023-05-19 东风悦享科技有限公司 一种基于强化学习算法的自动驾驶行为决策方法
CN113561986B (zh) * 2021-08-18 2024-03-15 武汉理工大学 自动驾驶汽车决策方法及装置
CN113460090B (zh) * 2021-08-18 2023-09-12 清华大学 自动驾驶车辆t型紧急避撞控制方法、系统、介质及设备
CN113734170B (zh) * 2021-08-19 2023-10-24 崔建勋 一种基于深度q学习的自动驾驶换道决策方法
CN113449823B (zh) * 2021-08-31 2021-11-19 成都深蓝思维信息技术有限公司 自动驾驶模型训练方法及数据处理设备
CN114137967B (zh) * 2021-11-23 2023-12-15 常熟理工学院 基于多网络联合学习的驾驶行为决策方法
CN114348021B (zh) * 2022-01-05 2023-10-20 清华大学 基于强化学习的车辆自主极限驾驶规划控制方法及系统
CN116052412B (zh) * 2022-11-23 2023-08-18 兰州大学 融合物理信息和深度强化学习的自动驾驶车辆控制方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110568760A (zh) * 2019-10-08 2019-12-13 吉林大学 适用于换道及车道保持的参数化学习决策控制系统及方法
CN110969848A (zh) * 2019-11-26 2020-04-07 武汉理工大学 一种对向双车道下基于强化学习的自动驾驶超车决策方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10845815B2 (en) * 2018-07-27 2020-11-24 GM Global Technology Operations LLC Systems, methods and controllers for an autonomous vehicle that implement autonomous driver agents and driving policy learners for generating and improving policies based on collective driving experiences of the autonomous driver agents

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110568760A (zh) * 2019-10-08 2019-12-13 吉林大学 适用于换道及车道保持的参数化学习决策控制系统及方法
CN110969848A (zh) * 2019-11-26 2020-04-07 武汉理工大学 一种对向双车道下基于强化学习的自动驾驶超车决策方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于深度递归强化学习的无人自主驾驶策略研究";李志航;《工业控制计算机》;20200425;全文 *

Also Published As

Publication number Publication date
CN111985614A (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
CN111985614B (zh) 一种构建自动驾驶决策系统的方法、系统和介质
CN110221611B (zh) 一种轨迹跟踪控制方法、装置及无人驾驶车辆
US20200216094A1 (en) Personal driving style learning for autonomous driving
US11753023B2 (en) Adaptive control of autonomous or semi-autonomous vehicle
CN111775949B (zh) 一种人机共驾控制系统的个性化驾驶员转向行为辅助方法
CN103381826B (zh) 基于近似策略迭代的自适应巡航控制方法
EP3824356B1 (en) Constraint adaptor for reinforcement learning control
CN110525428B (zh) 一种基于模糊深度强化学习的自动泊车方法
CN110027547B (zh) 车辆横向控制方法和装置
CN110068302A (zh) 一种基于深度神经网络的车辆测距方法
US11579574B2 (en) Control customization system, control customization method, and control customization program
US20210213977A1 (en) Nearby Driver Intent Determining Autonomous Driving System
US20230055066A1 (en) Driver command prediction
CN110879595A (zh) 一种基于深度强化学习的无人矿卡循迹控制系统及方法
CN113015981A (zh) 利用第一原则和约束进行有效、连续和安全学习的系统和方法
CN114761895A (zh) 混合自动车队的直接和间接控制
CN111830962A (zh) 强化学习代理控制器的解释数据
CN116486356A (zh) 一种基于自适应学习技术的狭窄场景轨迹生成方法
US11679759B2 (en) System and method for adaptive control of vehicle dynamics
CN117302208A (zh) 一种基于风险态势感知约束策略优化的车道保持辅助方法
US11809193B2 (en) Data-driven control for autonomous driving
CN117406756A (zh) 一种运动轨迹参数的确定方法、装置、设备和存储介质
CN117389276A (zh) 一种基于行驶风险预测的无人车行驶路径跟踪控制方法
Németh et al. Performance guarantees on machine-learning-based overtaking strategies for autonomous vehicles
CN114347998B (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
GR01 Patent grant
GR01 Patent grant