Couenne  0.5.8
BonCouenneSetup.hpp
Go to the documentation of this file.
1 /* $Id: BonCouenneSetup.hpp 804 2012-01-30 23:40:42Z pbelotti $ */
2 // (C) Copyright International Business Machines Corporation 2007
3 // All Rights Reserved.
4 // This code is published under the Eclipse Public License (EPL).
5 //
6 // Authors :
7 // Pierre Bonami, International Business Machines Corporation
8 //
9 // Date : 04/18/2007
10 
11 #ifndef BonCouenneSetup_H
12 #define BonCouenneSetup_H
13 
14 #include "BonBabSetupBase.hpp"
15 #include "BonBonminSetup.hpp"
16 #include "CbcFeasibilityBase.hpp"
17 
18 #include "CouenneTNLP.hpp"
19 
20 struct ASL;
21 
22 namespace Bonmin{
23  class Bab;
24 }
25 
26 namespace Couenne {
27 
28  class CouenneInterface;
29  class CouenneCutGenerator;
30  class CouenneProblem;
31  class CouenneTNLP;
32 
34  public:
35  ASL * asl;
38  asl(NULL)
39  {}
40  virtual ~SmartAsl();
41  };
42 
44  public:
47  BonminSetup(),
48  aslfg_(NULL),
49  CouennePtr_ (NULL),
50  displayStats_ (false),
51  couenneProb_ (NULL),
52  couenneProb_is_own_(true) {}
53 
55  CouenneSetup(const CouenneSetup& other):
56  BonminSetup(other),
57  aslfg_(NULL),
58  displayStats_ (other.displayStats_),
59  couenneProb_ (other.couenneProb_) {}
60 
62  virtual Bonmin::BabSetupBase * clone () const
63  {return new CouenneSetup (*this);}
64 
66  virtual ~CouenneSetup();
67 
69  bool InitializeCouenne(char ** argv = NULL,
70  CouenneProblem *couenneProb = NULL,
71  Ipopt::SmartPtr<Bonmin::TMINLP> tminlp = NULL,
72  CouenneInterface *ci = NULL,
73  Bonmin::Bab *bb = NULL);
74 
76  virtual void registerOptions();
79 
81  virtual void readOptionsFile(){
82  if (readOptions_) return;
84  }
85 
88  {return CouennePtr_;}
89 
91  bool displayStats ()
92  {return displayStats_;}
93 
96 
98  inline void setDoubleParameter (const DoubleParameter &p, const double val)
99  {doubleParam_ [p] = val;}
100 
102  inline double getDoubleParameter (const DoubleParameter &p) const
103  {return doubleParam_ [p];}
104 
106  {nodeComparisonMethod_ = c;}
107 
108 private:
110 
115  CouenneCutGenerator *CouennePtr_;
116 
118  bool displayStats_;
119 
121  CouenneProblem *couenneProb_;
122 
124  bool couenneProb_is_own_;
125  };
126 }
127 
128 #endif
Bonmin::Bab
Couenne::CouenneSetup::displayStats
bool displayStats()
true if one wants to display statistics at the end of program
Definition: BonCouenneSetup.hpp:91
Couenne::CouenneSetup::addMilpCutGenerators
void addMilpCutGenerators()
add cut generators
Couenne::CouenneSetup::registerOptions
virtual void registerOptions()
register the options
Bonmin::BabSetupBase::doubleParam_
double doubleParam_[NumberDoubleParam]
Couenne::CouenneSetup::~CouenneSetup
virtual ~CouenneSetup()
destructor
Couenne::CouenneSetup::setDoubleParameter
void setDoubleParameter(const DoubleParameter &p, const double val)
modify parameter (used for MaxTime)
Definition: BonCouenneSetup.hpp:98
Bonmin::BabSetupBase::roptions
Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions()
Bonmin::BabSetupBase::nodeComparisonMethod_
NodeComparison nodeComparisonMethod_
Bonmin
Ipopt
Couenne::CouenneCutGenerator
Cut Generator for linear convexifications.
Definition: CouenneCutGenerator.hpp:49
Couenne::CouenneSetup
Definition: BonCouenneSetup.hpp:43
Couenne::SmartAsl::SmartAsl
SmartAsl()
Definition: BonCouenneSetup.hpp:36
Couenne
general include file for different compilers
Definition: CouenneAggrProbing.hpp:24
Bonmin::BabSetupBase
CouenneTNLP.hpp
Couenne::SmartAsl
Definition: BonCouenneSetup.hpp:33
Bonmin::BonminSetup::BonminSetup
BonminSetup(const CoinMessageHandler *handler=NULL)
Couenne::SmartAsl::asl
ASL * asl
Definition: BonCouenneSetup.hpp:35
Couenne::CouenneSetup::CouenneSetup
CouenneSetup(const CouenneSetup &other)
Copy constructor.
Definition: BonCouenneSetup.hpp:55
Bonmin::BabSetupBase::readOptions_
bool readOptions_
Ipopt::SmartPtr< Bonmin::TMINLP >
Bonmin::BabSetupBase::DoubleParameter
DoubleParameter
CbcFeasibilityBase.hpp
Couenne::CouenneSetup::clone
virtual Bonmin::BabSetupBase * clone() const
virtual copy constructor.
Definition: BonCouenneSetup.hpp:62
Couenne::CouenneSetup::CouenneSetup
CouenneSetup()
Default constructor.
Definition: BonCouenneSetup.hpp:46
Bonmin::BonminSetup
BonBonminSetup.hpp
Couenne::CouenneSetup::getDoubleParameter
double getDoubleParameter(const DoubleParameter &p) const
modify parameter (used for MaxTime)
Definition: BonCouenneSetup.hpp:102
Bonmin::BabSetupBase::readOptionsFile
virtual void readOptionsFile()
BonBabSetupBase.hpp
Couenne::CouenneSetup::readOptionsFile
virtual void readOptionsFile()
Get the basic options if don't already have them.
Definition: BonCouenneSetup.hpp:81
Couenne::CouenneSetup::registerAllOptions
static void registerAllOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Register all Couenne options.
Couenne::CouenneSetup::InitializeCouenne
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.
Bonmin::BabSetupBase::NodeComparison
NodeComparison
Couenne::SmartAsl::~SmartAsl
virtual ~SmartAsl()
Couenne::CouenneInterface
Definition: BonCouenneInterface.hpp:34
Couenne::CouenneProblem
Class for MINLP problems with symbolic information.
Definition: CouenneProblem.hpp:169
Ipopt::ReferencedObject
Couenne::CouenneSetup::setNodeComparisonMethod
void setNodeComparisonMethod(Bonmin::BabSetupBase::NodeComparison c)
Definition: BonCouenneSetup.hpp:105
Couenne::CouenneSetup::couennePtr
CouenneCutGenerator * couennePtr() const
return pointer to cut generator (used to get pointer to problem)
Definition: BonCouenneSetup.hpp:87
Ipopt::ReferencedObject::ReferencedObject
ReferencedObject()