source: releases/2.7.1/Cbc/src/CbcHeuristicDiveFractional.hpp @ 1995

Last change on this file since 1995 was 1573, checked in by lou, 8 years ago

Change to EPL license notice.

File size: 1.6 KB
Line 
1/* $Id: CbcHeuristicDiveFractional.hpp 1173 2009-06-04 09:44:10Z forrest $ */
2// Copyright (C) 2008, 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#ifndef CbcHeuristicDiveFractional_H
7#define CbcHeuristicDiveFractional_H
8
9#include "CbcHeuristicDive.hpp"
10
11/** DiveFractional class
12 */
13
14class CbcHeuristicDiveFractional : public CbcHeuristicDive {
15public:
16
17    // Default Constructor
18    CbcHeuristicDiveFractional ();
19
20    // Constructor with model - assumed before cuts
21    CbcHeuristicDiveFractional (CbcModel & model);
22
23    // Copy constructor
24    CbcHeuristicDiveFractional ( const CbcHeuristicDiveFractional &);
25
26    // Destructor
27    ~CbcHeuristicDiveFractional ();
28
29    /// Clone
30    virtual CbcHeuristicDiveFractional * clone() const;
31
32    /// Assignment operator
33    CbcHeuristicDiveFractional & operator=(const CbcHeuristicDiveFractional& rhs);
34
35    /// Create C++ lines to get to current state
36    virtual void generateCpp( FILE * fp) ;
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
52
Note: See TracBrowser for help on using the repository browser.