QPALM
A proximal augmented Lagrangian method for QPs.
Data Fields
QPALMSettings Struct Reference

Settings struct. More...

#include <types.h>

Data Fields

c_int max_iter
 maximum number of iterations More...
 
c_int inner_max_iter
 maximum number of iterations per subproblem More...
 
c_float eps_abs
 absolute convergence tolerance More...
 
c_float eps_rel
 relative convergence tolerance More...
 
c_float eps_abs_in
 intermediate absolute convergence tolerance More...
 
c_float eps_rel_in
 intermediate relative convergence tolerance More...
 
c_float rho
 tolerance scaling factor More...
 
c_float eps_prim_inf
 primal infeasibility tolerance More...
 
c_float eps_dual_inf
 dual infeasibility tolerance More...
 
c_float theta
 penalty update criterion parameter More...
 
c_float delta
 penalty update factor More...
 
c_float sigma_max
 penalty factor cap More...
 
c_float sigma_init
 initial penalty parameter (guideline) More...
 
c_int proximal
 boolean, use proximal method of multipliers or not More...
 
c_float gamma_init
 initial proximal penalty parameter More...
 
c_float gamma_upd
 proximal penalty update factor More...
 
c_float gamma_max
 proximal penalty parameter cap More...
 
c_int scaling
 scaling iterations, if 0 then scaling is disabled More...
 
c_int nonconvex
 boolean, indicates whether the QP is nonconvex More...
 
c_int verbose
 boolean, write out progress More...
 
c_int print_iter
 frequency of printing More...
 
c_int warm_start
 boolean, warm start More...
 
c_int reset_newton_iter
 frequency of performing a complete Cholesky factorization More...
 
c_int enable_dual_termination
 boolean, enable termination based on dual objective (useful in branch and bound) More...
 
c_float dual_objective_limit
 termination value for the dual objective (useful in branch and bound) More...
 
c_float time_limit
 time limit More...
 
c_int ordering
 ordering method for factorization More...
 
c_int factorization_method
 factorize KKT or Schur complement More...
 
c_int max_rank_update
 maximum rank for the sparse factorization update More...
 
c_float max_rank_update_fraction
 maximum rank (relative to n+m) for the factorization update More...
 

Detailed Description

Settings struct.

Field Documentation

◆ delta

c_float QPALMSettings::delta

penalty update factor

Note
Assumption: $>1$

◆ dual_objective_limit

c_float QPALMSettings::dual_objective_limit

termination value for the dual objective (useful in branch and bound)

Note
Assumption: none

◆ enable_dual_termination

c_int QPALMSettings::enable_dual_termination

boolean, enable termination based on dual objective (useful in branch and bound)

Note
Assumption: $\in \{0,1\}$

◆ eps_abs

c_float QPALMSettings::eps_abs

absolute convergence tolerance

Note
Assumption: $>=0$, either eps_abs or eps_rel must be $>0$

◆ eps_abs_in

c_float QPALMSettings::eps_abs_in

intermediate absolute convergence tolerance

Note
Assumption: $>=0$, either eps_abs_in or eps_rel_in must be $>0$

◆ eps_dual_inf

c_float QPALMSettings::eps_dual_inf

dual infeasibility tolerance

Note
Assumption: $>=0$

◆ eps_prim_inf

c_float QPALMSettings::eps_prim_inf

primal infeasibility tolerance

Note
Assumption: $>=0$

◆ eps_rel

c_float QPALMSettings::eps_rel

relative convergence tolerance

Note
Assumption: $>=0$, either eps_abs or eps_rel must be $>0$

◆ eps_rel_in

c_float QPALMSettings::eps_rel_in

intermediate relative convergence tolerance

Note
Assumption: $>=0$, either eps_abs_in or eps_rel_in must be $>0$

◆ factorization_method

c_int QPALMSettings::factorization_method

factorize KKT or Schur complement

◆ gamma_init

c_float QPALMSettings::gamma_init

initial proximal penalty parameter

Note
Assumption: $>0$

◆ gamma_max

c_float QPALMSettings::gamma_max

proximal penalty parameter cap

Note
Assumption: $>=\gamma_\textrm{init}$

◆ gamma_upd

c_float QPALMSettings::gamma_upd

proximal penalty update factor

Note
Assumption: $>=1$

◆ inner_max_iter

c_int QPALMSettings::inner_max_iter

maximum number of iterations per subproblem

Note
Assumption: $>0$

◆ max_iter

c_int QPALMSettings::max_iter

maximum number of iterations

Note
Assumption: $>0$

◆ max_rank_update

c_int QPALMSettings::max_rank_update

maximum rank for the sparse factorization update

◆ max_rank_update_fraction

c_float QPALMSettings::max_rank_update_fraction

maximum rank (relative to n+m) for the factorization update

◆ nonconvex

c_int QPALMSettings::nonconvex

boolean, indicates whether the QP is nonconvex

Note
Assumption: $\in \{0,1\}$

◆ ordering

c_int QPALMSettings::ordering

ordering method for factorization

◆ print_iter

c_int QPALMSettings::print_iter

frequency of printing

Note
Assumption: $>0$

◆ proximal

c_int QPALMSettings::proximal

boolean, use proximal method of multipliers or not

Note
Assumption: $\in \{0,1\}$

◆ reset_newton_iter

c_int QPALMSettings::reset_newton_iter

frequency of performing a complete Cholesky factorization

Note
Assumption: $>0$

◆ rho

c_float QPALMSettings::rho

tolerance scaling factor

Note
Assumption: $0<\rho<1$

◆ scaling

c_int QPALMSettings::scaling

scaling iterations, if 0 then scaling is disabled

Note
Assumption: $>=0$

◆ sigma_init

c_float QPALMSettings::sigma_init

initial penalty parameter (guideline)

Note
Assumption: $>0$

◆ sigma_max

c_float QPALMSettings::sigma_max

penalty factor cap

Note
Assumption: $>0$

◆ theta

c_float QPALMSettings::theta

penalty update criterion parameter

Note
Assumption: $<=1$

◆ time_limit

c_float QPALMSettings::time_limit

time limit

Note
Assumption: $>0$

◆ verbose

c_int QPALMSettings::verbose

boolean, write out progress

Note
Assumption: $\in \{0,1\}$

◆ warm_start

c_int QPALMSettings::warm_start

boolean, warm start

Note
Assumption: $\in \{0,1\}$

The documentation for this struct was generated from the following file: