Abstract
Dynamic optimization is the problem of finding the minimum of a cost function subject to a constraint comprised of a system of differential equations. There are many algorithms to numerically solve such optimization problems. One such algorithm is multiple shooting. This paper reports an implementation of a multiple shooting algorithm in Python. The implementation is based on the open source platform JModelica.org, the integrator SUNDIALS and the optimization algorithm scipy_slsqp. The JModelica.org platform supports model descriptions encoded in the Modelica language and optimization specifications expressed in the extension Optimica. The Modelica/Optimica combination provides simple means to express complex optimization problems in a compact and user-oriented manner. The JModelica.org platform, in turn translates the high-level descriptions into efficient C code which can compiled and linked with Python. As a result, the numerical packages available for Python can be used to develop custom applications based on Modelica/Optimica specifications. An example is provided to illustrate the capabilities of the method.
Original language | English |
---|---|
Publication status | Published - 2009 |
Event | 7th International Modelica Conference, 2009 - Como, Italy Duration: 2009 Sept 20 → 2009 Sept 22 Conference number: 7 |
Conference
Conference | 7th International Modelica Conference, 2009 |
---|---|
Country/Territory | Italy |
City | Como |
Period | 2009/09/20 → 2009/09/22 |
Bibliographical note
The information about affiliations in this record was updated in December 2015.The record was previously connected to the following departments: Numerical Analysis (011015004), Department of Automatic Control (011017000)
Subject classification (UKÄ)
- Control Engineering
- Mathematics