本文作者通过构建一个在浏览器中运行的模型预测控制(MPC)模拟程序,实践并加深了对轨迹优化和 MPC 的理解。文章以倒立摆系统为例,详细介绍了运动方程的推导、MPC 优化问题的构建、单次和多次打靶法的比较以及实时实现的细节。作者利用 emscripten 将 C++ 控制器代码编译成 WebAssembly,并在浏览器中实现了可交互的倒立摆模拟和控制。文章还讨论了优化问题的初始值选择、在浏览器中的部署以及与模拟器的交互方式。