Cgl 0.59.7

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

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

`#include <CglClique.hpp>`

Inheritance diagram for CglFakeClique:
[legend]
Collaboration diagram for CglFakeClique:
[legend]

## Public Member Functions
| CglFakeClique (const CglFakeClique &rhs)
| Copy constructor. More...
virtual CglCutGenerator * | clone () const
| Clone. More...
CglFakeClique & | operator= (const CglFakeClique &rhs)
| Assignment operator. More...
virtual void | generateCuts (const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info=CglTreeInfo())
| Generate cuts for the model data contained in si. More...
Public Member Functions inherited from CglClique
| CglClique (const CglClique &rhs)
| Copy constructor. More...
CglClique & | operator= (const CglClique &rhs)
| Assignment operator. More...
| CglClique (bool setPacking=false, bool justOriginalRows=false)
| Default constructor. More...
virtual | ~CglClique ()
| Destructor. More...
virtual std::string | generateCpp (FILE *fp)
| Create C++ lines to get to current state. More...
void | considerRows (const int numRows, const int *rowInd)
void | setStarCliqueNextNodeMethod (scl_next_node_method method)
void | setStarCliqueCandidateLengthThreshold (int maxlen)
void | setRowCliqueCandidateLengthThreshold (int maxlen)
void | setStarCliqueReport (bool yesno=true)
void | setRowCliqueReport (bool yesno=true)
void | setDoStarClique (bool yesno=true)
void | setDoRowClique (bool yesno=true)
void | setMinViolation (double minviol)
double | getMinViolation () const
Public Member Functions inherited from CglCutGenerator
| CglCutGenerator ()
| Default constructor. More...
| CglCutGenerator (const CglCutGenerator &)
| Copy constructor. More...
CglCutGenerator & | operator= (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...

## Constructors and destructors
OsiSolverInterface * | fakeSolver_
| fake solver to use More...
CglProbing * | probing_
| Probing object. More...
| CglFakeClique (OsiSolverInterface *solver=NULL, bool setPacking=false)
| Default constructor. More...
virtual | ~CglFakeClique ()
| Destructor. More...
void | assignSolver (OsiSolverInterface *fakeSolver)
| Assign solver (generator takes over ownership) More...

## Additional Inherited Members
Public Types inherited from CglClique
enum | scl_next_node_method { SCL_MIN_DEGREE, SCL_MAX_DEGREE, SCL_MAX_XJ_MAX_DEG }
| possible choices for selecting the next node in the star clique search More...
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...
Protected Attributes inherited from CglClique
const int * | cl_perm_indices
| variables/arrays that are used across many methods More...
int | cl_perm_length
| The length of cl_perm_indices. More...
int * | cl_indices
| List of indices that should be considered for extending the ones listed in cl_perm_indices. More...
int | cl_length
| The length of cl_indices. More...
int * | cl_del_indices
| An array of nodes discarded from the candidate list. More...
int | cl_del_length
| The length of cl_del_indices. More...
bool | setPacking_
| An indicator showing whether the whole matrix in the solverinterface is a set packing problem or not. More...
bool | justOriginalRows_
| True if just look at original rows. More...
int | sp_numrows
| pieces of the set packing part of the solverinterface More...
int * | sp_orig_row_ind
int | sp_numcols
int * | sp_orig_col_ind
double * | sp_colsol
int * | sp_col_start
int * | sp_col_ind
int * | sp_row_start
int * | sp_row_ind
frac_graph | fgraph
| the intersection graph corresponding to the set packing problem More...
bool * | node_node
| the node-node incidence matrix of the intersection graph. More...
double | petol
| The primal tolerance in the solverinterface. More...
bool | do_row_clique
| data for the star clique algorithm More...
bool | do_star_clique
| whether to do the star clique algorithm or not. More...
scl_next_node_method | scl_next_node_rule
| How the next node to be added to the star clique should be selected. More...
int | scl_candidate_length_threshold
| In the star clique method the maximal length of the candidate list (those nodes that are in a star, i.e., connected to the center of the star) to allow complete enumeration of maximal cliques. More...
bool | scl_report_result
| whether to give a detailed statistics on the star clique method More...
int | rcl_candidate_length_threshold
| In the row clique method the maximal length of the candidate list (those nodes that can extend the row clique, i.e., connected to all nodes in the row clique) to allow complete enumeration of maximal cliques. More...
bool | rcl_report_result
| whether to give a detailed statistics on the row clique method More...

## Detailed Description

Definition at line 262 of file CglClique.hpp.

## Constructor & Destructor Documentation

CglFakeClique::CglFakeClique | ( | const CglFakeClique & | rhs | ) |

Copy constructor.

CglFakeClique::CglFakeClique | ( | OsiSolverInterface * | solver = `NULL`,
|  | bool | setPacking = `false`
| ) |  |

Default constructor.

If the setPacking argument is set to true then CglFakeClique will assume that the problem in the solverinterface passed to the generateCuts() method describes a set packing problem, i.e.,

- all variables are binary
- the matrix is a 0-1 matrix
- all constraints are '= 1' or '<= 1'

Otherwise the user can use the considerRows() method to set the list of clique rows, that is,

- all coeffs corresponding to binary variables at fractional level is 1
- all other coeffs are non-negative
- the constraint is '= 1' or '<= 1'.

If the user does not set the list of clique rows then CglFakeClique will start the generateCuts() methods by scanning the matrix for them.

virtual CglFakeClique::~CglFakeClique | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

virtual CglCutGenerator* CglFakeClique::clone | ( |  | ) | const
| virtual

Clone.

Reimplemented from CglClique.

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

Assignment operator.

virtual void CglFakeClique::generateCuts | ( | const OsiSolverInterface & | si,
|  | OsiCuts & | cs,
|  | const CglTreeInfo | info = `CglTreeInfo()`
| ) |  |
| virtual

Generate cuts for the model data contained in si.

The generated cuts are inserted into and returned in the collection of cuts cs.

Reimplemented from CglClique.

void CglFakeClique::assignSolver | ( | OsiSolverInterface * | fakeSolver | ) |

Assign solver (generator takes over ownership)

## Member Data Documentation

OsiSolverInterface* CglFakeClique::fakeSolver_
| protected

fake solver to use

Definition at line 303 of file CglClique.hpp.

CglProbing* CglFakeClique::probing_
| protected

Probing object.

Definition at line 305 of file CglClique.hpp.

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

- /home/coin/svn-release/Cgl-0.59.7/Cgl/src/CglClique/CglClique.hpp