Scippy

UG

Ubiquity Generator framework

ScipParaDiffSubproblemMpi Class Reference

#include <scipParaDiffSubproblemMpi.h>

+ Inheritance diagram for ScipParaDiffSubproblemMpi:

Public Member Functions

 ScipParaDiffSubproblemMpi ()
 
 ScipParaDiffSubproblemMpi (SCIP *inScip, ScipParaSolver *inScipParaSolver, int inNNewBranchVars, SCIP_VAR **inNewBranchVars, SCIP_Real *inNewBranchBounds, SCIP_BOUNDTYPE *inNewBoundTypes, int nAddedConss, SCIP_CONS **addedConss)
 
 ScipParaDiffSubproblemMpi (ScipParaDiffSubproblem *paraDiffSubproblem)
 
 ~ScipParaDiffSubproblemMpi ()
 
ScipParaDiffSubproblemMpiclone (UG::ParaComm *comm)
 
int bcast (UG::ParaComm *comm, int root)
 
int send (UG::ParaComm *comm, int dest)
 
int receive (UG::ParaComm *comm, int source)
 
- Public Member Functions inherited from ScipParaDiffSubproblem
 ScipParaDiffSubproblem ()
 
 ScipParaDiffSubproblem (SCIP *scip, ScipParaSolver *scipParaSolver, int nNewBranchVars, SCIP_VAR **newBranchVars, SCIP_Real *newBranchBounds, SCIP_BOUNDTYPE *newBoundTypes, int nAddedConss, SCIP_CONS **addedConss)
 
 ScipParaDiffSubproblem (ScipParaDiffSubproblem *diffSubproblem)
 
virtual ~ScipParaDiffSubproblem ()
 
int getNBoundChanges ()
 
int getIndex (int i)
 
SCIP_Real getBranchBound (int i)
 
SCIP_BOUNDTYPE getBoundType (int i)
 
ScipParaDiffSubproblemBranchLinearConsgetBranchLinearConss ()
 
ScipParaDiffSubproblemBranchSetppcConsgetBranchSetppcConss ()
 
int getNBranchConsLinearConss ()
 
SCIP_Real getBranchConsLinearLhs (int i)
 
SCIP_Real getBranchConsLinearRhs (int i)
 
int getBranchConsNLinearCoefs (int i)
 
SCIP_Real getBranchConsLinearCoefs (int i, int j)
 
int getBranchConsLinearIdxCoefsVars (int i, int j)
 
int getBranchConsLinearConsNames ()
 
char * getBranchConsLinearConsNames (int i)
 
int getNBranchConsSetppcConss ()
 
int getBranchConsSetppcNVars (int i)
 
int getBranchConsSetppcType (int i)
 
int getBranchConsSetppcVars (int i, int j)
 
int getBranchConsSetppcConsNames ()
 
char * getBranchConsSetppcConsNames (int i)
 
int getNLinearConss ()
 
SCIP_Real getLinearLhs (int i)
 
SCIP_Real getLinearRhs (int i)
 
int getNLinearCoefs (int i)
 
SCIP_Real getLinearCoefs (int i, int j)
 
int getIdxLinearCoefsVars (int i, int j)
 
int getNBendersLinearConss ()
 
SCIP_Real getBendersLinearLhs (int i)
 
SCIP_Real getBendersLinearRhs (int i)
 
int getNBendersLinearCoefs (int i)
 
SCIP_Real getBendersLinearCoefs (int i, int j)
 
int getIdxBendersLinearCoefsVars (int i, int j)
 
int getNBoundDisjunctions ()
 
int getNTotalVarsBoundDisjunctions ()
 
int getNVarsBoundDisjunction (int i)
 
SCIP_Bool getFlagBoundDisjunctionInitial (int i)
 
SCIP_Bool getFlagBoundDisjunctionSeparate (int i)
 
SCIP_Bool getFlagBoundDisjunctionEnforce (int i)
 
SCIP_Bool getFlagBoundDisjunctionCheck (int i)
 
SCIP_Bool getFlagBoundDisjunctionPropagate (int i)
 
SCIP_Bool getFlagBoundDisjunctionLocal (int i)
 
SCIP_Bool getFlagBoundDisjunctionModifiable (int i)
 
SCIP_Bool getFlagBoundDisjunctionDynamic (int i)
 
SCIP_Bool getFlagBoundDisjunctionRemovable (int i)
 
SCIP_Bool getFlagBoundDisjunctionStickingatnode (int i)
 
int getIdxBoundDisjunctionVars (int i, int j)
 
SCIP_BOUNDTYPE getBoundTypesBoundDisjunction (int i, int j)
 
SCIP_Real getBoundsBoundDisjunction (int i, int j)
 
int getNVarBranchStats ()
 
int getIdxLBranchStatsVars (int i)
 
SCIP_Real getDownpscost (int i)
 
SCIP_Real getUppscost (int i)
 
SCIP_Real getDownvsids (int i)
 
SCIP_Real getUpvsids (int i)
 
SCIP_Real getDownconflen (int i)
 
SCIP_Real getUpconflen (int i)
 
SCIP_Real getDowninfer (int i)
 
SCIP_Real getUpinfer (int i)
 
SCIP_Real getDowncutoff (int i)
 
SCIP_Real getUpcutoff (int i)
 
int getNVarValueVars ()
 
int getNVarValues ()
 
int getIdxVarValueVars (int i)
 
int getNVarValueValues (int i)
 
SCIP_Real getVarValue (int i, int j)
 
SCIP_Real getVarValueDownvsids (int i, int j)
 
SCIP_Real getVarVlaueUpvsids (int i, int j)
 
SCIP_Real getVarValueDownconflen (int i, int j)
 
SCIP_Real getVarValueUpconflen (int i, int j)
 
SCIP_Real getVarValueDowninfer (int i, int j)
 
SCIP_Real getVarValueUpinfer (int i, int j)
 
SCIP_Real getVarValueDowncutoff (int i, int j)
 
SCIP_Real getVarValueUpcutoff (int i, int j)
 
void addBranchLinearConss (SCIP *scip, ScipParaSolver *scipParaSolver, int nLenarConss, int nAddedConss, SCIP_CONS **addedConss)
 
void addBranchSetppcConss (SCIP *scip, ScipParaSolver *scipParaSolver, int nSetpartConss, int nAddedConss, SCIP_CONS **addedConss)
 
void addLocalNodeInfo (SCIP *scip, ScipParaSolver *scipParaSolver)
 
void addBoundDisjunctions (SCIP *scip, ScipParaSolver *scipParaSolver)
 
void addBranchVarStats (SCIP *scip, ScipParaSolver *scipParaSolver)
 
void addVarValueStats (SCIP *scip, ScipParaSolver *scipParaSolver)
 
void addInitialBranchVarStats (int minDepth, int maxDepth, SCIP *scip)
 
int getOffset ()
 
int getFixedVariables (UG::ParaInstance *instance, UG::BbParaFixedVariable **fixedVars)
 
BbParaDiffSubproblemcreateDiffSubproblem (UG::ParaComm *comm, UG::ParaInitiator *initiator, int n, UG::BbParaFixedVariable *fixedVars)
 
const std::string toString ()
 
const std::string toStringStat ()
 
- Public Member Functions inherited from BbParaDiffSubproblem
 BbParaDiffSubproblem ()
 DO NOT HAVE DATA MEMBER!! More...
 
virtual ~BbParaDiffSubproblem ()
 destractor¥ More...
 
virtual void setWinnerParams (BbParaRacingRampUpParamSet *winerParams)
 set winner racing parameters at warm start racing More...
 
virtual BbParaRacingRampUpParamSetgetWinnerParams ()
 get winner racing parameters at warm start racing More...
 
- Public Member Functions inherited from ParaDiffSubproblem
 ParaDiffSubproblem ()
 DO NOT HAVE DATA MEMBER!! More...
 
virtual ~ParaDiffSubproblem ()
 destractor¥ More...
 

Private Member Functions

MPI_Datatype createDatatypeCounters ()
 
MPI_Datatype createDatatypeBoundChnages (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBranchLinearConss1 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBranchLinearConss2 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBranchSetppcConss1 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBranchSetppcConss2 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeLinearConss1 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeLinearConss2 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBendersLinearConss1 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBendersLinearConss2 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBoundDisjunctions1 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeBoundDisjunctions2 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeVarBranchStats (bool memAllocNecessary)
 
MPI_Datatype createDatatypeVarValueVars1 (bool memAllocNecessary)
 
MPI_Datatype createDatatypeVarValueVars2 (bool memAllocNecessary)
 

Private Attributes

int nBranchLinearConss
 
int nBranchSetppcConss
 
int nLinearConss
 
int nBendersLinearConss
 
int nBoundDisjunctions
 
int nVarBranchStats
 
int nVarValueVars
 

Additional Inherited Members

- Protected Attributes inherited from ScipParaDiffSubproblem
int localInfoIncluded
 
int nBoundChanges
 
int * indicesAmongSolvers
 
SCIP_Real * branchBounds
 
SCIP_BOUNDTYPE * boundTypes
 
ScipParaDiffSubproblemBranchLinearConsbranchLinearConss
 
ScipParaDiffSubproblemBranchSetppcConsbranchSetppcConss
 
ScipParaDiffSubproblemLinearConslinearConss
 
ScipParaDiffSubproblemLinearConsbendersLinearConss
 
ScipParaDiffSubproblemBoundDisjunctionsboundDisjunctions
 
ScipParaDiffSubproblemVarBranchStatsvarBranchStats
 
ScipParaDiffSubproblemVarValuesvarValues
 

Detailed Description

The difference between instance and subproblem: this is base class

Definition at line 48 of file scipParaDiffSubproblemMpi.h.

Constructor & Destructor Documentation

◆ ScipParaDiffSubproblemMpi() [1/3]

◆ ScipParaDiffSubproblemMpi() [2/3]

ScipParaDiffSubproblemMpi ( SCIP *  inScip,
ScipParaSolver inScipParaSolver,
int  inNNewBranchVars,
SCIP_VAR **  inNewBranchVars,
SCIP_Real *  inNewBranchBounds,
SCIP_BOUNDTYPE *  inNewBoundTypes,
int  nAddedConss,
SCIP_CONS **  addedConss 
)

Constructor

Definition at line 100 of file scipParaDiffSubproblemMpi.h.

◆ ScipParaDiffSubproblemMpi() [3/3]

Constructor

Definition at line 115 of file scipParaDiffSubproblemMpi.h.

◆ ~ScipParaDiffSubproblemMpi()

Member Function Documentation

◆ bcast()

int bcast ( UG::ParaComm comm,
int  root 
)
virtual

◆ clone()

ScipParaDiffSubproblemMpi * clone ( UG::ParaComm comm)
virtual

create clone of this object

Implements ParaDiffSubproblem.

Definition at line 2191 of file scipParaDiffSubproblemMpi.cpp.

Referenced by ScipParaDiffSubproblemMpi::~ScipParaDiffSubproblemMpi().

◆ createDatatypeBendersLinearConss1()

MPI_Datatype createDatatypeBendersLinearConss1 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBendersLinearConss1

create ScipDiffSubproblemDatatype

Definition at line 634 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBendersLinearConss2()

MPI_Datatype createDatatypeBendersLinearConss2 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBendersLinearConss2

create ScipDiffSubproblemDatatype

Definition at line 692 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBoundChnages()

MPI_Datatype createDatatypeBoundChnages ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBoundChnages

create ScipDiffSubproblemDatatype

Definition at line 165 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBoundDisjunctions1()

MPI_Datatype createDatatypeBoundDisjunctions1 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBoundDisjunctions1

create ScipDiffSubproblemDatatype

Definition at line 767 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBoundDisjunctions2()

MPI_Datatype createDatatypeBoundDisjunctions2 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBoundDisjunctions2

create ScipDiffSubproblemDatatype

Definition at line 907 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBranchLinearConss1()

MPI_Datatype createDatatypeBranchLinearConss1 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBranchLinearConss1

create ScipDiffSubproblemDatatype

Definition at line 223 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBranchLinearConss2()

MPI_Datatype createDatatypeBranchLinearConss2 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBranchLinearConss2

create ScipDiffSubproblemDatatype

Definition at line 289 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBranchSetppcConss1()

MPI_Datatype createDatatypeBranchSetppcConss1 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBranchSetppcConss1

create ScipDiffSubproblemDatatype

Definition at line 371 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeBranchSetppcConss2()

MPI_Datatype createDatatypeBranchSetppcConss2 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeBranchSetppcConss2

create ScipDiffSubproblemDatatype

Definition at line 428 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeCounters()

MPI_Datatype createDatatypeCounters ( )
private

create scipDiffSubproblem datatypeCounters

create ScipDiffSubproblemDatatype1

Definition at line 50 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeLinearConss1()

MPI_Datatype createDatatypeLinearConss1 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeLinearConss1

create ScipDiffSubproblemDatatype

Definition at line 501 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeLinearConss2()

MPI_Datatype createDatatypeLinearConss2 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeLinearConss2

create ScipDiffSubproblemDatatype

Definition at line 559 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeVarBranchStats()

MPI_Datatype createDatatypeVarBranchStats ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeVarBranchStats

create ScipDiffSubproblemDatatype

Definition at line 997 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeVarValueVars1()

MPI_Datatype createDatatypeVarValueVars1 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeVarValueVars1

create ScipDiffSubproblemDatatype

Definition at line 1138 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ createDatatypeVarValueVars2()

MPI_Datatype createDatatypeVarValueVars2 ( bool  memAllocNecessary)
private

create scipDiffSubproblem datatypeVarValueVars2

create ScipDiffSubproblemDatatype

Definition at line 1198 of file scipParaDiffSubproblemMpi.cpp.

References MPI_CALL.

◆ receive()

int receive ( UG::ParaComm comm,
int  source 
)
virtual

◆ send()

int send ( UG::ParaComm comm,
int  dest 
)
virtual

Member Data Documentation

◆ nBendersLinearConss

int nBendersLinearConss
private

Definition at line 87 of file scipParaDiffSubproblemMpi.h.

◆ nBoundDisjunctions

int nBoundDisjunctions
private

Definition at line 88 of file scipParaDiffSubproblemMpi.h.

◆ nBranchLinearConss

int nBranchLinearConss
private

Definition at line 83 of file scipParaDiffSubproblemMpi.h.

◆ nBranchSetppcConss

int nBranchSetppcConss
private

Definition at line 84 of file scipParaDiffSubproblemMpi.h.

◆ nLinearConss

int nLinearConss
private

Definition at line 86 of file scipParaDiffSubproblemMpi.h.

◆ nVarBranchStats

int nVarBranchStats
private

Definition at line 89 of file scipParaDiffSubproblemMpi.h.

◆ nVarValueVars

int nVarValueVars
private

Definition at line 90 of file scipParaDiffSubproblemMpi.h.