本文为英国伦敦帝国理工学院(作者:Bulat Khusainov)的博士论文,共142页。

模型预测控制(MPC)是一种先进的控制方法,具有明确的性能优化、系统的约束处理和自然处理非线性的能力。在每个采样时刻求解一个优化问题的必要性使得MPC成为一种需要计算的技术,尤其是在应用于快速动态系统时。本文致力于开发线性和非线性模型预测控制器的有效硬件实现

在本论文的第一部分中,我们提出了一个快速原型化嵌入式优化算法的工具链。工具链由两个软件工具组成:SPLIT和Protoip。SPLIT能够生成面向CPU和FPGA的C代码,用于使用运算符拆分方法进行嵌入式优化。生成的代码可以使用新版本的Protoip在嵌入式平台上自动部署和测试,Protoip是一种软件工具,用于在CPU、FPGA、集成通用处理器和可重构逻辑的异构平台上快速原型化优化算法。

第二部分提出了一个在异构计算平台上实现非线性模型预测控制的框架。在通用CPU和FPGA之间划分计算工作负载可以充分利用每个计算子系统的优势,并在控制性能与可重构逻辑使用之间进行权衡。在所提议的设计实现中,调度稀疏矩阵向量乘法的新方法能够在内存和计算资源使用方面得到显著改进。

本文第三部分介绍了系统优化在MPC软硬件协同设计中的应用。描述了将MPC设计问题转化为多目标优化问题的过程。最后,给出了预测控制器的两个测试用例,包括基于CPU和FPGA的实现。

Model PredictiveControl (MPC) is an advanced control method that is capable of explicit performanceoptimization, systematic constraint handling and dealing with nonlinearities ina natural way. The necessity of solving an optimization problem at eachsampling instant makes MPC a computationally demanding technique, especiallywhen applied to fast dynamical systems. This thesis is concerned withdeveloping efficient hardware implementations of linear and nonlinear modelpredictive controllers.

In the first partof this thesis, a software toolchain for quick prototyping of embedded optimizationalgorithms on Field-Programmable Gate Arrays (FPGAs) is presented. Thetoolchain consists of two software tools: SPLIT and Protoip. SPLIT is capableof generating CPU and FPGA-oriented C code for embedded optimization usingoperator splitting methods. The generated code can be automatically deployedand tested on an embedded platform using a new release of Protoip, a softwaretool for quick prototyping of optimization algorithm on CPUs, FPGAs andheterogeneous platforms that incorporate both general-purpose processors andreconfigurable logic.

The second partpresents a framework for implementation of nonlinear model predictive controlon a heterogeneous computing platform. Splitting the computational workloadbetween a general-purpose CPU and an FPGA allows exploiting the strengths ofeach computational subsystem and trading off control performance againstreconfigurable logic usage. A new method for scheduling sparse matrix-vectormultiplication within the proposed implementation enables significant improvementsin terms of memory and computational resources usage.

The third part ofthis thesis presents an application of systematic optimization to the co-designof MPC software and computational hardware. A procedure for formulating the MPCdesign problem as a multi-objective optimization problem is described. Finally,two test cases including CPU and FPGA-based implementations of predictivecontrollers are considered.

1. 引言

2. 在线优化的计算机体系架构及相应的编程工具

3. 基于算子分裂法的嵌入式优化硬件代码生成

4. 异构计算平台上的非线性预测控制

5. 预测控制的自动软硬件协同设计

6. 结论与展望

附录A 第五章实验数据

附录B 第四章中的一些细节

附录C 稀疏矩阵向量乘法的FPGA优化调度

完整资料领取请加QQ群免费下载:

模型预测控制的缺点_【电子技术】【2018.01】模型预测控制FPGA实现的协同设计...相关推荐

  1. 模型预测控制的缺点_基于数据驱动的模型预测控制

    最近有小伙伴来询问 Data-driven MPC,之前也有了解过一些,因此写篇文章给大家科普科普. 其实所谓的数据驱动并没有那么"高大上"或者难懂,无非是从数据中来获取一些有用信 ...

  2. 数字电路技术可能出现的简答题_电子技术应用实验1(数字电路基础实验)答案公众号...

    朝代:作者: 电子技术应用实验1(数字电路基础实验)答案公众号 更多相关[单选,A2型题,A1/A2型题] 颅骨骨折时出现"熊猫眼"征,主要见于(). [单选,A2型题,A1/A2 ...

  3. 如何0代码、快速定制企业级NLP模型?百度工程师详解技术选型与模型调优策略...

    主讲人 | 龙心尘 百度NLP资深研发工程师 量子位编辑 | 公众号 QbitAI 近几年以预训练为代表的NLP技术取得了爆发式发展,新技术新模型层出不穷.企业与开发者如何将最先进的NLP领域科研成果 ...

  4. 有关糖尿病模型建立的论文_预测糖尿病结果的模型比较

    有关糖尿病模型建立的论文 项目主题 (Subject of the Project) The dataset is primarily used for predicting the onset of ...

  5. 论文模型构建的步骤_构建进化树---核苷酸替换模型的选择

    在进行系统发育分析时需要通过构建系统发育树来描述不同物种之间的进化关系,通过同源DNA的核苷酸序列或者同源蛋白质分子的氨基酸序列可以实现构建进化树.在系统发育分析中,最大似然法(ML)和贝叶斯法(BI ...

  6. 用户关注模型设计_一文带你读懂PKPMPC如何实现协同设计

    ▲ 点击上方蓝字,关注PKPM官方公众号! 文章作者:樊昊(BIM软件技术支持组)  0  . 前言 经过实际项目验证,PKPM-PC作为专业的装配式混凝土建筑设计软件已逐步取得国内市场的认可.目前国 ...

  7. 模型预测控制的缺点_华北电力大学 刘英培等:适用于风电并网的VSCHVDC系统模型预测控制...

    点击上方<电力自动化设备>可一键关注! 本文受国家自然科学基金项目(51607069)和中央高校基本科研业务费专项资金项目(2016MS88,2017MS091)资助. (以下为本文主干内 ...

  8. 模型预测控制的缺点_三电平整流器的延时补偿模型预测控制

    本文针对电压型三电平中性点钳位整流器,设计了一种基于状态方程的模型预测电流控制(modelpredictive current control, MPCC)策略,该算法以电压型整流器数学模型为基础,构 ...

  9. java软件工程师自我评价_电子技术研发工程师简历自我评价填写样本

    自我评价(案例一) 正在学习python爬虫和web前端技术,希望能找到一个公司实习,薪资不做要求,真正的能学点东西就行.掌握python,html和css基础知识.会使用requests,Beaut ...

最新文章

  1. 2022-2028年中国工业大数据行业深度调研及投资前景预测报告
  2. rdlc报表显示条码 .
  3. Vue在Element UI下使用富文本框插件quill-editor(我个人不推荐用这个复杂的富文本插件)
  4. Nexus Repository Manager 3 远程命令执行漏洞 CVE-2019-7238
  5. QT5知识:装饰器@pyqtSlot和槽和信号
  6. Java设计模式之结构型:代理模式
  7. 【阿里巴巴研发效能峰会】低代码与数智化分论坛在线预约中……
  8. Bootstrap 字体图标 Bootstrap Glyphicon Components
  9. jmeter 用户数 线程数_如何使用jmeter编写TCP测试脚本
  10. Openlayer通过wms请求geoserver加载慢
  11. Web开发常用代码:背投广告
  12. 什么是全栈工程师,为什么全栈开发用Python,Python web全栈开发究竟有多高薪?
  13. 软件项目管理期末选择题复习100题(含答案)
  14. 餐饮企业免费申请点餐小程序
  15. 自动驾驶中的三维目标检测综述
  16. 想学一门技术,学java有前途吗?
  17. unity3d显示c4d材质_C4D入门到精通,没那么难
  18. 面试 11、知识拓展
  19. 一个图片上传插件,含图片上传后生成预览图片
  20. 【搬家】写一个技术博客

热门文章

  1. zeromq+python安装手册
  2. 市场营销读后感_好书共赏市场营销原理——带你探索市场营销成功的奥秘 !...
  3. linux下的C语言开发(多线程编程)
  4. mysql rpm server_记录一次最新版MySQL-server-5.6.20-1.el6.x86_64.rpm的安装
  5. rar for android去广告,安卓RAR压缩器(RAR for Android) v5.50.42 去广告版
  6. java 调用plc程序_从老师傅那里偷学来的PLC宝贵经验!
  7. 如何让地面不起灰_解决水泥地面起灰的省钱方法
  8. soap协议_启扬课堂:扒一扒IOT的协议,很多你可能不知道
  9. linux系统安装如何设置raid,在RAID磁盘阵列下如何搭建Linux系统
  10. uniapp语音识别_uni-app开发APP语音播报功能