Cbc 2.10.5
Loading...
Searching...
No Matches
CbcSolverLongThin.hpp
Go to the documentation of this file.
1// $Id$
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#ifndef CbcSolverLongThin_H
7#define CbcSolverLongThin_H
8
9#include "OsiClpSolverInterface.hpp"
10class CbcModel;
11//#############################################################################
12
18class CbcSolverLongThin : public OsiClpSolverInterface {
19
20public:
21 //---------------------------------------------------------------------------
24
25 virtual void initialSolve();
26
28 virtual void resolve();
29
31
36
38 virtual OsiSolverInterface *clone(bool CopyData = true) const;
39
42
45
48
50
54 void initialize(CbcModel *model, const char *keep);
56 inline const int *when() const
57 {
58 return node_;
59 }
61 inline int getMemory() const
62 {
63 return memory_;
64 }
66 inline int getCount() const
67 {
68 return count_;
69 }
71 inline void setMemory(int value)
72 {
73 memory_ = value;
74 }
76 inline void setBelieveInfeasible(bool yesNo)
77 {
78 believeInfeasible_ = yesNo;
79 }
81 inline void setAlgorithm(int value)
82 {
83 algorithm_ = value;
84 }
86 inline void setNested(double value)
87 {
88 nestedSearch_ = value;
89 }
91 inline int getAlgorithm() const
92 {
93 return algorithm_;
94 }
96 inline double getNested() const
97 {
98 return nestedSearch_;
99 }
101
102 //---------------------------------------------------------------------------
103
104private:
110 int *node_;
124};
125
126#endif
Simple Branch and bound class.
Definition CbcModel.hpp:100
This is to allow the user to replace initialSolve and resolve.
CbcSolverLongThin & operator=(const CbcSolverLongThin &rhs)
Assignment operator.
void setMemory(int value)
Set memory (i.e. how recent use should be)
double getNested() const
Do nested search if this fraction fixed.
virtual OsiSolverInterface * clone(bool CopyData=true) const
Clone.
int getCount() const
Get current count.
void setBelieveInfeasible(bool yesNo)
Say whether to believe infeasible.
int * howMany_
How many times in problem.
bool believeInfeasible_
If infeasible on subset means infeasible.
double nestedSearch_
Do nested search if this fraction fixed.
CbcModel * model_
Pointer back to model.
CbcSolverLongThin()
Default Constructor.
CbcSolverLongThin(const CbcSolverLongThin &)
Copy constructor.
int memory_
How recently it must have been used.
bool algorithm_
If 0 nothing, 1 compress and fix, 2 long thin.
void setAlgorithm(int value)
Say whether to just count usage.
int getMemory() const
Get memory (i.e. how recent use should be)
void initialize(CbcModel *model, const char *keep)
Setup arrays - ones in keep will always be in.
int getAlgorithm() const
Say whether to just count usage.
const int * when() const
get which ones have been used
virtual void initialSolve()
Solve initial LP relaxation.
virtual ~CbcSolverLongThin()
Destructor.
void setNested(double value)
Do nested search if this fraction fixed.
virtual void resolve()
Resolve an LP relaxation after problem modification.
int * node_
Node number when variable last in problem.