QPALM
1.2.5
Proximal Augmented Lagrangian method for Quadratic Programs
|
settings derived type with component defaults bound to C’s QPALMSettings
Definition at line 79 of file qpalm_fiface.F90.
Data Fields | |
integer(kind=integer_kind_qpalm) | max_iter = 10000 |
maximum number of iterations: > 0 | |
integer(kind=integer_kind_qpalm) | inner_max_iter = 100 |
maximum number of iterations per subproblem: > 0 | |
real(kind=real_kind_qpalm) | eps_abs = ten ** ( - 4 ) |
absolute convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0 | |
real(kind=real_kind_qpalm) | eps_rel = ten ** ( - 4 ) |
relative convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0 | |
real(kind=real_kind_qpalm) | eps_abs_in = 1.0_real_kind_qpalm |
intermediate absolute convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0 | |
real(kind=real_kind_qpalm) | eps_rel_in = 1.0_real_kind_qpalm |
intermediate relative convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0 | |
real(kind=real_kind_qpalm) | rho = 0.1_real_kind_qpalm |
tolerance scaling factor: 0 < rho < 1 | |
real(kind=real_kind_qpalm) | eps_prim_inf = ten ** ( - 5 ) |
primal infeasibility tolerance: >= 0 | |
real(kind=real_kind_qpalm) | eps_dual_inf = ten ** ( - 5 ) |
dual infeasibility tolerance: >= 0 | |
real(kind=real_kind_qpalm) | theta = 0.25_real_kind_qpalm |
penalty update criterion parameter: <= 1 | |
real(kind=real_kind_qpalm) | delta = 100.0_real_kind_qpalm |
penalty update factor: > 1 | |
real(kind=real_kind_qpalm) | sigma_max = ten ** 9 |
penalty factor cap: > 0 | |
real(kind=real_kind_qpalm) | sigma_init = 20.0_real_kind_qpalm |
initial penalty parameter (guideline): > 0 | |
integer(kind=integer_kind_qpalm) | proximal = 1 |
boolean, use proximal method of multipliers or not: in {0,1} | |
real(kind=real_kind_qpalm) | gamma_init = ten ** 7 |
initial proximal penalty parameter: > 0 | |
real(kind=real_kind_qpalm) | gamma_upd = 10.0_real_kind_qpalm |
proximal penalty update factor: >= 1 | |
real(kind=real_kind_qpalm) | gamma_max = ten ** 7 |
proximal penalty parameter cap: >= gamma_init | |
integer(kind=integer_kind_qpalm) | scaling = 10 |
scaling iterations, if 0 then scaling is disabled: >= 0 | |
integer(kind=integer_kind_qpalm) | nonconvex = 0 |
boolean, indicates whether the QP is nonconvex: in {0,1} | |
integer(kind=integer_kind_qpalm) | verbose = 1 |
boolean, write out progress: in {0,1} | |
integer(kind=integer_kind_qpalm) | print_iter = 1 |
frequency of printing: > 0 | |
integer(kind=integer_kind_qpalm) | warm_start = 0 |
boolean, warm start: in {0,1} | |
integer(kind=integer_kind_qpalm) | reset_newton_iter = 10000 |
frequency of performing a complete Cholesky factorization: > 0 | |
integer(kind=integer_kind_qpalm) | enable_dual_termination = 0 |
boolean, enable termination based on dual objective (useful in branch and bound): in {0,1} | |
real(kind=real_kind_qpalm) | dual_objective_limit = ten ** 20 |
termination value for the dual objective (useful in branch and bound) | |
real(kind=real_kind_qpalm) | time_limit = ten ** 20 |
time limit: > 0 | |
integer(kind=integer_kind_qpalm) | ordering = 1 |
ordering method for factorization: 0 No ordering is performed during the symbolic part of the factorization 1 Ordering method during the symbolic part of the factorization 2 The ordering was computed previously and is already stored | |
integer(kind=integer_kind_qpalm) | factorization_method = 2 |
factorize KKT or Schur complement: 0 factorize the kkt system 1 factorize the Schur complement 2 select automatically between kkt system and schur complemen | |
integer(kind=integer_kind_qpalm) | max_rank_update = 160 |
maximum rank for the sparse factorization update | |
real(kind=real_kind_qpalm) | max_rank_update_fraction = 0.1_real_kind_qpalm |
maximum rank (relative to n+m) for the factorization update | |
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::max_iter = 10000 |
maximum number of iterations: > 0
Definition at line 83 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::inner_max_iter = 100 |
maximum number of iterations per subproblem: > 0
Definition at line 87 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_abs = ten ** ( - 4 ) |
absolute convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0
Definition at line 92 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_rel = ten ** ( - 4 ) |
relative convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0
Definition at line 97 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_abs_in = 1.0_real_kind_qpalm |
intermediate absolute convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0
Definition at line 102 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_rel_in = 1.0_real_kind_qpalm |
intermediate relative convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0
Definition at line 107 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::rho = 0.1_real_kind_qpalm |
tolerance scaling factor: 0 < rho < 1
Definition at line 111 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_prim_inf = ten ** ( - 5 ) |
primal infeasibility tolerance: >= 0
Definition at line 115 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_dual_inf = ten ** ( - 5 ) |
dual infeasibility tolerance: >= 0
Definition at line 119 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::theta = 0.25_real_kind_qpalm |
penalty update criterion parameter: <= 1
Definition at line 123 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::delta = 100.0_real_kind_qpalm |
penalty update factor: > 1
Definition at line 127 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::sigma_max = ten ** 9 |
penalty factor cap: > 0
Definition at line 131 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::sigma_init = 20.0_real_kind_qpalm |
initial penalty parameter (guideline): > 0
Definition at line 135 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::proximal = 1 |
boolean, use proximal method of multipliers or not: in {0,1}
Definition at line 139 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::gamma_init = ten ** 7 |
initial proximal penalty parameter: > 0
Definition at line 143 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::gamma_upd = 10.0_real_kind_qpalm |
proximal penalty update factor: >= 1
Definition at line 147 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::gamma_max = ten ** 7 |
proximal penalty parameter cap: >= gamma_init
Definition at line 151 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::scaling = 10 |
scaling iterations, if 0 then scaling is disabled: >= 0
Definition at line 155 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::nonconvex = 0 |
boolean, indicates whether the QP is nonconvex: in {0,1}
Definition at line 159 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::verbose = 1 |
boolean, write out progress: in {0,1}
Definition at line 163 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::print_iter = 1 |
frequency of printing: > 0
Definition at line 167 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::warm_start = 0 |
boolean, warm start: in {0,1}
Definition at line 171 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::reset_newton_iter = 10000 |
frequency of performing a complete Cholesky factorization: > 0
Definition at line 175 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::enable_dual_termination = 0 |
boolean, enable termination based on dual objective (useful in branch and bound): in {0,1}
Definition at line 180 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::dual_objective_limit = ten ** 20 |
termination value for the dual objective (useful in branch and bound)
Definition at line 184 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::time_limit = ten ** 20 |
time limit: > 0
Definition at line 188 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::ordering = 1 |
ordering method for factorization: 0 No ordering is performed during the symbolic part of the factorization 1 Ordering method during the symbolic part of the factorization 2 The ordering was computed previously and is already stored
Definition at line 195 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::factorization_method = 2 |
factorize KKT or Schur complement: 0 factorize the kkt system 1 factorize the Schur complement 2 select automatically between kkt system and schur complemen
Definition at line 202 of file qpalm_fiface.F90.
integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::max_rank_update = 160 |
maximum rank for the sparse factorization update
Definition at line 206 of file qpalm_fiface.F90.
real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::max_rank_update_fraction = 0.1_real_kind_qpalm |
maximum rank (relative to n+m) for the factorization update
Definition at line 210 of file qpalm_fiface.F90.