This option specifies how the initial working set is chosen. With a
Cold Start,
e04nc chooses the initial working set based on the values of the variables and constraints at the initial point. Broadly speaking, the initial working set will include equality constraints and bounds or inequality constraints that violate or ‘nearly’ satisfy their bounds (to within
Crash Tolerance).
With a
Warm Start, you must provide a valid definition of every element of the array
istate.
e04nc will override your specification of
istate if necessary, so that a poor choice of the working set will not cause a fatal error. For instance, any elements of
istate which are set to
-2,
-1 or 4 will be reset to zero, as will any elements which are set to
3 when the corresponding elements of
bl and
bu are not equal. A warm start will be advantageous if a good estimate of the initial working set is available – for example, when
e04nc is called repeatedly to solve related problems.
Crash Tolerance | r | Default =0.01 |
This value is used in conjunction with the optional parameter
Cold Start (the default value) when
e04nc selects an initial working set. If
0≤r≤1, the initial working set will include (if possible) bounds or general inequality constraints that lie within
r of their bounds. In particular, a constraint of the form
cjT
x≥l
will be included in the initial working set if
cjT
x-l
≤
r
1+l
. If
r<0 or
r>1, the default value is used.
This special keyword may be used to reset all optional parameters to their default values.
Feasibility Phase Iteration Limit | i1 | Default =max50,5n+nL |
Optimality Phase Iteration Limit | i2 | Default =max50,5n+nL |
The scalars i1 and i2 specify the maximum number of iterations allowed in the feasibility and optimality phases. Optional parameter Optimality Phase Iteration Limit is equivalent to optional parameter Iteration Limit. Setting i2=0 and Print Level>0 means that the workspace needed will be computed and printed, but no iterations will be performed. If i1<0 or i2<0, the default value is used.
Feasibility Tolerance | r | Default =ε |
If r>ε, r defines the maximum acceptable absolute violation in each constraint at a ‘feasible’ point. For example, if the variables and the coefficients in the general constaints are of order unity, and the latter are correct to about 6 decimal digits, it would be appropriate to specify r as 10-6. If 0≤r<ε, the default value is used.
Note that a ‘feasible solution’ is a solution that satisfies the current constraints to within the tolerance r.
This option controls the contents of the upper triangular matrix
R (see the description of
a in
[Parameters]).
e04nc works exclusively with the transformed and reordered matrix
HQ (8), and hence extra computation is required to form the Hessian itself. If
Hessian=No,
a contains the Cholesky factor of the matrix
HQ with columns ordered as indicated by
kx (see
[Parameters]). If
Hessian=Yes,
a contains the Cholesky factor of the matrix
H, with columns ordered as indicated by
kx.
Infinite Bound Size | r | Default =1020 |
If r>0, r defines the ‘infinite’ bound infbnd in the definition of the problem constraints. Any upper bound greater than or equal to infbnd will be regarded as +∞ (and similarly any lower bound less than or equal to -infbnd will be regarded as -∞). If r<0, the default value is used.
Infinite Step Size | r | Default =maxbigbnd,1020 |
If r>0, r specifies the magnitude of the change in variables that will be considered a step to an unbounded solution. (Note that an unbounded solution can occur only when the Hessian is singular and the objective contains an explicit linear term.) If the change in x during an iteration would exceed the value of r, the objective function is considered to be unbounded below in the feasible region. If r≤0, the default value is used.
Iteration Limit | i | Default =max50,5n+nL |
See optional parameter Feasibility Phase Iteration Limit.
Nolist | | Default for e04nc=Nolist |
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.
Monitoring File | i | Default =-1 |
If
i≥0 and
Print Level≥5, monitoring information produced by
e04nc at every iteration is sent to a file with logical unit number
i. If
i<0 and/or
Print Level<5, no monitoring information is produced.
The value of
i controls the amount of printout produced by
e04nc, as indicated below. A detailed description of the printed output is given in
[Description of the Printed Output] (summary output at each iteration and the final solution) and
[Description of Monitoring Information] (monitoring information at each iteration).
The following printout is sent:
i |
Output |
≥00 |
No output. |
≥01 |
The final solution only. |
≥05 |
One line of summary output (<80 characters; see [Description of the Printed Output]) for each iteration (no printout of the final solution). |
≥10 |
The final solution and one line of summary output for each iteration. |
The following printout is sent to the logical unit number defined by the optional parameter
Monitoring File:
i |
Output |
<5 |
No output. |
≥5 |
One long line of output (>80 characters; see [Description of Monitoring Information]) for each iteration (no printout of the final solution). |
≥20 |
At each iteration, the Lagrange multipliers, the variables x, the constraint values Cx and the constraint status. |
≥30 |
At each iteration, the diagonal elements of the matrix T associated with the TQ factorization (4) (see [Definition of Search Direction]) of the working set, and the diagonal elements of the upper triangular matrix R. |
Problem Type | a | Default = LS1 |
This option specifies the type of objective function to be minimized during the optimality phase. The following are the nine optional keywords and the dimensions of the arrays that must be specified in order to define the objective function:
LP |
a and b not referenced, cvec[n-1]; |
QP1 |
a[lda-1,n-1] symmetric, b and cvec not referenced; |
QP2 |
a[lda-1,n-1] symmetric, b not referenced, cvec
dimension n; |
QP3 |
a, dimension lda,n, upper trapezoidal, kx dimension n, b and cvec not referenced; |
QP4 |
a dimension lda,n, upper trapezoidal, kx dimension n, b not referenced, cvec
dimension n; |
LS1 |
a dimension lda,n, b dimension m, cvec not referenced; |
LS2 |
a dimension lda,n, b dimension m, cvec
dimension n; |
LS3 |
a dimension lda,n, upper trapezoidal, kx dimension n, b dimension m, cvec not referenced; |
LS4 |
a dimension lda,n, upper trapezoidal, kx dimension n, b dimension m, cvec
dimension n. |
For problems of type FP, the objective function is omitted and
a,
b and
cvec are not referenced.
The following keywords are also acceptable. The minimum abbreviation of each keyword is underlined.
a |
Option |
Least |
LS1 |
Quadratic |
QP2 |
Linear |
LP |
In addition, the keywords LS and LSQ are equivalent to the default option LS1, and the keyword QP is equivalent to the option QP2.
If
A=0, i.e., the objective function is purely linear, the efficiency of
e04nc may be increased by specifying
a as LP.
Rank Tolerance | r | Default =100ε or 10ε (see below) |
Note that this option does not apply to problems of type FP or LP.
The default value of r depends on the problem type. If A occurs as a least-squares matrix, as it does in problem types QP1, LS1 and LS3, then the default value of r is 100ε. In all other cases, A is treated as the ‘square root’ of the Hessian matrix H and r has the default value 10ε.
This parameter enables you to control the estimate of the triangular factor
R1 (see
[Main Iteration]). If
ρi denotes the function
ρi=maxR11,R22,…,Rii, the rank of
R is defined to be smallest index
i such that
Ri+1,i+1≤rρi+1. If
r≤0, the default value is used.