具有非线性动态行为的多车辆列队行驶问题的基于强化学习的方法

news2024/11/15 7:04:39

论文地址:
Reinforcement Learning Based Approach for Multi-Vehicle Platooning Problem with Nonlinear Dynamic Behavior

摘要

协同智能交通系统领域的最新研究方向之一是车辆编队。研究人员专注于通过传统控制策略以及最先进的深度强化学习 (RL) 方法解决自动驾驶车辆控制的各种方法。在这项研究中,除了提出基于 RL 的最优间隙控制器之外,还重新引入了详细的非线性动力车辆模型,这通过具有深度确定性策略梯度算法的 actor critic 策略进行了证明。生成的智能体针对可变速度和可变间隙侵略性场景进行模拟,并与模型预测控制 (MPC) 性能进行比较。结果表明,准确性和学习时间之间存在权衡。但是,两个控制器都具有接近最佳的性能。

前言

存在的问题

从上述文献来看,在利用 RL 作为队列中动态车辆模型的控制器方面存在研究空白。一些研究人员使用传统控制器来解决队列问题。

此外,[12] 提到了各种应用基于深度 RL 的控制器的研究,这些研究仅考虑点质量运动学模型,而没有加速延迟动力学的影响

其他研究人员专注于在单个车辆或跟车问题上使用基于 RL 的控制器,而没有考虑相对距离控制。如以下各节所述,本研究填补了上述研究空白。

问题描述

车辆动力学模型

在这项研究中,所考虑的队列配置由异构车辆组成,即车辆的质量、长度或最重要的是车辆的阻力系数可能不同

此外,该队列有四辆车、一辆领队和任意数量的随车,其中领队位于第一个位置。描述运动曲线的领导者状态是 x 0 ˙ \dot{x_0} x0˙ x 0 ¨ \ddot{x_0} x0¨,分别代表领导者的速度和加速度。此外,两辆车之间的距离 d g ( i ) d^{(i)}_ g dg(i)是本车在位置 i i i 的前保险杠与前车在位置 i − 1 i − 1 i1 的后保险杠之间的距离。

此外,假定领导者遵循仅为其预定义的速度轨迹。其他车辆的目标是跟随前面车辆的轨迹,同时保持定义的相对距离 d g ( i ) d^{(i)}_ g dg(i) 。因此,假设存在完美的车对车 (V2V) 通信,即所有车辆都可以观察到前车的状态,并且第 i i i辆车的位置 x ( i ) x(i) x(i) 是从车辆的质心测量的。对于本节的其余部分,将对用于表示车辆行为的模型进行进一步调查。

然而,阻力进一步研究。由于这项研究的目的是调查队列中的行为,因此更现实的做法是考虑由于队列配置而减少作用在自我车辆上的阻力的影响。在上述原因下,单个队列成员的动力学由方程式 1 建模。
x ¨ = T t − T b r − ( F d + F r + F g ) ⋅ R m ⋅ R + I w R \begin{equation} \begin{aligned} \ddot{x}=\frac{T_t-T_{br}-(F_d+F_r+F_g) \cdot R}{m\cdot R+\frac{I_w}{R}} \end{aligned} \end{equation} x¨=mR+RIwTtTbr(Fd+Fr+Fg)R
其中 T t T_t Tt 是由发动机产生并导致车辆向前运动的牵引扭矩, T b r T_br Tbr 是由制动系统产生的用于控制车辆减速的扭矩, F d F_d Fd F r F_r Fr F g F_g Fg 是阻力、滚动阻力和重力。阻力乘以减阻比,该减阻比模拟前车对本车阻力的影响,如 [15] 中所示。最后, m 、 R 和 I w m、R 和 I_w mRIw 分别是车辆质量、车轮半径和车轮转动惯量。

状态空间模型

控制器智能体只观察两辆连续车辆之间的差距、速度和加速度的误差。对于领导者,设计了一个单独的速度控制器智能体来维持设定的速度 x ˙ r e f ( 0 ) \dot{x}^{(0)}_{ref} x˙ref(0) 。队列中所有车辆的车辆模型与第 3 节中导出的相同。此外,控制器用于控制队列的车辆间距。

说明拓扑是TPF双前车跟随式。

奖励设置

领航车的奖励

R l , t = − ( u t − 1 2 + 0.05 u ˙ t − 1 2 + 0.1 e v l , t 2 ) + Q l , t \begin{equation} R_{l,t}=-(u_{t-1}^2+0.05\dot{u}_{t-1}^2+0.1e_{vl,t}^2)+Q_{l,t} \end{equation} Rl,t=(ut12+0.05u˙t12+0.1evl,t2)+Ql,t

其中$ u_{t−1}$ 是前一时刻的控制力(加速度) u t − 1 ˙ \dot{ u_{t−1}} ut1˙是前一时刻的控制力(加速度)的导数。 e v l , t e_{vl,t} evl,t是设定参考速度与当前领导者速度 v r e f − x 0 ˙ v_{ref} − \dot{x_0} vrefx0˙ 之间的速度误差, Q l , t Q_{l,t} Ql,t是基于逻辑方程的正奖励:

Q l , t = ∣ e v l , t ∣ ≤ ϑ v ∧ t ≥ τ Q_{l,t}=\left|e_{vl,t}\right|\leq\vartheta_v\wedge t\geq\tau Ql,t=evl,tϑvtτ
其中 ϑ v \vartheta_v ϑv是可接受的速度误差容差的阈值, τ \tau τ是奖励存在的阈值时间。

奖励负数部分的平方是为了说明所描述术语中的正值或负值。第一项说明加速度的最小化,而第二项说明加速度的变化。因此,最大限度地减少控制工作中的抖动并确保信号的平滑度。第三项消除了速度误差以实现控制器的预期行为。 Q 部分是在设定点周围给予智能体正奖励,以抑制控制超调,而不是将控制器收紧到严格的值。延迟条件对于确保控制器仅在实际处于正确速度时才收到正奖励非常重要,并防止因初始领导者速度与设定速度接近零误差而产生的任何假正奖励。

跟随车辆的奖励

R f , t = − ( u t − 1 2 + 0.05 u ˙ t − 1 2 + ( 1 v m a x e v f , t ) 2 + ( 1 d g m a x e g , t ) 2 ) + Q f , t R_{f,t}=-\left(u_{t-1}^2+0.05\dot{u}_{t-1}^2+\left(\dfrac{1}{v_{max}}e_{vf,t}\right)^2+\left(\dfrac{1}{d_{gmax}}e_{g,t}\right)^2\right)+Q_{f,t} Rf,t=(ut12+0.05u˙t12+(vmax1evf,t)2+(dgmax1eg,t)2)+Qf,t

它具有与等式(2)中相同的控制努力参数。然而, e v f , t e_{vf,t} evf,t是当前速度与前车速度之间的速度误差 v i − v i − 1 v_i − v_{i−1} vivi1,而 $e_{g,t} $是间隙误差 g a p d e s i r e d − d g i {gap}_{desired}−d^i_g gapdesireddgi Q f , t Q_{f,t} Qf,t是正奖励基于逻辑等式:

Q f , t = ∣ e v , t ∣ ≤ ϑ v ∧ ∣ e g , t ∣ ≤ ϑ g ∧ t ≥ τ Q_{f,t}=|e_{v,t}|\leq\vartheta_v\wedge|e_{g,t}|\leq\vartheta_g\wedge t\geq\tau Qf,t=ev,tϑveg,tϑgtτ

等式 ( 2 2 2) 和 (3) 中的项的相同原因用于等式 (4) 和 (5) 中,增加了间隙项中的误差以消除实现所需控制器的误差。等式 (4) 中速度和间隙误差的增益用于对值进行归一化。因此,智能体可以比非标准化函数更容易满足多目标奖励函数。

网络结构

演员网络具有三个完全连接的隐藏层,分别具有 400、300 和一个神经元,而对于评论家网络,动作路径具有一个具有 300 个神经元的隐藏层。状态路径有两个隐藏层,分别有 400、300 个神经元。两条路径都通过加法层合并到输出层。 RL 模型以 0.1 秒的采样时间运行,奖励折扣因子为 0.99,噪声模型方差为 0.6。对于训练过程,小批量大小为 128,而演员和评论家网络的学习率分别为 10−410−3

在这里插入图片描述

实验结果

自我车辆控制器的训练进行了 2163 集,总步数为 973,186,持续了大约 9.5 小时。如图 2 所示,基于公式 4 的最终平均奖励为 326.8。车辆速度和位置的初始条件在每一集开始前随机更改,以确保智能体在任何给定的现实场景中的可靠性并防止模型对某些场景的过度拟合。因此,每一集都有不同的初始间隙误差和不同的初始速度误差。

在这里插入图片描述

关于恒定距离间隙场景,智能体以可接受的误差容限 ( ∼ ∣ e g , t ∣ ≤ 0.3 ∼ |e_{g,t}| ≤ 0.3 eg,t0.3) 实现了所需的间隙,这满足了等式 5 中的奖励函数。稳定时间非常接近 MPC 的响应,即[13] 中三个控制器中最快的一个。整体响应类似于 MPC,如图 5 所示,这是有道理的,可以从 RL 和 MPC 都试图解决优化问题以分别找到最优策略 π* 或控制律 u* 的事实中推导出来.此外,据观察,对于预定义的速度轨迹,控制工作是平稳且现实的。间隙控制器已证明能够在目标奖励函数中指定的公差范围内以令人满意的方式处理简单和激进的场景。

可变间隙参考轨迹是根据速度轨迹设计的,其中所需间隙等于 3 米的安全距离加上一个定时间隙,其幅度为速度的一半(以米/秒为单位)。此外,智能体的响应以令人满意的方式对具有平滑速度轨迹的间隙变化做出快速反应,如图 3b 所示。必须指出的是,在间隙变化的部分,跟随器的速度相对于参考速度存在恒定的偏移,从而导致间隙的增加或减小。

在这里插入图片描述

如表 1 所示,RL 智能体为之前在 [13] 中讨论的控制器提供了类似的均方根误差 (RMSE)。然而,就计算时间而言,RL 智能体的模拟速度明显快于之前提出的最优控制 MPC。以这种方式,RL 智能体在建议的最优控制器之间展示了准确性和计算时间之间的良好平衡。

在这里插入图片描述

可以进行进一步的分析以研究 RL 和 MPC 控制器之间的性能差异。应该指出的是,比较中没有使用先前在 [13] 中使用的相同参数。或者,对 R 和 Q(分别为控制输入和状态的权重矩阵)进行参数研究。之后,选择 R 和 Q 矩阵的最佳组合,使其实现三个间隙的最小累积 RMSE。研究结果见图 4。

在这里插入图片描述

图 5b 还展示了可变间隙场景中 MPC 的间隙、速度和控制力。考虑到图 3 中 RL 智能体的响应,可以得出结论,两个控制器都以令人满意的方式满足给定的间隙和速度曲线,几乎没有显着差异。另一方面,RL 智能体通过实现更平滑的轨迹来保持其在控制工作中的主导地位。

在这里插入图片描述

结论

本研究解决了管理一队列异构车辆中的车辆间距的问题,其中在现有的详细非线性纵向动力学模型上开发了一个更成熟的模型,可以分别减少每辆车的空气阻力。 RL 被用作为领导者和跟随者车辆设计控制器的工具。提出了一种具有多目标奖励函数的间隙和速度控制器。该智能体基于 DDPG 算法与参与者和评论家网络进行训练。从仿真获得的结果来看,强化学习智能体在奖励函数、控制力度和速度轨迹跟踪方面表现令人满意。优化控制器的分析证实,RL 控制器在计算时间和控制工作量方面优于 MPC,特别是在更现实和复杂的场景中,同时在车辆间距中保持相似的 RMSE。

此外,建议继续在调整参数上训练模型,以获得关于可调整奖励函数的最佳性能。此外,可以延续 RL 控制器训练以满足其他目标,而不会与当前目标相抵触。硬件在环模拟器可以在广泛而逼真的模拟中使用控制器,以研究车辆在其他场景和环境下的行为。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/352091.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java易错题锦集四

effective java 不要再构造方法中启动任何线程 g new GameServer(); g.start();构造器无返回值,但是不能void修饰 字符串 String是包装类型吗?答案: 不是 对应的基本类型和包装类如下表: 基本数据类型 包装类 byte Byte bool…

使用开源 MaxKey 与 APISIX 网关保护你的 API

1. Apache APISIX介绍 Apache APISIX 是 Apache 软件基金会下的云原生 API 网关,它兼具动态、实时、高性能等特点,提供了负载均衡、动态上游、灰度发布(金丝雀发布)、服务熔断、身份认证、可观测性等丰富的流量管理功能。我们可以…

黑马redis学习记录:缓存

一、介绍 什么是缓存? 缓存(Cache),就是数据交换的缓冲区,俗称的缓存就是缓冲区内的数据,一般从数据库中获取,存储于本地代码 缓存无处不在 为什么要使用缓存? 因为速度快,好用缓存数据存储于代码中,而…

海外问卷调查答题技巧,纯干货分享,新手小白看过来

海外问卷调查为什么别人赚得盆满钵满而我却连通过都不行?是不是经常有人发出这种疑问,东哥作为一个结交过很多做问卷调查行业的跨境人士,也了解到很多做这一行的去答题的时候都是掌握一定技巧的,而不是去乱答。今天东哥就来说说国…

算法笔记(七)—— 图的相关知识及算法

图的存储方式 1. 邻接表&#xff08;记录关于某点的直接相邻点&#xff09; 2. 邻接矩阵&#xff08;一定是正方形的矩阵&#xff0c;对点进行编号&#xff0c;点到点的权值由距震中的值表示&#xff0c;无直接相连记为正无穷&#xff09; 图的模板 unordered_map<int,No…

React(二) —— 组件间的通信方式

&#x1f9c1;个人主页&#xff1a;个人主页 ✌支持我 &#xff1a;点赞&#x1f44d;收藏&#x1f33c;关注&#x1f9e1; 文章目录⛳组件通信的方式&#x1f680;父子组件通信方式父传子子传父ref标记&#xff08;传递数据&#xff09;⛪非父子组件通信方式状态提升&#xf…

微信小程序反编译方法分享

文章目录一、前言二、准备工作&#xff08;一&#xff09;安装Nodejs&#xff08;二&#xff09;解密和逆向工具三、小程序缓存文件解密&#xff08;一&#xff09;定位小程序缓存路径&#xff08;二&#xff09;源码解密&#xff08;三&#xff09;源码反编译四、小结一、前言…

【神级Python代码】作为技术xiao白如何制作一款超炫酷的黑客主题代码雨?牛逼就完了。(源码分享学习)

前言 哈喽&#xff0c;我是木子&#xff0c;今天给大家制作一款超级炫酷的代码啦。 提到《黑K帝国》&#xff0c;字符雨可谓是让人印象深刻。 所有文章完整的素材源码都在&#x1f447;&#x1f447; 粉丝白嫖源码福利&#xff0c;请移步至CSDN社区或文末公众hao即可免费。 ​…

KD04丨震荡动量_波段王

大家好&#xff0c;今天我们分享可达鸭系列第4篇策略——震荡动量。 该篇策略来自于2021-2022年度&#xff0c;量化杂志翻译系列——费雪逆变换。如下图所示&#xff1a; 2023年度加入股票和期货社群&#xff0c;均可以获得当年免费12期历史12期的量化杂志资…

Mysql UDF提权复现Raven2

Raven2通关过程 主要通过Raven2靶机进行复现Mysql UDF提权&#xff0c;以下为通关过程。 靶机镜像&#xff1a;https://www.vulnhub.com/entry/raven-2,269/ 信息收集 拿到靶机ip&#xff1a;192.168.112.129 nmap -sP 192.168.112.0/24探测开放端口&#xff0c;nmap用烂了…

硬件系统工程师宝典(8)-----初识电源完整性分析

各位同学大家好&#xff0c;欢迎继续做客电子工程学习圈&#xff0c;今天我们继续来讲这本书&#xff0c;硬件系统工程师宝典。 上篇我们说到信号的时序设计需要保证数据和时钟信号同步传输。今天我们开始学习电源完整性分析需要考虑什么&#xff1f; PI分析概述 电源完整性…

2023年湖南建筑八大员(材料员)模拟真题及答案

百分百题库提供建筑八大员&#xff08;材料员&#xff09;考试试题、建筑八大员&#xff08;材料员&#xff09;考试预测题、建筑八大员&#xff08;材料员&#xff09;考试真题、建筑八大员&#xff08;材料员&#xff09;证考试题库等,提供在线做题刷题&#xff0c;在线模拟考…

2023年美赛C题 预测Wordle结果Predicting Wordle Results这题太简单了吧

2023年美赛C题 预测Wordle结果Predicting Wordle Results 更新时间&#xff1a;2023-2-17 11:30 1 题目 2023年MCM 问题C:预测Wordle结果![在这里插入图片描述](https://img-blog.csdnimg.cn/e059d917333e497e90ca082605869e3c.png#pic_center) Wordle是纽约时报目前每天提…

对于EVM系链交易缓冲池txpool的理解

区块链就是和交易打交道&#xff0c;我们今天就介绍下&#xff0c;交易处理过程中的一个重要组成部分&#xff1a;txpool。这篇文章主要从功能角度介绍&#xff0c;通过这篇文章会了解&#xff1a; txpool的在交易中的位置和作用。txpool的功能&#xff0c;核心组成部分queued…

停车辅助系统的技术和变化

各种各样的停车辅助系统已经存在了很长时间&#xff0c;但用户经常在不知道什么技术以及它是如何工作的情况下使用它们。 今天我们依次来谈谈停车辅助系统是什么&#xff0c;怎么发展以及如何应用的。 ​ 1.手信号 您可能会想&#xff0c;“为什么手信号是停车辅助系统&#x…

变电站如何解决人力不足问题?这个技能划重点

随着企业的管理水平的不断提高&#xff0c;各企业都建立的大大小小的数据机房。由于机房的大小不同、监测内容不同&#xff0c;费用也不尽相同&#xff0c;而数据机房存储着大量的珍贵数据&#xff0c;一旦丢失损毁会给企业造成不可挽回的损失。 变电站安装机房动环监控系统4大…

MySQL索引类型——有五种

文章目录前言一、MySQL中的索引类型有以下几种1.1 普通索引1.1.1 直接创建索引1.1.2 修改结构的方式添加索引1.1.3 创建表的时候同时创建索引1.1.4 删除索引1.2 唯一索引1.2.1 创建唯一索引1.2.2 修改表结构1.2.3 创建表的时候直接指定1.3 主键索引1.4 组合索引1.5 全文索引1.5…

EdrawMax 12.0.7 Ultimate 多语言版

EdrawMax多合一图表软件。获得市场上最强大、最专业的图表软件。现在比较一下&#xff0c;看看为什么 Lucidchart 是更好的图表解决方案。超过 10,000,000 多个用户。专用支持。Visio 导入和导出。图表和流程图进行可视化、创新和协作创建强大的流程图和视觉效果&#xff0c;以…

个人开源PCB开发板列表汇总

个人开源PCB开发板列表汇总✨首先感谢立创EDA的免费打样和立创一起开源的广大网页。 &#x1f530;STC单片机为主控开源PCB开发板列表 &#x1f4cc;STC15F2K60S2开发板&#xff1a;https://oshwhub.com/perseverance51/stc15f2k60s2-ji-tong-ban &#x1f4cc;STC15W408AS系…

Python3 输入和输出实例及演示

在前面几个章节中&#xff0c;我们其实已经接触了 Python 的输入输出的功能。本章节我们将具体介绍 Python 的输入输出。 输出格式美化 Python两种输出值的方式: 表达式语句和 print() 函数。 第3种方式是使用文件对象的 write() 方法&#xff0c;标准输出文件可以用 sys.std…