(
SCIPcheckStage(
scip,
"SCIPcreateProb",
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE) );
141probdelorig, probtrans, probdeltrans, probinitsol, probexitsol, probcopy, probdata,
FALSE) );
185 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPcreateProbBasic",
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE) );
206 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbDelorig",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
227 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbTrans",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
248 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbDeltrans",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
270 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbInitsol",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
291 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbExitsol",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
312 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbCopy",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
341 const char* filename,
342 const char* extension
352 char* fileextension;
355assert(filename !=
NULL);
357 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPreadProb",
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
362 if( !usevartable || !useconstable )
364 SCIPerrorMessage(
"Cannot read problem if vartable or constable is disabled. Make sure parameters 'misc/usevartable' and 'misc/useconstable' are set to TRUE.\n");
374fileextension =
NULL;
375 if( extension ==
NULL)
384extension !=
NULL? extension : fileextension, &result);
403 "original problem has %d variables (%d bin, %d int, %d impl, %d cont) and %d constraints\n",
404 scip->origprob->nvars,
scip->origprob->nbinvars,
scip->origprob->nintvars,
405 scip->origprob->nimplvars,
scip->origprob->ncontvars,
406 scip->origprob->nconss);
420 for( c =
scip->origprob->nconss - 1; c >= 0; --c )
422 for(
h=
scip->set->nconshdlrs - 1;
h>= 0; --
h)
424 if(
scip->origprob->conss[c]->conshdlr ==
scip->set->conshdlrs[
h] )
435 for(
h= 0;
h<
scip->set->nconshdlrs; ++
h)
437 if( nconss[
h] > 0 )
448 if(
scip->set->random_permutationseed > 0 )
454permuteconss =
scip->set->random_permuteconss;
455permutevars =
scip->set->random_permutevars;
456permutationseed =
scip->set->random_permutationseed;
458 SCIP_CALL(
SCIPpermuteProb(
scip, (
unsigned int)permutationseed, permuteconss, permutevars, permutevars, permutevars, permutevars) );
466 "Reading Time: %.2f\n", readingtime);
469 if(
scip->set->time_reading )
475assert(i < scip->
set->nreaders);
476 SCIPerrorMessage(
"invalid result code <%d> from reader <%s> reading file <%s>\n",
492 const char* filename,
493 const char* extension,
501 char* fileextension;
507fileextension =
NULL;
512 if( filename !=
NULL&& filename[0] !=
'\0')
516file = fopen(filename,
"w");
535 if( compression !=
NULL)
543 if( extension ==
NULL&& fileextension ==
NULL)
545 SCIPmessagePrintWarning(
scip->messagehdlr,
"filename <%s> has no file extension, select default <cip> format for writing\n", filename);
555success = fclose(file);
558 SCIPerrorMessage(
"An error occurred while closing file <%s>\n", filename);
603 const char* filename,
604 const char* extension,
611 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPwriteOrigProblem",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
650 const char* filename,
651 const char* extension,
658 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPwriteTransProblem",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
700 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPfreeProb",
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE) );
703transsolorig =
scip->set->misc_transsolsorig;
713 scip->set->misc_transsolsorig = transsolorig;
720 if(
scip->set->nconcsolvers > 0 )
729 for( i =
scip->set->nactivepricers-1; i >= 0; --i )
733assert(
scip->set->nactivepricers == 0);
736 for( i =
scip->set->nactivebenders-1; i >= 0; --i )
740assert(
scip->set->nactivebenders == 0);
757 for( i = 0; i <
scip->set->nreaders; ++i )
783 unsigned intrandseed,
803 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPpermuteProb",
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
807assert(nvars == 0 || vars !=
NULL);
812assert(nconshdlrs == 0 || conshdlrs !=
NULL);
835 for( i = 0; i < nconshdlrs; ++i )
843assert(nconss == 0 || conss !=
NULL);
848 for( j = 0; j < nconss; ++j )
849conss[j]->consspos = j;
857 intnconss =
scip->origprob->nconss;
861 for( j = 0; j < nconss; ++j )
863assert(conss[j]->consspos == -1);
877 for( j = 0; j < nbinvars; ++j )
878vars[j]->probindex = j;
889 for( j = nbinvars; j < nbinvars+nintvars; ++j )
890vars[j]->probindex = j;
901 for( j = nbinvars+nintvars; j < nbinvars+nintvars+nimplvars; ++j )
902vars[j]->probindex = j;
913 for( j = nbinvars+nintvars+nimplvars; j < nvars; ++j )
914vars[j]->probindex = j;
927 "permute transformed problem using random seed %u\n", randseed);
937 "permute original problem using random seed %u\n", randseed);
968 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetProbData",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
970 switch(
scip->set->stage )
1019 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbData",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
1021 switch(
scip->set->stage )
1071 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetProbName",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
1100 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetProbName",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
1131 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPchgReoptObjective",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1133assert(nvars == 0 || vars !=
NULL);
1134assert(nvars == 0 || coefs !=
NULL);
1136origvars =
scip->origprob->vars;
1137norigvars =
scip->origprob->nvars;
1139#ifdef SCIP_MORE_DEBUG 1141 for( i = 0; i < nvars; i++ )
1150 for( i = 0; i < norigvars; i++ )
1158 for( i = 0; i <
scip->transprob->nvars; i++ )
1165 scip->origprob->objscale = 1.0;
1166 scip->origprob->objsense = objsense;
1167 scip->origprob->objoffset = 0.0;
1168 scip->origprob->objisintegral =
FALSE;
1173 scip->transprob->objscale = 1.0;
1174 scip->transprob->objsense = objsense;
1175 scip->transprob->objoffset = 0.0;
1176 scip->transprob->objisintegral =
FALSE;
1180 for( i = 0; i < nvars; ++i )
1184 SCIPerrorMessage(
"Cannot handle variable <%s> (status: %d) in SCIPchgReoptObjective().\n",
1193#ifdef SCIP_MORE_DEBUG 1195 for( i = 0; i < norigvars; i++ )
1229 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetObjsense",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
1231 return scip->origprob->objsense;
1247 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetObjsense",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1273 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddObjoffset",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1295 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddOrigObjoffset",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1297 scip->origprob->objoffset += addval;
1323 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetOrigObjoffset",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1325 return scip->origprob->objoffset;
1348 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetOrigObjscale",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1350 return scip->origprob->objscale;
1371 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetTransObjoffset",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1373 return scip->transprob->objoffset;
1394 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetTransObjscale",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1396 return scip->transprob->objscale;
1429 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetObjlimit",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
1431 switch(
scip->set->stage )
1441 SCIPerrorMessage(
"cannot relax objective limit from %.15g to %.15g in presolved stage.\n", oldobjlimit, objlimit);
1459 SCIPerrorMessage(
"cannot relax objective limit from %.15g to %.15g after problem was transformed.\n", oldobjlimit, objlimit);
1496 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetObjlimit",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1523 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPsetObjIntegral",
FALSE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
1525 switch(
scip->set->stage )
1568 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPisObjIntegral",
FALSE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
1570 switch(
scip->set->stage )
1578 if(
scip->set->nactivepricers != 0 )
1586 for(v = 0; v <
scip->origprob->nvars; ++v)
1607 if( v ==
scip->origprob->nvars )
1645 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetObjNorm",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
1647 if(
scip->lp->objsqrnormunreliable )
1649assert(!
scip->lp->objsqrnormunreliable);
1673 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddVar",
FALSE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
1687 switch(
scip->set->stage )
1692 SCIPerrorMessage(
"cannot add transformed variables to original problem\n");
1696 scip->eventfilter,
scip->eventqueue, var) );
1708 SCIPerrorMessage(
"cannot add original variables to transformed problem\n");
1713 SCIPerrorMessage(
"cannot add fixed or aggregated variables to transformed problem\n");
1717 scip->branchcand,
scip->eventfilter,
scip->eventqueue, var) );
1739 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddPricedVar",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
1755 SCIPerrorMessage(
"cannot add original variables to transformed problem\n");
1760 SCIPerrorMessage(
"cannot add fixed or aggregated variables to transformed problem\n");
1764 scip->branchcand,
scip->eventfilter,
scip->eventqueue, var) );
1797assert(var !=
NULL);
1798assert(deleted !=
NULL);
1800 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPdelVar",
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE) );
1802 switch(
scip->set->stage )
1807 SCIPerrorMessage(
"cannot remove transformed variables from original problem\n");
1823 SCIPerrorMessage(
"cannot remove original variables from transformed problem\n");
1828 SCIPerrorMessage(
"cannot remove fixed or aggregated variables from transformed problem\n");
1876 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPgetVarsData",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
1878 switch(
scip->set->stage )
1882*vars =
scip->origprob->vars;
1883 if( nvars !=
NULL)
1884*nvars =
scip->origprob->nvars;
1885 if( nbinvars !=
NULL)
1886*nbinvars =
scip->origprob->nbinvars;
1887 if( nintvars !=
NULL)
1888*nintvars =
scip->origprob->nintvars;
1889 if( nimplvars !=
NULL)
1890*nimplvars =
scip->origprob->nimplvars;
1891 if( ncontvars !=
NULL)
1892*ncontvars =
scip->origprob->ncontvars;
1905*vars =
scip->transprob->vars;
1906 if( nvars !=
NULL)
1907*nvars =
scip->transprob->nvars;
1908 if( nbinvars !=
NULL)
1909*nbinvars =
scip->transprob->nbinvars;
1910 if( nintvars !=
NULL)
1911*nintvars =
scip->transprob->nintvars;
1912 if( nimplvars !=
NULL)
1913*nimplvars =
scip->transprob->nimplvars;
1914 if( ncontvars !=
NULL)
1915*ncontvars =
scip->transprob->ncontvars;
1951 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
1953 switch(
scip->set->stage )
1956 return scip->origprob->vars;
1967 return scip->transprob->vars;
1996 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
1998 switch(
scip->set->stage )
2001 return scip->origprob->nvars;
2012 return scip->transprob->nvars;
2041 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNBinVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2043 switch(
scip->set->stage )
2046 return scip->origprob->nbinvars;
2057 return scip->transprob->nbinvars;
2086 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNIntVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2088 switch(
scip->set->stage )
2091 return scip->origprob->nintvars;
2102 return scip->transprob->nintvars;
2131 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNImplVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2133 switch(
scip->set->stage )
2136 return scip->origprob->nimplvars;
2147 return scip->transprob->nimplvars;
2176 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNContVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2178 switch(
scip->set->stage )
2181 return scip->origprob->ncontvars;
2192 return scip->transprob->ncontvars;
2224 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNObjVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2226 switch(
scip->set->stage )
2270 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetFixedVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2272 switch(
scip->set->stage )
2285 return scip->transprob->fixedvars;
2313 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNFixedVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2315 switch(
scip->set->stage )
2328 return scip->transprob->nfixedvars;
2367 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPgetOrigVarsData",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2370*vars =
scip->origprob->vars;
2371 if( nvars !=
NULL)
2372*nvars =
scip->origprob->nvars;
2373 if( nbinvars !=
NULL)
2374*nbinvars =
scip->origprob->nbinvars;
2375 if( nintvars !=
NULL)
2376*nintvars =
scip->origprob->nintvars;
2377 if( nimplvars !=
NULL)
2378*nimplvars =
scip->origprob->nimplvars;
2379 if( ncontvars !=
NULL)
2380*ncontvars =
scip->origprob->ncontvars;
2409 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetOrigVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2411 return scip->origprob->vars;
2436 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNOrigVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2438 return scip->origprob->nvars;
2463 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNOrigBinVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2465 return scip->origprob->nbinvars;
2490 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNOrigIntVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2492 return scip->origprob->nintvars;
2517 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNOrigImplVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2519 return scip->origprob->nimplvars;
2544 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNOrigContVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2546 return scip->origprob->ncontvars;
2573 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNTotalVars",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2577 switch(
scip->set->stage )
2591 return scip->stat->nvaridx;
2631 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPgetSolVarsData",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2636*vars =
scip->origprob->vars;
2637 if( nvars !=
NULL)
2638*nvars =
scip->origprob->nvars;
2639 if( nbinvars !=
NULL)
2640*nbinvars =
scip->origprob->nbinvars;
2641 if( nintvars !=
NULL)
2642*nintvars =
scip->origprob->nintvars;
2643 if( nimplvars !=
NULL)
2644*nimplvars =
scip->origprob->nimplvars;
2645 if( ncontvars !=
NULL)
2646*ncontvars =
scip->origprob->ncontvars;
2651*vars =
scip->transprob->vars;
2652 if( nvars !=
NULL)
2653*nvars =
scip->transprob->nvars;
2654 if( nbinvars !=
NULL)
2655*nbinvars =
scip->transprob->nbinvars;
2656 if( nintvars !=
NULL)
2657*nintvars =
scip->transprob->nintvars;
2658 if( nimplvars !=
NULL)
2659*nimplvars =
scip->transprob->nimplvars;
2660 if( ncontvars !=
NULL)
2661*ncontvars =
scip->transprob->ncontvars;
2692assert(name !=
NULL);
2694 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPfindVar",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2696 switch(
scip->set->stage )
2747 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPallVarsInProb",
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2749 return(
scip->set->nactivepricers == 0);
2775assert(cons !=
NULL);
2777 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddCons",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
2779 switch(
scip->set->stage )
2785 if(
scip->set->reopt_enable )
2814 scip->tree, cons) );
2848assert(cons !=
NULL);
2850 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPdelCons",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
2852 switch(
scip->set->stage )
2904assert(name !=
NULL);
2906 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPfindOrigCons",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2908 switch(
scip->set->stage )
2955assert(name !=
NULL);
2957 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPfindCons",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2959 switch(
scip->set->stage )
3005 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNUpgrConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3007 switch(
scip->set->stage )
3019 return scip->stat->npresolupgdconss;
3047 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3049 switch(
scip->set->stage )
3052 return scip->origprob->nconss;
3062 return scip->transprob->nconss;
3093 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3095 switch(
scip->set->stage )
3098 return scip->origprob->conss;
3108 return scip->transprob->conss;
3139 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNOrigConss",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
3141 return scip->origprob->nconss;
3166 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetOrigConss",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
3168 return scip->origprob->conss;
3194 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNCheckConss",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3198assert(conshdlrs !=
NULL);
3203 for( c = 0; c < nconshdlrs; ++c )
3205assert(conshdlrs[c] !=
NULL);
3241assert(cons !=
NULL);
3242assert(
scip->conflictstore !=
NULL);
3245 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddConflict",
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3247 if( iscutoffinvolved )
3267 scip->transprob,
scip->reopt, cons, conftype, iscutoffinvolved, primalbound) );
3293assert(event !=
NULL);
3297 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPclearConflictStore",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3300 scip->transprob,
scip->reopt,
scip->primal->cutoffbound) );
3331assert(cons !=
NULL);
3332assert(node !=
NULL);
3334 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddConsNode",
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3336 if( validnode !=
NULL)
3343 SCIPerrorMessage(
"cannot add constraint <%s> valid in depth %d to a node of depth %d\n",
3349 SCIPerrorMessage(
"constraint <%s> is already marked to be valid in depth %d - cannot mark it to be valid in depth %d\n",
3400assert(cons !=
NULL);
3402 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPaddConsLocal",
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3431assert(cons !=
NULL);
3433 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPdelConsNode",
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3482assert(cons !=
NULL);
3484 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPdelConsLocal",
FALSE,
TRUE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3486 switch(
scip->set->stage )
3534 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetLocalOrigEstimate",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3553 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetLocalTransEstimate",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3573 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetLocalDualbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3592 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetLocalLowerbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3611 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNodeDualbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3628 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetNodeLowerbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3652 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPupdateLocalDualbound",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3654 switch(
scip->set->stage )
3702 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPupdateLocalLowerbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3704 switch(
scip->set->stage )
3744 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPupdateNodeDualbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3768 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPupdateNodeLowerbound",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
3800 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPchgChildPrio",
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
void SCIPclockSetTime(SCIP_CLOCK *clck, SCIP_Real sec)
internal methods for clocks and timing issues
SCIP_RETCODE SCIPfreeConcurrent(SCIP *scip)
helper functions for concurrent scip solvers
SCIP_RETCODE SCIPconflictstoreCleanNewIncumbent(SCIP_CONFLICTSTORE *conflictstore, SCIP_SET *set, SCIP_STAT *stat, BMS_BLKMEM *blkmem, SCIP_PROB *transprob, SCIP_REOPT *reopt, SCIP_Real cutoffbound)
SCIP_RETCODE SCIPconflictstoreFree(SCIP_CONFLICTSTORE **conflictstore, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_REOPT *reopt)
SCIP_RETCODE SCIPconflictstoreCreate(SCIP_CONFLICTSTORE **conflictstore, SCIP_SET *set)
SCIP_RETCODE SCIPconflictstoreAddConflict(SCIP_CONFLICTSTORE *conflictstore, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_PROB *transprob, SCIP_REOPT *reopt, SCIP_CONS *cons, SCIP_CONFTYPE conftype, SCIP_Bool cutoffinvolved, SCIP_Real primalbound)
internal methods for storing conflicts
void SCIPconsMarkConflict(SCIP_CONS *cons)
void SCIPconsSetLocal(SCIP_CONS *cons, SCIP_Bool local)
SCIP_RETCODE SCIPconsDelete(SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)
internal methods for constraints and constraint handlers
SCIP_RETCODE SCIPdecompstoreCreate(SCIP_DECOMPSTORE **decompstore, BMS_BLKMEM *blkmem, int nslots)
void SCIPdecompstoreFree(SCIP_DECOMPSTORE **decompstore, BMS_BLKMEM *blkmem)
internal methods for decompositions and the decomposition store
#define SCIP_DECOMPSTORE_CAPA
SCIP_RETCODE SCIPcheckStage(SCIP *scip, const char *method, SCIP_Bool init, SCIP_Bool problem, SCIP_Bool transforming, SCIP_Bool transformed, SCIP_Bool initpresolve, SCIP_Bool presolving, SCIP_Bool exitpresolve, SCIP_Bool presolved, SCIP_Bool initsolve, SCIP_Bool solving, SCIP_Bool solved, SCIP_Bool exitsolve, SCIP_Bool freetrans, SCIP_Bool freescip)
#define SCIPdebugFreeDebugData(set)
#define SCIP_CALL_ABORT(x)
void SCIPsplitFilename(char *filename, char **path, char **name, char **extension, char **compression)
SCIP_Bool SCIPisTransformed(SCIP *scip)
int SCIPgetNObjVars(SCIP *scip)
SCIP_RETCODE SCIPaddVar(SCIP *scip, SCIP_VAR *var)
SCIP_RETCODE SCIPpermuteProb(SCIP *scip, unsigned int randseed, SCIP_Bool permuteconss, SCIP_Bool permutebinvars, SCIP_Bool permuteintvars, SCIP_Bool permuteimplvars, SCIP_Bool permutecontvars)
SCIP_RETCODE SCIPgetSolVarsData(SCIP *scip, SCIP_SOL *sol, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)
int SCIPgetNIntVars(SCIP *scip)
SCIP_RETCODE SCIPsetObjIntegral(SCIP *scip)
SCIP_RETCODE SCIPgetOrigVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)
int SCIPgetNImplVars(SCIP *scip)
const char * SCIPgetProbName(SCIP *scip)
int SCIPgetNContVars(SCIP *scip)
int SCIPgetNCheckConss(SCIP *scip)
SCIP_RETCODE SCIPaddPricedVar(SCIP *scip, SCIP_VAR *var, SCIP_Real score)
SCIP_Real SCIPgetOrigObjscale(SCIP *scip)
SCIP_RETCODE SCIPwriteOrigProblem(SCIP *scip, const char *filename, const char *extension, SCIP_Bool genericnames)
SCIP_RETCODE SCIPsetProbName(SCIP *scip, const char *name)
SCIP_RETCODE SCIPsetObjlimit(SCIP *scip, SCIP_Real objlimit)
SCIP_RETCODE SCIPsetProbDeltrans(SCIP *scip, SCIP_DECL_PROBDELTRANS((*probdeltrans)))
SCIP_Real SCIPgetTransObjoffset(SCIP *scip)
int SCIPgetNOrigBinVars(SCIP *scip)
SCIP_RETCODE SCIPgetVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)
int SCIPgetNOrigConss(SCIP *scip)
SCIP_Real SCIPgetOrigObjoffset(SCIP *scip)
SCIP_VAR ** SCIPgetOrigVars(SCIP *scip)
int SCIPgetNOrigContVars(SCIP *scip)
SCIP_RETCODE SCIPsetProbExitsol(SCIP *scip, SCIP_DECL_PROBEXITSOL((*probexitsol)))
int SCIPgetNOrigIntVars(SCIP *scip)
SCIP_CONS ** SCIPgetConss(SCIP *scip)
SCIP_RETCODE SCIPsetProbTrans(SCIP *scip, SCIP_DECL_PROBTRANS((*probtrans)))
SCIP_RETCODE SCIPsetProbDelorig(SCIP *scip, SCIP_DECL_PROBDELORIG((*probdelorig)))
int SCIPgetNOrigImplVars(SCIP *scip)
SCIP_Real SCIPgetObjlimit(SCIP *scip)
SCIP_RETCODE SCIPaddObjoffset(SCIP *scip, SCIP_Real addval)
int SCIPgetNUpgrConss(SCIP *scip)
int SCIPgetNVars(SCIP *scip)
SCIP_RETCODE SCIPaddCons(SCIP *scip, SCIP_CONS *cons)
SCIP_RETCODE SCIPchgReoptObjective(SCIP *scip, SCIP_OBJSENSE objsense, SCIP_VAR **vars, SCIP_Real *coefs, int nvars)
SCIP_CONS * SCIPfindOrigCons(SCIP *scip, const char *name)
SCIP_RETCODE SCIPdelCons(SCIP *scip, SCIP_CONS *cons)
int SCIPgetNConss(SCIP *scip)
SCIP_RETCODE SCIPfreeProb(SCIP *scip)
SCIP_PROBDATA * SCIPgetProbData(SCIP *scip)
SCIP_VAR ** SCIPgetVars(SCIP *scip)
SCIP_Real SCIPgetObjNorm(SCIP *scip)
SCIP_Bool SCIPallVarsInProb(SCIP *scip)
int SCIPgetNOrigVars(SCIP *scip)
SCIP_RETCODE SCIPsetProbInitsol(SCIP *scip, SCIP_DECL_PROBINITSOL((*probinitsol)))
SCIP_RETCODE SCIPdelVar(SCIP *scip, SCIP_VAR *var, SCIP_Bool *deleted)
SCIP_RETCODE SCIPsetObjsense(SCIP *scip, SCIP_OBJSENSE objsense)
SCIP_RETCODE SCIPaddOrigObjoffset(SCIP *scip, SCIP_Real addval)
SCIP_RETCODE SCIPcreateProbBasic(SCIP *scip, const char *name)
SCIP_CONS ** SCIPgetOrigConss(SCIP *scip)
SCIP_OBJSENSE SCIPgetObjsense(SCIP *scip)
SCIP_RETCODE SCIPwriteTransProblem(SCIP *scip, const char *filename, const char *extension, SCIP_Bool genericnames)
int SCIPgetNFixedVars(SCIP *scip)
SCIP_RETCODE SCIPcreateProb(SCIP *scip, const char *name, SCIP_DECL_PROBDELORIG((*probdelorig)), SCIP_DECL_PROBTRANS((*probtrans)), SCIP_DECL_PROBDELTRANS((*probdeltrans)), SCIP_DECL_PROBINITSOL((*probinitsol)), SCIP_DECL_PROBEXITSOL((*probexitsol)), SCIP_DECL_PROBCOPY((*probcopy)), SCIP_PROBDATA *probdata)
SCIP_RETCODE SCIPsetProbData(SCIP *scip, SCIP_PROBDATA *probdata)
int SCIPgetNBinVars(SCIP *scip)
SCIP_VAR ** SCIPgetFixedVars(SCIP *scip)
int SCIPgetNTotalVars(SCIP *scip)
SCIP_Real SCIPgetTransObjscale(SCIP *scip)
SCIP_RETCODE SCIPsetProbCopy(SCIP *scip, SCIP_DECL_PROBCOPY((*probcopy)))
SCIP_Bool SCIPisObjIntegral(SCIP *scip)
SCIP_VAR * SCIPfindVar(SCIP *scip, const char *name)
SCIP_CONS * SCIPfindCons(SCIP *scip, const char *name)
SCIP_RETCODE SCIPreadProb(SCIP *scip, const char *filename, const char *extension)
SCIP_RETCODE SCIPupdateNodeLowerbound(SCIP *scip, SCIP_NODE *node, SCIP_Real newbound)
SCIP_RETCODE SCIPupdateLocalLowerbound(SCIP *scip, SCIP_Real newbound)
SCIP_Real SCIPgetNodeDualbound(SCIP *scip, SCIP_NODE *node)
SCIP_RETCODE SCIPdelConsNode(SCIP *scip, SCIP_NODE *node, SCIP_CONS *cons)
SCIP_Real SCIPgetLocalOrigEstimate(SCIP *scip)
SCIP_RETCODE SCIPdelConsLocal(SCIP *scip, SCIP_CONS *cons)
SCIP_RETCODE SCIPaddConsNode(SCIP *scip, SCIP_NODE *node, SCIP_CONS *cons, SCIP_NODE *validnode)
SCIP_RETCODE SCIPclearConflictStore(SCIP *scip, SCIP_EVENT *event)
SCIP_Real SCIPgetLocalLowerbound(SCIP *scip)
SCIP_RETCODE SCIPupdateLocalDualbound(SCIP *scip, SCIP_Real newbound)
SCIP_RETCODE SCIPaddConflict(SCIP *scip, SCIP_NODE *node, SCIP_CONS *cons, SCIP_NODE *validnode, SCIP_CONFTYPE conftype, SCIP_Bool iscutoffinvolved)
SCIP_RETCODE SCIPchgChildPrio(SCIP *scip, SCIP_NODE *child, SCIP_Real priority)
SCIP_RETCODE SCIPupdateNodeDualbound(SCIP *scip, SCIP_NODE *node, SCIP_Real newbound)
SCIP_Real SCIPgetLocalDualbound(SCIP *scip)
SCIP_RETCODE SCIPaddConsLocal(SCIP *scip, SCIP_CONS *cons, SCIP_NODE *validnode)
SCIP_Real SCIPgetNodeLowerbound(SCIP *scip, SCIP_NODE *node)
SCIP_Real SCIPgetLocalTransEstimate(SCIP *scip)
SCIP_RETCODE SCIPgetBoolParam(SCIP *scip, const char *name, SCIP_Bool *value)
void SCIPrandomPermuteArray(SCIP_RANDNUMGEN *randnumgen, void **array, int begin, int end)
int SCIPconshdlrGetNCheckConss(SCIP_CONSHDLR *conshdlr)
int SCIPgetNConshdlrs(SCIP *scip)
const char * SCIPconshdlrGetName(SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNActiveConss(SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetConss(SCIP_CONSHDLR *conshdlr)
SCIP_CONSHDLR ** SCIPgetConshdlrs(SCIP *scip)
SCIP_Bool SCIPconsIsGlobal(SCIP_CONS *cons)
const char * SCIPconsGetName(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsAdded(SCIP_CONS *cons)
SCIP_RETCODE SCIPreleaseCons(SCIP *scip, SCIP_CONS **cons)
SCIP_EVENTTYPE SCIPeventGetType(SCIP_EVENT *event)
SCIP_SOL * SCIPeventGetSol(SCIP_EVENT *event)
#define SCIPallocClearBufferArray(scip, ptr, num)
#define SCIPfreeBufferArray(scip, ptr)
#define SCIPduplicateBufferArray(scip, ptr, source, num)
SCIP_NODETYPE SCIPnodeGetType(SCIP_NODE *node)
SCIP_Real SCIPnodeGetLowerbound(SCIP_NODE *node)
SCIP_Real SCIPnodeGetEstimate(SCIP_NODE *node)
int SCIPnodeGetDepth(SCIP_NODE *node)
const char * SCIPreaderGetName(SCIP_READER *reader)
SCIP_RETCODE SCIPenableReoptimization(SCIP *scip, SCIP_Bool enable)
SCIP_Real SCIPtransformObj(SCIP *scip, SCIP_Real obj)
SCIP_Bool SCIPsolIsOriginal(SCIP_SOL *sol)
SCIP_RETCODE SCIPfreeTransform(SCIP *scip)
SCIP_RETCODE SCIPprintTransProblem(SCIP *scip, FILE *file, const char *extension, SCIP_Bool genericnames)
SCIP_RETCODE SCIPprintOrigProblem(SCIP *scip, FILE *file, const char *extension, SCIP_Bool genericnames)
SCIP_Real SCIPgetCutoffbound(SCIP *scip)
SCIP_Real SCIPgetReadingTime(SCIP *scip)
SCIP_Real SCIPinfinity(SCIP *scip)
SCIP_Bool SCIPisIntegral(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisPositive(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisZero(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
SCIP_VARSTATUS SCIPvarGetStatus(SCIP_VAR *var)
SCIP_Real SCIPvarGetObj(SCIP_VAR *var)
SCIP_VARTYPE SCIPvarGetType(SCIP_VAR *var)
int SCIPvarGetProbindex(SCIP_VAR *var)
const char * SCIPvarGetName(SCIP_VAR *var)
SCIP_VAR * SCIPvarGetNegationVar(SCIP_VAR *var)
SCIP_Bool SCIPvarIsOriginal(SCIP_VAR *var)
SCIP_RETCODE SCIPchgVarObj(SCIP *scip, SCIP_VAR *var, SCIP_Real newobj)
SCIP_RETCODE SCIPaddVarObj(SCIP *scip, SCIP_VAR *var, SCIP_Real addobj)
void SCIPfreeRandom(SCIP *scip, SCIP_RANDNUMGEN **randnumgen)
SCIP_RETCODE SCIPcreateRandom(SCIP *scip, SCIP_RANDNUMGEN **randnumgen, unsigned int initialseed, SCIP_Bool useglobalseed)
void SCIPprintSysError(const char *message)
void SCIPlpRecalculateObjSqrNorm(SCIP_SET *set, SCIP_LP *lp)
SCIP_Real SCIPlpGetObjNorm(SCIP_LP *lp)
internal methods for LP management
memory allocation routines
#define BMSduplicateMemoryArray(ptr, source, num)
#define BMSfreeMemoryArray(ptr)
void SCIPmessagePrintWarning(SCIP_MESSAGEHDLR *messagehdlr, const char *formatstr,...)
void SCIPmessagePrintVerbInfo(SCIP_MESSAGEHDLR *messagehdlr, SCIP_VERBLEVEL verblevel, SCIP_VERBLEVEL msgverblevel, const char *formatstr,...)
BMS_BLKMEM * SCIPblkmem(SCIP *scip)
SCIP_RETCODE SCIPpricerDeactivate(SCIP_PRICER *pricer, SCIP_SET *set)
internal methods for variable pricers
SCIP_RETCODE SCIPpricestoreAddVar(SCIP_PRICESTORE *pricestore, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_EVENTQUEUE *eventqueue, SCIP_LP *lp, SCIP_VAR *var, SCIP_Real score, SCIP_Bool root)
internal methods for storing priced variables
void SCIPprimalAddOrigObjoffset(SCIP_PRIMAL *primal, SCIP_SET *set, SCIP_Real addval)
SCIP_RETCODE SCIPprimalFree(SCIP_PRIMAL **primal, BMS_BLKMEM *blkmem)
SCIP_RETCODE SCIPprimalCreate(SCIP_PRIMAL **primal)
SCIP_RETCODE SCIPprimalUpdateObjoffset(SCIP_PRIMAL *primal, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_EVENTFILTER *eventfilter, SCIP_EVENTQUEUE *eventqueue, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_TREE *tree, SCIP_REOPT *reopt, SCIP_LP *lp)
SCIP_RETCODE SCIPprimalUpdateObjlimit(SCIP_PRIMAL *primal, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_EVENTFILTER *eventfilter, SCIP_EVENTQUEUE *eventqueue, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_TREE *tree, SCIP_REOPT *reopt, SCIP_LP *lp)
internal methods for collecting primal CIP solutions and primal informations
SCIP_Bool SCIPprobIsPermuted(SCIP_PROB *prob)
void SCIPprobSetTrans(SCIP_PROB *prob, SCIP_DECL_PROBTRANS((*probtrans)))
void SCIPprobSetInitsol(SCIP_PROB *prob, SCIP_DECL_PROBINITSOL((*probinitsol)))
void SCIPprobSetObjIntegral(SCIP_PROB *prob)
SCIP_RETCODE SCIPprobAddVar(SCIP_PROB *prob, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_LP *lp, SCIP_BRANCHCAND *branchcand, SCIP_EVENTFILTER *eventfilter, SCIP_EVENTQUEUE *eventqueue, SCIP_VAR *var)
const char * SCIPprobGetName(SCIP_PROB *prob)
int SCIPprobGetNObjVars(SCIP_PROB *prob, SCIP_SET *set)
SCIP_RETCODE SCIPprobPerformVarDeletions(SCIP_PROB *prob, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_EVENTQUEUE *eventqueue, SCIP_CLIQUETABLE *cliquetable, SCIP_LP *lp, SCIP_BRANCHCAND *branchcand)
void SCIPprobSetExitsol(SCIP_PROB *prob, SCIP_DECL_PROBEXITSOL((*probexitsol)))
SCIP_Real SCIPprobGetObjlim(SCIP_PROB *prob, SCIP_SET *set)
void SCIPprobUpdateDualbound(SCIP_PROB *prob, SCIP_Real newbound)
SCIP_RETCODE SCIPprobSetName(SCIP_PROB *prob, const char *name)
void SCIPprobSetDeltrans(SCIP_PROB *prob, SCIP_DECL_PROBDELTRANS((*probdeltrans)))
void SCIPprobSetData(SCIP_PROB *prob, SCIP_PROBDATA *probdata)
void SCIPprobAddObjoffset(SCIP_PROB *prob, SCIP_Real addval)
void SCIPprobSetCopy(SCIP_PROB *prob, SCIP_DECL_PROBCOPY((*probcopy)))
SCIP_VAR * SCIPprobFindVar(SCIP_PROB *prob, const char *name)
SCIP_RETCODE SCIPprobCreate(SCIP_PROB **prob, BMS_BLKMEM *blkmem, SCIP_SET *set, const char *name, SCIP_DECL_PROBDELORIG((*probdelorig)), SCIP_DECL_PROBTRANS((*probtrans)), SCIP_DECL_PROBDELTRANS((*probdeltrans)), SCIP_DECL_PROBINITSOL((*probinitsol)), SCIP_DECL_PROBEXITSOL((*probexitsol)), SCIP_DECL_PROBCOPY((*probcopy)), SCIP_PROBDATA *probdata, SCIP_Bool transformed)
void SCIPprobSetObjlim(SCIP_PROB *prob, SCIP_Real objlim)
SCIP_RETCODE SCIPprobDelVar(SCIP_PROB *prob, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_EVENTQUEUE *eventqueue, SCIP_VAR *var, SCIP_Bool *deleted)
SCIP_Bool SCIPprobIsObjIntegral(SCIP_PROB *prob)
SCIP_CONS * SCIPprobFindCons(SCIP_PROB *prob, const char *name)
void SCIPprobMarkPermuted(SCIP_PROB *prob)
SCIP_PROBDATA * SCIPprobGetData(SCIP_PROB *prob)
SCIP_Real SCIPprobExternObjval(SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_SET *set, SCIP_Real objval)
SCIP_RETCODE SCIPprobFree(SCIP_PROB **prob, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_EVENTQUEUE *eventqueue, SCIP_LP *lp)
SCIP_RETCODE SCIPprobAddCons(SCIP_PROB *prob, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)
void SCIPprobSetDelorig(SCIP_PROB *prob, SCIP_DECL_PROBDELORIG((*probdelorig)))
void SCIPprobSetObjsense(SCIP_PROB *prob, SCIP_OBJSENSE objsense)
SCIP_Real SCIPprobInternObjval(SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_SET *set, SCIP_Real objval)
internal methods for storing and manipulating the main problem
public methods for managing constraints
public methods for managing events
public methods for message output
public data structures and miscellaneous methods
public methods for input file readers
public methods for primal CIP solutions
public methods for branch and bound tree
public methods for problem variables
SCIP_RETCODE SCIPreaderRead(SCIP_READER *reader, SCIP_SET *set, const char *filename, const char *extension, SCIP_RESULT *result)
SCIP_RETCODE SCIPreaderResetReadingTime(SCIP_READER *reader)
internal methods for input file readers
SCIP_RETCODE SCIPreoptAddCons(SCIP_REOPT *reopt, SCIP_SET *set, BMS_BLKMEM *blkmem, SCIP_CONS *cons)
SCIP_RETCODE SCIPreoptFree(SCIP_REOPT **reopt, SCIP_SET *set, SCIP_PRIMAL *origprimal, BMS_BLKMEM *blkmem)
data structures and methods for collecting reoptimization information
public methods for constraint handler plugins and constraints
public methods for memory management
public methods for message handling
public methods for numerical tolerances
public methods for SCIP parameter handling
static SCIP_RETCODE writeProblem(SCIP *scip, const char *filename, const char *extension, SCIP_Bool transformed, SCIP_Bool genericnames)
public methods for global and local (sub)problems
public methods for random numbers
public methods for solutions
public methods for querying solving statistics
public methods for timing
public methods for SCIP variables
SCIP_RETCODE SCIPsetFreeConcsolvers(SCIP_SET *set)
internal methods for global SCIP settings
SCIP_RETCODE SCIPbendersDeactivate(SCIP_BENDERS *benders, SCIP_SET *set)
internal methods for Benders' decomposition
SCIP_RETCODE SCIPstatFree(SCIP_STAT **stat, BMS_BLKMEM *blkmem)
SCIP_RETCODE SCIPstatCreate(SCIP_STAT **stat, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_MESSAGEHDLR *messagehdlr)
internal methods for problem statistics
SCIP_CONSSETCHG * addconssetchg
datastructures for constraints and constraint handlers
data structures for LP management
datastructures for block memory pools and memory buffers
datastructures for collecting primal CIP solutions and primal informations
datastructures for storing and manipulating the main problem
SCIP main data structure.
datastructures for global SCIP settings
datastructures for problem statistics
datastructures for problem variables
SCIP_RETCODE SCIPsyncstoreExit(SCIP_SYNCSTORE *syncstore)
SCIP_Bool SCIPsyncstoreIsInitialized(SCIP_SYNCSTORE *syncstore)
the function declarations for the synchronization store
void SCIPnodeUpdateLowerbound(SCIP_NODE *node, SCIP_STAT *stat, SCIP_SET *set, SCIP_TREE *tree, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_Real newbound)
SCIP_RETCODE SCIPnodeCutoff(SCIP_NODE *node, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_REOPT *reopt, SCIP_LP *lp, BMS_BLKMEM *blkmem)
SCIP_RETCODE SCIPnodeDelCons(SCIP_NODE *node, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_CONS *cons)
SCIP_NODE * SCIPtreeGetCurrentNode(SCIP_TREE *tree)
int SCIPtreeGetEffectiveRootDepth(SCIP_TREE *tree)
SCIP_RETCODE SCIPnodeAddCons(SCIP_NODE *node, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_CONS *cons)
void SCIPchildChgNodeselPrio(SCIP_TREE *tree, SCIP_NODE *child, SCIP_Real priority)
int SCIPtreeGetCurrentDepth(SCIP_TREE *tree)
internal methods for branch and bound tree
@ SCIP_CONFTYPE_BNDEXCEEDING
enum SCIP_ConflictType SCIP_CONFTYPE
#define SCIP_EVENTTYPE_BESTSOLFOUND
#define SCIP_DECL_PROBCOPY(x)
#define SCIP_DECL_PROBDELTRANS(x)
#define SCIP_DECL_PROBEXITSOL(x)
struct SCIP_ProbData SCIP_PROBDATA
#define SCIP_DECL_PROBDELORIG(x)
#define SCIP_DECL_PROBTRANS(x)
#define SCIP_DECL_PROBINITSOL(x)
enum SCIP_Objsense SCIP_OBJSENSE
enum SCIP_Result SCIP_RESULT
enum SCIP_Retcode SCIP_RETCODE
@ SCIP_STAGE_INITPRESOLVE
@ SCIP_STAGE_EXITPRESOLVE
@ SCIP_STAGE_TRANSFORMING
@ SCIP_NODETYPE_PROBINGNODE
@ SCIP_VARTYPE_CONTINUOUS
@ SCIP_VARSTATUS_ORIGINAL
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4