25 #if CBC_OTHER_SOLVER == 1
66 int solve(
int argc,
const char *argv[],
int returnMode);
73 int solve(
const char *input,
int returnMode);
339 int ,
const char * = NULL) {}
362 inline std::string
name()
const
369 virtual bool canDo(
const char *options) = 0;
virtual void exportSolution(CbcSolver *, int, const char *=NULL)
Export.
CbcStopNow()
Default Constructor.
The CbcSolver class was taken out at a 9/12/09 meeting This is a feeble replacement.
void updateModel(ClpSimplex *model2, int returnMode)
1 - add heuristics to model 2 - do heuristics (and set cutoff and best solution) 3 - for miplib test ...
CbcUser & operator=(const CbcUser &rhs)
Assignment operator.
void setDoubleValue(CbcOrClpParameterType type, double value)
Set double value.
std::vector< CbcOrClpParam > parameters_
Parameters and values.
CbcModel * babModel()
Return updated Cbc model.
CbcOrClpParameterType
Parameter codes.
A class to allow the use of unknown user functionality.
This is a simple minded model which is stored in a format which makes it easier to construct and modi...
CoinModel * coinModel() const
CoinModel if valid.
CbcModel model_
Reference model.
std::string name() const
Name.
OsiClpSolverInterface * originalSolver() const
Copy of model on initial load (will contain output solutions)
int intValue(CbcOrClpParameterType type) const
Get int value.
std::string userName_
Name of user function.
Base class for message handling.
int solve(int argc, const char *argv[], int returnMode)
This takes a list of commands, does "stuff" and returns returnMode - 0 model and solver untouched - b...
virtual CbcStopNow * clone() const
Clone.
CbcUser * userFunction(const char *name) const
User function (NULL if no match)
CoinModel * coinModel_
CoinModel.
double startTime_
Cpu time at instantiation.
CbcSolver & operator=(const CbcSolver &rhs)
Assignment operator.
void CbcMain0(CbcModel &babSolver)
void addCutGenerator(CglCutGenerator *generator)
Add cut generator.
OsiClpSolverInterface * originalSolver_
Copy of model on initial load (will contain output solutions)
~CbcSolverUsefulData()
Destructor.
virtual void fillInformation(CbcSolver *, CbcSolverUsefulData &)
Get useful stuff.
CbcUser()
Default Constructor.
CbcUser ** userFunctionArray() const
User function array.
void setOriginalCoinModel(CoinModel *originalCoinModel)
Copy of model on initial load.
void fillParameters()
Fill with standard parameters.
This allows the use of the standalone solver in a flexible manner.
CoinModel * originalCoinModel_
Copy of model on initial load.
virtual int callBack(CbcModel *, int)
Import.
CbcStopNow & operator=(const CbcStopNow &rhs)
Assignment operator.
int readMode_
Where to start reading commands.
std::vector< CbcOrClpParam > parameters_
int numberUserFunctions() const
Number of userFunctions.
virtual ~CbcStopNow()
Destructor.
virtual int importData(CbcSolver *, int &, char **)
Import - gets full command arguments.
CbcUser ** userFunction_
User functions.
int numberUserFunctions_
Number of user functions.
void setPrinting(bool onOff)
Whether to print to std::cout.
void setOriginalSolver(OsiClpSolverInterface *originalSolver)
Copy of model on initial load (will contain output solutions)
Structure to hold useful arrays.
int * analyze(OsiClpSolverInterface *solverMod, int &numberChanged, double &increment, bool changeInt, CoinMessageHandler *generalMessageHandler)
1 - add heuristics to model 2 - do heuristics (and set cutoff and best solution) 3 - for miplib test ...
virtual CbcUser * clone() const =0
Clone.
CglCutGenerator ** cutGeneratorArray() const
Cut generator array.
Support the use of a call back class to decide whether to stop.
void setUserCallBack(CbcStopNow *function)
Set user call back.
int CbcMain1(int argc, const char *argv[], CbcModel &babSolver)
double doubleValue(CbcOrClpParameterType type) const
Get double value.
CbcSolverUsefulData()
Default Constructor.
int numberCutGenerators() const
Number of cutgenerators.
int numberCutGenerators_
Number of cut generators.
bool noPrinting_
Whether to print to std::cout.
This is a first attempt at a message handler.
This solves LPs using the simplex method.
virtual void * stuff()
Other info - needs expanding.
virtual bool canDo(const char *options)=0
Returns true if function knows about option.
Cut Generator Base Class.
CbcModel * babModel_
Updated model.
virtual void solve(CbcSolver *model, const char *options)=0
Solve (whatever that means)
int * statusUserFunction_
Status of user functions 0 - not used 1 - needs cbc_load 2 - available - data in coinModel 3 - data l...
double startTime() const
Start time.
virtual void exportData(CbcSolver *)
Export Data (i.e. at very end)
void addUserFunction(CbcUser *function)
Add user function.
CbcModel * model()
Return original Cbc model.
CbcSolver()
Default Constructor.
CglCutGenerator ** cutGenerator_
Cut generators.
virtual ~CbcUser()
Destructor.
CbcStopNow * callBack_
Stop now stuff.
CbcSolverUsefulData & operator=(const CbcSolverUsefulData &rhs)
Assignment operator.
bool doMiplib_
Whether to do miplib test.
Simple Branch and bound class.
void setReadMode(int value)
Where to start reading commands.
void setIntValue(CbcOrClpParameterType type, int value)
Set int value.
void fillValuesInSolver()
Set default values in solvers from parameters.
CoinModel * originalCoinModel() const
Copy of model on initial load.