Blis 0.95.0
Loading...
Searching...
No Matches
BlisHeurRound Class Reference

Rounding Heuristic. More...

#include <BlisHeurRound.h>

+ Inheritance diagram for BlisHeurRound:
+ Collaboration diagram for BlisHeurRound:

Public Member Functions

 BlisHeurRound ()
 Default Constructor.
 
 BlisHeurRound (BlisModel *model, const char *name, BlisHeurStrategy strategy, int freq)
 Constructor with model - assumed before cuts.
 
 ~BlisHeurRound ()
 Destructor.
 
 BlisHeurRound (const BlisHeurRound &)
 Copy constructor.
 
virtual BlisHeuristicclone () const
 Clone a rounding heuristic.
 
virtual void setModel (BlisModel *model)
 update model (This is needed if cliques update matrix etc).
 
virtual bool searchSolution (double &objectiveValue, double *newSolution)
 returns 0 if no solution, 1 if valid solution with better objective value than one passed in Sets solution values if good, sets objective value (only if good) This is called after cuts have been added - so can not add cuts
 
void setSeed (int value)
 Set seed.
 
- Public Member Functions inherited from BlisHeuristic
 BlisHeuristic ()
 Default Constructor.
 
 BlisHeuristic (BlisModel *model, const char *name, BlisHeurStrategy strategy, int heurCallFrequency)
 Useful constructor.
 
virtual ~BlisHeuristic ()
 Distructor.
 
 BlisHeuristic (const BlisHeuristic &rhs)
 Copy constructor.
 
virtual void setStrategy (BlisHeurStrategy strategy)
 Get/set strategy.
 
virtual BlisHeurStrategy strategy () const
 
virtual void setHeurCallFrequency (int freq)
 Get/set call frequency.
 
virtual int heurCallFrequency () const
 
virtual bool searchSolution (double &objectiveValue, double *newSolution, OsiCuts &cs)
 returns 0 if no solution, 1 if valid solution, -1 if just returning an estimate of best possible solution with better objective value than one passed in Sets solution values if good, sets objective value (only if nonzero code) This is called at same time as cut generators - so can add cuts Default is do nothing
 
const char * name () const
 return name of generator.
 
void addNumSolutions (int num=1)
 Record number of solutions found.
 
int numSolutions () const
 Number of solutions found.
 
void addTime (double t=0.0)
 Record Cpu time used.
 
double time () const
 Cpu time used.
 
void addCalls (int c=1)
 Record number of times called.
 
int calls () const
 Number of times called.
 
int noSolCalls () const
 Number called and no cons found.
 
void addNoSolCalls (int n=1)
 Increase the number of no cons called.
 

Protected Attributes

CoinPackedMatrix matrix_
 Column majored matrix.
 
CoinPackedMatrix matrixByRow_
 Row majored matrix.
 
int seed_
 Seed for random stuff.
 
- Protected Attributes inherited from BlisHeuristic
BlisModelmodel_
 Pointer to the model.
 
char * name_
 Heuristics name.
 
BlisHeurStrategy strategy_
 When to call findSolution() routine.
 
int heurCallFrequency_
 The frequency with which to call the heuristic.
 
int numSolutions_
 Number of solutions found.
 
double time_
 Used CPU/User time.
 
int calls_
 The times of calling this heuristic.
 
int noSolsCalls_
 The times of calling this heuristic and no solutions found.
 

Detailed Description

Rounding Heuristic.


Definition at line 45 of file BlisHeurRound.h.

Constructor & Destructor Documentation

◆ BlisHeurRound() [1/3]

BlisHeurRound::BlisHeurRound ( )
inline

Default Constructor.

Definition at line 62 of file BlisHeurRound.h.

◆ BlisHeurRound() [2/3]

BlisHeurRound::BlisHeurRound ( BlisModel * model,
const char * name,
BlisHeurStrategy strategy,
int freq )
inline

Constructor with model - assumed before cuts.

Definition at line 65 of file BlisHeurRound.h.

◆ ~BlisHeurRound()

BlisHeurRound::~BlisHeurRound ( )
inline

Destructor.

Definition at line 74 of file BlisHeurRound.h.

◆ BlisHeurRound() [3/3]

BlisHeurRound::BlisHeurRound ( const BlisHeurRound & )

Copy constructor.

Member Function Documentation

◆ clone()

virtual BlisHeuristic * BlisHeurRound::clone ( ) const
virtual

Clone a rounding heuristic.

Reimplemented from BlisHeuristic.

◆ setModel()

virtual void BlisHeurRound::setModel ( BlisModel * model)
virtual

update model (This is needed if cliques update matrix etc).

Reimplemented from BlisHeuristic.

◆ searchSolution()

virtual bool BlisHeurRound::searchSolution ( double & objectiveValue,
double * newSolution )
virtual

returns 0 if no solution, 1 if valid solution with better objective value than one passed in Sets solution values if good, sets objective value (only if good) This is called after cuts have been added - so can not add cuts

Implements BlisHeuristic.

◆ setSeed()

void BlisHeurRound::setSeed ( int value)
inline

Set seed.

Definition at line 95 of file BlisHeurRound.h.

Member Data Documentation

◆ matrix_

CoinPackedMatrix BlisHeurRound::matrix_
protected

Column majored matrix.

Definition at line 52 of file BlisHeurRound.h.

◆ matrixByRow_

CoinPackedMatrix BlisHeurRound::matrixByRow_
protected

Row majored matrix.

Definition at line 55 of file BlisHeurRound.h.

◆ seed_

int BlisHeurRound::seed_
protected

Seed for random stuff.

Definition at line 58 of file BlisHeurRound.h.


The documentation for this class was generated from the following file: