summaryrefslogtreecommitdiff
path: root/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp
diff options
context:
space:
mode:
authorHarpreet2016-09-03 00:36:51 +0530
committerHarpreet2016-09-03 00:36:51 +0530
commita0d9443af147e949c1e6a01ac24749d12593ec5b (patch)
tree1a1955c5482ae608fd7f618b06f4ecc6a0d39a23 /thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp
parent4b64cf486f5c999fd8167758cae27839f3b50848 (diff)
downloadFOSSEE-Optim-toolbox-development-a0d9443af147e949c1e6a01ac24749d12593ec5b.tar.gz
FOSSEE-Optim-toolbox-development-a0d9443af147e949c1e6a01ac24749d12593ec5b.tar.bz2
FOSSEE-Optim-toolbox-development-a0d9443af147e949c1e6a01ac24749d12593ec5b.zip
cbcintlinprog added
Diffstat (limited to 'thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp')
-rw-r--r--thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp b/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp
new file mode 100644
index 0000000..593fa62
--- /dev/null
+++ b/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp
@@ -0,0 +1,66 @@
+// $Id: CbcCutSubsetModifier.hpp 1899 2013-04-09 18:12:08Z stefan $
+// Copyright (C) 2003, International Business Machines
+// Corporation and others. All Rights Reserved.
+// This code is licensed under the terms of the Eclipse Public License (EPL).
+
+//Edwin 11/25/09 carved out of CbcCutGenerator
+
+#ifndef CbcCutSubsetModifier_H
+#define CbcCutSubsetModifier_H
+
+#include "OsiSolverInterface.hpp"
+#include "OsiCuts.hpp"
+#include "CglCutGenerator.hpp"
+#include "CbcCutModifier.hpp"
+
+class CbcModel;
+class OsiRowCut;
+class OsiRowCutDebugger;
+/** Simple cut modifier base class
+
+ In exotic circumstances - cuts may need to be modified
+ a) strengthened - changed
+ b) weakened - changed
+ c) deleted - set to NULL
+ d) unchanged
+
+ initially get rid of cuts with variables >= k
+ could weaken
+*/
+
+class CbcCutSubsetModifier : public CbcCutModifier {
+public:
+ /// Default Constructor
+ CbcCutSubsetModifier ();
+
+ /// Useful Constructor
+ CbcCutSubsetModifier (int firstOdd);
+
+ // Copy constructor
+ CbcCutSubsetModifier ( const CbcCutSubsetModifier &);
+
+ /// Destructor
+ virtual ~CbcCutSubsetModifier();
+
+ /// Assignment
+ CbcCutSubsetModifier & operator=(const CbcCutSubsetModifier& rhs);
+/// Clone
+ virtual CbcCutModifier * clone() const ;
+
+ /** Returns
+ 0 unchanged
+ 1 strengthened
+ 2 weakened
+ 3 deleted
+ */
+ virtual int modify(const OsiSolverInterface * solver, OsiRowCut & cut) ;
+ /// Create C++ lines to get to current state
+ virtual void generateCpp( FILE * ) {}
+protected:
+ /// data
+ /// First odd variable
+ int firstOdd_;
+};
+
+#endif //CbcCutSubsetModifier_H
+