summaryrefslogtreecommitdiff
path: root/newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp
diff options
context:
space:
mode:
authorHarpreet2016-09-03 00:34:27 +0530
committerHarpreet2016-09-03 00:34:27 +0530
commit4b64cf486f5c999fd8167758cae27839f3b50848 (patch)
treed9d06639fb7fa61aef59be0363655e4747105ec7 /newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp
parentd19794fb80a271a4c885ed90f97cfc12baa012f2 (diff)
downloadFOSSEE-Optim-toolbox-development-4b64cf486f5c999fd8167758cae27839f3b50848.tar.gz
FOSSEE-Optim-toolbox-development-4b64cf486f5c999fd8167758cae27839f3b50848.tar.bz2
FOSSEE-Optim-toolbox-development-4b64cf486f5c999fd8167758cae27839f3b50848.zip
Structure updated and intqpipopt files added
Diffstat (limited to 'newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp')
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp77
1 files changed, 77 insertions, 0 deletions
diff --git a/newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp
new file mode 100644
index 0000000..6cc96fa
--- /dev/null
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp
@@ -0,0 +1,77 @@
+// $Id: CbcHeuristicRENS.hpp 2105 2015-01-05 13:11:11Z forrest $
+// Copyright (C) 2006, International Business Machines
+// Corporation and others. All Rights Reserved.
+// This code is licensed under the terms of the Eclipse Public License (EPL).
+
+// edwin 12/5/09 carved out of CbcHeuristicRINS
+
+#ifndef CbcHeuristicRENS_H
+#define CbcHeuristicRENS_H
+
+#include "CbcHeuristic.hpp"
+
+/** LocalSearch class
+ */
+
+class CbcHeuristicRENS : public CbcHeuristic {
+public:
+
+ // Default Constructor
+ CbcHeuristicRENS ();
+
+ /* Constructor with model - assumed before cuts
+ Initial version does not do Lps
+ */
+ CbcHeuristicRENS (CbcModel & model);
+
+ // Copy constructor
+ CbcHeuristicRENS ( const CbcHeuristicRENS &);
+
+ // Destructor
+ ~CbcHeuristicRENS ();
+
+ /// Clone
+ virtual CbcHeuristic * clone() const;
+
+
+ /// Assignment operator
+ CbcHeuristicRENS & operator=(const CbcHeuristicRENS& rhs);
+
+ /// Resets stuff if model changes
+ virtual void resetModel(CbcModel * model);
+
+ /// update model (This is needed if cliques update matrix etc)
+ virtual void setModel(CbcModel * model);
+
+ using CbcHeuristic::solution ;
+ /** returns 0 if no solution, 1 if valid solution.
+ Sets solution values if good, sets objective value (only if good)
+ This does Relaxation Extension Neighborhood Search
+ Does not run if when_<2 and a solution exists
+ */
+ virtual int solution(double & objectiveValue,
+ double * newSolution);
+
+ /// Set type
+ inline void setRensType(int value)
+ { rensType_ = value;}
+
+protected:
+ // Data
+ /// Number of tries
+ int numberTries_;
+ /** Type
+ 0 - fix at LB
+ 1 - fix on dj
+ 2 - fix at UB as well
+ 3 - fix on 0.01*average dj
+ add 16 to allow two tries
+ 32 - if solution exists use to keep more variables
+ 64 - if priorities keep high priority
+ 128 - if priorities keep low priority
+ */
+ int rensType_;
+};
+
+#endif
+