Bonmin::HeuristicDive Class Reference

#include <BonHeuristicDive.hpp>

Inheritance diagram for Bonmin::HeuristicDive:

Inheritance graph
[legend]
Collaboration diagram for Bonmin::HeuristicDive:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 HeuristicDive ()
 Default constructor.
 HeuristicDive (BonminSetup *setup)
 Constructor with setup.
 HeuristicDive (const HeuristicDive &copy)
 Copy constructor.
 ~HeuristicDive ()
 Destructor.
HeuristicDiveoperator= (const HeuristicDive &rhs)
 Assignment operator.
virtual CbcHeuristic * clone () const =0
 Clone.
virtual void resetModel (CbcModel *model)
 Resets stuff if model changes.
virtual void setSetup (BonminSetup *setup)
 Change setup used for heuristic.
void setPercentageToFix (double value)
 Set percentage of integer variables to fix at bounds.
virtual int solution (double &solutionValue, double *betterSolution)
 Performs heuristic.
virtual void setInternalVariables (TMINLP2TNLP *minlp)=0
 sets internal variables
virtual void selectVariableToBranch (TMINLP2TNLP *minlp, const vector< int > &integerColumns, const double *newSolution, int &bestColumn, int &bestRound)=0
 If bestColumn = -1, it means that no variable was found.

Protected Attributes

BonminSetupsetup_
 Setup to use for local searches (will make copies).
double percentageToFix_
 Percentage of integer variables to fix at bounds.

Private Attributes

int howOften_
 How often to do (code can change).

Detailed Description

Definition at line 18 of file BonHeuristicDive.hpp.


Constructor & Destructor Documentation

Bonmin::HeuristicDive::HeuristicDive (  ) 

Default constructor.

Definition at line 28 of file BonHeuristicDive.cpp.

Bonmin::HeuristicDive::HeuristicDive ( BonminSetup setup  ) 

Constructor with setup.

Definition at line 36 of file BonHeuristicDive.cpp.

Bonmin::HeuristicDive::HeuristicDive ( const HeuristicDive copy  ) 

Copy constructor.

Definition at line 46 of file BonHeuristicDive.cpp.

Bonmin::HeuristicDive::~HeuristicDive (  )  [inline]

Destructor.

Definition at line 31 of file BonHeuristicDive.hpp.


Member Function Documentation

HeuristicDive & Bonmin::HeuristicDive::operator= ( const HeuristicDive rhs  ) 

Assignment operator.

Definition at line 55 of file BonHeuristicDive.cpp.

References howOften_, percentageToFix_, and setup_.

Referenced by Bonmin::HeuristicDiveVectorLength::operator=(), and Bonmin::HeuristicDiveFractional::operator=().

virtual CbcHeuristic* Bonmin::HeuristicDive::clone (  )  const [pure virtual]

Clone.

Implemented in Bonmin::HeuristicDiveFractional, and Bonmin::HeuristicDiveVectorLength.

virtual void Bonmin::HeuristicDive::resetModel ( CbcModel *  model  )  [inline, virtual]

Resets stuff if model changes.

Definition at line 40 of file BonHeuristicDive.hpp.

virtual void Bonmin::HeuristicDive::setSetup ( BonminSetup setup  )  [inline, virtual]

Change setup used for heuristic.

Reimplemented in Bonmin::HeuristicDiveFractional, and Bonmin::HeuristicDiveVectorLength.

Definition at line 45 of file BonHeuristicDive.hpp.

References setup_.

Referenced by Bonmin::HeuristicDiveVectorLength::setSetup(), and Bonmin::HeuristicDiveFractional::setSetup().

void Bonmin::HeuristicDive::setPercentageToFix ( double  value  )  [inline]

Set percentage of integer variables to fix at bounds.

Definition at line 51 of file BonHeuristicDive.hpp.

References percentageToFix_.

int Bonmin::HeuristicDive::solution ( double &  solutionValue,
double *  betterSolution 
) [virtual]

Performs heuristic.

Definition at line 67 of file BonHeuristicDive.cpp.

References Bonmin::adjustPrimalTolerance(), Bonmin::B_BB, Bonmin::OsiTMINLPInterface::clone(), Bonmin::TMINLP::CONTINUOUS, Bonmin::TMINLP2TNLP::get_nlp_info(), Bonmin::BonminSetup::getAlgorithm(), howOften_, Bonmin::OsiTMINLPInterface::initialSolve(), Bonmin::isNlpFeasible(), Bonmin::BabSetupBase::nonlinearSolver(), percentageToFix_, Bonmin::OsiTMINLPInterface::problem(), selectVariableToBranch(), setInternalVariables(), and setup_.

virtual void Bonmin::HeuristicDive::setInternalVariables ( TMINLP2TNLP minlp  )  [pure virtual]

sets internal variables

Implemented in Bonmin::HeuristicDiveFractional, and Bonmin::HeuristicDiveVectorLength.

Referenced by solution().

virtual void Bonmin::HeuristicDive::selectVariableToBranch ( TMINLP2TNLP minlp,
const vector< int > &  integerColumns,
const double *  newSolution,
int &  bestColumn,
int &  bestRound 
) [pure virtual]

If bestColumn = -1, it means that no variable was found.

Implemented in Bonmin::HeuristicDiveFractional, and Bonmin::HeuristicDiveVectorLength.

Referenced by solution().


Member Data Documentation

BonminSetup* Bonmin::HeuristicDive::setup_ [protected]

Setup to use for local searches (will make copies).

Definition at line 71 of file BonHeuristicDive.hpp.

Referenced by operator=(), setSetup(), and solution().

double Bonmin::HeuristicDive::percentageToFix_ [protected]

Percentage of integer variables to fix at bounds.

Definition at line 74 of file BonHeuristicDive.hpp.

Referenced by operator=(), setPercentageToFix(), and solution().

int Bonmin::HeuristicDive::howOften_ [private]

How often to do (code can change).

Definition at line 78 of file BonHeuristicDive.hpp.

Referenced by operator=(), and solution().


The documentation for this class was generated from the following files:
Generated on Thu Nov 10 03:13:44 2011 by  doxygen 1.4.7