## Software by Professor M. J. D. PowellProfessor Powell kindly authorized me to distribute the code of his optimization software here. The software is also maintained at CCPForge by Professor Nick Gould and me. 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. Each package here includes an “email.txt” file. It is an email from Professor Powell giving details of the corresponding software. To use the software, you need a Fortran compiler (e.g., f77, IFORT, GFortran, G95). 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. Please notice that Professor Powell decided to release his optimization software with the GNU Lesser General Public License. If you are using a version of the software without the license, please update it. If you are archiving the software somewhere else, please make sure to include the license. TOLMIN, an algorithm that minimizes a general differentiable nonlinear function subject to linear constraints. [.tar.gz] [.zip] [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. Single precision only. [.tar.gz] [.zip] [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. [.tar.gz] [.zip] [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. [.tar.gz] [.zip] [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. [.tar.gz] [.zip] [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. [.tar.gz] [.zip] [paper] [wikipedia]
## Subroutines by myselfHere are some subroutines by me. They are written in the hope that they will be helpful, but there is no guarantee that they will work properly. They probably call some subroutines that are not provided here. In that case I try to instruct in the comments how to obtain those subroutines. ## OptimizationA Fortran subroutine to seek an inexact solution to a trust region subproblem
\[ \begin{array}{rl} \min&\frac{1}{2} d^\top B d + g^\top d\\ \mathrm{s.t.}&\|d\| \le \Delta. \end{array} \] A Fortran subroutine to seek an inexact solution to a trust region subproblem with box constrains, namely
\[ \begin{array}{rl} \min&\frac{1}{2} d^\top B d + g^\top d\\ \mathrm{s.t.}&\|d\| \le \Delta,\\ & l\le d\le u. \end{array} \] ## Software that I use (and recommend)OS: Xubuntu text editor: Vim (thanks to Dr. Zhang Yang, who introduced it to me), Vim-LaTeX (thanks to Dr. Jeff Larson, who taught it to me) typesetting: TeX Live (thanks to Professor Tian Dong, who taught me TeX) scientific computing: GNU Octave web browser: Google Chrome, Chromium web-page creator: jemdoc+MathJax (thanks to Professor Xin Liu, who introduced jemdoc to me) media player: SMPlayer
Please do not send me Microsoft files (doc, xls, ppt, etc.). If really necessary, let us use Google Docs instead. Thanks a lot. |