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/BonMilpRounding.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/BonMilpRounding.hpp')
-rw-r--r-- | build/Bonmin/include/coin/BonMilpRounding.hpp | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/build/Bonmin/include/coin/BonMilpRounding.hpp b/build/Bonmin/include/coin/BonMilpRounding.hpp new file mode 100644 index 0000000..94f8723 --- /dev/null +++ b/build/Bonmin/include/coin/BonMilpRounding.hpp @@ -0,0 +1,74 @@ +// Copyright (C) 2010, International Business Machines Corporation and others. +// All Rights Reserved. +// This code is published under the Eclipse Public License. +// +// Authors : +// Pierre Bonami CNRS +// +// Date : May, 26 2010 + +#ifndef BonMilpRounding_HPP +#define BonMilpRounding_HPP +#include "BonOsiTMINLPInterface.hpp" +#include "BonBonminSetup.hpp" +#include "CbcHeuristic.hpp" +#include "CbcStrategy.hpp" +#include "OsiCuts.hpp" + +namespace Bonmin +{ + class SubMipSolver; + class MilpRounding : public CbcHeuristic + { + public: + + /// Constructor with setup + MilpRounding(BonminSetup * setup); + + /// Copy constructor + MilpRounding(const MilpRounding ©); + + /// Destructor + ~MilpRounding(); + + /// Assignment operator + MilpRounding & operator=(const MilpRounding & rhs); + + /// Clone + virtual CbcHeuristic * clone() const{ + return new MilpRounding(*this); + } + + /// Initialize method + void Initialize(BonminSetup * setup); + + /// Resets stuff if model changes + virtual void resetModel(CbcModel * model){ + setModel(model); + } + + /** Change setup used for heuristic.*/ + virtual void setSetup(BonminSetup * setup){ + setup_ = setup; + // Initialize(setup_->options()); + } + + /// Performs heuristic + virtual int solution(double &solutionValue, double *betterSolution); + + + static void registerOptions(Ipopt::SmartPtr<Bonmin::RegisteredOptions> roptions); + protected: + /** Setup to use for local searches (will make copies).*/ + BonminSetup * setup_; + + private: + /// How often to do (code can change) + int howOften_; + /// A subsolver for MIP + SubMipSolver * mip_; + + OsiCuts noGoods; + }; +} +#endif |