These functions support the S3 class 'neldermead'and are intended to either create objects of this class or check if an object is of this class.
neldermead(optbase, method, simplex0, simplex0method,
simplex0length, simplexsize0, simplexopt, historysimplex, coords0, rho, chi,
gamma, sigma, tolfstdeviation, tolfstdeviationmethod, tolsimplexizeabsolute,
tolsimplexizerelative, tolsimplexizemethod, toldeltafv, tolssizedeltafvmethod,
simplex0deltausual, simplex0deltazero, restartsimplexmethod, restartmax,
restarteps, restartstep, restartnb, restartflag, restartdetection,
kelleystagnationflag, kelleynormalizationflag, kelleystagnationalpha0,
kelleyalpha, startupflag, boxnbpoints, boxnbpointseff, boxineqscaling,
checkcostfunction, scalingsimplex0, guinalphamin, boxboundsalpha,
boxtermination, boxtolf, boxnbmatch, boxkount, boxreflect, tolvarianceflag,
tolabsolutevariance, tolrelativevariance, variancesimplex0, mymethod,
myterminate, myterminateflag, greedy, output, exitflag)
# S3 method for neldermead
print(x,verbose,...)
# S3 method for neldermead
summary(object,showhistory,...)
# S3 method for neldermead
is(x=NULL)
An object of class 'optimbase', i.e. a list created by
optimbase()
and containing the following elements:
The verbose option, controlling the amount of messages.
The initial guess.
The value of the function for the initial guess.
The optimum parameter.
The optimum function value.
The absolute tolerance on function value.
The relative tolerance on function value.
Logical flag for the tolerance on function value in the termination criteria. This criteria is suitable for functions which minimum is associated with a function value equal to 0.
The absolute tolerance on x.
The relative tolerance on x.
Possible values: FALSE, TRUE.
The number of function evaluations.
The maximum number of function evaluations.
The maximum number of iterations.
The number of iterations.
The cost function.
The status of the optimization.
The vector to store the history for fopt. The values of
the cost function will be stored at each iteration in a new element, so
the length of historyfopt
at the end of the optimization should
be the number of iterations.
The list to store the history for xopt. The vectors of
estimates will be stored on separated levels of the list, so the length
of historyfopt
at the end of the optimization should be the
number of iterations.
The verbose option for termination criteria.
The command called back for output.
The outputcommand argument is initialized as a string. If the user configure this element, it is expected that a matrix of values or a list is passed so that the argument is appended to the name of the function.
The number of variables to optimize.
The flag which enables/disables the storing of the history.
The costf argument is initialized as a string. If the user configure this element, it is expected that a matrix of values or a list is passed so that the argument is appended to the name of the function.
Minimum bounds for the parameters.
Maximum bounds for the parameters.
The number of nonlinear inequality constraints.
The name of the log file.
The handle for the log file.
Set to TRUE when the logging is started up.
Set to TRUE when the method uses derivatives.
The name of the algorithm to use.
An object of class 'simplex', i.e. a list created by
optimsimplex()
, and containing the following elements:
The verbose option, controlling the amount of messages.
The coordinates of the vertices, with size nbve x n.
The dimension of the space.
The function values, with size nbve x 1.
The number of vertices.
The method to use to compute the initial simplex.
The length to use when the initial simplex is computed with the 'axes' or 'spendley' methods.
The reflection coefficient. This parameter is used when the
method
element is set to 'fixed' or 'variable'.
The expansion coefficient. This parameter is used when the
method
element is set to 'variable'.
The contraction coefficient. This parameter is used when the
method
element is set to 'variable'.
The shrinkage coefficient. This parameter is used when the
method
element is set to 'fixed' or 'variable'.
The tolerance for the standard deviation.
Set to FALSE.
The absolute tolerance on the simplex size.
The relative tolerance on the simplex size.
Logical flag to enable/disable the tolerance on
the simplex size. When this criteria is enabled, the values of the
tolsimplexizeabsolute
and tolsimplexizerelative
elements are
used in the termination criteria. The method to compute the size is the
'sigmaplus' method.
Initial size of the simplex, for the tolerance on the simplex size.
The absolute tolerance on the difference between the highest and the lowest function values.
Logical flag to enable/disable the termination
criteria based on the size of the simplex and the difference of function
value in the simplex. If this criteria is triggered, the status of the
optimization is set to 'tolsizedeltafv'. This termination criteria uses
the values of the tolsimplexizeabsolute
and toldeltafv
elements. This criteria is identical to Scilab's fminsearch
.
The list to store the history for simplex. The simplex
will be stored on a new level of the list at each iteration, so the length
of historyfopt
at the end of the optimization should be the number
of iterations.
The coordinates of the vertices of the initial simplex. If
the simplex0method
element is set to 'given', these coordinates are
used to compute the initial simplex. This matrix is expected to have
shape nbve x n where nbve is the number of vertices and n is the number of
variables.
The relative delta for non-zero parameters in 'pfeffer' method.
The absolute delta for non-zero parameters in 'pfeffer' method.
The optimum simplex, after one optimization process.
The method to compute the initial simplex after a restart.
The maximum number of restarts, when automatic restart is
enabled via the restartflag
element.
The absolute epsilon value used to check for optimality in the factorial O'Neill restart detection.
The absolute step length used to check for optimality in the factorial O'Neill restart detection.
Logical flag to enable/disable the termination criteria using Kelley's stagnation detection, based on sufficient decrease condition. If this criteria is triggered, the status of the optimization is set to 'kelleystagnation'.
Logical flag to enable/disable the
normalization of the alpha coefficient in Kelley's stagnation detection,
i.e. use the value of the kelleystagnationalpha0
element as is.
The parameter used in Kelley's stagnation detection.
The current value of Kelley's alpha, after normalization, if required.
Number of restarts performed.
Logical flag to enable/disable the automatic restart of the algorithm.
The method to detect if the automatic restart must be performed.
Set to TRUE when the startup has been performed.
The number of points in the initial simplex, when the
simplex0method
is set to 'randbounds'. The value of this element is
also use to update the simplex when a restart is performed and the
restartsimplexmethod
element is set to 'randbounds'. The default
value is so that the number of points is twice the number of variables of
the problem.
The effective number of points required in the simplex for Box's algorithm.
The scaling coefficient used to scale the trial point for function improvement or into the constraints of Box's algorithm.
Logical flag to enable/disable the checking of the connection of the cost function.
The algorithm used to scale the initial simplex into the nonlinear constraints. The following two algorithms are provided:
scales the vertices toward the initial guess.
scales the vertices toward the centroid, as recommended by Box.
If the centroid happens to be unfeasible, because the constraints are not convex, the scaling of the initial simplex toward the centroid may fail. Since the initial guess is always feasible, scaling toward the initial guess cannot fail.
The minimum value of alpha when scaling the vertices of the simplex into nonlinear constraints in Box's algorithm.
The parameter used to project the vertices into the bounds in Box's algorithm.
Logical flag to enable/disable Box's termination criteria.
The absolute tolerance on difference of function values in
the simplex, suggested by Box. This tolerance is used if the
boxtermination
element is set to TRUE.
The number of consecutive match of Box's termination criteria.
Current number of consecutive match.
The reflection factor in Box's algorithm.
Logical flag to enable/disable the termination criteria based on the variance of the function value. If this criteria is triggered, the status of the optimization is set to 'tolvariance'. This criteria is suggested by Nelder and Mead.
The absolute tolerance on the variance of the function values of the simplex.
The relative tolerance on the variance of the function values of the simplex.
Relative tolerance on variance.
A user-derined simplex algorithm.
A user-defined terminate function.
Logical flag to enable/disable the user-defined terminate function.
Logical flag to enable/disable greedy Nelder-Mead.
The command to call back for user-defined output of specialized function.
Logical flag to enable/disable the user-defined output of specialized function.
An object of class 'neldermead'.
A logical flag, controlling the amount of data printed.
optional arguments to 'print' or 'plot' methods.
An object of class 'neldermead'.
Optional logical flag, to define whether optimization history must be summarized or not.
The neldermead
function returns a new object of class 'neldermead',
with the following default content:
An object of class 'optimbase' with the following default content:
Default is FALSE.
Default is NULL.
Default is NULL.
Default is 0.
Default is 0.
Default is 0.
Default is .Machine$double.eps.
Default is FALSE.
Default is 0.
Default is .Machine$double.eps.
Default is TRUE.
Default is 0.
Default is 100.
Default is 100.
Default is 0.
Default is ''.
Default is ''.
Default is NULL.
Default is NULL.
Default is FALSE.
Default is ''.
Default is ''. If the user configures this element, it is expected to be an object of class 'optimbase.outputargs' or will be coerced to an object of class 'optimbase.outputargs'.
Default is 0.
Default is FALSE.
Default is ''. If the user configures this element, it is expected to be an object of class 'optimbase.functionargs' or will be coerced to an object of class 'optimbase.functionargs'.
Default is NULL.
Default is NULL.
Default is 0.
Default is ''.
Default is 0.
Default is FALSE.
Default is FALSE.
Default is 'variable'.
Default is an object of class 'simplex', with the following content:
Default is 0.
Default is NULL.
Default is 0.
Default is NULL.
Default is 0.
Default is 'axes'.
Default is 1.
Default is 1.
Default is 2.
Default is 0.5.
Default is 0.5.
Default is 0.
Default is FALSE.
Default is 0.
Default is .Machine$double.eps.
Default is FALSE.
Default is 0.
Default is .Machine$double.eps.
Default is FALSE.
Default is NULL.
Default is NULL.
Default is 0.05.
Default is 0.0075.
Default is NULL.
Default is 'oriented'.
Default is 3.
Default is .Machine$double.eps.
Default is 1.
Default is FALSE.
Default is TRUE, i.e. the simplex gradient of the initial simplex is taken into account in the stagnation detection.
Default is 1.e-4.
Default is 1.e-4.
Default is 0.
Default is FALSE.
Default is 'oneill'.
Default is FALSE.
Default is '2n'.
Default is 0.
Default is 0.
Default is TRUE.
Default is 'tox0'.
Default is 1.e-6.
Default is FALSE.
Default is 1.e-5.
Default is 5.
Default is 0.
Default is 1.3.
Default is FALSE.
Default is 0.
Default is .Machine$double.eps.
Default is .Machine$double.eps.
Default is NULL.
Default is NULL.
Default is FALSE.
Default is FALSE.
Default is list().
Default is FALSE.