#include <BonNWayObject.hpp>
Public Member Functions | |
BonNWayObject () | |
BonNWayObject (int numberMembers, const int *which, int identifier) | |
Useful constructor (which are matrix indices). | |
BonNWayObject (const BonNWayObject &) | |
virtual OsiObject * | clone () const |
Clone. | |
BonNWayObject & | operator= (const BonNWayObject &rhs) |
Assignment operator. | |
virtual | ~BonNWayObject () |
Destructor. | |
void | setConsequence (int iMember, const n_way_consequences &consequence) |
Set up a consequence for a single member. | |
void | applyConsequence (OsiSolverInterface *solver, int iSequence, int state) const |
Applies a consequence for a single member. | |
virtual double | infeasibility (const OsiBranchingInformation *info, int &preferredWay) const |
Infeasibility - large is 0.5 (and 0.5 will give this). | |
virtual double | feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const |
This looks at solution and sets bounds to contain solution. | |
virtual OsiBranchingObject * | createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const |
Creates a branching object. | |
size_t | numberMembers () const |
Number of members. | |
const int * | members () const |
Members (indices in range 0 ... numberColumns-1). | |
void | set_bounds (std::vector< double > &bounds) const |
void | make_quick () |
void | set_only_frac_branches (int depth) |
Private Attributes | |
std::vector< int > | members_ |
data | |
n_way_consequences ** | consequence_ |
Consequences (normally NULL). | |
std::vector< double > | bounds_ |
Bounds on the members. | |
bool | quicky_ |
Quicky only branch up on variables with non zero value. | |
int | only_frac_branch_ |
Only branch on fractional variables (last branch puts all of them to 0). |
Definition at line 55 of file BonNWayObject.hpp.
Bonmin::BonNWayObject::BonNWayObject | ( | ) |
Definition at line 27 of file BonNWayObject.cpp.
Bonmin::BonNWayObject::BonNWayObject | ( | int | numberMembers, | |
const int * | which, | |||
int | identifier | |||
) |
Useful constructor (which are matrix indices).
Definition at line 37 of file BonNWayObject.cpp.
Bonmin::BonNWayObject::BonNWayObject | ( | const BonNWayObject & | rhs | ) |
Definition at line 52 of file BonNWayObject.cpp.
Bonmin::BonNWayObject::~BonNWayObject | ( | ) | [virtual] |
Destructor.
Definition at line 106 of file BonNWayObject.cpp.
OsiObject * Bonmin::BonNWayObject::clone | ( | ) | const [virtual] |
Clone.
Definition at line 72 of file BonNWayObject.cpp.
BonNWayObject & Bonmin::BonNWayObject::operator= | ( | const BonNWayObject & | rhs | ) |
Assignment operator.
Definition at line 79 of file BonNWayObject.cpp.
void Bonmin::BonNWayObject::setConsequence | ( | int | iMember, | |
const n_way_consequences & | consequence | |||
) |
Set up a consequence for a single member.
Definition at line 116 of file BonNWayObject.cpp.
void Bonmin::BonNWayObject::applyConsequence | ( | OsiSolverInterface * | solver, | |
int | iSequence, | |||
int | state | |||
) | const |
Applies a consequence for a single member.
Definition at line 128 of file BonNWayObject.cpp.
double Bonmin::BonNWayObject::infeasibility | ( | const OsiBranchingInformation * | info, | |
int & | preferredWay | |||
) | const [virtual] |
Infeasibility - large is 0.5 (and 0.5 will give this).
Definition at line 138 of file BonNWayObject.cpp.
double Bonmin::BonNWayObject::feasibleRegion | ( | OsiSolverInterface * | solver, | |
const OsiBranchingInformation * | info | |||
) | const [virtual] |
This looks at solution and sets bounds to contain solution.
Definition at line 171 of file BonNWayObject.cpp.
OsiBranchingObject * Bonmin::BonNWayObject::createBranch | ( | OsiSolverInterface * | solver, | |
const OsiBranchingInformation * | info, | |||
int | way | |||
) | const [virtual] |
Creates a branching object.
Definition at line 198 of file BonNWayObject.cpp.
size_t Bonmin::BonNWayObject::numberMembers | ( | ) | const [inline] |
Number of members.
Definition at line 97 of file BonNWayObject.hpp.
const int* Bonmin::BonNWayObject::members | ( | ) | const [inline] |
Members (indices in range 0 ... numberColumns-1).
Definition at line 102 of file BonNWayObject.hpp.
void Bonmin::BonNWayObject::set_bounds | ( | std::vector< double > & | bounds | ) | const [inline] |
Definition at line 106 of file BonNWayObject.hpp.
void Bonmin::BonNWayObject::make_quick | ( | ) | [inline] |
Definition at line 110 of file BonNWayObject.hpp.
void Bonmin::BonNWayObject::set_only_frac_branches | ( | int | depth | ) | [inline] |
Definition at line 112 of file BonNWayObject.hpp.
std::vector<int> Bonmin::BonNWayObject::members_ [private] |
data
Members (indices in range 0 ... numberColumns-1)
Definition at line 119 of file BonNWayObject.hpp.
Consequences (normally NULL).
Definition at line 121 of file BonNWayObject.hpp.
std::vector<double> Bonmin::BonNWayObject::bounds_ [mutable, private] |
Bounds on the members.
Definition at line 124 of file BonNWayObject.hpp.
bool Bonmin::BonNWayObject::quicky_ [private] |
Quicky only branch up on variables with non zero value.
Definition at line 127 of file BonNWayObject.hpp.
int Bonmin::BonNWayObject::only_frac_branch_ [private] |
Only branch on fractional variables (last branch puts all of them to 0).
Definition at line 129 of file BonNWayObject.hpp.