# An Optimal Control Toolbox for MATLAB Based on CasADi

Detta är en Master-uppsats från Linköpings universitet/Fordonssystem

Sammanfattning:

Many engineering problems are naturally posed as optimal control problems. It may involve moving between two points in the fastest possible way, or to put a satellite into orbit with minimum energy consumption. Many optimal control problems are too difficult to be solved analytically and therefore require the use of numerical methods. The numerical methods that are the most widespread are the so-called direct methods. However, there is one major drawback with these. If the problem is non-convex, the solution is not guaranteed globally optimal, that is, the absolute best, instead it is guaranteed locally optimal, that is the best in its vicinity. To compensate for this, the problem should be solved several times, under different conditions, in order to investigate whether the solution is a good candidate for the global optimum.

CasADi is a software specifically designed for dynamic optimization. It has gained wide spread in recent years because it provides all the necessary building blocks for dynamic optimization. This has given individual engineers and scientists the ability to independently formulate and solve all sorts of optimal control problems. However, this requires good theoretical knowledge of the necessary numerical methods.

The advantage of a toolbox, which solves general optimal control problems, is that the underlying numerical methods have been tested and shown to function on optimal control problems with known solutions. This means that the user does not need exhaustive knowledge of the numerical methods involved, but can focus on formulating and solving optimal control problems.

The main contribution of this thesis is an optimal control toolbox for MATLAB based on CasADi. The toolbox does not require expert knowledge of the numerical methods, but provides an alternative lower level abstraction that allows for more complex problem formulations.

The toolbox implements two direct methods, direct multiple shooting and direct collocation. This allows a problem formulation with many degrees of freedom. The most important property of the toolbox is that the discretization can be changed, without the problem formulation needing to be altered. This way the user can easily change the conditions for his/her problem.

The thesis describes how the two implemented direct methods work, and the design choices made. It also describes what remains to test and evaluate, and the problems that have been used as a reference during the development process.

HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)