ROC++  v1.2
Automatic Robust Optimization in C++
SolverParams Class Reference

Class to store the solver parameters. More...

#include <SolverModeller.hpp>

Public Member Functions

 SolverParams (bool useLazyNACs=false, bool verbose=true, pair< bool, double > epIntLimit=make_pair(false, 0.), pair< bool, double > timeLimit=make_pair(false, 0.), pair< bool, double > epGapLimit=make_pair(false, 1.e-4), pair< bool, double > epAGapLimit=make_pair(false, 1.e-10), pair< bool, double > epOptLimit=make_pair(false, 1.e-6), pair< bool, double > epRHSLimit=make_pair(false, 1.e-9), double SOSeps=1.e-20)
 Constructor of the SolverParams class. More...
 
 ~SolverParams ()
 
void setTimeLimit (pair< bool, double > timeLimit)
 
void setEpGapLimit (pair< bool, double > epGapLimit)
 
void setEpIntLimit (pair< bool, double > epIntLimit)
 
void printMainSolverParamsToScreen () const
 
string getColumnTitlesOfOutputDataFile () const
 
string getParams (string delimitter) const
 
pair< bool, double > getTimeLimit () const
 
pair< bool, double > getEpGapLimit () const
 
pair< bool, double > getEpAGapLimit () const
 
pair< bool, double > getEpOptLimit () const
 
pair< bool, double > getEpRHSLimit () const
 
pair< bool, double > getEpIntLimit () const
 
double getSOSeps () const
 
bool getVerbose () const
 
bool useLazyNACs () const
 

Private Attributes

bool m_useLazyNACs
 
pair< bool, double > m_timeLimit
 
pair< bool, double > m_epGapLimit
 
pair< bool, double > m_epAGapLimit
 
pair< bool, double > m_epOptLimit
 
pair< bool, double > m_epRHSLimit
 
pair< bool, double > m_epIntLimit
 
double m_SOSeps
 
bool m_verbose
 

Detailed Description

Class to store the solver parameters.

Constructor & Destructor Documentation

◆ SolverParams()

SolverParams::SolverParams ( bool  useLazyNACs = false,
bool  verbose = true,
pair< bool, double >  epIntLimit = make_pair(false,0.),
pair< bool, double >  timeLimit = make_pair(false,0.),
pair< bool, double >  epGapLimit = make_pair(false,1.e-4),
pair< bool, double >  epAGapLimit = make_pair(false,1.e-10),
pair< bool, double >  epOptLimit = make_pair(false,1.e-6),
pair< bool, double >  epRHSLimit = make_pair(false,1.e-9),
double  SOSeps = 1.e-20 
)
inline

Constructor of the SolverParams class.

Parameters
useLazyNACsindicates if the decision-dependent non-anticipativity constraints will be added as lazy constraints
verboseindicates if the detail of the solver iterations will be displayed
epIntLimitfirst parameter indicates if an integer feasibility tolerance is set, second parameter indicates the value of the limit
timeLimitfirst parameter indicates if a time limit is set, second parameter indicates the value of the limit
epGapLimitfirst parameter indicates if an MIP gap is set, second parameter indicates the value of the gap
epAGapLimitfirst parameter indicates if an MIP absolute gap is set, second parameter indicates the value of the gap
epOptLimitfirst parameter indicates if an optimality tolerance is set, second parameter indicates the value of the tolerance
epRHSLimitfirst parameter indicates if a feasibility tolerance is set, second parameter indicates the value of the tolerance

◆ ~SolverParams()

SolverParams::~SolverParams ( )
inline

Member Function Documentation

◆ getColumnTitlesOfOutputDataFile()

string SolverParams::getColumnTitlesOfOutputDataFile ( ) const

◆ getEpAGapLimit()

pair<bool,double> SolverParams::getEpAGapLimit ( ) const
inline

◆ getEpGapLimit()

pair<bool,double> SolverParams::getEpGapLimit ( ) const
inline

◆ getEpIntLimit()

pair<bool,double> SolverParams::getEpIntLimit ( ) const
inline

◆ getEpOptLimit()

pair<bool,double> SolverParams::getEpOptLimit ( ) const
inline

◆ getEpRHSLimit()

pair<bool,double> SolverParams::getEpRHSLimit ( ) const
inline

◆ getParams()

string SolverParams::getParams ( string  delimitter) const

◆ getSOSeps()

double SolverParams::getSOSeps ( ) const
inline

◆ getTimeLimit()

pair<bool,double> SolverParams::getTimeLimit ( ) const
inline

◆ getVerbose()

bool SolverParams::getVerbose ( ) const
inline

◆ printMainSolverParamsToScreen()

void SolverParams::printMainSolverParamsToScreen ( ) const

◆ setEpGapLimit()

void SolverParams::setEpGapLimit ( pair< bool, double >  epGapLimit)
inline

◆ setEpIntLimit()

void SolverParams::setEpIntLimit ( pair< bool, double >  epIntLimit)
inline

◆ setTimeLimit()

void SolverParams::setTimeLimit ( pair< bool, double >  timeLimit)
inline

◆ useLazyNACs()

bool SolverParams::useLazyNACs ( ) const
inline

Member Data Documentation

◆ m_epAGapLimit

pair<bool,double> SolverParams::m_epAGapLimit
private

◆ m_epGapLimit

pair<bool,double> SolverParams::m_epGapLimit
private

◆ m_epIntLimit

pair<bool,double> SolverParams::m_epIntLimit
private

◆ m_epOptLimit

pair<bool,double> SolverParams::m_epOptLimit
private

◆ m_epRHSLimit

pair<bool,double> SolverParams::m_epRHSLimit
private

◆ m_SOSeps

double SolverParams::m_SOSeps
private

◆ m_timeLimit

pair<bool,double> SolverParams::m_timeLimit
private

◆ m_useLazyNACs

bool SolverParams::m_useLazyNACs
private

◆ m_verbose

bool SolverParams::m_verbose
private