shark::QpStoppingCondition Struct Reference

stopping conditions for quadratic programming More...

#include <shark/Algorithms/QP/QuadraticProgram.h>

Public Member Functions

 QpStoppingCondition (double accuracy=0.001, unsigned long long iterations=0xffffffff, double value=1e100, double seconds=1e100)
 Constructor. More...
 

Public Attributes

double minAccuracy
 minimum accuracy to be achieved, usually KKT violation More...
 
unsigned long long maxIterations
 maximum number of decomposition iterations (default to 0 - not used) More...
 
double targetValue
 target objective function value (defaults to 1e100 - not used) More...
 
double maxSeconds
 maximum process time (defaults to 1e100 - not used) More...
 

Detailed Description

stopping conditions for quadratic programming

The QpStoppingCondition structure defines conditions for stopping the optimization procedure.
For practical considerations the solvers supports several stopping conditions. Usually, the optimization stops if the Karush-Kuhn-Tucker (KKT) condition for optimality are satisfied up to a certain accuracy. In the case the optimal function value is known a priori it is possible to stop as soon as the objective is above a given threshold. In both cases it is very difficult to predict the runtime. Therefore the solver can stop after a predefined number of iterations or after a predefined time period. In these cases the solution found will not be near optimal. In SVM training, using sensitive settings, this should happen only during model selection while investigating hyperparameters with poor generalization ability.

Definition at line 96 of file QuadraticProgram.h.

Constructor & Destructor Documentation

◆ QpStoppingCondition()

shark::QpStoppingCondition::QpStoppingCondition ( double  accuracy = 0.001,
unsigned long long  iterations = 0xffffffff,
double  value = 1e100,
double  seconds = 1e100 
)
inline

Constructor.

Definition at line 99 of file QuadraticProgram.h.

References maxIterations, maxSeconds, minAccuracy, and targetValue.

Member Data Documentation

◆ maxIterations

unsigned long long shark::QpStoppingCondition::maxIterations

maximum number of decomposition iterations (default to 0 - not used)

Definition at line 111 of file QuadraticProgram.h.

Referenced by QpStoppingCondition(), shark::QpConfig::setMaxIterations(), and shark::QpSolver< Problem, SelectionStrategy >::solve().

◆ maxSeconds

double shark::QpStoppingCondition::maxSeconds

maximum process time (defaults to 1e100 - not used)

Definition at line 117 of file QuadraticProgram.h.

Referenced by QpStoppingCondition(), shark::QpConfig::setMaxSeconds(), and shark::QpSolver< Problem, SelectionStrategy >::solve().

◆ minAccuracy

double shark::QpStoppingCondition::minAccuracy

minimum accuracy to be achieved, usually KKT violation

Definition at line 108 of file QuadraticProgram.h.

Referenced by main(), QpStoppingCondition(), shark::QpConfig::setMinAccuracy(), and shark::QpSolver< Problem, SelectionStrategy >::solve().

◆ targetValue

double shark::QpStoppingCondition::targetValue

target objective function value (defaults to 1e100 - not used)

Definition at line 114 of file QuadraticProgram.h.

Referenced by QpStoppingCondition(), and shark::QpConfig::setTargetValue().


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