如何运行MPC快|理解模型预测控制,第5部分
从系列:理解模型预测控制
Melda Ulusoy, MathWorks
这个视频开始通过提供小贴士实现MPC的快速应用。减少MPC计算的复杂性,您可以尝试使用模型降阶技术,使用较短的预测和控制视野,减少的数量限制,并使用lower-precision数据表示和操作。
如果你需要进一步减少样本时间快速应用程序,您可以使用显式的MPC或次优的解决方案。明确的MPC需要更少的运行时计算比传统MPC通过预先计算的离线最优解决方案。金宝搏官方网站你能保证最坏执行时间为你的MPC控制器通过应用一个次优的解决方案后的迭代次数超过指定的最大值。
在这个视频中,我们将讨论实现小贴士MPC运行得更快。我们将继续使用之前的视频的煎饼的比喻。喂养人煎饼是一个复杂的过程。你需要准备,做煎饼,服务客户失去耐心之前快。另一个挑战是,有限的空间在你的餐馆来存储所有这些成分。
同样,MPC是计算复杂。的原因之一是模型预测控制在每个时间步解决了在线优化问题。MPC的问题是制定一个QP问题,试图减少二次成本函数。MPC计算得到更多复杂的增加许多州、约束长度的控制和预测的视野。如果一个MPC控制器上运行一个服务器应用程序与缓慢等动力学过程工业,然后计算复杂度不应该是一个大问题。然而,假设您想要部署的ECU MPC算法自主车辆。然后优化问题需要解决在一个小的采样间隔的顺序毫秒。另一个挑战是,嵌入式硬件内存有限。货币政策委员会需要存储的矩阵计算快速增长和越来越多的优化变量,但你需要确保你不会耗尽内存。
有什么办法提高吞吐量和减少内存使用量?煎饼的例子,如果有成分贡献不多的味道,但花了很多时间准备,你可以把他们从你的食谱。这将减少准备、服务时间和就能很容易地存储了所有的成分在一个有限的空间。同样,减少复杂性和MPC的计算时间,你可以尝试应用模型降阶技术用于抛弃美国不贡献的动态系统。这也将有助于减少控制器的内存占用。其他的事情你可以尝试处理吞吐量和内存使用较短的控制和预测地平线,减少约束和使用lower-precision操作和实现MPC的数据表示。
你可以试试这些小贴士来实现MPC与小样本应用程序。但是如果你需要控制系统与一个更小的样本,你可以尝试使用显式的货币政策。显式的煎饼类比MPC将如下。而不是混合成分每次你做煎饼,你可以使用一个预先做的煎饼粉,让你更快地做饭。而不是解决当前状态的在线优化问题,明确MPC解决它离线给定范围内的所有状态的。对于每个x值在一定范围内,明确政策委员会预计算最优解决方案。事实证明,这个解决方案由线性函数分段仿射和连续x。任何削减约束的解决方案空间分成区域,每个区域映射到一个唯一的最优解。扩大这个想法两个系统是这样的。离线计算最优解后,所有MPC在线是找到该地区,在于和评价当前状态的线性函数来创建当前的控制作用。减少线性函数的迭代优化过程评价极大地简化了运行时计算。 So, explicit MPC can be deployed for applications with a very small sample time.
在预制混合是伟大的,但是如果你有各种各样的口味,需要时间找到你要找的人。和为每个不同的味混合,你需要额外的空间在你有限的存储。类似地,如果有许多地区,这可能耗时搜索区域位于当前状态。而且,存储所有这些地区需要大量内存占用。有技术来减少区域通过合并在一起。然而,在这种情况下,不再是最佳的解决方案。
MPC更快运行的另一个方法是使用非最优解决方案。回到了煎饼的类比:服务时间可以改变很大程度上基于如何装饰花哨的盘子。客户不希望等太久可以选择基本的煎饼从菜单中选择。的人更有耐心,可以等待更长的时间可以更好的选择。MPC的问题,找到最优解的迭代的数量是完全不可预测,可以发生巨大的变化从一个时间步到另一个地方。在最坏的情况下,计算时间可能超过控制器样品时间。不过,你要确保样品的时间内找到一个解决方案,甚至还有一些额外的时间留给其他任务需要的硬件上执行。为了解决这一问题,您可以确定优化的迭代的数量的最大值。这个例子演示了,它将需要10迭代寻找最优解。然而,由于最大迭代次数设置为5,当它到达时,控制器停止优化和使用迭代的次优的解决方案。 Note that this is a suboptimal solution, but it still satisfies all the constraints of the optimization problem. To determine the maximum number of iterations, you can test your algorithm on your hardware and identify the execution time used by each iteration. Assuming that each iteration takes a similar execution time, you can choose the maximum number of iterations such that the total execution time does not exceed the controller sample time.
总之,MPC运行更快,你可以第一次尝试这些小贴士,看他们是否适合您的系统。快速应用程序与一个很小的示例,您可以使用显式的MPC,大大减少了运行时计算的预计算离线最优解决方案。另一个选项来增加吞吐量,也保证你的MPC控制器的最坏执行时间是用次优的解决方案。
下一节,我们将使用一个自治车辆转向系统仿真软件中的示例演示如何设计一个使用MPC设计师应用MPC控制器。金宝app
您可以在欧什一张网站来自der folgenden Liste auswahlen:
所以erhalten您死bestmogliche Leistung der汪汪汪的网站
民意调查您毛皮死bestmogliche Website-Leistung死网站中国毛皮(auf Chinesisch奥得河Englisch)。安德利果汁landesspezifische网站冯MathWorks信德毛皮Besuche冯Ihrem Standort来自不optimiert。
欧罗巴