Cbc  2.10.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
CglTreeInfo Class Reference

Information about where the cut generator is invoked from. More...

#include <CglTreeInfo.hpp>

+ Inheritance diagram for CglTreeInfo:
+ Collaboration diagram for CglTreeInfo:

Public Member Functions

 CglTreeInfo ()
 Default constructor. More...
 
 CglTreeInfo (const CglTreeInfo &)
 Copy constructor. More...
 
virtual CglTreeInfoclone () const
 Clone. More...
 
CglTreeInfooperator= (const CglTreeInfo &rhs)
 Assignment operator. More...
 
virtual ~CglTreeInfo ()
 Destructor. More...
 
virtual bool fixes (int, int, int, bool)
 Take action if cut generator can fix a variable (toValue -1 for down, +1 for up) More...
 
virtual int initializeFixing (const OsiSolverInterface *)
 Initalizes fixing arrays etc - returns >0 if we want to save info 0 if we don't and -1 if is to be used. More...
 

Public Attributes

int level
 The level of the search tree node. More...
 
int pass
 How many times the cut generator was already invoked in this search tree node. More...
 
int formulation_rows
 The number of rows in the original formulation. More...
 
int options
 Options 1 - treat costed integers as important 2 - switch off some stuff as variables semi-integer 4 - set global cut flag if at root node 8 - set global cut flag if at root node and first pass 16 - set global cut flag and make cuts globally valid 32 - last round of cuts did nothing - maybe be more aggressive 64 - in preprocessing stage 128 - looks like solution 256 - want alternate cuts 512 - in sub tree (i.e. More...
 
bool inTree
 Set true if in tree (to avoid ambiguity at first branch) More...
 
int hasParent
 nonzero if called from child of main model 1 if heuristic run 2 if doing full search More...
 
OsiSolverInterfaceparentSolver
 parent solver More...
 
int * originalColumns
 Original columns (if preprocessed) More...
 
OsiRowCut ** strengthenRow
 Replacement array. More...
 
CoinThreadRandomrandomNumberGenerator
 Optional pointer to thread specific random number generator. More...
 

Detailed Description

Information about where the cut generator is invoked from.

Definition at line 15 of file CglTreeInfo.hpp.

Constructor & Destructor Documentation

CglTreeInfo::CglTreeInfo ( )

Default constructor.

CglTreeInfo::CglTreeInfo ( const CglTreeInfo )

Copy constructor.

virtual CglTreeInfo::~CglTreeInfo ( )
virtual

Destructor.

Member Function Documentation

virtual CglTreeInfo* CglTreeInfo::clone ( ) const
virtual

Clone.

Reimplemented in CglTreeProbingInfo.

CglTreeInfo& CglTreeInfo::operator= ( const CglTreeInfo rhs)

Assignment operator.

virtual bool CglTreeInfo::fixes ( int  ,
int  ,
int  ,
bool   
)
inlinevirtual

Take action if cut generator can fix a variable (toValue -1 for down, +1 for up)

Reimplemented in CglTreeProbingInfo.

Definition at line 79 of file CglTreeInfo.hpp.

virtual int CglTreeInfo::initializeFixing ( const OsiSolverInterface )
inlinevirtual

Initalizes fixing arrays etc - returns >0 if we want to save info 0 if we don't and -1 if is to be used.

Reimplemented in CglTreeProbingInfo.

Definition at line 82 of file CglTreeInfo.hpp.

Member Data Documentation

int CglTreeInfo::level

The level of the search tree node.

Definition at line 18 of file CglTreeInfo.hpp.

int CglTreeInfo::pass

How many times the cut generator was already invoked in this search tree node.

Definition at line 21 of file CglTreeInfo.hpp.

int CglTreeInfo::formulation_rows

The number of rows in the original formulation.

Some generators may not want to consider already generated rows when generating new ones.

Definition at line 24 of file CglTreeInfo.hpp.

int CglTreeInfo::options

Options 1 - treat costed integers as important 2 - switch off some stuff as variables semi-integer 4 - set global cut flag if at root node 8 - set global cut flag if at root node and first pass 16 - set global cut flag and make cuts globally valid 32 - last round of cuts did nothing - maybe be more aggressive 64 - in preprocessing stage 128 - looks like solution 256 - want alternate cuts 512 - in sub tree (i.e.

parent model) 1024 - in must call again mode or after everything mode

Definition at line 38 of file CglTreeInfo.hpp.

bool CglTreeInfo::inTree

Set true if in tree (to avoid ambiguity at first branch)

Definition at line 40 of file CglTreeInfo.hpp.

int CglTreeInfo::hasParent

nonzero if called from child of main model 1 if heuristic run 2 if doing full search

Definition at line 45 of file CglTreeInfo.hpp.

OsiSolverInterface* CglTreeInfo::parentSolver

parent solver

Definition at line 47 of file CglTreeInfo.hpp.

int* CglTreeInfo::originalColumns

Original columns (if preprocessed)

Definition at line 49 of file CglTreeInfo.hpp.

OsiRowCut** CglTreeInfo::strengthenRow

Replacement array.

Before Branch and Cut it may be beneficial to strengthen rows rather than adding cuts. If this array is not NULL then the cut generator can place a pointer to the stronger cut in this array which is number of rows in size.

A null (i.e. zero elements and free rhs) cut indicates that the row is useless and can be removed.

The calling function can then replace those rows.

Definition at line 59 of file CglTreeInfo.hpp.

CoinThreadRandom* CglTreeInfo::randomNumberGenerator

Optional pointer to thread specific random number generator.

Definition at line 61 of file CglTreeInfo.hpp.


The documentation for this class was generated from the following file: