CbcFathom Class Reference

Fathom base class. More...

#include <CbcFathom.hpp>

Inheritance diagram for CbcFathom:
Inheritance graph
[legend]
Collaboration diagram for CbcFathom:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CbcFathom ()
 CbcFathom (CbcModel &model)
virtual ~CbcFathom ()
virtual void setModel (CbcModel *model)
 update model (This is needed if cliques update matrix etc)
virtual CbcFathomclone () const =0
 Clone.
virtual void resetModel (CbcModel *model)=0
 Resets stuff if model changes.
virtual int fathom (double *&newSolution)=0
 returns 0 if no fathoming attempted, 1 fully fathomed, 2 incomplete search, 3 incomplete search but treat as complete.
bool possible () const

Protected Attributes

CbcModelmodel_
 Model.
bool possible_
 Possible - if this method of fathoming can be used.

Private Member Functions

CbcFathomoperator= (const CbcFathom &rhs)
 Illegal Assignment operator.

Detailed Description

Fathom base class.

The idea is that after some branching the problem will be effectively smaller than the original problem and maybe there will be a more specialized technique which can completely fathom this branch quickly.

One method is to presolve the problem to give a much smaller new problem and then do branch and cut on that. Another might be dynamic programming.

Definition at line 21 of file CbcFathom.hpp.


Constructor & Destructor Documentation

CbcFathom::CbcFathom (  ) 
CbcFathom::CbcFathom ( CbcModel model  ) 
virtual CbcFathom::~CbcFathom (  )  [virtual]

Member Function Documentation

virtual void CbcFathom::setModel ( CbcModel model  )  [virtual]

update model (This is needed if cliques update matrix etc)

Reimplemented in CbcFathomDynamicProgramming.

virtual CbcFathom* CbcFathom::clone (  )  const [pure virtual]

Clone.

Implemented in CbcFathomDynamicProgramming.

virtual void CbcFathom::resetModel ( CbcModel model  )  [pure virtual]

Resets stuff if model changes.

Implemented in CbcFathomDynamicProgramming.

virtual int CbcFathom::fathom ( double *&  newSolution  )  [pure virtual]

returns 0 if no fathoming attempted, 1 fully fathomed, 2 incomplete search, 3 incomplete search but treat as complete.

If solution then newSolution will not be NULL and will be freed by CbcModel. It is expected that the solution is better than best so far but CbcModel will double check.

If returns 3 then of course there is no guarantee of global optimum

Implemented in CbcFathomDynamicProgramming.

bool CbcFathom::possible (  )  const [inline]

Definition at line 51 of file CbcFathom.hpp.

CbcFathom& CbcFathom::operator= ( const CbcFathom rhs  )  [private]

Illegal Assignment operator.

Reimplemented in CbcFathomDynamicProgramming.


Member Data Documentation

Model.

Definition at line 57 of file CbcFathom.hpp.

bool CbcFathom::possible_ [protected]

Possible - if this method of fathoming can be used.

Definition at line 59 of file CbcFathom.hpp.


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

Generated on 15 Mar 2015 for Coin-All by  doxygen 1.6.1