For each option, we give a summary line, a description of the optional parameter and details of constraints.
The summary line contains:
- the keywords, where the minimum abbreviation of each keyword is underlined (if no characters of an optional qualifier are underlined, the qualifier may be omitted);
- a parameter value,
where the letters , denote options that take character, integer and real values respectively;
- the default value, where the symbol is a generic notation for machine precision (see x02aj), and denotes the relative precision of the objective function Function Precision.
Keywords and character values are case and white space insensitive.
This special keyword may be used to reset all optional parameters to their default values.
Estimated Optimal Function Value | | |
This value of
specifies the user-supplied guess of the optimum objective function value
. This value is used to calculate an initial step length
(see
[Algorithmic Details]). If the value of
is not specified (the default), then this has the effect of setting
to unity. It should be noted that for badly scaled functions a unit step along the steepest descent direction will often compute the objective function at very large values of
.
The parameter defines , which is intended to be a measure of the accuracy with which the problem function can be computed. If or , the default value is used.
The value of
should reflect the relative precision of
; i.e.,
acts as a relative precision when
is large, and as an absolute precision when
is small. For example, if
is typically of order
and the first six significant digits are known to be correct, an appropriate value for
would be
. In contrast, if
is typically of order
and the first six significant digits are known to be correct, an appropriate value for
would be
. The choice of
can be quite complicated for badly scaled problems; see Chapter 8 of
Gill et al. (1981) for a discussion of scaling techniques. The default value is appropriate for most simple functions that are computed with full accuracy. However when the accuracy of the computed function values is known to be significantly worse than full precision, the value of
should be large enough so that no attempt will be made to distinguish between function values that differ by less than the error inherent in the calculation.
The value of specifies the maximum number of iterations allowed before termination. If , the default value is used.
Problems whose Hessian matrices at the solution contain sets of clustered eigenvalues are likely to be minimized in significantly fewer than iterations. Problems without this property may require anything between and iterations, with approximately iterations being a common figure for moderately difficult problems.
The value controls the accuracy with which the step taken during each iteration approximates a minimum of the function along the search direction (the smaller the value of , the more accurate the linesearch). The default value requests an inaccurate search, and is appropriate for most problems. A more accurate search may be appropriate when it is desirable to reduce the number of iterations – for example, if the objective function is cheap to evaluate. If or , the default value is used.
Normally each optional parameter specification is printed as it is supplied. Optional parameter
Nolist may be used to suppress the printing and optional parameter
List may be used to restore printing.
If , the maximum allowable step length for the linesearch is taken as . If , the default value is used.
The parameter
specifies the accuracy to which you wish the final iterate to approximate a solution of the problem. Broadly speaking,
indicates the number of correct figures desired in the objective function at the solution. For example, if
is
and termination occurs with
(see
[Parameters]), then the final point satisfies the termination criteria, where
represents
Optimality Tolerance. If
or
, the default value is used.
The value
controls the amount of printout produced by
e04dg, as indicated below. A detailed description of the printout is given in
[Description of Printed Output] (summary output at each iteration and the final solution).
| Output |
| No output. |
| The final solution only. |
| One line of summary output ( characters; see [Description of Printed Output]) for each iteration (no printout of the final solution). |
| The final solution and one line of summary output for each iteration. |
Start Objective Check at Variable | | |
Stop Objective Check at Variable | | |
These keywords take effect only if
. They may be used to control the verification of gradient elements computed by
objfun. For example, if the first
elements of the objective gradient appeared to be correct in an earlier run, so that only element
remains questionable, it is reasonable to specify
. If the first
variables appear linearly in the objective, so that the corresponding gradient elements are constant, the above choice would also be appropriate.
If or , the default value is used. If or , the default value is used.
Verify Objective Gradients | | |
These keywords refer to finite difference checks on the gradient elements computed by
objfun. Gradients are verified at the user-supplied initial estimate of the solution. The possible choices for
are as follows:
| Meaning |
| No checks are performed. |
| Only a ‘cheap’ test will be performed, requiring one call to objfun. |
| In addition to the ‘cheap’ test, individual gradient elements will also be checked using a reliable (but more expensive) test. |
For example, the objective gradient will be verified if
Verify,
,
Verify Gradients,
Verify Objective Gradients or
is specified.