summaryrefslogtreecommitdiff
path: root/build/Bonmin/include/coin/CbcBranchToFixLots.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'build/Bonmin/include/coin/CbcBranchToFixLots.hpp')
-rw-r--r--build/Bonmin/include/coin/CbcBranchToFixLots.hpp94
1 files changed, 0 insertions, 94 deletions
diff --git a/build/Bonmin/include/coin/CbcBranchToFixLots.hpp b/build/Bonmin/include/coin/CbcBranchToFixLots.hpp
deleted file mode 100644
index 3b0a9ea..0000000
--- a/build/Bonmin/include/coin/CbcBranchToFixLots.hpp
+++ /dev/null
@@ -1,94 +0,0 @@
-// $Id: CbcBranchToFixLots.hpp 1899 2013-04-09 18:12:08Z stefan $
-// Copyright (C) 2004, International Business Machines
-// Corporation and others. All Rights Reserved.
-// This code is licensed under the terms of the Eclipse Public License (EPL).
-
-// Edwin 11/13/2009-- carved out of CbcBranchCut
-
-#ifndef CbcBranchToFixLots_H
-#define CbcBranchToFixLots_H
-
-#include "CbcBranchCut.hpp"
-#include "CbcBranchBase.hpp"
-#include "OsiRowCut.hpp"
-#include "CoinPackedMatrix.hpp"
-
-/** Define a branch class that branches so that one way variables are fixed
- while the other way cuts off that solution.
- a) On reduced cost
- b) When enough ==1 or <=1 rows have been satisfied (not fixed - satisfied)
-*/
-
-
-class CbcBranchToFixLots : public CbcBranchCut {
-
-public:
-
- // Default Constructor
- CbcBranchToFixLots ();
-
- /** Useful constructor - passed reduced cost tolerance and fraction we would like fixed.
- Also depth level to do at.
- Also passed number of 1 rows which when clean triggers fix
- Always does if all 1 rows cleaned up and number>0 or if fraction columns reached
- Also whether to create branch if can't reach fraction.
- */
- CbcBranchToFixLots (CbcModel * model, double djTolerance,
- double fractionFixed, int depth,
- int numberClean = 0,
- const char * mark = NULL,
- bool alwaysCreate = false);
-
- // Copy constructor
- CbcBranchToFixLots ( const CbcBranchToFixLots &);
-
- /// Clone
- virtual CbcObject * clone() const;
-
- // Assignment operator
- CbcBranchToFixLots & operator=( const CbcBranchToFixLots& rhs);
-
- // Destructor
- ~CbcBranchToFixLots ();
-
- /** Does a lot of the work,
- Returns 0 if no good, 1 if dj, 2 if clean, 3 if both
- FIXME: should use enum or equivalent to make these numbers clearer.
- */
- int shallWe() const;
-
- /// Infeasibility for an integer variable - large is 0.5, but also can be infinity when known infeasible.
- virtual double infeasibility(const OsiBranchingInformation * info,
- int &preferredWay) const;
- /** \brief Return true if object can take part in normal heuristics
- */
- virtual bool canDoHeuristics() const {
- return true;
- }
-
- /// Creates a branching object
- virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface * solver, const OsiBranchingInformation * info, int way) ;
- /// Redoes data when sequence numbers change
- virtual void redoSequenceEtc(CbcModel * model, int numberColumns, const int * originalColumns);
-
-
-protected:
- /// data
-
- /// Reduced cost tolerance i.e. dj has to be >= this before fixed
- double djTolerance_;
- /// We only need to make sure this fraction fixed
- double fractionFixed_;
- /// Never fix ones marked here
- char * mark_;
- /// Matrix by row
- CoinPackedMatrix matrixByRow_;
- /// Do if depth multiple of this
- int depth_;
- /// number of ==1 rows which need to be clean
- int numberClean_;
- /// If true then always create branch
- bool alwaysCreate_;
-};
-#endif
-