Bonmin  1.8.8
BonFpForMinlp.hpp
Go to the documentation of this file.
1 // (C) Copyright CNRS 2008
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // Authors :
6 // P. Bonami, CNRS
7 //
8 // Date : 02/13/2009
9 
10 #ifndef BonFpForMinlp_H
11 #define BonFpForMinlp_H
12 #include "BonOaDecBase.hpp"
13 
14 namespace Bonmin{
16  public:
19 
22  :
23  OaDecompositionBase(copy),
24  subMip_(new SubMipSolver(*copy.subMip_)),
25  passBound_(copy.passBound_)
26  {}
29 
30  void setStrategy(const CbcStrategy & strategy)
31  {
32  parameters_.setStrategy(strategy);
33  }
34 
35  virtual CglCutGenerator * clone() const
36  {
37  return new MinlpFeasPump(*this);
38  }
41 
42  protected:
44  virtual double performOa(OsiCuts & cs, solverManip &lpManip,
45  BabInfo * babInfo, double &cutoff, const CglTreeInfo & info) const;
47  virtual bool doLocalSearch(BabInfo * babInfo) const;
49  void set_fp_objective(OsiSolverInterface &si, const double * colsol) const;
50 
51  private:
52  SubMipSolver * subMip_;
54  int passBound_;
55  };
56 
57 }/* End Namespace.*/
58 
59 #endif
60 
61 
CglTreeInfo
Bonmin::OaDecompositionBase::parameters_
Parameters parameters_
Parameters.
Definition: BonOaDecBase.hpp:265
Bonmin::MinlpFeasPump::clone
virtual CglCutGenerator * clone() const
Definition: BonFpForMinlp.hpp:35
Bonmin
(C) Copyright International Business Machines Corporation 2007
Definition: BonAmplSetup.hpp:15
Bonmin::MinlpFeasPump
Definition: BonFpForMinlp.hpp:15
Bonmin::BabSetupBase
A class to have all elements necessary to setup a branch-and-bound.
Definition: BonBabSetupBase.hpp:25
Bonmin::SubMipSolver
A very simple class to provide a common interface for solving MIPs with Cplex and Cbc.
Definition: BonSubMipSolver.hpp:29
Bonmin::MinlpFeasPump::MinlpFeasPump
MinlpFeasPump(BabSetupBase &b)
Constructor with basic setup.
CglCutGenerator
Bonmin::MinlpFeasPump::setStrategy
void setStrategy(const CbcStrategy &strategy)
Definition: BonFpForMinlp.hpp:30
Bonmin::MinlpFeasPump::~MinlpFeasPump
~MinlpFeasPump()
Destructor.
Bonmin::BabInfo
Bonmin class for passing info between components of branch-and-cuts.
Definition: BonBabInfos.hpp:19
Ipopt::SmartPtr
Bonmin::MinlpFeasPump::performOa
virtual double performOa(OsiCuts &cs, solverManip &lpManip, BabInfo *babInfo, double &cutoff, const CglTreeInfo &info) const
virtual method which performs the OA algorithm by modifying lp and nlp.
OsiCuts
Bonmin::MinlpFeasPump::set_fp_objective
void set_fp_objective(OsiSolverInterface &si, const double *colsol) const
Put objective of MIP according to FP scheme.
Bonmin::OaDecompositionBase::Parameters::setStrategy
void setStrategy(const CbcStrategy &strategy)
Strategy to apply when using Cbc as MILP sub-solver.
Definition: BonOaDecBase.hpp:183
OsiSolverInterface
Bonmin::OaDecompositionBase
Base class for OA algorithms.
Definition: BonOaDecBase.hpp:27
Bonmin::MinlpFeasPump::registerOptions
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Register OA options.
Bonmin::MinlpFeasPump::doLocalSearch
virtual bool doLocalSearch(BabInfo *babInfo) const
virutal method to decide if local search is performed
Bonmin::MinlpFeasPump::MinlpFeasPump
MinlpFeasPump(const MinlpFeasPump &copy)
Copy constructor.
Definition: BonFpForMinlp.hpp:21
BonOaDecBase.hpp