Scippy

    SCIP

    Solving Constraint Integer Programs

    Detailed Description

    general methods for numerically exact solving

    Functions

    SCIP_RETCODE SCIPenableExactSolving (SCIP *scip, SCIP_Bool enable)
     
    SCIP_Bool SCIPisExact (SCIP *scip)
     
    SCIP_Bool SCIPallowNegSlack (SCIP *scip)
     
    SCIP_RETCODE SCIPbranchLPExact (SCIP *scip, SCIP_RESULT *result)
     
    SCIP_RETCODE SCIPaddRowExact (SCIP *scip, SCIP_ROWEXACT *rowexact)
     

    Function Documentation

    ◆ SCIPenableExactSolving()

    SCIP_RETCODE SCIPenableExactSolving ( SCIP scip,
    SCIP_Bool  enable 
    )

    enables or disables exact solving mode

    Returns
    SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
    Precondition
    This method can be called if scip is in one of the following stages:
    Parameters
    scipSCIP data structure
    enableenable exact solving (TRUE) or disable it (FALSE)

    Definition at line 151 of file scip_exact.c.

    References NULL, SCIP_ERROR, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_STAGE_PROBLEM, SCIPerrorMessage, and SCIPgetStage().

    Referenced by applyRepair(), createSubscip(), createSubSCIP(), doCopy(), SCIPcopyLargeNeighborhoodSearch(), and setupSubscipLpface().

    ◆ SCIPisExact()

    SCIP_Bool SCIPisExact ( SCIP scip)

    returns whether the solution process is arithmetically exact, i.e., not subject to roundoff errors

    Returns
    Returns TRUE if SCIP is in exact solving mode, otherwise FALSE

    returns whether the solution process should be probably correct

    Returns
    Returns TRUE if SCIP is in exact solving mode, otherwise FALSE
    Parameters
    scipSCIP data structure

    Definition at line 193 of file scip_exact.c.

    References NULL.

    Referenced by addCut(), addOneRowSafely(), analyzeStrongbranch(), applyRepair(), branch(), branchOnVar(), calcActivityBounds(), calcMIRSafely(), checkSolOrig(), checkSolOrigExact(), chgCoeffWithBoundSafely(), copyVars(), createVariable(), cutsRoundMIRSafely(), cutsSubstituteMIR(), cutsSubstituteMIRSafely(), cutsTransformMIRSafely(), cutTightenCoefs(), cutTightenCoefsSafely(), determineTotalNumberLinearConss(), execRelpscost(), freeSolve(), fromCommandLine(), getFixedVariable(), getObjectiveRow(), getVariable(), initializeCandsLists(), initSolve(), performBoundSubstitution(), performBoundSubstitutionSafely(), performBoundSubstitutionSimple(), performBoundSubstitutionSimpleSafely(), postprocessCutSafely(), presolve(), presolveRound(), readBinaries(), readBounds(), readColsExact(), readConstraints(), readIndicators(), readMpsExact(), readObjective(), readOPBFile(), readQCMatrix(), readQMatrix(), readSol(), readSolFile(), readSOS(), readXmlSolFile(), removeExactConflictFromCertificateHashmap(), removeZerosSafely(), runVanillaStrongBranching(), scaleValSafely(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSCHECK(), SCIP_DECL_CONSDEACTIVE(), SCIP_DECL_CONSDELETE(), SCIP_DECL_CONSDELVARS(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSENFOPS(), SCIP_DECL_CONSENFORELAX(), SCIP_DECL_CONSEXIT(), SCIP_DECL_CONSEXITPRE(), SCIP_DECL_CONSEXITSOL(), SCIP_DECL_CONSINIT(), SCIP_DECL_CONSINITLP(), SCIP_DECL_CONSLOCK(), SCIP_DECL_CONSPROP(), SCIP_DECL_CONSSEPALP(), SCIP_DECL_CONSSEPASOL(), SCIP_DECL_CONSTRANS(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PROPEXEC(), SCIP_DECL_READERREAD(), SCIP_DECL_READERWRITE(), SCIP_DECL_SEPAEXECLP(), SCIPaddCons(), SCIPaddConsNode(), SCIPaddOrigObjoffset(), SCIPaddVar(), SCIPaggrRowAddRowSafely(), SCIPaggrRowRemoveZeros(), SCIPaggrRowSumRows(), SCIPallowNegSlack(), SCIPcalcMIR(), SCIPcertificateFreeRowInfo(), SCIPcertifyMirCut(), SCIPcheckSol(), SCIPcheckSolOrig(), SCIPcollectSolutionStatistics(), SCIPcopyConsExactLinear(), SCIPendDive(), SCIPfixVarExact(), SCIPfreeCertificateActiveAggrInfo(), SCIPfreeCertificateActiveMirInfo(), SCIPgetOrigObjoffsetExact(), SCIPincludeBranchruleRelpscost(), SCIPmatrixCreate(), SCIPmatrixFree(), SCIPprintSol(), SCIPprintSolutionStatistics(), SCIPprocessShellArguments(), SCIPpropagateProbing(), SCIPreadMps(), SCIPselectVarPseudoStrongBranching(), SCIPselectVarStrongBranching(), SCIPsolve(), SCIPsolveCIP(), SCIPsolveConcurrent(), SCIPstoreCertificateActiveAggrInfo(), SCIPstoreCertificateActiveMirInfo(), SCIPtightenVarLbExact(), SCIPtightenVarLbGlobal(), SCIPtightenVarUbExact(), SCIPtightenVarUbGlobal(), SCIPtransformProb(), SCIPvalidateSolveExact(), SCIPwriteLp(), SCIPwriteMps(), selectVarMultAggrBranching(), setColumnMajorFormat(), setObjective(), setupAndSolveSubscip(), setupProbingSCIP(), setupSCIPparamsStage3(), setupSubscipLpface(), solveLp(), varVecAddScaledRowCoefsSafely(), writeOpbConstraints(), and writeOpbObjective().

    ◆ SCIPallowNegSlack()

    SCIP_Bool SCIPallowNegSlack ( SCIP scip)

    returns whether aggregation is allowed to use negative slack in exact solving mode

    Returns
    Returns TRUE if SCIP is not in exact solving mode or aggregation is allowed to use negative slack
    Precondition
    This method can be called if scip is in one of the following stages:

    See SCIP_STAGE for a complete list of all possible solving stages.

    Parameters
    scipSCIP data structure

    Definition at line 212 of file scip_exact.c.

    References FALSE, NULL, SCIP_CALL_ABORT, SCIPcheckStage, SCIPisExact(), and TRUE.

    Referenced by SCIP_DECL_SEPAEXECLP().

    ◆ SCIPbranchLPExact()

    SCIP_RETCODE SCIPbranchLPExact ( SCIP scip,
    SCIP_RESULT result 
    )

    branches on an LP solution exactly; does not call branching rules, since fractionalities are assumed to small; if no fractional variables exist, the result is SCIP_DIDNOTRUN;

    Returns
    SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
    Precondition
    This method can be called if scip is in one of the following stages:

    See SCIP_STAGE for a complete list of all possible solving stages.

    Parameters
    scipSCIP data structure
    resultpointer to store the result of the branching (s. branch.h)

    Definition at line 235 of file scip_exact.c.

    References FALSE, SCIP_CALL, SCIP_OKAY, SCIPbranchExecLPExact(), SCIPcheckStage, and TRUE.

    Referenced by SCIP_DECL_CONSENFOLP().

    ◆ SCIPaddRowExact()

    SCIP_RETCODE SCIPaddRowExact ( SCIP scip,
    SCIP_ROWEXACT rowexact 
    )

    adds row to exact separation storage

    Returns
    SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
    Precondition
    This method can be called if scip is in one of the following stages:
    Parameters
    scipSCIP data structure
    rowexactexact row to add

    Definition at line 257 of file scip_exact.c.

    References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage, SCIPsepastoreExactAddCut(), and TRUE.

    Referenced by addRelaxation(), and SCIPsepastoreApplyCuts().