« Previous « Start » Next »
5 BOS.options
Description
All parameters not specified by the user are automatically set to
their default values. Any optional parameters that are set by the
user are altered by calling the solvers SPRNLP, SPRLS, SPRQP,
BARNLP, BARLS, and BARQP. Many of the optional inputs are used both
by the SQP algorithms (SPRNLP, SPRLS, SPRQP) and the barrier
algorithms (BARNLP, BARLS, BARQP). Input parameters that apply only
to the SQP algorithms are indicated as “SQP Only.” Similarly,
input parameters that are applicable to the barrier algorithms are
denoted by “Barrier Only.”
HDMCON is a system dependent parameter.
5.1 Convergence and Termination Tolerances
The following optional inputs can be used to control convergence
and termination:
| Symbol |
Default |
Description |
| |
| CONTOL |
є1 /2 |
Constraint tolerance, δc
≥ є1 /2, where є = HDMCON(5). |
| |
| OBJTOL |
10−7 |
Objective function tolerance, δo,
where δo ≥ max(10є,δc ) |
| |
| PGDTOL |
10−5 |
Projected gradient tolerance,
δp, where 10є < δp ≤ .01 |
| |
| MAXNFE |
10000 |
Maximum number of function
evaluations. |
| |
| NITMAX |
100 |
Maximum number of iterations.
NITMAX ≥ max (1,NITMIN). |
| |
| NITMIN |
0 |
Minimum number of iterations. |
| |
5.2 Line Search
The following inputs can be used to control the line search:
| Symbol |
Default |
Description |
| |
| SLPTOL |
0.9 |
Slope tolerance δs for line search during
optimization phase, where 10−5 < δs < 1. (SQP Only) |
| |
| SFZTOL |
.01 |
Slope tolerance δs for line search during
feasibility phase, where 10−5 < δs < 1. (SQP Only) |
| |
| IT1MAX |
20 |
Maximum number of steps for line search. IT1MAX ≥ 1. |
| |
5.3 Line Search Diagnostic Plot File
A file named 'LYNPLT.FIL' containing information suitable for a
diagnostic plot can be created from data available during the line
search. The following inputs can be used to control the diagnostic
output written on the file:
| Symbol |
Default |
Description |
| |
| ALFLWR |
0.0 |
Lower bound on steplength, i.e. the
independent variable for the plot file. |
| |
| ALFUPR |
1.0 |
Upper bound on steplength, i.e. the independent
variable for the plot file. |
| |
| LYNFNC |
0 |
Number of the dependent function to be plotted. When
LYNFNC = 0, the file will contain the merit or log-barrier
function and objective function. When LYNFNC = i, the file will
contain constraint i, Lagrange multiplier i, and slack variable i. |
| |
| LYNOUT |
0 |
Output unit number for line search plot
file. |
| |
| LYNPLT |
0 |
Iteration number to create line search plot file (and
then stop). |
| |
| LYNPNT |
101 |
Number of equally spaced points
between ALFLWR and ALFUPR to evaluate quantities. |
| |
| LYNVAR |
0 |
Number of the independent function to be plotted.
When LYNVAR = 0, the file will contain the value of the
steplength α. When LYNVAR = i, the file will contain the
steplength α, variable i, and bound slack variable i. |
| |
The first line of the file produced contains the following four
integers: LYNPNT, NCOLS, LYNVAR, LYNFNC. Subsequently the file
contains LYNPNT rows of data, displayed in NCOLS columns.
| Input Parameters |
Output Line |
| |
| LYNVAR=0 and LYNFNC=0 |
αk,M(αk) or
β(αk),f(αk). |
| |
| LYNVAR=0 and LYNFNC=i |
αk,ci(αk),λi(αk),si(αk). |
| |
| LYNVAR=i and LYNFNC=0 |
αk,xi(αk),ti(αk),M(αk)
or β(αk),f(αk). |
| |
| LYNVAR=i and LYNFNC=i |
αk,xi(αk),ti(αk),ci(αk),λi(αk),si(αk). |
| |
where 1 ≤
i ≤
m and 1 ≤
k ≤ LYNPNT. After the
LYNPNT rows of line search data, three additional pieces of
information are written. The number of variables NDIM, the vector
XBAR containing the nominal value
x (at α = 0), and the
search direction VECP, where
x =
x + α
p.
5.4 Barrier Algorithm Inputs
The following inputs can be used to control the behavior of the
barrier algorithms BARNLP, BARLS, and BARQP:
| Symbol |
Default |
Description |
| |
| BIGCON |
100. |
Upper Bound on Equality Constraint Error. All
iterates must satisfy the bound c(y(k)) ∞ ≤ max
{ c(y(0)) ∞,BIGCON }. |
| |
| FEATOL |
.001 |
Initial Variable Offset for Feasibility. The
initial (feasible) point for the barrier algorithm yk
is constructed from the user supplied guess yk0 according
to:
| α |
= |
max[FEATOL,FEATOL|yk0|] |
| δ |
= |
min[α,.5|yUk−yLk|] |
| yk |
= |
max{yLk + δ, min[yk0,yUk −
δ] }. |
|
| |
| PMULWR |
.1 |
Lower Bound on Initial Barrier Parameter; PMULWR >
є where є = HDMCON(5). |
| |
| PTHTOL |
10. |
Central Path Convergence Tolerance; PTHTOL >
√є where є = HDMCON(5). The barrier
parameter μ is reduced when Fμ < min[κ μ, PTHTOL ]. Thus a small value for
PTHTOL will force accurate location of the central path. |
| |
| RHOLWR |
100. |
Lower Bound on Initial Relaxation Parameter
ρ; RHOLWR > є where є = HDMCON(5).
For a well-posed problem ρ
≈ (η,λ) ∞ and RHOLWR ≤ ρ. |
| |
| IMAXMU |
10 |
Maximum Number of Iterations Nu with
Fixed Barrier Parameter; IMAXMU ≥ 1. |
| |
| MXQPIT |
1 |
Maximum Number of Barrier QP
Iterations. |
| |
| MUCALC |
3 |
Barrier/Multiplier Initialization Option; MUCALC
1,± 2, ± 3. There are three basic options where the symbol
∼ denotes the minimum norm least squares solution. |
| |
Option 1 (MUCALC = 1). Solve
| μ |
= |
PMULWR |
| λ |
= |
μ Db−1 e |
| CTη |
∼ |
g − BTλ. |
Option 2 (MUCALC = ± 2). Solve
λ = max[μ, PMULWR ]Db−1 e.
If MUCALC = 2 and μ < PMULWR, recompute
using Option 1.
Option 3 (MUCALC = ± 3). Solve
λ = max[є, λ].
where є = HDMCON(5). If MUCALC = 3 and
μ < PMULWR, recompute using Option 1.
5.5 Output Control
The basic iteration output levels can be specified using the input
IOFLAG described below. Additional output control is available
using one or more of the other flags listed.
| Symbol |
Default |
Description |
| |
| |
| IOFLAG |
10 |
Output level;
0≤IOFLAG≤30. |
| |
IOFLAG=0 |
No Output. |
| |
0<IOFLAG<10 |
Terse Output. |
| |
10≤IOFLAG<20 |
Standard Output. |
| |
20≤IOFLAG<30 |
Interpretive Output. |
| |
30=IOFLAG |
Diagnostic Output. |
| |
| IPUNLP |
6 |
Output unit number for
iteration output from algorithms. |
| |
| IOFLIN |
−1 |
Line search output level. A value of IOFLIN > 0
overrides the default, which is to set IOFLIN=IOFLAG.
|
| |
| IOFMFR |
0 |
Maximum Number of Barrier QP
Iterations. |
| |
| IMAXMU |
10 |
Output level flag for multifrontal linear algebra
software (cf BCSLIB-EXT [1]). |
| |
IOFMFR≤0 |
No Output. |
| |
IOFMFR=1 |
Error messages and summary statistics. |
| |
IOFMFR=2 |
More complete statistics. |
| |
IOFMFR=3 |
First stage of debugging output. |
| |
IOFMFR≥4 |
Complete debugging output. |
| |
| IOFPAT |
0 |
Sparsity pattern output flag .
Sparsity output may be written on the standard output unit or to
an external file. A value of IOFPAT ≥ 10 produces sparsity
pattern output. No sparsity output is produced
for IOFPAT < 10. Three possibilities exist: |
| |
IOFLAG=30 |
Sparsity output on standard
unit IPUNLP (equivalent to IOFPAT=10.) |
| |
IOFPAT= L |
Sparsity output on standard
unit IPUNLP. IOFPAT ≥ 10 and equal to one of the values in
the list L = (10, IPUDRF, IPUFZF, IPUMF1, IPUMF2, IPUMF3,
IPUMF4, IPUMF5, IPUMF6, IPUMF7, IPUSTF). |
| |
IOFPAT≠ L |
Sparsity output on file
'SPRPAT.FIL' on unit IOFPAT. IOFPAT ≥ 10 and different than
all values in the list L = (10, IPUDRF, IPUFZF, IPUMF1, IPUMF2,
IPUMF3, IPUMF4, IPUMF5, IPUMF6, IPUMF7, IPUSTF). |
| |
| IOFSHR |
0 |
The Schur-complement or Barrier QP output level. A
value of IOFSHR ≥ 0 overrides the default, which is to set
IOFSHR=0, for IOFLAG<30 and IOFSHR = IOFLAG
otherwise. |
| |
| IOFSRC |
0 |
Feasibility search output level. A value of IOFSRC
> 0 overrides the default, which is
to set IOFSRC=IOFLAG. (SQP Only) |
| |
| ITDRQP |
−1 |
If ITDRQP > 0, the input to the Schur-complement
QP will be dumped as file 'SRCHDRQP.FIL' on optimization iteration
number ITDRQP and then the processing will terminate. (SQP Only) |
| |
| IPUDRF |
0 |
Output unit for the
Schur-complement QP dump from SQP. (SQP Only) |
| |
| ITFZQP |
−1 |
If ITFZQP > 0, the input to the Schur-complement
QP will be dumped as file 'SRCHFZQP.FIL' on feasibility iteration
number ITFZQP and then the processing will
terminate. (SQP Only) |
| |
| IPUFZF |
0 |
Output unit for the Schur-complement QP dump from
feasibility search. (SQP Only) |
| |
| IPUSTF |
0 |
If IPUSTF > 0, the input to the Schur-complement QP
will be dumped as file 'QPSTRTQP.FIL' on output unit number
IPUSTF, during the QPSTRT Lagrange multiplier calculations and
then the processing will
terminate. (SQP Only) |
| |
| IPUMF1 |
11 |
Multifrontal I/O unit (see
XSSLIN in BCSLIB-EXT [1]). |
| |
| IPUMF2 |
12 |
Multifrontal I/O unit (see XSSLIN in
BCSLIB-EXT [1]). |
| |
| IPUMF3 |
13 |
Multifrontal I/O
unit (see XSSLIN in BCSLIB-EXT [1]). |
| |
| IPUMF4 |
14 |
Multifrontal I/O unit (see
XSSLIN in BCSLIB-EXT [1]). |
| |
| IPUMF5 |
15 |
Multifrontal I/O unit (see XSSLIN in
BCSLIB-EXT [1]). |
| |
| IPUMF6 |
16 |
Multifrontal I/O
unit (see XSSLIN in BCSLIB-EXT [1]). |
| |
| IPUMF7 |
17 |
Multifrontal I/O unit (see XSSLIN in
BCSLIB-EXT [1]). |
| |
| MAXLYN |
5 |
Maximum
number of output lines for arrays. |
| |
5.6 Algorithm Strategy Control
| Symbol |
Default |
Description |
| |
| TOLFIL |
2 |
Tolerance used to detect
excessive fill in the multifrontal method;
0≤TOLFIL. A larger value of TOLFIL will permit
additional fill. |
| |
| TOLKTC |
є−1.6 |
Tolerance for the condition number of
the KKT matrix, where є = HDMCON(5). Iterative
refinement is initiated when the condition number exceeds TOLKTC.
TOLKTC is also used by the RRQR algorithm when computing rank. |
| |
| TOLPVT |
10−3 |
Multifrontal pivot tolerance used to balance
between sparsity and numeric stability; 0≤TOLPVT≤.5. A
small value reduces fill, and a large
value improves stability. |
| |
| IRELAX |
1 |
Constraint relaxation
strategy option flag; IRELAX=0,1. (IRELAX=2, Barrier
Only). |
| |
IRELAX=0 |
Do not switch to relaxation
strategy. |
| |
IRELAX=1 |
Switch to relaxation
strategy if necessary to make progress. |
| |
IRELAX=2 |
Always use relaxation
strategy. (Barrier Only) |
| |
| JACPRM |
0 |
Jacobian permutation option
flag; JACPRM=0,1. (SQP Only) |
| |
JACPRM=0 |
Return Jacobian matrix in
internal (permuted) order during function evaluations. |
| |
JACPRM=1 |
Restore Jacobian matrix to
original external order during function evaluations. |
| |
| NEWTON |
0 |
Newton method option flag;
NEWTON=0,1. (NEWTON=2, Barrier Only). |
| |
NEWTON=0 |
Evaluate Hessian as needed
to make good progress (not necessarily each optimization
iteration). |
| |
NEWTON=1 |
Evaluate Hessian on each
optimization iteration. |
| |
NEWTON=2 |
Do not evaluate Hessian on
any iteration. (Barrier Only) |
| |
| ALGOPT |
FM (0) |
Algorithm control option.
|
| |
ALGOPT=FM (0) |
Find feasible point then
minimize (SQP Default). |
| |
ALGOPT=FME (1) |
Find feasible point then minimize
with equalities binding. (SQP Only) |
| |
ALGOPT=M (2) |
Minimize from the initial
point (Barrier Default). |
| |
ALGOPT=F (3) |
Find feasible point only. |
| |
ALGOPT=LLSQ (8) |
Linear Least Squares
(only valid for HDSLSQ). |
| |
| KTOPTN |
SMALL (0) |
KKT Matrix Factorization
option. |
| |
KTOPTN=SMALL (0) |
Factor KKT matrix
consisting of active constraints (SQP Default). This is the default
and is recommended for problems with many inequality
constraints. Factor the condensed KKT matrix (Barrier Default). |
| |
KTOPTN=LARGE (1) |
Factor the augmented KKT
matrix with all constraints. |
| |
| QPOPTN |
SPARSE (0) |
Quadratic Programming Algorithm
option . |
| |
QPOPTN=SPARSE (0) |
Solve QP subproblem
using sparse Schur-complement method. |
| |
QPOPTN=DENSE (1) |
Solve QP subproblem
using dense null-space method. |
| |
5.7 Postoptimality Analysis
Additional analysis of the Kuhn-Tucker optimality conditions can
be invoked for diagnostic and/or interpretative purposes. This
analysis utilizes the rank revealing sparse QR (RRQR) software (cf
BCSLIB-EXT [
1]), and can be invoked only when
QPOPTN=SPARSE. Two types of postoptimality analysis are possible.
A first order analysis constructs information using gradient and
Jacobian matrices (i.e. first derivative information). A second
order analysis constructs information from the Jacobian and
Hessian matrices. A second order analysis is performed when the
active set and Lagrange multipliers are available, otherwise the
analysis is first order. The text at the end of this section
illustrates two common examples of the postoptimality analysis.
Execution of the postoptimality analysis is controlled by the
following input.
| Symbol |
Default |
Description |
| |
| IPOSTO |
0 |
Postoptimality analysis flag;
0≤IPOSTO≤3. |
| |
IPOSTO=0 |
No Postoptimality Analysis. |
| |
IPOSTO=1 |
Conditional Postoptimality
Analysis. An analysis is performed at the final point when the
NLP terminates with one of the following (nonstandard) values: IER
= −131, −132, −133, +101, +105, +107, +108,
+110, +111, +112, +113, +114. |
| |
IPOSTO=2 |
Postoptimality Analysis at
Termination. An analysis is performed at the final point
regardless of the value of IER. |
| |
IPOSTO=3 |
Postoptimality Analysis at
Initial Point. An analysis is performed at the initial point, and
the NLP is terminated with IER = +121. |
| |
| FEATOL |
.001 |
Initial Variable Offset for Feasibility. The
initial (feasible) point for the barrier algorithm yk
is constructed from the user supplied guess yk0 according
to: |
| |
The postoptimality algorithm displays diagnostic information on
the standard output unit. In addition, if rank deficiency is
detected this information is communicated to the user by
multiplying the standard values of ISTATC and/or ISTATV by ten.
Thus, if a constraint appears to be causing rank deficiency and is
active at its upper bound, the value of ISTATC(i) = 20.
>>>>>>>>>>> FIRST PROBLEM <<<<<<<<<<
0***** WARNING REPORTED BY SUBROUTINE HDSNLP
SEE HDSNLP ABSTRACT (IER = 121)
***** NLP ERROR from subroutine HDSNLP , IER = 121
TERMINATE AFTER POSTOPTIMALITY ANALYSIS
-------------------------------------------------------------------------------------------
| |
| SPRNLP ALGORITHM PERFORMANCE STATISTICS |
| |
| Total CPU Time.....................................................+2.163231E-03 |
| |
| Number of Function Calls.......................................................2 |
| Number of Gradient Calls.......................................................2 |
| Number of Hessian Calls........................................................1 |
| Total Number of Function Evaluations..........................................20 |
| |
| Excess Storage in HOLD Array................................................8719 |
| Excess Storage in IHOLD Array..................................................0 |
| |
-------------------------------------------------------------------------------------------
********************************************************************************************************
* *
* .....POSTOPTIMALITY ANALYSIS..... *
* *
********************************************************************************************************
* *
* SECOND ORDER ANALYSIS *
* *
* CONDITION NUMBER OF FULL RANK MATRIX...............................+4.38177 *
* TOLERANCE FOR COMPUTING RANK..................................+1.000000E+10 *
* ERROR IN VARIABLES............................................+2.081682E-17 *
* ERROR IN CONSTRAINT MULTIPLIERS...............................+1.204583E-07 *
* ERROR IN BOUND MULTIPLIERS..............................................+0. *
* *
* NUMBER OF REDUNDANT ROWS/COLUMNS IN THE HESSIAN................................1 *
* *
* REDUNDANT ROW/COLUMN NUMBERS: *
* *
* 2 *
* *
********************************************************************************************************
0***** INPUT ARGUMENT ERROR REPORTED BY SUBROUTINE HDSNLP
SEE HDSNLP ABSTRACT (IER = 121)
***** NLP ERROR from subroutine HDSNLP , IER = 121
TERMINATE AFTER POSTOPTIMALITY ANALYSIS
********************************************** FINAL POINT ********************************************
********************************************************************************************************
* *
* Objective Function = 0. IERNLP = 121 *
* *
* -------------------------------------------------------------------------------------------------- *
* *
* Variable Status Value Lower bound Upper bound Lagrange Mlt. Slack *
* *
* 1 FR 1.00000 -4.503600E+15 4.503600E+15 0. 4.5036E+15 *
* 2 FR -1.00000 -4.503600E+15 4.503600E+15 0. 4.5036E+15 *
* 3 FR 1.00000 -4.503600E+15 4.503600E+15 0. 4.5036E+15 *
* 4 FR 1.00000 -4.503600E+15 4.503600E+15 0. 4.5036E+15 *
* *
* -------------------------------------------------------------------------------------------------- *
* *
* Constraint Status Value Lower bound Upper bound Lagrange Mlt. Slack *
* *
* 1 EQ 0. 0. 0. -6.022917E-08 0. *
* 2 EQ 0. 0. 0. 1.204583E-07 0. *
* *
********************************************************************************************************
0***** PROCESS ERROR REPORTED BY SUBROUTINE HDNLPD
SEE HDNLPD ABSTRACT (IER = 121)
>>>>>>>>>>> SECOND PROBLEM <<<<<<<<<<
Feasible Point
It Qit Nkt Ndof KT Cond Step Norm p Violtn
1 3 2 2 1.9E+11 1.0E+00 7.1E-01 2.2E+00
2 3 2 2 1.9E+11 1.0E+00 1.6E-07 5.2E-07
3 0 0 2 1.9E+11 1.0E+00 1.6E-07 1.2E-13
-------------------------------------------------------------------------------------------
| |
| SPRNLP ALGORITHM PERFORMANCE STATISTICS |
| |
| Total CPU Time.....................................................+3.678764E-03 |
| |
| Number of Function Calls.......................................................4 |
| Number of Gradient Calls.......................................................3 |
| Number of Hessian Calls........................................................0 |
| Total Number of Function Evaluations..........................................16 |
| |
| Excess Storage in HOLD Array................................................8483 |
| Excess Storage in IHOLD Array..................................................0 |
| |
-------------------------------------------------------------------------------------------
********************************************************************************************************
* *
* .....POSTOPTIMALITY ANALYSIS..... *
* *
********************************************************************************************************
* *
* FIRST ORDER ANALYSIS *
* *
* CONDITION NUMBER OF FULL RANK MATRIX..........................+2.251800E+16 *
* TOLERANCE FOR COMPUTING RANK..................................+1.110953E+25 *
* *
********************************************************************************************************
*********************************************** SOLUTION ***********************************************
********************************************************************************************************
* *
* Objective Function = 6.50000 IERNLP = 0 *
* *
* -------------------------------------------------------------------------------------------------- *
* *
* Variable Status Value Lower bound Upper bound Lagrange Mlt. Slack *
* *
* 1 FR 1.50000 -4.503600E+15 4.503600E+15 1.00000 4.5036E+15 *
* 2 FR -1.50000 -4.503600E+15 4.503600E+15 1.00000 4.5036E+15 *
* 3 FR 1.00000 -4.503600E+15 4.503600E+15 1.00000 4.5036E+15 *
* 4 FR 1.00000 -4.503600E+15 4.503600E+15 1.00000 4.5036E+15 *
* *
* -------------------------------------------------------------------------------------------------- *
* *
* Constraint Status Value Lower bound Upper bound Lagrange Mlt. Slack *
* *
* 1 EQ 5.373479E-14 0. 0. 1.00000 -5.3735E-14 *
* 2 EQ 1.074696E-13 0. 0. 1.00000 -1.0747E-13 *
* *
********************************************************************************************************
« Previous « Start » Next »