Solve constrained nonlinear minimization problem
1 2 3 4 5 6 7 8 9 10 11  donlp2(
par, fn,
par.upper = rep(+Inf, length(par)), par.lower = rep(Inf, length(par)),
A = NULL,
lin.upper = rep(+Inf, length(par)), lin.lower = rep(Inf, length(par)),
nlin = list(),
nlin.upper = rep(+Inf, length(nlin)), nlin.lower = rep(Inf, length(nlin)),
control = donlp2Control(),
control.fun = function(lst){return(TRUE)},
env = .GlobalEnv,
name = NULL)

fn 
the objective function to be minimized. Currently, 
par 
parameter vector(vector object). 
par.lower, par.upper 
upper and lower bounds for parameter vector,
respectively. Their length must equal to

A 
the matrix object that represents linear constraints. Its
columns must be equal to 
lin.lower, lin.upper 
upper and lower bounds for linear constraints,
respectively. Their length must equal to the number of linear
constraints. If some elements are unbounded, specify 
nlin 
list object whose elements are functions that represents
nonlinear constraints. Rule for argument and return value is the
same as 
nlin.lower, nlin.upper 
upper and lower bounds for nonlinear constraints,
respectively. Their length must equal to 
control 
"control parameters" that defines the behavior of
Rdonlp2. See 
control.fun 

env 
the environment in which objective, constraint, control functions are evaluated. 
name 
an character object that specify file name(without
extension, max 40 characters) of output file. If not 
For n=length(par)
parameters, lin
linear constraints,
and nlin
nonlinear constraints, a list with following elements:
par 
parameters returned by DONLP2. 
gradf 
gradient evaluated at 
u 

w 

step.nr 
total number of iterations. 
fx 
the value of objective function 
sci 
scaling of 
psi 
psi the weighted penalty term. 
upsi 
the unweighted penalty term(L1 norm of constraint vector). 
del.k.1 
bound for the last active constraints. 
b2n0 
weighted L2 norm of projected gradients. 
b2n 
L2norm of gradients based on 
nr 
number of binding constraints. 
sing 
value other than 
umin 
infinity norm of negative part of inequalities multipliers. 
not.used 
always 
cond.r 
condition number of diagonal part of qr decomposition of normalized gradients of binding constraints 
cond.h 
condition number of diagonal of cholesky factor of updated full Hessian. 
scf0 
the relative damping of tangential component if

xnorm 
L2 norm of 
dnorm 
unsclaed norm of 
phase 

c.k 
number of decreases of penalty weights. 
wmax 
infinity norm of weights. 
sig.k 
stepsize from uidimensional minimization(backgracking). 
cfincr 
number of objective function evaluations for stepsize algorithm. 
dirder 
scaled derectional derivative of penalty function along

dscal 
scaling factor for 
cosphi 
cosine of arc between 
violis 
number of constraints not binding at current values of

hesstype 
one of 4 values indicating type of update for
Hessian. 
modbifgs 
modification factor for damping the projector into the BFGS or pantojamayne update. 
modnr 
modification factor for daming the quasinewtonrelation in BFGS. 
qpterm 

tauqp 
weight of slack variables in QP solver. 
infeas 
L1 norm of slack variables in QP solver. 
nr.update 
the approximated newtonraphson update in upper trianglar form. 
hessian 
numeric Hessian matrix if 
runtime 
the elapsed time for the optimization. 
message 
the termination message. 
Peter Spelucci has has written the original solver code, S. Schoeffert has translated donlp2 from f77 to the ANSI C version, K. S. Cove has added dynamic memory allocation, Christoph Bergmeier has added passing objecive and constraints as external pointer, Ryuichi Tamura has written the original Rdonlp2 interface, Diethelm Wuertz has written the current Rdonlp2 interface. DONLP2 is copyrighted software written by Peter Sperucci.
Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
Please suggest features or report bugs with the GitHub issue tracker.
All documentation is copyright its authors; we didn't write any of that.