diff options
author | Harpreet | 2016-08-04 15:25:44 +0530 |
---|---|---|
committer | Harpreet | 2016-08-04 15:25:44 +0530 |
commit | 9fd2976931c088dc523974afb901e96bad20f73c (patch) | |
tree | 22502de6e6988d5cd595290d11266f8432ad825b /build/Bonmin/include/coin/BonOACutGenerator2.hpp | |
download | FOSSEE-Optim-toolbox-development-9fd2976931c088dc523974afb901e96bad20f73c.tar.gz FOSSEE-Optim-toolbox-development-9fd2976931c088dc523974afb901e96bad20f73c.tar.bz2 FOSSEE-Optim-toolbox-development-9fd2976931c088dc523974afb901e96bad20f73c.zip |
initial add
Diffstat (limited to 'build/Bonmin/include/coin/BonOACutGenerator2.hpp')
-rw-r--r-- | build/Bonmin/include/coin/BonOACutGenerator2.hpp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/build/Bonmin/include/coin/BonOACutGenerator2.hpp b/build/Bonmin/include/coin/BonOACutGenerator2.hpp new file mode 100644 index 0000000..c098c9b --- /dev/null +++ b/build/Bonmin/include/coin/BonOACutGenerator2.hpp @@ -0,0 +1,56 @@ +// (C) Copyright Carnegie Mellon University 2005 +// All Rights Reserved. +// This code is published under the Eclipse Public License. +// +// Authors : +// P. Bonami, Carnegie Mellon University +// +// Date : 05/26/2005 + + +#ifndef BonOACutGenerator2_HPP +#define BonOACutGenerator2_HPP +#include "BonOaDecBase.hpp" + +namespace Bonmin +{ + /** Class to perform OA in its classical form.*/ + class OACutGenerator2 : public OaDecompositionBase + { + public: + /// Constructor with basic setup + OACutGenerator2(BabSetupBase & b); + + /// Copy constructor + OACutGenerator2(const OACutGenerator2 ©) + : + OaDecompositionBase(copy), + subMip_(new SubMipSolver (*copy.subMip_)) + {} + /// Destructor + ~OACutGenerator2(); + + void setStrategy(const CbcStrategy & strategy) + { + parameters_.setStrategy(strategy); + } + + virtual CglCutGenerator * clone() const + { + return new OACutGenerator2(*this); + } + /** Register OA options.*/ + static void registerOptions(Ipopt::SmartPtr<Bonmin::RegisteredOptions> roptions); + + protected: + /// virtual method which performs the OA algorithm by modifying lp and nlp. + virtual double performOa(OsiCuts & cs, solverManip &lpManip, + BabInfo * babInfo, double &cutoff, const CglTreeInfo & info) const; + /// virutal method to decide if local search is performed + virtual bool doLocalSearch(BabInfo * babInfo) const; + + private: + SubMipSolver * subMip_; + }; +} +#endif |