9 #ifndef BonRandomChoice_H
10 #define BonRandomChoice_H
12 #include "OsiChooseVariable.hpp"
13 #include "OsiSolverInterface.hpp"
25 OsiChooseVariable(solver){
30 OsiChooseVariable(other){
35 OsiChooseVariable::operator=(rhs);
40 virtual OsiChooseVariable *
clone()
const{
50 virtual int setupList(OsiBranchingInformation *
info,
bool initialize);
53 OsiBranchingInformation *
info,
55 if(numberUnsatisfied_){
56 int chosen = (
int) (floor(CoinDrand48() * (numberUnsatisfied_)));
57 bestObjectIndex_ = list_[chosen];
58 bestWhichWay_ = solver->object(bestObjectIndex_)->whichWay();
59 firstForcedObjectIndex_ = -1;
60 firstForcedWhichWay_ =-1;
virtual int setupList(OsiBranchingInformation *info, bool initialize)
Own version of setupList since Osi version is broken and what we want to do here is anyway much simpl...
BonRandomChoice()
Default constructor.
void fint fint fint real fint real real real real real real real real real fint real fint fint fint real fint fint fint fint * info
BonRandomChoice & operator=(const BonRandomChoice &rhs)
virtual ~BonRandomChoice()
Destructor.
BonRandomChoice(const OsiSolverInterface *solver)
virtual OsiChooseVariable * clone() const
BonRandomChoice(const BonRandomChoice &other)
virtual int chooseVariable(OsiSolverInterface *solver, OsiBranchingInformation *info, bool fixVariables)