1.本公开涉及无人驾驶技术领域,本公开涉及一种基于高精地图的自动驾驶控制方法、装置、电子设备、存储介质及程序产品。
背景技术:2.强化学习(reinforcement learning,rl)作为一个强大的学习框架,其基本思想是智能体能够在不断的尝试与错误中学习策略解决问题,但是常规的强化学习算法如q-learning等依赖大量的状态-动作对记录,通过查询记录来决策下一步的行动,这使得其空间开销非常大,同时也缺少对从未记录过的新状态场景进行决策的泛化推断能力。为了克服这些问题,科学家们将深度学习(deep learning)和强化学习结合起来,深度强化学习(deep reinforcement learning,drl)应运而生。
3.深度强化学习在自动驾驶领域的决策规划应用是一个新型研究方向,目前绝大多数相关研究可以分为三类:
4.1、基于视觉的端到端深度强化学习研究,直接输入rgb图片等视觉信息,经过连接深度强化学习的cnn提取,两个网络共同训练,完成各种实验任务的研究。但是视觉输入直接做端到端模型在卷积训练时效率不确定,且在出现问题进行调试时会有不明朗的情况。
5.2、在各类任务中,向环境反馈与深度强化学习算法直接插入新的预设计模块来预处理直接环境信息,将处理结果作为状态变量输入至深度强化学习框架提升性能,如放入预训练注意力模型或是预训练cnn特征提取器。
6.3、基于决策规划任务的研究推动,针对对应问题设计和维护一套深度强化学习方案。目前的研究目标任务已开始逐渐从对早期简单的任务向复杂的综合应用任务过渡。
7.然而对应简单场景和简单问题的应用如:高速公路或固定直线车道环境的变道决策、车辆跟随方案、针对十字路口场景的通行研究、横向控制、车道跟随行驶策略等等,其方案设计仅能实现对应研究的简单策略,难以扩展,实用性甚至不如非深度强化学习算法。
8.以下为现有技术。
9.技术方案1:公开号为cn113553934a发明名称为《基于深度强化学习的地面无人车智能决策方法及系统》,涉及一种基于深度强化学习,采用多传感器测量环境的地面无人车智能决策方法及系统,该方案通过定位系统、摄像头、多种雷达等传感器采集多种数据作为环境状态,以车辆位置和障碍物距离进行评分,通过深度强化学习算法计算横向决策和纵向决策结果。同时设计了一套完整车载决策系统。该技术能够一定程度上实现地面无人车的智能决策,其采用的技术为视觉直接输入的端到端训练。在本技术决策中的横向决策(具体分为车道保持、变道、左转、右转)属高层指令决策,不能精准到数值控制上,一定程度上削弱了模型的学习能力。同时该技术仅依靠局部感知,这使得必须要有人力在其中参与给出任务驱动,否则会使车辆没有驾驶目标,而目标奖励恰是深度强化学习最重要的一环。没有明确目标的稀疏奖励设计会使得训练非常缓慢,难以收敛。
10.技术方案2:公开号为cn114153213a发明名称为《一种基于路径规划的深度强化学
习智能车行为决策方法》,具体涉及一种基于路径规划的深度强化学习智能车行为决策方法。该方法使用路径导航点作为车辆引导奖励,采用深度强化学习中的dqn算法,将车辆智能体附近的车辆环境和自车状态用图像作为输入,处理为语义分割信息,输出直行、左转或右转三种决策。该技术能够通过语义分割处理图像变化影响,通过密集点引导通过深度强化学习的决策完成寻迹任务。但是该方法决策输出同样简单,左转或右转的指令精度有时不能达到实际驾驶中完美的需求;处理语义分割,存储图片等信息计算量很大;对于路径规划下的驾驶考察仅有偏角、碰撞和速度三个方向,在实际应用时可能会出现考虑不全面的情况,例如其他的交通参与者可能的干预行为;dqn作为基础深度强化学习算法也已是早期技术,随着科技发展现在已经有了很多更加完善的模型选择。
11.技术方案3:公开号为cn112462776a发明名称为《一种基于非结构化道路的无人驾驶决策方法》,涉及一种基于非结构化道路的无人驾驶决策方法。该方法通过相机和雷达获取局部感知信息、通过高精地图获取定位信息,在高精地图坐标系上重建周边环境并进行全局路径规划;然后利用获取信息进行宏观决策和微观决策,重复检测-规划-决策完成驾驶任务。该技术结合了高精地图信息与局部环境来综合规划到达目标点的路径,能够应对非结构化道路行驶任务。但该技术需要多次重新规划路径,同时给出的宏观决策为高层指令,微观决策是边界限制,在具体路况的实时细化调整和决策计算复杂度上较难平衡;该技术仍属于传统控制决策方案,决策指令是人工定制的,相比于深度强化学习的连续行动空间计算其固定的数值不具有良好的泛化性能。
12.技术方案1、2和3均使用了直接视觉输入端到端训练,尽管训练设计简单但是调试过程和方案适配过程也会因为视觉信息的隐式提取而变得复杂;技术方案1、2和3的决策均为较高层指令,在实际应用精度上可能达不到需求;技术方案1缺少引导动力,设计奖励稀疏,训练速度缓慢;技术方案2采用的深度强化学习算法略有过时,且仅适用于离散数据,车辆控制上精度较差;技术方案3受限于人类固定指令阈值设计,灵活度低。
技术实现要素:13.为了解决上述技术问题中的至少一个,本公开提供一种基于高精地图的自动驾驶控制方法、自动驾驶控制装置、电子设备、可读存储介质、程序产品。
14.根据本公开的一个方面,提供一种基于高精地图的自动驾驶控制方法,包括:
15.实时获取本车自身信息及本车周边环境信息,实时获取本车车载高精地图的路径规划信息;
16.基于所述本车自身信息、本车周边环境信息及所述路径规划信息获取相对信息;
17.基于所述本车自身信息、本车周边环境信息、路径规划信息及所述相对信息构建信息融合空间;
18.从所述信息融合空间抽取关键信息构建状态空间,并输入至深度强化学习模型(deep reinforcement learning,drl);
19.所述深度强化学习模型输出用于自动驾驶控制的控制变量;
20.将所述控制变量转换为本车的行动指令数值;
21.其中,所述路径规划信息以连续路径点表示,所述连续路径点为本车当前位置后续的预设数量的连续路径点;
22.其中,所述相对信息包括本车与其他车辆的相对信息即相对车辆信息、本车与连续路径点的相对信息即相对路径点信息及本车与连续路径点轨迹连接线的相对信息即相对路径点连线信息;
23.所述关键信息(优选为4个)包括本车自身信息、其他车辆信息、相对路径点信息及车道交通信息;
24.所述其他车辆信息基于所述本车周边环境信息获得;
25.所述相对路径点信息基于所述路径规划信息获得;
26.所述车道交通信息基于所述本车周边环境信息获得。
27.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述路径点均产生在所述高精地图中的车道中心线上。
28.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述本车自身信息包括本车速度、本车转角及本车累计移动距离。
29.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述本车周边环境信息包括其他车辆信息及车道交通信息;
30.所述其他车辆信息包括至少一个其他车辆的位置、速度及转角;
31.所述车道交通信息包括车道宽度信息、十字路口信息、交通灯信息及左右侧危险检测信息。
32.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述深度强化学习模型包括但不限于基于ppo(proximal policy optimization)算法的模型、基于sac(soft actor-critic)算法的模型。
33.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述深度强化学习模型为经过了奖励回报空间及现实驾驶规范信息训练之后的深度强化学习模型;其中,所述奖励回报空间至少基于所述状态空间构建。
34.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述奖励回报空间包括以下回报奖励函数变量:速度奖励变量(r_speed),所述速度奖励变量关联所述本车自身信息及所述相对路径点信息;碰撞奖励变量(r_collision),所述碰撞奖励变量关联所述其他车辆信息、相对车辆信息、车道交通信息及本车自身信息;转角奖励变量(r_steer),所述转角奖励变量关联所述本车自身信息及相对路径点信息;路线奖励变量(r_out),所述路线奖励变量关联所述相对路径点信息及所述相对路径点连线信息;终点奖励变量(r_dest),所述终点奖励变量关联所述本车自身信息、所述相对路径点信息及所述相对路径点连线信息;交通灯奖励变量(r_trafficlight),所述交通灯奖励变量关联所述本车自身信息及车道交通信息。
35.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述奖励回报空间还包括以下回报奖励函数变量:位置缓动奖励变量(r_stand),所述位置缓动奖励变量关联所述本车自身信息。
36.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述深度强化学习模型基于行动空间输出用于自动驾驶控制的控制变量;
37.其中,所述行动空间基于所述状态空间构建。
38.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述行动
空间的所述控制变量即行动空间变量:
39.加速度变量(acc),所述加速度变量用于转换为油门数值和刹车数值;
40.转角变量(steer),所述转角变量用于转换为转向角数值。
41.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,所述深度强化学习模型基于以下步骤进行训练:
42.获取本车周边环境信息,获取本车车载高精地图的路径规划信息,进行融合计算,构建信息融合空间;
43.从所述信息融合空间抽取高精地图任务状态空间信息,至少基于本车周边环境信息和路径规划信息、现实驾驶规范信息及所述状态空间信息构建奖励回报空间及行动空间;
44.将所述状态空间、奖励回报空间及所述行动空间带入具体深度强化学习模型进行训练并完成模型训练。
45.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制方法,将所述状态空间、奖励回报空间及所述行动空间带入具体深度强化学习模型进行训练,还包括:
46.加入优先经验回放技术进行训练。
47.根据本公开的另一个方面,提供一种基于高精地图的自动驾驶控制装置,包括:
48.深度强化学习模型;
49.信息获取模块,所述信息获取模块实时获取本车自身信息及本车周边环境信息,实时获取本车车载高精地图的路径规划信息;
50.相对信息计算模块,所述相对信息计算模块基于所述本车自身信息、本车周边环境信息及所述路径规划信息获取相对信息;
51.融合处理模块,所述融合处理模块基于所述本车自身信息、本车周边环境信息、路径规划信息及所述相对信息构建信息融合空间;
52.状态空间构建模块,所述状态空间构建模块从所述信息融合空间抽取关键信息构建状态空间,并输入至所述深度强化学习模型;
53.所述深度强化学习模型生成用于自动驾驶控制的控制变量(优选地包括加速度、转向角);
54.所述深度强化学习模型将所述控制变量转换为本车的行动指令数值;
55.其中,所述路径规划信息以连续路径点表示,所述连续路径点为本车当前位置后续的预设数量的连续路径点;
56.其中,所述相对信息包括本车与其他车辆的相对信息即相对车辆信息、本车与连续路径点的相对信息即相对路径点信息及本车与连续路径点轨迹连接线的相对信息即相对路径点连线信息;
57.所述关键信息(优选为4个)包括本车自身信息、其他车辆信息、相对路径点信息及车道交通信息;
58.所述其他车辆信息基于所述本车周边环境信息获得;
59.所述相对路径点信息基于所述路径规划信息获得;
60.所述车道交通信息基于所述本车周边环境信息获得。
61.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制装置,还包括:
62.奖励回报空间构建模块,所述奖励回报空间构建模块至少基于所述状态空间构建奖励回报空间以用于所述深度强化学习模型的训练。
63.根据本公开的至少一个实施方式的基于高精地图的自动驾驶控制装置,还包括:
64.行动空间构建模块,所述行动空间构建模块至少基于所述状态空间构建行动空间以用于所述深度强化学习模块的训练。
65.根据本公开的又一个方面,提供一种电子设备,包括:存储器,所述存储器存储执行指令;以及处理器,所述处理器执行所述存储器存储的执行指令,使得所述处理器执行本公开任一个实施方式的自动驾驶控制方法。
66.根据本公开的又一个方面,提供一种可读存储介质,所述可读存储介质中存储有执行指令,所述执行指令被处理器执行时用于实现本公开任一个实施方式的自动驾驶控制方法。
67.根据本公开的又一个方面,提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现本公开任一个实施方式的自动驾驶控制方法。
附图说明
68.附图示出了本公开的示例性实施方式,并与其说明一起用于解释本公开的原理,其中包括了这些附图以提供对本公开的进一步理解,并且附图包括在本说明书中并构成本说明书的一部分。
69.图1是本公开的一个实施方式的自动驾驶控制方法的整体流程示意图。
70.图2是本公开一个实施方式的奖励回报空间的构建逻辑示意图。
71.图3本公开的一个实施方式的深度强化学习模型的训练过程的整体流程示意图。
72.图4是本公开的一个实施方式的完整的深度强化学习模型的训练流程图。
73.图5是本公开的又一个实施方式的完整的深度强化学习模型的训练流程图。
74.图6是在carla模拟器使用地图town04测试得到示例训练数据。
75.图7是动态方案与强制静态限制的方案对比图。
76.图8是本公开的一个实施方式的采用处理系统的硬件实现方式的自动驾驶控制装置的结构示意框图。
77.附图标记说明
78.1000 自动驾驶控制装置
79.1002 深度强化学习模型
80.1004 信息获取模块
81.1006 相对信息计算模块
82.1008 融合处理模块
83.1010 状态空间构建模块
84.1012 奖励回报空间构建模块
85.1014 行动空间构建模块
86.1100 总线
87.1200 处理器
88.1300 存储器
89.1400 其他电路。
具体实施方式
90.下面结合附图和实施方式对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施方式仅用于解释相关内容,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分。
91.需要说明的是,在不冲突的情况下,本公开中的实施方式及实施方式中的特征可以相互组合。下面将参考附图并结合实施方式来详细说明本公开的技术方案。
92.除非另有说明,否则示出的示例性实施方式/实施例将被理解为提供可以在实践中实施本公开的技术构思的一些方式的各种细节的示例性特征。因此,除非另有说明,否则在不脱离本公开的技术构思的情况下,各种实施方式/实施例的特征可以另外地组合、分离、互换和/或重新布置。
93.在附图中使用交叉影线和/或阴影通常用于使相邻部件之间的边界变得清晰。如此,除非说明,否则交叉影线或阴影的存在与否均不传达或表示对部件的具体材料、材料性质、尺寸、比例、示出的部件之间的共性和/或部件的任何其它特性、属性、性质等的任何偏好或者要求。此外,在附图中,为了清楚和/或描述性的目的,可以夸大部件的尺寸和相对尺寸。当可以不同地实施示例性实施例时,可以以不同于所描述的顺序来执行具体的工艺顺序。例如,可以基本同时执行或者以与所描述的顺序相反的顺序执行两个连续描述的工艺。此外,同样的附图标记表示同样的部件。
94.当一个部件被称作“在”另一部件“上”或“之上”、“连接到”或“结合到”另一部件时,该部件可以直接在所述另一部件上、直接连接到或直接结合到所述另一部件,或者可以存在中间部件。然而,当部件被称作“直接在”另一部件“上”、“直接连接到”或“直接结合到”另一部件时,不存在中间部件。为此,术语“连接”可以指物理连接、电气连接等,并且具有或不具有中间部件。
95.本文使用的术语是为了描述具体实施例的目的,而不意图是限制性的。如这里所使用的,除非上下文另外清楚地指出,否则单数形式“一个(种、者)”和“所述(该)”也意图包括复数形式。此外,当在本说明书中使用术语“包含”和/或“包括”以及它们的变型时,说明存在所陈述的特征、整体、步骤、操作、部件、组件和/或它们的组,但不排除存在或附加一个或更多个其它特征、整体、步骤、操作、部件、组件和/或它们的组。还要注意的是,如这里使用的,术语“基本上”、“大约”和其它类似的术语被用作近似术语而不用作程度术语,如此,它们被用来解释本领域普通技术人员将认识到的测量值、计算值和/或提供的值的固有偏差。
96.下文结合图1至图8对本公开的基于高精地图的自动驾驶控制方法、自动驾驶控制装置进行详细说明。
97.图1是本公开的一个实施方式的基于高精地图的自动驾驶控制方法的整体流程示意图。
98.参考图1,本公开的基于高精地图的自动驾驶控制方法s100,包括:
99.s110、实时获取本车自身信息及本车周边环境信息,实时获取本车车载高精地图的路径规划信息;
100.s120、基于本车自身信息、本车周边环境信息及路径规划信息获取相对信息;
101.s130、基于本车自身信息、本车周边环境信息、路径规划信息及相对信息构建信息融合空间;
102.s140、从信息融合空间抽取关键信息构建状态空间,并输入至深度强化学习模型(deep reinforcement learning,drl);
103.s150、深度强化学习模型输出用于自动驾驶控制的控制变量(优选地包括加速度、转向角);
104.s160、将控制变量转换为本车的行动指令数值(优选地包括油门数值、刹车数值、转向角数值)。
105.其中,路径规划信息以连续路径点表示,连续路径点为本车当前位置后续的预设数量的连续路径点;
106.其中,相对信息包括本车与其他车辆的相对信息即相对车辆信息、本车与连续路径点的相对信息即相对路径点信息及本车与连续路径点轨迹连接线的相对信息即相对路径点连线信息;
107.关键信息优选地包括本车自身信息、其他车辆信息、相对路径点信息及车道交通信息(这些关键信息均是从人类驾驶员获取信息的角度而抽取的关键信息);
108.其中,其他车辆信息基于本车周边环境信息获得;
109.其中,相对路径点信息基于路径规划信息获得;
110.其中,车道交通信息基于本车周边环境信息获得;
111.其中,本公开的深度强化学习模型可以是在carla仿真模拟器中基于仿真交互完成训练的模型。
112.高精地图一般指精度在20-50厘米,包含多种路面属性、空间属性的电子地图。
113.在本公开的一些实施方式中,通过局部感知模块(各种车载传感器)获取本车周边环境信息,通过高精地图获取路径规划信息,并做信息融合计算,生成信息融合空间。
114.本公开中,首先,基于本车的局部感知模块,对本车车辆状态和本车周边环境信息进行检测和收集,以数值数据的方式输出本车车辆状态和本车周边环境信息。
115.在本公开的一些实施方式中,局部感知模块获取以下局部感知信息:
116.1)本车车辆自身信息:包括基于水平方向的转角、速度分量、速度值、累计移动距离、前方危险信息、累计移动步数等。
117.2)其他车辆信息:其他周围车辆的位置、转角、速度等。
118.3)车道交通信息:左右侧危险检测信息、车道宽度、十字路口信息、交通灯信息。
119.之后,本公开基于高精地图获取路径规划信息,高精地图的路径规划信息以连续的路径点表示。在本公开的一些实施方式中,需要获取根据本车当前位置筛选规划路线上的后续5个路径点信息,路径点信息包括路径点位置及基于水平方向的指向方向。
120.本公开通过以下方式生成信息融合空间。
121.将上文获取的局部感知信息与高精地图的路径规划信息作为综合状态空间信息,并准备输入到深度强化学习模型进行训练。
122.本公开中,使用相对信息可以帮助深度强化学习做到泛化和健壮,避免过拟合。
123.优选地,将局部感知信息和高精地图信息输入至相对信息计算模块以计算各项相
对信息,包括:
124.1)本车相对于其他车辆的相对信息:相对速度分量,相对速度模值,相对位置距离,相对转角方位,ttc(time-to-collision)碰撞时间。
125.2)本车相对于路径点的相对信息:相对位置分量,相对位置距离,相对转角方位。
126.3)本车相对于路径点连接轨迹线的相对信息:相对于路径线距离,相对路径线切向速度值,相对路径线法向速度值。
127.在本公开的一些实施方式中,本公开使用的深度强化学习模型包括但不限于基于ppo(proximal policy optimization)算法的模型、基于sac(soft actor-critic)算法的模型。
128.在完成信息融合生成综合状态空间信息之后,需要在融合后的所有信息(即综合状态空间信息)中筛选有用信息即特征信息作为深度强化学习模型的状态空间输入,优选地,考量角度包括以下四个部分:本车自身信息、其他车辆信息、路径点信息及车道交通信息。
129.其中,本车自身信息应当是与车辆智能体即本车相关的信息,包括本车自身周围信息与本车自身状态信息;
130.其他车辆信息是指车辆智能体即本车能观测到的其他车辆相关信息;
131.路径点信息是指接受到的高精地图指引路径点相关信息,特别地,在高精地图中路径点均产生在车道中心线上,这里也将获取关于车道中心线的信息。
132.车道交通信息是指本车在行驶中的相关交通路况和道路信息。
133.下文以一个详细的实例(参考表1)对输入至深度强化学习模型的特征信息的输入格式进行说明。
134.其中,本车自身信息包括五次(可调整)的历史记录,按照时序重复放入五次本车自身信息,中间不使用其他网络直接当做mlp的输入节点,因此,总输入节点数是55个。
135.对于其他车辆信息,本公开优选地采取x型分割策略,以车辆智能体即本车为原点用正交的x型来切分空间,分别取本车的前方、左方和右方为考虑区域,在这3个区域计算车辆ttc(time-to-collision,碰撞时间),如果ttc时间在10s以内则认为应当被观测到;同时每个区域最多计算2辆汽车,因此,最多有6辆汽车被考虑观测,所以总输入节点数是48个。
136.路径点信息我们根据高精地图导航数据,取当前路线上后续最近的5个路径点,因此总输入节点数是25。
137.车道交通信息即总输入节点数为5。
138.综合上述所有输入,可以得到深度强化学习状态输入总数为133个。
139.本公开中,优选地,上文描述的综合状态空间设计采用“留空式”设计方法,即不论是否有观测值,均要保留其输入节点而不动态改变。例如观测车辆信息若某一方向没有任何车辆,则填入默认空白信息(根据取值和变量不同而分别设置),这样处理有助于深度强化学习的收敛。
140.表1:
[0141][0142]
表1中,所有的角度的单位均为弧度制取值,所有的速度单位均为米每秒,所有的距离、长度的单位均为米,ttc时间的单位为秒。
[0143]
根据本公开的优选实施方式的基于高精地图的自动驾驶控制方法s100,上文描述的深度强化学习模型为经过了奖励回报空间及现实驾驶规范信息训练之后的深度强化学习模型;
[0144]
其中,奖励回报空间至少基于状态空间构建。
[0145]
根据本公开的优选实施方式的自动驾驶控制方法s100,奖励回报空间包括以下回报奖励函数变量:
[0146]
速度奖励变量(r_speed),速度奖励变量关联本车自身信息及相对路径点信息。
[0147]
本公开中,速度奖励旨在让智能体即本车更快地完成任务,同时要确保速度方向不会过于偏离高精地图的导航路线,这一部分与状态中的自身信息和车道中心线距离相关联。
[0148]
碰撞奖励变量(r_collision),碰撞奖励变量关联其他车辆信息、相对车辆信息、车道交通信息及本车自身信息。
[0149]
本公开中,碰撞奖励希望智能体即本车能够规避碰撞的发生,这里与状态中周围车辆信息和各个方向的可能危险信息相关联。
[0150]
路线奖励变量(r_out),路线奖励变量关联相对路径点信息及相对路径点连线信息。
[0151]
本公开中,路线奖励是真正的防止偏航的奖惩机制,直接与路径点信息计算关联,因此在状态空间的体现即是路径点信息和车道中心线距离。在函数设计选择上,使用一个二次函数做惩罚会在偏离很远时得到很高负回报,较近位置则是中等偏低的负回报,一定程度上增加了车辆学习超车避障追求长远回报的可能,是本公开所期望的合理函数设计。
[0152]
转角奖励变量(r_steer),转角奖励变量关联本车自身信息及相对路径点信息。
[0153]
本公开中,转角奖励为了控制智能体即本车不在行驶过程中摇晃幅度过高,考虑到乘坐舒适度而设计;在训练时为了让智能体前期可以比较随意完成任务快速收敛,后期转向考量舒适度,本公开将会设计随训练次数变化的动态转角幅度限制,这一部分优选地与状态空间的自身信息和路径点信息相关。
[0154]
终点奖励变量(r_dest),终点奖励变量关联本车自身信息、相对路径点信息及相对路径点连线信息。
[0155]
本公开中,终点奖励是主要任务回报,优选地设计一个在所有奖励中数值较为适合的中等水平。若过高会导致智能体鲁莽追求主线任务,过低会导致智能体不关注主线任务。可以选择比碰撞略低的一次性奖励并额外加和时间步和移动距离的方式,这样既能维持一个适合的回报,又可以给予智能体希望快速完成任务并少走弯路的暗示,这一部分与状态空间的时间步记录、距离记录和自身信息相关。
[0156]
交通灯奖励变量(r_trafficlight),交通灯奖励变量关联本车自身信息及车道交通信息。
[0157]
本公开中,交通灯奖励应当只针对交通灯的影响,考虑采用一个时域的累加判断,模拟人工开车需要一个反应并停止的过程,这一部分与状态空间的车道交通信息关联较大。
[0158]
在本公开的一些实施方式中,奖励回报空间还包括以下回报奖励函数变量:
[0159]
位置缓动奖励变量(r_stand),位置缓动奖励变量关联本车自身信息。
[0160]
本公开为了驱使车辆智能体行动,避免无引导带来的无法收敛问题,额外设计关于位置缓动奖励。
[0161]
本公开中,缓动奖励设计的初衷是不希望车辆智能体原地不动,通过额外奖励机制刺激它来保持移动。同时在前方有车或是受交通指示灯影响下还要考虑更多细节问题的处理,因此在设置上难度较大,需要兼顾各种可能,这一部分与状态空间自车信息历史记录关联较大,适合使用分段函数来多层次判断。
[0162]
图2示出了本公开一个实施方式的奖励回报空间的构建逻辑示意图。
[0163]
表2示出了本公开一个实施方式的回报奖励函数变量的函数值设定实例。
[0164]
表2:
[0165][0166]
对于上述各个实施方式的基于高精地图的自动驾驶控制方法s100,优选地,深度强化学习模型基于行动空间输出用于自动驾驶控制的控制变量;
[0167]
其中,行动空间基于状态空间构建。
[0168]
在本公开的一些实施方式中,行动空间的控制变量(即行动空间变量)包括:
[0169]
加速度变量(acc),加速度变量用于转换为油门数值和刹车数值;
[0170]
转角变量(steer),转角变量用于转换为转向角数值。
[0171]
根据本公开的优选实施方式,首先对筛选出的状态空间做行动空间设计,行动空间考虑为直接做数值直接控制,为了更贴近实际行为选用加速度和转向角做行动空间。参见表3:
[0172]
表3:
[0173]
行动空间变量取值范围加速度(acc)[-3.0,3.0]转角(steer)[-0.5,0.5]
[0174]
表3中,角度的单位均为弧度制取值。
[0175]
对应于实际车辆控制,本公开考虑自动驾驶控制装置(模型)应当输出三个数值:油门、刹车、转向角。其中需要通过换算将加速度值转为油门值和刹车数值,优选地,通过以下解算算法进行解算:
[0176]
若
[0177]
若
[0178]
上式中,clip为裁剪函数、acc为加速度值、throttle为油门数值、brake为刹车数值,clip函数在acc>0时,具体作用为:当acc/3<0时取0,0<=acc/3<=1时取acc/3,acc/3>1时取1;在acc<0时,clip函数具体作用为:当-acc/8<0时取0,0<=-acc/8<=1时取-acc/8,-acc/8>1时取1。
[0179]
基于上述解算算法,可以解算得到三个具体控制数据作用在自动驾驶控制装置(模型)的局部控制层,能够做到比高层指令更加精准的数值计算。
[0180]
图3是本公开的一个实施方式的深度强化学习模型的训练过程s200的整体流程示意图。
[0181]
参考图3,本公开的深度强化学习模型基于以下步骤进行训练:
[0182]
s210、获取本车周边环境信息,获取本车车载高精地图的路径规划信息,进行融合计算,构建信息融合空间;
[0183]
s220、从信息融合空间抽取高精地图任务状态空间信息,至少基于本车周边环境信息和路径规划信息、现实驾驶规范信息及状态空间信息构建奖励回报空间及行动空间;
[0184]
s230、将状态空间、奖励回报空间及行动空间带入具体深度强化学习模型(算法)进行训练并完成模型训练。
[0185]
在本公开的一些实施方式中,将状态空间、奖励回报空间及行动空间带入具体深度强化学习模型(算法)进行训练,还包括:
[0186]
加入优先经验回放技术进行训练。
[0187]
图4示出了本公开的一个实施方式的完整的深度强化学习模型的训练流程图。
[0188]
在本公开的一些实施方式的模型训练过程中,在整套模型训练方案中可能需要进行设计的迭代更新,同时应对模拟器和真实使用环境的差异(reality gap)问题,具体训练流程图如图5所示。
[0189]
作为实例的一套完整流程结果,在carla模拟器使用地图town04测试得到示例训练数据如图6所示。
[0190]
图6中显示了经过训练2m中的各项指标变化,这里的平均数据仍指100个剧集的数据的平均值。通过观察可以发现最终设计可以让智能体在200k步数就可以达到81%的成功率,而这只需要2小时7分钟的训练时间就可以做到。本公开的平均剧集长度在随着训练时间缩短的同时,回报和成功率均维持在一个较高水平,证明智能体按照本公开的预期加快了完成任务的速度,最后智能体可以稳定在平均73.95%的成功率。
[0191]
地图town04是一张高速公路较多的图,包括城区下的环境。经过本公开的测试,使用的小城区town02地图训练模型可以完全适配到大城区town03地图,而这里town04也可以配置于town03下,原因是对于智能体而言它能够看到的环境只有状态空间,而这一点恰好对于地图的变化并不敏感,除部分交通道路信息的变动之外寻迹任务信息基本一致,这也是本公开所设计技术方案的泛化性体现。
[0192]
更进一步地,关于动态奖励函数的训练效果上,本实例采用动态转角奖励函数,体现在结果图6的训练平均奖励于800k后有短暂下降且成功率和剧集长度未有较大变化。从测试效果上看,随剧集变动的奖励函数设计结果带来了比较稳定的转角输出;未使用动态变化的设计方案,在静态限制弱的情况下会出现大幅度摇晃现象,在静态限制强的情况下会出现无法收敛的情况,总体效果均不如动态方案。动态方案与强制静态限制的方案对比如图7。
[0193]
由上文描述可知,本公开提供了通过局部感知模块获取数值数据和高精地图做指引信息的深度强化学习算法,用以完成城区全场景环境的循迹驾驶任务,解决了现有技术在复杂场景下使用性差、鲁棒性弱和状态空间、行动空间、奖励函数设计不合理、不全面的问题。
[0194]
本公开从现实应用的考虑角度出发,以局部感知模块为获取信息的方式,尝试将简单任务在复杂场景做综合实现,通过获取传感器数据与高精地图导航路径信息结合深度强化学习,从模拟人类驾驶的角度设计4个考察方向的状态空间和7个对应的奖励函数来完成全场景城区自动驾驶的任务。
[0195]
本公开采用深度强化学习算法做局部决策可以增强模型的灵活性,引导模型自主做出未知场景下的合理决策。加入高精地图指引信息的奖励设计可以有效避免稀疏回报的问题,提高了训练速度和收敛性能,可以在2小时内训练一个较高成功率的模型。深度强化学习算法选择可以适配采用领域最新研究成果ppo(proximal policy optimization)、sac(soft actor-critic)等算法增强稳定性和泛化性,不局限于单一算法网络。同时设计从状态输入直接控制车辆加速度和转向角的输出,使用连续数值做行动空间而非高层决策指令来有效增强实用精度。
[0196]
更具体地,本公开采用纯局部感知模块的数值数据融合高精地图作为状态输入,能够适应各类非结构化道路和全场景环境,通过解算完成直接对应控制数值的输出。本公开从路线寻迹引导角度设计从4个角度考量完成任务的状态空间,和从7个方向对应于现实交通、状态空间和寻迹任务的奖励函数;全面细致地考察整个驾驶流程,包括对道路交通信息和其他车辆的考虑。本公开的奖励函数设计新增动态奖励训练机制,通过设计跟随训练进度而变化的转角动态奖励,使智能体前期考虑多偏向完成任务,后期在任务完成率稳定时转向考虑现实车辆操作状态,能够很大程度上维护乘坐舒适度,易于生成优质模型。
[0197]
本公开还提供了一种自动驾驶控制装置1000,参见图8,包括:
[0198]
深度强化学习模型1002;
[0199]
信息获取模块1004,信息获取模块1004实时获取本车自身信息及本车周边环境信息,实时获取本车车载高精地图的路径规划信息;
[0200]
相对信息计算模块1006,相对信息计算模块1006基于本车自身信息、本车周边环境信息及路径规划信息获取相对信息;
[0201]
融合处理模块1008,融合处理模块1008基于本车自身信息、本车周边环境信息、路径规划信息及相对信息构建信息融合空间;
[0202]
状态空间构建模块1010,状态空间构建模块1010从信息融合空间抽取关键信息构建状态空间,并输入至深度强化学习模型(deep reinforcement learning,drl)1002;
[0203]
深度强化学习模型1002生成用于自动驾驶控制的控制变量(加速度、转向角);
[0204]
深度强化学习模型1002将控制变量转换为本车的行动指令数值(油门数值、刹车数值、转向角数值);
[0205]
其中,路径规划信息以连续路径点表示,连续路径点为本车当前位置后续的预设数量的连续路径点;
[0206]
其中,相对信息包括本车与其他车辆的相对信息即相对车辆信息、本车与连续路径点的相对信息即相对路径点信息及本车与连续路径点轨迹连接线的相对信息即相对路径点连线信息;
[0207]
关键信息包括本车自身信息、其他车辆信息、相对路径点信息及车道交通信息;
[0208]
其他车辆信息基于本车周边环境信息获得;
[0209]
相对路径点信息基于路径规划信息获得;
[0210]
车道交通信息基于本车周边环境信息获得;
[0211]
奖励回报空间构建模块1012,奖励回报空间构建模块1012至少基于状态空间构建奖励回报空间以用于深度强化学习模型的训练;
[0212]
行动空间构建模块1014,行动空间构建模块1014至少基于状态空间构建行动空间以用于深度强化学习模块的训练。
[0213]
图8是本公开的一个实施方式的采用处理系统的硬件实现方式的自动驾驶控制装置的结构示意框图。
[0214]
该自动驾驶控制装置可以包括执行上述流程图中各个或几个步骤的相应模块。因此,可以由相应模块执行上述流程图中的每个步骤或几个步骤,并且该装置可以包括这些模块中的一个或多个模块。模块可以是专门被配置为执行相应步骤的一个或多个硬件模块、或者由被配置为执行相应步骤的处理器来实现、或者存储在计算机可读介质内用于由处理器来实现、或者通过某种组合来实现。
[0215]
该硬件结构可以利用总线架构来实现。总线架构可以包括任何数量的互连总线和桥接器,这取决于硬件的特定应用和总体设计约束。总线1100将包括一个或多个处理器1200、存储器1300和/或硬件模块的各种电路连接到一起。总线1100还可以将诸如外围设备、电压调节器、功率管理电路、外部天线等的各种其他电路1400连接。
[0216]
总线1100可以是工业标准体系结构(isa,industry standard architecture)总线、外部设备互连(pci,peripheral component)总线或扩展工业标准体系结构(eisa,extended industry standard component)总线等。总线可以分为地址总线、数据总线、控
制总线等。为便于表示,该图中仅用一条连接线表示,但并不表示仅有一根总线或一种类型的总线。
[0217]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施方式所属技术领域的技术人员所理解。处理器执行上文所描述的各个方法和处理。例如,本公开中的方法实施方式可以被实现为软件程序,其被有形地包含于机器可读介质,例如存储器。在一些实施方式中,软件程序的部分或者全部可以经由存储器和/或通信接口而被载入和/或安装。当软件程序加载到存储器并由处理器执行时,可以执行上文描述的方法中的一个或多个步骤。备选地,在其他实施方式中,处理器可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述方法之一。
[0218]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,可以具体实现在任何可读存储介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
[0219]
就本说明书而言,“可读存储介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。可读存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,可读存储介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在存储器中。
[0220]
应当理解,本公开的各部分可以用硬件、软件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0221]
本技术领域的普通技术人员可以理解实现上述实施方式方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,程序可以存储于一种可读存储介质中,该程序在执行时,包括方法实施方式的步骤之一或其组合。
[0222]
此外,在本公开各个实施方式中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个可读存储介质中。存储介质可以是只读存储器,磁盘或光盘等。
[0223]
本公开还提供了一种电子设备,包括:存储器,存储器存储执行指令;以及处理器
或其他硬件模块,处理器或其他硬件模块执行存储器存储的执行指令,使得处理器或其他硬件模块执行上述的方法。
[0224]
本公开还提供了一种可读存储介质,可读存储介质中存储有执行指令,所述执行指令被处理器执行时用于实现上述的方法。
[0225]
在本说明书的描述中,参考术语“一个实施方式/方式”、“一些实施方式/方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施方式/方式或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施方式/方式或示例中。在本说明书中,对上述术语的示意性表述不必须的是相同的实施方式/方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施方式/方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施方式/方式或示例以及不同实施方式/方式或示例的特征进行结合和组合。
[0226]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0227]
本领域的技术人员应当理解,上述实施方式仅仅是为了清楚地说明本公开,而并非是对本公开的范围进行限定。对于所属领域的技术人员而言,在上述公开的基础上还可以做出其它变化或变型,并且这些变化或变型仍处于本公开的范围内。