8.4. Optimisation Tutorials

Optimisation tutorial 1 IPOPT NLP solver, its setup and options.
Optimisation tutorial 2 Bonmin MINLP solver, its setup and options.
Optimisation tutorial 3 NLOPT NLP solvers, their setup and options.
Optimisation tutorial 4 Interoperability between DAE Tools and 3rd party optimisation software (scipy.optimize) used to minimise the Rosenbrock function.
Optimisation tutorial 5 Interoperability between DAE Tools and 3rd party optimisation software (scipy.optimize) used to fit the simple function with experimental data.
Optimisation tutorial 6 daeMinpackLeastSq solver.
Optimisation tutorial 7 Monitoring the optimisation progress (pyQt GUI).

8.4.1. Optimisation tutorial 1

This tutorial introduces IPOPT NLP solver, its setup and options.

Files

Model report opt_tutorial1.xml
Runtime model report opt_tutorial1-rt.xml
Source code opt_tutorial1.py

8.4.2. Optimisation tutorial 2

This tutorial introduces Bonmin MINLP solver, its setup and options.

Files

Model report opt_tutorial2.xml
Runtime model report opt_tutorial2-rt.xml
Source code opt_tutorial2.py

8.4.3. Optimisation tutorial 3

This tutorial introduces NLOPT NLP solver, its setup and options.

Files

Model report opt_tutorial3.xml
Runtime model report opt_tutorial3-rt.xml
Source code opt_tutorial3.py

8.4.4. Optimisation tutorial 4

This tutorial shows the interoperability between DAE Tools and 3rd party optimization software (scipy.optimize) used to minimize the Rosenbrock function.

DAE Tools simulation is used to calculate the objective function and its gradients, while scipy.optimize.fmin function (Nelder-Mead Simplex algorithm) to find the minimum of the Rosenbrock function.

Files

Model report opt_tutorial4.xml
Runtime model report opt_tutorial4-rt.xml
Source code opt_tutorial4.py

8.4.5. Optimisation tutorial 5

This tutorial shows the interoperability between DAE Tools and 3rd party optimization software (scipy.optimize) used to fit the simple function with experimental data.

DAE Tools simulation object is used to calculate the objective function and its gradients, while scipy.optimize.leastsq function (a wrapper around MINPACK’s lmdif and lmder) implementing Levenberg-Marquardt algorithm is used to estimate the parameters.

Files

Model report opt_tutorial5.xml
Runtime model report opt_tutorial5-rt.xml
Source code opt_tutorial5.py

8.4.6. Optimisation tutorial 6

daeMinpackLeastSq module test.

Files

Model report opt_tutorial6.xml
Runtime model report opt_tutorial6-rt.xml
Source code opt_tutorial6.py

8.4.7. Optimisation tutorial 7

This tutorial introduces monitoring optimization progress.

Files

Model report opt_tutorial7.xml
Runtime model report opt_tutorial7-rt.xml
Source code opt_tutorial7.py