#include <CouenneRecordBestSol.hpp>
Public Member Functions | |
CouenneRecordBestSol () | |
Constructor. | |
CouenneRecordBestSol (const CouenneRecordBestSol &other) | |
Copy constructor. | |
~CouenneRecordBestSol () | |
Destructor. | |
int | getCardInitDom () const |
bool * | getInitIsInt () const |
std::vector< int > | getListInt () const |
void | setInitIsInt (const bool *givenIsInt, const int givenCard) |
CouNumber * | getInitDomLb () const |
void | setInitDomLb (const CouNumber *givenLb, const int givenCard) |
CouNumber * | getInitDomUb () const |
void | setInitDomUb (const CouNumber *givenUb, const int givenCard) |
void | setHasSol (const bool givenHasSol) |
bool | getHasSol () const |
void | setSol (const double *givenSol, const int givenCard, const double givenMaxViol) |
int | getCardSol () const |
void | setCardSol (const int givenCard) |
double * | getSol () const |
double | getMaxViol () const |
void | setVal (const double givenVal) |
double | getVal () |
void | update (const double *givenSol, const int givenCard, const double givenVal, const double givenMaxViol) |
void | update () |
int | compareAndSave (const double *solA, const double solAVal, const double solAMaxViol, const bool solAIsFeas, const double *solB, const double solBVal, const double solBMaxViol, const bool solBIsFeas, const int cardSol, const double precision) |
int | getCardModSol () const |
double * | getModSol (const int expectedCard) |
double | getModSolVal () const |
double | getModSolMaxViol () const |
void | setModSol (const double *givenModSol, const int givenModCard, const double givenModVal, const double givenModMaxViol) |
void | printSol (FILE *fsol) const |
Public Attributes | |
int | cardInitDom |
bool * | initIsInt |
std::vector< int > | listInt |
CouNumber * | initDomLb |
CouNumber * | initDomUb |
bool | hasSol |
int | cardSol |
double * | sol |
double | val |
double | maxViol |
int | cardModSol |
double * | modSol |
double | modSolVal |
double | modSolMaxViol |
Definition at line 21 of file CouenneRecordBestSol.hpp.
CouenneRecordBestSol::CouenneRecordBestSol | ( | ) |
Constructor.
Definition at line 24 of file CouenneRecordBestSol.cpp.
References cardInitDom, cardModSol, cardSol, hasSol, initDomLb, initDomUb, initIsInt, maxViol, modSol, modSolMaxViol, modSolVal, sol, and val.
Referenced by Couenne::CouenneProblem::CouenneProblem().
CouenneRecordBestSol::CouenneRecordBestSol | ( | const CouenneRecordBestSol & | other | ) |
Copy constructor.
Definition at line 44 of file CouenneRecordBestSol.cpp.
References cardInitDom, cardModSol, cardSol, hasSol, initDomLb, initDomUb, initIsInt, listInt, maxViol, modSol, modSolMaxViol, modSolVal, sol, and val.
CouenneRecordBestSol::~CouenneRecordBestSol | ( | ) |
Destructor.
Definition at line 93 of file CouenneRecordBestSol.cpp.
References cardInitDom, initDomLb, initDomUb, initIsInt, modSol, and sol.
int Couenne::CouenneRecordBestSol::getCardInitDom | ( | ) | const [inline] |
bool* Couenne::CouenneRecordBestSol::getInitIsInt | ( | ) | const [inline] |
Definition at line 64 of file CouenneRecordBestSol.hpp.
References initIsInt.
Referenced by Couenne::CouenneProblem::checkNLP2().
std::vector<int> Couenne::CouenneRecordBestSol::getListInt | ( | ) | const [inline] |
Definition at line 65 of file CouenneRecordBestSol.hpp.
References listInt.
Referenced by Couenne::CouenneProblem::checkNLP2().
void CouenneRecordBestSol::setInitIsInt | ( | const bool * | givenIsInt, | |
const int | givenCard | |||
) |
Definition at line 111 of file CouenneRecordBestSol.cpp.
References cardInitDom, initIsInt, and listInt.
Referenced by Couenne::CouenneProblem::reformulate().
CouNumber* Couenne::CouenneRecordBestSol::getInitDomLb | ( | ) | const [inline] |
Definition at line 68 of file CouenneRecordBestSol.hpp.
References initDomLb.
Referenced by Couenne::CouenneProblem::checkNLP2().
void CouenneRecordBestSol::setInitDomLb | ( | const CouNumber * | givenLb, | |
const int | givenCard | |||
) |
Definition at line 141 of file CouenneRecordBestSol.cpp.
References cardInitDom, and initDomLb.
Referenced by Couenne::CouenneProblem::reformulate().
CouNumber* Couenne::CouenneRecordBestSol::getInitDomUb | ( | ) | const [inline] |
Definition at line 70 of file CouenneRecordBestSol.hpp.
References initDomUb.
Referenced by Couenne::CouenneProblem::checkNLP2().
void CouenneRecordBestSol::setInitDomUb | ( | const CouNumber * | givenUb, | |
const int | givenCard | |||
) |
Definition at line 163 of file CouenneRecordBestSol.cpp.
References cardInitDom, and initDomUb.
Referenced by Couenne::CouenneProblem::reformulate().
void CouenneRecordBestSol::setHasSol | ( | const bool | givenHasSol | ) |
bool Couenne::CouenneRecordBestSol::getHasSol | ( | ) | const [inline] |
Definition at line 74 of file CouenneRecordBestSol.hpp.
References hasSol.
Referenced by Couenne::CouenneSetup::addMilpCutGenerators(), Couenne::CouenneCutGenerator::generateCuts(), main(), Couenne::CouenneCutGenerator::printLineInfo(), and Couenne::CouenneSolverInterface< T >::resolve().
void CouenneRecordBestSol::setSol | ( | const double * | givenSol, | |
const int | givenCard, | |||
const double | givenMaxViol | |||
) |
int Couenne::CouenneRecordBestSol::getCardSol | ( | ) | const [inline] |
void CouenneRecordBestSol::setCardSol | ( | const int | givenCard | ) |
double* Couenne::CouenneRecordBestSol::getSol | ( | ) | const [inline] |
Definition at line 79 of file CouenneRecordBestSol.hpp.
References sol.
Referenced by Couenne::CouenneIterativeRounding::feasibilityIR(), Couenne::CouenneIterativeRounding::improvementIR(), main(), and Couenne::CouenneFeasPump::solution().
double Couenne::CouenneRecordBestSol::getMaxViol | ( | ) | const [inline] |
void CouenneRecordBestSol::setVal | ( | const double | givenVal | ) |
Definition at line 220 of file CouenneRecordBestSol.cpp.
Referenced by Couenne::CouenneSetup::addMilpCutGenerators(), and update().
double Couenne::CouenneRecordBestSol::getVal | ( | ) | [inline] |
Definition at line 82 of file CouenneRecordBestSol.hpp.
References val.
Referenced by Couenne::CouenneIterativeRounding::feasibilityIR(), Couenne::CouenneCutGenerator::generateCuts(), Couenne::CouenneProblem::getIntegerCandidate(), Couenne::CouenneIterativeRounding::improvementIR(), main(), Couenne::CouenneCutGenerator::printLineInfo(), Couenne::CouenneSolverInterface< T >::resolve(), and Couenne::CouenneFeasPump::solution().
void CouenneRecordBestSol::update | ( | const double * | givenSol, | |
const int | givenCard, | |||
const double | givenVal, | |||
const double | givenMaxViol | |||
) |
Definition at line 231 of file CouenneRecordBestSol.cpp.
References hasSol, setSol(), setVal(), and val.
Referenced by Couenne::CouenneInterface::extractLinearRelaxation(), Couenne::CouenneIterativeRounding::feasibilityIR(), Couenne::CouenneProblem::getIntegerCandidate(), Couenne::CouenneIterativeRounding::improvementIR(), Couenne::CouenneProblem::reformulate(), Couenne::CouenneSolverInterface< T >::resolve(), Couenne::CouenneChooseStrong::setupList(), Couenne::CouenneFeasPump::solution(), and Couenne::NlpSolveHeuristic::solution().
void CouenneRecordBestSol::update | ( | ) |
Definition at line 240 of file CouenneRecordBestSol.cpp.
References cardModSol, modSol, modSolMaxViol, and modSolVal.
Referenced by compareAndSave().
int CouenneRecordBestSol::compareAndSave | ( | const double * | solA, | |
const double | solAVal, | |||
const double | solAMaxViol, | |||
const bool | solAIsFeas, | |||
const double * | solB, | |||
const double | solBVal, | |||
const double | solBMaxViol, | |||
const bool | solBIsFeas, | |||
const int | cardSol, | |||
const double | precision | |||
) |
int Couenne::CouenneRecordBestSol::getCardModSol | ( | ) | const [inline] |
Definition at line 105 of file CouenneRecordBestSol.hpp.
References cardModSol.
Referenced by main().
double * CouenneRecordBestSol::getModSol | ( | const int | expectedCard | ) |
Definition at line 312 of file CouenneRecordBestSol.cpp.
References cardModSol, and modSol.
Referenced by Couenne::CouenneIterativeRounding::feasibilityIR(), Couenne::CouenneIterativeRounding::improvementIR(), Couenne::InitHeuristic::InitHeuristic(), main(), and Couenne::CouenneFeasPump::solution().
double Couenne::CouenneRecordBestSol::getModSolVal | ( | ) | const [inline] |
Definition at line 107 of file CouenneRecordBestSol.hpp.
References modSolVal.
Referenced by Couenne::CouenneInterface::extractLinearRelaxation(), Couenne::CouenneIterativeRounding::feasibilityIR(), Couenne::CouenneIterativeRounding::improvementIR(), Couenne::InitHeuristic::InitHeuristic(), main(), Couenne::CouenneSolverInterface< T >::resolve(), Couenne::CouenneFeasPump::solution(), and Couenne::NlpSolveHeuristic::solution().
double Couenne::CouenneRecordBestSol::getModSolMaxViol | ( | ) | const [inline] |
Definition at line 108 of file CouenneRecordBestSol.hpp.
References modSolMaxViol.
Referenced by main().
void CouenneRecordBestSol::setModSol | ( | const double * | givenModSol, | |
const int | givenModCard, | |||
const double | givenModVal, | |||
const double | givenModMaxViol | |||
) |
Definition at line 327 of file CouenneRecordBestSol.cpp.
References cardModSol, modSol, modSolMaxViol, and modSolVal.
Referenced by Couenne::CouenneProblem::checkNLP2().
void CouenneRecordBestSol::printSol | ( | FILE * | fsol | ) | const |
Definition at line 26 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getCardInitDom(), setInitDomLb(), setInitDomUb(), setInitIsInt(), and ~CouenneRecordBestSol().
Definition at line 28 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getInitIsInt(), setInitIsInt(), and ~CouenneRecordBestSol().
std::vector<int> Couenne::CouenneRecordBestSol::listInt |
Definition at line 30 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getListInt(), and setInitIsInt().
Definition at line 32 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getInitDomLb(), setInitDomLb(), and ~CouenneRecordBestSol().
Definition at line 34 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getInitDomUb(), setInitDomUb(), and ~CouenneRecordBestSol().
Definition at line 37 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getHasSol(), setHasSol(), setVal(), and update().
Definition at line 39 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getCardSol(), printSol(), setCardSol(), and setSol().
Definition at line 41 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getSol(), printSol(), setSol(), and ~CouenneRecordBestSol().
Definition at line 43 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getVal(), printSol(), setVal(), and update().
Definition at line 45 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getMaxViol(), printSol(), and setSol().
Definition at line 48 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getCardModSol(), getModSol(), setModSol(), and update().
Definition at line 49 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), Couenne::CouenneInterface::extractLinearRelaxation(), getModSol(), setModSol(), setSol(), update(), and ~CouenneRecordBestSol().
Definition at line 50 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getModSolVal(), setModSol(), and update().
Definition at line 51 of file CouenneRecordBestSol.hpp.
Referenced by CouenneRecordBestSol(), getModSolMaxViol(), setModSol(), and update().