source: trunk/Cbc/src/CbcHeuristicDivePseudoCost.hpp @ 945

Last change on this file since 945 was 945, checked in by jpgoncal, 11 years ago

Added two new versions of diving heuristics.

File size: 1.3 KB
Line 
1// Copyright (C) 2008, International Business Machines
2// Corporation and others.  All Rights Reserved.
3#ifndef CbcHeuristicDivePseudoCost_H
4#define CbcHeuristicDivePseudoCost_H
5
6#include "CbcHeuristicDive.hpp"
7
8/** DivePseudoCost class
9 */
10
11class CbcHeuristicDivePseudoCost : public CbcHeuristicDive {
12public:
13
14  // Default Constructor
15  CbcHeuristicDivePseudoCost ();
16
17  // Constructor with model - assumed before cuts
18  CbcHeuristicDivePseudoCost (CbcModel & model);
19 
20  // Copy constructor
21  CbcHeuristicDivePseudoCost ( const CbcHeuristicDivePseudoCost &);
22   
23  // Destructor
24  ~CbcHeuristicDivePseudoCost ();
25
26  /// Clone
27  virtual CbcHeuristicDivePseudoCost * clone() const;
28 
29  /// Assignment operator
30  CbcHeuristicDivePseudoCost & operator=(const CbcHeuristicDivePseudoCost& rhs);
31
32  /// Create C++ lines to get to current state
33  virtual void generateCpp( FILE * fp) ;
34
35  /// Selects the next variable to branch on
36  /** Returns true if all the fractional variables can be trivially
37      rounded. Returns false, if there is at least one fractional variable
38      that is not trivially roundable. In this case, the bestColumn
39      returned will not be trivially roundable.
40  */
41  virtual bool selectVariableToBranch(OsiSolverInterface* solver,
42                                      const double* newSolution,
43                                      int& bestColumn,
44                                      int& bestRound);
45
46};
47
48#endif
Note: See TracBrowser for help on using the repository browser.