dynopt
dynopt is a set of MATLAB functions for determination of optimal
control trajectory given the description of the process, the cost to
be minimised, subject to equality and inequality constraints.
The actual optimal control problem is solved via total
discretisation with orthogonal collocations on finite elements That
is, both the original continuous state and control trajectories are
approximated by a sequence of linear combinations of some basis
functions. It is assumed that the basis functions are known and
optimised are the coefficients of the linear combinations. Lagrange
interpolation polynomials are used. In addition, each segment of
the control sequence is defined on a time interval whose length
itself may also be subject to optimisation. Knots (times) are
defined by the roots of shifted Legendre polynomials.
It is assumed, that the optimised dynamic model is described by a
set of ordinary differential equations.
The algorithm is based on the work of Biegler and coworkers,
e.g. J. S. Logsdon and L. T. Biegler, Accurate solution of
differential-algebraic optimization problems, Chem. Eng. Sci.,
(28):1628 - 1639, 1989.
Contact
M. Fikar: Department of Information Engineering and Process
Control, Faculty of Chemical and Food Technology, Slovak
University of Technology in Bratislava, Radlinského 9, 812 37
Bratislava, Slovak Republic.
miroslav.fikar[at]stuba.sk
Sources
Both documentation and code sources are available as repositories at github. documentation, code. The latest version: zip file.
References
-
M. Čižniar, M. Fikar, and M.A. Latifi: MATLAB Dynamic Optimisation Code DYNOPT, User's guide, Technical Report, KIRP FCHPT STU,
Bratislava, 2006.
[PDF]
-
M. Čižniar, D. Salhi, M. Fikar, and M.A. Latifi:
A MATLAB Package for Orthogonal Collocations on Finite Elements in Dynamic Optimisation.
Proceedings of the 15th Int. Conference Process Control '05, Štrbské Pleso, June 7-10, 2005, Slovakia.
CD-ROM Proceedings, 058f.pdf.
Abstract,
Article:PDF,
more
-
Čižniar, M., Salhi, D., Fikar, M., Latifi, M. A.: DYNOPT - Dynamic
Optimisation Code for MATLAB. Proceedings of Technical Computing
Prague 2005, cizniar.pdf, 2005. more
New in Version 5
- automatic differentiation with package Adigator
- manual differentiation available as option
- incompatibility with Version 4
New in Version 4
- state constraints can be mixed : at t=0, along the time axis,
and at the final time. Previously only one of them was possible.
- optimisation of time independent parameters.
- introduction of a discrete-time cost function - sum of elements.
- changed user interface. All inputs and outputs are now given in
structures.
- definition of min/max constraints on state and control
independently on each interval
- interface to different NLP solvers
New in Version 3
- process to be optimised may be in the form of DAE system: M
\dot{x} = f(x,u) (new flag in function process)
New in Version 2
- state constraints can now be defined as one of three
possibilities : at t=0, along the time axis, and at the final time
(previously only final state constraints)
- independent degrees of approximation of states and controls
(previously, degree of control polynomials was always one less than
of the state polynomials)
- time intervals can be specified to be constant
- lower and upper bounds on variables are now defined
explicitly. This improves convergence.
History
- Version 5.0.5 released 04.04.2021
- Version 5.0.1 released 29.04.2020
- Version 4.3.1 released 20.12.2018
- Version 4.3.0 released 04.08.2016
- Version 4.2.0 released 22.06.2015
- Version 4.1.5 released 29.07.2014
- Version 4.1.4 released 27.11.2012
- Version 4.1.3 released 24.02.2009
- Version 4.1.1 released 23.10.2006
- Version 4 released 18.9.2006
- Version 3 released 04.5.2006
- Version 2 released 20.9.2005
- Version 1 released 21.5.2005 - diploma thesis