QPALM main
Proximal Augmented Lagrangian method for Quadratic Programs
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
qpalm::Settings Struct Reference

#include <qpalm.hpp>

Detailed Description

Settings and parameters for the QPALM solver.

Examples
examples/cxx/qpalm_demo.cpp.

Definition at line 110 of file qpalm.hpp.

+ Inheritance diagram for qpalm::Settings:
+ Collaboration diagram for qpalm::Settings:

Public Member Functions

 Settings ()
 Construct with default settings.
 

Data Fields

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

Constructor & Destructor Documentation

◆ Settings()

qpalm::Settings::Settings ( )

Construct with default settings.

See also
qpalm_set_default_settings

Definition at line 23 of file qpalm.cpp.

+ Here is the call graph for this function:

Field Documentation

◆ max_iter

c_int QPALMSettings::max_iter
inherited

maximum number of iterations

Note
Assumption: \(>0\)
Examples
examples/cxx/qpalm_demo.cpp.

Definition at line 125 of file types.h.

◆ inner_max_iter

c_int QPALMSettings::inner_max_iter
inherited

maximum number of iterations per subproblem

Note
Assumption: \(>0\)

Definition at line 126 of file types.h.

◆ eps_abs

c_float QPALMSettings::eps_abs
inherited

absolute convergence tolerance

Note
Assumption: \(>=0\), either eps_abs or eps_rel must be \(>0\)
Examples
examples/cxx/qpalm_demo.cpp.

Definition at line 127 of file types.h.

◆ eps_rel

c_float QPALMSettings::eps_rel
inherited

relative convergence tolerance

Note
Assumption: \(>=0\), either eps_abs or eps_rel must be \(>0\)
Examples
examples/cxx/qpalm_demo.cpp.

Definition at line 128 of file types.h.

◆ eps_abs_in

c_float QPALMSettings::eps_abs_in
inherited

intermediate absolute convergence tolerance

Note
Assumption: \(>=0\), either eps_abs_in or eps_rel_in must be \(>0\)

Definition at line 129 of file types.h.

◆ eps_rel_in

c_float QPALMSettings::eps_rel_in
inherited

intermediate relative convergence tolerance

Note
Assumption: \(>=0\), either eps_abs_in or eps_rel_in must be \(>0\)

Definition at line 130 of file types.h.

◆ rho

c_float QPALMSettings::rho
inherited

tolerance scaling factor

Note
Assumption: \(0<\rho<1\)

Definition at line 131 of file types.h.

◆ eps_prim_inf

c_float QPALMSettings::eps_prim_inf
inherited

primal infeasibility tolerance

Note
Assumption: \(>=0\)

Definition at line 132 of file types.h.

◆ eps_dual_inf

c_float QPALMSettings::eps_dual_inf
inherited

dual infeasibility tolerance

Note
Assumption: \(>=0\)

Definition at line 133 of file types.h.

◆ theta

c_float QPALMSettings::theta
inherited

penalty update criterion parameter

Note
Assumption: \(<=1\)

Definition at line 134 of file types.h.

◆ delta

c_float QPALMSettings::delta
inherited

penalty update factor

Note
Assumption: \(>1\)

Definition at line 135 of file types.h.

◆ sigma_max

c_float QPALMSettings::sigma_max
inherited

penalty factor cap

Note
Assumption: \(>0\)

Definition at line 136 of file types.h.

◆ sigma_init

c_float QPALMSettings::sigma_init
inherited

initial penalty parameter (guideline)

Note
Assumption: \(>0\)

Definition at line 137 of file types.h.

◆ proximal

c_int QPALMSettings::proximal
inherited

boolean, use proximal method of multipliers or not

Note
Assumption: \(\in \{0,1\}\)

Definition at line 138 of file types.h.

◆ gamma_init

c_float QPALMSettings::gamma_init
inherited

initial proximal penalty parameter

Note
Assumption: \(>0\)

Definition at line 139 of file types.h.

◆ gamma_upd

c_float QPALMSettings::gamma_upd
inherited

proximal penalty update factor

Note
Assumption: \(>=1\)

Definition at line 140 of file types.h.

◆ gamma_max

c_float QPALMSettings::gamma_max
inherited

proximal penalty parameter cap

Note
Assumption: \(>=\gamma_\textrm{init}\)

Definition at line 141 of file types.h.

◆ scaling

c_int QPALMSettings::scaling
inherited

scaling iterations, if 0 then scaling is disabled

Note
Assumption: \(>=0\)

Definition at line 142 of file types.h.

◆ nonconvex

c_int QPALMSettings::nonconvex
inherited

boolean, indicates whether the QP is nonconvex

Note
Assumption: \(\in \{0,1\}\)

Definition at line 143 of file types.h.

◆ verbose

c_int QPALMSettings::verbose
inherited

boolean, write out progress

Note
Assumption: \(\in \{0,1\}\)

Definition at line 144 of file types.h.

◆ print_iter

c_int QPALMSettings::print_iter
inherited

frequency of printing

Note
Assumption: \(>0\)

Definition at line 145 of file types.h.

◆ warm_start

c_int QPALMSettings::warm_start
inherited

boolean, warm start

Note
Assumption: \(\in \{0,1\}\)

Definition at line 146 of file types.h.

◆ reset_newton_iter

c_int QPALMSettings::reset_newton_iter
inherited

frequency of performing a complete Cholesky factorization

Note
Assumption: \(>0\)

Definition at line 147 of file types.h.

◆ enable_dual_termination

c_int QPALMSettings::enable_dual_termination
inherited

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

Note
Assumption: \(\in \{0,1\}\)

Definition at line 148 of file types.h.

◆ dual_objective_limit

c_float QPALMSettings::dual_objective_limit
inherited

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

Note
Assumption: none

Definition at line 149 of file types.h.

◆ time_limit

c_float QPALMSettings::time_limit
inherited

time limit

Note
Assumption: \(>0\)

Definition at line 150 of file types.h.

◆ ordering

c_int QPALMSettings::ordering
inherited

ordering method for factorization

Definition at line 151 of file types.h.

◆ factorization_method

c_int QPALMSettings::factorization_method
inherited

factorize KKT or Schur complement

Definition at line 152 of file types.h.

◆ max_rank_update

c_int QPALMSettings::max_rank_update
inherited

maximum rank for the sparse factorization update

Definition at line 153 of file types.h.

◆ max_rank_update_fraction

c_float QPALMSettings::max_rank_update_fraction
inherited

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

Definition at line 154 of file types.h.


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