Cbc  2.9.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbcBranchDefaultDecision.hpp
Go to the documentation of this file.
1 // $Id: CbcBranchDefaultDecision.hpp 1899 2013-04-09 18:12:08Z stefan $
2 // Copyright (C) 2002, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 // Edwin 11/10/2009-- carved out of CbcBranchActual
7 
8 #ifndef CbcBranchDefaultDecision_H
9 #define CbcBranchDefaultDecision_H
10 
11 #include "CbcBranchBase.hpp"
19 public:
20  // Default Constructor
22 
23  // Copy constructor
25 
26  virtual ~CbcBranchDefaultDecision();
27 
29  virtual CbcBranchDecision * clone() const;
30 
32  virtual void initialize(CbcModel * model);
33 
53  virtual int betterBranch(CbcBranchingObject * thisOne,
54  CbcBranchingObject * bestSoFar,
55  double changeUp, int numInfUp,
56  double changeDn, int numInfDn);
58  virtual void setBestCriterion(double value);
59  virtual double getBestCriterion() const;
60 
67  virtual int
68  bestBranch (CbcBranchingObject ** objects, int numberObjects, int numberUnsatisfied,
69  double * changeUp, int * numberInfeasibilitiesUp,
70  double * changeDown, int * numberInfeasibilitiesDown,
71  double objectiveValue) ;
72 private:
73 
76 
78 
81 
83  double bestChangeUp_;
84 
87 
90 
93 
96 
97 };
98 
99 #endif
100 
virtual void setBestCriterion(double value)
Sets or gets best criterion so far.
double bestChangeDown_
Change down for best.
virtual double getBestCriterion() const
CbcBranchingObject * bestObject_
Pointer to best branching object.
Branching decision default class.
CbcBranchDefaultDecision & operator=(const CbcBranchDefaultDecision &rhs)
Illegal Assignment operator.
virtual int betterBranch(CbcBranchingObject *thisOne, CbcBranchingObject *bestSoFar, double changeUp, int numInfUp, double changeDn, int numInfDn)
Compare two branching objects.
double bestChangeUp_
Change up for best.
virtual ~CbcBranchDefaultDecision()
virtual CbcBranchDecision * clone() const
Clone.
Abstract branching object base class Now just difference with OsiBranchingObject. ...
int bestNumberUp_
Number of infeasibilities for up.
int bestNumberDown_
Number of infeasibilities for down.
virtual int bestBranch(CbcBranchingObject **objects, int numberObjects, int numberUnsatisfied, double *changeUp, int *numberInfeasibilitiesUp, double *changeDown, int *numberInfeasibilitiesDown, double objectiveValue)
Compare N branching objects.
virtual void initialize(CbcModel *model)
Initialize, e.g. before the start of branch selection at a node.
Simple Branch and bound class.
Definition: CbcModel.hpp:101