#include <BonRandomChoice.hpp>
Inheritance diagram for BonRandomChoice:
Public Member Functions | |
BonRandomChoice () | |
Default constructor. | |
BonRandomChoice (const OsiSolverInterface *solver) | |
BonRandomChoice (const BonRandomChoice &other) | |
BonRandomChoice & | operator= (const BonRandomChoice &rhs) |
virtual OsiChooseVariable * | clone () const |
Clone. | |
virtual | ~BonRandomChoice () |
Destructor. | |
virtual int | chooseVariable (OsiSolverInterface *solver, OsiBranchingInformation *info, bool fixVariables) |
Choose a variable Returns - -1 Node is infeasible 0 Normal termination - we have a candidate 1 All looks satisfied - no candidate 2 We can change the bound on a variable - but we also have a strong branching candidate 3 We can change the bound on a variable - but we have a non-strong branching candidate 4 We can change the bound on a variable - no other candidates We can pick up branch from bestObjectIndex() and bestWhichWay() We can pick up a forced branch (can change bound) from firstForcedObjectIndex() and firstForcedWhichWay() If we have a solution then we can pick up from goodObjectiveValue() and goodSolution() If fixVariables is true then 2,3,4 are all really same as problem changed. |
Definition at line 15 of file BonRandomChoice.hpp.
BonRandomChoice::BonRandomChoice | ( | ) | [inline] |
BonRandomChoice::BonRandomChoice | ( | const OsiSolverInterface * | solver | ) | [inline] |
Definition at line 22 of file BonRandomChoice.hpp.
BonRandomChoice::BonRandomChoice | ( | const BonRandomChoice & | other | ) | [inline] |
Definition at line 27 of file BonRandomChoice.hpp.
virtual BonRandomChoice::~BonRandomChoice | ( | ) | [inline, virtual] |
BonRandomChoice& BonRandomChoice::operator= | ( | const BonRandomChoice & | rhs | ) | [inline] |
virtual OsiChooseVariable* BonRandomChoice::clone | ( | ) | const [inline, virtual] |
Clone.
Reimplemented from OsiChooseVariable.
Definition at line 38 of file BonRandomChoice.hpp.
References BonRandomChoice().
virtual int BonRandomChoice::chooseVariable | ( | OsiSolverInterface * | solver, | |
OsiBranchingInformation * | info, | |||
bool | fixVariables | |||
) | [inline, virtual] |
Choose a variable Returns - -1 Node is infeasible 0 Normal termination - we have a candidate 1 All looks satisfied - no candidate 2 We can change the bound on a variable - but we also have a strong branching candidate 3 We can change the bound on a variable - but we have a non-strong branching candidate 4 We can change the bound on a variable - no other candidates We can pick up branch from bestObjectIndex() and bestWhichWay() We can pick up a forced branch (can change bound) from firstForcedObjectIndex() and firstForcedWhichWay() If we have a solution then we can pick up from goodObjectiveValue() and goodSolution() If fixVariables is true then 2,3,4 are all really same as problem changed.
Reimplemented from OsiChooseVariable.
Definition at line 46 of file BonRandomChoice.hpp.
References OsiChooseVariable::bestObjectIndex_, OsiChooseVariable::bestWhichWay_, CoinDrand48(), OsiChooseVariable::firstForcedObjectIndex_, OsiChooseVariable::firstForcedWhichWay_, OsiChooseVariable::list_, OsiChooseVariable::numberUnsatisfied_, OsiSolverInterface::object(), and OsiObject::whichWay().