CN111845741B - 一种基于分层强化学习的自动驾驶决策控制方法及系统 - Google Patents
一种基于分层强化学习的自动驾驶决策控制方法及系统 Download PDFInfo
- Publication number
- CN111845741B CN111845741B CN202010598169.7A CN202010598169A CN111845741B CN 111845741 B CN111845741 B CN 111845741B CN 202010598169 A CN202010598169 A CN 202010598169A CN 111845741 B CN111845741 B CN 111845741B
- Authority
- CN
- China
- Prior art keywords
- action
- decision
- layer agent
- intelligent vehicle
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000002787 reinforcement Effects 0.000 title claims abstract description 38
- 230000009471 action Effects 0.000 claims abstract description 191
- 238000012549 training Methods 0.000 claims abstract description 71
- 230000003993 interaction Effects 0.000 claims abstract description 17
- 230000006399 behavior Effects 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 14
- 230000001133 acceleration Effects 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 51
- 230000008859 change Effects 0.000 claims description 15
- 230000000875 corresponding effect Effects 0.000 claims description 11
- 230000000694 effects Effects 0.000 claims description 6
- 239000000203 mixture Substances 0.000 claims description 4
- 230000007704 transition Effects 0.000 claims description 2
- 238000005457 optimization Methods 0.000 claims 1
- WWJZWCUNLNYYAU-UHFFFAOYSA-N temephos Chemical compound C1=CC(OP(=S)(OC)OC)=CC=C1SC1=CC=C(OP(=S)(OC)OC)C=C1 WWJZWCUNLNYYAU-UHFFFAOYSA-N 0.000 claims 1
- 239000003795 chemical substances by application Substances 0.000 description 76
- 230000008569 process Effects 0.000 description 6
- 230000006872 improvement Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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
- 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/10—Path keeping
- B60W30/12—Lane keeping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/04—Conjoint control of vehicle sub-units of different type or different function including control of propulsion units
- B60W10/06—Conjoint control of vehicle sub-units of different type or different function including control of propulsion units including control of combustion engines
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/18—Conjoint control of vehicle sub-units of different type or different function including control of braking systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/20—Conjoint control of vehicle sub-units of different type or different function including control of steering systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18163—Lane change; Overtaking manoeuvres
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- 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/0025—Planning or execution of driving tasks specially adapted for specific operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
-
- 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
- B60W2710/00—Output or target parameters relating to a particular sub-units
- B60W2710/06—Combustion engines, Gas turbines
- B60W2710/0605—Throttle position
-
- 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
- B60W2710/00—Output or target parameters relating to a particular sub-units
- B60W2710/18—Braking system
-
- 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
- B60W2710/00—Output or target parameters relating to a particular sub-units
- B60W2710/20—Steering systems
Landscapes
- Engineering & Computer Science (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Feedback Control In General (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
本发明公开了一种基于分层强化学习的自动驾驶决策控制方法及系统,包括动作层Agent和决策层Agent。动作层Agent为处理连续行为的基于策略梯度的强化学习算法,通过和道路环境信息交互训练出正确的动作网络;决策层Agent选择处理离散行为的基于价值的强化学习算法,通过和车流交通状态信息交互训练出正确的决策网络。通过先训练动作层Agent,在基于已经训练完成的动作层Agent的基础上训练决策层Agent,使两次训练任务明确,提高了学习效率。本发明避免了急加速和急减速的情况发生,改善了整车舒适性。
Description
技术领域
本发明属于智能车自动驾驶领域,涉及一种基于分层强化学习的自动驾驶决策控制方法系统。
背景技术
强化学习为一种快速发展的机器学习方法,强调基于当前的环境状态,选择一个动作使得该动作能够取得最大化的预期奖励。它是一种试错的学习方式,学习过程中通过奖励的刺激,逐渐能够做出最大化预期奖励的动作。其中,无模型的强化学习方式,由于其不需要建模,渐进性能好而备受关注。DDPG和DQN算法分别为两种不同的无模型强化学习方法,DDPG为一种基于策略梯度的强化学习算法用来处理连续行为,DQN为一种基于价值的强化学习算法用来处理离散行为。
传统的自动驾驶控制方法很难兼顾复杂的环境而做出正确的决策和动作,已经渐渐不能满足自动驾驶的决策和控制要求。随着人工智能算法的发展以及车载硬件的不断提高,解决该问题的直接方法为通过强化学习的方式,训练一组端到端的神经网络用来映射当前的环境状态和动作决策输出。其中,关于自动驾驶的动作输出包括方向盘、油门和刹车均为连续的动作量,比较适合选择处理连续行为的强化学习算法;自动驾驶的决策输出包括左换道、右换道和车道保持均为离散的、单一的行为,比较适合选择处理离散行为的强化学习算法。
发明内容
基于上述背景,本发明提出了一种基于DDPG动作控制和DQN决策的分层强化学习自动驾驶决策控制方法及系统,通过先训练动作再训练决策的方式,提高了训练效率。将智能车所在的环境分为道路环境信息和车流交通状态信息,通过和道路环境信息交互来训练动作层Agent,通过和车流交通状态信息交互来训练决策层Agent,使得智能车能复杂场景的环境中做出正确的动作和决策。
本发明提出的一种基于分层强化学习的自动驾驶决策控制方法,包括设计两部分:动作层Agent和决策层Agent。动作层Agent选择处理连续行为的基于策略梯度的强化学习算法,通过和道路环境信息交互训练出正确的动作网络;决策层Agent选择处理离散行为的基于价值的强化学习算法,通过和车流交通状态信息交互训练出正确的决策网络。具体包括一下内容:
动作层Agent通过环境交互,获取道路环境信息动作层Agent获得状态量st后得出一个确定动作μt,再通过给该确定动作μt一个探索噪声nt,合成一个具有一定探索性的动作at。智能车在执行动作at后会得到环境的反馈量和rl。反馈量为新的状态量,rl为执行动作at后获得的奖励。通过改变任务,使得动作层Agent学会执行左换道、右换道和车道保持动作。
进一步,所述动作at包括方向盘转角aδ,油门ac和刹车ab。其中油门动作ac和刹车动作ab用一个动作aa表示,具体表达式为:
进一步,所述实时奖励rl包括车道保持时的奖励函数和换道时的奖励函数。车道保持的奖励函数设计为:
换道的奖励函数设计为:
决策层Agent通过和环境交互,获取车流和交通状况信息。决策层Agent获得状态量后,选择一个和当前状态量对应的最具价值决策智能车在执行决策ut后得到环境的反馈量和rv。反馈量为新的状态量,rv为执行决策ut后获得的奖励。通过不断的学习,使得决策层Agent可以做出对应于当前车流和交通状况最优的决策ut,然后智能车会做出与最优决策ut相对应的动作at。
进一步,所述实时奖励rv包括针对车流信息的奖励函数和交通信息的奖励函数。车流信息的奖励函数设计为:
交通信息的奖励函数设计为:
进一步,针对分层强化学习的自动驾驶动作层Agent和决策层Agent的训练流程为:在训练初始阶段对动作层Agent和决策层Agent进行初始化,首先在没有复杂交通和较少车流的环境下对动作层Agent进行训练,如果训练失败,再进行重复训练,直至智能车能完成预定的目标后保存训练好的动作层Agent。通过使用前先训练好的动作层Agent,通过和车流-交通状况信息交互进行进一步的决策层Agent的训练,如果训练失败,再进行重复训练,直至智能车能完成预定的目标后保存训练好的决策层Agent。
本发明基于分层强化学习的自动驾驶决策控制系统,包括动作层Agent和决策层Agent;动作层Agent选择处理连续行为的基于策略梯度的强化学习算法,通过和道路环境信息交互训练出正确的动作网络;决策层Agent选择处理离散行为的基于价值的强化学习算法,通过和车流交通状态信息交互训练出正确的决策网络;
动作层Agent通过环境交互,获取道路环境信息动作层Agent获得状态量后得出一个确定动作μt,再通过给该确定动作μt一个探索噪声nt,合成一个具有探索性的动作at,智能车在执行动作at后会得到环境的反馈量rl,反馈量为新的状态量,rl为执行动作at后获得的奖励;通过改变任务,使得动作层Agent学会执行左换道、右换道和车道保持动作;
决策层Agent通过和环境交互,获取车流和交通状况信息。决策层Agent获得状态量后,选择一个和当前状态量对应的最具价值决策智能车在执行决策ut后得到环境的反馈量和rv。反馈量为新的状态量,rv为执行决策ut后获得的奖励。通过不断的学习,使得决策层Agent可以做出对应于当前车流和交通状况最优的决策,然后智能车会做出与最优决策ut相对应的动作at;
其中,动作层Agent的实时奖励rl包括车道保持时的奖励函数和换道时的奖励函数。车道保持的奖励函数设计为:
换道的奖励函数设计为:
决策层Agent的实时奖励rv包括针对车流信息的奖励函数和交通信息的奖励函数,车流信息的奖励函数设计为:
交通信息的奖励函数设计为:
其中,系统动作层Agent和决策层Agent的训练方法在具体实施方式部分作了详细描述。
本发明的有益效果为:
(1)本发明通过基于价值的强化学习方法和策略梯度的强化学习方法设计了一种分层强化学习的自动驾驶决策控制方法,通过先对动作层Agent进行训练,再在动作层Agent训练完成的基础上对决策层Agent进行训练,使得两次训练任务明确,训练更容易完成。
(2)本发明在对动作层Agent进行训练时,将刹车动作和油门动作用一个单一的动作aa,解决了动作训练过程中智能车频繁制动,智能车停滞不前导致奖励函数变化不明显,训练效果差的问题。同时避免了急加速和急减速的情况发生,改善了整车舒适性。
(3)本发明在对动作层Agent进行训练时,针对不同的动作任务,优化设计了不同的奖励函数,使得动作训练更具针对性。同时,在对决策层Agent进行训练时,针对可能发生撞车的危险信号和违反交通规则的危险行为分别设计了奖励函数,使得决策兼顾了交通状况和交通规则。
附图说明
图1为分层强化学习的自动驾驶决策控制方法流程图;
图2为基于DDPG算法的动作层Agent训练流程图;
图3为基于DQN算法的决策层Agent训练流程图;
图4为分层强化学习的自动驾驶决策控制方法的训练流程图;
具体实施方式
下面将结合附图说明对本发明作进一步的说明,但本发明的保护范围并不仅限于此。
图1为基于分层强化学习的自动驾驶决策控制方法流程图,本发明方法包括动作层Agent和决策层Agent,具体如下:
动作层Agent通过环境交互,获取道路环境信息动作层Agent获得状态量后得出一个确定动作μt,再通过给该确定动作μt一个探索噪声nt,合成一个具有一定探索性的动作at。智能车在执行动作at后得到环境的反馈量和rl。反馈量为新的状态量,rl为执行动作at后获得的奖励。通过改变任务,使得动作层Agent学会执行左换道、右换道和车道保持动作。
决策层Agent通过和环境交互,获取车流和交通状况信息。决策层Agent获得状态量后,选择一个和当前状态量对应的最具价值决策智能车在执行决策ut后得到环境的反馈量和rv。反馈量为新的状态量,rv为执行决策ut后获得的奖励。通过不断的学习,使得决策层Agent可以做出对应于当前车流和交通状况最优的决策,然后智能车会做出与最优决策ut相对应的动作at。
图2为基于DDPG算法的动作层Agent训练流程图,基于DDPG算法的动作层Agent主要包括演员(Actor)和评论家(Critic)两个模块。每个模块又有Online(主网络)和Target(目标网络)两组网络。在进行动作训练之前对动作层Agent进行初始化。演员模块中的Online策略网络根据从环境中获取道路环境信息包括航向角误差、当前的位置误差、预瞄点处的横向误差、车速、横摆角速度和加速度。根据状态量做出动作μt,通过给动作μt添加一个动作噪声nt获得一个具有探索性的动作at。动作at包括方向盘转角aδ,油门ac和刹车ab。在训练初期,会随机执行方向盘转角aδ,油门ac和刹车ab。在随机执行油门动作ac时大概率会使车辆停滞不前,而造成实时奖励rl无明显变化,造成训练陷入局部最优。本发明将油门动作ac和刹车动作ab用一个动作aa表示,其中油门动作ac和刹车动作ab关于aa的具体表达式为:
油门动作ac和刹车动作ab的取值范围为[0,1],动作aa的取值范围为[-1,1]。由上式可以看出,油门动作ac和刹车动作ab不能同时为非零值,也就是不能油门和刹车不能同时执行,这是符合一般驾驶员的认知的,同时更会减小动作层Agent在训练初期随机做出油门和刹车动作会对车辆造成严重损伤。油门动作ac和刹车动作ab的临界点为aa=0,使得动作层Agent根据当前的道路环境信息做出决策aa使得制动力和驱动力之间的转变过程尽可能的均匀变化,一定程度上避免了急加速和急减速的情况发生,有助于改善整车舒适性。动作的具体定义如下表1所示:
表1
根据需要训练的三种不同的行为动作,设计不同的具有针对性的奖励函数。
针对车道保持行为设计的奖励函数如下:
其中,为智能车前进方向和道路之间的航向角误差,error为当前智能车质心与道路中心点之间的横向位置误差,v为智能车的实际车速,vdes为期望车速,d为智能车距离前车的实际车距,ddes为智能车与前车之间的期望车速,dsafe为智能车与前车之间的安全车距。k1、k2、k3和k4为各项奖励的前置系数,可以根据训练效果做相应的调整。保证了智能车在执行车道保持动作的时候不会偏离车道行驶,当智能车的航向角误差和质心处的横向误差为0时,到最大奖励。证了智能车在行驶过程中尽可能的稳定在期望车速。保证了智能车在执行车道保持任务时与前车保持适当的距离,当智能车与前车的实际距离大于安全距离dsafe时,等于-k4abs(d-ddes),保证了智能车与前车之间尽可能保持期望距离ddes,当智能车与前车的车距小于安全距离dsafe时,终止训练,并给一个-100的奖励。最终的奖励函数为∑ri l。
针对左换道和右换道行为设计的奖励函数如下:
其中,为左(右)车道与智能车前进方向的航向角误差,dchange为左(右)车道与智能车质心处的距离。k5和k6为奖励的前置系数,可以根据训练效果做相应的调整。在刚开始换道时,由于当前车道和左(右)车道为平行车道,约为0,但dchange较大,此时为0,对的影响较小,但-k6abs(dchange)对的影响较大,此时奖励会促使动作层Agent在不考虑着重考虑如何减小dchange来做出相应的行为;在换到后期,随着dchange的逐渐减小和逐渐增大,会越来越大,对的影响也越来越大,此时奖励会促使动作层Agent做出决策时兼顾减小和dchange。
在执行具体动作的时候,会在动作层Agent给出的动作μt上增加一个动作噪声nt使得实际执行的动作具有一定的探索性。其中动作噪声nt=α*N,为一个噪声折扣因子α和正态分布的噪声N的乘积,噪声折扣因子α会随着训练周期越多而越来越小。智能车在做出动作at环境会给新的状态量和奖励rl。
图3为基于DQN算法的决策层Agent训练流程图,基于DQN算法的决策层Agent训练是在动作层Agent基本训练完成的基础上进行训练的。在完成动作层Agent训练的智能车已经能做出左换道、右换道和车道保持等连续动作,但尚不能在正确的时机下做出正确的动作决策。此时将动作层Agent已经训练完成的智能车放在具有较复杂的车流和交通信息环境中进行决策层Agent进行训练。在训练过程中,决策层Agent从环境中获取车流和交通状况信息,包括正确的交通规则、前后及相应的斜对角车流信息,决策层Agent再做出当前状态下最具有价值的决策环境再将做出决策后的新的环境状态和奖励反馈给决策层Agent存储在经验池中,每个时步再从经验池随机获取先前的经验对网络进行训练。
针对车流信息,设计的奖励函数如下所示:
其中,d为与最近车车辆的实时距离,dsafe为与最近车辆应当保持的安全距离。为了避免决策层Agent做出频繁换道的决策,每次换道后给智能车一个-1的奖励,避免频繁换道的决策。当做出相应决策后与最近车辆的实时距离d小于dsafe,则认为做出的决策是不正确的,给一个-100的奖励,并终止当前训练周期,避免下次做出该决策。在其他情况下,默认奖励为0。
针对交通信息,设计的奖励函数如下所示:
为了避免决策层Agent做出违反交通规则的决策,每次智能车违反交通规则后给一个-100的奖励并终止当前周期的训练。其他情况下奖励为0。
图4为分层强化学习的自动驾驶决策控制方法的训练流程图,训练初始阶段对动作层Agent和决策层Agent进行初始化,首先在没有复杂交通和较少车流的环境下对动作层Agent进行训练,如果训练失败,再进行重复训练,直至智能车能完成预定的目标后保存训练好的动作层Agent。通过使用先前训练好的动作层Agent,通过和车流-交通状况信息交互进行进一步的决策层Agent的训练,如果训练失败,再进行重复训练,直至智能车能完成预定的目标后保存训练好的决策层Agent。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技术所创的等效方式或变更均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于分层强化学习的自动驾驶决策控制方法,其特征在于,包括设计动作层Agent和决策层Agent;所述动作层Agent选择处理连续行为的基于策略梯度的强化学习算法,通过和道路环境信息交互训练出正确的动作网络;决策层Agent选择处理离散行为的基于价值的强化学习算法,通过和车流交通状态信息交互训练出正确的决策网络;
所述动作层Agent通过环境交互,获取道路环境信息状态量动作层Agent获得状态量后得出确定动作μt,再通过给该确定动作μt施加一个探索噪声nt,合成具有一定探索性的动作at;智能车在执行动作at后得到环境的反馈量和rl;其中,反馈量为新的状态量,rl为执行动作at后获得的实时奖励;通过改变任务,使得动作层Agent学会执行左换道、右换道和车道保持动作;
所述动作at包括方向盘转角aδ,油门ac和刹车ab;其中油门动作ac和刹车动作ab合用一个动作aa表示,具体表达式为:
所述实时奖励rl包括车道保持时的奖励函数和换道时的奖励函数;其中车道保持的奖励函数设计为:
换道的奖励函数设计为:
为智能车前进方向和道路之间的航向角误差,error为当前智能车质心与道路中心点之间的横向位置误差,v为智能车的实际车速,vdes为期望车速,d为智能车距离前车的实际车距,ddes为智能车与前车之间的期望车速,dsafe为智能车与前车之间的安全车距,k1、k2、k3和k4为各项奖励的前置系数,k5和k6为奖励的前置系数,为左(右)车道与智能车前进方向的航向角误差,dchang为左(右)车道与智能车质心处的距离;
所述决策层Agent通过和环境交互,获取车流和交通状况信息状态量决策层Agent获得状态量后,选择一个和当前状态量对应的最具价值决策 智能车在执行决策ut后得到环境的反馈量和rv;其中反馈量为新的状态量,rv为执行决策ut后获得的实时奖励;通过不断的学习,使得决策层Agent可以做出对应于当前车流和交通状况最优的决策,然后智能车会做出与最优决策ut相对应的动作at;
所述实时奖励rv包括针对车流信息的奖励函数和交通信息的奖励函数;其中车流信息的奖励函数设计为:
交通信息的奖励函数设计为:
2.根据权利要求1所述的一种基于分层强化学习的自动驾驶决策控制方法,其特征在于,还包括动作层Agent和决策层Agent的训练方法:
在训练初始阶段对动作层Agent和决策层Agent进行初始化,首先在没有复杂交通和较少车流的环境下对动作层Agent进行训练,如果训练失败,再进行重复训练,直至智能车能完成预定的目标后保存训练好的动作层Agent;通过使用前先训练好的动作层Agent,通过和车流-交通状况信息交互进行进一步的决策层Agent的训练,如果训练失败,再进行重复训练,直至智能车能完成预定的目标后保存训练好的决策层Agent。
3.根据权利要求2所述的一种基于分层强化学习的自动驾驶决策控制方法,其特征在于,所述动作层Agent的训练方法采用基于DDPG算法实现,具体训练方法如下:
在进行动作训练之前对动作层Agent进行初始化,演员模块中的Online策略网络根据从环境中获取道路环境信息状态量包括航向角误差、当前的位置误差、预瞄点处的横向误差、车速、横摆角速度和加速度;根据状态量做出动作μt,通过给动作μt添加一个动作噪声nt获得一个具有探索性的动作at,该动作at包括方向盘转角aδ、油门ac和刹车ab;在训练初期,随机执行方向盘转角aδ、油门ac和刹车ab,在随机执行油门动作ac时大概率会使车辆停滞不前,造成实时奖励rl无明显变化,使得训练陷入局部最优;因此,将油门动作ac和刹车动作ab用一个动作aa表示,其中油门动作ac和刹车动作ab关于aa的具体表达式为:
油门动作ac和刹车动作ab的取值范围为[0,1],动作aa的取值范围为[-1,1];
由上式得出,油门动作ac和刹车动作ab不能同时为非零值,油门动作ac和刹车动作ab的临界点为aa=0,使得动作层Agent根据当前的道路环境信息做出决策aa使得制动力和驱动力之间的转变过程尽可能的均匀变化;
根据需要训练的三种不同的行为动作,设计具有针对性的奖励函数:
针对车道保持行为设计的奖励函数如下:
其中,为智能车前进方向和道路之间的航向角误差,error为当前智能车质心与道路中心点之间的横向位置误差,v为智能车的实际车速,vdes为期望车速,d为智能车距离前车的实际车距,ddes为智能车与前车之间的期望车速,dsafe为智能车与前车之间的安全车距;k1、k2、k3和k4为各项奖励的前置系数,可以根据训练效果做相应的调整;
针对左换道和右换道行为设计的奖励函数如下:
其中,为左(右)车道与智能车前进方向的航向角误差,dchange为左(右)车道与智能车质心处的距离,k5和k6为奖励的前置系数,可以根据训练效果做相应的调整;在刚开始换道时,由于当前车道和左(右)车道为平行车道,约为0,但dchange较大,此时约为0,对的影响较小,但-k6abs(dchange)对的影响较大,此时会促使动作层Agεnt在不考虑着重考虑如何减小dchang来做出相应的行为;在换到后期,随着dchang的逐渐减小和逐渐增大,会越来越大,对的影响也越来越大,此时会促使动作层Agent做出决策时兼顾减小和dchange;
在上述执行具体动作时,在动作层Agent给出动作μt的基础上增加一个动作噪声nt,其中动作噪声nt=α*N,即为一个噪声折扣因子α和正态分布的噪声N的乘积,噪声折扣因子α会随着训练周期越多而越来越小;
4.根据权利要求2所述的一种基于分层强化学习的自动驾驶决策控制方法,其特征在于,所述决策层Agent训练采用基于DQN算法实现,并且是在动作层Agent训练完成的基础上进行的训练,具体训练方法如下:
决策层Agent从环境中获取车流和交通状况信息,包括正确的交通规则、前后及相应的斜对角车流信息,决策层Agent再做出当前状态下最具有价值的决策 环境再将做出决策后的新的环境状态和奖励反馈给决策层Agent存储在经验池中,每个时步再从经验池随机获取先前的经验对网络进行训练;
其中,针对车流信息,设计的奖励函数如下所示:
其中,d为与最近车车辆的实时距离,dsafe为与最近车辆应当保持的安全距离;
为避免决策层Agent做出频繁换道的决策,每次换道后给智能车一个-1的奖励,避免频繁换道的决策;当做出相应决策后与最近车辆的实时距离d小于dsafe,则认为做出的决策是不正确的,给一个-100的奖励,并终止当前训练周期,避免下次做出该决策;在其他情况下,默认奖励为0。;
针对交通信息,设计的奖励函数如下所示:
为了避免决策层Agent做出违反交通规则的决策,每次智能车违反交通规则后给一个-100的奖励并终止当前周期的训练,其他情况下奖励为0;
5.一种基于分层强化学习的自动驾驶决策控制系统,其特征在于,包括动作层Agent和决策层Agent;动作层Agent选择处理连续行为的基于策略梯度的强化学习算法,通过和道路环境信息交互训练出正确的动作网络;决策层Agent选择处理离散行为的基于价值的强化学习算法,通过和车流交通状态信息交互训练出正确的决策网络;
动作层Agent通过环境交互,获取道路环境信息动作层Agent获得状态量后得出一个确定动作μt,再通过给该确定动作μt一个探索噪声nt,合成一个具有探索性的动作at,智能车在执行动作at后会得到环境的反馈量和rl,反馈量为新的状态量,rl为执行动作at后获得的奖励;通过改变任务,使得动作层Agent学会执行左换道、右换道和车道保持动作;
决策层Agent通过和环境交互,获取车流和交通状况信息,决策层Agent获得状态量后,选择一个和当前状态量对应的最具价值决策智能车在执行决策ut后得到环境的反馈量和rv,反馈量为新的状态量,rv为执行决策ut后获得的奖励通过不断的学习,使得决策层Agent可以做出对应于当前车流和交通状况最优的决策,然后智能车会做出与最优决策ut相对应的动作at;
其中,动作层Agent的实时奖励rl包括车道保持时的奖励函数和换道时的奖励函数;车道保持的奖励函数设计为:
换道的奖励函数设计为:
决策层Agent的实时奖励rv包括针对车流信息的奖励函数和交通信息的奖励函数,车流信息的奖励函数设计为:
交通信息的奖励函数设计为:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010598169.7A CN111845741B (zh) | 2020-06-28 | 2020-06-28 | 一种基于分层强化学习的自动驾驶决策控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010598169.7A CN111845741B (zh) | 2020-06-28 | 2020-06-28 | 一种基于分层强化学习的自动驾驶决策控制方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111845741A CN111845741A (zh) | 2020-10-30 |
CN111845741B true CN111845741B (zh) | 2021-08-03 |
Family
ID=72988633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010598169.7A Active CN111845741B (zh) | 2020-06-28 | 2020-06-28 | 一种基于分层强化学习的自动驾驶决策控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111845741B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112477864B (zh) * | 2020-11-10 | 2022-07-08 | 合肥工业大学 | 自动驾驶车辆安全换道的控制方法及系统 |
CN112712251B (zh) * | 2020-12-28 | 2023-09-12 | 珠海港信息技术股份有限公司 | 一种应用于驳船管理系统中的船舶智能调度方法 |
CN112801149B (zh) * | 2021-01-15 | 2024-06-11 | 江苏大学 | 一种基于深度强化学习的多车队列控制方法 |
CN113219968B (zh) * | 2021-04-21 | 2024-04-16 | 深圳大学 | 自动驾驶控制方法及装置 |
CN112925331B (zh) * | 2021-05-10 | 2021-09-24 | 北京三快在线科技有限公司 | 一种无人设备控制方法、装置、存储介质及电子设备 |
CN113264043A (zh) * | 2021-05-17 | 2021-08-17 | 北京工业大学 | 基于深度强化学习的无人驾驶分层运动决策控制方法 |
CN113264059B (zh) * | 2021-05-17 | 2022-10-11 | 北京工业大学 | 支持多驾驶行为的基于深度强化学习的无人车运动决策控制方法 |
CN113253612B (zh) | 2021-06-01 | 2021-09-17 | 苏州浪潮智能科技有限公司 | 一种自动驾驶控制方法、装置、设备及可读存储介质 |
CN113359771B (zh) * | 2021-07-06 | 2022-09-30 | 贵州大学 | 一种基于强化学习的智能自动驾驶控制方法 |
US12118884B2 (en) | 2021-09-14 | 2024-10-15 | Toyota Motor Engineering & Manufacturing North America, Inc. | Cooperative artificial intelligent assisted driving |
CN113885497A (zh) * | 2021-09-30 | 2022-01-04 | 湘潭大学 | 一种基于竞争深度q网络的车辆纵向动力学标定方法 |
CN114228690B (zh) * | 2021-11-16 | 2023-05-23 | 扬州大学 | 一种基于ddpg和迭代控制的自动驾驶车辆侧倾控制方法 |
CN114104005B (zh) * | 2022-01-26 | 2022-04-19 | 苏州浪潮智能科技有限公司 | 自动驾驶设备的决策方法、装置、设备及可读存储介质 |
CN115100866B (zh) * | 2022-07-18 | 2023-08-18 | 北京邮电大学 | 一种基于分层强化学习的车路协同自动驾驶决策方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110322017A (zh) * | 2019-08-13 | 2019-10-11 | 吉林大学 | 基于深度强化学习的自动驾驶智能车轨迹跟踪控制策略 |
CN110615003A (zh) * | 2019-10-30 | 2019-12-27 | 吉林大学 | 基于策略梯度在线学习算法的巡航控制系统及设计方法 |
CN110764507A (zh) * | 2019-11-07 | 2020-02-07 | 舒子宸 | 一种强化学习与信息融合的人工智能自动驾驶系统 |
CN110806744A (zh) * | 2018-07-19 | 2020-02-18 | 通用汽车环球科技运作有限责任公司 | 使用分层选项马尔可夫决策过程的交叉路口自主驾驶决策 |
US10599155B1 (en) * | 2014-05-20 | 2020-03-24 | State Farm Mutual Automobile Insurance Company | Autonomous vehicle operation feature monitoring and evaluation of effectiveness |
CN110969848A (zh) * | 2019-11-26 | 2020-04-07 | 武汉理工大学 | 一种对向双车道下基于强化学习的自动驾驶超车决策方法 |
CN111301419A (zh) * | 2018-12-12 | 2020-06-19 | 威斯通全球技术公司 | 用于sae 4级自动化车道变更的基于强化学习的方法 |
-
2020
- 2020-06-28 CN CN202010598169.7A patent/CN111845741B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10599155B1 (en) * | 2014-05-20 | 2020-03-24 | State Farm Mutual Automobile Insurance Company | Autonomous vehicle operation feature monitoring and evaluation of effectiveness |
CN110806744A (zh) * | 2018-07-19 | 2020-02-18 | 通用汽车环球科技运作有限责任公司 | 使用分层选项马尔可夫决策过程的交叉路口自主驾驶决策 |
CN111301419A (zh) * | 2018-12-12 | 2020-06-19 | 威斯通全球技术公司 | 用于sae 4级自动化车道变更的基于强化学习的方法 |
CN110322017A (zh) * | 2019-08-13 | 2019-10-11 | 吉林大学 | 基于深度强化学习的自动驾驶智能车轨迹跟踪控制策略 |
CN110615003A (zh) * | 2019-10-30 | 2019-12-27 | 吉林大学 | 基于策略梯度在线学习算法的巡航控制系统及设计方法 |
CN110764507A (zh) * | 2019-11-07 | 2020-02-07 | 舒子宸 | 一种强化学习与信息融合的人工智能自动驾驶系统 |
CN110969848A (zh) * | 2019-11-26 | 2020-04-07 | 武汉理工大学 | 一种对向双车道下基于强化学习的自动驾驶超车决策方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111845741A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111845741B (zh) | 一种基于分层强化学习的自动驾驶决策控制方法及系统 | |
CN110969848B (zh) | 一种对向双车道下基于强化学习的自动驾驶超车决策方法 | |
CN110297494B (zh) | 一种基于滚动博弈的自动驾驶车辆换道决策方法及系统 | |
Loiacono et al. | Learning to overtake in TORCS using simple reinforcement learning | |
CN113253739B (zh) | 一种用于高速公路的驾驶行为决策方法 | |
CN103324085A (zh) | 基于监督式强化学习的最优控制方法 | |
CN114013443B (zh) | 一种基于分层强化学习的自动驾驶车辆换道决策控制方法 | |
CN113276884B (zh) | 一种可变博弈模式的智能车交互决策通行方法及系统 | |
CN113581182B (zh) | 基于强化学习的自动驾驶车辆换道轨迹规划方法及系统 | |
CN109204390B (zh) | 一种基于深度学习的列车控制方法 | |
CN114023108B (zh) | 一种混合交通流变道模型及变道仿真方法 | |
CN112861269B (zh) | 一种基于深度强化学习优先提取的汽车纵向多态控制方法 | |
CN113511222A (zh) | 场景自适应式车辆交互行为决策与预测方法及装置 | |
CN117610681A (zh) | 基于模仿学习和离散强化学习的自动驾驶汽车决策方法 | |
CN115257789A (zh) | 城市低速环境下的营运车辆侧向防撞驾驶决策方法 | |
CN115489572B (zh) | 基于强化学习的列车ato控制方法、设备及存储介质 | |
CN116224996A (zh) | 一种基于对抗强化学习的自动驾驶优化控制方法 | |
CN116639124A (zh) | 一种基于双层深度强化学习的自动驾驶车辆换道方法 | |
CN116052411A (zh) | 基于图神经网络强化学习的分流区混合交通流控制方法 | |
CN114789729A (zh) | 一种基于驾驶风格的匝道协同控制系统及方法 | |
CN112801149A (zh) | 一种基于深度强化学习的多车队列控制方法 | |
CN115083149A (zh) | 一种实时监测的强化学习可变时长信号灯控制方法 | |
CN117077753B (zh) | 类脑智能驾驶控制模型升级方法及类脑智能驾驶方法 | |
CN117348415B (zh) | 一种基于有限状态机的自动驾驶决策方法 | |
CN117193048A (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 |