A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://scip.zib.de/doc/html/heur__mutation_8c_source.php below:

SCIP Doxygen Documentation: heur_mutation.c Source File

58#define HEUR_NAME "mutation" 59#define HEUR_DESC "mutation heuristic randomly fixing variables" 60#define HEUR_DISPCHAR SCIP_HEURDISPCHAR_LNS 61#define HEUR_PRIORITY -1103010 64#define HEUR_MAXDEPTH -1 65#define HEUR_TIMING SCIP_HEURTIMING_AFTERNODE 66#define HEUR_USESSUBSCIP TRUE 68#define DEFAULT_NODESOFS 500 69#define DEFAULT_MAXNODES 5000 70#define DEFAULT_MINIMPROVE 0.01 71#define DEFAULT_MINNODES 500 72#define DEFAULT_MINFIXINGRATE 0.8 73#define DEFAULT_NODESQUOT 0.1 74#define DEFAULT_NWAITINGNODES 200 75#define DEFAULT_USELPROWS FALSE 77#define DEFAULT_COPYCUTS TRUE 79#define DEFAULT_BESTSOLLIMIT -1 80#define DEFAULT_USEUCT FALSE 81#define DEFAULT_RANDSEED 19 132

assert(fixedvars !=

NULL

);

133

assert(fixedvals !=

NULL

);

138

assert(sol !=

NULL

);

141

*nfixedvars = (int)(minfixingrate * (nbinvars + nintvars));

144 if

( *nfixedvars == 0 || *nfixedvars == nbinvars + nintvars )

149

assert(*nfixedvars < nbinvars + nintvars);

151

ndiscretevars = nbinvars + nintvars;

160 for

( i = 0; i < *nfixedvars; ++i )

187

fixedvals[i] = solval;

217

assert(subscip !=

NULL

);

218

assert(heur !=

NULL

);

219

assert(fixedvars !=

NULL

);

220

assert(fixedvals !=

NULL

);

223

assert(heurdata !=

NULL

);

235

heurdata->uselprows, heurdata->copycuts, &success,

NULL

) );

237 for

( i = 0; i < nvars; i++ )

321

cutoff =

MIN

(upperbound, cutoff);

363

assert(heur !=

NULL

);

378

assert(heur !=

NULL

);

383

assert(heurdata !=

NULL

);

398

assert(heur !=

NULL

);

403

assert(heurdata !=

NULL

);

406

heurdata->usednodes = 0;

421

assert(heur !=

NULL

);

426

assert(heurdata !=

NULL

);

456

assert( heur !=

NULL

);

458

assert( result !=

NULL

);

462

assert(heurdata !=

NULL

);

484 if

( nbinvars + nintvars == 0 )

493

maxnnodes += heurdata->nodesofs;

496

nsubnodes = maxnnodes - heurdata->usednodes;

497

nsubnodes =

MIN

(nsubnodes, heurdata->maxnodes);

500 if

( nsubnodes < heurdata->minnodes )

565

assert(heur !=

NULL

);

575 "number of nodes added to the contingent of the total nodes"

,

579 "maximum number of nodes to regard in the subproblem"

,

583 "minimum number of nodes required to start the subproblem"

,

587 "number of nodes without incumbent change that heuristic should wait"

,

591 "contingent of sub problem nodes in relation to the number of nodes of the original problem"

,

595 "percentage of integer variables that have to be fixed"

,

599 "factor by which " HEUR_NAME " should at least improve the incumbent"

,

603 "should subproblem be created out of the rows in the LP rows?"

,

607 "if uselprows == FALSE, should all active cuts from cutpool be copied to constraints in subproblem?"

,

611 "limit on number of improving incumbent solutions in sub-CIP"

,

615 "should uct node selection be used at the beginning of the search?"

,

#define SCIP_CALL_ABORT(x)

SCIP_RETCODE SCIPtranslateSubSols(SCIP *scip, SCIP *subscip, SCIP_HEUR *heur, SCIP_VAR **subvars, SCIP_Bool *success, int *solindex)

SCIP_RETCODE SCIPcheckCopyLimits(SCIP *sourcescip, SCIP_Bool *success)

SCIP_RETCODE SCIPmergeVariableStatistics(SCIP *sourcescip, SCIP *targetscip, SCIP_VAR **sourcevars, SCIP_VAR **targetvars, int nvars)

SCIP_RETCODE SCIPcopyLimits(SCIP *sourcescip, SCIP *targetscip)

SCIP_Bool SCIPisStopped(SCIP *scip)

SCIP_RETCODE SCIPfree(SCIP **scip)

SCIP_RETCODE SCIPcreate(SCIP **scip)

SCIP_RETCODE SCIPsetObjlimit(SCIP *scip, SCIP_Real objlimit)

SCIP_RETCODE SCIPgetVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)

int SCIPgetNVars(SCIP *scip)

SCIP_VAR ** SCIPgetVars(SCIP *scip)

void SCIPhashmapFree(SCIP_HASHMAP **hashmap)

void * SCIPhashmapGetImage(SCIP_HASHMAP *hashmap, void *origin)

SCIP_RETCODE SCIPhashmapCreate(SCIP_HASHMAP **hashmap, BMS_BLKMEM *blkmem, int mapsize)

SCIP_Bool SCIPisParamFixed(SCIP *scip, const char *name)

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 SCIPsetLongintParam(SCIP *scip, const char *name, SCIP_Longint value)

SCIP_RETCODE SCIPaddRealParam(SCIP *scip, const char *name, const char *desc, SCIP_Real *valueptr, SCIP_Bool isadvanced, SCIP_Real defaultvalue, SCIP_Real minvalue, SCIP_Real maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)

SCIP_RETCODE SCIPsetIntParam(SCIP *scip, const char *name, int value)

SCIP_RETCODE SCIPsetSubscipsOff(SCIP *scip, SCIP_Bool quiet)

SCIP_RETCODE SCIPsetPresolving(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)

SCIP_RETCODE SCIPsetCharParam(SCIP *scip, const char *name, char value)

SCIP_RETCODE SCIPaddBoolParam(SCIP *scip, const char *name, const char *desc, SCIP_Bool *valueptr, SCIP_Bool isadvanced, SCIP_Bool defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)

SCIP_RETCODE SCIPsetBoolParam(SCIP *scip, const char *name, SCIP_Bool value)

SCIP_RETCODE SCIPsetSeparating(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)

void SCIPrandomPermuteArray(SCIP_RANDNUMGEN *randnumgen, void **array, int begin, int end)

SCIP_RETCODE SCIPincludeHeurMutation(SCIP *scip)

SCIP_BRANCHRULE * SCIPfindBranchrule(SCIP *scip, const char *name)

SCIP_RETCODE SCIPsetHeurCopy(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURCOPY((*heurcopy)))

SCIP_HEURDATA * SCIPheurGetData(SCIP_HEUR *heur)

SCIP_RETCODE SCIPincludeHeurBasic(SCIP *scip, SCIP_HEUR **heur, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, SCIP_HEURTIMING timingmask, SCIP_Bool usessubscip, SCIP_DECL_HEUREXEC((*heurexec)), SCIP_HEURDATA *heurdata)

SCIP_RETCODE SCIPsetHeurFree(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURFREE((*heurfree)))

SCIP_RETCODE SCIPsetHeurExit(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEUREXIT((*heurexit)))

SCIP_Longint SCIPheurGetNBestSolsFound(SCIP_HEUR *heur)

SCIP_Longint SCIPheurGetNCalls(SCIP_HEUR *heur)

SCIP_RETCODE SCIPsetHeurInit(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURINIT((*heurinit)))

const char * SCIPheurGetName(SCIP_HEUR *heur)

void SCIPheurSetData(SCIP_HEUR *heur, SCIP_HEURDATA *heurdata)

#define SCIPallocBufferArray(scip, ptr, num)

#define SCIPfreeBufferArray(scip, ptr)

#define SCIPfreeBlockMemory(scip, ptr)

#define SCIPallocBlockMemory(scip, ptr)

SCIP_NODESEL * SCIPfindNodesel(SCIP *scip, const char *name)

SCIP_SOL * SCIPgetBestSol(SCIP *scip)

int SCIPgetNSols(SCIP *scip)

SCIP_Bool SCIPsolIsOriginal(SCIP_SOL *sol)

SCIP_Longint SCIPgetSolNodenum(SCIP *scip, SCIP_SOL *sol)

SCIP_Real SCIPgetSolVal(SCIP *scip, SCIP_SOL *sol, SCIP_VAR *var)

SCIP_RETCODE SCIPsolve(SCIP *scip)

SCIP_Real SCIPgetUpperbound(SCIP *scip)

SCIP_Longint SCIPgetNNodes(SCIP *scip)

SCIP_RETCODE SCIPprintStatistics(SCIP *scip, FILE *file)

SCIP_Real SCIPgetLowerbound(SCIP *scip)

SCIP_RETCODE SCIPcopyLargeNeighborhoodSearch(SCIP *sourcescip, SCIP *subscip, SCIP_HASHMAP *varmap, const char *suffix, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Bool uselprows, SCIP_Bool copycuts, SCIP_Bool *success, SCIP_Bool *valid)

SCIP_Bool SCIPisLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2)

SCIP_Bool SCIPisInfinity(SCIP *scip, SCIP_Real val)

SCIP_Bool SCIPisGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2)

SCIP_Real SCIPsumepsilon(SCIP *scip)

SCIP_Bool SCIPisLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2)

SCIP_Real SCIPvarGetUbGlobal(SCIP_VAR *var)

SCIP_Real SCIPvarGetLbGlobal(SCIP_VAR *var)

void SCIPfreeRandom(SCIP *scip, SCIP_RANDNUMGEN **randnumgen)

SCIP_RETCODE SCIPcreateRandom(SCIP *scip, SCIP_RANDNUMGEN **randnumgen, unsigned int initialseed, SCIP_Bool useglobalseed)

#define DEFAULT_NODESQUOT

#define DEFAULT_NWAITINGNODES

#define DEFAULT_MINFIXINGRATE

static SCIP_RETCODE setupAndSolveSubscipMutation(SCIP *scip, SCIP *subscip, SCIP_HEUR *heur, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Longint nsubnodes, SCIP_RESULT *result)

static SCIP_RETCODE determineVariableFixings(SCIP *scip, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int *nfixedvars, SCIP_Real minfixingrate, SCIP_RANDNUMGEN *randnumgen, SCIP_Bool *success)

static SCIP_DECL_HEUREXEC(heurExecMutation)

#define DEFAULT_MINIMPROVE

#define DEFAULT_USELPROWS

#define DEFAULT_BESTSOLLIMIT

static SCIP_DECL_HEUREXIT(heurExitMutation)

static SCIP_DECL_HEURFREE(heurFreeMutation)

static SCIP_DECL_HEURINIT(heurInitMutation)

static SCIP_DECL_HEURCOPY(heurCopyMutation)

LNS heuristic that tries to randomly mutate the incumbent solution.

methods commonly used by primal heuristics

memory allocation routines

#define BMScopyMemoryArray(ptr, source, num)

BMS_BLKMEM * SCIPblkmem(SCIP *scip)

public methods for primal heuristics

public methods for message output

public data structures and miscellaneous methods

public methods for primal CIP solutions

public methods for problem variables

public methods for branching rule plugins and branching

public methods for constraint handler plugins and constraints

public methods for problem copies

public methods for primal heuristic plugins and divesets

public methods for memory management

public methods for message handling

public methods for node selector plugins

public methods for numerical tolerances

public methods for SCIP parameter handling

public methods for global and local (sub)problems

public methods for random numbers

public methods for solutions

public methods for querying solving statistics

struct SCIP_HeurData SCIP_HEURDATA

enum SCIP_Result SCIP_RESULT

enum SCIP_Retcode SCIP_RETCODE


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