Couenne::CouenneSetup Class Reference

#include <BonCouenneSetup.hpp>

Inheritance diagram for Couenne::CouenneSetup:

Inheritance graph
[legend]
Collaboration diagram for Couenne::CouenneSetup:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 CouenneSetup ()
 Default constructor.
 CouenneSetup (const CouenneSetup &other)
 Copy constructor.
virtual Bonmin::BabSetupBaseclone () const
 virtual copy constructor.
virtual ~CouenneSetup ()
 destructor
bool InitializeCouenne (char **argv=NULL, CouenneProblem *couenneProb=NULL, Ipopt::SmartPtr< Bonmin::TMINLP > tminlp=NULL, CouenneInterface *ci=NULL, Bonmin::Bab *bb=NULL)
 Initialize from command line arguments.
virtual void registerOptions ()
 register the options
virtual void readOptionsFile ()
 Get the basic options if don't already have them.
CouenneCutGeneratorcouennePtr () const
 return pointer to cut generator (used to get pointer to problem)
bool displayStats ()
 true if one wants to display statistics at the end of program
void addMilpCutGenerators ()
 add cut generators
void setDoubleParameter (const DoubleParameter &p, const double val)
 modify parameter (used for MaxTime)
double getDoubleParameter (const DoubleParameter &p) const
 modify parameter (used for MaxTime)
void setNodeComparisonMethod (Bonmin::BabSetupBase::NodeComparison c)

Static Public Member Functions

static void registerAllOptions (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
 Register all Couenne options.

Private Attributes

Ipopt::SmartPtr< SmartAslaslfg_
CouenneCutGeneratorCouennePtr_
 hold a reference to Couenne cut generator to delete it at last.
bool displayStats_
 true if one wants to display statistics at the end of program
CouenneProblemcouenneProb_
 MINLP formulation.
bool couenneProb_is_own_
 whether the couenneProb_ has been created by Couenne, and thus will be deleted by Couenne

Detailed Description

Definition at line 40 of file BonCouenneSetup.hpp.


Constructor & Destructor Documentation

Couenne::CouenneSetup::CouenneSetup (  )  [inline]

Default constructor.

Definition at line 43 of file BonCouenneSetup.hpp.

Referenced by clone().

Couenne::CouenneSetup::CouenneSetup ( const CouenneSetup other  )  [inline]

Copy constructor.

Definition at line 52 of file BonCouenneSetup.hpp.

CouenneSetup::~CouenneSetup (  )  [virtual]

destructor

Definition at line 94 of file BonCouenneSetup.cpp.

References couenneProb_, and couenneProb_is_own_.


Member Function Documentation

virtual Bonmin::BabSetupBase* Couenne::CouenneSetup::clone (  )  const [inline, virtual]

virtual copy constructor.

Reimplemented from Bonmin::BonminSetup.

Definition at line 59 of file BonCouenneSetup.hpp.

References CouenneSetup().

bool CouenneSetup::InitializeCouenne ( char **  argv = NULL,
CouenneProblem couenneProb = NULL,
Ipopt::SmartPtr< Bonmin::TMINLP tminlp = NULL,
CouenneInterface ci = NULL,
Bonmin::Bab bb = NULL 
)

Initialize from command line arguments.

Change default value for failure behavior so that code doesn't crash when Ipopt does not solve a sub-problem.

Set the output level of the journalist for all Couenne categories. We probably want to make that a bit more flexible later.

trying to avoid repetitions here...

setup initial heuristic (in principle it should only run once...)

Definition at line 103 of file BonCouenneSetup.cpp.

References addJournalist, addMilpCutGenerators(), aslfg_, Couenne::AUX, Bonmin::BabSetupBase::bestBound, Bonmin::BabSetupBase::branchingMethod_, Bonmin::BabSetupBase::continuousSolver_, couenneProb_, couenneProb_is_own_, CouennePtr_, Bonmin::BabSetupBase::cutGenerators(), displayStats_, Couenne::CouenneObject::EXPR_OBJ, Bonmin::BabSetupBase::gatherParametersValues(), getDoubleParameter(), Bonmin::BabSetupBase::heuristics_, Bonmin::BonminSetup::initialize(), Bonmin::BabSetupBase::intParam_, Couenne::isInteger(), Couenne::J_BOUNDTIGHTENING(), Couenne::J_BRANCHING(), Couenne::J_CONVEXIFYING(), Couenne::J_COUENNE(), Couenne::J_DISJCUTS(), Couenne::J_NLPHEURISTIC(), Couenne::J_PROBLEM(), Couenne::J_REFORMULATE(), Bonmin::BabSetupBase::journalist(), Bonmin::BabSetupBase::journalist_, Couenne::LINEAR, Couenne::maxNlpInf_0, Bonmin::BabSetupBase::nodeComparisonMethod_, Bonmin::BabSetupBase::nonlinearSolver(), Bonmin::BabSetupBase::nonlinearSolver_, Bonmin::BabSetupBase::NumCutPasses, Bonmin::BabSetupBase::objects(), Bonmin::BabSetupBase::options(), Bonmin::BabSetupBase::options_, Bonmin::BabSetupBase::OSI_SIMPLE, Bonmin::BabSetupBase::OSI_STRONG, Bonmin::BabSetupBase::prefix_, readASLfg(), readOptionsFile(), Bonmin::BabSetupBase::roptions(), Bonmin::BabSetupBase::roptions_, s, Couenne::NlpSolveHeuristic::setCouenneProblem(), Couenne::NlpSolveHeuristic::setMaxNlpInf(), Couenne::NlpSolveHeuristic::setNlp(), Couenne::NlpSolveHeuristic::setNumberSolvePerLevel(), Bonmin::BonChooseVariable::setOnlyPseudoWhenTrusted(), Couenne::CouenneObject::VAR_OBJ, and Couenne::CouenneObject::VT_OBJ.

Referenced by main(), and CouenneSolver::solve().

void CouenneSetup::registerOptions (  )  [virtual]

register the options

Reimplemented from Bonmin::BonminSetup.

Definition at line 800 of file BonCouenneSetup.cpp.

References registerAllOptions(), and Bonmin::BabSetupBase::roptions().

void CouenneSetup::registerAllOptions ( Ipopt::SmartPtr< Bonmin::RegisteredOptions roptions  )  [static]

Register all Couenne options.

Heuristics

TODO: move later!

Definition at line 804 of file BonCouenneSetup.cpp.

References addLevOption, Bonmin::RegisteredOptions::CouenneCategory, Couenne::feas_tolerance_default, Couenne::CouenneIterativeRounding::registerOptions(), Couenne::CouenneFeasPump::registerOptions(), Couenne::NlpSolveHeuristic::registerOptions(), Couenne::CouenneTwoImplied::registerOptions(), Couenne::CouenneDisjCuts::registerOptions(), Couenne::CouenneFixPoint::registerOptions(), Couenne::CouenneChooseVariable::registerOptions(), Couenne::CouenneChooseStrong::registerOptions(), Couenne::CouenneCutGenerator::registerOptions(), Couenne::CouenneProblem::registerOptions(), Bonmin::HeuristicDiveMIPVectorLength::registerOptions(), Bonmin::HeuristicDiveMIPFractional::registerOptions(), Bonmin::HeuristicDiveVectorLength::registerOptions(), Bonmin::HeuristicDiveFractional::registerOptions(), Bonmin::HeuristicFPump::registerOptions(), Bonmin::HeuristicLocalBranching::registerOptions(), Bonmin::HeuristicRINS::registerOptions(), Bonmin::PumpForMinlp::registerOptions(), Bonmin::MilpRounding::registerOptions(), Bonmin::DummyPump::registerOptions(), Bonmin::FixAndSolveHeuristic::registerOptions(), Bonmin::LocalSolverBasedHeuristic::registerOptions(), and Bonmin::BonCbcFullNodeInfo::registerOptions().

Referenced by main(), and registerOptions().

virtual void Couenne::CouenneSetup::readOptionsFile (  )  [inline, virtual]

Get the basic options if don't already have them.

Reimplemented from Bonmin::BabSetupBase.

Definition at line 78 of file BonCouenneSetup.hpp.

References Bonmin::BabSetupBase::readOptions_, and Bonmin::BabSetupBase::readOptionsFile().

Referenced by InitializeCouenne().

CouenneCutGenerator* Couenne::CouenneSetup::couennePtr (  )  const [inline]

return pointer to cut generator (used to get pointer to problem)

Definition at line 84 of file BonCouenneSetup.hpp.

References CouennePtr_.

Referenced by Couenne::CouenneAggrProbing::CouenneAggrProbing(), main(), Couenne::CouenneAggrProbing::probeVariable(), and Couenne::CouenneAggrProbing::probeVariable2().

bool Couenne::CouenneSetup::displayStats (  )  [inline]

true if one wants to display statistics at the end of program

Definition at line 88 of file BonCouenneSetup.hpp.

References displayStats_.

void CouenneSetup::addMilpCutGenerators (  ) 

add cut generators

Reimplemented from Bonmin::BonminSetup.

Definition at line 971 of file BonCouenneSetup.cpp.

References couenneProb_, Bonmin::BabSetupBase::cutGenerators_, Couenne::CouenneRecordBestSol::getHasSol(), Couenne::CouenneProblem::getRecordBestSol(), Bonmin::BabSetupBase::options_, Couenne::CouenneProblem::setCutOff(), and Couenne::CouenneRecordBestSol::setVal().

Referenced by InitializeCouenne().

void Couenne::CouenneSetup::setDoubleParameter ( const DoubleParameter p,
const double  val 
) [inline]

modify parameter (used for MaxTime)

Definition at line 95 of file BonCouenneSetup.hpp.

References Bonmin::BabSetupBase::doubleParam_.

Referenced by main(), Couenne::CouenneAggrProbing::probeVariable(), and Couenne::CouenneAggrProbing::probeVariable2().

double Couenne::CouenneSetup::getDoubleParameter ( const DoubleParameter p  )  const [inline]

modify parameter (used for MaxTime)

Definition at line 99 of file BonCouenneSetup.hpp.

References Bonmin::BabSetupBase::doubleParam_.

Referenced by InitializeCouenne(), Couenne::CouenneAggrProbing::probeVariable(), and Couenne::CouenneAggrProbing::probeVariable2().

void Couenne::CouenneSetup::setNodeComparisonMethod ( Bonmin::BabSetupBase::NodeComparison  c  )  [inline]

Definition at line 102 of file BonCouenneSetup.hpp.

References Bonmin::BabSetupBase::nodeComparisonMethod_.

Referenced by Couenne::CouenneAggrProbing::probeVariable(), and Couenne::CouenneAggrProbing::probeVariable2().


Member Data Documentation

Ipopt::SmartPtr<SmartAsl> Couenne::CouenneSetup::aslfg_ [private]

Definition at line 106 of file BonCouenneSetup.hpp.

Referenced by InitializeCouenne().

CouenneCutGenerator* Couenne::CouenneSetup::CouennePtr_ [private]

hold a reference to Couenne cut generator to delete it at last.

The alternative would be to clone it every time the CouenneSolverInterface is cloned (that is, at each call of Optimality-based bound tightening).

Definition at line 112 of file BonCouenneSetup.hpp.

Referenced by couennePtr(), and InitializeCouenne().

bool Couenne::CouenneSetup::displayStats_ [private]

true if one wants to display statistics at the end of program

Definition at line 115 of file BonCouenneSetup.hpp.

Referenced by displayStats(), and InitializeCouenne().

CouenneProblem* Couenne::CouenneSetup::couenneProb_ [private]

MINLP formulation.

Definition at line 118 of file BonCouenneSetup.hpp.

Referenced by addMilpCutGenerators(), InitializeCouenne(), and ~CouenneSetup().

bool Couenne::CouenneSetup::couenneProb_is_own_ [private]

whether the couenneProb_ has been created by Couenne, and thus will be deleted by Couenne

Definition at line 121 of file BonCouenneSetup.hpp.

Referenced by InitializeCouenne(), and ~CouenneSetup().


The documentation for this class was generated from the following files:
Generated on Wed Nov 30 03:13:29 2011 by  doxygen 1.4.7