Loading...
Searching...
No Matches
CglTreeInfo Class Reference

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

`#include <CglTreeInfo.hpp>`

Inheritance diagram for CglTreeInfo:
[legend]

## Public Member Functions

| CglTreeInfo ()
| Default constructor.
| CglTreeInfo (const CglTreeInfo &)
| Copy constructor.
virtual CglTreeInfo * | clone () const
| Clone.
CglTreeInfo & | operator= (const CglTreeInfo &rhs)
| Assignment operator.
virtual | ~CglTreeInfo ()
| Destructor.
virtual bool | fixes (int, int, int, bool)
| Take action if cut generator can fix a variable (toValue -1 for down, +1 for up).
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.

## Public Attributes

int | level
| The level of the search tree node.
int | pass
| How many times the cut generator was already invoked in this search tree node.
int | formulation_rows
| The number of rows in the original formulation.
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.

bool | inTree
| Set true if in tree (to avoid ambiguity at first branch).
int | hasParent
| nonzero if called from child of main model 1 if heuristic run 2 if doing full search
OsiSolverInterface * | parentSolver
| parent solver
int * | originalColumns
| Original columns (if preprocessed).
OsiRowCut ** | strengthenRow
| Replacement array.
CoinThreadRandom * | randomNumberGenerator
| Optional pointer to thread specific random number generator.

## Detailed Description

Information about where the cut generator is invoked from.

Definition at line 15 of file CglTreeInfo.hpp.

## Constructor & Destructor Documentation

## CglTreeInfo() [1/2]

CglTreeInfo::CglTreeInfo | ( |  | ) |

Default constructor.

## CglTreeInfo() [2/2]

CglTreeInfo::CglTreeInfo | ( | const CglTreeInfo & |  | ) |

Copy constructor.

## ~CglTreeInfo()

virtual CglTreeInfo::~CglTreeInfo | ( |  | ) |

virtual

Destructor.

## Member Function Documentation

## clone()

virtual CglTreeInfo * CglTreeInfo::clone | ( |  | ) | const

virtual

Clone.

Reimplemented in CglTreeProbingInfo.

## operator=()

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

Assignment operator.

## fixes()

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

inline virtual

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.

## initializeFixing()

virtual int CglTreeInfo::initializeFixing | ( | const OsiSolverInterface * |  | ) |

inline virtual

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

## level

int CglTreeInfo::level

The level of the search tree node.

Definition at line 18 of file CglTreeInfo.hpp.

## pass

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.

## formulation_rows

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.

## options

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.

## inTree

bool CglTreeInfo::inTree

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

Definition at line 40 of file CglTreeInfo.hpp.

## hasParent

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.

## parentSolver

OsiSolverInterface* CglTreeInfo::parentSolver

parent solver

Definition at line 47 of file CglTreeInfo.hpp.

## originalColumns

int* CglTreeInfo::originalColumns

Original columns (if preprocessed).

Definition at line 49 of file CglTreeInfo.hpp.

## strengthenRow

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.

## randomNumberGenerator

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:

- Cgl/src/CglTreeInfo.hpp