Go to the documentation of this file.
5 #ifndef OsiRowCutDebugger_H
6 #define OsiRowCutDebugger_H
44 const std::string &mpsDir);
101 bool keepContinuous =
false);
153 bool enforceOptimality =
false);
int printOptimalSolution(const OsiSolverInterface &si) const
Print optimal solution (returns -1 bad debug, 0 on optimal, 1 not)
double knownValue_
Value of known solution.
double * knownSolution_
array specifying known solution
virtual bool invalidCut(const OsiRowCut &rowcut) const
Check that the cut does not cut off the solution known to the debugger.
int numberColumns_
Number of columns in known solution.
Collections of row cuts and column cuts.
void redoSolution(int numberColumns, const int *originalColumns)
Edit the known solution to reflect column changes.
int numberColumns() const
Return the number of columns in the known solution.
bool * integerVariable_
array specifying integer variables
bool onOptimalPath(const OsiSolverInterface &si) const
Returns true if the solution held in the solver is compatible with the known solution.
OsiRowCutDebugger & operator=(const OsiRowCutDebugger &rhs)
Assignment operator.
bool activate(const OsiSolverInterface &si, const char *model)
Activate a debugger using the name of a problem.
double optimalValue() const
Return the value of the objective for the known solution.
OsiRowCutDebugger()
Default constructor - no checking.
bool active() const
Returns true if the debugger is active.
Validate cuts against a known solution.
const double * optimalSolution() const
Return the known solution.
virtual ~OsiRowCutDebugger()
Destructor.
friend void OsiRowCutDebuggerUnitTest(const OsiSolverInterface *siP, const std::string &mpsDir)
A function that tests the methods in the OsiRowCutDebugger class.
Abstract Base Class for describing an interface to a solver.
virtual int validateCuts(const OsiCuts &cs, int first, int last) const
Check that the set of cuts does not cut off the solution known to the debugger.