ConicBundle
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ConicBundle::QPSolverParameters Class Reference

parameters for steering the termination criteria and solution method of the solver More...

#include <QPSolverParameters.hxx>

Inheritance diagram for ConicBundle::QPSolverParameters:
ConicBundle::QPSolverParametersObject ConicBundle::CBout

Public Member Functions

 QPSolverParameters (CBout *cb=0, int incr=-1)
 default constructor
 
virtual ~QPSolverParameters ()
 virtual destructor More...
 
CH_Matrix_Classes::Real QPget_min_objective_relprec () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_objective_gap_eps () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_primal_infeasibility_eps () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_dual_infeasibility_eps () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_lower_bound () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_upper_bound () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_lower_bound_gap_eps () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_upper_bound_gap_eps () const
 get this variable value
 
CH_Matrix_Classes::Integer QPget_maxiter () const
 get this variable value
 
QPKKTSolverObjectQPget_KKTsolver ()
 get this variable value
 
bool QPget_use_predictor_corrector () const
 get this variable value
 
bool QPget_use_neighborhood () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_nbh_ub () const
 get this variable value
 
CH_Matrix_Classes::Real QPget_nbh_lb () const
 get this variable value
 
bool QPget_use_socqp () const
 get this variable value
 
int QPset_min_objective_relprec (CH_Matrix_Classes::Real eps)
 set this variable value
 
int QPset_objective_gap_eps (CH_Matrix_Classes::Real eps)
 set this variable value
 
int QPset_primal_infeasibility_eps (CH_Matrix_Classes::Real eps)
 set this variable value
 
int QPset_dual_infeasibility_eps (CH_Matrix_Classes::Real eps)
 set this variable value
 
int QPset_lower_and_upper_bounds (CH_Matrix_Classes::Real lb, CH_Matrix_Classes::Real ub)
 set this variable value
 
int QPset_lower_bound_gap_eps (CH_Matrix_Classes::Real eps)
 set this variable value
 
int QPset_upper_bound_gap_eps (CH_Matrix_Classes::Real eps)
 set this variable value
 
int QPset_maxiter (CH_Matrix_Classes::Integer mi)
 set this variable value
 
int QPset_KKTsolver (QPKKTSolverObject *in_KKTsolver)
 delete previous solver and replace by the new one (should not be zero when calling the solver)
 
int QPset_use_predictor_corrector (bool upc)
 if set to true (=default), a predictor corrector approach is used for solving the KKT system (solve for barrier parameter mu=0, guess mu, solve again for this mu including some bilinear perturbation) otherwise the barrier parameter is set apriori and the step computed in one solve
 
int QPset_use_neighborhood (bool nbh)
 if set to true (default: false), the lines search is carried out with respect to the neighborhood polynomial ensuring the afte this step the point is again inside the neighborhood of the central path
 
int QPset_nbh_bounds (CH_Matrix_Classes::Real nbhlb, CH_Matrix_Classes::Real nbhub)
 set the upper bound on the neighborhood that should be ensured in curve searches; ensures eps_Real<=nbhlb<=nbhub (nbhub should be < 1. and <=.35 is safe)
 
int QPset_use_socqp (bool s)
 if set to true (default: false), the quadratic term is modelled via a second order cone approach
 
int QPset_allow_UQPSolver (bool allow)
 set to true/false if switching to the unconstrained solver is allowed or not
 
bool QPallow_UQPSolver ()
 set to true/false if switching to the unconstrained solver is allowed or not
 
- Public Member Functions inherited from ConicBundle::QPSolverParametersObject
virtual ~QPSolverParametersObject ()
 virtual destructor
 
- Public Member Functions inherited from ConicBundle::CBout
virtual void set_out (std::ostream *out=0, int print_level=1)
 Specifies the output level (out==NULL: no output at all, out!=NULL and level=0: errors and warnings, level>0 increasingly detailed information) More...
 
virtual void set_cbout (const CBout *cb, int incr=-1)
 Specifies the output level relative to the given CBout class. More...
 
void clear_cbout ()
 reset to default settings (out=0,print_level=1)
 
 CBout (const CBout *cb=0, int incr=-1)
 calls set_cbout
 
 CBout (std::ostream *outp, int pl=1)
 initialize correspondingly
 
 CBout (const CBout &cb, int incr=0)
 copy constructor
 
virtual bool cb_out (int pl=-1) const
 Returns true if out!=0 and (pl<print_level), pl<0 should be used for WARNINGS and ERRORS only, pl==0 for usual output.
 
std::ostream & get_out () const
 If cb_out() returned true, this returns the output stream, but it will abort if called with out==0.
 
std::ostream * get_out_ptr () const
 returns the pointer to the output stream
 
int get_print_level () const
 returns the print_level
 
virtual int mfile_data (std::ostream &out) const
 writes problem data to the given outstream
 

Private Member Functions

 QPSolverParameters (const QPSolverParameters &)
 blocked copy constructor
 
QPSolverParametersoperator= (const QPSolverParameters &)
 blocked assignment operator
 

Private Attributes

CH_Matrix_Classes::Real min_objective_relprec
 minimum relative precision in objective
 
CH_Matrix_Classes::Integer maxiter
 maxium iteration number, negative means no bound
 
bool allow_unconstrained
 allow switching to the internal UQPSolver if applicable
 
CH_Matrix_Classes::Real objective_gap_eps
 relative precision for gap between lower and upper objective values
 
CH_Matrix_Classes::Real primal_infeasibility_eps
 absolute precision for primal feasibility (groundset)
 
CH_Matrix_Classes::Real dual_infeasibility_eps
 absolute precision for dual feasibility
 
CH_Matrix_Classes::Real lower_bound
 optimal dual objective value should exceed that
 
CH_Matrix_Classes::Real upper_bound
 optimal primal objective should not exceed that
 
CH_Matrix_Classes::Real lower_bound_gap_eps
 relative size requirement of objective gap to primal value minus lower_bound
 
CH_Matrix_Classes::Real upper_bound_gap_eps
 relative size requirement of objective gap to upper_bound - dual value
 
QPKKTSolverObjectKKTsolver
 provides the routine described in QPKKTSolverObject, see also Internal QP Solver for linearly constrained groundsets
 
bool use_predictor_corrector
 default true, set to false if just one solve per KKT system is desired
 
bool use_neighborhood
 default false, set to true if the line search should ensure staying in the neighborhood
 
CH_Matrix_Classes::Real nbh_ub
 curve searches try to stay inside the neighborhood to this value
 
CH_Matrix_Classes::Real nbh_lb
 the barrier parameter reduction aims for this value and below this value a predictor step is allowed
 
bool use_socqp
 default false, set to true if the quadratic part should be modelled via a second order cone
 

Detailed Description

parameters for steering the termination criteria and solution method of the solver

Constructor & Destructor Documentation

◆ ~QPSolverParameters()

virtual ConicBundle::QPSolverParameters::~QPSolverParameters ( )
inlinevirtual

virtual destructor

defaults are set in QPSolver.cxx


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