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

Lift And Project Cut Generator Class. More...

#include <CglLiftAndProject.hpp>

+ Inheritance diagram for CglLiftAndProject:
+ Collaboration diagram for CglLiftAndProject:

Public Member Functions

Generate Cuts
virtual void generateCuts (const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info=CglTreeInfo())
 Generate lift-and-project cuts for the model of the solver interface, si. More...
 
double getBeta () const
 Get the normalization : Either beta=+1 or beta=-1. More...
 
void setBeta (int oneOrMinusOne)
 Set the normalization : Either beta=+1 or beta=-1. More...
 
Constructors and destructors
 CglLiftAndProject ()
 Default constructor. More...
 
 CglLiftAndProject (const CglLiftAndProject &)
 Copy constructor. More...
 
virtual CglCutGeneratorclone () const
 Clone. More...
 
CglLiftAndProjectoperator= (const CglLiftAndProject &rhs)
 Assignment operator. More...
 
virtual ~CglLiftAndProject ()
 Destructor. More...
 
virtual std::string generateCpp (FILE *fp)
 Create C++ lines to get to current state. More...
 
- Public Member Functions inherited from CglCutGenerator
 CglCutGenerator ()
 Default constructor. More...
 
 CglCutGenerator (const CglCutGenerator &)
 Copy constructor. More...
 
CglCutGeneratoroperator= (const CglCutGenerator &rhs)
 Assignment operator. More...
 
virtual ~CglCutGenerator ()
 Destructor. More...
 
virtual void refreshSolver (OsiSolverInterface *)
 This can be used to refresh any information. More...
 
int getAggressiveness () const
 Get Aggressiveness - 0 = neutral, 100 is normal root node. More...
 
void setAggressiveness (int value)
 Set Aggressiveness - 0 = neutral, 100 is normal root node. More...
 
void setGlobalCuts (bool trueOrFalse)
 Set whether can do global cuts. More...
 
bool canDoGlobalCuts () const
 Say whether can do global cuts. More...
 
virtual bool mayGenerateRowCutsInTree () const
 Returns true if may generate Row cuts in tree (rather than root node). More...
 
virtual bool needsOptimalBasis () const
 Return true if needs optimal basis to do cuts. More...
 
virtual int maximumLengthOfCutInTree () const
 Return maximum length of cut in tree. More...
 

Private Attributes

Private member data
double beta_
 The normalization is beta_=1 or beta_=-1. More...
 
double epsilon_
 epsilon More...
 
double onetol_
 1-epsilon More...
 

Friends

void CglLiftAndProjectUnitTest (const OsiSolverInterface *siP, const std::string mpdDir)
 A function that tests the methods in the CglLiftAndProject class. More...
 

Additional Inherited Members

- Public Attributes inherited from CglCutGenerator
int aggressive_
 Aggressiveness - 0 = neutral, 100 is normal root node. More...
 
bool canDoGlobalCuts_
 True if can do global cuts i.e. no general integers. More...
 

Detailed Description

Lift And Project Cut Generator Class.

Definition at line 13 of file CglLiftAndProject.hpp.

Constructor & Destructor Documentation

CglLiftAndProject::CglLiftAndProject ( )

Default constructor.

CglLiftAndProject::CglLiftAndProject ( const CglLiftAndProject )

Copy constructor.

virtual CglLiftAndProject::~CglLiftAndProject ( )
virtual

Destructor.

Member Function Documentation

virtual void CglLiftAndProject::generateCuts ( const OsiSolverInterface si,
OsiCuts cs,
const CglTreeInfo  info = CglTreeInfo() 
)
virtual

Generate lift-and-project cuts for the model of the solver interface, si.

Insert the generated cuts into OsiCut, cs.

Implements CglCutGenerator.

double CglLiftAndProject::getBeta ( ) const
inline

Get the normalization : Either beta=+1 or beta=-1.

Definition at line 30 of file CglLiftAndProject.hpp.

void CglLiftAndProject::setBeta ( int  oneOrMinusOne)
inline

Set the normalization : Either beta=+1 or beta=-1.

Default value is 1.

Definition at line 37 of file CglLiftAndProject.hpp.

virtual CglCutGenerator* CglLiftAndProject::clone ( ) const
virtual

Clone.

Implements CglCutGenerator.

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

Assignment operator.

virtual std::string CglLiftAndProject::generateCpp ( FILE *  fp)
virtual

Create C++ lines to get to current state.

Reimplemented from CglCutGenerator.

Friends And Related Function Documentation

void CglLiftAndProjectUnitTest ( const OsiSolverInterface siP,
const std::string  mpdDir 
)
friend

A function that tests the methods in the CglLiftAndProject class.

The only reason for it not to be a member method is that this way it doesn't have to be compiled into the library. And that's a gain, because the library should be compiled with optimization on, but this method should be compiled with debugging.

Member Data Documentation

double CglLiftAndProject::beta_
private

The normalization is beta_=1 or beta_=-1.

Definition at line 87 of file CglLiftAndProject.hpp.

double CglLiftAndProject::epsilon_
private

epsilon

Definition at line 89 of file CglLiftAndProject.hpp.

double CglLiftAndProject::onetol_
private

1-epsilon

Definition at line 91 of file CglLiftAndProject.hpp.


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