Public Member Functions | Protected Attributes
CbcSimpleIntegerDynamicPseudoCost Class Reference

Define a single integer class but with dynamic pseudo costs. More...

#include <CbcSimpleIntegerDynamicPseudoCost.hpp>

Inheritance diagram for CbcSimpleIntegerDynamicPseudoCost:
CbcSimpleInteger CbcSimpleInteger CbcObject CbcObject CbcObject CbcObject CbcObject CbcObject

List of all members.

Public Member Functions

 CbcSimpleIntegerDynamicPseudoCost ()
 CbcSimpleIntegerDynamicPseudoCost (CbcModel *model, int iColumn, double breakEven=0.5)
 CbcSimpleIntegerDynamicPseudoCost (CbcModel *model, int iColumn, double downDynamicPseudoCost, double upDynamicPseudoCost)
 CbcSimpleIntegerDynamicPseudoCost (CbcModel *model, int dummy, int iColumn, double downDynamicPseudoCost, double upDynamicPseudoCost)
 CbcSimpleIntegerDynamicPseudoCost (const CbcSimpleIntegerDynamicPseudoCost &)
virtual CbcObjectclone () const
 Clone.
CbcSimpleIntegerDynamicPseudoCostoperator= (const CbcSimpleIntegerDynamicPseudoCost &rhs)
virtual ~CbcSimpleIntegerDynamicPseudoCost ()
virtual double infeasibility (const OsiBranchingInformation *info, int &preferredWay) const
 Infeasibility - large is 0.5.
virtual CbcBranchingObjectcreateCbcBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
 Creates a branching object.
void fillCreateBranch (CbcIntegerBranchingObject *branching, const OsiBranchingInformation *info, int way)
 Fills in a created branching object.
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 &data)
 Update object by CbcObjectUpdateData.
void copySome (const CbcSimpleIntegerDynamicPseudoCost *otherObject)
 Copy some information i.e. just variable stuff.
virtual void updateBefore (const OsiObject *rhs)
 Updates stuff like pseudocosts before threads.
virtual void updateAfter (const OsiObject *rhs, const OsiObject *baseObject)
 Updates stuff like pseudocosts after threads finished.
void updateAfterMini (int numberDown, int numberDownInfeasible, double sumDown, int numberUp, int numberUpInfeasible, double sumUp)
 Updates stuff like pseudocosts after mini branch and bound.
virtual OsiSolverBranch * solverBranch () const
 Create an OsiSolverBranch object.
double downDynamicPseudoCost () const
 Down pseudo cost.
void setDownDynamicPseudoCost (double value)
 Set down pseudo cost.
void updateDownDynamicPseudoCost (double value)
 Modify down pseudo cost in a slightly different way.
double upDynamicPseudoCost () const
 Up pseudo cost.
void setUpDynamicPseudoCost (double value)
 Set up pseudo cost.
void updateUpDynamicPseudoCost (double value)
 Modify up pseudo cost in a slightly different way.
double downShadowPrice () const
 Down pseudo shadow price cost.
void setDownShadowPrice (double value)
 Set down pseudo shadow price cost.
double upShadowPrice () const
 Up pseudo shadow price cost.
void setUpShadowPrice (double value)
 Set up pseudo shadow price cost.
double upDownSeparator () const
 Up down separator.
void setUpDownSeparator (double value)
 Set up down separator.
double sumDownCost () const
 Down sum cost.
void setSumDownCost (double value)
 Set down sum cost.
void addToSumDownCost (double value)
 Add to down sum cost and set last and square.
double sumUpCost () const
 Up sum cost.
void setSumUpCost (double value)
 Set up sum cost.
void addToSumUpCost (double value)
 Add to up sum cost and set last and square.
double sumDownChange () const
 Down sum change.
void setSumDownChange (double value)
 Set down sum change.
void addToSumDownChange (double value)
 Add to down sum change.
double sumUpChange () const
 Up sum change.
void setSumUpChange (double value)
 Set up sum change.
void addToSumUpChange (double value)
 Add to up sum change and set last and square.
double sumDownDecrease () const
 Sum down decrease number infeasibilities from strong or actual.
void setSumDownDecrease (double value)
 Set sum down decrease number infeasibilities from strong or actual.
void addToSumDownDecrease (double value)
 Add to sum down decrease number infeasibilities from strong or actual.
double sumUpDecrease () const
 Sum up decrease number infeasibilities from strong or actual.
void setSumUpDecrease (double value)
 Set sum up decrease number infeasibilities from strong or actual.
void addToSumUpDecrease (double value)
 Add to sum up decrease number infeasibilities from strong or actual.
int numberTimesDown () const
 Down number times.
void setNumberTimesDown (int value)
 Set down number times.
void incrementNumberTimesDown ()
 Increment down number times.
int numberTimesUp () const
 Up number times.
void setNumberTimesUp (int value)
 Set up number times.
void incrementNumberTimesUp ()
 Increment up number times.
int numberTimesDownInfeasible () const
 Down number times infeasible.
void setNumberTimesDownInfeasible (int value)
 Set down number times infeasible.
void incrementNumberTimesDownInfeasible ()
 Increment down number times infeasible.
int numberTimesUpInfeasible () const
 Up number times infeasible.
void setNumberTimesUpInfeasible (int value)
 Set up number times infeasible.
void incrementNumberTimesUpInfeasible ()
 Increment up number times infeasible.
int numberBeforeTrust () const
 Number of times before trusted.
void setNumberBeforeTrust (int value)
 Set number of times before trusted.
void incrementNumberBeforeTrust ()
 Increment number of times before trusted.
virtual double upEstimate () const
 Return "up" estimate.
virtual double downEstimate () const
 Return "down" estimate (default 1.0e-5)
int method () const
 method - see below for details
void setMethod (int value)
 Set method.
void setDownInformation (double changeObjectiveDown, int changeInfeasibilityDown)
 Pass in information on a down branch.
void setUpInformation (double changeObjectiveUp, int changeInfeasibilityUp)
 Pass in information on a up branch.
void setProbingInformation (int fixedDown, int fixedUp)
 Pass in probing information.
void print (int type=0, double value=0.0) const
 Print - 0 -summary, 1 just before strong.
bool same (const CbcSimpleIntegerDynamicPseudoCost *obj) const
 Same - returns true if contents match(ish)
 CbcSimpleIntegerDynamicPseudoCost ()
 CbcSimpleIntegerDynamicPseudoCost (CbcModel *model, int iColumn, double breakEven=0.5)
 CbcSimpleIntegerDynamicPseudoCost (CbcModel *model, int iColumn, double downDynamicPseudoCost, double upDynamicPseudoCost)
 CbcSimpleIntegerDynamicPseudoCost (CbcModel *model, int dummy, int iColumn, double downDynamicPseudoCost, double upDynamicPseudoCost)
 CbcSimpleIntegerDynamicPseudoCost (const CbcSimpleIntegerDynamicPseudoCost &)
virtual CbcObjectclone () const
 Clone.
CbcSimpleIntegerDynamicPseudoCostoperator= (const CbcSimpleIntegerDynamicPseudoCost &rhs)
virtual ~CbcSimpleIntegerDynamicPseudoCost ()
virtual double infeasibility (const OsiBranchingInformation *info, int &preferredWay) const
 Infeasibility - large is 0.5.
virtual CbcBranchingObjectcreateCbcBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
 Creates a branching object.
void fillCreateBranch (CbcIntegerBranchingObject *branching, const OsiBranchingInformation *info, int way)
 Fills in a created branching object.
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 &data)
 Update object by CbcObjectUpdateData.
void copySome (const CbcSimpleIntegerDynamicPseudoCost *otherObject)
 Copy some information i.e. just variable stuff.
virtual void updateBefore (const OsiObject *rhs)
 Updates stuff like pseudocosts before threads.
virtual void updateAfter (const OsiObject *rhs, const OsiObject *baseObject)
 Updates stuff like pseudocosts after threads finished.
void updateAfterMini (int numberDown, int numberDownInfeasible, double sumDown, int numberUp, int numberUpInfeasible, double sumUp)
 Updates stuff like pseudocosts after mini branch and bound.
virtual OsiSolverBranch * solverBranch () const
 Create an OsiSolverBranch object.
double downDynamicPseudoCost () const
 Down pseudo cost.
void setDownDynamicPseudoCost (double value)
 Set down pseudo cost.
void updateDownDynamicPseudoCost (double value)
 Modify down pseudo cost in a slightly different way.
double upDynamicPseudoCost () const
 Up pseudo cost.
void setUpDynamicPseudoCost (double value)
 Set up pseudo cost.
void updateUpDynamicPseudoCost (double value)
 Modify up pseudo cost in a slightly different way.
double downShadowPrice () const
 Down pseudo shadow price cost.
void setDownShadowPrice (double value)
 Set down pseudo shadow price cost.
double upShadowPrice () const
 Up pseudo shadow price cost.
void setUpShadowPrice (double value)
 Set up pseudo shadow price cost.
double upDownSeparator () const
 Up down separator.
void setUpDownSeparator (double value)
 Set up down separator.
double sumDownCost () const
 Down sum cost.
void setSumDownCost (double value)
 Set down sum cost.
void addToSumDownCost (double value)
 Add to down sum cost and set last and square.
double sumUpCost () const
 Up sum cost.
void setSumUpCost (double value)
 Set up sum cost.
void addToSumUpCost (double value)
 Add to up sum cost and set last and square.
double sumDownChange () const
 Down sum change.
void setSumDownChange (double value)
 Set down sum change.
void addToSumDownChange (double value)
 Add to down sum change.
double sumUpChange () const
 Up sum change.
void setSumUpChange (double value)
 Set up sum change.
void addToSumUpChange (double value)
 Add to up sum change and set last and square.
double sumDownDecrease () const
 Sum down decrease number infeasibilities from strong or actual.
void setSumDownDecrease (double value)
 Set sum down decrease number infeasibilities from strong or actual.
void addToSumDownDecrease (double value)
 Add to sum down decrease number infeasibilities from strong or actual.
double sumUpDecrease () const
 Sum up decrease number infeasibilities from strong or actual.
void setSumUpDecrease (double value)
 Set sum up decrease number infeasibilities from strong or actual.
void addToSumUpDecrease (double value)
 Add to sum up decrease number infeasibilities from strong or actual.
int numberTimesDown () const
 Down number times.
void setNumberTimesDown (int value)
 Set down number times.
void incrementNumberTimesDown ()
 Increment down number times.
int numberTimesUp () const
 Up number times.
void setNumberTimesUp (int value)
 Set up number times.
void incrementNumberTimesUp ()
 Increment up number times.
int numberTimesDownInfeasible () const
 Down number times infeasible.
void setNumberTimesDownInfeasible (int value)
 Set down number times infeasible.
void incrementNumberTimesDownInfeasible ()
 Increment down number times infeasible.
int numberTimesUpInfeasible () const
 Up number times infeasible.
void setNumberTimesUpInfeasible (int value)
 Set up number times infeasible.
void incrementNumberTimesUpInfeasible ()
 Increment up number times infeasible.
int numberBeforeTrust () const
 Number of times before trusted.
void setNumberBeforeTrust (int value)
 Set number of times before trusted.
void incrementNumberBeforeTrust ()
 Increment number of times before trusted.
virtual double upEstimate () const
 Return "up" estimate.
virtual double downEstimate () const
 Return "down" estimate (default 1.0e-5)
int method () const
 method - see below for details
void setMethod (int value)
 Set method.
void setDownInformation (double changeObjectiveDown, int changeInfeasibilityDown)
 Pass in information on a down branch.
void setUpInformation (double changeObjectiveUp, int changeInfeasibilityUp)
 Pass in information on a up branch.
void setProbingInformation (int fixedDown, int fixedUp)
 Pass in probing information.
void print (int type=0, double value=0.0) const
 Print - 0 -summary, 1 just before strong.
bool same (const CbcSimpleIntegerDynamicPseudoCost *obj) const
 Same - returns true if contents match(ish)

Protected Attributes

double downDynamicPseudoCost_
 data
double upDynamicPseudoCost_
 Up pseudo cost.
double upDownSeparator_
 Up/down separator If >0.0 then do first branch up if value-floor(value) >= this value.
double sumDownCost_
 Sum down cost from strong or actual.
double sumUpCost_
 Sum up cost from strong or actual.
double sumDownChange_
 Sum of all changes to x when going down.
double sumUpChange_
 Sum of all changes to x when going up.
double downShadowPrice_
 Current pseudo-shadow price estimate down.
double upShadowPrice_
 Current pseudo-shadow price estimate up.
double sumDownDecrease_
 Sum down decrease number infeasibilities from strong or actual.
double sumUpDecrease_
 Sum up decrease number infeasibilities from strong or actual.
double lastDownCost_
 Last down cost from strong (i.e. as computed by last strong)
double lastUpCost_
 Last up cost from strong (i.e. as computed by last strong)
int lastDownDecrease_
 Last down decrease number infeasibilities from strong (i.e. as computed by last strong)
int lastUpDecrease_
 Last up decrease number infeasibilities from strong (i.e. as computed by last strong)
int numberTimesDown_
 Number of times we have gone down.
int numberTimesUp_
 Number of times we have gone up.
int numberTimesDownInfeasible_
 Number of times we have been infeasible going down.
int numberTimesUpInfeasible_
 Number of times we have been infeasible going up.
int numberBeforeTrust_
 Number of branches before we trust.
int numberTimesDownLocalFixed_
 Number of local probing fixings going down.
int numberTimesUpLocalFixed_
 Number of local probing fixings going up.
double numberTimesDownTotalFixed_
 Number of total probing fixings going down.
double numberTimesUpTotalFixed_
 Number of total probing fixings going up.
int numberTimesProbingTotal_
 Number of times probing done.
int method_
 Number of times infeasible when tested.

Detailed Description

Define a single integer class but with dynamic pseudo costs.

Based on work by Achterberg, Koch and Martin.

It is wild overkill but to keep design all twiddly things are in each. This could be used for fine tuning.

Definition at line 29 of file CbcSimpleIntegerDynamicPseudoCost.hpp.


Constructor & Destructor Documentation

CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( )
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( CbcModel model,
int  iColumn,
double  breakEven = 0.5 
)
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( CbcModel model,
int  iColumn,
double  downDynamicPseudoCost,
double  upDynamicPseudoCost 
)
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( CbcModel model,
int  dummy,
int  iColumn,
double  downDynamicPseudoCost,
double  upDynamicPseudoCost 
)
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( const CbcSimpleIntegerDynamicPseudoCost )
virtual CbcSimpleIntegerDynamicPseudoCost::~CbcSimpleIntegerDynamicPseudoCost ( ) [virtual]
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( )
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( CbcModel model,
int  iColumn,
double  breakEven = 0.5 
)
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( CbcModel model,
int  iColumn,
double  downDynamicPseudoCost,
double  upDynamicPseudoCost 
)
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( CbcModel model,
int  dummy,
int  iColumn,
double  downDynamicPseudoCost,
double  upDynamicPseudoCost 
)
CbcSimpleIntegerDynamicPseudoCost::CbcSimpleIntegerDynamicPseudoCost ( const CbcSimpleIntegerDynamicPseudoCost )
virtual CbcSimpleIntegerDynamicPseudoCost::~CbcSimpleIntegerDynamicPseudoCost ( ) [virtual]

Member Function Documentation

virtual CbcObject* CbcSimpleIntegerDynamicPseudoCost::clone ( ) const [virtual]

Clone.

Reimplemented from CbcSimpleInteger.

CbcSimpleIntegerDynamicPseudoCost& CbcSimpleIntegerDynamicPseudoCost::operator= ( const CbcSimpleIntegerDynamicPseudoCost rhs)
virtual double CbcSimpleIntegerDynamicPseudoCost::infeasibility ( const OsiBranchingInformation *  info,
int &  preferredWay 
) const [virtual]

Infeasibility - large is 0.5.

Reimplemented from CbcSimpleInteger.

virtual CbcBranchingObject* CbcSimpleIntegerDynamicPseudoCost::createCbcBranch ( OsiSolverInterface *  solver,
const OsiBranchingInformation *  info,
int  way 
) [virtual]

Creates a branching object.

Reimplemented from CbcSimpleInteger.

void CbcSimpleIntegerDynamicPseudoCost::fillCreateBranch ( CbcIntegerBranchingObject branching,
const OsiBranchingInformation *  info,
int  way 
)

Fills in a created branching object.

Reimplemented from CbcSimpleInteger.

virtual CbcObjectUpdateData CbcSimpleIntegerDynamicPseudoCost::createUpdateInformation ( const OsiSolverInterface *  solver,
const CbcNode node,
const CbcBranchingObject branchingObject 
) [virtual]

Pass in information on branch just done and create CbcObjectUpdateData instance.

If object does not need data then backward pointer will be NULL. Assumes can get information from solver

Reimplemented from CbcObject.

virtual void CbcSimpleIntegerDynamicPseudoCost::updateInformation ( const CbcObjectUpdateData data) [virtual]

Update object by CbcObjectUpdateData.

Reimplemented from CbcObject.

void CbcSimpleIntegerDynamicPseudoCost::copySome ( const CbcSimpleIntegerDynamicPseudoCost otherObject)

Copy some information i.e. just variable stuff.

virtual void CbcSimpleIntegerDynamicPseudoCost::updateBefore ( const OsiObject *  rhs) [virtual]

Updates stuff like pseudocosts before threads.

virtual void CbcSimpleIntegerDynamicPseudoCost::updateAfter ( const OsiObject *  rhs,
const OsiObject *  baseObject 
) [virtual]

Updates stuff like pseudocosts after threads finished.

void CbcSimpleIntegerDynamicPseudoCost::updateAfterMini ( int  numberDown,
int  numberDownInfeasible,
double  sumDown,
int  numberUp,
int  numberUpInfeasible,
double  sumUp 
)

Updates stuff like pseudocosts after mini branch and bound.

virtual OsiSolverBranch* CbcSimpleIntegerDynamicPseudoCost::solverBranch ( ) const [virtual]

Create an OsiSolverBranch object.

This returns NULL if branch not represented by bound changes

Reimplemented from CbcObject.

double CbcSimpleIntegerDynamicPseudoCost::downDynamicPseudoCost ( ) const [inline]

Down pseudo cost.

Definition at line 97 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setDownDynamicPseudoCost ( double  value)

Set down pseudo cost.

void CbcSimpleIntegerDynamicPseudoCost::updateDownDynamicPseudoCost ( double  value)

Modify down pseudo cost in a slightly different way.

double CbcSimpleIntegerDynamicPseudoCost::upDynamicPseudoCost ( ) const [inline]

Up pseudo cost.

Definition at line 106 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setUpDynamicPseudoCost ( double  value)

Set up pseudo cost.

void CbcSimpleIntegerDynamicPseudoCost::updateUpDynamicPseudoCost ( double  value)

Modify up pseudo cost in a slightly different way.

double CbcSimpleIntegerDynamicPseudoCost::downShadowPrice ( ) const [inline]

Down pseudo shadow price cost.

Definition at line 115 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setDownShadowPrice ( double  value) [inline]

Set down pseudo shadow price cost.

Definition at line 119 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::upShadowPrice ( ) const [inline]

Up pseudo shadow price cost.

Definition at line 123 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setUpShadowPrice ( double  value) [inline]

Set up pseudo shadow price cost.

Definition at line 127 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::upDownSeparator ( ) const [inline]

Up down separator.

Definition at line 132 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setUpDownSeparator ( double  value) [inline]

Set up down separator.

Definition at line 136 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumDownCost ( ) const [inline]

Down sum cost.

Definition at line 141 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumDownCost ( double  value) [inline]

Set down sum cost.

Definition at line 145 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumDownCost ( double  value) [inline]

Add to down sum cost and set last and square.

Definition at line 149 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumUpCost ( ) const [inline]

Up sum cost.

Definition at line 155 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumUpCost ( double  value) [inline]

Set up sum cost.

Definition at line 159 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumUpCost ( double  value) [inline]

Add to up sum cost and set last and square.

Definition at line 163 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumDownChange ( ) const [inline]

Down sum change.

Definition at line 169 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumDownChange ( double  value) [inline]

Set down sum change.

Definition at line 173 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumDownChange ( double  value) [inline]

Add to down sum change.

Definition at line 177 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumUpChange ( ) const [inline]

Up sum change.

Definition at line 182 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumUpChange ( double  value) [inline]

Set up sum change.

Definition at line 186 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumUpChange ( double  value) [inline]

Add to up sum change and set last and square.

Definition at line 190 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumDownDecrease ( ) const [inline]

Sum down decrease number infeasibilities from strong or actual.

Definition at line 195 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumDownDecrease ( double  value) [inline]

Set sum down decrease number infeasibilities from strong or actual.

Definition at line 199 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumDownDecrease ( double  value) [inline]

Add to sum down decrease number infeasibilities from strong or actual.

Definition at line 203 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumUpDecrease ( ) const [inline]

Sum up decrease number infeasibilities from strong or actual.

Definition at line 208 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumUpDecrease ( double  value) [inline]

Set sum up decrease number infeasibilities from strong or actual.

Definition at line 212 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumUpDecrease ( double  value) [inline]

Add to sum up decrease number infeasibilities from strong or actual.

Definition at line 216 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesDown ( ) const [inline]

Down number times.

Definition at line 221 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesDown ( int  value) [inline]

Set down number times.

Definition at line 225 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesDown ( ) [inline]

Increment down number times.

Definition at line 229 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesUp ( ) const [inline]

Up number times.

Definition at line 234 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesUp ( int  value) [inline]

Set up number times.

Definition at line 238 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesUp ( ) [inline]

Increment up number times.

Definition at line 242 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesDownInfeasible ( ) const [inline]

Down number times infeasible.

Definition at line 247 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesDownInfeasible ( int  value) [inline]

Set down number times infeasible.

Definition at line 251 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesDownInfeasible ( ) [inline]

Increment down number times infeasible.

Definition at line 255 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesUpInfeasible ( ) const [inline]

Up number times infeasible.

Definition at line 260 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesUpInfeasible ( int  value) [inline]

Set up number times infeasible.

Definition at line 264 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesUpInfeasible ( ) [inline]

Increment up number times infeasible.

Definition at line 268 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberBeforeTrust ( ) const [inline]

Number of times before trusted.

Definition at line 273 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberBeforeTrust ( int  value) [inline]

Set number of times before trusted.

Definition at line 277 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberBeforeTrust ( ) [inline]

Increment number of times before trusted.

Definition at line 281 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

virtual double CbcSimpleIntegerDynamicPseudoCost::upEstimate ( ) const [virtual]

Return "up" estimate.

virtual double CbcSimpleIntegerDynamicPseudoCost::downEstimate ( ) const [virtual]

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

int CbcSimpleIntegerDynamicPseudoCost::method ( ) const [inline]

method - see below for details

Definition at line 291 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setMethod ( int  value) [inline]

Set method.

Definition at line 295 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setDownInformation ( double  changeObjectiveDown,
int  changeInfeasibilityDown 
)

Pass in information on a down branch.

void CbcSimpleIntegerDynamicPseudoCost::setUpInformation ( double  changeObjectiveUp,
int  changeInfeasibilityUp 
)

Pass in information on a up branch.

void CbcSimpleIntegerDynamicPseudoCost::setProbingInformation ( int  fixedDown,
int  fixedUp 
)

Pass in probing information.

void CbcSimpleIntegerDynamicPseudoCost::print ( int  type = 0,
double  value = 0.0 
) const

Print - 0 -summary, 1 just before strong.

bool CbcSimpleIntegerDynamicPseudoCost::same ( const CbcSimpleIntegerDynamicPseudoCost obj) const

Same - returns true if contents match(ish)

virtual CbcObject* CbcSimpleIntegerDynamicPseudoCost::clone ( ) const [virtual]

Clone.

Reimplemented from CbcSimpleInteger.

CbcSimpleIntegerDynamicPseudoCost& CbcSimpleIntegerDynamicPseudoCost::operator= ( const CbcSimpleIntegerDynamicPseudoCost rhs)
virtual double CbcSimpleIntegerDynamicPseudoCost::infeasibility ( const OsiBranchingInformation *  info,
int &  preferredWay 
) const [virtual]

Infeasibility - large is 0.5.

Reimplemented from CbcSimpleInteger.

virtual CbcBranchingObject* CbcSimpleIntegerDynamicPseudoCost::createCbcBranch ( OsiSolverInterface *  solver,
const OsiBranchingInformation *  info,
int  way 
) [virtual]

Creates a branching object.

Reimplemented from CbcSimpleInteger.

void CbcSimpleIntegerDynamicPseudoCost::fillCreateBranch ( CbcIntegerBranchingObject branching,
const OsiBranchingInformation *  info,
int  way 
)

Fills in a created branching object.

Reimplemented from CbcSimpleInteger.

virtual CbcObjectUpdateData CbcSimpleIntegerDynamicPseudoCost::createUpdateInformation ( const OsiSolverInterface *  solver,
const CbcNode node,
const CbcBranchingObject branchingObject 
) [virtual]

Pass in information on branch just done and create CbcObjectUpdateData instance.

If object does not need data then backward pointer will be NULL. Assumes can get information from solver

Reimplemented from CbcObject.

virtual void CbcSimpleIntegerDynamicPseudoCost::updateInformation ( const CbcObjectUpdateData data) [virtual]

Update object by CbcObjectUpdateData.

Reimplemented from CbcObject.

void CbcSimpleIntegerDynamicPseudoCost::copySome ( const CbcSimpleIntegerDynamicPseudoCost otherObject)

Copy some information i.e. just variable stuff.

virtual void CbcSimpleIntegerDynamicPseudoCost::updateBefore ( const OsiObject *  rhs) [virtual]

Updates stuff like pseudocosts before threads.

virtual void CbcSimpleIntegerDynamicPseudoCost::updateAfter ( const OsiObject *  rhs,
const OsiObject *  baseObject 
) [virtual]

Updates stuff like pseudocosts after threads finished.

void CbcSimpleIntegerDynamicPseudoCost::updateAfterMini ( int  numberDown,
int  numberDownInfeasible,
double  sumDown,
int  numberUp,
int  numberUpInfeasible,
double  sumUp 
)

Updates stuff like pseudocosts after mini branch and bound.

virtual OsiSolverBranch* CbcSimpleIntegerDynamicPseudoCost::solverBranch ( ) const [virtual]

Create an OsiSolverBranch object.

This returns NULL if branch not represented by bound changes

Reimplemented from CbcObject.

double CbcSimpleIntegerDynamicPseudoCost::downDynamicPseudoCost ( ) const [inline]

Down pseudo cost.

Definition at line 97 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setDownDynamicPseudoCost ( double  value)

Set down pseudo cost.

void CbcSimpleIntegerDynamicPseudoCost::updateDownDynamicPseudoCost ( double  value)

Modify down pseudo cost in a slightly different way.

double CbcSimpleIntegerDynamicPseudoCost::upDynamicPseudoCost ( ) const [inline]

Up pseudo cost.

Definition at line 106 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setUpDynamicPseudoCost ( double  value)

Set up pseudo cost.

void CbcSimpleIntegerDynamicPseudoCost::updateUpDynamicPseudoCost ( double  value)

Modify up pseudo cost in a slightly different way.

double CbcSimpleIntegerDynamicPseudoCost::downShadowPrice ( ) const [inline]

Down pseudo shadow price cost.

Definition at line 115 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setDownShadowPrice ( double  value) [inline]

Set down pseudo shadow price cost.

Definition at line 119 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::upShadowPrice ( ) const [inline]

Up pseudo shadow price cost.

Definition at line 123 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setUpShadowPrice ( double  value) [inline]

Set up pseudo shadow price cost.

Definition at line 127 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::upDownSeparator ( ) const [inline]

Up down separator.

Definition at line 132 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setUpDownSeparator ( double  value) [inline]

Set up down separator.

Definition at line 136 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumDownCost ( ) const [inline]

Down sum cost.

Definition at line 141 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumDownCost ( double  value) [inline]

Set down sum cost.

Definition at line 145 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumDownCost ( double  value) [inline]

Add to down sum cost and set last and square.

Definition at line 149 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumUpCost ( ) const [inline]

Up sum cost.

Definition at line 155 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumUpCost ( double  value) [inline]

Set up sum cost.

Definition at line 159 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumUpCost ( double  value) [inline]

Add to up sum cost and set last and square.

Definition at line 163 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumDownChange ( ) const [inline]

Down sum change.

Definition at line 169 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumDownChange ( double  value) [inline]

Set down sum change.

Definition at line 173 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumDownChange ( double  value) [inline]

Add to down sum change.

Definition at line 177 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumUpChange ( ) const [inline]

Up sum change.

Definition at line 182 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumUpChange ( double  value) [inline]

Set up sum change.

Definition at line 186 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumUpChange ( double  value) [inline]

Add to up sum change and set last and square.

Definition at line 190 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumDownDecrease ( ) const [inline]

Sum down decrease number infeasibilities from strong or actual.

Definition at line 195 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumDownDecrease ( double  value) [inline]

Set sum down decrease number infeasibilities from strong or actual.

Definition at line 199 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumDownDecrease ( double  value) [inline]

Add to sum down decrease number infeasibilities from strong or actual.

Definition at line 203 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

double CbcSimpleIntegerDynamicPseudoCost::sumUpDecrease ( ) const [inline]

Sum up decrease number infeasibilities from strong or actual.

Definition at line 208 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setSumUpDecrease ( double  value) [inline]

Set sum up decrease number infeasibilities from strong or actual.

Definition at line 212 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::addToSumUpDecrease ( double  value) [inline]

Add to sum up decrease number infeasibilities from strong or actual.

Definition at line 216 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesDown ( ) const [inline]

Down number times.

Definition at line 221 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesDown ( int  value) [inline]

Set down number times.

Definition at line 225 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesDown ( ) [inline]

Increment down number times.

Definition at line 229 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesUp ( ) const [inline]

Up number times.

Definition at line 234 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesUp ( int  value) [inline]

Set up number times.

Definition at line 238 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesUp ( ) [inline]

Increment up number times.

Definition at line 242 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesDownInfeasible ( ) const [inline]

Down number times infeasible.

Definition at line 247 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesDownInfeasible ( int  value) [inline]

Set down number times infeasible.

Definition at line 251 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesDownInfeasible ( ) [inline]

Increment down number times infeasible.

Definition at line 255 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberTimesUpInfeasible ( ) const [inline]

Up number times infeasible.

Definition at line 260 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberTimesUpInfeasible ( int  value) [inline]

Set up number times infeasible.

Definition at line 264 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberTimesUpInfeasible ( ) [inline]

Increment up number times infeasible.

Definition at line 268 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

int CbcSimpleIntegerDynamicPseudoCost::numberBeforeTrust ( ) const [inline]

Number of times before trusted.

Definition at line 273 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setNumberBeforeTrust ( int  value) [inline]

Set number of times before trusted.

Definition at line 277 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::incrementNumberBeforeTrust ( ) [inline]

Increment number of times before trusted.

Definition at line 281 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

virtual double CbcSimpleIntegerDynamicPseudoCost::upEstimate ( ) const [virtual]

Return "up" estimate.

virtual double CbcSimpleIntegerDynamicPseudoCost::downEstimate ( ) const [virtual]

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

int CbcSimpleIntegerDynamicPseudoCost::method ( ) const [inline]

method - see below for details

Definition at line 291 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setMethod ( int  value) [inline]

Set method.

Definition at line 295 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

void CbcSimpleIntegerDynamicPseudoCost::setDownInformation ( double  changeObjectiveDown,
int  changeInfeasibilityDown 
)

Pass in information on a down branch.

void CbcSimpleIntegerDynamicPseudoCost::setUpInformation ( double  changeObjectiveUp,
int  changeInfeasibilityUp 
)

Pass in information on a up branch.

void CbcSimpleIntegerDynamicPseudoCost::setProbingInformation ( int  fixedDown,
int  fixedUp 
)

Pass in probing information.

void CbcSimpleIntegerDynamicPseudoCost::print ( int  type = 0,
double  value = 0.0 
) const

Print - 0 -summary, 1 just before strong.

bool CbcSimpleIntegerDynamicPseudoCost::same ( const CbcSimpleIntegerDynamicPseudoCost obj) const

Same - returns true if contents match(ish)


Member Data Documentation

data

Down pseudo cost

Definition at line 314 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Up pseudo cost.

Definition at line 316 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Up/down separator If >0.0 then do first branch up if value-floor(value) >= this value.

Definition at line 321 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Sum down cost from strong or actual.

Definition at line 323 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Sum up cost from strong or actual.

Definition at line 325 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Sum of all changes to x when going down.

Definition at line 327 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Sum of all changes to x when going up.

Definition at line 329 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Current pseudo-shadow price estimate down.

Definition at line 331 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Current pseudo-shadow price estimate up.

Definition at line 333 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Sum down decrease number infeasibilities from strong or actual.

Definition at line 335 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Sum up decrease number infeasibilities from strong or actual.

Definition at line 337 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Last down cost from strong (i.e. as computed by last strong)

Definition at line 339 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Last up cost from strong (i.e. as computed by last strong)

Definition at line 341 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Last down decrease number infeasibilities from strong (i.e. as computed by last strong)

Definition at line 343 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Last up decrease number infeasibilities from strong (i.e. as computed by last strong)

Definition at line 345 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of times we have gone down.

Definition at line 347 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of times we have gone up.

Definition at line 349 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of times we have been infeasible going down.

Definition at line 351 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of times we have been infeasible going up.

Definition at line 353 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of branches before we trust.

Definition at line 355 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of local probing fixings going down.

Definition at line 357 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of local probing fixings going up.

Definition at line 359 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of total probing fixings going down.

Definition at line 361 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of total probing fixings going up.

Definition at line 363 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of times probing done.

Definition at line 365 of file CbcSimpleIntegerDynamicPseudoCost.hpp.

Number of times infeasible when tested.

Method - 0 - pseudo costs 1 - probing

Definition at line 371 of file CbcSimpleIntegerDynamicPseudoCost.hpp.


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