Optimal and Robust Control
B3M35ORR + BE3M35ORR + BE3M35ORCSoftware tools for numerical optimal control
CasADi
Framework for building algorithms for optimization, simulation and optimal control. It is heavily based on algorithmic differentiation (AD, also called automatic differentiation). It is free and open source, downloadable at https://web.casadi.org/. Callable from C++, Python and Matlab. A short tutorial on using CasADi for optimal control design: https://web.casadi.org/blog/ocp/. Quite in the spirit of our homework (or the other way around – our homework in the spirit of this tutorial :-) Despite the availability of this control oriented tutorial and other example, CasADi on its own is not a tool for control design. It is a framework within which such tools/solver can be conveniently created. There are actually quite a few such projects that are based on CasADi, see acados, Rockit, OpenOCL. If you do not feel like writing your own solvers for your optimal control problems, you may want to have a look at these packages.
TrajectoryOptimization.jl
Julia package for trajectory optimization. Free and open source, available at https://github.com/RoboticExplorationLab/TrajectoryOptimization.jl. Build on top of their ALTRO solver. See the tutorial.