Define a branch class that branches so that it is only satsified if all members have different values So cut is x <= y-1 or x >= y+1.
More...
|
| | CbcBranchAllDifferent () |
| | CbcBranchAllDifferent (CbcModel *model, int number, const int *which) |
| | Useful constructor - passed set of integer variables which must all be different.
|
| | CbcBranchAllDifferent (const CbcBranchAllDifferent &) |
| virtual CbcObject * | clone () const |
| | Clone.
|
| CbcBranchAllDifferent & | operator= (const CbcBranchAllDifferent &rhs) |
| | ~CbcBranchAllDifferent () |
| virtual double | infeasibility (const OsiBranchingInformation *info, int &preferredWay) const |
| | Infeasibility - large is 0.5.
|
| virtual CbcBranchingObject * | createCbcBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) |
| | Creates a branching object.
|
| | CbcBranchCut () |
| | CbcBranchCut (CbcModel *model) |
| | In to maintain normal methods.
|
| | CbcBranchCut (const CbcBranchCut &) |
| CbcBranchCut & | operator= (const CbcBranchCut &rhs) |
| | ~CbcBranchCut () |
| virtual void | feasibleRegion () |
| | Set bounds to contain the current solution.
|
| virtual bool | boundBranch () const |
| | Return true if branch created by object should fix variables.
|
| virtual CbcBranchingObject * | preferredNewFeasible () const |
| | Given a valid solution (with reduced costs, etc.), return a branching object which would give a new feasible point in the good direction.
|
| virtual CbcBranchingObject * | notPreferredNewFeasible () const |
| | Given a valid solution (with reduced costs, etc.), return a branching object which would give a new feasible point in a bad direction.
|
| virtual void | resetBounds () |
| | Reset original upper and lower bound values from the solver.
|
| virtual double | feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const |
| | Dummy one for compatibility.
|
| virtual double | feasibleRegion (OsiSolverInterface *solver) const |
| | For the variable(s) referenced by the object, look at the current solution and set bounds to match the solution.
|
| virtual void | resetBounds (const OsiSolverInterface *) |
| | Reset variable bounds to their original values.
|
| | CbcObject () |
| | CbcObject (CbcModel *model) |
| | CbcObject (const CbcObject &) |
| CbcObject & | operator= (const CbcObject &rhs) |
| virtual | ~CbcObject () |
| | Destructor.
|
| virtual double | infeasibility (int &) const |
| virtual OsiBranchingObject * | createBranch (OsiSolverInterface *, const OsiBranchingInformation *, int) const |
| virtual OsiBranchingObject * | createOsiBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const |
| | Create an Osibranching object and indicate which way to branch first.
|
| virtual OsiSolverBranch * | solverBranch () const |
| | Create an OsiSolverBranch object.
|
| virtual void | floorCeiling (double &floorValue, double &ceilingValue, double value, double tolerance) const |
| | Returns floor and ceiling i.e.
|
| virtual CbcObjectUpdateData | createUpdateInformation (const OsiSolverInterface *solver, const CbcNode *node, const CbcBranchingObject *branchingObject) |
| | Pass in information on branch just done and create CbcObjectUpdateData instance.
|
| virtual void | updateInformation (const CbcObjectUpdateData &) |
| | Update object by CbcObjectUpdateData.
|
| int | id () const |
| | Identifier (normally column number in matrix)
|
| void | setId (int value) |
| | Set identifier (normally column number in matrix) but 1000000000 to 1100000000 means optional branching object i.e.
|
| bool | optionalObject () const |
| | Return true if optional branching object i.e.
|
| int | position () const |
| | Get position in object_ list.
|
| void | setPosition (int position) |
| | Set position in object_ list.
|
| void | setModel (CbcModel *model) |
| | update model
|
| CbcModel * | model () const |
| | Return model.
|
| int | preferredWay () const |
| | If -1 down always chosen first, +1 up always, 0 normal.
|
| void | setPreferredWay (int value) |
| | Set -1 down always chosen first, +1 up always, 0 normal.
|
| virtual void | redoSequenceEtc (CbcModel *, int, const int *) |
| | Redoes data when sequence numbers change.
|
| virtual void | initializeForBranching (CbcModel *) |
| | Initialize for branching.
|
Define a branch class that branches so that it is only satsified if all members have different values So cut is x <= y-1 or x >= y+1.
Definition at line 21 of file CbcBranchAllDifferent.hpp.