#include <Heuristics.hpp>
Collaboration diagram for Heuristics:
Public Member Functions | |
Heuristics (const int, const int, const int, const double, const double *, const double *, const double **, const double **, const double *, const char *, const double *, const double *, const double *, const double *, const OsiSolverInterface *si, Tracer *tracer) | |
~Heuristics () | |
double | bestObj () |
double * | bestSol () |
double | currObj () |
int | run () |
Private Member Functions | |
int | update (double *, double) |
int | heurLP_improveSolution (double *) |
int | processSol (double *, bool, double *, double *) |
double * | xxTHeur () |
double * | MNHeur () |
Private Attributes | |
const int | n_ |
const int | t_ |
int | N_ |
const int | cons_ |
const double | objConst_ |
const double * | b_ |
const double * | c_ |
const double ** | Q_ |
const double ** | origMat_ |
const double * | origRhs_ |
const char * | origSense_ |
const double * | xlb_ |
const double * | xub_ |
const double * | ylb_ |
const double * | yub_ |
const OsiSolverInterface * | si_ |
double | currObj_ |
double | bestObj_ |
double * | bestSol_ |
bool * | heurLbRowAdded_ |
double * | xxTSol_ |
double * | MNSol_ |
double * | temp_row_ |
OsiXxxSolverInterface | MNLPSi_ |
OsiXxxSolverInterface | heurLPimproveSi_ |
Tracer * | tracer_ |
Definition at line 20 of file Heuristics.hpp.
Heuristics::Heuristics | ( | const | int, | |
const | int, | |||
const | int, | |||
const | double, | |||
const double * | , | |||
const double * | , | |||
const double ** | , | |||
const double ** | , | |||
const double * | , | |||
const char * | , | |||
const double * | , | |||
const double * | , | |||
const double * | , | |||
const double * | , | |||
const OsiSolverInterface * | si, | |||
Tracer * | tracer | |||
) |
Heuristics::~Heuristics | ( | ) |
Definition at line 174 of file Heuristics.cpp.
References bestSol_, heurLbRowAdded_, MNSol_, temp_row_, and xxTSol_.
int Heuristics::update | ( | double * | , | |
double | ||||
) | [private] |
Definition at line 506 of file Heuristics.cpp.
References bestObj_, bestSol_, currObj_, N_, and t_.
Referenced by processSol().
int Heuristics::heurLP_improveSolution | ( | double * | ) | [private] |
Definition at line 466 of file Heuristics.cpp.
References cons_, heurLbRowAdded_, heurLPimproveSi_, k, N_, origMat_, origRhs_, origSense_, and t_.
Referenced by processSol().
int Heuristics::processSol | ( | double * | , | |
bool | , | |||
double * | , | |||
double * | ||||
) | [private] |
Definition at line 394 of file Heuristics.cpp.
References b_, c_, cons_, evaluateSolution(), FEAS_CHECK_BOUNDS_VIOLATION, FEAS_CHECK_CONSTRAINT_VIOLATION, FEAS_CHECK_CONSTRAINT_VIOLATION_NO_RECOVER, FEAS_CHECK_NO_VIOLATION, feasibility_check(), heurLP_improveSolution(), N_, n_, objConst_, origMat_, origRhs_, origSense_, Q_, t_, update(), xlb_, xub_, ylb_, and yub_.
Referenced by run().
double * Heuristics::xxTHeur | ( | ) | [private] |
double * Heuristics::MNHeur | ( | ) | [private] |
double Heuristics::bestObj | ( | ) | [inline] |
double* Heuristics::bestSol | ( | ) | [inline] |
double Heuristics::currObj | ( | ) | [inline] |
int Heuristics::run | ( | ) |
Definition at line 182 of file Heuristics.cpp.
References bestObj_, currObj_, MNHeur(), processSol(), Tracer::setHeuristicsBestSolution(), Tracer::setHeuristicsCurrentSolution(), Tracer::setHeuristicsMNLPSolution(), Tracer::setHeuristicsMNLPSolutionLPHeuristicImprovement(), Tracer::setHeuristicsMNLPTime(), Tracer::setHeuristicsTime(), Tracer::setHeuristicsxxTSolution(), Tracer::setHeuristicsxxTSolutionLPHeuristicImprovement(), Tracer::setHeuristicsxxTTime(), Timer::start(), Timer::time(), tracer_, and xxTHeur().
Referenced by CutGen::updateSol().
const int Heuristics::n_ [private] |
Definition at line 22 of file Heuristics.hpp.
Referenced by Heuristics(), MNHeur(), processSol(), and xxTHeur().
const int Heuristics::t_ [private] |
Definition at line 23 of file Heuristics.hpp.
Referenced by Heuristics(), heurLP_improveSolution(), MNHeur(), processSol(), update(), and xxTHeur().
int Heuristics::N_ [private] |
Definition at line 24 of file Heuristics.hpp.
Referenced by Heuristics(), heurLP_improveSolution(), MNHeur(), processSol(), update(), and xxTHeur().
const int Heuristics::cons_ [private] |
Definition at line 25 of file Heuristics.hpp.
Referenced by Heuristics(), heurLP_improveSolution(), MNHeur(), and processSol().
const double Heuristics::objConst_ [private] |
const double* Heuristics::b_ [private] |
const double* Heuristics::c_ [private] |
const double** Heuristics::Q_ [private] |
const double** Heuristics::origMat_ [private] |
Definition at line 30 of file Heuristics.hpp.
Referenced by heurLP_improveSolution(), MNHeur(), and processSol().
const double* Heuristics::origRhs_ [private] |
Definition at line 31 of file Heuristics.hpp.
Referenced by heurLP_improveSolution(), and processSol().
const char* Heuristics::origSense_ [private] |
Definition at line 32 of file Heuristics.hpp.
Referenced by heurLP_improveSolution(), and processSol().
const double* Heuristics::xlb_ [private] |
const double* Heuristics::xub_ [private] |
const double* Heuristics::ylb_ [private] |
const double* Heuristics::yub_ [private] |
const OsiSolverInterface* Heuristics::si_ [private] |
double Heuristics::currObj_ [private] |
double Heuristics::bestObj_ [private] |
double* Heuristics::bestSol_ [private] |
Definition at line 41 of file Heuristics.hpp.
Referenced by bestSol(), Heuristics(), update(), and ~Heuristics().
bool* Heuristics::heurLbRowAdded_ [private] |
Definition at line 43 of file Heuristics.hpp.
Referenced by Heuristics(), heurLP_improveSolution(), and ~Heuristics().
double* Heuristics::xxTSol_ [private] |
Definition at line 47 of file Heuristics.hpp.
Referenced by Heuristics(), xxTHeur(), and ~Heuristics().
double* Heuristics::MNSol_ [private] |
Definition at line 50 of file Heuristics.hpp.
Referenced by Heuristics(), MNHeur(), and ~Heuristics().
double* Heuristics::temp_row_ [private] |
Definition at line 51 of file Heuristics.hpp.
Referenced by Heuristics(), MNHeur(), and ~Heuristics().
OsiXxxSolverInterface Heuristics::MNLPSi_ [private] |
Definition at line 54 of file Heuristics.hpp.
Referenced by Heuristics(), and heurLP_improveSolution().
Tracer* Heuristics::tracer_ [private] |