系列文章目录
文章目录
前言
一、介绍
CasADi 是一款开源软件工具,用于数值优化,特别是最优控制(即涉及微分方程的优化)。该项目由 Joel Andersson 和 Joris Gillis 在鲁汶工程大学工程优化中心 (OPTEC) 在读博士生在 Moritz Diehl 的指导下发起。
本文档旨在简要介绍 CasADi。阅读之后,您应该能够在 CasADi 的符号框架中制定和处理表达式,使用算法微分高效生成导数信息,为常微分方程(ODE)或微分代数方程(DAE)系统设置、求解和执行正向及辅助敏感性分析,以及制定和求解非线性程序(NLP)问题和最优控制问题(OCP)。
CasADi 可用于 C++、Python 和 MATLAB/Octave,性能几乎没有差别。一般来说,Python API 的文档最好,比 MATLAB API 稍为稳定。C++ API 也很稳定,但对于 CasADi 入门来说并不理想,因为文档有限,而且缺乏 MATLAB 和 Python 等解释型语言的交互性。MATLAB 模块已成功通过 Octave(4.0.2 或更高