Cbc  2.10.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
OsiSimpleInteger Class Reference

Define a single integer class. More...

#include <OsiBranchingObject.hpp>

+ Inheritance diagram for OsiSimpleInteger:
+ Collaboration diagram for OsiSimpleInteger:

Public Member Functions

 OsiSimpleInteger ()
 Default Constructor. More...
 
 OsiSimpleInteger (const OsiSolverInterface *solver, int iColumn)
 Useful constructor - passed solver index. More...
 
 OsiSimpleInteger (int iColumn, double lower, double upper)
 Useful constructor - passed solver index and original bounds. More...
 
 OsiSimpleInteger (const OsiSimpleInteger &)
 Copy constructor. More...
 
virtual OsiObjectclone () const
 Clone. More...
 
OsiSimpleIntegeroperator= (const OsiSimpleInteger &rhs)
 Assignment operator. More...
 
virtual ~OsiSimpleInteger ()
 Destructor. More...
 
virtual double infeasibility (const OsiBranchingInformation *info, int &whichWay) const
 Infeasibility - large is 0.5. More...
 
virtual double feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
 Set bounds to fix the variable at the current (integer) value. More...
 
virtual OsiBranchingObjectcreateBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
 Creates a branching object. More...
 
void setColumnNumber (int value)
 Set solver column number. More...
 
virtual int columnNumber () const
 Column number if single column object -1 otherwise, so returns >= 0 Used by heuristics. More...
 
double originalLowerBound () const
 Original bounds. More...
 
void setOriginalLowerBound (double value)
 
double originalUpperBound () const
 
void setOriginalUpperBound (double value)
 
virtual void resetBounds (const OsiSolverInterface *solver)
 Reset variable bounds to their original values. More...
 
virtual void resetSequenceEtc (int numberColumns, const int *originalColumns)
 Change column numbers after preprocessing. More...
 
virtual double upEstimate () const
 Return "up" estimate (default 1.0e-5) More...
 
virtual double downEstimate () const
 Return "down" estimate (default 1.0e-5) More...
 
virtual bool canHandleShadowPrices () const
 Return true if knows how to deal with Pseudo Shadow Prices. More...
 
- Public Member Functions inherited from OsiObject2
 OsiObject2 ()
 Default Constructor. More...
 
 OsiObject2 (const OsiObject2 &)
 Copy constructor. More...
 
OsiObject2operator= (const OsiObject2 &rhs)
 Assignment operator. More...
 
virtual ~OsiObject2 ()
 Destructor. More...
 
void setPreferredWay (int value)
 Set preferred way of branching - -1 off, 0 down, 1 up (for 2-way) More...
 
virtual int preferredWay () const
 Get preferred way of branching - -1 off, 0 down, 1 up (for 2-way) More...
 
- Public Member Functions inherited from OsiObject
 OsiObject ()
 Default Constructor. More...
 
 OsiObject (const OsiObject &)
 Copy constructor. More...
 
OsiObjectoperator= (const OsiObject &rhs)
 Assignment operator. More...
 
virtual ~OsiObject ()
 Destructor. More...
 
double infeasibility (const OsiSolverInterface *solver, int &whichWay) const
 Infeasibility of the object. More...
 
virtual double checkInfeasibility (const OsiBranchingInformation *info) const
 
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. More...
 
virtual bool canDoHeuristics () const
 Return true if object can take part in normal heuristics. More...
 
virtual bool canMoveToNearest () const
 Return true if object can take part in move to nearest heuristic. More...
 
int priority () const
 Return Priority - note 1 is highest priority. More...
 
void setPriority (int priority)
 Set priority. More...
 
virtual bool boundBranch () const
 Return true if branch should only bound variables. More...
 
int numberWays () const
 Return maximum number of ways branch may have. More...
 
void setNumberWays (int numberWays)
 Set maximum number of ways branch may have. More...
 
void setWhichWay (int way)
 Return preferred way to branch. More...
 
int whichWay () const
 Return current preferred way to branch. More...
 
double infeasibility () const
 Return infeasibility. More...
 
virtual void updateBefore (const OsiObject *)
 Updates stuff like pseudocosts before threads. More...
 
virtual void updateAfter (const OsiObject *, const OsiObject *)
 Updates stuff like pseudocosts after threads finished. More...
 

Protected Attributes

double originalLower_
 data Original lower bound More...
 
double originalUpper_
 Original upper bound. More...
 
int columnNumber_
 Column number in solver. More...
 
- Protected Attributes inherited from OsiObject2
int preferredWay_
 Preferred way of branching - -1 off, 0 down, 1 up (for 2-way) More...
 
double otherInfeasibility_
 "Infeasibility" on other way More...
 
- Protected Attributes inherited from OsiObject
double infeasibility_
 data More...
 
short whichWay_
 Computed preferred way to branch. More...
 
short numberWays_
 Maximum number of ways on branch. More...
 
int priority_
 Priority. More...
 

Detailed Description

Define a single integer class.

Definition at line 558 of file OsiBranchingObject.hpp.

Constructor & Destructor Documentation

OsiSimpleInteger::OsiSimpleInteger ( )

Default Constructor.

OsiSimpleInteger::OsiSimpleInteger ( const OsiSolverInterface solver,
int  iColumn 
)

Useful constructor - passed solver index.

OsiSimpleInteger::OsiSimpleInteger ( int  iColumn,
double  lower,
double  upper 
)

Useful constructor - passed solver index and original bounds.

OsiSimpleInteger::OsiSimpleInteger ( const OsiSimpleInteger )

Copy constructor.

virtual OsiSimpleInteger::~OsiSimpleInteger ( )
virtual

Destructor.

Member Function Documentation

virtual OsiObject* OsiSimpleInteger::clone ( ) const
virtual

Clone.

Implements OsiObject.

Reimplemented in OsiUsesBiLinear, and OsiSimpleFixedInteger.

OsiSimpleInteger& OsiSimpleInteger::operator= ( const OsiSimpleInteger rhs)

Assignment operator.

virtual double OsiSimpleInteger::infeasibility ( const OsiBranchingInformation info,
int &  whichWay 
) const
virtual

Infeasibility - large is 0.5.

Implements OsiObject.

Reimplemented in OsiUsesBiLinear, and OsiSimpleFixedInteger.

virtual double OsiSimpleInteger::feasibleRegion ( OsiSolverInterface solver,
const OsiBranchingInformation info 
) const
virtual

Set bounds to fix the variable at the current (integer) value.

Given an integer value, set the lower and upper bounds to fix the variable. Returns amount it had to move variable.

Implements OsiObject.

Reimplemented in OsiUsesBiLinear.

virtual OsiBranchingObject* OsiSimpleInteger::createBranch ( OsiSolverInterface solver,
const OsiBranchingInformation info,
int  way 
) const
virtual

Creates a branching object.

The preferred direction is set by way, 0 for down, 1 for up.

Reimplemented from OsiObject.

Reimplemented in OsiUsesBiLinear, and OsiSimpleFixedInteger.

void OsiSimpleInteger::setColumnNumber ( int  value)
inline

Set solver column number.

Definition at line 601 of file OsiBranchingObject.hpp.

virtual int OsiSimpleInteger::columnNumber ( ) const
virtual

Column number if single column object -1 otherwise, so returns >= 0 Used by heuristics.

Reimplemented from OsiObject.

double OsiSimpleInteger::originalLowerBound ( ) const
inline

Original bounds.

Definition at line 613 of file OsiBranchingObject.hpp.

void OsiSimpleInteger::setOriginalLowerBound ( double  value)
inline

Definition at line 617 of file OsiBranchingObject.hpp.

double OsiSimpleInteger::originalUpperBound ( ) const
inline

Definition at line 621 of file OsiBranchingObject.hpp.

void OsiSimpleInteger::setOriginalUpperBound ( double  value)
inline

Definition at line 625 of file OsiBranchingObject.hpp.

virtual void OsiSimpleInteger::resetBounds ( const OsiSolverInterface solver)
virtual

Reset variable bounds to their original values.

Bounds may be tightened, so it may be good to be able to reset them to their original values.

Reimplemented from OsiObject.

virtual void OsiSimpleInteger::resetSequenceEtc ( int  numberColumns,
const int *  originalColumns 
)
virtual

Change column numbers after preprocessing.

Reimplemented from OsiObject.

virtual double OsiSimpleInteger::upEstimate ( ) const
virtual

Return "up" estimate (default 1.0e-5)

Reimplemented from OsiObject.

virtual double OsiSimpleInteger::downEstimate ( ) const
virtual

Return "down" estimate (default 1.0e-5)

Reimplemented from OsiObject.

virtual bool OsiSimpleInteger::canHandleShadowPrices ( ) const
inlinevirtual

Return true if knows how to deal with Pseudo Shadow Prices.

Reimplemented from OsiObject.

Definition at line 643 of file OsiBranchingObject.hpp.

Member Data Documentation

double OsiSimpleInteger::originalLower_
protected

data Original lower bound

Definition at line 651 of file OsiBranchingObject.hpp.

double OsiSimpleInteger::originalUpper_
protected

Original upper bound.

Definition at line 653 of file OsiBranchingObject.hpp.

int OsiSimpleInteger::columnNumber_
protected

Column number in solver.

Definition at line 655 of file OsiBranchingObject.hpp.


The documentation for this class was generated from the following file: