Cbc  2.9.9
CbcHeuristicDINS.hpp
Go to the documentation of this file.
1 // $Id: CbcHeuristicDINS.hpp 1899 2013-04-09 18:12:08Z stefan $
2 // Copyright (C) 2006, 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 12/5/09 carved out of CbcHeuristicRINS
7 
8 #ifndef CbcHeuristicDINS_H
9 #define CbcHeuristicDINS_H
10 
11 #include "CbcHeuristic.hpp"
12 
13 
15 public:
16 
17  // Default Constructor
19 
20  /* Constructor with model - assumed before cuts
21  Initial version does not do Lps
22  */
24 
25  // Copy constructor
27 
28  // Destructor
30 
32  virtual CbcHeuristic * clone() const;
33 
34 
37 
39  virtual void generateCpp( FILE * fp) ;
40 
42  virtual void resetModel(CbcModel * model);
43 
45  virtual void setModel(CbcModel * model);
46 
52  virtual int solution(double & objectiveValue,
53  double * newSolution);
55  int solutionFix(double & objectiveValue,
56  double * newSolution,
57  const int * keep);
58 
60  inline void setHowOften(int value) {
61  howOften_ = value;
62  }
64  inline void setMaximumKeep(int value) {
65  maximumKeepSolutions_ = value;
66  }
68  inline void setConstraint(int value) {
69  localSpace_ = value;
70  }
71 
72 protected:
73  // Data
74 
78  int howOften_;
92  int ** values_;
93 };
94 
95 #endif
96 
CbcHeuristicDINS
Definition: CbcHeuristicDINS.hpp:14
CbcHeuristicDINS::CbcHeuristicDINS
CbcHeuristicDINS()
CbcHeuristicDINS::numberSolutions_
int numberSolutions_
Number of solutions so we can do something at solution.
Definition: CbcHeuristicDINS.hpp:76
CbcHeuristicDINS::setConstraint
void setConstraint(int value)
Sets tightness of extra constraint.
Definition: CbcHeuristicDINS.hpp:68
CbcHeuristicDINS::CbcHeuristicDINS
CbcHeuristicDINS(CbcModel &model)
CbcHeuristicDINS::setModel
virtual void setModel(CbcModel *model)
update model (This is needed if cliques update matrix etc)
CbcHeuristic
Heuristic base class.
Definition: CbcHeuristic.hpp:77
CbcHeuristicDINS::solutionFix
int solutionFix(double &objectiveValue, double *newSolution, const int *keep)
This version fixes stuff and does IP.
CbcHeuristicDINS::numberSuccesses_
int numberSuccesses_
Number of successes.
Definition: CbcHeuristicDINS.hpp:80
CbcHeuristicDINS::solution
virtual int solution(double &objectiveValue, double *newSolution)
returns 0 if no solution, 1 if valid solution.
CbcHeuristicDINS::CbcHeuristicDINS
CbcHeuristicDINS(const CbcHeuristicDINS &)
CbcHeuristicDINS::setMaximumKeep
void setMaximumKeep(int value)
Sets maximum number of solutions kept.
Definition: CbcHeuristicDINS.hpp:64
CbcHeuristicDINS::~CbcHeuristicDINS
~CbcHeuristicDINS()
CbcModel
Simple Branch and bound class.
Definition: CbcModel.hpp:101
CbcHeuristicDINS::maximumKeepSolutions_
int maximumKeepSolutions_
Maximum number of solutions to keep.
Definition: CbcHeuristicDINS.hpp:84
CbcHeuristicDINS::numberTries_
int numberTries_
Number of tries.
Definition: CbcHeuristicDINS.hpp:82
CbcHeuristicDINS::resetModel
virtual void resetModel(CbcModel *model)
Resets stuff if model changes.
CbcHeuristicDINS::generateCpp
virtual void generateCpp(FILE *fp)
Create C++ lines to get to current state.
CbcHeuristicDINS::setHowOften
void setHowOften(int value)
Sets how often to do it.
Definition: CbcHeuristicDINS.hpp:60
CbcHeuristicDINS::values_
int ** values_
Values of integer variables.
Definition: CbcHeuristicDINS.hpp:92
CbcHeuristicDINS::numberIntegers_
int numberIntegers_
Number of integer variables.
Definition: CbcHeuristicDINS.hpp:88
CbcHeuristic::solution
virtual int solution(double &objectiveValue, double *newSolution)=0
returns 0 if no solution, 1 if valid solution with better objective value than one passed in Sets sol...
CbcHeuristicDINS::localSpace_
int localSpace_
Local parameter.
Definition: CbcHeuristicDINS.hpp:90
CbcHeuristic.hpp
CbcHeuristicDINS::howOften_
int howOften_
How often to do (code can change)
Definition: CbcHeuristicDINS.hpp:78
CbcHeuristicDINS::clone
virtual CbcHeuristic * clone() const
Clone.
CbcHeuristicDINS::operator=
CbcHeuristicDINS & operator=(const CbcHeuristicDINS &rhs)
Assignment operator.
CbcHeuristicDINS::numberKeptSolutions_
int numberKeptSolutions_
Number of solutions kept.
Definition: CbcHeuristicDINS.hpp:86