Detailed Description
internal methods for conflict analysis
Definition in file conflict.h.
#include "blockmemshell/memory.h"
#include "scip/def.h"
#include "scip/type_branch.h"
#include "scip/type_conflict.h"
#include "scip/type_conflictstore.h"
#include "scip/type_event.h"
#include "scip/type_implics.h"
#include "scip/type_lp.h"
#include "scip/type_message.h"
#include "scip/type_prob.h"
#include "scip/type_reopt.h"
#include "scip/type_result.h"
#include "scip/type_retcode.h"
#include "scip/type_scip.h"
#include "scip/type_set.h"
#include "scip/type_stat.h"
#include "scip/type_tree.h"
#include "scip/type_var.h"
Go to the source code of this file.
Function Documentation
◆ SCIPconflicthdlrCopyInclude()
SCIP_RETCODE SCIPconflicthdlrCopyInclude | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set | ||
) |
copies the given conflict handler to a new scip
- Parameters
-
conflicthdlr conflict handler set SCIP_SET of SCIP to copy to
Definition at line 389 of file conflict.c.
References NULL, SCIP_CALL, SCIP_OKAY, SCIPconflicthdlrGetName(), and SCIPsetDebugMsg.
Referenced by SCIPsetCopyPlugins().
◆ SCIPconflicthdlrCreate()
SCIP_RETCODE SCIPconflicthdlrCreate | ( | SCIP_CONFLICTHDLR ** | conflicthdlr, |
SCIP_SET * | set, | ||
SCIP_MESSAGEHDLR * | messagehdlr, | ||
BMS_BLKMEM * | blkmem, | ||
const char * | name, | ||
const char * | desc, | ||
int | priority, | ||
SCIP_DECL_CONFLICTCOPY((*conflictcopy)) | , | ||
SCIP_DECL_CONFLICTFREE((*conflictfree)) | , | ||
SCIP_DECL_CONFLICTINIT((*conflictinit)) | , | ||
SCIP_DECL_CONFLICTEXIT((*conflictexit)) | , | ||
SCIP_DECL_CONFLICTINITSOL((*conflictinitsol)) | , | ||
SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol)) | , | ||
SCIP_DECL_CONFLICTEXEC((*conflictexec)) | , | ||
SCIP_CONFLICTHDLRDATA * | conflicthdlrdata | ||
) |
creates a conflict handler
- Parameters
-
conflicthdlr pointer to conflict handler data structure set global SCIP settings messagehdlr message handler blkmem block memory for parameter settings name name of conflict handler desc description of conflict handler priority priority of the conflict handler conflicthdlrdata conflict handler data
Definition at line 463 of file conflict.c.
References doConflicthdlrCreate(), NULL, SCIP_CALL_FINALLY, SCIP_OKAY, and SCIPconflicthdlrFree().
Referenced by SCIPincludeConflicthdlr(), and SCIPincludeConflicthdlrBasic().
◆ SCIPconflicthdlrFree()
SCIP_RETCODE SCIPconflicthdlrFree | ( | SCIP_CONFLICTHDLR ** | conflicthdlr, |
SCIP_SET * | set | ||
) |
calls destructor and frees memory of conflict handler
- Parameters
-
conflicthdlr pointer to conflict handler data structure set global SCIP settings
Definition at line 494 of file conflict.c.
References BMSfreeMemory, BMSfreeMemoryArrayNull, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().
Referenced by SCIPconflicthdlrCreate().
◆ SCIPconflicthdlrInit()
SCIP_RETCODE SCIPconflicthdlrInit | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set | ||
) |
calls init method of conflict handler
calls initialization method of conflict handler
- Parameters
-
conflicthdlr conflict handler set global SCIP settings
Definition at line 522 of file conflict.c.
References SCIP_Conflicthdlr::conflicttime, SCIP_Conflicthdlr::initialized, SCIP_Conflicthdlr::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Conflicthdlr::setuptime, and TRUE.
◆ SCIPconflicthdlrExit()
SCIP_RETCODE SCIPconflicthdlrExit | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set | ||
) |
calls exit method of conflict handler
- Parameters
-
conflicthdlr conflict handler set global SCIP settings
Definition at line 559 of file conflict.c.
References FALSE, SCIP_Conflicthdlr::initialized, SCIP_Conflicthdlr::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Conflicthdlr::setuptime.
Referenced by SCIPsetInitPlugins().
◆ SCIPconflicthdlrInitsol()
SCIP_RETCODE SCIPconflicthdlrInitsol | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set | ||
) |
informs conflict handler that the branch and bound process is being started
- Parameters
-
conflicthdlr conflict handler set global SCIP settings
Definition at line 590 of file conflict.c.
References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Conflicthdlr::setuptime.
Referenced by SCIPsetExitprePlugins().
◆ SCIPconflicthdlrExitsol()
SCIP_RETCODE SCIPconflicthdlrExitsol | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set | ||
) |
informs conflict handler that the branch and bound process data is being freed
- Parameters
-
conflicthdlr conflict handler set global SCIP settings
Definition at line 614 of file conflict.c.
References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Conflicthdlr::setuptime.
Referenced by SCIPsetInitsolPlugins().
◆ SCIPconflicthdlrExec()
SCIP_RETCODE SCIPconflicthdlrExec | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set, | ||
SCIP_NODE * | node, | ||
SCIP_NODE * | validnode, | ||
SCIP_BDCHGINFO ** | bdchginfos, | ||
SCIP_Real * | relaxedbds, | ||
int | nbdchginfos, | ||
SCIP_CONFTYPE | conftype, | ||
SCIP_Bool | usescutoffbound, | ||
SCIP_Bool | resolved, | ||
SCIP_RESULT * | result | ||
) |
calls execution method of conflict handler
- Parameters
-
conflicthdlr conflict handler set global SCIP settings node node to add conflict constraint to validnode node at which the constraint is valid bdchginfos bound change resembling the conflict set relaxedbds array with relaxed bounds which are efficient to create a valid conflict nbdchginfos number of bound changes in the conflict set conftype type of the conflict usescutoffbound depends the conflict on the cutoff bound? resolved was the conflict set already used to create a constraint? result pointer to store the result of the callback method
Definition at line 638 of file conflict.c.
References SCIP_Conflicthdlr::conflicttime, SCIP_Conflicthdlr::name, NULL, SCIP_CALL, SCIP_CONSADDED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIPnodeGetDepth().
Referenced by conflictAddConflictCons().
◆ SCIPconflicthdlrSetPriority()
void SCIPconflicthdlrSetPriority | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_SET * | set, | ||
int | priority | ||
) |
sets priority of conflict handler
- Parameters
-
conflicthdlr conflict handler set global SCIP settings priority new priority of the conflict handler
Definition at line 802 of file conflict.c.
References FALSE, NULL, and SCIP_Conflicthdlr::priority.
Referenced by SCIPsetConflicthdlrPriority().
◆ SCIPconflicthdlrSetCopy()
void SCIPconflicthdlrSetCopy | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_DECL_CONFLICTCOPY((*conflictcopy)) | |||
) |
set copy method of conflict handler
- Parameters
-
conflicthdlr conflict handler
Definition at line 706 of file conflict.c.
References NULL.
Referenced by SCIPsetConflicthdlrCopy().
◆ SCIPconflicthdlrSetFree()
void SCIPconflicthdlrSetFree | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_DECL_CONFLICTFREE((*conflictfree)) | |||
) |
set destructor of conflict handler
- Parameters
-
conflicthdlr conflict handler
Definition at line 717 of file conflict.c.
References NULL.
Referenced by SCIPsetConflicthdlrFree().
◆ SCIPconflicthdlrSetInit()
void SCIPconflicthdlrSetInit | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_DECL_CONFLICTINIT((*conflictinit)) | |||
) |
set initialization method of conflict handler
- Parameters
-
conflicthdlr conflict handler
Definition at line 728 of file conflict.c.
References NULL.
Referenced by SCIPsetConflicthdlrInit().
◆ SCIPconflicthdlrSetExit()
void SCIPconflicthdlrSetExit | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_DECL_CONFLICTEXIT((*conflictexit)) | |||
) |
set deinitialization method of conflict handler
- Parameters
-
conflicthdlr conflict handler
Definition at line 739 of file conflict.c.
References NULL.
Referenced by SCIPsetConflicthdlrExit().
◆ SCIPconflicthdlrSetInitsol()
void SCIPconflicthdlrSetInitsol | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_DECL_CONFLICTINITSOL((*conflictinitsol)) | |||
) |
set solving process initialization method of conflict handler
- Parameters
-
conflicthdlr conflict handler
Definition at line 750 of file conflict.c.
References NULL.
Referenced by SCIPsetConflicthdlrInitsol().
◆ SCIPconflicthdlrSetExitsol()
void SCIPconflicthdlrSetExitsol | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol)) | |||
) |
set solving process deinitialization method of conflict handler
- Parameters
-
conflicthdlr conflict handler
Definition at line 761 of file conflict.c.
References NULL.
Referenced by SCIPsetConflicthdlrExitsol().
◆ SCIPconflicthdlrEnableOrDisableClocks()
void SCIPconflicthdlrEnableOrDisableClocks | ( | SCIP_CONFLICTHDLR * | conflicthdlr, |
SCIP_Bool | enable | ||
) |
enables or disables all clocks of conflicthdlr
, depending on the value of the flag
- Parameters
-
conflicthdlr the conflict handler for which all clocks should be enabled or disabled enable should the clocks of the conflict handler be enabled?
Definition at line 826 of file conflict.c.
References SCIP_Conflicthdlr::conflicttime, NULL, SCIPclockEnableOrDisable(), and SCIP_Conflicthdlr::setuptime.
Referenced by SCIP_DECL_PARAMCHGD().
◆ SCIPconflictApplicable()
return TRUE if conflict analysis is applicable; In case the function return FALSE there is no need to initialize the conflict analysis since it will not be applied
- Parameters
-
set global SCIP settings
Definition at line 3894 of file conflict.c.
Referenced by SCIPconflictAnalyze(), and SCIPisConflictAnalysisApplicable().
◆ SCIPconflictCreate()
SCIP_RETCODE SCIPconflictCreate | ( | SCIP_CONFLICT ** | conflict, |
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set | ||
) |
creates conflict analysis data for propagation conflicts
- Parameters
-
conflict pointer to conflict analysis data blkmem block memory of transformed problem set global SCIP settings
Definition at line 3910 of file conflict.c.
References BMSallocMemory, conflictInitProofset(), conflictsetCreate(), NULL, SCIP_ALLOC, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_OKAY, SCIPclockCreate(), SCIPconflictEnableOrDisableClocks(), and SCIPpqueueCreate().
Referenced by SCIPtransformProb().
◆ SCIPconflictFree()
SCIP_RETCODE SCIPconflictFree | ( | SCIP_CONFLICT ** | conflict, |
BMS_BLKMEM * | blkmem | ||
) |
frees conflict analysis data for propagation conflicts
- Parameters
-
conflict pointer to conflict analysis data blkmem block memory of transformed problem
Definition at line 4000 of file conflict.c.
References BMSfreeMemory, BMSfreeMemoryArrayNull, conflictsetFree(), NULL, proofsetFree(), SCIP_OKAY, SCIPclockFree(), and SCIPpqueueFree().
Referenced by freeTransform(), and freeTransforming().
◆ SCIPconflictInit()
SCIP_RETCODE SCIPconflictInit | ( | SCIP_CONFLICT * | conflict, |
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_PROB * | prob, | ||
SCIP_CONFTYPE | conftype, | ||
SCIP_Bool | usescutoffbound | ||
) |
initializes the propagation conflict analysis by clearing the conflict candidate queue
- Parameters
-
conflict conflict analysis data set global SCIP settings stat problem statistics prob problem data conftype type of the conflict usescutoffbound depends the conflict on a cutoff bound?
Definition at line 4048 of file conflict.c.
References conflictClear(), SCIP_Conflict::conflictset, SCIP_ConflictSet::conflicttype, SCIP_Conflict::count, SCIP_Stat::glbhistory, SCIP_Stat::glbhistorycrun, SCIP_Stat::lastconflictnode, SCIP_Stat::nnodes, NULL, SCIP_Prob::nvars, SCIP_CALL, SCIP_CONFTYPE_BNDEXCEEDING, SCIP_CONFTYPE_INFEASLP, SCIP_CONFTYPE_PROPAGATION, SCIP_OKAY, SCIPhistoryScaleVSIDS(), SCIPsetDebugMsg, SCIPvarScaleVSIDS(), SCIP_ConflictSet::usescutoffbound, SCIP_Prob::vars, and SCIP_Stat::vsidsweight.
Referenced by conflictAnalyzeRemainingBdchgs(), conflictCreateReconvergenceConss(), and SCIPinitConflictAnalysis().
◆ SCIPconflictAddBound()
SCIP_RETCODE SCIPconflictAddBound | ( | SCIP_CONFLICT * | conflict, |
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_VAR * | var, | ||
SCIP_BOUNDTYPE | boundtype, | ||
SCIP_BDCHGIDX * | bdchgidx | ||
) |
adds variable's bound to conflict candidate queue
- Parameters
-
conflict conflict analysis data blkmem block memory set global SCIP settings stat dynamic problem statistics var problem variable boundtype type of bound that was changed: lower or upper bound bdchgidx bound change index (time stamp of bound change), or NULL for current time
Definition at line 4406 of file conflict.c.
References conflictAddBound(), convertToActiveVar(), FALSE, NULL, scalars, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_MULTAGGR, SCIPbdchgidxIsEarlier(), SCIPbdchginfoGetIdx(), SCIPbdchginfoGetNewbound(), SCIPboundtypeOpposite(), SCIPconflictAddBound(), SCIPvarGetBdchgInfo(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalars(), SCIPvarGetMultaggrVars(), SCIPvarGetStatus(), and SCIPvarIsActive().
Referenced by SCIPaddConflictBd(), SCIPaddConflictBinvar(), SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPconflictAddBound(), and SCIPconflictAddRelaxedBound().
◆ SCIPconflictAddRelaxedBound()
SCIP_RETCODE SCIPconflictAddRelaxedBound | ( | SCIP_CONFLICT * | conflict, |
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_VAR * | var, | ||
SCIP_BOUNDTYPE | boundtype, | ||
SCIP_BDCHGIDX * | bdchgidx, | ||
SCIP_Real | relaxedbd | ||
) |
adds variable's bound to conflict candidate queue with the additional information of a relaxed bound
adds variable's bound to conflict candidate queue
- Parameters
-
conflict conflict analysis data blkmem block memory set global SCIP settings stat dynamic problem statistics var problem variable boundtype type of bound that was changed: lower or upper bound bdchgidx bound change index (time stamp of bound change), or NULL for current time relaxedbd the relaxed bound
Definition at line 4467 of file conflict.c.
References SCIP_BdChgInfo::bdchgidx, conflictAddBound(), convertToActiveVar(), FALSE, MAX, NULL, SCIP_BdChgInfo::pos, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_MULTAGGR, SCIPbdchgidxGetPos(), SCIPbdchgidxIsEarlier(), SCIPbdchginfoGetDepth(), SCIPbdchginfoGetIdx(), SCIPbdchginfoGetNewbound(), SCIPbdchginfoGetOldbound(), SCIPbdchginfoGetPos(), SCIPbdchginfoIsRedundant(), SCIPconflictAddBound(), SCIPsetDebugMsg, SCIPsetIsGE(), SCIPsetIsGT(), SCIPsetIsLE(), SCIPsetIsLT(), SCIPvarAdjustLb(), SCIPvarAdjustUb(), SCIPvarGetBdchgInfo(), SCIPvarGetBdchgInfoLb(), SCIPvarGetBdchgInfoUb(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetStatus(), SCIPvarGetUbGlobal(), and SCIPvarIsActive().
Referenced by SCIPaddConflictRelaxedBd(), SCIPaddConflictRelaxedLb(), and SCIPaddConflictRelaxedUb().
◆ SCIPconflictIsVarUsed()
SCIP_RETCODE SCIPconflictIsVarUsed | ( | SCIP_CONFLICT * | conflict, |
SCIP_VAR * | var, | ||
SCIP_SET * | set, | ||
SCIP_BOUNDTYPE | boundtype, | ||
SCIP_BDCHGIDX * | bdchgidx, | ||
SCIP_Bool * | used | ||
) |
checks if the given variable is already part of the current conflict set or queued for resolving with the same or even stronger bound
- Parameters
-
conflict conflict analysis data var problem variable set global SCIP settings boundtype type of bound for which the score should be increased bdchgidx bound change index (time stamp of bound change), or NULL for current time used pointer to store if the variable is already used
Definition at line 4631 of file conflict.c.
References SCIP_Var::conflictlb, SCIP_Var::conflictlbcount, SCIP_Var::conflictub, SCIP_Var::conflictubcount, convertToActiveVar(), SCIP_Conflict::count, FALSE, NULL, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_MULTAGGR, SCIPABORT, SCIPerrorMessage, SCIPgetVarLbAtIndex(), SCIPgetVarUbAtIndex(), SCIPsetDebugMsg, SCIPvarGetName(), SCIPvarGetStatus(), SCIPvarIsActive(), and TRUE.
Referenced by SCIPisConflictVarUsed().
◆ SCIPconflictGetVarLb()
SCIP_Real SCIPconflictGetVarLb | ( | SCIP_CONFLICT * | conflict, |
SCIP_VAR * | var | ||
) |
returns the conflict lower bound if the variable is present in the current conflict set; otherwise the global lower bound
- Parameters
-
conflict conflict analysis data var problem variable
Definition at line 4691 of file conflict.c.
References SCIP_Var::conflictlb, SCIP_Var::conflictlbcount, SCIP_Var::conflictrelaxedlb, SCIP_Conflict::count, EPSGE, and SCIPvarGetLbGlobal().
Referenced by SCIPgetConflictVarLb().
◆ SCIPconflictGetVarUb()
SCIP_Real SCIPconflictGetVarUb | ( | SCIP_CONFLICT * | conflict, |
SCIP_VAR * | var | ||
) |
returns the conflict upper bound if the variable is present in the current conflict set; otherwise the global upper bound
- Parameters
-
conflict conflict analysis data var problem variable
Definition at line 4708 of file conflict.c.
References SCIP_Var::conflictrelaxedub, SCIP_Var::conflictub, SCIP_Var::conflictubcount, SCIP_Conflict::count, EPSLE, and SCIPvarGetUbGlobal().
Referenced by SCIPgetConflictVarUb().
◆ SCIPconflictAnalyze()
SCIP_RETCODE SCIPconflictAnalyze | ( | SCIP_CONFLICT * | conflict, |
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_PROB * | prob, | ||
SCIP_TREE * | tree, | ||
int | validdepth, | ||
SCIP_Bool * | success | ||
) |
analyzes conflicting bound changes that were added with calls to SCIPconflictAddBound() and SCIPconflictAddRelaxedBound(), and on success, calls the conflict handlers to create a conflict constraint out of the resulting conflict set; updates statistics for propagation conflict analysis
analyzes conflicting bound changes that were added with calls to SCIPconflictAddBound(), and on success, calls the conflict handlers to create a conflict constraint out of the resulting conflict set; updates statistics for propagation conflict analysis
- Parameters
-
conflict conflict analysis data blkmem block memory of transformed problem set global SCIP settings stat problem statistics prob problem data tree branch and bound tree validdepth minimal depth level at which the initial conflict set is valid success pointer to store whether a conflict constraint was created, or NULL
Definition at line 5658 of file conflict.c.
References SCIP_Conflict::bdchgqueue, conflictAnalyze(), conflictCalcMaxsize(), SCIP_Conflict::conflictset, FALSE, SCIP_Conflict::forcedbdchgqueue, SCIP_ConflictSet::nbdchginfos, SCIP_Conflict::npropcalls, SCIP_Conflict::npropconfconss, SCIP_Conflict::npropconfliterals, SCIP_Conflict::npropreconvconss, SCIP_Conflict::npropreconvliterals, SCIP_Conflict::npropsuccess, NULL, SCIP_Conflict::propanalyzetime, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPconflictApplicable(), SCIPpqueueNElems(), SCIPsetDebugMsg, SCIPtreeGetCurrentDepth(), and TRUE.
Referenced by SCIPanalyzeConflict(), and SCIPanalyzeConflictCons().
◆ SCIPconflictFlushConss()
SCIP_RETCODE SCIPconflictFlushConss | ( | SCIP_CONFLICT * | conflict, |
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_PROB * | transprob, | ||
SCIP_PROB * | origprob, | ||
SCIP_TREE * | tree, | ||
SCIP_REOPT * | reopt, | ||
SCIP_LP * | lp, | ||
SCIP_BRANCHCAND * | branchcand, | ||
SCIP_EVENTQUEUE * | eventqueue, | ||
SCIP_CLIQUETABLE * | cliquetable | ||
) |
adds the collected conflict constraints to the corresponding nodes; the best set->conf_maxconss conflict constraints are added to the node of their validdepth; additionally (if not yet added, and if repropagation is activated), the conflict constraint that triggers the earliest repropagation is added to the node of its validdepth
- Parameters
-
conflict conflict analysis data blkmem block memory of transformed problem set global SCIP settings stat dynamic problem statistics transprob transformed problem origprob original problem tree branch and bound tree reopt reoptimization data structure lp current LP data branchcand branching candidate storage eventqueue event queue cliquetable clique table data structure
Definition at line 3547 of file conflict.c.
References conflictAddConflictCons(), conflictCalcMaxsize(), SCIP_ConflictSet::conflictdepth, conflictFreeTmpBdchginfos(), conflictsetFree(), SCIP_Conflict::conflictsets, SCIP_Node::depth, SCIP_ConflictSet::insertdepth, SCIP_ConflictSet::nbdchginfos, SCIP_Conflict::nconflictsets, NULL, SCIP_Tree::path, SCIP_Tree::pathlen, SCIP_ConflictSet::repropagate, SCIP_ConflictSet::repropdepth, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPdebug, SCIPnodeCutoff(), SCIPnodePropagateAgain(), SCIPsetDebugMsg, SCIPtreeGetCurrentDepth(), SCIPtreeGetFocusDepth(), SCIPvisualFoundConflict(), SCIP_ConflictSet::validdepth, and SCIP_Stat::visual.
Referenced by conflictAnalyzeLP(), SCIPconflictAnalyzePseudo(), SCIPpropagateDomains(), and solveNode().
◆ SCIPconflictGetNConflicts()
int SCIPconflictGetNConflicts | ( | SCIP_CONFLICT * | conflict | ) |
returns the current number of conflict sets in the conflict set storage
- Parameters
-
conflict conflict analysis data
Definition at line 3756 of file conflict.c.
References SCIP_Conflict::nconflictsets, and NULL.
Referenced by propAndSolve(), SCIPgetNConflictConssFoundNode(), SCIPgetVarStrongbranchWithPropagation(), and solveNode().
◆ SCIPconflictGetNAppliedConss()
SCIP_Longint SCIPconflictGetNAppliedConss | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of conflict constraints that were added to the problem
- Parameters
-
conflict conflict analysis data
Definition at line 3766 of file conflict.c.
References SCIP_Conflict::nappliedglbconss, SCIP_Conflict::nappliedlocconss, and NULL.
Referenced by SCIPgetNConflictConssApplied().
◆ SCIPconflictGetNAppliedLiterals()
SCIP_Longint SCIPconflictGetNAppliedLiterals | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of literals in conflict constraints that were added to the problem
- Parameters
-
conflict conflict analysis data
Definition at line 3776 of file conflict.c.
References SCIP_Conflict::nappliedglbliterals, SCIP_Conflict::nappliedlocliterals, and NULL.
◆ SCIPconflictGetNGlobalChgBds()
SCIP_Longint SCIPconflictGetNGlobalChgBds | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of global bound changes applied by the conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 3786 of file conflict.c.
References SCIP_Conflict::nglbchgbds, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNAppliedGlobalConss()
SCIP_Longint SCIPconflictGetNAppliedGlobalConss | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of conflict constraints that were added globally to the problem
- Parameters
-
conflict conflict analysis data
Definition at line 3796 of file conflict.c.
References SCIP_Conflict::nappliedglbconss, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNAppliedGlobalLiterals()
SCIP_Longint SCIPconflictGetNAppliedGlobalLiterals | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of literals in conflict constraints that were added globally to the problem
- Parameters
-
conflict conflict analysis data
Definition at line 3806 of file conflict.c.
References SCIP_Conflict::nappliedglbliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNLocalChgBds()
SCIP_Longint SCIPconflictGetNLocalChgBds | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of local bound changes applied by the conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 3816 of file conflict.c.
References SCIP_Conflict::nlocchgbds, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNAppliedLocalConss()
SCIP_Longint SCIPconflictGetNAppliedLocalConss | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of conflict constraints that were added locally to the problem
- Parameters
-
conflict conflict analysis data
Definition at line 3826 of file conflict.c.
References SCIP_Conflict::nappliedlocconss, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNAppliedLocalLiterals()
SCIP_Longint SCIPconflictGetNAppliedLocalLiterals | ( | SCIP_CONFLICT * | conflict | ) |
returns the total number of literals in conflict constraints that were added locally to the problem
- Parameters
-
conflict conflict analysis data
Definition at line 3836 of file conflict.c.
References SCIP_Conflict::nappliedlocliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetGlobalApplTime()
SCIP_Real SCIPconflictGetGlobalApplTime | ( | SCIP_CONFLICT * | conflict | ) |
gets time in seconds used for preprocessing global conflict constraint before appliance
- Parameters
-
conflict conflict analysis data
Definition at line 5716 of file conflict.c.
References SCIP_Conflict::dIBclock, NULL, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetPropTime()
SCIP_Real SCIPconflictGetPropTime | ( | SCIP_CONFLICT * | conflict | ) |
gets time in seconds used for analyzing propagation conflicts
- Parameters
-
conflict conflict analysis data
Definition at line 5726 of file conflict.c.
References NULL, SCIP_Conflict::propanalyzetime, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNPropCalls()
SCIP_Longint SCIPconflictGetNPropCalls | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to propagation conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 5736 of file conflict.c.
References SCIP_Conflict::npropcalls, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNPropSuccess()
SCIP_Longint SCIPconflictGetNPropSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to propagation conflict analysis that yield at least one conflict constraint
- Parameters
-
conflict conflict analysis data
Definition at line 5746 of file conflict.c.
References SCIP_Conflict::npropsuccess, and NULL.
Referenced by SCIPprintConflictStatistics(), and SCIPsolveCIP().
◆ SCIPconflictGetNPropConflictConss()
SCIP_Longint SCIPconflictGetNPropConflictConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of conflict constraints detected in propagation conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 5756 of file conflict.c.
References SCIP_Conflict::npropconfconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNPropConflictLiterals()
SCIP_Longint SCIPconflictGetNPropConflictLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in conflict constraints created in propagation conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 5766 of file conflict.c.
References SCIP_Conflict::npropconfliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNPropReconvergenceConss()
SCIP_Longint SCIPconflictGetNPropReconvergenceConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of reconvergence constraints detected in propagation conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 5776 of file conflict.c.
References SCIP_Conflict::npropreconvconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNPropReconvergenceLiterals()
SCIP_Longint SCIPconflictGetNPropReconvergenceLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in reconvergence constraints created in propagation conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 5786 of file conflict.c.
References SCIP_Conflict::npropreconvliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictAnalyzeLP()
SCIP_RETCODE SCIPconflictAnalyzeLP | ( | SCIP_CONFLICT * | conflict, |
SCIP_CONFLICTSTORE * | conflictstore, | ||
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_PROB * | transprob, | ||
SCIP_PROB * | origprob, | ||
SCIP_TREE * | tree, | ||
SCIP_REOPT * | reopt, | ||
SCIP_LP * | lp, | ||
SCIP_BRANCHCAND * | branchcand, | ||
SCIP_EVENTQUEUE * | eventqueue, | ||
SCIP_CLIQUETABLE * | cliquetable, | ||
SCIP_Bool * | success | ||
) |
analyzes an infeasible or bound exceeding LP to find out the bound changes on variables that were responsible for the infeasibility or for exceeding the primal bound; on success, calls standard conflict analysis with the responsible variables as starting conflict set, thus creating a conflict constraint out of the resulting conflict set; updates statistics for infeasible or bound exceeding LP conflict analysis
analyzes an infeasible or bound exceeding LP to find out the bound changes on variables that were responsible for the infeasibility or for exceeding the primal bound; on success, calls standard conflict analysis with the responsible variables as starting conflict set, thus creating a conflict constraint out of the resulting conflict set; updates statistics for infeasible or bound exceeding LP conflict analysis; may only be called if SCIPprobAllColsInLP()
- Parameters
-
conflict conflict analysis data conflictstore conflict store blkmem block memory of transformed problem set global SCIP settings stat problem statistics transprob transformed problem origprob original problem tree branch and bound tree reopt reoptimization data structure lp LP data branchcand branching candidate storage eventqueue event queue cliquetable clique table data structure success pointer to store whether a conflict constraint was created, or NULL
Definition at line 8676 of file conflict.c.
References SCIP_RowSolVals::activity, SCIP_Row::activity, SCIP_ColSolVals::basisstatus, SCIP_RowSolVals::basisstatus, SCIP_Col::basisstatus, SCIP_Row::basisstatus, SCIP_Lp::cols, conflictAnalyzeBoundexceedingLP(), conflictAnalyzeInfeasibleLP(), SCIP_LpSolVals::dualchecked, SCIP_Lp::dualchecked, SCIP_Row::dualfarkas, SCIP_LpSolVals::dualfeasible, SCIP_Lp::dualfeasible, SCIP_RowSolVals::dualsol, SCIP_Row::dualsol, FALSE, SCIP_Lp::flushed, SCIP_LpSolVals::lpissolved, SCIP_LpSolVals::lpobjval, SCIP_Lp::lpobjval, SCIP_LpSolVals::lpsolstat, SCIP_Lp::lpsolstat, SCIP_Lp::ncols, SCIP_Lp::nrows, NULL, SCIP_LpSolVals::primalchecked, SCIP_Lp::primalchecked, SCIP_LpSolVals::primalfeasible, SCIP_Lp::primalfeasible, SCIP_ColSolVals::primsol, SCIP_Col::primsol, r, SCIP_ColSolVals::redcost, SCIP_Col::redcost, SCIP_Lp::rows, SCIP_CALL, SCIP_LPSOLSTAT_INFEASIBLE, SCIP_LPSOLSTAT_NOTSOLVED, SCIP_LPSOLSTAT_OBJLIMIT, SCIP_LPSOLSTAT_OPTIMAL, SCIP_OKAY, SCIPlpGetLPI(), SCIPlpGetSolstat(), SCIPlpiIsPrimalInfeasible(), SCIPlpiWasSolved(), SCIPprobAllColsInLP(), SCIPsetAllocBufferArray, SCIPsetFreeBufferArray, SCIP_LpSolVals::solisbasic, SCIP_Lp::solisbasic, and SCIP_Lp::solved.
Referenced by priceAndCutLoop(), SCIPsolveDiveLP(), and solveProbingLP().
◆ SCIPconflictGetInfeasibleLPTime()
SCIP_Real SCIPconflictGetInfeasibleLPTime | ( | SCIP_CONFLICT * | conflict | ) |
gets time in seconds used for analyzing infeasible LP conflicts
- Parameters
-
conflict conflict analysis data
Definition at line 8823 of file conflict.c.
References SCIP_Conflict::inflpanalyzetime, NULL, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNInfeasibleLPCalls()
SCIP_Longint SCIPconflictGetNInfeasibleLPCalls | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to infeasible LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8833 of file conflict.c.
References SCIP_Conflict::ninflpcalls, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNInfeasibleLPSuccess()
SCIP_Longint SCIPconflictGetNInfeasibleLPSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to infeasible LP conflict analysis that yield at least one conflict constraint
- Parameters
-
conflict conflict analysis data
Definition at line 8843 of file conflict.c.
References SCIP_Conflict::ninflpsuccess, and NULL.
Referenced by SCIPprintConflictStatistics(), and SCIPsolveCIP().
◆ SCIPconflictGetNInfeasibleLPConflictConss()
SCIP_Longint SCIPconflictGetNInfeasibleLPConflictConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of conflict constraints detected in infeasible LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8853 of file conflict.c.
References SCIP_Conflict::ninflpconfconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNInfeasibleLPConflictLiterals()
SCIP_Longint SCIPconflictGetNInfeasibleLPConflictLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in conflict constraints created in infeasible LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8863 of file conflict.c.
References SCIP_Conflict::ninflpconfliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNInfeasibleLPReconvergenceConss()
SCIP_Longint SCIPconflictGetNInfeasibleLPReconvergenceConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of reconvergence constraints detected in infeasible LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8873 of file conflict.c.
References SCIP_Conflict::ninflpreconvconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNInfeasibleLPReconvergenceLiterals()
SCIP_Longint SCIPconflictGetNInfeasibleLPReconvergenceLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in reconvergence constraints created in infeasible LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8883 of file conflict.c.
References SCIP_Conflict::ninflpreconvliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNInfeasibleLPIterations()
SCIP_Longint SCIPconflictGetNInfeasibleLPIterations | ( | SCIP_CONFLICT * | conflict | ) |
gets number of LP iterations in infeasible LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8893 of file conflict.c.
References SCIP_Conflict::ninflpiterations, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetBoundexceedingLPTime()
SCIP_Real SCIPconflictGetBoundexceedingLPTime | ( | SCIP_CONFLICT * | conflict | ) |
gets time in seconds used for analyzing bound exceeding LP conflicts
- Parameters
-
conflict conflict analysis data
Definition at line 8903 of file conflict.c.
References SCIP_Conflict::boundlpanalyzetime, NULL, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNBoundexceedingLPCalls()
SCIP_Longint SCIPconflictGetNBoundexceedingLPCalls | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to bound exceeding LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8913 of file conflict.c.
References SCIP_Conflict::nboundlpcalls, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNBoundexceedingLPSuccess()
SCIP_Longint SCIPconflictGetNBoundexceedingLPSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to bound exceeding LP conflict analysis that yield at least one conflict constraint
- Parameters
-
conflict conflict analysis data
Definition at line 8923 of file conflict.c.
References SCIP_Conflict::nboundlpsuccess, and NULL.
Referenced by SCIPprintConflictStatistics(), and SCIPsolveCIP().
◆ SCIPconflictGetNBoundexceedingLPConflictConss()
SCIP_Longint SCIPconflictGetNBoundexceedingLPConflictConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of conflict constraints detected in bound exceeding LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8933 of file conflict.c.
References SCIP_Conflict::nboundlpconfconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNBoundexceedingLPConflictLiterals()
SCIP_Longint SCIPconflictGetNBoundexceedingLPConflictLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in conflict constraints created in bound exceeding LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8943 of file conflict.c.
References SCIP_Conflict::nboundlpconfliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNBoundexceedingLPReconvergenceConss()
SCIP_Longint SCIPconflictGetNBoundexceedingLPReconvergenceConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of reconvergence constraints detected in bound exceeding LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8953 of file conflict.c.
References SCIP_Conflict::nboundlpreconvconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNBoundexceedingLPReconvergenceLiterals()
SCIP_Longint SCIPconflictGetNBoundexceedingLPReconvergenceLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in reconvergence constraints created in bound exceeding LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8963 of file conflict.c.
References SCIP_Conflict::nboundlpreconvliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNBoundexceedingLPIterations()
SCIP_Longint SCIPconflictGetNBoundexceedingLPIterations | ( | SCIP_CONFLICT * | conflict | ) |
gets number of LP iterations in bound exceeding LP conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8973 of file conflict.c.
References SCIP_Conflict::nboundlpiterations, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictAnalyzeStrongbranch()
SCIP_RETCODE SCIPconflictAnalyzeStrongbranch | ( | SCIP_CONFLICT * | conflict, |
SCIP_CONFLICTSTORE * | conflictstore, | ||
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_PROB * | transprob, | ||
SCIP_PROB * | origprob, | ||
SCIP_TREE * | tree, | ||
SCIP_REOPT * | reopt, | ||
SCIP_LP * | lp, | ||
SCIP_BRANCHCAND * | branchcand, | ||
SCIP_EVENTQUEUE * | eventqueue, | ||
SCIP_CLIQUETABLE * | cliquetable, | ||
SCIP_COL * | col, | ||
SCIP_Bool * | downconflict, | ||
SCIP_Bool * | upconflict | ||
) |
analyses infeasible strong branching sub problems for conflicts
- Parameters
-
conflict conflict analysis data conflictstore conflict store blkmem block memory buffers set global SCIP settings stat dynamic problem statistics transprob transformed problem origprob original problem tree branch and bound tree reopt reoptimization data structure lp LP data branchcand branching candidate storage eventqueue event queue cliquetable clique table data structure col LP column with at least one infeasible strong branching subproblem downconflict pointer to store whether a conflict constraint was created for an infeasible downwards branch, or NULL upconflict pointer to store whether a conflict constraint was created for an infeasible upwards branch, or NULL
Definition at line 8990 of file conflict.c.
References conflictAnalyzeLP(), SCIP_Stat::conflictlptime, SCIP_Conflict::conflictset, SCIP_ConflictSet::conflicttype, SCIP_Lp::cutoffbound, FALSE, SCIP_Lp::flushed, SCIP_Col::lb, SCIP_Lp::lpi, SCIP_Col::lpipos, SCIP_Stat::nconflictlpiterations, SCIP_Stat::nconflictlps, SCIP_Lp::nlpicols, SCIP_Lp::nlpirows, SCIP_Conflict::nsbcalls, SCIP_Conflict::nsbconfconss, SCIP_Conflict::nsbconfliterals, SCIP_Conflict::nsbiterations, SCIP_Conflict::nsbreconvconss, SCIP_Conflict::nsbreconvliterals, SCIP_Conflict::nsbsuccess, NULL, SCIP_Col::primsol, SCIP_Conflict::sbanalyzetime, SCIP_Col::sbdown, SCIP_Col::sbdownvalid, SCIP_Col::sbup, SCIP_Col::sbupvalid, SCIP_Bool, SCIP_CALL, SCIP_CONFTYPE_INFEASLP, SCIP_LPERROR, SCIP_OKAY, SCIP_Real, SCIPclockStart(), SCIPclockStop(), SCIPcolGetVar(), SCIPlpiChgBounds(), SCIPlpiEndStrongbranch(), SCIPlpiGetBase(), SCIPlpiGetIterations(), SCIPlpiSetBase(), SCIPlpiSolveDual(), SCIPlpiStartStrongbranch(), SCIPprobAllColsInLP(), SCIPsetAllocBufferArray, SCIPsetDebugMsg, SCIPsetFeasCeil(), SCIPsetFeasFloor(), SCIPsetFreeBufferArray, SCIPsetIsGE(), SCIPtreeGetCurrentDepth(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPvarGetUbLocal(), SCIP_Lp::solved, TRUE, and SCIP_Col::ub.
Referenced by analyzeStrongbranch().
◆ SCIPconflictGetStrongbranchTime()
SCIP_Real SCIPconflictGetStrongbranchTime | ( | SCIP_CONFLICT * | conflict | ) |
gets time in seconds used for analyzing infeasible strong branching conflicts
- Parameters
-
conflict conflict analysis data
Definition at line 9227 of file conflict.c.
References NULL, SCIP_Conflict::sbanalyzetime, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsInfSuccess()
SCIP_Longint SCIPconflictGetNDualproofsInfSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of successful calls to dual proof analysis derived from infeasible LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9237 of file conflict.c.
References SCIP_Conflict::ndualproofsinfsuccess, and NULL.
Referenced by SCIPgetNConflictDualproofsApplied(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsInfGlobal()
SCIP_Longint SCIPconflictGetNDualproofsInfGlobal | ( | SCIP_CONFLICT * | conflict | ) |
gets number of globally valid dual proof constraints derived from infeasible LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9247 of file conflict.c.
References SCIP_Conflict::ndualproofsinfglobal, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsInfLocal()
SCIP_Longint SCIPconflictGetNDualproofsInfLocal | ( | SCIP_CONFLICT * | conflict | ) |
gets number of locally valid dual proof constraints derived from infeasible LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9257 of file conflict.c.
References SCIP_Conflict::ndualproofsinflocal, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsInfNonzeros()
SCIP_Longint SCIPconflictGetNDualproofsInfNonzeros | ( | SCIP_CONFLICT * | conflict | ) |
gets average length of dual proof constraints derived from infeasible LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9267 of file conflict.c.
References SCIP_Conflict::dualproofsinfnnonzeros, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsBndSuccess()
SCIP_Longint SCIPconflictGetNDualproofsBndSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of successfully analyzed dual proofs derived from bound exceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9277 of file conflict.c.
References SCIP_Conflict::ndualproofsbndsuccess, and NULL.
Referenced by SCIPgetNConflictDualproofsApplied(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsBndGlobal()
SCIP_Longint SCIPconflictGetNDualproofsBndGlobal | ( | SCIP_CONFLICT * | conflict | ) |
gets number of globally applied dual proofs derived from bound exceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9287 of file conflict.c.
References SCIP_Conflict::ndualproofsbndglobal, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsBndLocal()
SCIP_Longint SCIPconflictGetNDualproofsBndLocal | ( | SCIP_CONFLICT * | conflict | ) |
gets number of locally applied dual proofs derived from bound exceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9297 of file conflict.c.
References SCIP_Conflict::ndualproofsbndlocal, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualproofsBndNonzeros()
SCIP_Longint SCIPconflictGetNDualproofsBndNonzeros | ( | SCIP_CONFLICT * | conflict | ) |
gets average length of dual proofs derived from bound exceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 9307 of file conflict.c.
References SCIP_Conflict::dualproofsbndnnonzeros, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNStrongbranchCalls()
SCIP_Longint SCIPconflictGetNStrongbranchCalls | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to infeasible strong branching conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9317 of file conflict.c.
References SCIP_Conflict::nsbcalls, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNStrongbranchSuccess()
SCIP_Longint SCIPconflictGetNStrongbranchSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to infeasible strong branching conflict analysis that yield at least one conflict constraint
- Parameters
-
conflict conflict analysis data
Definition at line 9327 of file conflict.c.
References SCIP_Conflict::nsbsuccess, and NULL.
Referenced by SCIPprintConflictStatistics(), and SCIPsolveCIP().
◆ SCIPconflictGetNStrongbranchConflictConss()
SCIP_Longint SCIPconflictGetNStrongbranchConflictConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of conflict constraints detected in infeasible strong branching conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9337 of file conflict.c.
References SCIP_Conflict::nsbconfconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNStrongbranchConflictLiterals()
SCIP_Longint SCIPconflictGetNStrongbranchConflictLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in conflict constraints created in infeasible strong branching conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9347 of file conflict.c.
References SCIP_Conflict::nsbconfliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNStrongbranchReconvergenceConss()
SCIP_Longint SCIPconflictGetNStrongbranchReconvergenceConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of reconvergence constraints detected in infeasible strong branching conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9357 of file conflict.c.
References SCIP_Conflict::nsbreconvconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNStrongbranchReconvergenceLiterals()
SCIP_Longint SCIPconflictGetNStrongbranchReconvergenceLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in reconvergence constraints created in infeasible strong branching conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9367 of file conflict.c.
References SCIP_Conflict::nsbreconvliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNStrongbranchIterations()
SCIP_Longint SCIPconflictGetNStrongbranchIterations | ( | SCIP_CONFLICT * | conflict | ) |
gets number of LP iterations in infeasible strong branching conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9377 of file conflict.c.
References SCIP_Conflict::nsbiterations, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictAnalyzePseudo()
SCIP_RETCODE SCIPconflictAnalyzePseudo | ( | SCIP_CONFLICT * | conflict, |
BMS_BLKMEM * | blkmem, | ||
SCIP_SET * | set, | ||
SCIP_STAT * | stat, | ||
SCIP_PROB * | transprob, | ||
SCIP_PROB * | origprob, | ||
SCIP_TREE * | tree, | ||
SCIP_REOPT * | reopt, | ||
SCIP_LP * | lp, | ||
SCIP_BRANCHCAND * | branchcand, | ||
SCIP_EVENTQUEUE * | eventqueue, | ||
SCIP_CLIQUETABLE * | cliquetable, | ||
SCIP_Bool * | success | ||
) |
analyzes a pseudo solution with objective value exceeding the current cutoff to find out the bound changes on variables that were responsible for the objective value degradation; on success, calls standard conflict analysis with the responsible variables as starting conflict set, thus creating a conflict constraint out of the resulting conflict set; updates statistics for pseudo solution conflict analysis
- Parameters
-
conflict conflict analysis data blkmem block memory of transformed problem set global SCIP settings stat problem statistics transprob transformed problem origprob original problem tree branch and bound tree reopt reoptimization data structure lp LP data branchcand branching candidate storage eventqueue event queue cliquetable clique table data structure success pointer to store whether a conflict constraint was created, or NULL
Definition at line 9399 of file conflict.c.
References conflictAnalyzeRemainingBdchgs(), SCIP_Conflict::conflictset, SCIP_ConflictSet::conflicttype, SCIP_Lp::cutoffbound, FALSE, SCIP_Lp::lpi, SCIP_Conflict::nconflictsets, SCIP_Var::nlbchginfos, SCIP_Conflict::npseudocalls, SCIP_Conflict::npseudoconfconss, SCIP_Conflict::npseudoconfliterals, SCIP_Conflict::npseudoreconvconss, SCIP_Conflict::npseudoreconvliterals, SCIP_Conflict::npseudosuccess, SCIP_Var::nubchginfos, NULL, SCIP_Prob::nvars, SCIP_Conflict::pseudoanalyzetime, SCIP_CALL, SCIP_CONFTYPE_BNDEXCEEDING, SCIP_OKAY, SCIP_Real, SCIPclockStart(), SCIPclockStop(), SCIPconflictFlushConss(), SCIPlpGetPseudoObjval(), SCIPsetAllocBufferArray, SCIPsetDebugMsg, SCIPsetFreeBufferArray, SCIPsetIsFeasEQ(), SCIPsetIsFeasGT(), SCIPsetIsInfinity(), SCIPsetIsZero(), SCIPsetSumepsilon(), SCIPtreeGetCurrentDepth(), SCIPvarGetLbLocal(), SCIPvarGetObj(), SCIPvarGetUbLocal(), TRUE, undoBdchgsProof(), SCIP_ConflictSet::usescutoffbound, and SCIP_Prob::vars.
Referenced by applyBounding().
◆ SCIPconflictGetPseudoTime()
SCIP_Real SCIPconflictGetPseudoTime | ( | SCIP_CONFLICT * | conflict | ) |
gets time in seconds used for analyzing pseudo solution conflicts
- Parameters
-
conflict conflict analysis data
Definition at line 9551 of file conflict.c.
References NULL, SCIP_Conflict::pseudoanalyzetime, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNPseudoCalls()
SCIP_Longint SCIPconflictGetNPseudoCalls | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to pseudo solution conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9561 of file conflict.c.
References SCIP_Conflict::npseudocalls, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNPseudoSuccess()
SCIP_Longint SCIPconflictGetNPseudoSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of calls to pseudo solution conflict analysis that yield at least one conflict constraint
- Parameters
-
conflict conflict analysis data
Definition at line 9571 of file conflict.c.
References SCIP_Conflict::npseudosuccess, and NULL.
Referenced by SCIPprintConflictStatistics(), and SCIPsolveCIP().
◆ SCIPconflictGetNPseudoConflictConss()
SCIP_Longint SCIPconflictGetNPseudoConflictConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of conflict constraints detected in pseudo solution conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9581 of file conflict.c.
References SCIP_Conflict::npseudoconfconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNPseudoConflictLiterals()
SCIP_Longint SCIPconflictGetNPseudoConflictLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in conflict constraints created in pseudo solution conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9591 of file conflict.c.
References SCIP_Conflict::npseudoconfliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNPseudoReconvergenceConss()
SCIP_Longint SCIPconflictGetNPseudoReconvergenceConss | ( | SCIP_CONFLICT * | conflict | ) |
gets number of reconvergence constraints detected in pseudo solution conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9601 of file conflict.c.
References SCIP_Conflict::npseudoreconvconss, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNPseudoReconvergenceLiterals()
SCIP_Longint SCIPconflictGetNPseudoReconvergenceLiterals | ( | SCIP_CONFLICT * | conflict | ) |
gets total number of literals in reconvergence constraints created in pseudo solution conflict analysis
- Parameters
-
conflict conflict analysis data
Definition at line 9611 of file conflict.c.
References SCIP_Conflict::npseudoreconvliterals, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictEnableOrDisableClocks()
void SCIPconflictEnableOrDisableClocks | ( | SCIP_CONFLICT * | conflict, |
SCIP_Bool | enable | ||
) |
enables or disables all clocks of conflict
, depending on the value of the flag
- Parameters
-
conflict the conflict analysis data for which all clocks should be enabled or disabled enable should the clocks of the conflict analysis data be enabled?
Definition at line 9622 of file conflict.c.
References SCIP_Conflict::boundlpanalyzetime, SCIP_Conflict::dIBclock, SCIP_Conflict::inflpanalyzetime, NULL, SCIP_Conflict::propanalyzetime, SCIP_Conflict::pseudoanalyzetime, SCIP_Conflict::sbanalyzetime, and SCIPclockEnableOrDisable().
Referenced by SCIPconflictCreate(), and SCIPenableOrDisableStatisticTiming().