Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

public methods for LP columns

Functions

void SCIPcolSort (SCIP_COL *col)
 
SCIP_Real SCIPcolGetObj (SCIP_COL *col)
 
SCIP_Real SCIPcolGetLb (SCIP_COL *col)
 
SCIP_Real SCIPcolGetUb (SCIP_COL *col)
 
SCIP_Real SCIPcolGetBestBound (SCIP_COL *col)
 
SCIP_Real SCIPcolGetPrimsol (SCIP_COL *col)
 
SCIP_Real SCIPcolGetMinPrimsol (SCIP_COL *col)
 
SCIP_Real SCIPcolGetMaxPrimsol (SCIP_COL *col)
 
SCIP_BASESTAT SCIPcolGetBasisStatus (SCIP_COL *col)
 
SCIP_VARSCIPcolGetVar (SCIP_COL *col)
 
int SCIPcolGetIndex (SCIP_COL *col)
 
SCIP_Bool SCIPcolIsIntegral (SCIP_COL *col)
 
SCIP_Bool SCIPcolIsRemovable (SCIP_COL *col)
 
int SCIPcolGetLPPos (SCIP_COL *col)
 
int SCIPcolGetLPDepth (SCIP_COL *col)
 
SCIP_Bool SCIPcolIsInLP (SCIP_COL *col)
 
int SCIPcolGetNNonz (SCIP_COL *col)
 
int SCIPcolGetNLPNonz (SCIP_COL *col)
 
SCIP_ROW ** SCIPcolGetRows (SCIP_COL *col)
 
SCIP_RealSCIPcolGetVals (SCIP_COL *col)
 
SCIP_Longint SCIPcolGetStrongbranchNode (SCIP_COL *col)
 
int SCIPcolGetNStrongbranchs (SCIP_COL *col)
 
SCIP_BOUNDTYPE SCIPboundtypeOpposite (SCIP_BOUNDTYPE boundtype)
 
SCIP_Real SCIPgetColRedcost (SCIP *scip, SCIP_COL *col)
 
SCIP_Real SCIPgetColFarkasCoef (SCIP *scip, SCIP_COL *col)
 
void SCIPmarkColNotRemovableLocal (SCIP *scip, SCIP_COL *col)
 

Function Documentation

◆ SCIPcolSort()

void SCIPcolSort ( SCIP_COL col)

sorts column entries such that LP rows precede non-LP rows and inside both parts lower row indices precede higher ones

Parameters
colcolumn to be sorted

Definition at line 3294 of file lp.c.

References colSortLP(), and colSortNonLP().

Referenced by SCIP_DECL_HEUREXEC().

◆ SCIPcolGetObj()

SCIP_Real SCIPcolGetObj ( SCIP_COL col)

gets objective value of column

Parameters
colLP column

Definition at line 15992 of file lp.c.

References NULL, and SCIP_Col::obj.

Referenced by computeCut(), createSubscip(), SCIPvarGetObjLP(), and transformColumn().

◆ SCIPcolGetLb()

SCIP_Real SCIPcolGetLb ( SCIP_COL col)

gets lower bound of column

Parameters
colLP column

Definition at line 16002 of file lp.c.

References SCIP_Col::lb, and NULL.

Referenced by computeCut(), createSubscip(), findClosestLb(), generateDisjCutSOS1(), getGMIFromRow(), modifyAndPackCut(), propagateRedcostVar(), provedBound(), SCIP_DECL_SEPAEXECLP(), and SCIPvarGetLbLP().

◆ SCIPcolGetUb()

SCIP_Real SCIPcolGetUb ( SCIP_COL col)

gets upper bound of column

Parameters
colLP column

Definition at line 16012 of file lp.c.

References NULL, and SCIP_Col::ub.

Referenced by computeCut(), createSubscip(), findClosestUb(), generateDisjCutSOS1(), getGMIFromRow(), modifyAndPackCut(), propagateRedcostVar(), provedBound(), SCIP_DECL_SEPAEXECLP(), and SCIPvarGetUbLP().

◆ SCIPcolGetBestBound()

SCIP_Real SCIPcolGetBestBound ( SCIP_COL col)

gets best bound of column with respect to the objective function

Parameters
colLP column

Definition at line 16022 of file lp.c.

References SCIP_Col::lb, NULL, SCIP_Col::obj, and SCIP_Col::ub.

Referenced by lpCleanupCols(), lpRemoveObsoleteCols(), and SCIProwRecalcPseudoActivity().

◆ SCIPcolGetPrimsol()

◆ SCIPcolGetMinPrimsol()

SCIP_Real SCIPcolGetMinPrimsol ( SCIP_COL col)

gets the minimal LP solution value, this column ever assumed

Parameters
colLP column

Definition at line 16048 of file lp.c.

References SCIP_Col::minprimsol, and NULL.

Referenced by propagateRedcostVar().

◆ SCIPcolGetMaxPrimsol()

SCIP_Real SCIPcolGetMaxPrimsol ( SCIP_COL col)

gets the maximal LP solution value, this column ever assumed

Parameters
colLP column

Definition at line 16058 of file lp.c.

References SCIP_Col::maxprimsol, and NULL.

Referenced by propagateRedcostVar().

◆ SCIPcolGetBasisStatus()

SCIP_BASESTAT SCIPcolGetBasisStatus ( SCIP_COL col)

gets the basis status of a column in the LP solution; only valid for LPs with status SCIP_LPSOLSTAT_OPTIMAL and with SCIPisLPSolBasic(scip) == TRUE; returns SCIP_BASESTAT_ZERO for columns not in the current SCIP_LP

Parameters
colLP column

Definition at line 16070 of file lp.c.

References SCIP_Col::basisstatus, SCIP_Col::lppos, NULL, and SCIP_BASESTAT_ZERO.

Referenced by cutsTransformMIRRow(), filterExistingLP(), generateDisjCutSOS1(), getGMIFromRow(), getImplVarRedcost(), getSimplexCoefficients(), propagateRedcostBinvar(), propagateRedcostVar(), propagateRootRedcostBinvar(), SCIP_DECL_SEPAEXECLP(), SCIPprobUpdateBestRootSol(), and SCIPvarGetImplRedcost().

◆ SCIPcolGetVar()

◆ SCIPcolGetIndex()

int SCIPcolGetIndex ( SCIP_COL col)

gets unique index of col

Parameters
colLP col

Definition at line 16091 of file lp.c.

References SCIP_Col::index, and NULL.

◆ SCIPcolIsIntegral()

SCIP_Bool SCIPcolIsIntegral ( SCIP_COL col)

◆ SCIPcolIsRemovable()

SCIP_Bool SCIPcolIsRemovable ( SCIP_COL col)

returns TRUE iff column is removable from the LP (due to aging or cleanup)

Parameters
colLP column

Definition at line 16112 of file lp.c.

References NULL, and SCIP_Col::removable.

◆ SCIPcolGetLPPos()

◆ SCIPcolGetLPDepth()

int SCIPcolGetLPDepth ( SCIP_COL col)

gets depth in the tree where the column entered the LP, or -1 if it is not in LP

Parameters
colLP column

Definition at line 16133 of file lp.c.

References SCIP_Col::lpdepth, SCIP_Col::lppos, and NULL.

◆ SCIPcolIsInLP()

◆ SCIPcolGetNNonz()

int SCIPcolGetNNonz ( SCIP_COL col)

get number of nonzero entries in column vector

Parameters
colLP column

Definition at line 16155 of file lp.c.

References SCIP_Col::len, and NULL.

Referenced by calcBdchgScore(), calcBranchScore(), checkConstraintMatching(), determineBound(), SCIPpricestoreAddProbVars(), SCIPsolAdjustImplicitSolVals(), shiftValues(), varColCompare(), and varProcessBoundChanges().

◆ SCIPcolGetNLPNonz()

int SCIPcolGetNLPNonz ( SCIP_COL col)

get number of nonzero entries in column vector, that correspond to rows currently in the SCIP_LP;

Warning
This method is only applicable on columns, that are completely linked to their rows (e.g. a column that is in the current LP and the LP was solved, or a column that was in a solved LP and didn't change afterwards
Parameters
colLP column

Definition at line 16169 of file lp.c.

References SCIP_Col::nlprows, NULL, and SCIP_Col::nunlinked.

Referenced by addFracCounter(), aggregation(), calcShiftVal(), calculateBounds(), createSubscip(), extractNodes(), getIncidentNodes(), getNActiveConsScore(), getNextFlowrow(), initMatrix(), relaxVar(), rowFindSlackVar(), SCIP_DECL_HEUREXEC(), transformColumn(), tryFixVar(), updateActivities(), updateRowActivities(), and updateSlacks().

◆ SCIPcolGetRows()

◆ SCIPcolGetVals()

◆ SCIPcolGetStrongbranchNode()

SCIP_Longint SCIPcolGetStrongbranchNode ( SCIP_COL col)

gets node number of the last node in current branch and bound run, where strong branching was used on the given column, or -1 if strong branching was never applied to the column in current run

Parameters
colLP column

Definition at line 16202 of file lp.c.

References NULL, and SCIP_Col::sbnode.

Referenced by SCIPgetVarStrongbranchNode().

◆ SCIPcolGetNStrongbranchs()

int SCIPcolGetNStrongbranchs ( SCIP_COL col)

gets number of times, strong branching was applied in current run on the given column

Parameters
colLP column

Definition at line 16212 of file lp.c.

References SCIP_Col::nsbcalls, and NULL.

Referenced by SCIPgetVarNStrongbranchs().

◆ SCIPboundtypeOpposite()

SCIP_BOUNDTYPE SCIPboundtypeOpposite ( SCIP_BOUNDTYPE  boundtype)

gets opposite bound type of given bound type

Parameters
boundtypetype of bound (lower or upper)

Definition at line 16222 of file lp.c.

References SCIP_BOUNDTYPE_LOWER, and SCIP_BOUNDTYPE_UPPER.

Referenced by analyzeConflict(), conflictAddConflictCons(), conflictCreateReconvergenceConss(), convertToActiveVar(), detectImpliedBounds(), SCIP_DECL_CONFLICTEXEC(), SCIP_DECL_CONSRESPROP(), SCIP_DECL_EVENTEXEC(), and SCIPconflictAddBound().

◆ SCIPgetColRedcost()

SCIP_Real SCIPgetColRedcost ( SCIP scip,
SCIP_COL col 
)

returns the reduced costs of a column in the last (feasible) LP

Returns
the reduced costs of a column in the last (feasible) LP
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Note
calling this method in SCIP_STAGE_SOLVED is only recommended to experienced users and should only be called for pure LP instances (without presolving)
Parameters
scipSCIP data structure
colLP column

Definition at line 29820 of file scip.c.

References checkStage(), FALSE, Scip::lp, SCIP_CALL_ABORT, SCIPABORT, SCIPcolGetRedcost(), SCIPerrorMessage, SCIPtreeHasCurrentNodeLP(), Scip::stat, Scip::tree, and TRUE.

Referenced by fixVariables(), propagateRedcostBinvar(), propagateRedcostVar(), and SCIPgetVarRedcost().

◆ SCIPgetColFarkasCoef()

SCIP_Real SCIPgetColFarkasCoef ( SCIP scip,
SCIP_COL col 
)

returns the Farkas coefficient of a column in the last (infeasible) LP

Returns
the Farkas coefficient of a column in the last (infeasible) LP
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
colLP column

Definition at line 29845 of file scip.c.

References checkStage(), FALSE, Scip::lp, SCIP_CALL_ABORT, SCIPABORT, SCIPcolGetFarkasCoef(), SCIPerrorMessage, SCIPtreeHasCurrentNodeLP(), Scip::stat, Scip::tree, and TRUE.

Referenced by SCIPgetVarFarkasCoef().

◆ SCIPmarkColNotRemovableLocal()

void SCIPmarkColNotRemovableLocal ( SCIP scip,
SCIP_COL col 
)

marks a column to be not removable from the LP in the current node

Precondition
this method can be called in the following stage of the SCIP solving process:
Parameters
scipSCIP data structure
colLP column

Definition at line 29867 of file scip.c.

References checkStage(), FALSE, SCIP_CALL_ABORT, SCIPcolMarkNotRemovableLocal(), Scip::stat, and TRUE.