ROC++  v1.2
Automatic Robust Optimization in C++
SolverModellerIF Class Referenceabstract

Class used to interface with deterministic optimization solvers. More...

#include <SolverModeller.hpp>

Collaboration diagram for SolverModellerIF:

Public Member Functions

 SolverModellerIF (const SolverParams &pSParams)
 Constructor of the SolverModellerIF class. More...
 
virtual ~SolverModellerIF ()
 Destructor of the SolverModellerIF class. More...
 
virtual void solve (ROCPPOptModelIF_Ptr pModelIn, bool writeSlnToFile=false, string fileName="", bool writeSlnToConsole=true, const map< string, double > &WSvars=(map< string, double >()), const map< string, int > &priorities=(map< string, int >()), bool deleteModel=false)=0
 
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
 
map< string, double > getSolution () const
 
double getSolution (string dvName) const
 
uint getOptStatus () const
 
virtual double getOptValue () const =0
 
virtual double getMIPGap () const =0
 
double getSolvingTime () const
 
bool isApplicable (ROCPPOptModelIF_Ptr pModelIn) const
 

Protected Member Functions

int getThreadsToRun () const
 

Protected Attributes

bool m_problemSolved
 
SolverParams m_pSParams
 
map< string, double > m_solution
 
resultParams m_results
 

Detailed Description

Class used to interface with deterministic optimization solvers.

Constructor & Destructor Documentation

◆ SolverModellerIF()

SolverModellerIF::SolverModellerIF ( const SolverParams pSParams)
inline

Constructor of the SolverModellerIF class.

◆ ~SolverModellerIF()

virtual SolverModellerIF::~SolverModellerIF ( )
inlinevirtual

Destructor of the SolverModellerIF class.

Member Function Documentation

◆ getEpAGapLimit()

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

◆ getEpGapLimit()

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

◆ getEpIntLimit()

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

◆ getEpOptLimit()

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

◆ getEpRHSLimit()

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

◆ getMIPGap()

virtual double SolverModellerIF::getMIPGap ( ) const
pure virtual

◆ getOptStatus()

uint SolverModellerIF::getOptStatus ( ) const

◆ getOptValue()

virtual double SolverModellerIF::getOptValue ( ) const
pure virtual

◆ getSolution() [1/2]

map<string, double> SolverModellerIF::getSolution ( ) const
inline

◆ getSolution() [2/2]

double SolverModellerIF::getSolution ( string  dvName) const

◆ getSolvingTime()

double SolverModellerIF::getSolvingTime ( ) const

◆ getSOSeps()

double SolverModellerIF::getSOSeps ( ) const
inline

◆ getThreadsToRun()

int SolverModellerIF::getThreadsToRun ( ) const
protected

◆ getTimeLimit()

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

◆ isApplicable()

bool SolverModellerIF::isApplicable ( ROCPPOptModelIF_Ptr  pModelIn) const

◆ solve()

virtual void SolverModellerIF::solve ( ROCPPOptModelIF_Ptr  pModelIn,
bool  writeSlnToFile = false,
string  fileName = "",
bool  writeSlnToConsole = true,
const map< string, double > &  WSvars = (map< string, double >()),
const map< string, int > &  priorities = (map< string, int >()),
bool  deleteModel = false 
)
pure virtual

Member Data Documentation

◆ m_problemSolved

bool SolverModellerIF::m_problemSolved
protected

◆ m_pSParams

SolverParams SolverModellerIF::m_pSParams
protected

◆ m_results

resultParams SolverModellerIF::m_results
protected

◆ m_solution

map<string, double> SolverModellerIF::m_solution
protected