Dip-All  0.91.0
CbcSolverLongThin.hpp
Go to the documentation of this file.
1 // $Id: CbcSolverLongThin.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 CbcSolverLongThin_H
8 #define CbcSolverLongThin_H
9 
11 class CbcModel;
12 //#############################################################################
13 
20 
21 public:
22  //---------------------------------------------------------------------------
25  virtual void initialSolve();
27 
29  virtual void resolve();
30 
32 
33 
38 
40  virtual OsiSolverInterface * clone(bool CopyData=true) const;
41 
44 
47 
49  virtual ~CbcSolverLongThin ();
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 void resolve()
Resolve an LP relaxation after problem modification.
bool algorithm_
If 0 nothing, 1 compress and fix, 2 long thin.
This is to allow the user to replace initialSolve and resolve.
CbcSolverLongThin()
Default Constructor.
void initialize(CbcModel *model, const char *keep)
Setup arrays - ones in keep will always be in.
double getNested() const
Do nested search if this fraction fixed.
int getAlgorithm() const
Say whether to just count usage.
virtual ~CbcSolverLongThin()
Destructor.
int * node_
Node number when variable last in problem.
int memory_
How recently it must have been used.
virtual void initialSolve()
Solve initial LP relaxation.
int getMemory() const
Get memory (i.e. how recent use should be)
void setAlgorithm(int value)
Say whether to just count usage.
Clp Solver Interface.
CbcModel * model_
Pointer back to model.
bool believeInfeasible_
If infeasible on subset means infeasible.
const int * when() const
get which ones have been used
void setNested(double value)
Do nested search if this fraction fixed.
Abstract Base Class for describing an interface to a solver.
int getCount() const
Get current count.
void setMemory(int value)
Set memory (i.e. how recent use should be)
double nestedSearch_
Do nested search if this fraction fixed.
CbcSolverLongThin & operator=(const CbcSolverLongThin &rhs)
Assignment operator.
int * howMany_
How many times in problem.
void setBelieveInfeasible(bool yesNo)
Say whether to believe infeasible.
virtual OsiSolverInterface * clone(bool CopyData=true) const
Clone.
Simple Branch and bound class.
Definition: CbcModel.hpp:101