# TOMLAB  
# REGISTER (TOMLAB)
# LOGIN  
# myTOMLAB
TOMLAB LOGO

« Previous « Start » Next »

4  TOMLAB /NLPQL Solver Reference

A detailed description of the TOMLAB /NLPQL[1] solver interface is given below. Also see the M-file help for nlpqlTL.m.

4.1  nlpqlTL

Purpose
Solves constrained nonlinear programming problems.

NLPQL solves problems of the form
 
min
x
f(x)  
 
s/t xL x xU  
  bL Ax bU  
  cL c(x) cU  
    (1)
where x,xL,xU ∈ RnA ∈ Rm1 × nbL,bU ∈ Rm1 and c(x), cL, cU ∈ Rm2.


Calling Syntax
Prob = conAssign( ... );
Result = tomRun('nlpql',Prob,...);


Description of Inputs
Prob Problem description structure. The following fields are used:
 
  A Linear constraints coefficient matrix.
  x_L, x_U Bounds on variables.
  b_L, b_U Bounds on linear constraints.
  c_L, c_U Bounds on nonlinear constraints. For equality constraints (or fixed variables), set e.g. b_L(k) == b_U(k).
 
  PriLevOpt Print level in MEX interface.
 
  WarmStart If true, use warm start, otherwise cold start. When using WarmStart the following parameters are required:
 
  NLPQL.u Contains the multipliers with respect to the actual iterate stored in the first column of X. The first M locations contain the multipliers of the M nonlinear constraints, the subsequent N locations the multipliers of the lower bounds, and the final N locations the multipliers of the upper bounds. At an optimal solution, all multipliers with respect to inequality constraints should be nonnegative.
 
  NLPQL.c On return, C contains the last computed approximation of the Hessian matrix of the Lagrangian function stored in form of an LDL decomposition. C contains the lower triangular factor of an LDL factorization of the final quasi-Newton matrix (without diagonal elements, which are always one). In the driving program, the row dimension of C has to be equal to NMAX.
 
  NLPQL.d The elements of the diagonal matrix of the LDL decomposition of the quasi-Newton matrix are stored in the one-dimensional array D.
 
  NLPQL Structure with special fields for the NLPQL solver:
 
  maxfun The integer variable defines an upper bound for the number of function calls during the line search.
 
  maxit Maximum number of outer iterations, where one iteration corresponds to one formulation and solution of the quadratic programming subproblem, or, alternatively, one evaluation of gradients.
 
  acc The user has to specify the desired final accuracy (e.g. 1.0e-7). The termination accuracy should not be smaller than the accuracy by which gradients are computed.
 
  accqp The tolerance is needed for the QP solver to perform several tests, for example whether optimality conditions are satisfied or whether a number is considered as zero or not. If ACCQP is less or equal to zero, then the machine precision is computed by NLPQL and subsequently multiplied by 1.0e+4.
 
  PrintFile Name of NLPQL Print file. Amount and type of printing determined by PriLevOpt.
 

Description of Outputs

Result Structure with result from optimization. The following fields are set:
 
  f_k Function value at optimum.
  g_k Gradient of the function.
 
  x_k Solution vector.
  x_0 Initial solution vector.
 
  c_k Nonlinear constraint residuals.
  cJac Nonlinear constraint gradients.
 
  xState State of variables. Free == 0; On lower == 1; On upper == 2; Fixed == 3;
  bState State of linear constraints. Free == 0; Lower == 1; Upper == 2; Equality == 3;
  cState State of nonlinear constraints. Free == 0; Lower == 1; Upper == 2; Equality == 3;
 
  ExitFlag Exit status from NLPQL MEX.
  ExitText Exit text from NLPQL MEX.
  Inform NLPQL information parameter.
 
  FuncEv Number of function evaluations.
  GradEv Number of gradient evaluations.
  ConstrEv Number of constraint evaluations.
  QP.B Basis vector in TOMLAB QP standard.
 
  Solver Name of the solver (NLPQL).
  SolverAlgorithm Description of the solver.
 
  NLPQL.act The logical array indicates constraints, which NLPQL considers to be active at the last computed iterate.
 
  NLPQL.u See inputs.
 
  NLPQL.c See inputs.
 
  NLPQL.d See inputs.
 


« Previous « Start » Next »