SCIP_BranchruleData
85assert(cands !=
NULL);
87assert(bestcand !=
NULL);
88assert(bestcandsol !=
NULL);
101 if( idx == firstidx )
104 SCIPdebugMsg(
scip,
"Warning: all branching candidates seem to be fixed\n");
121bestcand, bestcandsol);
125assert(idx >= 0 && idx < ncands);
127*bestcand = cands[idx];
128assert(*bestcand !=
NULL);
130 if( candssol !=
NULL)
131*bestcandsol = candssol[idx];
143assert(branchrule !=
NULL);
161assert(branchruledata !=
NULL);
179assert(branchruledata !=
NULL);
180assert(branchruledata->initseed >= 0);
184(
unsigned int)branchruledata->initseed,
TRUE) );
197assert(branchruledata !=
NULL);
214assert(branchrule !=
NULL);
217assert(result !=
NULL);
222assert(branchruledata !=
NULL);
226assert(nlpcands > 0);
230assert(bestcand >= 0);
232 SCIPdebugMsg(
scip,
" -> %d candidates, selected candidate %d: variable <%s>\n",
250 intnprioexterncands;
258assert(branchrule !=
NULL);
261assert(result !=
NULL);
266assert(branchruledata !=
NULL);
273assert(nprioexterncands > 0);
280 getRandomVariable(
scip, branchruledata, externcands, externcandssol, nprioexterncands, &bestcand, &bestcandsol);
282 if( bestcand ==
NULL)
284 SCIPerrorMessage(
"branchExecrelRandom failed to select a branching variable from %d candidates\n", nprioexterncands);
291 SCIPdebugMsg(
scip,
" -> %d candidates, selected variable <%s> with solution value %g, branching point=%g\n",
292nprioexterncands,
SCIPvarGetName(bestcand), bestcandsol, brpoint);
296 if( downchild !=
NULL|| eqchild !=
NULL|| upchild !=
NULL)
319assert(branchrule !=
NULL);
322assert(result !=
NULL);
327assert(branchruledata !=
NULL);
331assert(npseudocands > 0);
334bestcand =
SCIPrandomGetInt(branchruledata->randnumgen, 0, npseudocands-1);
335assert(bestcand >= 0);
337 SCIPdebugMsg(
scip,
" -> %d candidates, selected candidate %d: variable <%s>\n",
367assert(branchrule !=
NULL);
static SCIP_DECL_BRANCHFREE(branchFreeRandom)
#define BRANCHRULE_PRIORITY
static SCIP_DECL_BRANCHEXECEXT(branchExecextRandom)
static SCIP_DECL_BRANCHEXECLP(branchExeclpRandom)
static SCIP_DECL_BRANCHEXECPS(branchExecpsRandom)
static SCIP_DECL_BRANCHCOPY(branchCopyRandom)
static void getRandomVariable(SCIP *scip, SCIP_BRANCHRULEDATA *branchruledata, SCIP_VAR **cands, SCIP_Real *candssol, int ncands, SCIP_VAR **bestcand, SCIP_Real *bestcandsol)
static SCIP_DECL_BRANCHEXIT(branchExitRandom)
static SCIP_DECL_BRANCHINIT(branchInitRandom)
#define BRANCHRULE_MAXDEPTH
#define BRANCHRULE_MAXBOUNDDIST
random variable branching rule
SCIP_RETCODE SCIPincludeBranchruleRandom(SCIP *scip)
SCIP_RETCODE SCIPaddIntParam(SCIP *scip, const char *name, const char *desc, int *valueptr, SCIP_Bool isadvanced, int defaultvalue, int minvalue, int maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
SCIP_RETCODE SCIPsetBranchruleExecExt(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXECEXT((*branchexecext)))
SCIP_RETCODE SCIPsetBranchruleExit(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXIT((*branchexit)))
SCIP_RETCODE SCIPsetBranchruleExecLp(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXECLP((*branchexeclp)))
SCIP_RETCODE SCIPsetBranchruleCopy(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHCOPY((*branchcopy)))
SCIP_RETCODE SCIPincludeBranchruleBasic(SCIP *scip, SCIP_BRANCHRULE **branchruleptr, const char *name, const char *desc, int priority, int maxdepth, SCIP_Real maxbounddist, SCIP_BRANCHRULEDATA *branchruledata)
SCIP_RETCODE SCIPsetBranchruleExecPs(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXECPS((*branchexecps)))
const char * SCIPbranchruleGetName(SCIP_BRANCHRULE *branchrule)
SCIP_BRANCHRULEDATA * SCIPbranchruleGetData(SCIP_BRANCHRULE *branchrule)
SCIP_RETCODE SCIPsetBranchruleFree(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHFREE((*branchfree)))
SCIP_RETCODE SCIPsetBranchruleInit(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHINIT((*branchinit)))
void SCIPbranchruleSetData(SCIP_BRANCHRULE *branchrule, SCIP_BRANCHRULEDATA *branchruledata)
SCIP_RETCODE SCIPgetExternBranchCands(SCIP *scip, SCIP_VAR ***externcands, SCIP_Real **externcandssol, SCIP_Real **externcandsscore, int *nexterncands, int *nprioexterncands, int *nprioexternbins, int *nprioexternints, int *nprioexternimpls)
SCIP_Real SCIPgetBranchingPoint(SCIP *scip, SCIP_VAR *var, SCIP_Real suggestion)
SCIP_RETCODE SCIPbranchVarVal(SCIP *scip, SCIP_VAR *var, SCIP_Real val, SCIP_NODE **downchild, SCIP_NODE **eqchild, SCIP_NODE **upchild)
SCIP_RETCODE SCIPgetLPBranchCands(SCIP *scip, SCIP_VAR ***lpcands, SCIP_Real **lpcandssol, SCIP_Real **lpcandsfrac, int *nlpcands, int *npriolpcands, int *nfracimplvars)
SCIP_RETCODE SCIPbranchVar(SCIP *scip, SCIP_VAR *var, SCIP_NODE **downchild, SCIP_NODE **eqchild, SCIP_NODE **upchild)
SCIP_RETCODE SCIPgetPseudoBranchCands(SCIP *scip, SCIP_VAR ***pseudocands, int *npseudocands, int *npriopseudocands)
#define SCIPfreeBlockMemory(scip, ptr)
#define SCIPallocBlockMemory(scip, ptr)
SCIP_Bool SCIPisEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
int SCIPgetDepth(SCIP *scip)
SCIP_Bool SCIPvarIsActive(SCIP_VAR *var)
SCIP_VARSTATUS SCIPvarGetStatus(SCIP_VAR *var)
SCIP_Real SCIPvarGetUbLocal(SCIP_VAR *var)
SCIP_VAR * SCIPvarGetProbvar(SCIP_VAR *var)
const char * SCIPvarGetName(SCIP_VAR *var)
SCIP_VAR ** SCIPvarGetMultaggrVars(SCIP_VAR *var)
int SCIPvarGetMultaggrNVars(SCIP_VAR *var)
SCIP_Real SCIPvarGetLbLocal(SCIP_VAR *var)
void SCIPfreeRandom(SCIP *scip, SCIP_RANDNUMGEN **randnumgen)
int SCIPrandomGetInt(SCIP_RANDNUMGEN *randnumgen, int minrandval, int maxrandval)
SCIP_RETCODE SCIPcreateRandom(SCIP *scip, SCIP_RANDNUMGEN **randnumgen, unsigned int initialseed, SCIP_Bool useglobalseed)
public methods for branching rules
public methods for message output
public data structures and miscellaneous methods
public methods for problem variables
public methods for branching rule plugins and branching
public methods for memory management
public methods for message handling
public methods for numerical tolerances
public methods for SCIP parameter handling
public methods for random numbers
public methods for the branch-and-bound tree
struct SCIP_BranchruleData SCIP_BRANCHRULEDATA
enum SCIP_Retcode SCIP_RETCODE
@ SCIP_VARSTATUS_MULTAGGR
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