A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://scip.zib.de/doc/html/group__PublicLPDivingMethods.php below:

SCIP Doxygen Documentation: LP Diving

methods to initiate and conduct LP diving

SCIP_RETCODE  SCIPstartDive (SCIP *scip)   SCIP_RETCODE  SCIPendDive (SCIP *scip)   SCIP_RETCODE  SCIPchgCutoffboundDive (SCIP *scip, SCIP_Real newcutoffbound)   SCIP_RETCODE  SCIPchgVarObjDive (SCIP *scip, SCIP_VAR *var, SCIP_Real newobj)   SCIP_RETCODE  SCIPchgVarLbDive (SCIP *scip, SCIP_VAR *var, SCIP_Real newbound)   SCIP_RETCODE  SCIPchgVarUbDive (SCIP *scip, SCIP_VAR *var, SCIP_Real newbound)   SCIP_RETCODE  SCIPaddRowDive (SCIP *scip, SCIP_ROW *row)   SCIP_RETCODE  SCIPchgRowLhsDive (SCIP *scip, SCIP_ROW *row, SCIP_Real newlhs)   SCIP_RETCODE  SCIPchgRowRhsDive (SCIP *scip, SCIP_ROW *row, SCIP_Real newrhs)   SCIP_Real  SCIPgetVarObjDive (SCIP *scip, SCIP_VAR *var)   SCIP_Real  SCIPgetVarLbDive (SCIP *scip, SCIP_VAR *var)   SCIP_Real  SCIPgetVarUbDive (SCIP *scip, SCIP_VAR *var)   SCIP_RETCODE  SCIPsolveDiveLP (SCIP *scip, int itlim, SCIP_Bool *lperror, SCIP_Bool *cutoff)   SCIP_Longint  SCIPgetLastDivenode (SCIP *scip)   SCIP_Bool  SCIPinDive (SCIP *scip)   SCIP_RETCODE  SCIPgetLPDualDegeneracy (SCIP *scip, SCIP_Real *degeneracy, SCIP_Real *varconsratio)   ◆ SCIPstartDive()

initiates LP diving, making methods SCIPchgVarObjDive(), SCIPchgVarLbDive(), and SCIPchgVarUbDive() available

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.

Note
diving is allowed even if the current LP is not flushed, not solved, or not solved to optimality; be aware that solving the (first) diving LP may take longer than expect and that the latter two cases could stem from numerical troubles during the last LP solve; because of this, most users will want to call this method only if SCIPgetLPSolstat(scip) == SCIP_LPSOLSTAT_OPTIMAL
Parameters

Definition at line 2242 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_NODETYPE_FOCUSNODE, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPgetCurrentNode(), SCIPisRelaxSolValid(), SCIPlpDiving(), SCIPlpStartDive(), SCIPnodeGetType(), SCIPtreeHasCurrentNodeLP(), SCIPtreeIsFocusNodeLPConstructed(), SCIPtreeProbing(), SCIPtreeStoreRelaxSol(), and TRUE.

Referenced by createLPWithSoftCuts(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), and solveLp().

◆ SCIPendDive()

quits LP diving and resets bounds and objective values of columns to the current node's values

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

Definition at line 2291 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPlpEndDive(), SCIPlpIsRelax(), SCIPlpIsSolved(), SCIPlpSetCutoffbound(), SCIPnodeUpdateLowerboundLP(), SCIPtreeCutoff(), SCIPtreeIsFocusNodeLPConstructed(), SCIPtreeRestoreRelaxSol(), and TRUE.

Referenced by deleteLPWithSoftCuts(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), and solveLp().

◆ SCIPchgCutoffboundDive() ◆ SCIPchgVarObjDive()

changes variable's objective value in current dive

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
scip SCIP data structure var variable to change the objective value for newobj new objective value

Definition at line 2378 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPlpMarkDivingObjChanged(), SCIPlpSetCutoffbound(), SCIPsetInfinity(), SCIPvarChgObjDive(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), updateObjectiveVector(), and updateVariableRounding().

◆ SCIPchgVarLbDive()

changes variable's lower bound in current dive

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
scip SCIP data structure var variable to change the bound for newbound new value for bound

Definition at line 2419 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPvarChgLbDive(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), and solveLp().

◆ SCIPchgVarUbDive()

changes variable's upper bound in current dive

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
scip SCIP data structure var variable to change the bound for newbound new value for bound

Definition at line 2451 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPvarChgUbDive(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), and solveLp().

◆ SCIPaddRowDive()

adds a row to the LP in current dive

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
scip SCIP data structure row row to be added

Definition at line 2483 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPlpAddRow(), SCIPlpDiving(), SCIPnodeGetDepth(), SCIPtreeGetCurrentNode(), and TRUE.

◆ SCIPchgRowLhsDive()

changes row lhs in current dive, change will be undone after diving ends, for permanent changes use SCIPchgRowLhs()

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
scip SCIP data structure row row to change the lhs for newlhs new value for lhs

Definition at line 2522 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_SIDETYPE_LEFT, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPlpRecordOldRowSideDive(), SCIProwChgLhs(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECLP().

◆ SCIPchgRowRhsDive()

changes row rhs in current dive, change will be undone after diving ends, for permanent changes use SCIPchgRowRhs()

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
scip SCIP data structure row row to change the lhs for newrhs new value for rhs

Definition at line 2555 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_SIDETYPE_RIGHT, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPlpRecordOldRowSideDive(), SCIProwChgRhs(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECLP().

◆ SCIPgetVarObjDive()

gets variable's objective value in current dive

Returns
the variable's objective value in current dive.
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
scip SCIP data structure var variable to get the bound for

Definition at line 2587 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL_ABORT, SCIP_INVALID, SCIPABORT, SCIPcheckStage(), SCIPerrorMessage, SCIPlpDiving(), SCIPvarGetObjLP(), and TRUE.

Referenced by SCIP_DECL_HEUREXEC(), and updateObjectiveVector().

◆ SCIPgetVarLbDive() ◆ SCIPgetVarUbDive() ◆ SCIPsolveDiveLP()

solves the LP of the current dive; no separation or pricing is applied

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.

Note
be aware that the LP solve may take longer than expected if SCIPgetLPSolstat(scip) != SCIP_LPSOLSTAT_OPTIMAL, compare the explanation of SCIPstartDive()
Parameters
scip SCIP data structure itlim maximal number of LP iterations to perform, or -1 for no limit lperror pointer to store whether an unresolved LP error occurred cutoff pointer to store whether the diving LP was infeasible or the objective limit was reached (or NULL, if not needed)

Definition at line 2678 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_Longint, SCIP_LPSOLSTAT_INFEASIBLE, SCIP_LPSOLSTAT_OBJLIMIT, SCIP_LPSOLSTAT_OPTIMAL, SCIP_OKAY, SCIPcheckStage(), SCIPconflictAnalyzeLP(), SCIPerrorMessage, SCIPgetCutoffbound(), SCIPgetLPObjval(), SCIPisGE(), SCIPlpDiving(), SCIPlpDivingObjChanged(), SCIPlpDivingRowsChanged(), SCIPlpGetSolstat(), SCIPlpSolveAndEval(), SCIPprobAllColsInLP(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), solveLagromoryLP(), and solveLp().

◆ SCIPgetLastDivenode() ◆ SCIPinDive()

returns whether we are in diving mode

Returns
whether we are in diving mode.
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

Definition at line 2775 of file scip_lp.c.

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

Referenced by SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_PROPEXEC(), SCIP_DECL_RELAXEXEC(), SCIPtightenVarLb(), SCIPtightenVarUb(), and updateSubproblemLowerbound().

◆ SCIPgetLPDualDegeneracy()

computes two measures for dual degeneracy (dual degeneracy rate and variable-constraint ratio) based on the changes applied when reducing the problem to the optimal face

returns the dual degeneracy rate, i.e., the share of nonbasic variables with reduced cost 0 and the variable-constraint ratio, i.e., the number of unfixed variables in relation to the basis size

Parameters
scip SCIP data structure degeneracy pointer to store the dual degeneracy rate varconsratio pointer to store the variable-constraint ratio

Definition at line 2792 of file scip_lp.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPlpGetDualDegeneracy(), and TRUE.

Referenced by checkExec(), execRelpscost(), and SCIP_DECL_SEPAEXECLP().


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4