Bonmin  1.8.7
BonCbcNode.hpp
Go to the documentation of this file.
1 // (C) Copyright International Business Machines Corporation and Carnegie Mellon University 2006
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // Authors :
6 // John J. Forrest, International Business Machines Corporation
7 // Pierre Bonami, Carnegie Mellon University,
8 //
9 // Date : 03/15/2006
10 
11 #ifndef BonminCbcNode_H
12 #define BonminCbcNode_H
13 
14 #include "CbcNode.hpp"
15 #include "BonRegisteredOptions.hpp"
16 
17 
18 namespace Bonmin
19 {
28  class BonCbcFullNodeInfo : public CbcFullNodeInfo
29  {
30 
31  public:
32  friend class BonCbcPartialNodeInfo;
33  // Default Constructor
35 
36  // Constructor from current state
37  BonCbcFullNodeInfo (CbcModel * model, int numberRowsAtContinuous);
38 
39  // Copy constructor
41 
42  // Destructor
44 
46  virtual CbcNodeInfo * clone() const;
47 
50  virtual void allBranchesGone();
51 
54  {
55  return sequenceOfInfeasiblesSize_;
56  }
59  {
60  return sequenceOfUnsolvedSize_;
61  }
64 
65  private:
66  /* Data values */
68  int sequenceOfInfeasiblesSize_;
70  int sequenceOfUnsolvedSize_;
71  private:
72 
74  BonCbcFullNodeInfo & operator=(const BonCbcFullNodeInfo& rhs);
75  };
76 
85  class BonCbcPartialNodeInfo : public CbcPartialNodeInfo
86  {
87 
88  public:
89  // Default Constructor
91 
92  // Constructor from current state
93  BonCbcPartialNodeInfo (CbcModel * model, CbcNodeInfo * parent, CbcNode * owner,
94  int numberChangedBounds,const int * variables,
95  const double * boundChanges,
96  const CoinWarmStartDiff *basisDiff) ;
97 
98  // Copy constructor
100 
101  // Destructor
103 
105  virtual CbcNodeInfo * clone() const;
106 
109  virtual void allBranchesGone();
110 
113  {
114  return sequenceOfInfeasiblesSize_;
115  }
118  {
119  return sequenceOfUnsolvedSize_;
120  }
121  private:
122  /* Data values */
124  int sequenceOfInfeasiblesSize_;
126  int sequenceOfUnsolvedSize_;
127  private:
128 
131  };
132 }
133 #endif
virtual void allBranchesGone()
Method called when all direct sons have been explored to flush useless warm start information.
int getSequenceOfInfeasiblesSize()
Number of consecutive infeasible parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:53
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Register all the options for class instance.
(C) Copyright International Business Machines Corporation 2007
virtual CbcNodeInfo * clone() const
Clone.
virtual CbcNodeInfo * clone() const
Clone.
Holds information for recreating a subproblem by incremental change from the parent for.
Definition: BonCbcNode.hpp:85
int getSequenceOfUnsolvedSize()
Number of consecutive unsolved parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:117
int getSequenceOfInfeasiblesSize()
Number of consecutive infeasible parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:112
int getSequenceOfUnsolvedSize()
Number of consecutive unsolved parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:58
virtual void allBranchesGone()
Method called when all direct sons have been explored to flush useless warm start information.
Holds information for recreating a subproblem by incremental change from the parent for Bonmin.
Definition: BonCbcNode.hpp:28