13 #ifndef CbcGenCtlBlk_H
14 #define CbcGenCtlBlk_H
53 #define CBC_GENERIC_VERSION "00.01.00"
56 namespace CbcGenParamUtils {
401 bool alwaysCreate =
true);
418 bool alwaysCreate =
true);
435 bool alwaysCreate =
true);
452 bool alwaysCreate =
true);
469 bool alwaysCreate =
true);
486 bool alwaysCreate =
true);
521 bool haveAnswer =
false,
int logLevel() const
Get log level.
void setProbingAction(CGControl action)
Set action state for use of probing cut generator.
struct CbcGenCtlBlk::oddHoleCtl_struct oddHole_
struct CbcGenCtlBlk::debugSolInfo_struct debugSol_
struct CbcGenCtlBlk::djFixCtl_struct djFix_
Start and end of CbcModel parameters in parameter vector.
struct CbcGenCtlBlk::gomoryCtl_struct gomory_
struct CbcGenCtlBlk::localTreeCtl_struct localTree_
BACMinor translateMinor(int status)
Translate CbcModel minor status to BACMinor.
void setGomoryAction(CGControl action)
Set action state for use of Gomory cut generator.
Control variable and prototype for Two-MIR cut generator.
struct CbcGenCtlBlk::greedyEqualityCtl_struct greedyEquality_
Declaration of a class for command line parameters.
bool ourMsgHandler_
Ownership of message handler.
Control variable and prototype for MIR cut generator.
std::string lastSolnOut_
Last solution output file.
IPPControl preProcess_
Control integer preprocessing.
struct CbcGenCtlBlk::flowCtl_struct flow_
Control variable and prototype for odd hole cut generator.
struct CbcGenCtlBlk::probingCtl_struct probing_
~CbcGenCtlBlk()
Destructor.
IPPControl getIPPAction()
int printMode_
Solution printing mode.
struct CbcGenCtlBlk::knapsackCtl_struct knapsack_
CGControl
Codes to control the use of cut generators and heuristics.
CbcHeuristicLocal * proto_
Control variable and prototype for probing cut generator.
CoinMessages * msgs_
The current set of messages.
struct CbcGenCtlBlk::osiParamsInfo_struct osiParams_
std::string debugCreate_
Control debug file creation.
BACWhere
Codes to specify where branch-and-cut stopped.
struct CbcGenCtlBlk::roundingCtl_struct rounding_
void setCombineAction(CGControl action)
Set action state for use of local search/combine heuristic.
Control variable and prototype for combine heuristic.
CoinMessageHandler & message(CbcGenMsgCode inID)
Print a message.
CGControl getTwomir(CglCutGenerator *&gen)
Obtain a prototype for a 2-MIR cut generator.
void setRedSplitAction(CGControl action)
Set action state for use of reduce and split cut generator.
void setFPumpAction(CGControl action)
Set action state for use of feasibility pump heuristic.
void setRoundingAction(CGControl action)
Set action state for use of simple rounding heuristic.
CGControl getFPump(CbcHeuristic *&gen, CbcModel *model, bool alwaysCreate=true)
Obtain a feasibility pump heuristic.
Control variable and prototype for clique cut generator.
void passInMessageHandler(CoinMessageHandler *handler)
Supply a new message handler.
Base class for message handling.
struct CbcGenCtlBlk::redSplitCtl_struct redSplit_
struct CbcGenCtlBlk::twomirCtl_struct twomir_
Array of primal variable values for debugging.
bool goodModel_
True if we have a valid model loaded, false otherwise.
Control variable and prototype for flow cover cut generator.
void setGreedyCoverAction(CGControl action)
Set action state for use of greedy cover heuristic.
Control variables for a strong branching method.
Gomory Reduce-and-Split Cut Generator Class; See method generateCuts().
Abstract Base Class for describing an interface to a solver.
CbcHeuristicFPump * proto_
void setCliqueAction(CGControl action)
Set action state for use of clique cut generator.
Gomory Cut Generator Class.
struct CbcGenCtlBlk::fpumpCtl_struct fpump_
CGControl getTreeLocal(CbcTreeLocal *&localTree, CbcModel *model, bool alwaysCreate=true)
Obtain a local search tree object.
Start and end of cbc-generic parameters in parameter vector.
struct CbcGenCtlBlk::greedyCoverCtl_struct greedyCover_
struct CbcGenCtlBlk::cbcParamsInfo_struct cbcParams_
double totalTime_
Total elapsed time for this run.
struct CbcGenCtlBlk::genParamsInfo_struct genParams_
CbcModel * model_
The reference CbcModel object.
This is a first attempt at a message handler.
struct CbcGenCtlBlk::combineCtl_struct combine_
Cut Generator Base Class.
CGControl getMir(CglCutGenerator *&gen)
Obtain a prototype for a mixed integer rounding (MIR) cut generator.
struct CbcGenCtlBlk::babState_struct bab_
Control variable and prototype for feasibility pump heuristic.
CGControl getCombine(CbcHeuristic *&gen, CbcModel *model, bool alwaysCreate=true)
Obtain a local search/combine heuristic.
Lifed Simple Generalized Flow Cover Cut Generator Class.
void setKnapsackAction(CGControl action)
Set action state for use of knapsack cut generator.
std::string dfltDirectory_
Default directory prefix.
BACMajor
Major status codes for branch-and-cut.
CGControl getProbing(CglCutGenerator *&gen)
Obtain a prototype for a probing cut generator.
struct CbcGenCtlBlk::mirCtl_struct mir_
void setFlowAction(CGControl action)
Set action state for use of flow cover cut generator.
struct CbcGenCtlBlk::cliqueCtl_struct clique_
void printBaBStatus()
Print the status block.
std::vector< bool > setByUser_
Record of parameters changed by user command.
int printOpt_
When greater than 0, integer presolve gives more information and branch-and-cut provides statistics...
int verbose_
Verbosity level for help messages.
CglMixedIntegerRounding2 * proto_
CbcGenMsgCode
Symbolic names for cbc-generic messages.
BPControl
Codes to specify the assignment of branching priorities.
void setLogLevel(int lvl)
Set log level.
CoinMessageHandler * msgHandler_
Message handler.
Control variable and prototype for greedy equality heuristic.
Start and end of OsiSolverInterface parameters in parameter vector.
std::string printMask_
Print mask.
std::string version_
cbc-generic version
void setCutDepth(int cutDepth)
Set cut depth setting.
CGControl getFlow(CglCutGenerator *&gen)
Obtain a prototype for a flow cover cut generator.
void setMirAction(CGControl action)
Set action state for use of MIR cut generator.
int logLvl_
The current log level.
bool allowImportErrors_
Allow/disallow errors when importing a model.
CoinParamVec * paramVec_
The parameter vector.
CbcGenCtlBlk()
Default constructor.
CbcHeuristicGreedyEquality * proto_
This file contains the enum that defines symbolic names for for cbc-generic messages.
void setIPPAction(IPPControl action)
Set action state for use of integer preprocessing.
Control variable and prototype for simple rounding heuristic.
IPPControl
Codes to control integer preprocessing.
int getCutDepth()
Get cut depth setting.
CbcHeuristicGreedyCover * proto_
CGControl getRedSplit(CglCutGenerator *&gen)
Obtain a prototype for a reduce and split cut generator.
CGControl getRounding(CbcHeuristic *&gen, CbcModel *model, bool alwaysCreate=true)
Obtain a simple rounding heuristic.
Language
Supported languages.
void setMessages(CoinMessages::Language lang=CoinMessages::us_en)
Set up messages in the specified language.
BPControl priorityAction_
Control the assignment of branching priorities to integer variables.
Control variable and prototype for knapsack cover cut generator.
Twostep MIR Cut Generator Class.
CGControl getGreedyCover(CbcHeuristic *&gen, CbcModel *model, bool alwaysCreate=true)
Obtain a greedy cover heuristic.
void addCbcGenParams(int &numParams, CoinParamVec ¶mVec, CbcGenCtlBlk *ctlBlk)
Control variables for local tree.
void setTwomirAction(CGControl action)
Set action state for use of 2-MIR cut generator.
std::string lastMpsIn_
Last MPS input file.
CGControl getGreedyEquality(CbcHeuristic *&gen, CbcModel *model, bool alwaysCreate=true)
Obtain a greedy equality heuristic.
void setTreeLocalAction(CGControl action)
Set action state for use of local tree.
Control variable and prototype for reduce-and-split cut generator.
struct CbcGenCtlBlk::chooseStrongCtl_struct chooseStrong_
BACMinor
Minor status codes.
CglKnapsackCover * proto_
Odd Hole Cut Generator Class.
CGControl getGomory(CglCutGenerator *&gen)
Obtain a prototype for a Gomory cut generator.
OsiSolverInterface * answerSolver_
bool defaultSettings_
False if the user has made nontrivial modifications to the default control settings.
int cutDepth_
Control cut generator activity.
CGControl getClique(CglCutGenerator *&gen)
Obtain a prototype for a clique cut generator.
OsiSolverInterface * dfltSolver_
The current default LP solver.
void setGreedyEqualityAction(CGControl action)
Set action state for use of greedy equality heuristic.
Control variable and prototype for greedy cover heuristic.
Greedy heuristic classes.
Knapsack Cover Cut Generator Class.
Simple Branch and bound class.
Control use of reduced cost fixing prior to B&C.
CoinMessages::Language cur_lang_
The current language.
Control variable and prototype for Gomory cut generator.
int paramsProcessed_
Number of parameters processed.
Probing Cut Generator Class.
Class to hold and manipulate an array of massaged messages.
void setBaBStatus(BACMajor majorStatus, BACMinor minorStatus, BACWhere where, bool haveAnswer, OsiSolverInterface *answerSolver)
Set the result of branch-and-cut search.
void setLogLevel(int value)
Set current log (detail) level.
CoinMessageHandler * messageHandler() const
Return a pointer to the message handler.
Mixed Integer Rounding Cut Generator Class.
std::string debugFile_
Last debug input file.
BACMajor translateMajor(int status)
Translate CbcModel major status to BACMajor.
CGControl getKnapsack(CglCutGenerator *&gen)
Obtain a prototype for a knapsack cover cut generator.