Skip to content
nimgould edited this page Aug 27, 2021 · 2 revisions

Optimization software by Professor M. J. D. Powell

Professor Michael J. D. Powell kindly agreed to provide the source code of his numerical optimization software, as described below. The following description was generously supplied by Dr.Zaikun Zhang, now at Hong Kong Polytechnic University.

Each package here includes an “email.txt” file. This is an email from Professor Powell to Dr. Zhang giving details of the corresponding software. To use the software, you need a Fortran compiler (e.g., gfortran, g95,   Ifort). Makefiles are provided for the usage under Unix, and they might need modifications according to your compiler. Plans are underway to provide Matlab,Python and (possibly) C interfaces.

If you have problems in downloading, please feel free to contact me. In case of technical questions on the code or the algorithms, you may also contact us and we will do our best to help.

  • TOLMIN, an algorithm that minimizes a general differentiable nonlinear function subject to linear constraints. [paper] [wikipedia]

  • COBYLA (Constrained Optimization BY Linear Approximations), an algorithm that seeks the least value of a nonlinear function subject to nonlinear inequality constraints, without using derivatives of the objective function or the constraints. Implemented in Fortran 77 (single precision only).  [paper] [wikipedia]

  • UOBYQA (Unconstrained Optimization BY Quadratic Approximation), an algorithm that solves unconstrained optimization problems without using derivatives. For general usage, NEWUOA is recommended to replace UOBYQA. [paper] [wikipedia]

  • NEWUOA, an algorithm that solves unconstrained optimization problems without using derivatives. In general it is much more efficient than UOBYQA and is capable of solving problems with several hundreds of variables. [paper] [wikipedia]

  • BOBYQA (Bound Optimization BY Quadratic Approximation), an algorithm that seeks the least value of a nonlinear function subject to bound constraints, without using derivatives of the objective function. [paper] [wikipedia]

  • LINCOA (LINearly Constrained Optimization Algorithm), an algorithm that seeks the least value of a nonlinear function subject to linear inequality constraints, without using derivatives of the objective function.  [paper] [wikipedia]

Each package may be downloaded from the ftp site

    ftp://ftp.numerical.rl.ac.uk/pub/mjdp/

Both compressed-tar (tar.gz) and zipped (gzip) versions are available. Alternatively, for Linux amd OSX users, he source files for all packages is available via the svn command

    svn checkout --username anonymous https://github.com/ralna/MJDP_software/trunk ./powell

(with a blank password if prompted), or by git via the command

    git clone https://github.com/ralna/MJDP_software ./powell

A version written in modern Fortran by Jacob Williams is also available.

Professor Powell sadly passed away on April 19th, 2015. We will all miss him very much.

Nick Gould, STFC-RAL, May 2015

Clone this wiki locally