CN112784485A - 一种基于强化学习的自动驾驶关键场景生成方法 - Google Patents

一种基于强化学习的自动驾驶关键场景生成方法 Download PDF

Info

Publication number
CN112784485A
CN112784485A CN202110082493.8A CN202110082493A CN112784485A CN 112784485 A CN112784485 A CN 112784485A CN 202110082493 A CN202110082493 A CN 202110082493A CN 112784485 A CN112784485 A CN 112784485A
Authority
CN
China
Prior art keywords
init
light
dynamic
probability
index
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.)
Granted
Application number
CN202110082493.8A
Other languages
English (en)
Other versions
CN112784485B (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 Software of CAS
Original Assignee
Institute of Software 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 Software of CAS filed Critical Institute of Software of CAS
Priority to CN202110082493.8A priority Critical patent/CN112784485B/zh
Publication of CN112784485A publication Critical patent/CN112784485A/zh
Application granted granted Critical
Publication of CN112784485B publication Critical patent/CN112784485B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M17/00Testing of vehicles
    • G01M17/007Wheeled or endless-tracked vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/08Probabilistic or stochastic CAD

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明公开了一种基于强化学习的自动驾驶关键场景生成方法,其步骤包括:1)从地图库中选择一个道路场景,设置仿真***中主车的行驶路线并为各动态环境要素分别建立概率模型;2)仿真***控制主车开始执行仿真任务;基于强化学习技术,对所选道路场景中各动态要素的概率模型进行训练,得到各概率模型针对所选道路场景的最优参数并保存在测试用例库中;3)循环步骤1‑2),得到各概率模型针对地图库中每一道路场景的最优参数;4)从该地图库中获取若干道路场景并组合得到测试地图,并选择仿真环境中所需的动态要素;5)从测试用例库中导入该测试地图所含的各动态要素的概率模型及对应最优参数,生成关键场景测试用例。

Description

一种基于强化学习的自动驾驶关键场景生成方法
技术领域
本发明涉及一种基于强化学习的自动驾驶关键场景生成方法,属于计算机软件技术领域。
背景技术
如今,大多数感知和预测算法的性能对训练数据的不平衡非常敏感(也称为长尾问题),罕见事件通常很难收集,并且在庞大的数据流中容易被忽略,这极大地挑战了机器人在现实世界中的应用,尤其是在安全关键领域(例如自动驾驶)中。
在自动驾驶行业中,通常会通过仿真来重现在测试驾驶过程中收集的关键场景。现有技术提出了一种称为最坏情况评估的替代方法,以搜索最坏情况评估车辆领域中的控制器。尽管通过最坏情况评估挖掘出的某些情况可能有用,但在现实世界中几乎不可能出现一些极具风险的情况,对于实际使用的指导意义不大。此外,现有技术主要针对自动驾驶的仿***体(如无人车)等的路线或任务完成情况进行仿真,但是,针对仿真环境的部署如何达到企业需要的关键安全场景要求,还没有成型的方法提出。
强化学习是人工智能机器学习领域里的一个分支,用于控制能够在某个环境下自主行动的智能体,通过和环境之间的互动,包括感知与得到奖励,而不断改进它的行为。强化学习中两个最重要的特征就是试错和滞后奖励。因此,本发明基于强化学习理论提出自动驾驶测试过程中的关键场景生成方法。
发明内容
现有技术中缺少对于自动驾驶仿真环境中动态环境要素的训练,缺少对于动态环境要素如何部署的自动驾驶关键安全场景生成的问题,本发明的目的在于提供一种基于强化学习的自动驾驶关键场景生成方法。本发明针对自动驾驶仿真场景中的动态环境要素,通过强化学习在仿真过程中不断训练模型参数,得到在不同道路场景下的动态环境要素的神经网络模型,由此生成一系列关键场景测试用例。动态环境要素的模型参数包括初始位置、运动速度、运动路线、触发距离等。本发明设计了合理的动态环境要素奖励机制,结合道路场景,充分考虑了行人、车辆、交通灯等动态环境要素的运动轨迹和对于主车的影响。
在本发明中,自动驾驶测试场景的地图库可由测试***预先设置,也可由用户导入地图场景;主车是指在测试***中被测虚拟车辆,其运动轨迹和行为模式由仿真***的决策模块控制;动态环境要素主要包括行人、其他行驶车辆、交通灯三种类型,可在仿真***中对被测虚拟车辆的行驶造成动态干扰,其中行人是在测试场景中的道路参与者,其他行驶车辆是共同使用测试场景道路的非被测车辆,交通灯是相对静态的交通要素,用于控制路口的交通灯时间变换。
本发明基于强化学习的自动驾驶关键场景生成方法包括以下步骤:
步骤1:测试场景的初始化,从地图库中选择一个道路场景,设置主车的行驶路线,为行人、其他行驶车辆、交通灯三类动态环境要素分别建立初始概率模型;
步骤2:仿真***的决策模块控制主车开始执行仿真任务;基于强化学习技术,针对于所选的道路场景中三类动态要素的概率模型参数进行训练;
步骤3:三类动态要素最终得到针对所选道路情况的概率模型的最优参数,保存在测试用例库中;
步骤4:循环步骤1-3,直至三类动态要素在地图库中所有道路场景都训练获得概率模型最优参数;
步骤5:从地图库中导入道路组合为任意测试地图,选择仿真环境中用户需要的动态要素,这里的动态要素主要包括行人、其他行驶车辆、交通灯等;
步骤6:根据测试地图中的道路场景,从测试用例库中导入每种道路对应的动态要素概率模型及对应最优参数,生成一系列关键场景测试用例。
进一步的,步骤1具体为:
动态环境要素是除了测试场景中的主车之外的其他动态要素,主要包括行人、其他行驶车辆、交通灯三种类型。
地图库中的道路情况包括单向车道、双向车道、十字路口、丁字路口、Y字路口、高速公路的入口和出口、立交桥等;在不同的道路情况上出现的关键场景不一样,可能存在碰撞、压线、逆行、闯红灯等情形,对于每一种道路情况,会有不同的动态环境要素模型,这些动态环境要素的组合相当于对于该道路情况关键场景的建模。
对于行人和车辆的初始模型,其参数主要包括初始位置、运动路线、运动速度、触发距离等要素;行人的运动路线包括沿路的方向直行、横穿马路等,车辆的运动路线包括直行、左转、右转、掉头、变换车道等,这里行人和车辆的运动路线根据不同的道路情况和初始位置,会有不同的选择项,但所有选择项均须符合交通规则;对于交通灯的初始模型,主要是交通灯的时间设置,包括红灯、绿灯、黄灯的持续时间。
进一步的,步骤2具体为:
步骤2.1:设置模型训练的总迭代次数E;初始化迭代次数e=0;
步骤2.2:获取一个道路场景,选择该道路场景中需要训练的各动态要素类型(行人、其他行驶车辆、交通灯),获取主车行驶路线,获取每类动态要素的初始模型,选定的每类动态要素数量大于或等于1;需要注意的是,对于行人和车辆来讲,设定的运动路线和初始位置都是遵守交通规则的;
步骤2.3:对于每个道路场景,其状态S是确定的,状态S包括道路类型、主车路线、主车速度,可根据主车的当前状态计算出所选道路场景中每个动态要素的概率分布(主车的当前状态在步骤1中已经确定;道路场景和主车的当前状态都是已知条件,比如在测试前已经设置好了:道路场景是十字路口,主车当前的状态是右转),其中行人和车辆的概率分布公式如下:
Figure BDA0002909880240000031
其中,式(1)中第i个动作要素ai包括动态要素的初始位置(X,Y)、运动路线L、运动速度V、触发距离D等具体要素,即动作要素ai的概率为:
Figure BDA0002909880240000032
第i条运动路线是通过对连续随机变量li_init_index的离散化得到离散型变量li_init_state,离散型变量li_init_state是第i个场景li的运动路线初始状态。运动路线的复杂性在于可能的路线选项强依赖于道路结构和初始点,假设在某具体条件下运动路线的选项总数为N(即运动路线的可选择的总数),那么li_init_index的条件概率密度可利用神经网络构造[0,1]区间上的概率密度函数进行建模,公式如(3):
li_init_index~P(li_init_index|S,a1,...,ai-1,xi,yi) (3)
连续随机变量li_init_index的离散化详见步骤2.4。
交通灯持续时间是连续型变量,交通灯持续时间的概率分布公式如(4):
Figure BDA0002909880240000033
式(4)中的light_init_index、t_red、t_green、t_yellow分别表示交通灯的初始状态(初始红、绿、黄颜色)、红灯持续时间、绿灯持续时间、黄灯持续时间。
交通灯持续时间t_red、t_green、t_yellow的条件概率密度
P(t_red|S,a1,...,ai-1,light_init_index)、P(t_green|S,a1,...,ai-1,light_init_index,t_red)、P(t_yellow|S,a1,...,ai-1,light_init_index,t_red,t_green)可利用高斯分布进行建模。
交通灯的初始状态light_init_state是离散型变量,可通过将连续随机变量light_init_index的离散化得到,light_init_index的条件概率密度可利用神经网络构造[0,1]区间上的概率密度函数进行建模得到公式(5);
light_init_index~P(light_init_index|S,a1,...,ai-1) (5)
连续随机变量light_init_index的离散化详见步骤2.4。
步骤2.4:对每个动态要素的概率分布进行随机采样,得到这个状态S下的动态要素模型的动作参数,即对于行人得到是的初始位置X、初始位置Y、运动速度v、运动路线L、触发距离D,对于车辆得到是的初始位置X、初始位置Y、运动速度v、运动路线L、触发距离D,对于交通灯得到的是交通灯的初始状态light_init_state、红灯时间设置t_red、黄灯时间设置t_yellow、绿灯时间设置t_green;
步骤2.4.1:对于连续型随机变量,如初始位置(X,Y)、运动速度v、触发距离D、红灯时间设置t_red、黄灯时间设置t_yellow、绿灯时间设置t_green,使用高斯分布N(μ,σ)对于动态要素进行建模,对于离散型随机变量,如交通灯的初始状态light_init_state、运动路线L,使用多项分布对于动态要素进行建模,神经网络(NN)用于条件概率推断;
高斯分布概率抽样公式如下:
μkk←Mk(S) (6)
ε~N(0,1) (7)
ak=μkk*ε (8)
随机变量ak是从第k个节点采样的操作,Mk是代表第k个动作的条件分布的模型,之后对ak进行缩放和移动以表示真实场景的参数:
bk=ak*lk+sk (9)
其中lk和sk分别是第k个动作的范围和平均值。
步骤2.4.2:对于离散型随机变量,如运动路线L、交通灯的初始状态light_init_index,[0,1]分布的概率抽样公式如下:
1)对于行人和其他行驶车辆的运动路线L,已知li_init_index的概率服从公式(3),首先对于路线的初始状态li_init_index进行概率抽样,利用连续型随机变量li_init_index可进一步构造的离散随机变量li_init_state,选择第k条路线时,连续型到离散型的对应关系如下:
li_init_state=k,其中li_init_index∈((k-1)/N,k/N) (10)
2)对于交通灯的初始状态,已知light_init_index的概率服从公式(5),首先对于交通灯的初始状态light_init_index进行概率抽样,然后进行light_init_index到light_init_state的映射,可进一步构造交通灯的初始状态随机变量light_init_state如下:
Figure BDA0002909880240000051
从而得到交通灯的初始状态(初始红、绿、黄颜色)。
步骤2.5:将步骤2.4的随机采样结果作为条件对主车进行测试,使用运行结果计算奖励值R,奖励值R的设计原则是希望出现一些主车事故或主车违反交通规则的关键场景,计算公式如下:
Figure BDA0002909880240000052
式(12)中的w1、w2、w3、w4、w5均是非负的权重系数,且w1+w2+w3+w4+w5=1;这里的ped表示行人动态要素的集合,c表示其他行驶车辆动态要素的集合,l表示交通灯动态要素的集合,r表示被测对象(主车)违反交通规则的集合,p表示被测对象(主车)惩罚项的集合。
其中,式(12)第一项Rped表示行人的奖励值,计算公式如下:
Figure BDA0002909880240000053
这里的b1、b2均是非负的权重系数且b1+b2=1;
Figure BDA0002909880240000054
表示针对第i个动作要素ai根据行人与主车之间的最小距离disp获得的奖励值,即针对第i个动作要素ai主车出现关于行人的关键场景而获得的奖励值,后续同理。
式(13)的
Figure BDA0002909880240000055
表示行人与主车之间的最小距离disp可获得的奖励值,disp表示行人与主车之间的距离,当距离disp小于阈值thresholdp时,表示行人与主车之间的距离小于安全距离,获得相应奖励值DIS>0,DIS是可设置的具体数值,否则奖励值为0,计算公式如下:
Figure BDA0002909880240000061
式(13)的
Figure BDA0002909880240000062
表示主车与行人发生交通事故colp可获得的奖励值,colp表示如果主车与行人发生交通事故,那么获得相应的奖励值COL,COL是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000063
式(12)第二项Rc表示车辆的奖励值,包括有车辆与主车之间距离小于安全距离disc、主车发生碰撞事件colc的情况,计算公式如下:
Figure BDA0002909880240000064
这里的c1、c2是非负的权重系数且c1+c2=1;
式(16)的
Figure BDA0002909880240000065
表示其他行驶车辆与主车之间的最小距离可获得的奖励值,disc表示其他行驶车辆与主车之间的距离,当距离disc小于阈值thresholdc时,表示其他行驶车辆与主车之间的距离小于安全距离,获得相应奖励值DIS,DIS是可设置的具体数值,否则奖励值为0,计算公式如下;
Figure BDA0002909880240000066
式(16)的
Figure BDA0002909880240000067
表示主车与其他行驶车辆发生交通事故可获得的奖励值,colc表示如果主车与其他行驶车辆发生交通事故,那么获得相应的奖励值COL,COL是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000068
式(12)第三项Rl表示交通灯的奖励值,包括主车闯红灯、主车闯黄灯,计算公式如下:
Rl=f1*Rred(ai)+f2*Ryellow(ai) (19)
这里的f1、f2均是非负的权重系数且f1+f2=1;
式(19)的Rred表示主车闯红灯可获得的奖励值,red表示有主车闯红灯的情况,那么获得相应的奖励值RED,RED是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000069
式(19)的Ryellow表示主车闯红灯可获得的奖励值,yellow表示有主车闯黄灯的情况,那么获得相应的奖励值YELLOW,YELLOW是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000071
式(21)的disyellow表示主车发现黄灯亮起后直到停车,主车超过停车线的距离值,α表示距离的系数。
式(12)第四项Rr表示主车有压线率、逆行、非法变道等违反交通规则的行为rule,计算公式如下:
Rr=g1*Rcross(ai)+g2*Rconverse(ai)+g3*Rlane_change(ai) (22)
这里的g1、g2、g3均是非负的权重系数且g1+g2+g3=1;
式(22)的Rcross表示主车一直压线行驶可获得的奖励值,cross表示有主车一直压线行驶的情况,那么获得相应的奖励值CROSS,CROSS是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000072
式(22)的Rconverse表示主车逆行可获得的奖励值,converse表示有主车逆行的情况,那么获得相应的奖励值CONVERSE,CONVERSE是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000073
式(22)的Rlane_change表示主车出现非法变道可获得的奖励值,lane_change表示有主车出现非法变道的情况,那么获得相应的奖励值LANE_CHANGE,LANE_CHANGE是可设置的具体数值,计算公式如下:
Figure BDA0002909880240000074
式(12)第五项Rp表示使用惩罚来避免特殊情况,即动态要素出现一些不合理的情况,这通常与主车与动态要素的距离有关,计算公式如下;
Figure BDA0002909880240000075
其中,ηi是主车在状态si的行车路线,ρ0表示动态要素的位置,γ是设定距离阈值。
步骤2.6:利用策略梯度方法对动态要素的概率模型进行优化,目标函数公式如下:
Figure BDA0002909880240000076
其中,a是从策略分布πφ中采样的动作,φ=(a1,...,an);E是期望函数,R是奖励值。
对于目标函数做N次采样求近似,则用于更新模型参数φ的梯度为:
Figure BDA0002909880240000081
为了使得策略的选择尽可能多样,在目标函数中添加一个熵项H(πφ):
H(πφ)=-∫πφ(x)logπφ(x)dx (29)
πφ是个由φ表征的分布,其中x是自变量,其取不同值时,概率密度值πφ(x)会对应变化;对熵项H(πφ)和奖励值同步最大化,则加入熵项后的目标函数梯度为:
Figure BDA0002909880240000082
参数φ的更新公式如下,利用梯度下降法优化参数取得上式最小值,从而取得最大的奖励值和熵值:
Figure BDA0002909880240000083
当使用自回归高斯分布对策略πφ进行建模时,可以使用链规则计算联合概率:
Figure BDA0002909880240000084
πφ,i是第i个动态要素模型对应的模型参数φ。
步骤2.7:迭代次数e加1;当模型训练的迭代次数e小于E时,返回步骤2.2;当模型训练的迭代次数等于E时,完成动态要素的模型参数训练。
进一步的,步骤4中得到的最终测试用例具体为:
对于选定的道路情况,其测试场景的状态即是确定的,三类动态要素经过基于强化学习的迭代训练之后,每类动态要素的模型均会获得关键场景配置参数的概率分布,关键场景配置参数包括初始位置、触发位置、运动速度、运动路线、交通灯的变换时间等;基于这些动态要素模型的配置参数的概率分布,可以快速生成无人车仿真的关键场景测试用例。
进一步的,步骤5中测试用例的地图是在地图库中经过基于强化学习的迭代训练的任意道路情况的自由组合。
进一步的,步骤6的测试用例生成具体为:
步骤6.1:在地图库中选择需要的道路类型,任意自由组合形成测试用例地图;
步骤6.2:设置主车行驶路线,选择动态要素的类型和数量;
步骤6.3:道路场景加入主车行驶路线后,即确定了测试场景的状态S;根据道路情况和主车运动轨迹,可在测试用例库中找到状态S下训练好的动态要素模型M;对于第i个状态Si,动态要素模型M获得动作参数概率分布Pi,根据步骤2.4对于概率分布进行随机采样得到动作参数的具体值ai,对于行人和车辆,ai包括初始位置X、初始位置Y、运动速度v、运动路线L、触发距离D,对于交通灯,ai包括交通灯初始状态light_init_state、红灯时间设置t_red、黄灯时间设置t_yellow、绿灯时间设置t_green,并对动态要素设定动作参数的具体值;
步骤6.4:生成最终的测试用例。
本发明的积极效果为:
(1)现有技术中对于自动驾驶的仿真多数考虑无人车本身的仿真,而忽略了仿真场景中的动态环境要素,本发明重点研究了场景中动态环境要素的初始位置、运动速度、运动路线、触发距离等,基于强化学习技术,使得动态要素的运动在符合实际情况的前提下,可以快速产生一系列关键场景的测试用例。
(2)仿真场景中的动态环境要素通过强化学习技术在仿真中训练得到自动驾驶中高概率发生碰撞等事故的关键场景,避开无效的动作,解决了训练过程中无效探索多、训练速度慢的问题,显著提高了训练效率。
(3)奖励机制设计合理,结合真实交通规则,充分考虑了行人、车辆、交通灯等对于主车的影响。
(4)将自动驾驶的测试场景生成放在参与者很少的关键场景上,例如一个AV、一个动态车辆,概率分布计算简便,模型训练简单易实现。
附图说明
图1为自动驾驶关键场景生成方法流程图;
图2为三类动态要素进行模型参数训练流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
一种基于强化学习的自动驾驶关键场景生成方法,其生成方法包括以下步骤:
步骤1:测试场景的初始化,从地图库中选择一个道路场景,设置主车的行驶路线,为行人、其他行驶车辆、交通灯三类动态环境要素分别建立初始概率模型;
步骤2:主车开始执行仿真任务;基于强化学习技术,针于所选的道路情况,三类动态要素进行概率模型参数训练;
步骤3:三类动态要素最终得到针对所选的道路情况的概率模型最优参数,保存在测试用例库中;
步骤4:循环步骤1-3,直至三类动态要素在地图库中所有道路场景都训练获得概率模型最优参数;
步骤5:从地图库中导入道路组合为任意测试地图,选择仿真环境中用户需要的动态要素,这里的动态要素主要包括行人、其他行驶车辆、交通灯等;
步骤6:根据所选道路,从测试用例库中导入每种道路对应的动态要素概率模型,生成一系列关键场景测试用例。
进一步的,步骤1具体为:
动态环境要素是除了测试场景中的主车之外的其他动态要素,主要包括行人、其他行驶车辆、交通灯三种类型。
地图库中的道路情况包括单向车道、双向车道、十字路口、丁字路口、Y字路口、高速公路的入口和出口、立交桥等;在不同的道路情况上出现的关键场景不一样,可能存在碰撞、压线、逆行、闯红灯等情形,对于每一种道路情况,会有不同的动态环境要素模型,这些动态环境要素的组合相当于对于该道路情况关键场景的建模。
对于行人和车辆的初始模型,其参数主要包括初始位置、运动路线、运动速度、触发距离等要素;行人的运动路线包括沿路的方向直行、横穿马路等,车辆的运动路线包括直行、左转、右转、掉头、变换车道等,这里行人和车辆的运动路线根据不同的道路情况和初始位置,会有不同的选择项,但所有选择项均须符合交通规则;对于交通灯的初始模型,主要是交通灯的时间设置,包括红灯、绿灯、黄灯的持续时间。
在一实施例中,行人和车辆的运动路线根据不同的道路情况和初始位置,会有不同的选择项,例如:道路情况选择直行马路,行人的初始位置在马路一侧的人行道上,那么行人的运动路线是沿着人行道直行;道路情况选择十字型路口,行人的初始位置在路口,那么行人的运动路线是穿过马路。
在一实施例中,道路情况选择十字型路口;行人的初始位置在十字路口的东北角,运动路线是通过十字路口的两条马路,到达十字路口的西南角;车辆的初始位置在主车右后方,运动路线是与主车一起通过十字路口,可能出现并道的情况;交通灯的时间设置为红灯60秒,绿灯30秒,黄灯3秒。
步骤2的描述详见发明内容。
进一步的,步骤4中得到的最终测试用例具体为:
对于选定的道路情况,其测试场景的状态即是确定的,三类动态要素经过基于强化学习的迭代训练之后,每类动态要素的模型均会获得关键场景配置参数的概率分布,关键场景配置参数包括初始位置、触发位置、运动速度、运动路线、交通灯的变换时间等;基于这些动态要素模型的配置参数的概率分布,可以快速生成无人车仿真的关键场景测试用例。
进一步的,步骤5中测试用例的地图是在地图库中经过基于强化学习的迭代训练的任意道路情况的自由组合。
进一步的,步骤6的测试用例生成具体为:
步骤6.1:在地图库中选择需要的道路类型,任意自由组合形成测试用例地图;
步骤6.2:设置主车行驶路线,选择动态要素的类型和数量;
步骤6.3:道路场景加入主车行驶路线后,即确定了测试场景的状态S;根据道路情况和主车运动轨迹,可在测试用例库中找到状态S下训练好的动态要素模型M;对于第i个状态Si,动态要素模型M获得动作参数概率分布Pi,根据步骤2.4对于概率分布进行随机采样得到动作参数的具体值ai,对于行人和车辆,ai包括初始位置X、初始位置Y、运动速度v、运动路线L、触发距离D,对于交通灯,ai包括交通灯初始状态light_init_state、红灯时间设置t_red、黄灯时间设置t_yellow、绿灯时间设置t_green,并对动态要素设定动作参数的具体值;
步骤6.4:生成最终的测试用例。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的原理和范围,本发明的保护范围应以权利要求书所述为准。

Claims (7)

1.一种基于强化学习的自动驾驶关键场景生成方法,其步骤包括:
1)从地图库中选择一个道路场景,设置仿真***中主车的行驶路线并为各动态环境要素分别建立概率模型;所述动态环境要素包括行人、该主车之外的其他行驶车辆、交通灯;
2)仿真***控制主车开始执行仿真任务;基于强化学习技术,对所选道路场景中各动态要素的概率模型进行训练,得到各概率模型针对所选道路场景的最优参数并保存在测试用例库中;
3)循环步骤1-2),得到各概率模型针对地图库中每一道路场景的最优参数;
4)从该地图库中获取若干道路场景并组合得到测试地图,并选择仿真环境中所需的动态要素;
5)从测试用例库中导入该测试地图所含的各动态要素的概率模型及对应最优参数,生成关键场景测试用例,作为自动驾驶关键场景。
2.如权利要求1所述的方法,其特征在于,步骤2)中,对所选的道路场景中各动态要素的概率模型进行训练的方法为:
21)设置模型训练的总迭代次数E;初始化迭代次数e=0;
22)设置所选的道路场景中各动态要素的运动路线和初始位置;
23)根据主车的当前状态计算出所选道路场景中每个动态要素的概率分布;
24)对每个动态要素的概率分布进行随机采样,得到状态S下各动态要素的概率模型的动作参数;
25)利用步骤24)的随机采样结果作为条件对主车进行测试,然后根据测试的运行结果计算奖励值R,其中,奖励值
Figure FDA0002909880230000011
ai为第i个动态要素,n为动态要素的个数;w1、w2、w3、w4、w5均是非负的权重系数,ped表示所选道路场景中的行人集合,c表示所选道路场景中的其他行驶车辆集合,l表示所选道路场景中的交通灯集合,r表示主车违反交通规则的集合,p表示主车惩罚项的集合;
奖励值
Figure FDA0002909880230000012
b1、b2均是非负的权重系数;
Figure FDA0002909880230000013
表示针对第i个动作要素ai根据行人与主车之间的最小距离disp获得的奖励值,
Figure FDA0002909880230000014
(ai)表示针对第i个动作要素ai根据主车与行人发生交通事故colp(ai)获得的奖励值;
奖励值
Figure FDA0002909880230000021
其中c1、c2是非负的权重系数,
Figure FDA0002909880230000022
表示针对第i个动作要素ai根据其他行驶车辆与主车之间的最小距离获得的奖励值,
Figure FDA0002909880230000023
表示针对第i个动作要素ai根据主车与其他行驶车辆发生交通事故获得的奖励值;
奖励值Rl=f1*Rred(ai)+f2*Ryellow(ai),f1、f2均是非负的权重系数,Rred(ai)表示针对第i个动作要素ai根据主车闯红灯情况获得的奖励值;
Rr=g1*Rcross(ai)+g2*Rconverse(ai)+g3*Rlane_change(ai),g1、g2、g3均是非负的权重系数,Rcross(ai)表示针对第i个动作要素ai根据主车压线行驶获得的奖励值,Rconverse(ai)表示针对第i个动作要素ai根据主车逆行可获得的奖励值,Rlane_change(ai)表示针对第i个动作要素ai根据主车出现非法变道可获得的奖励值;
Figure FDA0002909880230000024
其中,ηi是主车在状态si的行车路线,ρ0表示动态要素的位置,γ为设定阈值,RP为行驶状态奖励值;
26)利用策略梯度方法对动态要素的概率模型进行优化;其中基于奖励值确定优化所用的目标函数为
Figure FDA0002909880230000025
a是从策略分布πφ中采样的动作,φ=(a1,...,an);E是期望函数;
27)迭代次数e加1;当模型训练的迭代次数e小于E时,返回步骤22);当模型训练的迭代次数等于E时,完成动态要素的概率模型的训练。
3.如权利要求2所述的方法,其特征在于,行人和车辆的概率分布为
Figure FDA0002909880230000026
其中,动态要素ai包括动态要素的初始位置(X,Y)、运动路线L、运动速度V、触发距离D;动态要素ai的概率为:
Figure FDA0002909880230000027
交通灯持续时间的概率分布为
Figure FDA0002909880230000028
其中,light_init_index、t_red、t_green、t_yellow分别表示交通灯的初始状态、红灯持续时间、绿灯持续时间、黄灯持续时间;利用高斯分布进行建模分别得到交通灯持续时间t_red的条件概率密度P(t_red|S,a1,...,ai-1,light_init_index)、t_green的条件概率密度P(t_green|S,a1,...,ai-1,light_init_index,t_red)、t_yellow的条件概率密度P(t_yellow|S,a1,...,ai-1,light_init_index,t_red,t_green)。
4.如权利要求3所述的方法,其特征在于,通过对连续随机变量li_init_index离散化得到各道路场景中运动路线的初始状态li_init_state,li_init_state是第i个道路场景li的运动路线初始状态,利用神经网络构造[0,1]区间上的概率密度函数进行建模得到li_init_index的条件概率密度;通过将连续随机变量light_init_index离散化得到交通灯的初始状态,利用神经网络构造[0,1]区间上的概率密度函数进行建模得到light_init_index的条件概率密度。
5.如权利要求4所述的方法,其特征在于,步骤24)中,对每个动态要素的概率分布进行随机采样的方法为:
241)对于连续型随机变量,使用高斯分布对于动态要素进行建模;对于离散型随机变量,使用多项分布对于动态要素进行建模;
242)对于离散型随机变量的概率分布采样:a)对于行人和其他行驶车辆的运动路线,首先对于运动路线的初始状态li_init_index进行概率抽样,利用连续型随机变量li_init_index构造离散随机变量li_init_state,当从离散随机变量li_init_state中选择第k条路线时,连续型到离散型的对应关系li_init_state=k,其中li_init_index∈((k-1)/N,k/N);b)对于交通灯的初始状态,首先对于交通灯的初始状态light_init_index进行概率抽样,然后进行light_init_index到light_init_state的映射,并构造交通灯的初始状态随机变量light_init_state。
6.如权利要求5所述的方法,其特征在于,对于交通灯的初始状态,light_init_index到light_init_state的映射关系为
Figure FDA0002909880230000031
7.一种自动驾驶测试方法,其特征在于,仿真***采用权利要求1所述方法得到的自动驾驶关键场景对目标主车进行测试。
CN202110082493.8A 2021-01-21 2021-01-21 一种基于强化学习的自动驾驶关键场景生成方法 Active CN112784485B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110082493.8A CN112784485B (zh) 2021-01-21 2021-01-21 一种基于强化学习的自动驾驶关键场景生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110082493.8A CN112784485B (zh) 2021-01-21 2021-01-21 一种基于强化学习的自动驾驶关键场景生成方法

Publications (2)

Publication Number Publication Date
CN112784485A true CN112784485A (zh) 2021-05-11
CN112784485B CN112784485B (zh) 2021-09-10

Family

ID=75758033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110082493.8A Active CN112784485B (zh) 2021-01-21 2021-01-21 一种基于强化学习的自动驾驶关键场景生成方法

Country Status (1)

Country Link
CN (1) CN112784485B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112997128A (zh) * 2021-04-19 2021-06-18 华为技术有限公司 一种自动驾驶场景的生成方法、装置及***
CN113485300A (zh) * 2021-07-15 2021-10-08 南京航空航天大学 一种基于强化学习的自动驾驶车辆碰撞测试方法
CN113823096A (zh) * 2021-11-25 2021-12-21 禾多科技(北京)有限公司 用于仿真测试的随机交通流障碍物对象布置策略
CN115257891A (zh) * 2022-05-27 2022-11-01 浙江众合科技股份有限公司 基于关键位置抽取与随机位置融合的cbtc场景测试方法
CN115630583A (zh) * 2022-12-08 2023-01-20 西安深信科创信息技术有限公司 仿真车辆行驶状态的生成方法、装置、设备和介质
CN115933596A (zh) * 2022-11-30 2023-04-07 重庆长安汽车股份有限公司 一种仿真测试方法、装置、设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111159832A (zh) * 2018-10-19 2020-05-15 百度在线网络技术(北京)有限公司 交通信息流的构建方法和装置
CN111983934A (zh) * 2020-06-28 2020-11-24 中国科学院软件研究所 一种无人车仿真测试用例生成方法及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111159832A (zh) * 2018-10-19 2020-05-15 百度在线网络技术(北京)有限公司 交通信息流的构建方法和装置
CN111983934A (zh) * 2020-06-28 2020-11-24 中国科学院软件研究所 一种无人车仿真测试用例生成方法及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TILL MENZEL 等: "Scenarios for Development, Test and Validation", 《2018 IEEE INTELLIGENT VEHICLES SYMPOSIUM (IV)》 *
陈君毅 等: "面向决策规划***测试的具体场景自动化生成方法", 《汽车技术》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112997128A (zh) * 2021-04-19 2021-06-18 华为技术有限公司 一种自动驾驶场景的生成方法、装置及***
CN112997128B (zh) * 2021-04-19 2022-08-26 华为技术有限公司 一种自动驾驶场景的生成方法、装置及***
CN113485300A (zh) * 2021-07-15 2021-10-08 南京航空航天大学 一种基于强化学习的自动驾驶车辆碰撞测试方法
CN113823096A (zh) * 2021-11-25 2021-12-21 禾多科技(北京)有限公司 用于仿真测试的随机交通流障碍物对象布置策略
CN113823096B (zh) * 2021-11-25 2022-02-08 禾多科技(北京)有限公司 用于仿真测试的随机交通流障碍物对象布置方法
CN115257891A (zh) * 2022-05-27 2022-11-01 浙江众合科技股份有限公司 基于关键位置抽取与随机位置融合的cbtc场景测试方法
CN115257891B (zh) * 2022-05-27 2024-06-04 浙江众合科技股份有限公司 基于关键位置抽取与随机位置融合的cbtc场景测试方法
CN115933596A (zh) * 2022-11-30 2023-04-07 重庆长安汽车股份有限公司 一种仿真测试方法、装置、设备和介质
CN115630583A (zh) * 2022-12-08 2023-01-20 西安深信科创信息技术有限公司 仿真车辆行驶状态的生成方法、装置、设备和介质

Also Published As

Publication number Publication date
CN112784485B (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
CN112784485B (zh) 一种基于强化学习的自动驾驶关键场景生成方法
CN110647839B (zh) 自动驾驶策略的生成方法、装置及计算机可读存储介质
Nishi et al. Merging in congested freeway traffic using multipolicy decision making and passive actor-critic learning
CN112703459B (zh) 对抗场景的迭代生成
CN109709956B (zh) 一种自动驾驶车辆速度控制多目标优化的跟驰算法
US11243532B1 (en) Evaluating varying-sized action spaces using reinforcement learning
WO2022052406A1 (zh) 一种自动驾驶训练方法、装置、设备及介质
Khodayari et al. A modified car-following model based on a neural network model of the human driver effects
US20230124864A1 (en) Graph Representation Querying of Machine Learning Models for Traffic or Safety Rules
CN112888612A (zh) 自动驾驶车辆规划
JP6916552B2 (ja) 走行途中に発生する走行シナリオを検出して、運転者の走行習慣を評価するための情報の提供する方法及び装置
CN113044064B (zh) 基于元强化学习的车辆自适应的自动驾驶决策方法及***
CN110956851B (zh) 一种智能网联汽车协同调度换道方法
CN114035575B (zh) 基于语义分割的无人驾驶车辆运动规划方法及***
Chen et al. Continuous decision making for on-road autonomous driving under uncertain and interactive environments
CN112508164A (zh) 一种基于异步监督学习的端到端自动驾驶模型预训练方法
Qiao et al. Behavior planning at urban intersections through hierarchical reinforcement learning
Sun et al. Human-like highway trajectory modeling based on inverse reinforcement learning
Wei et al. A learning-based autonomous driver: emulate human driver's intelligence in low-speed car following
CN117373243A (zh) 地下道路的立体路网交通诱导与应急救援协同管理方法
Wen et al. Modeling human driver behaviors when following autonomous vehicles: An inverse reinforcement learning approach
CN116127853A (zh) 融合时序信息的基于ddpg的无人驾驶超车决策方法
CN114701517A (zh) 基于强化学习的多目标复杂交通场景下自动驾驶解决方法
Mohammed et al. Reinforcement learning and deep neural network for autonomous driving
CN115031753A (zh) 基于安全势场和dqn算法的行车工况局部路径规划方法

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