近期在进行MPC优化问题仿真时,由于需要从我惯用的Python环境切换到课题组主要使用的Matlab平台,因此花了一些时间才成功配置了我认为非常好用的Solver,IPOPT。经过查阅网络资料(并结合GPT与Deepseek的辅助),尽我所知,我发现网上的教程并未提供特别实用(有时效性)的配置方法。因此,将我的配置过程分享出来,供有需要的朋友参考,同时也为自己日后可能遗忘时提供帮助。需要注意的是,本教程仅适用于Windows操作系统,不适用于Ubuntu系统。
资源整合包下载地址:
链接:https://pan.baidu.com/s/1Gbh-VqHW5JSv1CYLOVLpuA
提取码:m2k7
官方网站:https://www.pyomo.org/
语法文档:https://pyomo.readthedocs.io/en/stable/
path = '[ipopt.exe的路径]'
比如我把Ipopt-3.14.11改名为Ipopt放D盘,那代码就是
path = 'D:/Ipopt/bin/ipopt'
整合包中提供有测试代码

可以通过官方网站或整合包中提供的资源,并放到matlab的toolbox路径中。
官方网站:https://yalmip.github.io/
之后在Matlab主页 -> 设置路径中,选择“添加并包含子文件夹”并添加YALMIP,之后保存。

在Matlab命令行窗口键入“yalmiptest”。可以看到此时solver中并没有配置IPOPT。
IPOPT在Matlab中通过进行接口连接(https://yalmip.github.io/solver/ipopt/)。OPTI Toolbox Github主页:https://github.com/jonathancurrie/OPTI;或使用整合包中的内容。
安装OPTI Toolbox的指引在Github主页有说明,即"右键点击opti_Install.m 文件并选择运行。按照提示操作(每个问题的正常回答是“yes”或输入“y”)来安装 OPTI - 非常简单!"。需要注意的是运行opti_Install.m需要在MATLAB当前文件夹为opti_Install.m所在的路径。

在matlab的命令行窗口再次键入"yalmiptest",会发现这次solver中就有IPOPT了

之后运行整合包中的测试代码验证求解器的可用性。测试代码和Python的测试代码设置了相同的简易模型。

参考教程:
https://www.cnblogs.com/landiljy/p/6776434.html (下载链接过期;提供了Yalmip常用语法)
网页链接 (方法简单,但作者称2020b及更高matlab版本不可用;本文所提供方法适用2020b)
https://coin-or.github.io/Ipopt/ (IPOPT官方指引)
https://yalmip.github.io/solver/ipopt/ (YALMIP官方指引)