#include <CbcHeuristicFPump.hpp>
Inheritance diagram for CbcHeuristicFPump:
Public Member Functions | |
CbcHeuristicFPump () | |
CbcHeuristicFPump (CbcModel &model, double downValue=0.5, bool roundExpensive=false) | |
CbcHeuristicFPump (const CbcHeuristicFPump &) | |
~CbcHeuristicFPump () | |
virtual CbcHeuristic * | clone () const |
Clone. | |
virtual void | generateCpp (FILE *fp) |
Create C++ lines to get to current state. | |
virtual void | resetModel (CbcModel *model) |
Resets stuff if model changes. | |
virtual void | setModel (CbcModel *model) |
update model (This is needed if cliques update matrix etc) | |
virtual int | solution (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 | setMaximumPasses (int value) |
Set maximum passes (default 100). | |
int | maximumPasses () const |
Get maximum passes (default 100). | |
void | setMaximumTime (double value) |
Set maximum Time (default off) - also sets starttime to current. | |
double | maximumTime () const |
Get maximum Time (default 0.0 == time limit off). | |
Protected Attributes | |
double | startTime_ |
Start time. | |
double | maximumTime_ |
Maximum Cpu seconds. | |
int | maximumPasses_ |
Maximum number of passes. | |
double | downValue_ |
If less than this round down. | |
bool | roundExpensive_ |
If true round to expensive. | |
Private Member Functions | |
CbcHeuristicFPump & | operator= (const CbcHeuristicFPump &rhs) |
Illegal Assignment operator. | |
int | rounds (double *solution, const double *objective, bool roundExpensive=false, double downValue=0.5, int *flip=0) |
Rounds solution - down if < downValue If roundExpensive then always to more expnsive. |
Definition at line 11 of file CbcHeuristicFPump.hpp.
CbcHeuristicFPump::CbcHeuristicFPump | ( | ) |
CbcHeuristicFPump::CbcHeuristicFPump | ( | CbcModel & | model, | |
double | downValue = 0.5 , |
|||
bool | roundExpensive = false | |||
) |
CbcHeuristicFPump::CbcHeuristicFPump | ( | const CbcHeuristicFPump & | ) |
CbcHeuristicFPump::~CbcHeuristicFPump | ( | ) |
virtual CbcHeuristic* CbcHeuristicFPump::clone | ( | ) | const [virtual] |
virtual void CbcHeuristicFPump::generateCpp | ( | FILE * | fp | ) | [virtual] |
virtual void CbcHeuristicFPump::resetModel | ( | CbcModel * | model | ) | [virtual] |
virtual void CbcHeuristicFPump::setModel | ( | CbcModel * | model | ) | [virtual] |
virtual int CbcHeuristicFPump::solution | ( | 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.
It may make sense for user to call this outside Branch and Cut to get solution. Or normally is just at root node.
Implements CbcHeuristic.
void CbcHeuristicFPump::setMaximumPasses | ( | int | value | ) | [inline] |
Set maximum passes (default 100).
Definition at line 50 of file CbcHeuristicFPump.hpp.
References maximumPasses_.
int CbcHeuristicFPump::maximumPasses | ( | ) | const [inline] |
Get maximum passes (default 100).
Definition at line 53 of file CbcHeuristicFPump.hpp.
References maximumPasses_.
void CbcHeuristicFPump::setMaximumTime | ( | double | value | ) |
Set maximum Time (default off) - also sets starttime to current.
double CbcHeuristicFPump::maximumTime | ( | ) | const [inline] |
Get maximum Time (default 0.0 == time limit off).
Definition at line 58 of file CbcHeuristicFPump.hpp.
CbcHeuristicFPump& CbcHeuristicFPump::operator= | ( | const CbcHeuristicFPump & | rhs | ) | [private] |
Illegal Assignment operator.
int CbcHeuristicFPump::rounds | ( | double * | solution, | |
const double * | objective, | |||
bool | roundExpensive = false , |
|||
double | downValue = 0.5 , |
|||
int * | flip = 0 | |||
) | [private] |
Rounds solution - down if < downValue If roundExpensive then always to more expnsive.
returns 0 if current is solution
double CbcHeuristicFPump::startTime_ [protected] |
double CbcHeuristicFPump::maximumTime_ [protected] |
int CbcHeuristicFPump::maximumPasses_ [protected] |
Maximum number of passes.
Definition at line 68 of file CbcHeuristicFPump.hpp.
Referenced by maximumPasses(), and setMaximumPasses().
double CbcHeuristicFPump::downValue_ [protected] |
bool CbcHeuristicFPump::roundExpensive_ [protected] |