qpb_control_type structure#

    struct qpb_control_type{T}
      f_indexing::Bool
      error::Int32
      out::Int32
      print_level::Int32
      start_print::Int32
      stop_print::Int32
      maxit::Int32
      itref_max::Int32
      cg_maxit::Int32
      indicator_type::Int32
      restore_problem::Int32
      extrapolate::Int32
      path_history::Int32
      factor::Int32
      max_col::Int32
      indmin::Int32
      valmin::Int32
      infeas_max::Int32
      precon::Int32
      nsemib::Int32
      path_derivatives::Int32
      fit_order::Int32
      sif_file_device::Int32
      infinity::T
      stop_p::T
      stop_d::T
      stop_c::T
      theta_d::T
      theta_c::T
      beta::T
      prfeas::T
      dufeas::T
      muzero::T
      reduce_infeas::T
      obj_unbounded::T
      pivot_tol::T
      pivot_tol_for_dependencies::T
      zero_pivot::T
      identical_bounds_tol::T
      inner_stop_relative::T
      inner_stop_absolute::T
      initial_radius::T
      mu_min::T
      inner_fraction_opt::T
      indicator_tol_p::T
      indicator_tol_pd::T
      indicator_tol_tapia::T
      cpu_time_limit::T
      clock_time_limit::T
      remove_dependencies::Bool
      treat_zero_bounds_as_general::Bool
      center::Bool
      primal::Bool
      puiseux::Bool
      feasol::Bool
      array_syntax_worse_than_do_loop::Bool
      space_critical::Bool
      deallocate_error_fatal::Bool
      generate_sif_file::Bool
      sif_file_name::NTuple{31,Cchar}
      prefix::NTuple{31,Cchar}
      lsqp_control::lsqp_control_type{T}
      fdc_control::fdc_control_type{T}
      sbls_control::sbls_control_type{T}
      gltr_control::gltr_control_type{T}
      fit_control::fit_control_type

detailed documentation#

control derived type as a Julia structure

components#

Bool f_indexing

use C or Fortran sparse matrix indexing

Int32 error

error and warning diagnostics occur on stream error

Int32 out

general output occurs on stream out

Int32 print_level

the level of output required is specified by print_level

Int32 start_print

any printing will start on this iteration

Int32 stop_print

any printing will stop on this iteration

Int32 maxit

at most maxit inner iterations are allowed

Int32 itref_max

the maximum number of iterative refinements allowed

Int32 cg_maxit

the maximum number of CG iterations allowed. If cg_maxit < 0, this number will be reset to the dimension of the system + 1

Int32 indicator_type

specifies the type of indicator function used. Pssible values are

  • 1 primal indicator: constraint active <=> distance to nearest bound <= .indicator_p_tol

  • 2 primal-dual indicator: constraint active <=> distance to nearest bound <= .indicator_tol_pd * size of corresponding multiplier

  • 3 primal-dual indicator: constraint active <=> distance to nearest bound <= .indicator_tol_tapia * distance to same bound at previous iteration

Int32 restore_problem

indicate whether and how much of the input problem should be restored on output. Possible values are

  • 0 nothing restored

  • 1 scalar and vector parameters

  • 2 all parameters

Int32 extrapolate

should extrapolation be used to track the central path? Possible values

  • 0 never

  • 1 after the final major iteration

  • 2 at each major iteration

Int32 path_history

the maximum number of previous path points to use when fitting the data

Int32 factor

the factorization to be used. Possible values are

  • 0 automatic

  • 1 Schur-complement factorization

  • 2 augmented-system factorization

Int32 max_col

the maximum number of nonzeros in a column of A which is permitted with the Schur-complement factorization

Int32 indmin

an initial guess as to the integer workspace required by SBLS

Int32 valmin

an initial guess as to the real workspace required by SBLS

Int32 infeas_max

the number of iterations for which the overall infeasibility of the problem is not reduced by at least a factor .reduce_infeas before the problem is flagged as infeasible (see reduce_infeas)

Int32 precon

the preconditioner to be used for the CG is defined by precon. Possible values are

  • 0 automatic

  • 1 no preconditioner, i.e, the identity within full factorization

  • 2 full factorization

  • 3 band within full factorization

  • 4 diagonal using the barrier terms within full factorization

Int32 nsemib

the semi-bandwidth of a band preconditioner, if appropriate

Int32 path_derivatives

the maximum order of path derivative to use

Int32 fit_order

the order of (Puiseux) series to fit to the path data: <=0 to fit all data

Int32 sif_file_device

specifies the unit number to write generated SIF file describing the current problem

T infinity

any bound larger than infinity in modulus will be regarded as infinite

T stop_p

the required accuracy for the primal infeasibility

T stop_d

the required accuracy for the dual infeasibility

T stop_c

the required accuracy for the complementarity

T theta_d

tolerances used to terminate the inner iteration (for given mu): dual feasibility <= MAX( theta_d * mu ** beta, 0.99 * stop_d ) complementarity <= MAX( theta_c * mu ** beta, 0.99 * stop_d )

T theta_c

see theta_d

T beta

see theta_d

T prfeas

initial primal variables will not be closer than prfeas from their bound

T dufeas

initial dual variables will not be closer than dufeas from their bounds

T muzero

the initial value of the barrier parameter. If muzero is not positive, it will be reset to an appropriate value

T reduce_infeas

if the overall infeasibility of the problem is not reduced by at least a factor reduce_infeas over .infeas_max iterations, the problem is flagged as infeasible (see infeas_max)

T obj_unbounded

if the objective function value is smaller than obj_unbounded, it will be flagged as unbounded from below.

T pivot_tol

the threshold pivot used by the matrix factorization. See the documentation for SBLS for details

T pivot_tol_for_dependencies

the threshold pivot used by the matrix factorization when attempting to detect linearly dependent constraints. See the documentation for FDC for details

T zero_pivot

any pivots smaller than zero_pivot in absolute value will be regarded to zero when attempting to detect linearly dependent constraints

T identical_bounds_tol

any pair of constraint bounds (c_l,c_u) or (x_l,x_u) that are closer than identical_bounds_tol will be reset to the average of their values

T inner_stop_relative

the search direction is considered as an acceptable approximation to the minimizer of the model if the gradient of the model in the preconditioning(inverse) norm is less than max( inner_stop_relative * initial preconditioning(inverse) gradient norm, inner_stop_absolute )

T inner_stop_absolute

see inner_stop_relative

T initial_radius

the initial trust-region radius

T mu_min

start terminal extrapolation when mu reaches mu_min

T inner_fraction_opt

a search direction which gives at least inner_fraction_opt times the optimal model decrease will be found

T indicator_tol_p

if .indicator_type = 1, a constraint/bound will be deemed to be active <=> distance to nearest bound <= .indicator_p_tol

T indicator_tol_pd

if .indicator_type = 2, a constraint/bound will be deemed to be active <=> distance to nearest bound <= .indicator_tol_pd * size of corresponding multiplier

T indicator_tol_tapia

if .indicator_type = 3, a constraint/bound will be deemed to be active <=> distance to nearest bound <= .indicator_tol_tapia * distance to same bound at previous iteration

T cpu_time_limit

the maximum CPU time allowed (-ve means infinite)

T clock_time_limit

the maximum elapsed clock time allowed (-ve means infinite)

Bool remove_dependencies

the equality constraints will be preprocessed to remove any linear dependencies if true

Bool treat_zero_bounds_as_general

any problem bound with the value zero will be treated as if it were a general value if true

Bool center

if .center is true, the algorithm will use the analytic center of the feasible set as its initial feasible point. Otherwise, a feasible point as close as possible to the initial point will be used. We recommend using the analytic center

Bool primal

if .primal, is true, a primal barrier method will be used in place of t primal-dual method

Bool puiseux

If extrapolation is to be used, decide between Puiseux and Taylor series.

Bool feasol

if .feasol is true, the final solution obtained will be perturbed so that variables close to their bounds are moved onto these bounds

Bool array_syntax_worse_than_do_loop

if .array_syntax_worse_than_do_loop is true, f77-style do loops will be used rather than f90-style array syntax for vector operations

Bool space_critical

if .space_critical true, every effort will be made to use as little space as possible. This may result in longer computation time

Bool deallocate_error_fatal

if .deallocate_error_fatal is true, any array/pointer deallocation error will terminate execution. Otherwise, computation will continue

Bool generate_sif_file

if .generate_sif_file is .true. if a SIF file describing the current problem is to be generated

NTuple{31,Cchar} sif_file_name

name of generated SIF file containing input problem

NTuple{31,Cchar} prefix

all output lines will be prefixed by .prefix(2:LEN(TRIM(.prefix))-1) where .prefix contains the required string enclosed in quotes, e.g. “string” or ‘string’

struct lsqp_control_type lsqp_control

control parameters for LSQP

struct fdc_control_type fdc_control

control parameters for FDC

struct sbls_control_type sbls_control

control parameters for SBLS

struct gltr_control_type gltr_control

control parameters for GLTR

struct fit_control_type fit_control

control parameters for FIT