Scalar Function Optimization

PRAXIS is a FORTRAN77 library which minimizes a scalar function of a vector argument, without needing derivative information, by Richard Brent.

PRAXIS seeks an M-dimensional point X which minimizes a given scalar function F(X). The code is a refinement of Powell's method of conjugate search directions. The user does not need to supply the partial derivatives of the function F(X). In fact, the function F(X) need not be smoothly differentiable.


PRAXIS is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

BRENT, a FORTRAN77 library which contains Richard Brent's routines for finding the zero, local minimizer, or global minimizer of a scalar function of a scalar argument, without the use of derivative information.

COMPASS_SEARCH, a FORTRAN77 library which seeks the minimizer of a scalar function of several variables using compass search, a direct search algorithm that does not use derivatives.

DQED, a FORTRAN77 library which solves constrained least squares problems.

ENTRUST, a MATLAB program which solves problems in scalar optimization or nonlinear least squares.

LAWSON, a FORTRAN77 library which contains routines for solving least squares problems and singular value decompositions, by Lawson and Hanson.

MINPACK, a FORTRAN90 library which solves systems of nonlinear equations, or the least squares minimization of the residual of a set of linear or nonlinear equations.

NL2SOL, a FORTRAN77 library which implements an adaptive nonlinear least-squares algorithm.

TEST_OPT, a FORTRAN90 library which defines test problems requiring the minimization of a scalar function of several variables.

TOMS611, a FORTRAN77 library which seeks the minimizer of a scalar functional of multiple variables.


Original FORTRAN77 version by Richard Brent. Modifications by John Burkardt.


Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN77 source codes.

Last revised on 02 February 2008.