source: trunk/Cbc/src/CbcHeuristicDiveGuided.hpp @ 944

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

Added reduced cost fixing.

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