FMINCON
Examples of Constrained Minimization using FMINCON
FMINCON
is a function included in MATLAB's Optimization Toolbox which
seeks the minimizer of a scalar function of multiple variables,
within a region specified by linear constraints and bounds.
A related function built into MATLAB is
fminsearch
which minimizes a scalar function of several variables using the
NelderMead algorithm.
Usage:
x_opt = fmincon ( fun, x0, A, b,
Aeq, beq, lb, ub )
where

fun is the "function handle"; that is, the name of an Mfile
that defines the function, preceded by an "@" sign;

x0 is an initial value for the optimizer;

A, b define a linear inequality constraint A * x <= b on the solution.

Aeq, beq define a linear equality constraint Aeq * x = beq on the solution.

lb, ub define bounds on the solution, lb <= x <= ub.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
FMINCON is available in
a MATLAB version.
Related Data and Programs:
ASA047,
a MATLAB library which
minimizes a scalar function of several variables using the NelderMead algorithm.
COMPASS_SEARCH,
a MATLAB library which
seeks the minimizer of a scalar function of several variables
using compass search, a direct search algorithm that does not use derivatives.
ENTRUST,
a MATLAB program which
minimizes a scalar function of several variables using trustregion methods.
NELDER_MEAD,
a MATLAB program which
minimizes a scalar function of several variables using the NelderMead algorithm,
by Jeff Borggaard.
PRAXIS,
a FORTRAN90 library which
implements the principal axis method of Richard Brent for minimization of
a function without the use of derivatives.
TEST_OPT,
a MATLAB library which
defines test problems
requiring the minimization of a scalar function of several variables.
TOMS178,
a MATLAB library which
optimizes a scalar functional of multiple variables using the HookeJeeves method.
Reference:

Harald Niederreiter, Kevin McCurley,
Optimization of functions by quasirandom search methods,
Computing,
Volume 22, Number 2, 1979, pages 119123.
Examples and Tests:

fmincon_test.m,
calls all the tests.

fmincon_test_output.txt,
the output file.

fmincon_test01.m,
uses the NiederreiterMcCurley function #1.

niederreiter_mccurley1.m,
evaluates the NiederreiterMcCurley function #1.

fmincon_test02.m,
uses the NiederreiterMcCurley function #2.

niederreiter_mccurley2.m,
evaluates the NiederreiterMcCurley function #2.

fmincon_test03.m,
uses the NiederreiterMcCurley function #3.

niederreiter_mccurley3.m,
evaluates the NiederreiterMcCurley function #3.

fmincon_test04.m,
uses the NiederreiterMcCurley function #4.

niederreiter_mccurley4.m,
evaluates the NiederreiterMcCurley function #4.

fmincon_test05.m,
uses the NiederreiterMcCurley function #5.

niederreiter_mccurley5.m,
evaluates the NiederreiterMcCurley function #5.

fmincon_test06.m,
uses the NiederreiterMcCurley function #6.

niederreiter_mccurley6.m,
evaluates the NiederreiterMcCurley function #6.
You can go up one level to
the MATLAB source codes.
Last revised on 06 September 2010.