90 (*stat)->marked_nvaridx = 0;
91 (*stat)->marked_ncolidx = 0;
92 (*stat)->marked_nrowidx = 0;
93 (*stat)->userinterrupt =
FALSE;
94 (*stat)->userrestart =
FALSE;
95 (*stat)->inrestart =
FALSE;
96 (*stat)->collectvarhistory =
TRUE;
97 (*stat)->performpresol =
FALSE;
98 (*stat)->branchedunbdvar =
FALSE;
99 (*stat)->disableenforelaxmsg =
FALSE;
100 (*stat)->subscipdepth = 0;
101 (*stat)->detertimecnt = 0.0;
102 (*stat)->nreoptruns = 0;
115 assert(stat !=
NULL);
116 assert(*stat !=
NULL);
155 assert(stat !=
NULL);
165 assert(stat !=
NULL);
175 assert(stat !=
NULL);
190 assert(stat !=
NULL);
334 assert(stat !=
NULL);
347 assert(stat !=
NULL);
375 assert(stat !=
NULL);
408 assert(stat !=
NULL);
427 assert(
SCIPsetIsZero(
set, primalbound) == (primalbound == 0.0));
453 else if( primalbound * dualbound <= 0.0 )
463 currentgap = 100.0 *
REALABS(primalbound - dualbound) /
MAX(absprim, absdual);
470 assert(currentgap == 0.0 || currentgap == 100.0 ||
SCIPsetIsGE(
set, primalbound * dualbound, 0.0));
492 assert(stat !=
NULL);
494 assert(transprob !=
NULL);
495 assert(origprob !=
NULL);
512 assert(stat !=
NULL);
547 assert(transprob ==
NULL || origprob !=
NULL);
570 assert(stat !=
NULL);
581 assert(stat !=
NULL);
594 assert(stat !=
NULL);
602 if( !stat->
memsavemode && memused >= set->mem_savefac * set->limit_memory * 1024.0 * 1024.0 )
606 "(node %" SCIP_LONGINT_FORMAT
") switching to memory saving mode (mem: %.1fM/%.1fM)\n",
611 else if( stat->
memsavemode && memused < 0.5 * set->mem_savefac * set->limit_memory * 1024.0 * 1024.0 )
615 "(node %" SCIP_LONGINT_FORMAT
") switching to standard mode (mem: %.1fM/%.1fM)\n",
645 assert(stat !=
NULL);
677 for( v = 0; v < nvars; ++v )
688 assert(varminpseudoscore >= 0);
722 assert(varminpseudoscore >= 0.0);
733 const char* sourcefile,
735 const char* formatstr,
741 assert( sourcefile !=
NULL );
742 assert( stat !=
NULL );
745 printf(
"%d: [%s:%d] debug: ", stat->
subscipdepth, sourcefile, sourceline);
747 printf(
"[%s:%d] debug: ", sourcefile, sourceline);
749 va_start(ap, formatstr);
750 printf(formatstr, ap);
758 const char* formatstr,
764 va_start(ap, formatstr);
765 printf(formatstr, ap);
SCIP_RETCODE SCIPvisualCreate(SCIP_VISUAL **visual, SCIP_MESSAGEHDLR *messagehdlr)
SCIP_Longint ndualresolvelpiterations
SCIP_Longint nsbdivinglps
SCIP_Bool SCIPsetIsInfinity(SCIP_SET *set, SCIP_Real val)
SCIP_Longint ninfeasleaves
SCIP_Real firstlpdualbound
SCIP_Longint nnodelpiterations
SCIP_Bool SCIPsetIsLE(SCIP_SET *set, SCIP_Real val1, SCIP_Real val2)
void SCIPstatEnableVarHistory(SCIP_STAT *stat)
SCIP_Longint nlpsolsfound
void SCIPstatPrintDebugMessage(SCIP_STAT *stat, const char *sourcefile, int sourceline, const char *formatstr,...)
SCIP_Longint nsbdowndomchgs
SCIP_Longint nlpiterations
void SCIPstatComputeRootLPBestEstimate(SCIP_STAT *stat, SCIP_SET *set, SCIP_Real rootlpobjval, SCIP_VAR **vars, int nvars)
SCIP_Longint externmemestim
SCIP_Longint nnumtroublelpmsgs
SCIP_Longint ndeactivatednodes
SCIP_Longint nlexdualresolvelps
SCIP_Longint SCIPmemGetUsed(SCIP_MEM *mem)
SCIP_Longint nbarrierlpiterations
SCIP_Longint ninitconssadded
SCIP_CLOCK * conflictlptime
internal methods for clocks and timing issues
void SCIPstatUpdateMemsaveMode(SCIP_STAT *stat, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_MEM *mem)
SCIP_Real previntegralevaltime
SCIP_Real lastbranchvalue
SCIP_Longint nrootfirstlpiterations
SCIP_Longint nsbtimesiterlimhit
SCIP_BRANCHDIR lastbranchdir
void SCIPstatDisableVarHistory(SCIP_STAT *stat)
SCIP_Longint nrootstrongbranchs
SCIP_Real SCIPsetInfinity(SCIP_SET *set)
SCIP_Longint nactiveconssadded
SCIP_Real SCIPvarGetRootSol(SCIP_VAR *var)
SCIP_Longint nstrongbranchs
SCIP_RETCODE SCIPhistoryCreate(SCIP_HISTORY **history, BMS_BLKMEM *blkmem)
SCIP_Longint nrootsblpiterations
void SCIPvisualFree(SCIP_VISUAL **visual)
void SCIPstatEnableOrDisableStatClocks(SCIP_STAT *stat, SCIP_Bool enable)
SCIP_Bool SCIPsetIsFeasIntegral(SCIP_SET *set, SCIP_Real val)
SCIP_Longint ncreatednodes
void SCIPhistoryReset(SCIP_HISTORY *history)
SCIP_Real primaldualintegral
SCIP_Bool SCIPsetIsZero(SCIP_SET *set, SCIP_Real val)
enum SCIP_Retcode SCIP_RETCODE
void SCIPstatResetImplications(SCIP_STAT *stat)
SCIP_Real SCIPprobInternObjval(SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_SET *set, SCIP_Real objval)
datastructures for concurrent solvers
SCIP_CLOCK * barrierlptime
SCIP_Longint lastdispnode
SCIP_Longint nnodesaboverefbound
methods for creating output for visualization tools (VBC, BAK)
void SCIPclockEnableOrDisable(SCIP_CLOCK *clck, SCIP_Bool enable)
SCIP_Real rootlpbestestimate
#define BMSfreeMemory(ptr)
SCIP_Longint nlpbestsolsfound
SCIP_Longint nexternalsolsfound
void SCIPstatEnforceLPUpdates(SCIP_STAT *stat)
internal methods for branching and inference history
SCIP_Longint ntotalnodesmerged
SCIP_Longint nsblpiterations
SCIP_Real primalzeroittime
SCIP_Bool SCIPsetIsGE(SCIP_SET *set, SCIP_Real val1, SCIP_Real val2)
SCIP_HISTORY * glbhistorycrun
SCIP_Longint nlexduallpiterations
SCIP_Bool SCIPsetIsLT(SCIP_SET *set, SCIP_Real val1, SCIP_Real val2)
SCIP_CLOCK * strongpropclock
SCIP_RETCODE SCIPstatUpdateVarRootLPBestEstimate(SCIP_STAT *stat, SCIP_SET *set, SCIP_VAR *var, SCIP_Real oldrootpscostscore)
SCIP_Real barrierzeroittime
SCIP_Longint npssolsfound
internal methods for storing and manipulating the main problem
void SCIPmessagePrintVerbInfo(SCIP_MESSAGEHDLR *messagehdlr, SCIP_VERBLEVEL verblevel, SCIP_VERBLEVEL msgverblevel, const char *formatstr,...)
void SCIPstatResetCurrentRun(SCIP_STAT *stat, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_Bool solved)
SCIP_RETCODE SCIPstatFree(SCIP_STAT **stat, BMS_BLKMEM *blkmem)
methods for block memory pools and memory buffers
void SCIPclockReset(SCIP_CLOCK *clck)
SCIP_Longint nconflictlpiterations
SCIP_CLOCK * pseudosoltime
void SCIPstatReset(SCIP_STAT *stat, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob)
SCIP_Longint nrelaxbestsolsfound
SCIP_Longint nsbupdomchgs
SCIP_HEUR * firstprimalheur
SCIP_Longint ninitlpiterations
SCIP_LPSOLSTAT lastsblpsolstats[2]
const char * SCIPvarGetName(SCIP_VAR *var)
SCIP_Real SCIPclockGetTime(SCIP_CLOCK *clck)
SCIP_Longint nsbdivinglpiterations
SCIP_REGRESSION * regressioncandsobjval
SCIP_Longint nprimalresolvelpiterations
SCIP_HISTORY * glbhistory
SCIP_Longint nconflictlps
internal methods for global SCIP settings
SCIP_Longint nsbbestsolsfound
SCIP_Longint nduallpiterations
SCIP_Longint nbarrierzeroitlps
SCIP_Real SCIPvarGetMinPseudocostScore(SCIP_VAR *var, SCIP_STAT *stat, SCIP_SET *set, SCIP_Real solval)
SCIP_Bool SCIPsetIsEQ(SCIP_SET *set, SCIP_Real val1, SCIP_Real val2)
void SCIPstatResetPrimalDualIntegral(SCIP_STAT *stat, SCIP_SET *set, SCIP_Bool partialreset)
void SCIPstatResetDisplay(SCIP_STAT *stat)
SCIP_Longint ncreatednodesrun
SCIP_Longint nprimalresolvelps
SCIP_CLOCK * divinglptime
SCIP_Longint nprobboundchgs
SCIP_RETCODE SCIPclockCreate(SCIP_CLOCK **clck, SCIP_CLOCKTYPE clocktype)
void SCIPregressionFree(SCIP_REGRESSION **regression)
internal methods for problem variables
SCIP_Longint nisstoppedcalls
SCIP_Real lastprimalbound
SCIP_Longint ndivesetlpiterations
SCIP_Longint ndualresolvelps
SCIP_CLOCK * presolvingtime
SCIP_Longint nearlybacktracks
SCIP_Longint nlexdualresolvelpiterations
SCIP_Bool branchedunbdvar
SCIP_RETCODE SCIPstatCreate(SCIP_STAT **stat, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_MESSAGEHDLR *messagehdlr)
void SCIPclockFree(SCIP_CLOCK **clck)
SCIP_Longint nrepropcutoffs
SCIP_Longint lastdivenode
SCIP_CLOCK * relaxsoltime
SCIP_Real SCIPsetGetReferencevalue(SCIP_SET *set)
SCIP_Real SCIPstatGetPrimalDualIntegral(SCIP_STAT *stat, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob)
SCIP_CLOCK * lexduallptime
SCIP_Longint nnodesbeforefirst
SCIP_Longint nrootlpiterations
SCIP_CLOCK * strongbranchtime
#define SCIP_DEFAULT_INFINITY
void SCIPstatResetPresolving(SCIP_STAT *stat, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob)
SCIP_Longint lastconflictnode
SCIP_Longint nprimalzeroitlps
SCIP_CLOCK * primallptime
SCIP_Longint npsbestsolsfound
SCIP_VARSTATUS SCIPvarGetStatus(SCIP_VAR *var)
internal methods for problem statistics
void SCIPstatUpdatePrimalDualIntegral(SCIP_STAT *stat, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_Real upperbound, SCIP_Real lowerbound)
SCIP_Real firstprimaltime
SCIP_Longint SCIPstatGetMemExternEstim(SCIP_STAT *stat)
SCIP_Longint nrepropboundchgs
SCIP_Real firstprimalbound
SCIP_Longint ntotalinternalnodes
#define BMSallocMemory(ptr)
SCIP_Longint nactivatednodes
void SCIPregressionReset(SCIP_REGRESSION *regression)
SCIP_Longint nprimallpiterations
SCIP_Longint nsbsolsfound
SCIP_CLOCK * nodeactivationtime
SCIP_Longint ndualzeroitlps
SCIP_Bool collectvarhistory
SCIP_Longint ninternalnodes
SCIP_Real SCIPprobExternObjval(SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_SET *set, SCIP_Real objval)
SCIP_RETCODE SCIPregressionCreate(SCIP_REGRESSION **regression)
common defines and data types used in all packages of SCIP
struct BMS_BlkMem BMS_BLKMEM
SCIP_Longint nrelaxsolsfound
SCIP_Longint nprobholechgs
SCIP_Bool SCIPvarIsIntegral(SCIP_VAR *var)
void SCIPhistoryFree(SCIP_HISTORY **history, BMS_BLKMEM *blkmem)
void SCIPstatMark(SCIP_STAT *stat)
void SCIPstatDebugMessagePrint(SCIP_STAT *stat, const char *formatstr,...)
SCIP_Longint ndelayedcutoffs
SCIP_Longint totaldivesetdepth
SCIP_Longint ndivinglpiterations
memory allocation routines