Optimization Routines:This is a catalog of optimization
routines which I have successfully used for various projects.
Please also see my MATLAB translations of various Numerical Recipes routines
for additional optimization routines.
Non-Differentiable Optimization: The Method of Hooke and Jeeves
Here you'll find a MATLAB version of the nonlinear optimization routine
developed by Hooke and Jeeves.
"Direct Search Solution of Numerical and Statistical Problems",
by R. Hooke and T. A. Jeeves,
Journal of the ACM, Vol. 8, April 1961, pp. 212-229.
This is a nice algorithm since it does not require the objective
function to be differentiable ... a very nice property to
have when one does not have, or cannot get, an analytic form for
the objective function. The code and an example of its use
(rosenbrock's banana function) are provided below:
Here are MATLAB version of the famous Fibonacci search routine.
This is the optimal search strategy to use for continuous
functions when one wants to minimize the number of function
evaluations required to find the optimum of a unimodal (a single
global optimum only) function. This routine is considered better
than the more recognized golden-ratio search. For this search
method it is assumed that a minimum is between two limits and we
provide a discrete grid of values one of which corresponds to the
minimum of our unimodal function over this grid. For more detail
on this search method see
Optimum Seeking Methods, by Wilde, D. J.,
Prentice-Hall, Inc., Englewood Cliffs, New Jersey (1964).
Minimization by the method of Trisection: MINX
Here you'll find a FORTRAN version of the very cute trisection
algorithm for optimization. This is not the most efficient method
for this type of optimization routine. A much better method would
be to use the golden ratio/golden section search for a
"bracketing" type algorithm (found
here). The MINIX
algorithm is describe in the following reference
Algorithm 7, MINIX by J. Boothroyd in Comp. Bulletin, Issue 104,
year 1965, pages 104-108.
Last modified: Mon Apr 16 10:18:28 EDT 2007