论文题名: | 基于深度强化学习的智能汽车车道保持控制研究 |
关键词: | 智能汽车;智能驾驶;强化学习;深度确定性策略梯度 |
摘要: | 如今,随着人工智能的不断进步,汽车也进入到智能化时代,全球许多知名汽车生产制造企业大量投资到自动驾驶技术领域。而自动驾驶技术作为信息技术革命的产物,对促进环境可持续发展、改善城市交通以及对驾驶安全性的作用举足轻重。目前常见的自动驾驶方案均是感知-决策-控制等子模块的融合,这样的模式存在着多项难点:1、基于规则的策略需要大量的人工设计,不仅流程复杂繁琐,而且成本耗费极大;2、无法适应人员密集、错综复杂的城市交通环境;3、下层模块与上层模块紧密相连,系统的维护繁琐冗杂。鉴于这些难题,本文首先通过Torcs仿真软件验证深度强化算法应用在智能驾驶上的可行性,然后通过Carla城市驾驶仿真模拟器,对智能驾驶的车道保持任务进行了仿真实验研究,旨在通过端到端的控制方法解决传统上下模块过于依赖的问题。 首先,本文使用免手工调参、免模型、能够自适应学习的深度确定性策略梯度算法(DeepDeterministicPolicyGradient,DDPG),该算法依赖于actor-critic框架,不仅克服了高维输入的问题,连续动作输出的难题也得到了解决。首先应用DDPG算法在Torcs仿真环境中针对CG1和CG2赛道完成仿真训练,结果证明DDPG算法能针对无人驾驶汽车训练出良好的控制策略,验证了DDPG算法应用于智能汽车控制的可行性。 然后,为了进一步还原真实的驾驶场景,编写了基于Carla仿真环境的DDPG代码。其代码的编写部分分为环境、神经网络、智能体三个模块。OpenAI中的Gym提供了近乎标准的环境代码编写规则,本文的环境采用了与Gym一致的规则,环境的编写分为了reset、step、render、reward四个方法。神经网络部分遵循了DDPG原本的框架,分为了actor和critic两个网络进行编写。智能体部分的代码是DDPG算法的核心部分,主要由train方法完成整个算法的训练,DDPG的智能体与环境发生交互,以试错的方式进行训练,在训练的每一步中调整改善驾驶策略,直到找到最优控制策略。 其次,强化学习算法在训练的过程中需要进行无规则的试错,试错的行为对于汽车行驶来说代价太大。因此针对强化学习需要试错这一特性,在DDPG算法基础之上,于环境和智能体之间设计了一个实时监控汽车危险行为的监督器,可以对智能体的危险动作进行约束并加以修正,以此达到减少试错行为并提升训练效率的目的。 DDPG算法以及监督式DDPG算法在Carla仿真环境中分别训练70000个回合,仿真结果显示,DDPG算法以及监督式DDPG算法最终达到了一致的训练效果,均能有效避开障碍,在没有违规驾驶的条件下正常行驶,但监督式DDPG算法比DDPG收敛速度更快。其次,以地图、动态因素数量、天气作为控制变量,以车道保持任务对两种算法模型在实验平台的统一评估方案下进行了评测实验,最终监督式DDPG在无动态因素以及有动态因素环境中平均任务完成度分别为98%和89%,DDPG任务完成度分别为97%和88%。与2017年Carla官方论文的车道保持任务相比,极大地提高了平均任务完成度。 用深度强化学习算法对自动驾驶汽车进行端到端的控制,不仅有效改善传统方案上下模块依赖严重的弊端,而且缩短了开发周期。尽管监督式强化学习最终的控制效果与原始算法无异,但是显著提高了收敛速度,且有效降低了智能体前期的试错频率。因此,监督学习与强化学习的结合,可以为降低强化学习试错风险提供一种新的解决思路,为深度强化学习的端到端智能驾驶从仿真环境到实际应用的实现提供一定的参考价值。 |
作者: | 杨小青 |
专业: | 车辆工程 |
导师: | 赖晨光 |
授予学位: | 硕士 |
授予学位单位: | 重庆理工大学 |
学位年度: | 2022 |