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 378 of file conflict.c.
References NULL, SCIP_CALL, SCIP_OKAY, SCIPconflicthdlrGetName(), and SCIPsetDebugMsg.
◆ 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 452 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 483 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 511 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.
Referenced by SCIPsetSetPriorityNlpi().
◆ 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 548 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 579 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 603 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 627 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 791 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 695 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 706 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 717 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 728 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 739 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 750 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 815 of file conflict.c.
References SCIP_Conflicthdlr::conflicttime, NULL, SCIPclockEnableOrDisable(), and SCIP_Conflicthdlr::setuptime.
◆ 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 3673 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 3689 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 3777 of file conflict.c.
References BMSfreeMemory, BMSfreeMemoryArrayNull, conflictsetFree(), NULL, proofsetFree(), SCIP_OKAY, SCIPclockFree(), and SCIPpqueueFree().
Referenced by freeTransform().
◆ 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 3825 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 4183 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 4244 of file conflict.c.
References SCIP_BdChgInfo::bdchgidx, conflictAddBound(), convertToActiveVar(), FALSE, MAX, MIN, 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 4408 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 4468 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 4485 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 5435 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 3329 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 3538 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 3548 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 3558 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 3568 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 3578 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 3588 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 3598 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 3608 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 3618 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 5493 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 5503 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 5513 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 5523 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 5533 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 5543 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 5553 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 5563 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 8050 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 8197 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 8207 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 8217 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 8227 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 8237 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 8247 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 8257 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 8267 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 8277 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 8287 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 8297 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 8307 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 8317 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 8327 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 8337 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 8347 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 8364 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 8601 of file conflict.c.
References NULL, SCIP_Conflict::sbanalyzetime, and SCIPclockGetTime().
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualrayInfSuccess()
SCIP_Longint SCIPconflictGetNDualrayInfSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of successful calls to infeasible dualray analysis
- Parameters
-
conflict conflict analysis data
Definition at line 8611 of file conflict.c.
References SCIP_Conflict::ndualrayinfsuccess, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualrayInfGlobal()
SCIP_Longint SCIPconflictGetNDualrayInfGlobal | ( | SCIP_CONFLICT * | conflict | ) |
gets number of globally valid dualray constraints
- Parameters
-
conflict conflict analysis data
Definition at line 8621 of file conflict.c.
References SCIP_Conflict::ndualrayinfglobal, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualrayInfNonzeros()
SCIP_Longint SCIPconflictGetNDualrayInfNonzeros | ( | SCIP_CONFLICT * | conflict | ) |
gets average length of infeasible dualrays
- Parameters
-
conflict conflict analysis data
Definition at line 8631 of file conflict.c.
References SCIP_Conflict::dualrayinfnnonzeros, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualrayBndSuccess()
SCIP_Longint SCIPconflictGetNDualrayBndSuccess | ( | SCIP_CONFLICT * | conflict | ) |
gets number of successfully analyzed dual proofs of boundexceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 8641 of file conflict.c.
References SCIP_Conflict::ndualraybndsuccess, and NULL.
Referenced by SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualrayBndGlobal()
SCIP_Longint SCIPconflictGetNDualrayBndGlobal | ( | SCIP_CONFLICT * | conflict | ) |
gets number of globally applied dual proofs of boundexceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 8651 of file conflict.c.
References SCIP_Conflict::ndualraybndglobal, and NULL.
Referenced by SCIPgetNConflictConssFound(), and SCIPprintConflictStatistics().
◆ SCIPconflictGetNDualrayBndNonzeros()
SCIP_Longint SCIPconflictGetNDualrayBndNonzeros | ( | SCIP_CONFLICT * | conflict | ) |
gets average length of dual proofs of boundexceeding LPs
- Parameters
-
conflict conflict analysis data
Definition at line 8661 of file conflict.c.
References SCIP_Conflict::dualraybndnnonzeros, 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 8671 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 8681 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 8691 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 8701 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 8711 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 8721 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 8731 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 8753 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(), 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 8898 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 8908 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 8918 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 8928 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 8938 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 8948 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 8958 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 8969 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().