8.8. 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.8.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

C++ source code

opt_tutorial1.cpp

8.8.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.8.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.8.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.8.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.8.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.8.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