Classes | Defines | Enumerations | Functions
/build/buildd/clp-1.12.0/Clp/src/CbcOrClpParam.hpp File Reference
#include "ClpConfig.h"
#include <vector>
#include <string>
Include dependency graph for CbcOrClpParam.hpp:

Go to the source code of this file.

Classes

class  CbcOrClpParam
 Very simple class for setting parameters. More...

Defines

#define CbcOrClpParam_H
#define CBCMAXPARAMETERS   200

Enumerations

enum  CbcOrClpParameterType {
  CBC_PARAM_GENERALQUERY = -100, CBC_PARAM_FULLGENERALQUERY, CLP_PARAM_DBL_PRIMALTOLERANCE = 1, CLP_PARAM_DBL_DUALTOLERANCE,
  CLP_PARAM_DBL_TIMELIMIT, CLP_PARAM_DBL_DUALBOUND, CLP_PARAM_DBL_PRIMALWEIGHT, CLP_PARAM_DBL_OBJSCALE,
  CLP_PARAM_DBL_RHSSCALE, CBC_PARAM_DBL_INFEASIBILITYWEIGHT = 51, CBC_PARAM_DBL_CUTOFF, CBC_PARAM_DBL_INTEGERTOLERANCE,
  CBC_PARAM_DBL_INCREMENT, CBC_PARAM_DBL_ALLOWABLEGAP, CBC_PARAM_DBL_TIMELIMIT_BAB, CBC_PARAM_DBL_GAPRATIO,
  CBC_PARAM_DBL_DJFIX = 81, CBC_PARAM_DBL_TIGHTENFACTOR, CLP_PARAM_DBL_PRESOLVETOLERANCE, CLP_PARAM_DBL_OBJSCALE2,
  CBC_PARAM_DBL_FAKEINCREMENT, CBC_PARAM_DBL_FAKECUTOFF, CBC_PARAM_DBL_ARTIFICIALCOST, CBC_PARAM_DBL_DEXTRA3,
  CBC_PARAM_DBL_SMALLBAB, CBC_PARAM_DBL_DEXTRA4, CBC_PARAM_DBL_DEXTRA5, CLP_PARAM_INT_SOLVERLOGLEVEL = 101,
  CLP_PARAM_INT_LOGLEVEL = 101, CLP_PARAM_INT_MAXFACTOR, CLP_PARAM_INT_PERTVALUE, CLP_PARAM_INT_MAXITERATION,
  CLP_PARAM_INT_PRESOLVEPASS, CLP_PARAM_INT_IDIOT, CLP_PARAM_INT_SPRINT, CLP_PARAM_INT_OUTPUTFORMAT,
  CLP_PARAM_INT_SLPVALUE, CLP_PARAM_INT_PRESOLVEOPTIONS, CLP_PARAM_INT_PRINTOPTIONS, CLP_PARAM_INT_SPECIALOPTIONS,
  CLP_PARAM_INT_SUBSTITUTION, CLP_PARAM_INT_DUALIZE, CLP_PARAM_INT_VERBOSE, CLP_PARAM_INT_CPP,
  CLP_PARAM_INT_PROCESSTUNE, CLP_PARAM_INT_USESOLUTION, CBC_PARAM_INT_STRONGBRANCHING = 151, CBC_PARAM_INT_CUTDEPTH,
  CBC_PARAM_INT_MAXNODES, CBC_PARAM_INT_NUMBERBEFORE, CBC_PARAM_INT_NUMBERANALYZE, CBC_PARAM_INT_MIPOPTIONS,
  CBC_PARAM_INT_MOREMIPOPTIONS, CBC_PARAM_INT_MAXHOTITS, CBC_PARAM_INT_FPUMPITS, CBC_PARAM_INT_MAXSOLS,
  CBC_PARAM_INT_FPUMPTUNE, CBC_PARAM_INT_TESTOSI, CBC_PARAM_INT_EXTRA1, CBC_PARAM_INT_EXTRA2,
  CBC_PARAM_INT_EXTRA3, CBC_PARAM_INT_EXTRA4, CBC_PARAM_INT_DEPTHMINIBAB, CBC_PARAM_INT_CUTPASSINTREE,
  CBC_PARAM_INT_THREADS, CBC_PARAM_INT_CUTPASS, CBC_PARAM_INT_VUBTRY, CBC_PARAM_INT_DENSE,
  CBC_PARAM_INT_EXPERIMENT, CBC_PARAM_INT_DIVEOPT, CBC_PARAM_INT_STRATEGY, CBC_PARAM_INT_SMALLFACT,
  CBC_PARAM_INT_HOPTIONS, CBC_PARAM_INT_CUTLENGTH, CBC_PARAM_INT_FPUMPTUNE2, CLP_PARAM_STR_DIRECTION = 201,
  CLP_PARAM_STR_DUALPIVOT, CLP_PARAM_STR_SCALING, CLP_PARAM_STR_ERRORSALLOWED, CLP_PARAM_STR_KEEPNAMES,
  CLP_PARAM_STR_SPARSEFACTOR, CLP_PARAM_STR_PRIMALPIVOT, CLP_PARAM_STR_PRESOLVE, CLP_PARAM_STR_CRASH,
  CLP_PARAM_STR_BIASLU, CLP_PARAM_STR_PERTURBATION, CLP_PARAM_STR_MESSAGES, CLP_PARAM_STR_AUTOSCALE,
  CLP_PARAM_STR_CHOLESKY, CLP_PARAM_STR_KKT, CLP_PARAM_STR_BARRIERSCALE, CLP_PARAM_STR_GAMMA,
  CLP_PARAM_STR_CROSSOVER, CLP_PARAM_STR_PFI, CLP_PARAM_STR_INTPRINT, CLP_PARAM_STR_VECTOR,
  CLP_PARAM_STR_FACTORIZATION, CLP_PARAM_STR_ALLCOMMANDS, CBC_PARAM_STR_NODESTRATEGY = 251, CBC_PARAM_STR_BRANCHSTRATEGY,
  CBC_PARAM_STR_CUTSSTRATEGY, CBC_PARAM_STR_HEURISTICSTRATEGY, CBC_PARAM_STR_GOMORYCUTS, CBC_PARAM_STR_PROBINGCUTS,
  CBC_PARAM_STR_KNAPSACKCUTS, CBC_PARAM_STR_REDSPLITCUTS, CBC_PARAM_STR_ROUNDING, CBC_PARAM_STR_SOLVER,
  CBC_PARAM_STR_CLIQUECUTS, CBC_PARAM_STR_COSTSTRATEGY, CBC_PARAM_STR_FLOWCUTS, CBC_PARAM_STR_MIXEDCUTS,
  CBC_PARAM_STR_TWOMIRCUTS, CBC_PARAM_STR_PREPROCESS, CBC_PARAM_STR_FPUMP, CBC_PARAM_STR_GREEDY,
  CBC_PARAM_STR_COMBINE, CBC_PARAM_STR_LOCALTREE, CBC_PARAM_STR_SOS, CBC_PARAM_STR_LANDPCUTS,
  CBC_PARAM_STR_RINS, CBC_PARAM_STR_RESIDCUTS, CBC_PARAM_STR_RENS, CBC_PARAM_STR_DIVINGS,
  CBC_PARAM_STR_DIVINGC, CBC_PARAM_STR_DIVINGF, CBC_PARAM_STR_DIVINGG, CBC_PARAM_STR_DIVINGL,
  CBC_PARAM_STR_DIVINGP, CBC_PARAM_STR_DIVINGV, CBC_PARAM_STR_DINS, CBC_PARAM_STR_PIVOTANDFIX,
  CBC_PARAM_STR_RANDROUND, CBC_PARAM_STR_NAIVE, CBC_PARAM_STR_ZEROHALFCUTS, CBC_PARAM_STR_CPX,
  CBC_PARAM_STR_CROSSOVER2, CBC_PARAM_STR_PIVOTANDCOMPLEMENT, CBC_PARAM_STR_VND, CLP_PARAM_ACTION_DIRECTORY = 301,
  CLP_PARAM_ACTION_DIRSAMPLE, CLP_PARAM_ACTION_DIRNETLIB, CBC_PARAM_ACTION_DIRMIPLIB, CLP_PARAM_ACTION_IMPORT,
  CLP_PARAM_ACTION_EXPORT, CLP_PARAM_ACTION_RESTORE, CLP_PARAM_ACTION_SAVE, CLP_PARAM_ACTION_DUALSIMPLEX,
  CLP_PARAM_ACTION_PRIMALSIMPLEX, CLP_PARAM_ACTION_EITHERSIMPLEX, CLP_PARAM_ACTION_MAXIMIZE, CLP_PARAM_ACTION_MINIMIZE,
  CLP_PARAM_ACTION_EXIT, CLP_PARAM_ACTION_STDIN, CLP_PARAM_ACTION_UNITTEST, CLP_PARAM_ACTION_NETLIB_EITHER,
  CLP_PARAM_ACTION_NETLIB_DUAL, CLP_PARAM_ACTION_NETLIB_PRIMAL, CLP_PARAM_ACTION_SOLUTION, CLP_PARAM_ACTION_SAVESOL,
  CLP_PARAM_ACTION_TIGHTEN, CLP_PARAM_ACTION_FAKEBOUND, CLP_PARAM_ACTION_HELP, CLP_PARAM_ACTION_PLUSMINUS,
  CLP_PARAM_ACTION_NETWORK, CLP_PARAM_ACTION_ALLSLACK, CLP_PARAM_ACTION_REVERSE, CLP_PARAM_ACTION_BARRIER,
  CLP_PARAM_ACTION_NETLIB_BARRIER, CLP_PARAM_ACTION_NETLIB_TUNE, CLP_PARAM_ACTION_REALLY_SCALE, CLP_PARAM_ACTION_BASISIN,
  CLP_PARAM_ACTION_BASISOUT, CLP_PARAM_ACTION_SOLVECONTINUOUS, CLP_PARAM_ACTION_CLEARCUTS, CLP_PARAM_ACTION_VERSION,
  CLP_PARAM_ACTION_STATISTICS, CLP_PARAM_ACTION_DEBUG, CLP_PARAM_ACTION_DUMMY, CLP_PARAM_ACTION_PRINTMASK,
  CLP_PARAM_ACTION_OUTDUPROWS, CLP_PARAM_ACTION_USERCLP, CLP_PARAM_ACTION_MODELIN, CLP_PARAM_ACTION_CSVSTATISTICS,
  CLP_PARAM_ACTION_STOREDFILE, CLP_PARAM_ACTION_ENVIRONMENT, CBC_PARAM_ACTION_BAB = 351, CBC_PARAM_ACTION_MIPLIB,
  CBC_PARAM_ACTION_STRENGTHEN, CBC_PARAM_ACTION_PRIORITYIN, CBC_PARAM_ACTION_USERCBC, CBC_PARAM_ACTION_DOHEURISTIC,
  CBC_PARAM_NOTUSED_OSLSTUFF = 401, CBC_PARAM_NOTUSED_CBCSTUFF, CBC_PARAM_NOTUSED_INVALID = 1000
}
 Parameter codes. More...

Functions

std::string CoinReadNextField ()
 Simple read stuff.
std::string CoinReadGetCommand (int argc, const char *argv[])
std::string CoinReadGetString (int argc, const char *argv[])
int CoinReadGetIntField (int argc, const char *argv[], int *valid)
double CoinReadGetDoubleField (int argc, const char *argv[], int *valid)
void CoinReadPrintit (const char *input)
void setCbcOrClpPrinting (bool yesNo)
void establishParams (int &numberParameters, CbcOrClpParam *const parameters)
int whichParam (CbcOrClpParameterType name, int numberParameters, CbcOrClpParam *const parameters)
void saveSolution (const ClpSimplex *lpSolver, std::string fileName)

Define Documentation

#define CbcOrClpParam_H

Definition at line 13 of file CbcOrClpParam.hpp.

#define CBCMAXPARAMETERS   200

Definition at line 467 of file CbcOrClpParam.hpp.


Enumeration Type Documentation

Parameter codes.

Parameter type ranges are allocated as follows

  • 1 -- 100 double parameters
  • 101 -- 200 integer parameters
  • 201 -- 250 string parameters
  • 251 -- 300 cuts etc(string but broken out for clarity)
  • 301 -- 400 `actions'

`Actions' do not necessarily invoke an immediate action; it's just that they don't fit neatly into the parameters array.

This coding scheme is in flux.

Enumerator:
CBC_PARAM_GENERALQUERY 
CBC_PARAM_FULLGENERALQUERY 
CLP_PARAM_DBL_PRIMALTOLERANCE 
CLP_PARAM_DBL_DUALTOLERANCE 
CLP_PARAM_DBL_TIMELIMIT 
CLP_PARAM_DBL_DUALBOUND 
CLP_PARAM_DBL_PRIMALWEIGHT 
CLP_PARAM_DBL_OBJSCALE 
CLP_PARAM_DBL_RHSSCALE 
CBC_PARAM_DBL_INFEASIBILITYWEIGHT 
CBC_PARAM_DBL_CUTOFF 
CBC_PARAM_DBL_INTEGERTOLERANCE 
CBC_PARAM_DBL_INCREMENT 
CBC_PARAM_DBL_ALLOWABLEGAP 
CBC_PARAM_DBL_TIMELIMIT_BAB 
CBC_PARAM_DBL_GAPRATIO 
CBC_PARAM_DBL_DJFIX 
CBC_PARAM_DBL_TIGHTENFACTOR 
CLP_PARAM_DBL_PRESOLVETOLERANCE 
CLP_PARAM_DBL_OBJSCALE2 
CBC_PARAM_DBL_FAKEINCREMENT 
CBC_PARAM_DBL_FAKECUTOFF 
CBC_PARAM_DBL_ARTIFICIALCOST 
CBC_PARAM_DBL_DEXTRA3 
CBC_PARAM_DBL_SMALLBAB 
CBC_PARAM_DBL_DEXTRA4 
CBC_PARAM_DBL_DEXTRA5 
CLP_PARAM_INT_SOLVERLOGLEVEL 
CLP_PARAM_INT_LOGLEVEL 
CLP_PARAM_INT_MAXFACTOR 
CLP_PARAM_INT_PERTVALUE 
CLP_PARAM_INT_MAXITERATION 
CLP_PARAM_INT_PRESOLVEPASS 
CLP_PARAM_INT_IDIOT 
CLP_PARAM_INT_SPRINT 
CLP_PARAM_INT_OUTPUTFORMAT 
CLP_PARAM_INT_SLPVALUE 
CLP_PARAM_INT_PRESOLVEOPTIONS 
CLP_PARAM_INT_PRINTOPTIONS 
CLP_PARAM_INT_SPECIALOPTIONS 
CLP_PARAM_INT_SUBSTITUTION 
CLP_PARAM_INT_DUALIZE 
CLP_PARAM_INT_VERBOSE 
CLP_PARAM_INT_CPP 
CLP_PARAM_INT_PROCESSTUNE 
CLP_PARAM_INT_USESOLUTION 
CBC_PARAM_INT_STRONGBRANCHING 
CBC_PARAM_INT_CUTDEPTH 
CBC_PARAM_INT_MAXNODES 
CBC_PARAM_INT_NUMBERBEFORE 
CBC_PARAM_INT_NUMBERANALYZE 
CBC_PARAM_INT_MIPOPTIONS 
CBC_PARAM_INT_MOREMIPOPTIONS 
CBC_PARAM_INT_MAXHOTITS 
CBC_PARAM_INT_FPUMPITS 
CBC_PARAM_INT_MAXSOLS 
CBC_PARAM_INT_FPUMPTUNE 
CBC_PARAM_INT_TESTOSI 
CBC_PARAM_INT_EXTRA1 
CBC_PARAM_INT_EXTRA2 
CBC_PARAM_INT_EXTRA3 
CBC_PARAM_INT_EXTRA4 
CBC_PARAM_INT_DEPTHMINIBAB 
CBC_PARAM_INT_CUTPASSINTREE 
CBC_PARAM_INT_THREADS 
CBC_PARAM_INT_CUTPASS 
CBC_PARAM_INT_VUBTRY 
CBC_PARAM_INT_DENSE 
CBC_PARAM_INT_EXPERIMENT 
CBC_PARAM_INT_DIVEOPT 
CBC_PARAM_INT_STRATEGY 
CBC_PARAM_INT_SMALLFACT 
CBC_PARAM_INT_HOPTIONS 
CBC_PARAM_INT_CUTLENGTH 
CBC_PARAM_INT_FPUMPTUNE2 
CLP_PARAM_STR_DIRECTION 
CLP_PARAM_STR_DUALPIVOT 
CLP_PARAM_STR_SCALING 
CLP_PARAM_STR_ERRORSALLOWED 
CLP_PARAM_STR_KEEPNAMES 
CLP_PARAM_STR_SPARSEFACTOR 
CLP_PARAM_STR_PRIMALPIVOT 
CLP_PARAM_STR_PRESOLVE 
CLP_PARAM_STR_CRASH 
CLP_PARAM_STR_BIASLU 
CLP_PARAM_STR_PERTURBATION 
CLP_PARAM_STR_MESSAGES 
CLP_PARAM_STR_AUTOSCALE 
CLP_PARAM_STR_CHOLESKY 
CLP_PARAM_STR_KKT 
CLP_PARAM_STR_BARRIERSCALE 
CLP_PARAM_STR_GAMMA 
CLP_PARAM_STR_CROSSOVER 
CLP_PARAM_STR_PFI 
CLP_PARAM_STR_INTPRINT 
CLP_PARAM_STR_VECTOR 
CLP_PARAM_STR_FACTORIZATION 
CLP_PARAM_STR_ALLCOMMANDS 
CBC_PARAM_STR_NODESTRATEGY 
CBC_PARAM_STR_BRANCHSTRATEGY 
CBC_PARAM_STR_CUTSSTRATEGY 
CBC_PARAM_STR_HEURISTICSTRATEGY 
CBC_PARAM_STR_GOMORYCUTS 
CBC_PARAM_STR_PROBINGCUTS 
CBC_PARAM_STR_KNAPSACKCUTS 
CBC_PARAM_STR_REDSPLITCUTS 
CBC_PARAM_STR_ROUNDING 
CBC_PARAM_STR_SOLVER 
CBC_PARAM_STR_CLIQUECUTS 
CBC_PARAM_STR_COSTSTRATEGY 
CBC_PARAM_STR_FLOWCUTS 
CBC_PARAM_STR_MIXEDCUTS 
CBC_PARAM_STR_TWOMIRCUTS 
CBC_PARAM_STR_PREPROCESS 
CBC_PARAM_STR_FPUMP 
CBC_PARAM_STR_GREEDY 
CBC_PARAM_STR_COMBINE 
CBC_PARAM_STR_LOCALTREE 
CBC_PARAM_STR_SOS 
CBC_PARAM_STR_LANDPCUTS 
CBC_PARAM_STR_RINS 
CBC_PARAM_STR_RESIDCUTS 
CBC_PARAM_STR_RENS 
CBC_PARAM_STR_DIVINGS 
CBC_PARAM_STR_DIVINGC 
CBC_PARAM_STR_DIVINGF 
CBC_PARAM_STR_DIVINGG 
CBC_PARAM_STR_DIVINGL 
CBC_PARAM_STR_DIVINGP 
CBC_PARAM_STR_DIVINGV 
CBC_PARAM_STR_DINS 
CBC_PARAM_STR_PIVOTANDFIX 
CBC_PARAM_STR_RANDROUND 
CBC_PARAM_STR_NAIVE 
CBC_PARAM_STR_ZEROHALFCUTS 
CBC_PARAM_STR_CPX 
CBC_PARAM_STR_CROSSOVER2 
CBC_PARAM_STR_PIVOTANDCOMPLEMENT 
CBC_PARAM_STR_VND 
CLP_PARAM_ACTION_DIRECTORY 
CLP_PARAM_ACTION_DIRSAMPLE 
CLP_PARAM_ACTION_DIRNETLIB 
CBC_PARAM_ACTION_DIRMIPLIB 
CLP_PARAM_ACTION_IMPORT 
CLP_PARAM_ACTION_EXPORT 
CLP_PARAM_ACTION_RESTORE 
CLP_PARAM_ACTION_SAVE 
CLP_PARAM_ACTION_DUALSIMPLEX 
CLP_PARAM_ACTION_PRIMALSIMPLEX 
CLP_PARAM_ACTION_EITHERSIMPLEX 
CLP_PARAM_ACTION_MAXIMIZE 
CLP_PARAM_ACTION_MINIMIZE 
CLP_PARAM_ACTION_EXIT 
CLP_PARAM_ACTION_STDIN 
CLP_PARAM_ACTION_UNITTEST 
CLP_PARAM_ACTION_NETLIB_EITHER 
CLP_PARAM_ACTION_NETLIB_DUAL 
CLP_PARAM_ACTION_NETLIB_PRIMAL 
CLP_PARAM_ACTION_SOLUTION 
CLP_PARAM_ACTION_SAVESOL 
CLP_PARAM_ACTION_TIGHTEN 
CLP_PARAM_ACTION_FAKEBOUND 
CLP_PARAM_ACTION_HELP 
CLP_PARAM_ACTION_PLUSMINUS 
CLP_PARAM_ACTION_NETWORK 
CLP_PARAM_ACTION_ALLSLACK 
CLP_PARAM_ACTION_REVERSE 
CLP_PARAM_ACTION_BARRIER 
CLP_PARAM_ACTION_NETLIB_BARRIER 
CLP_PARAM_ACTION_NETLIB_TUNE 
CLP_PARAM_ACTION_REALLY_SCALE 
CLP_PARAM_ACTION_BASISIN 
CLP_PARAM_ACTION_BASISOUT 
CLP_PARAM_ACTION_SOLVECONTINUOUS 
CLP_PARAM_ACTION_CLEARCUTS 
CLP_PARAM_ACTION_VERSION 
CLP_PARAM_ACTION_STATISTICS 
CLP_PARAM_ACTION_DEBUG 
CLP_PARAM_ACTION_DUMMY 
CLP_PARAM_ACTION_PRINTMASK 
CLP_PARAM_ACTION_OUTDUPROWS 
CLP_PARAM_ACTION_USERCLP 
CLP_PARAM_ACTION_MODELIN 
CLP_PARAM_ACTION_CSVSTATISTICS 
CLP_PARAM_ACTION_STOREDFILE 
CLP_PARAM_ACTION_ENVIRONMENT 
CBC_PARAM_ACTION_BAB 
CBC_PARAM_ACTION_MIPLIB 
CBC_PARAM_ACTION_STRENGTHEN 
CBC_PARAM_ACTION_PRIORITYIN 
CBC_PARAM_ACTION_USERCBC 
CBC_PARAM_ACTION_DOHEURISTIC 
CBC_PARAM_NOTUSED_OSLSTUFF 
CBC_PARAM_NOTUSED_CBCSTUFF 
CBC_PARAM_NOTUSED_INVALID 

Definition at line 46 of file CbcOrClpParam.hpp.


Function Documentation

std::string CoinReadNextField ( )

Simple read stuff.

std::string CoinReadGetCommand ( int  argc,
const char *  argv[] 
)
std::string CoinReadGetString ( int  argc,
const char *  argv[] 
)
int CoinReadGetIntField ( int  argc,
const char *  argv[],
int *  valid 
)
double CoinReadGetDoubleField ( int  argc,
const char *  argv[],
int *  valid 
)
void CoinReadPrintit ( const char *  input)
void setCbcOrClpPrinting ( bool  yesNo)
void establishParams ( int &  numberParameters,
CbcOrClpParam *const  parameters 
)
int whichParam ( CbcOrClpParameterType  name,
int  numberParameters,
CbcOrClpParam *const  parameters 
)
void saveSolution ( const ClpSimplex lpSolver,
std::string  fileName 
)