Pomodoro

Pomodoro - an open source toolkit for multiobject optimal control, and model based control and estimation. This paper presents the software package Pomodoro which includes a collec- tion of algorithms and tools for dynamic optimization. It also introduces the framework for multiobjective problems, model predictive control and state estimation. Pomodoro is implemented in Python and utilizes CasADi as a backbone to formulate the problem. It uses the orthogonal collocation technique to solve the dynamic optimization problems and efficient third-party solvers are utilized to solve the resulting nonlinear programs. The design of the software and its main modules are discussed and the user-friendliness of the software is demonstrated with the help of tutorial examples for each problem class. Lastly, the advantages and limitations of this software are discussed.