Cbc  2.9.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbcSolver3.hpp
Go to the documentation of this file.
1 // $Id: CbcSolver3.hpp 1574 2011-01-05 01:13:55Z lou $
2 // Copyright (C) 2004, 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 
7 #ifndef CbcSolver3_H
8 #define CbcSolver3_H
9 
11 class CbcModel;
12 //#############################################################################
13 
20 
21 public:
22  //---------------------------------------------------------------------------
25  virtual void initialSolve();
27 
29  virtual void resolve();
30 
32 
33 
36  CbcSolver3 ();
38 
40  virtual OsiSolverInterface * clone(bool CopyData=true) const;
41 
43  CbcSolver3 (const CbcSolver3 &);
44 
46  CbcSolver3 & operator=(const CbcSolver3& rhs);
47 
49  virtual ~CbcSolver3 ();
50 
52 
53 
56  void initialize(CbcModel * model, const char * keep);
59  inline const int * when() const
60  { return node_;}
62  inline int getMemory() const
63  { return memory_;}
65  inline int getCount() const
66  { return count_;}
68  inline void setMemory(int value)
69  { memory_=value;}
71  inline void setBelieveInfeasible(bool yesNo)
72  { believeInfeasible_=yesNo;}
74  inline void setAlgorithm(int value)
75  { algorithm_=value;}
77  inline void setNested(double value)
78  { nestedSearch_=value;}
80  inline int getAlgorithm() const
81  { return algorithm_;}
83  inline double getNested() const
84  { return nestedSearch_;}
86 
87  //---------------------------------------------------------------------------
88 
89 private:
90 
93  double nestedSearch_;
96  int * node_;
98  int * howMany_;
102  int count_;
104  int memory_;
110 };
111 
112 #endif
virtual ~CbcSolver3()
Destructor.
int getCount() const
Get current count.
Definition: CbcSolver3.hpp:65
CbcSolver3 & operator=(const CbcSolver3 &rhs)
Assignment operator.
This is to allow the user to replace initialSolve and resolve.
Definition: CbcSolver3.hpp:19
void setAlgorithm(int value)
Say whether to just count usage.
Definition: CbcSolver3.hpp:74
Clp Solver Interface.
CbcSolver3()
Default Constructor.
Abstract Base Class for describing an interface to a solver.
CbcModel * model_
Pointer back to model.
Definition: CbcSolver3.hpp:100
void setMemory(int value)
Set memory (i.e. how recent use should be)
Definition: CbcSolver3.hpp:68
void initialize(CbcModel *model, const char *keep)
Setup arrays - ones in keep will always be in.
virtual void resolve()
Resolve an LP relaxation after problem modification.
int count_
Counter.
Definition: CbcSolver3.hpp:102
double nestedSearch_
Do nested search if this fraction fixed.
Definition: CbcSolver3.hpp:94
void setNested(double value)
Do nested search if this fraction fixed.
Definition: CbcSolver3.hpp:77
bool believeInfeasible_
If infeasible on subset means infeasible.
Definition: CbcSolver3.hpp:106
void setBelieveInfeasible(bool yesNo)
Say whether to believe infeasible.
Definition: CbcSolver3.hpp:71
virtual OsiSolverInterface * clone(bool CopyData=true) const
Clone.
int * node_
Node number when variable last in problem.
Definition: CbcSolver3.hpp:96
int memory_
How recently it must have been used.
Definition: CbcSolver3.hpp:104
const int * when() const
get which ones have been used
Definition: CbcSolver3.hpp:59
int * howMany_
How many times in problem.
Definition: CbcSolver3.hpp:98
double getNested() const
Do nested search if this fraction fixed.
Definition: CbcSolver3.hpp:83
int getAlgorithm() const
Say whether to just count usage.
Definition: CbcSolver3.hpp:80
int getMemory() const
Get memory (i.e. how recent use should be)
Definition: CbcSolver3.hpp:62
bool algorithm_
If 0 nothing, 1 compress and fix, 2 long thin.
Definition: CbcSolver3.hpp:108
Simple Branch and bound class.
Definition: CbcModel.hpp:101
virtual void initialSolve()
Solve initial LP relaxation.