nloptSolver

Return or display available NLOPT algorithms with configuration details

Syntax

enum = nloptSolver(name)

[enum,ineq,eq,uncon,glob,deriv,subprob] = nloptSolver(name)

name = nloptSolver(enum)

nloptSolver()

Description

enum = nloptSolver(name) returns the enumeration for a given NLOPT algorithm name.

[enum,ineq,eq,uncon,glob,deriv,subprob] = nloptSolver(name) also returns the following information:

ineq - 1 if the algorithm supports nonlinear inequalities
eq    - 1 if the algorithm supports nonlinear equalities
uncon - 1 if the algorithm allows unconstrained optimization (or infinite bounds)
glob - 1 if the algorithm is a global optimization strategy
deriv - 1 if the algorithm requires a gradient and Jacobian
subprob - 1 if the algorithm requires a suboptimizer, such as the Augmented Lagrangian method. 

name = nloptSolver(enum) returns the algorithm name for a given NLOPT enumeration.

nloptSolver() prints a list of all algorithms and their configuration details.

Example

The following examples show the various uses of this function. Note the example lists below will change depending on the version you have downloaded.

Checking all solvers

To see a list of all algorithms available from NLOPT together with configuration details:

>> nloptSolver

--------------------------------------------------------------------------------------------------
NLOPT AVAILABLE SOLVERS:

NAME            SCOPE   DERIV UNCON  INEQ  EQ    DESCRIPTION                               SUBOPT
AUGLAG        | Global | Any | YES | YES | YES | Augmented Langrangian - Top Layer        | Req  |
GD_STOGO      | Global | Req |     |     |     | StoGO                                    |      |
GD_STOGO_RAND | Global | Req |     |     |     | StoGO, Randomized Search                 |      |
GN_CRS2_LM    | Global |     |     |     |     | Controlled Random Search, Local Mutation |      |

Returning the name of an NLOPT algorithm for a given enumeration

>> name = nloptSolver(1)

name =

GN_DIRECT_L