具有非线性动态行为的多车辆列队行驶问题的基于强化学习的方法
论文地址:
Reinforcement Learning Based Approach for Multi-Vehicle Platooning Problem with Nonlinear Dynamic Behavior
摘要
协同智能交通系统领域的最新研究方向之一是车辆编队。研究人员专注于通过传统控制策略以及最先进的深度强化学习 (RL) 方法解决自动驾驶车辆控制的各种方法。在这项研究中,除了提出基于 RL 的最优间隙控制器之外,还重新引入了详细的非线性动力车辆模型,这通过具有深度确定性策略梯度算法的 actor critic 策略进行了证明。生成的智能体针对可变速度和可变间隙侵略性场景进行模拟,并与模型预测控制 (MPC) 性能进行比较。结果表明,准确性和学习时间之间存在权衡。但是,两个控制器都具有接近最佳的性能。
前言
存在的问题
从上述文献来看,在利用 RL 作为队列中动态车辆模型的控制器方面存在研究空白。一些研究人员使用传统控制器来解决队列问题。
此外,[12] 提到了各种应用基于深度 RL 的控制器的研究,这些研究仅考虑点质量运动学模型,而没有加速延迟动力学的影响。
其他研究人员专注于在单个车辆或跟车问题上使用基于 RL 的控制器,而没有考虑相对距离控制。如以下各节所述,本研究填补了上述研究空白。
问题描述
车辆动力学模型
在这项研究中,所考虑的队列配置由异构车辆组成,即车辆的质量、长度或最重要的是车辆的阻力系数可能不同。
此外,该队列有四辆车、一辆领队和任意数量的随车,其中领队位于第一个位置。描述运动曲线的领导者状态是 x0˙\dot{x_0}x0˙ 和x0¨\ddot{x_0}x0¨,分别代表领导者的速度和加速度。此外,两辆车之间的距离 dg(i)d^{(i)}_ gdg(i)是本车在位置 iii 的前保险杠与前车在位置 i−1i − 1i−1 的后保险杠之间的距离。
此外,假定领导者遵循仅为其预定义的速度轨迹。其他车辆的目标是跟随前面车辆的轨迹,同时保持定义的相对距离dg(i)d^{(i)}_ gdg(i) 。因此,假设存在完美的车对车 (V2V) 通信,即所有车辆都可以观察到前车的状态,并且第iii辆车的位置 x(i)x(i)x(i) 是从车辆的质心测量的。对于本节的其余部分,将对用于表示车辆行为的模型进行进一步调查。
然而,阻力进一步研究。由于这项研究的目的是调查队列中的行为,因此更现实的做法是考虑由于队列配置而减少作用在自我车辆上的阻力的影响。在上述原因下,单个队列成员的动力学由方程式 1 建模。
x¨=Tt−Tbr−(Fd+Fr+Fg)⋅Rm⋅R+IwR\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¨=m⋅R+RIwTt−Tbr−(Fd+Fr+Fg)⋅R
其中 TtT_tTt 是由发动机产生并导致车辆向前运动的牵引扭矩,TbrT_brTbr 是由制动系统产生的用于控制车辆减速的扭矩,FdF_dFd、FrF_rFr 和 FgF_gFg 是阻力、滚动阻力和重力。阻力乘以减阻比,该减阻比模拟前车对本车阻力的影响,如 [15] 中所示。最后,m、R和Iwm、R 和 I_wm、R和Iw 分别是车辆质量、车轮半径和车轮转动惯量。
状态空间模型
控制器智能体只观察两辆连续车辆之间的差距、速度和加速度的误差。对于领导者,设计了一个单独的速度控制器智能体来维持设定的速度 x˙ref(0)\dot{x}^{(0)}_{ref}x˙ref(0) 。队列中所有车辆的车辆模型与第 3 节中导出的相同。此外,控制器用于控制队列的车辆间距。
说明拓扑是TPF双前车跟随式。
奖励设置
领航车的奖励
Rl,t=−(ut−12+0.05u˙t−12+0.1evl,t2)+Ql,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=−(ut−12+0.05u˙t−12+0.1evl,t2)+Ql,t
其中$ u_{t−1}$ 是前一时刻的控制力(加速度)ut−1˙\dot{ u_{t−1}}ut−1˙是前一时刻的控制力(加速度)的导数。evl,te_{vl,t}evl,t是设定参考速度与当前领导者速度 vref−x0˙v_{ref} − \dot{x_0}vref−x0˙ 之间的速度误差,Ql,tQ_{l,t}Ql,t是基于逻辑方程的正奖励:
Ql,t=∣evl,t∣≤ϑv∧t≥τQ_{l,t}=\left|e_{vl,t}\right|\leq\vartheta_v\wedge t\geq\tau Ql,t=∣evl,t∣≤ϑv∧t≥τ
其中ϑv\vartheta_vϑv是可接受的速度误差容差的阈值,τ\tauτ是奖励存在的阈值时间。
奖励负数部分的平方是为了说明所描述术语中的正值或负值。第一项说明加速度的最小化,而第二项说明加速度的变化。因此,最大限度地减少控制工作中的抖动并确保信号的平滑度。第三项消除了速度误差以实现控制器的预期行为。 Q 部分是在设定点周围给予智能体正奖励,以抑制控制超调,而不是将控制器收紧到严格的值。延迟条件对于确保控制器仅在实际处于正确速度时才收到正奖励非常重要,并防止因初始领导者速度与设定速度接近零误差而产生的任何假正奖励。
跟随车辆的奖励
Rf,t=−(ut−12+0.05u˙t−12+(1vmaxevf,t)2+(1dgmaxeg,t)2)+Qf,tR_{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=−(ut−12+0.05u˙t−12+(vmax1evf,t)2+(dgmax1eg,t)2)+Qf,t
它具有与等式(2)中相同的控制努力参数。然而,evf,te_{vf,t}evf,t是当前速度与前车速度之间的速度误差 vi−vi−1v_i − v_{i−1}vi−vi−1,而 $e_{g,t} $是间隙误差 gapdesired−dgi{gap}_{desired}−d^i_ggapdesired−dgi,Qf,tQ_{f,t}Qf,t是正奖励基于逻辑等式:
Qf,t=∣ev,t∣≤ϑv∧∣eg,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∣≤ϑv∧∣eg,t∣≤ϑg∧t≥τ
等式 (222) 和 (3) 中的项的相同原因用于等式 (4) 和 (5) 中,增加了间隙项中的误差以消除实现所需控制器的误差。等式 (4) 中速度和间隙误差的增益用于对值进行归一化。因此,智能体可以比非标准化函数更容易满足多目标奖励函数。
网络结构
演员网络具有三个完全连接的隐藏层,分别具有 400、300 和一个神经元,而对于评论家网络,动作路径具有一个具有 300 个神经元的隐藏层。状态路径有两个隐藏层,分别有 400、300 个神经元。两条路径都通过加法层合并到输出层。 RL 模型以 0.1 秒的采样时间运行,奖励折扣因子为 0.99,噪声模型方差为 0.6。对于训练过程,小批量大小为 128,而演员和评论家网络的学习率分别为 10−4 和 10−3。
实验结果
自我车辆控制器的训练进行了 2163 集,总步数为 973,186,持续了大约 9.5 小时。如图 2 所示,基于公式 4 的最终平均奖励为 326.8。车辆速度和位置的初始条件在每一集开始前随机更改,以确保智能体在任何给定的现实场景中的可靠性并防止模型对某些场景的过度拟合。因此,每一集都有不同的初始间隙误差和不同的初始速度误差。
关于恒定距离间隙场景,智能体以可接受的误差容限 (∼∣eg,t∣≤0.3∼ |e_{g,t}| ≤ 0.3∼∣eg,t∣≤0.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 控制器训练以满足其他目标,而不会与当前目标相抵触。硬件在环模拟器可以在广泛而逼真的模拟中使用控制器,以研究车辆在其他场景和环境下的行为。
相关文章:
具有非线性动态行为的多车辆列队行驶问题的基于强化学习的方法
论文地址: Reinforcement Learning Based Approach for Multi-Vehicle Platooning Problem with Nonlinear Dynamic Behavior 摘要 协同智能交通系统领域的最新研究方向之一是车辆编队。研究人员专注于通过传统控制策略以及最先进的深度强化学习 (RL) 方法解决自动…...
TrueNas篇-硬盘直通
硬盘直通 在做硬盘直通之前,在trueNas(或者其他虚拟机)内是检测不到安装的硬盘的。 在pve节点查看硬盘信息 打开pve的shell控制台 输入下面的命令查看硬盘信息: ls -l /dev/disk/by-id/该命令会显示出实际所有的硬盘设备信息,其中ata代…...
手机子品牌的“性能战事”:一场殊途同归的大混战
在智能手机行业进入存量市场后,竞争更加白热化。当各国产手机品牌集体冲高端,旗下子品牌们也正厮杀正酣,显现出刀光剑影。处理器、屏幕、内存、价格等各方面无不互相对标,激烈程度并不亚于高端之争。源于OPPO的中端手机品牌realme…...
dockerfile自定义镜像安装jdk8,nginx,后端jar包和前端静态文件,并启动容器访问
dockerfile自定义镜像安装jdk8,nginx,后端jar包和前端静态文件,并启动容器访问简介centos7系统里面我准备的服务如下:5gsignplay-web静态文件内容如下:nginx.conf配置文件内容如下:Dockerfile内容如下:run.sh启动脚本内容如下:制作镜像并启动访问简介 通过用docker…...
MongoDB 全文检索
MongoDB 全文检索 全文检索对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。 这个过程类似于通过字典中的检索字表查字的过…...
JS中声明变量,使用 var、let、const的区别
一、var 的使用 1.1、var 的作用域 1、var可以在全局范围声明或函数/局部范围内声明。当在最外层函数的外部声明var变量时,作用域是全局的。这意味着在最外层函数的外部用var声明的任何变量都可以在windows中使用。 2、当在函数中声明var时,作用域是局…...
汽车改装避坑指南:大尾翼
今天给大家讲一个改装的误区:大尾翼 很多车友看到一些汽车加了大尾翼,非常的好看,就想给自己的车也加装一个。 那你有没有想过,尾翼这东西你真的需要吗? 赛车为什么加尾翼?尾翼主要是给车尾部的一个压低提供…...
【Unity资源下载】POLYGON Dungeon Realms - Low Poly 3D Art by Synty
$149.99 Synty Studios 一个史诗般的低多边形资产包,包括人物、道具、武器和环境资产,用于创建一个以奇幻为主题的多边形风格游戏。 模块化的部分很容易在各种组合中拼凑起来。 包包含超过1,118个详细预制件。 主要特点 ◼ ◼ 完全模块化的地下城!包…...
知识汇总:Python办公自动化应该学习哪些内容
当前python自动化越来越受到欢迎,python一度成为了加班族的福音。还有大部分人想利用python自动化来简化工作,不知道从何处下手,所以,这里整理了一下python自动化过程中的各种办公场景以及需要用到的python知识点。 Excel办公自动…...
软件架构知识5-架构设计流程
一、识别复杂度 举例:设计一个亿级用户平台设计,直接对标腾讯的 QQ,按照腾讯 QQ的用户量级和功能复杂度进行设计,高性能、高可用、可扩展、安全等技术一应俱全,一开始就设计出了 40 多个子系统,然后投入大…...
【银河麒麟V10操作系统】修改屏幕分辨率的方法
文章目录前言系统概述方法1:使用命令行修改方法2:写文件修改方法3:界面端修改的方法前言 本文记录了银河麒麟V10系统修改分辨率的方法。 使用命令行修改写文件修改界面端修改的方法 系统概述 方法1:使用命令行修改 打开终端&am…...
pdf生成为二维码
当今数字时代,人们越来越依赖在线工具来处理各种任务,比如合并、拆分和压缩PDF等。Mai File就是这样一个在线工具,它可以将PDF文件转换成在线链接,方便您和他人轻松地查看和共享文件。 Mai File的使用非常简单,您只需…...
Yaklang websocket劫持教程
背景 随着Web应用的发展与动态网页的普及,越来越多的场景需要数据动态刷新功能。在早期时,我们通常使用轮询的方式(即客户端每隔一段时间询问一次服务器)来实现,但是这种实现方式缺点很明显: 大量请求实际上是无效的,这导致了大量…...
基于AIOT技术的智慧校园空调集中管控系统设计与实现
毕业论文(设计)题 目 基于AIOT技术的智慧校园空调集中管控系统设计与实现指导老师 XXXX 专业班级 电子商务2XXXX 姓 名 XXXX 学 号 20XXXXXXXXX 20XX年XX月XX日摘要近年来,随着物联网技术和人工智能技术的快速发展,智慧校园逐渐…...
【每日一题】 将一句话单词倒置,标点不倒置
用C语言将一句话的单词倒置,标点不倒置。 比如输入: i like shanghai. 输出得到: shanghai. like i 这道题目有很多种做法,既可以用递归,也可以分成两部分函数来写,本文就详细来讲解分装为两个函数的做法。…...
宽刈幅干涉雷达高度计SWOT(Surface Water and Ocean Topography)卫星进展(待完善)
> 以下信息搬运自SWOT官方网站等部分文献资料,如有侵权请联系:sunmingzhismz163.com > 排版、参考文献、部分章节待完善 > 2023.02.17.22:00 初稿概况 2022年12月16日地表水与海洋地形卫星SWOT (Surface Water and Ocean Topography)在加利福尼…...
openjdk源码==类加载过程
jdk\src\share\bin\main.c main JLI_Launch jdk\src\share\bin\java.c JLI_Launch jdk\src\solaris\bin\java_md_solinux.c JVMInit ContinueInNewThread JavaMain InitializeJVM jdk\src\share\bin\java.h CreateJavaVM 调用JNI hotspot\src\share\vm\prims\j…...
vue2的后台管理系统 迁移到 vue3后台管理系统
重构的流程1.新建项目,确定脚手架版本2.项目整体迁移3.重构路由,axios,element-plus等项目所需要的依赖4.迁移组件内容(需要的配置项移步到5目录and6目录)4-1.Login页面4-2. Home页4-3.Students管理内部的页面4-3-1.studentList(学生列表)4-3-2.InfoList(信息列表)4-3-3.InfoLi…...
2023年美赛F题
关键点1.绿色GDP(GGDP)是否比传统GDP更好好的衡量标准?2.如果GGDP成为经济健康的主要量标准,可能会对环境产生什么影响?3建立一个简单的模型,估计GGDP取代GDP作为经济健康的主要衡量标准,对减缓气候变化产生的影响。4.GGDP取代GDP可能会遇到…...
【数据结构与算法分析】介绍蛮力法以及相关程序案例
文章目录蛮力法之排序选择排序冒泡排序实际应用蛮力法之最近对和凸包问题最近对问题凸包问题蛮力法(brute force),其本质跟咱常说的暴力法是一样的,都是一种简单直接地解决问题的方法,通常直接基于问题的描述和所涉及的概念定义进行求解。 蛮…...
用股票交易量查询接口是怎么查询a股全天总成交量的?
用股票交易量查询接口是怎么查询a股全天总成交量的?今天下班就以通达信给大家讲解一下,通常是在K线图的底部状态栏,可以在日线进行查看a股成交量。在市场栏底部的子图中。 有当天成交的数量。成交量是表示一定的时间内已经成交的中的成交数量…...
求职季哪种 Python 程序员能拿高薪?
本文以Python爬虫、数据分析、后端、数据挖掘、全栈开发、运维开发、高级开发工程师、大数据、机器学习、架构师这10个岗位,从拉勾网上爬取了相应的职位信息和任职要求,并通过数据分析可视化,直观地展示了这10个职位的平均薪资和学历、工作经…...
如何选择好的IB课程学校?
在上海除了拼中考,你还可以走一条更有“选择权”的路——国际化学校! 然而选择学校时,让家长最头痛的事情,莫过于为孩子选择什么样的国际化课程。 今天我们来聊聊IB课程! 三大主流国际课程中,被公认含金量最…...
2023美赛ABCDEF题思路+参考文献+代码
选题建议、ABCDEF题参考文献、ABCDEF题思路(后续更新视频和代码)、D题数据、数据集及处理方式已更新,其他日内更新。下文包含:2023年美国大学生数学建模竞赛(以下简称美赛)A - F题思路解析、选题建议、代码…...
DataEase 制作数据可视化大屏经验分享
前言 DataEase 简介 DataEase 是开源的数据可视化分析工具,帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。DataEase 支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,并可以方便地与他人分享。 更多详细介…...
前端基础-2day
前端基础 这里写目录标题前端基础div和span标签div 标签span标签列表有序列表无序列表自定义列表图片超链接标签表格 table表格合并表单标签表单控键属性div和span标签 div 标签 没有具体的含义,用于划分页面区域,独占一行 快捷键:div{}*3 …...
在线一键JS混淆还原
当今,随着互联网的发展,越来越多的网站开始使用JavaScript来实现动态交互和用户体验。但是,由于JavaScript代码的开放性和易于复制,网站管理员需要采取一些措施来保护他们的代码。这就是JavaScript混淆工具产生的原因。 jsjiami.…...
Java基本语法
目录 一、注释方式 1、单行注释 // 2、多行注释 /*...*/ 3、文档注释 /**....*/ 二、标识符和关键字 三、数据类型 拓展及面试题讲解 1、整数拓展 进制 二进制0b 八进制0 十六进制0x 2、字符拓展 编码Unicode表 2字节 0~65536 3、字符串拓展 4、布尔值拓展 一、注释方式…...
什么表单设计工具能快速提升办公效率?
在信息化快速发展的年代,谁能掌握更先进的技术,谁就能拥有更广阔的发展前景。在以前的办公环境中,传统的表单制作工具占据了主流地位,随着办公自动化的快速发展,传统表单工具的弊端也暴露出来了,采用更先进…...
SystemVerilog——Axi4Lite_To_Localbus
摘要:用SystemVerilog对Axi4转localbus进行编写与仿真 如果需要从PS端对PL进行寄存器的读写操作,从znyq M_AXI_HPM_FPD出来,经过axi_interconnect 模块分出多个通道(不同的地址),经过一个axi_slave模块&am…...
html5网站模板怎么用/seo三人行论坛
传送门 一道题让我又要学可行流又要学zkw费用流…… 考虑一下,原题可以转化为一个有向图,每次走一条路径,把每一条边都至少覆盖一次,求最小代价 因为一条边每走过一次,就要付出一次代价 那不就是费用流了么 我们定义每…...
上海专业网站建设精英/班级优化大师app
文章目录题目题目解析解题代码题目 题目解析 看完题目,可能会懵逼,实际就是选择成本和为target的最大数字。 那么为了让它为最大数字,首先要满足的肯定是位数要够多。所以通过背包模板可以求出成本和为target的最大位数(在背包看来就是物品装…...
网站服务器开发/上海做seo的公司
2019独角兽企业重金招聘Python工程师标准>>> 6.7.2 分割策略 有几种分割策略,但已知此处描述的分割策略能够给出好的结果。该方法第一步是通过将枢纽元与最后的元素交换使得枢纽元离开要被分割的数据段。i从第一个元素开始从而j从倒数第二个元素开始。下…...
网站建设比较好的/卡点视频免费制作软件
目录 替换功能 String replace(char old,char new)String replace(String old,String new) 去除字符串两空格 String trim() 按字典顺序比较两个字符串 int compareTo(String str)int compareToIgnoreCase(String str) 点击下方链接学习更多的String类 API深入研究 字符…...
网站建设网站免费/百度搜图片功能
调试了几天,感觉SVN要简单得很,前几天搞CVS一直有问题,很是郁闷,所有改用SVN了 SVN又有两种方式,svnserve服务方式和apache方式, 如果用svnserve方式的话推荐直接用Setup-Subversion-1.6.13.msi(目前最新版) 哪果用apache方式的话 推荐用VisualSVN-Server-2.1.5.msi(目前最新版…...
陕西手机网站建设公司/推广公司是做什么的
跨域资源共享(CORS)是什么?跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的Web应用被准许访问来自不同源服务器上的指定的资源。当一个资源从与该资源本身所在的服务器不同的域、协议或端口请求一个…...