Scippy

GCG

Branch-and-Price & Column Generation for Everyone

PricingType Class Referenceabstract

Detailed Description

Definition at line 41 of file class_pricingtype.h.

#include <class_pricingtype.h>

Public Member Functions

 PricingType ()
 
 PricingType (SCIP *p_scip)
 
virtual ~PricingType ()
 
virtual SCIP_Real consGetDual (SCIP *scip, SCIP_CONS *cons) const =0
 
virtual SCIP_Real rowGetDual (SCIP_ROW *row) const =0
 
virtual SCIP_Real varGetObj (SCIP_VAR *var) const =0
 
virtual SCIP_RETCODE addParameters ()=0
 
virtual SCIP_RETCODE startClock ()
 
virtual SCIP_RETCODE stopClock ()
 
virtual SCIP_Real getClockTime () const
 
virtual int getMaxrounds () const
 
virtual int getMaxcolsround () const =0
 
virtual int getMaxcolsprob () const =0
 
int getMaxsuccessfulprobs () const
 
virtual SCIP_Real getRelmaxprobs () const =0
 
SCIP_Real getRelmaxsuccessfulprobs () const
 
GCG_PRICETYPE getType () const
 
int getCalls () const
 
virtual void incCalls ()
 
SCIP_RETCODE resetCalls ()
 

Protected Attributes

SCIP * scip_
 
GCG_PRICETYPE type
 
SCIP_CLOCK * clock
 
int calls
 
int maxrounds
 
int maxcolsroundroot
 
int maxcolsround
 
int maxcolsprobroot
 
int maxcolsprob
 
int maxsuccessfulprobs
 
SCIP_Real relmaxprobsroot
 
SCIP_Real relmaxprobs
 
SCIP_Real relmaxsuccessfulprobs
 

Constructor & Destructor Documentation

◆ PricingType() [1/2]

PricingType::PricingType ( )

constructor

◆ PricingType() [2/2]

◆ ~PricingType()

PricingType::~PricingType ( )
virtual

destructor

Definition at line 96 of file class_pricingtype.cpp.

References clock, and scip_.

Member Function Documentation

◆ consGetDual()

virtual SCIP_Real PricingType::consGetDual ( SCIP *  scip,
SCIP_CONS *  cons 
) const
pure virtual

◆ rowGetDual()

virtual SCIP_Real PricingType::rowGetDual ( SCIP_ROW *  row) const
pure virtual

get dual value of a row

Parameters
rowrow to get dual value for

Implemented in FarkasPricing, and ReducedCostPricing.

Referenced by ObjPricerGcg::getStabilizedDualObjectiveValue(), gcg::Stabilization::rowGetDual(), and ObjPricerGcg::setPricingObjs().

◆ varGetObj()

virtual SCIP_Real PricingType::varGetObj ( SCIP_VAR *  var) const
pure virtual

get objective value of variable

Parameters
varvariable to get objective value for

Implemented in FarkasPricing, and ReducedCostPricing.

Referenced by ObjPricerGcg::setPricingObjs().

◆ addParameters()

virtual SCIP_RETCODE PricingType::addParameters ( )
pure virtual

adds parameters to the SCIP data structure

Implemented in FarkasPricing, and ReducedCostPricing.

◆ startClock()

SCIP_RETCODE PricingType::startClock ( )
virtual

starts the clock

Definition at line 103 of file class_pricingtype.cpp.

References clock, and scip_.

◆ stopClock()

SCIP_RETCODE PricingType::stopClock ( )
virtual

stops the clock

Definition at line 109 of file class_pricingtype.cpp.

References clock, and scip_.

◆ getClockTime()

SCIP_Real PricingType::getClockTime ( ) const
virtual

returns the time of the clock

Definition at line 115 of file class_pricingtype.cpp.

References clock, and scip_.

Referenced by GCGpricerPrintStatistics(), and ObjPricerGcg::pricingLoop().

◆ getMaxrounds()

virtual int PricingType::getMaxrounds ( ) const
inlinevirtual

returns the maximal number of rounds

Definition at line 102 of file class_pricingtype.h.

References maxrounds.

◆ getMaxcolsround()

virtual int PricingType::getMaxcolsround ( ) const
pure virtual

returns the maximal number of columns per pricing round

Implemented in FarkasPricing, and ReducedCostPricing.

Referenced by gcg::Pricingcontroller::canPricingloopBeAborted().

◆ getMaxcolsprob()

virtual int PricingType::getMaxcolsprob ( ) const
pure virtual

returns the maximal number of columns per problem to be generated during pricing

Implemented in FarkasPricing, and ReducedCostPricing.

◆ getMaxsuccessfulprobs()

int PricingType::getMaxsuccessfulprobs ( ) const
inline

returns the maximal number of successfully solved pricing problems

Definition at line 114 of file class_pricingtype.h.

References maxsuccessfulprobs.

◆ getRelmaxprobs()

virtual SCIP_Real PricingType::getRelmaxprobs ( ) const
pure virtual

returns the maximal percentage of pricing problems that are solved if variables have already been found

Implemented in FarkasPricing, and ReducedCostPricing.

Referenced by gcg::Pricingcontroller::canPricingloopBeAborted().

◆ getRelmaxsuccessfulprobs()

SCIP_Real PricingType::getRelmaxsuccessfulprobs ( ) const
inline

returns the maximal percentage of pricing problems that need to be solved successfully

Definition at line 123 of file class_pricingtype.h.

References relmaxsuccessfulprobs.

Referenced by gcg::Pricingcontroller::canPricingloopBeAborted().

◆ getType()

GCG_PRICETYPE PricingType::getType ( ) const
inline

◆ getCalls()

int PricingType::getCalls ( ) const
inline

returns the number of calls so far

Definition at line 135 of file class_pricingtype.h.

References calls.

Referenced by GCGpricerPrintStatistics(), and ObjPricerGcg::priceNewVariables().

◆ incCalls()

virtual void PricingType::incCalls ( )
inlinevirtual

increases the number of calls

Definition at line 141 of file class_pricingtype.h.

References calls.

Referenced by ObjPricerGcg::priceNewVariables().

◆ resetCalls()

SCIP_RETCODE PricingType::resetCalls ( )
inline

resets the number of calls and the clock for a restart

Definition at line 147 of file class_pricingtype.h.

References calls, clock, and scip_.

Field Documentation

◆ scip_

◆ type

GCG_PRICETYPE PricingType::type
protected

◆ clock

SCIP_CLOCK* PricingType::clock
protected

CPU clock

Definition at line 46 of file class_pricingtype.h.

Referenced by getClockTime(), PricingType(), resetCalls(), startClock(), stopClock(), and ~PricingType().

◆ calls

int PricingType::calls
protected

number of times this type of pricing was called

Definition at line 48 of file class_pricingtype.h.

Referenced by getCalls(), incCalls(), PricingType(), and resetCalls().

◆ maxrounds

int PricingType::maxrounds
protected

maximal number of pricing rounds

Definition at line 49 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), getMaxrounds(), and PricingType().

◆ maxcolsroundroot

int PricingType::maxcolsroundroot
protected

maximal number of columns per pricing round at root node

Definition at line 50 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), ReducedCostPricing::getMaxcolsround(), and PricingType().

◆ maxcolsround

int PricingType::maxcolsround
protected

◆ maxcolsprobroot

int PricingType::maxcolsprobroot
protected

maximal number of columns per problem to be generated at root node

Definition at line 52 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), ReducedCostPricing::getMaxcolsprob(), and PricingType().

◆ maxcolsprob

int PricingType::maxcolsprob
protected

maximal number of columns per problem to be generated

Definition at line 53 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), FarkasPricing::addParameters(), ReducedCostPricing::getMaxcolsprob(), FarkasPricing::getMaxcolsprob(), and PricingType().

◆ maxsuccessfulprobs

int PricingType::maxsuccessfulprobs
protected

maximal number of successfully solved pricing problems until pricing loop is aborted

Definition at line 54 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), getMaxsuccessfulprobs(), and PricingType().

◆ relmaxprobsroot

SCIP_Real PricingType::relmaxprobsroot
protected

maximal percentage of pricing problems that are solved at root node if variables have already been found

Definition at line 56 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), ReducedCostPricing::getRelmaxprobs(), and PricingType().

◆ relmaxprobs

SCIP_Real PricingType::relmaxprobs
protected

maximal percentage of pricing problems that are solved if variables have already been found

Definition at line 58 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), FarkasPricing::addParameters(), ReducedCostPricing::getRelmaxprobs(), FarkasPricing::getRelmaxprobs(), and PricingType().

◆ relmaxsuccessfulprobs

SCIP_Real PricingType::relmaxsuccessfulprobs
protected

maximal percentage of pricing problems that need to be solved successfully

Definition at line 60 of file class_pricingtype.h.

Referenced by ReducedCostPricing::addParameters(), getRelmaxsuccessfulprobs(), and PricingType().