Scippy

SCIP

Solving Constraint Integer Programs

scip::ObjPricer Class Referenceabstract

Detailed Description

C++ wrapper for variable pricer.

This class defines the interface for variable pricer implemented in C++. Note that there is a pure virtual function (this function has to be implemented). This function is: scip_redcost().

Definition at line 52 of file objpricer.h.

C++ wrapper for variable pricer. More...

#include <objpricer.h>

Public Member Functions

 ObjPricer (SCIP *scip, const char *name, const char *desc, int priority, SCIP_Bool delay)
 
 ObjPricer (const ObjPricer &o)
 
 ObjPricer (ObjPricer &&o)
 
virtual ~ObjPricer ()
 
ObjPriceroperator= (const ObjPricer &o)=delete
 
ObjPriceroperator= (ObjPricer &&o)=delete
 
virtual SCIP_DECL_PRICERFREE (scip_free)
 
virtual SCIP_DECL_PRICERINIT (scip_init)
 
virtual SCIP_DECL_PRICEREXIT (scip_exit)
 
virtual SCIP_DECL_PRICERINITSOL (scip_initsol)
 
virtual SCIP_DECL_PRICEREXITSOL (scip_exitsol)
 
virtual SCIP_DECL_PRICERREDCOST (scip_redcost)=0
 
virtual SCIP_DECL_PRICERFARKAS (scip_farkas)
 
- Public Member Functions inherited from scip::ObjProbCloneable
virtual ~ObjProbCloneable ()
 
ObjProbCloneableoperator= (const ObjProbCloneable &o)=delete
 
ObjProbCloneableoperator= (ObjProbCloneable &&o)=delete
 
virtual SCIP_DECL_OBJPROBCLONE (ObjProbCloneable *clone)
 
virtual SCIP_DECL_OBJPROBISCLONEABLE (iscloneable)
 

Data Fields

SCIPscip_
 
char * scip_name_
 
char * scip_desc_
 
const int scip_priority_
 
const SCIP_Bool scip_delay_
 

Constructor & Destructor Documentation

◆ ObjPricer() [1/3]

scip::ObjPricer::ObjPricer ( SCIP scip,
const char *  name,
const char *  desc,
int  priority,
SCIP_Bool  delay 
)
inline

default constructor

Parameters
scipSCIP data structure
namename of variable pricer
descdescription of variable pricer
prioritypriority of the variable pricer
delayshould the pricer be delayed until no other pricers or already existing problem variables with negative reduced costs are found? if this is set to FALSE it may happen that the pricer produces columns that already exist in the problem (which are also priced in by the default problem variable pricing in the same round)

Definition at line 75 of file objpricer.h.

References SCIP_CALL_ABORT, and SCIPduplicateMemoryArray.

◆ ObjPricer() [2/3]

scip::ObjPricer::ObjPricer ( const ObjPricer o)
inline

copy constructor

Definition at line 99 of file objpricer.h.

◆ ObjPricer() [3/3]

scip::ObjPricer::ObjPricer ( ObjPricer &&  o)
inline

move constructor

Definition at line 102 of file objpricer.h.

◆ ~ObjPricer()

virtual scip::ObjPricer::~ObjPricer ( )
inlinevirtual

destructor

Definition at line 110 of file objpricer.h.

References operator=(), and SCIPfreeMemoryArray.

Member Function Documentation

◆ operator=() [1/2]

ObjPricer& scip::ObjPricer::operator= ( const ObjPricer o)
delete

assignment of polymorphic classes causes slicing and is therefore disabled.

Referenced by ~ObjPricer().

◆ operator=() [2/2]

ObjPricer& scip::ObjPricer::operator= ( ObjPricer &&  o)
delete

assignment of polymorphic classes causes slicing and is therefore disabled.

◆ SCIP_DECL_PRICERFREE()

virtual scip::ObjPricer::SCIP_DECL_PRICERFREE ( scip_free  )
inlinevirtual

destructor of variable pricer to free user data (called when SCIP is exiting)

See also
SCIP_DECL_PRICERFREE(x) in type_pricer.h

Definition at line 128 of file objpricer.h.

References SCIP_OKAY.

◆ SCIP_DECL_PRICERINIT()

virtual scip::ObjPricer::SCIP_DECL_PRICERINIT ( scip_init  )
inlinevirtual

initialization method of variable pricer (called after problem was transformed)

See also
SCIP_DECL_PRICERINIT(x) in type_pricer.h

Reimplemented in ObjPricerVRP.

Definition at line 137 of file objpricer.h.

References SCIP_OKAY.

◆ SCIP_DECL_PRICEREXIT()

virtual scip::ObjPricer::SCIP_DECL_PRICEREXIT ( scip_exit  )
inlinevirtual

deinitialization method of variable pricer (called before transformed problem is freed)

See also
SCIP_DECL_PRICEREXIT(x) in type_pricer.h

Definition at line 146 of file objpricer.h.

References SCIP_OKAY.

◆ SCIP_DECL_PRICERINITSOL()

virtual scip::ObjPricer::SCIP_DECL_PRICERINITSOL ( scip_initsol  )
inlinevirtual

solving process initialization method of variable pricer (called when branch and bound process is about to begin)

See also
SCIP_DECL_PRICERINITSOL(x) in type_pricer.h

Definition at line 155 of file objpricer.h.

References SCIP_OKAY.

◆ SCIP_DECL_PRICEREXITSOL()

virtual scip::ObjPricer::SCIP_DECL_PRICEREXITSOL ( scip_exitsol  )
inlinevirtual

solving process deinitialization method of variable pricer (called before branch and bound process data is freed)

See also
SCIP_DECL_PRICEREXITSOL(x) in type_pricer.h

Definition at line 164 of file objpricer.h.

References SCIP_DECL_PRICERREDCOST(), and SCIP_OKAY.

◆ SCIP_DECL_PRICERREDCOST()

virtual scip::ObjPricer::SCIP_DECL_PRICERREDCOST ( scip_redcost  )
pure virtual

reduced cost pricing method of variable pricer for feasible LPs

See also
SCIP_DECL_PRICERREDCOST(x) in type_pricer.h

Implemented in ObjPricerVRP.

Referenced by SCIP_DECL_PRICEREXITSOL().

◆ SCIP_DECL_PRICERFARKAS()

virtual scip::ObjPricer::SCIP_DECL_PRICERFARKAS ( scip_farkas  )
inlinevirtual

farkas pricing method of variable pricer for infeasible LPs

See also
SCIP_DECL_PRICERFARKAS(x) in type_pricer.h

Reimplemented in ObjPricerVRP.

Definition at line 179 of file objpricer.h.

References SCIP_Bool, SCIP_OKAY, SCIPfindObjPricer(), SCIPgetObjPricer(), and SCIPincludeObjPricer().

Field Documentation

◆ scip_

SCIP* scip::ObjPricer::scip_

SCIP data structure

Definition at line 58 of file objpricer.h.

◆ scip_name_

char* scip::ObjPricer::scip_name_

name of the variable pricer

Definition at line 61 of file objpricer.h.

Referenced by SCIPincludeObjPricer().

◆ scip_desc_

char* scip::ObjPricer::scip_desc_

description of the variable pricer

Definition at line 64 of file objpricer.h.

Referenced by SCIPincludeObjPricer().

◆ scip_priority_

const int scip::ObjPricer::scip_priority_

default priority of the variable pricer

Definition at line 67 of file objpricer.h.

Referenced by SCIPincludeObjPricer().

◆ scip_delay_

const SCIP_Bool scip::ObjPricer::scip_delay_

should the pricer be delayed until no other pricers or already existing problem variables with negative reduced costs are found?

Definition at line 72 of file objpricer.h.

Referenced by SCIPincludeObjPricer().