【电动车优化调度】基于模型预测控制(MPC)的凸优化算法的电动车优化调度(Matlab代码实现)

news2024/11/19 4:53:30

 💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥

📝目前更新:🌟🌟🌟电力系统相关知识,期刊论文,算法,机器学习和人工智能学习。
🚀支持:🎁🎁🎁如果觉得博主的文章还不错或者您用得到的话,可以关注一下博主,如果三连收藏支持就更好啦!这就是给予我最大的支持!      

📋📋📋本文目录如下:⛳️⛳️⛳️

目录

1 概述

2 数学模型 

3 运行结果

4 结论

5 Matlab代码实现


1 概述

增加道路车辆的电气化已被确定为解决气候变化和空气污染等重要社会问题的关键短期解决方案 [1]。插电式混合动力电动汽车 (PHEV),其中电力推进系统与内燃机相辅相成,是目前常见的配置。尽管锂离子电池的低能量密度和较长的充电时间限制了全电动动力系统的可行性,但对日常驾驶行为的分析表明,50% 的内燃机驱动里程可以使用配备全电动汽车的混合动力汽车提供动力。续航里程仅为 40 英里 [2]。然而,包含一个额外的电源会带来一个具有挑战性的问题:在给定旅程的每一时刻,应该从电机提供多少动力,以及应该从发动机提供多少动力。这被称为能量管理问题 [3],一个简单的启发式方法是电荷耗尽/充电维持策略,其中仅从电动机提供电力,直到电池充分耗尽,然后车辆在充电状态下运行维持模式直到旅程结束 [2]。

摘要—本文详细研究了算法的计算性能,该算法用于解决与具有非线性损耗的混合动力电动汽车能量管理的模型预测控制相关的优化问题的凸公式。提出了一种投影内点法,通过对控制输入施加不等式约束作为投影来减小牛顿步长矩阵求逆的大小和复杂度,并通过与交替方向法的比较来证明其性质乘法器 (ADMM) 算法和通用凸优化软件 CVX。研究发现,ADMM 算法在需要精度适中的解时具有良好的特性,而投影内点法在需要高精度时具有优势,并且两者都明显快于 CVX。

本文的主要目的是确定凸 PHEV 能量管理公式的二阶和一阶方法的相对计算优势,第二个贡献是一组数值研究,其中投影内点的性能该算法与 [15] 的 ADMM 算法进行了比较。在这些研究中,证明了投影内点法具有出色的收敛性,但需要更多时间才能获得具有中等精度的解,因此仅适用于较短范围内的实时解(在这种情况下少于 500 个样本),本文还证明了这两种方法都比 CVX [24] 快得多,并且在 ADMM(使用 [15] 中的改进实现)中,我们展示了第一种能够实时解决长期能源管理问题的方法(≥1000样本)当考虑非线性系统动力学并且在整个范围内对功率和充电状态实施硬限制时。

本文结构如下:在第二节中定义了能源管理问题、MPC 框架和凸重构,第三节详细介绍了投影内点法。 [15] 的 ADMM 算法在第四节中说明,数值实验在第五节中介绍,论文在第六节中总结。 

2 数学模型 

       P_{d r v}(t)=P_{e m}(t)+P_{e n g}(t)+P_{b r k}(t)

     \begin{array}{l} P_{\text {eng }}(t) \geq \underline{P}_{e n g}(t)=\underline{T}_{e n g}\left(\omega_{\text {eng }}(t)\right) \omega_{\text {eng }}(t) \\ P_{\text {eng }}(t) \leq \bar{P}_{e n g}(t)=\bar{T}_{e n g}\left(\omega_{\text {eng }}(t)\right) \omega_{\text {eng }}(t) . \end{array}

\begin{aligned} \hat{P}_{b, k} &=\hat{g}\left(\hat{P}_{e m, k}, \hat{\omega}_{e m, k}, k\right) \\ &=\frac{V_{o c, k}}{2 R_{k}}\left(1-\sqrt{1-\frac{4 R_{k}}{V_{o c, k}^{2}} \hat{h}\left(\hat{P}_{e m, k}, \hat{\omega}_{e m, k}\right)}\right) \end{aligned}

详细数学模型及解释见第4部分。

3 运行结果

  

运行代码要记得先安装CVX。

4 结论

本文提出了一种投影内点法,用于求解与非线性 MPC 相关的优化问题的凸公式,用于混合动力电动汽车的能量管理。通过数值实验证明了 [15] 的定制 ADMM 算法的性能,并且表明投影内点算法对于所研究的问题类别具有更快的收敛(超线性),尽管 ADMM 算法被证明具有优越的数值性能在需要适度的精度时缩放属性。两种算法也被证明具有优于通用凸优化软件的计算性能。

部分理论引用网络文献,若有侵权请联系博主删除。

👨‍🎓博主课外兴趣:中西方哲学,送予读者:

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“真理”上的尘埃吧。

     或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

5 Matlab代码实现

博客主页:电气辅导帮

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

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

相关文章

【WLAN】Android 13 WiFi Display 介绍和常规问题分析

Miracast依赖的Wi-Fi技术项有: Wi-Fi Direct:也就是Wi-Fi P2P。它支持在没有AP(Access Point)的情况下,两个Wi-Fi设备直连并通信。 Wi-Fi Protected Setup:用于帮助用户自动配置Wi-Fi网络、添加Wi-Fi设备等。 11n/WMM/WPA2:其中,11n就是802.11n协议,它将11a和11g提供…

python3通过winrm远程执行windows服务器dos命令

Background 在实际项目中,一般使用Linux作为生产服务器,但有时就会出现一些特殊情况,你只能使用windows作为作为服务器,比如说一个用fortran编写的仿真程序,编译环境用的intel的oneAPI,按理说这个编译器是是…

C/C++ 课程设计 | 银行管理系统

🎈 作者:Linux猿 🎈 简介:CSDN博客专家🏆,华为云享专家🏆,Linux、C/C、云计算、物联网、面试、刷题、算法尽管咨询我,关注我,有问题私聊! &…

DP83TG720SWRHARQ1 IC TRANSCEIVER 接口芯片、TCAN1051VDRBTQ1

1、TCAN1051VDRBTQ1 具有 CAN FD 和故障保护功能的汽车类 CAN 收发器。 详细参数 类型:收发器 协议:CANbus 驱动器/接收器数:1/1 双工:半 接收器滞后:120 mV 数据速率:2Mbps 电压 - 供电:4.5V ~…

黄菊华老师,Java Servlet毕业设计毕设辅导课(5):Servlet配置虚拟路径映射

Servlet配置虚拟路径映射 在 web.xml 文件中&#xff0c;一个 <servlert-mapping> 元素用于映射一个 Servlet 的对外访问路径&#xff0c;该路径也称为虚拟路径。例如&#xff0c;在《第一个Servlet程序》教程中&#xff0c;hello 所映射的虚拟路径为“/hi”。 创建好的…

数据结构—平衡二叉树

文章目录查询数据的时间复杂度平衡二叉树旋转策略1、LL型旋转&#xff1a;2、RR型旋转&#xff1a;3、LR型旋转&#xff1a;4、RL型旋转&#xff1a;补充&#xff1a;————————————————————————————————查询数据的时间复杂度 首先&#xff0c;…

MySQL学习笔记(十二)锁

1.锁的类型 InnoDB实现了如下两种标准的行级锁&#xff1a; 共享锁&#xff08;S Lock&#xff09;&#xff1a;允许事务对一条行数据进行读取 排他锁&#xff08;X Lock&#xff09;&#xff1a;允许事务对一条行数据进行删除或更新 如果一个事务T1已经获得了行r的共享锁&…

委派设计模式

一、委派模式 1、定义 委派模式&#xff08;Delegate Pattern&#xff09;又称作委托模式&#xff0c;是一种面相对性的设计模式&#xff0c;允许对象组合实现与继承相同的代码重用&#xff0c;属于行为型设计模式&#xff0c;不属于GoF的23种设计模式。 委派模式的基本作用是…

Unity与IOS⭐一、百度语音IOS版Demo调试方法

文章目录 🟥 SDK下载与配置官网包名1️⃣ SDK下载地址2️⃣ 配置官网的包名3️⃣ 百度语音IOS版教程地址🟧 配置SDK Demo1️⃣ 配置License2️⃣ 配置唤醒词文件3️⃣ 打包🟨 Demo测试🟥 SDK下载与配置官网包名 1️⃣ SDK下载地址 SDK下载地址:https://ai.baidu.com…

JAVA中如何精确取到时间间隔

文章目录0 写在前面1 使用方法2 举例3 写在最后0 写在前面 做业务的时候&#xff0c;总要统计数据&#xff0c;几月份到几月份的全部数据。这个时候就要找到起始月份的具体时间和终止月份的具体时间。 此时我们用原始的Date类去处理就比较麻烦&#xff0c;可以自己写一个工具类…

jsp网络申报审批系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 网络申报审批系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql&#xff0c;使用…

[矩阵论] Unit 1. 线性空间与线性变换 - 知识点整理

注: 以下内容均由个人整理, 不保证完全准确, 如有纰漏, 欢迎交流讨论参考: 杨明, 刘先忠. 矩阵论(第二版)[M]. 武汉: 华中科技大学出版社, 2005 1 线性空间与线性变换 1.1 线性空间 线性空间 Def 1.1: 设 VVV 是一个非空集合(V≠∅V\neq \varnothingV​∅)&#xff0c;FF…

Unity与IOS⭐最基础的交互演示

文章目录 🟥 本章的交互效果🟧 创建IOS代码1️⃣ 创建代码文件2️⃣ 代码文件🚩 Interaction.h🚩 Interaction.m🟨 测试试试吧🟥 本章的交互效果 本章演示unity调用IOS代码,IOS并返回值。 🟧 创建IOS代码 我们的Unity代码一个脚本就好了,而IOS代码需要两个脚…

【AI】Python 实现 KNN 手写数字识别

KNN 算法 1. 题目介绍 K近邻&#xff08;K-Nearest Neighbor, KNN&#xff09;是一种最经典和最简单的有监督学习方法之一。K-近邻算法是最简单的分类器&#xff0c;没有显式的学习过程或训练过程&#xff0c;是懒惰学习&#xff08;Lazy Learning&#xff09;。当对数据的分…

如何搭建一个自己的音乐服务器 审核中

点赞再看&#xff0c;动力无限。 微信搜「 程序猿阿朗 」。 本文 Github.com/niumoo/JavaNotes 和 未读代码博客 已经收录&#xff0c;有很多知识点和系列文章。 最近发现&#xff0c;经常用的网易云音乐&#xff0c;有很多歌曲下架了&#xff0c;能听的越来越少了&#xff1b;…

设计模式之中介者模式(十五)

目录 1. 背景 1.1 智能家庭管理项目 1.2 中介者模式概述 2. 中介者模式 2.1 中介者模式解决上述问题 1. 背景 1.1 智能家庭管理项目 智能家庭项目&#xff1a; 智能家庭包括各种设备&#xff0c;闹钟、咖啡机、电视机、窗帘 等。主人要看电视时&#xff0c;各个设备可以协…

7 支持向量机

支持向量机 支持向量机(SVM)是在统计学习理论基础上发展起来的一种数据挖掘方法&#xff0c;1992 年由Boser, Guyon和Vapnik提出&#xff0c;在解决小样本、非线性、高维的回归和分类问题上&#xff0c; 有许多优势。 1 支持向量分类概述 支持向量分类以训练样本集为数据对象…

支持向量机核技巧:10个常用的核函数总结

支持向量机是一种监督学习技术&#xff0c;主要用于分类&#xff0c;也可用于回归。它的关键概念是算法搜索最佳的可用于基于标记数据(训练数据)对新数据点进行分类的超平面。 一般情况下算法试图学习一个类的最常见特征(区分一个类与另一个类的特征)&#xff0c;分类是基于学…

[附源码]JAVA毕业设计律师事务所网站(系统+LW)

[附源码]JAVA毕业设计律师事务所网站&#xff08;系统LW&#xff09; 项目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&a…

ubuntu20.04安装anaconda3搭建python环境

1.清华源下载anaconda3 清华源anaconda软件镜像网站&#xff1a; Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 下载完成在终端打开Downloads 运行 bash Anaconda3-5.3.1-Linux-x86_64.sh 进入到下载页面 紧接着你可以使用conda --…