/usr/include/coin/CbcHeuristicDiveGuided.hpp is in coinor-libcbc-dev 2.5.0-2.3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | /* $Id: CbcHeuristicDiveGuided.hpp 1173 2009-06-04 09:44:10Z forrest $ */
// Copyright (C) 2008, International Business Machines
// Corporation and others. All Rights Reserved.
#ifndef CbcHeuristicDiveGuided_H
#define CbcHeuristicDiveGuided_H
#include "CbcHeuristicDive.hpp"
/** DiveGuided class
*/
class CbcHeuristicDiveGuided : public CbcHeuristicDive {
public:
// Default Constructor
CbcHeuristicDiveGuided ();
// Constructor with model - assumed before cuts
CbcHeuristicDiveGuided (CbcModel & model);
// Copy constructor
CbcHeuristicDiveGuided ( const CbcHeuristicDiveGuided &);
// Destructor
~CbcHeuristicDiveGuided ();
/// Clone
virtual CbcHeuristicDiveGuided * clone() const;
/// Assignment operator
CbcHeuristicDiveGuided & operator=(const CbcHeuristicDiveGuided& rhs);
/// Create C++ lines to get to current state
virtual void generateCpp( FILE * fp) ;
/// Tests if the heuristic can run
virtual bool canHeuristicRun();
/// Selects the next variable to branch on
/** Returns true if all the fractional variables can be trivially
rounded. Returns false, if there is at least one fractional variable
that is not trivially roundable. In this case, the bestColumn
returned will not be trivially roundable.
*/
virtual bool selectVariableToBranch(OsiSolverInterface* solver,
const double* newSolution,
int& bestColumn,
int& bestRound);
};
#endif
|