structures and methods for pseudo random number generation
Functions | |
int | SCIPgetRandomInt (int minrandval, int maxrandval, unsigned int *seedp) |
int | SCIPrandomGetInt (SCIP_RANDNUMGEN *randgen, int minrandval, int maxrandval) |
SCIP_RETCODE | SCIPrandomGetSubset (SCIP_RANDNUMGEN *randgen, void **set, int nelems, void **subset, int nsubelems) |
SCIP_Real | SCIPrandomGetReal (SCIP_RANDNUMGEN *randgen, SCIP_Real minrandval, SCIP_Real maxrandval) |
SCIP_Real | SCIPgetRandomReal (SCIP_Real minrandval, SCIP_Real maxrandval, unsigned int *seedp) |
SCIP_RETCODE | SCIPgetRandomSubset (void **set, int nelems, void **subset, int nsubelems, unsigned int randseed) |
SCIP_RETCODE | SCIPcreateRandom (SCIP *scip, SCIP_RANDNUMGEN **randnumgen, unsigned int initialseed, SCIP_Bool useglobalseed) |
void | SCIPfreeRandom (SCIP *scip, SCIP_RANDNUMGEN **randnumgen) |
void | SCIPsetRandomSeed (SCIP *scip, SCIP_RANDNUMGEN *randnumgen, unsigned int seed) |
unsigned int | SCIPinitializeRandomSeed (SCIP *scip, unsigned int initialseedvalue) |
int SCIPgetRandomInt | ( | int | minrandval, |
int | maxrandval, | ||
unsigned int * | seedp ) |
returns a random integer between minrandval and maxrandval
returns a random integer between minrandval and maxrandval
minrandval | minimal value to return |
maxrandval | maximal value to return |
seedp | pointer to seed value |
Definition at line 9991 of file misc.c.
References getRandomInt(), and i.
int SCIPrandomGetInt | ( | SCIP_RANDNUMGEN * | randnumgen, |
int | minrandval, | ||
int | maxrandval ) |
returns a random integer between minrandval and maxrandval
randnumgen | random number generator |
minrandval | minimal value to return |
maxrandval | maximal value to return |
Definition at line 10108 of file misc.c.
References assert(), i, randomGetRand(), SCIP_Longint, and SCIP_Real.
Referenced by branching(), calcPscostQuot(), calcPscostQuot(), chooseCoefVar(), chooseDoubleVar(), chooseFracVar(), chooseGuidedVar(), DECL_VARFIXINGS(), DECL_VARFIXINGS(), DECL_VARFIXINGS(), DECL_VARFIXINGS(), getRandomVariable(), getScore(), getScoreOfFarkasDiving(), optimize(), permuteStartSolution(), SCIP_DECL_BANDITSELECT(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_BRANCHEXECPS(), SCIP_DECL_DIVESETGETSCORE(), SCIP_DECL_DIVESETGETSCORE(), SCIP_DECL_DIVESETGETSCORE(), SCIP_DECL_HEUREXEC(), SCIPrandomGetSubset(), SCIPrandomPermuteArray(), SCIPrandomPermuteIntArray(), SCIPsolveConcurrent(), selectDiving(), selectInitialVariableDecomposition(), selectInitialVariableRandomly(), selectSolsRandomized(), while(), and while().
SCIP_RETCODE SCIPrandomGetSubset | ( | SCIP_RANDNUMGEN * | randnumgen, |
void ** | set, | ||
int | nelems, | ||
void ** | subset, | ||
int | nsubelems ) |
draws a random subset of disjoint elements from a given set of disjoint elements; this implementation is suited for the case that nsubelems is considerably smaller then nelems
randnumgen | random number generator |
set | original set, from which elements should be drawn |
nelems | number of elements in original set |
subset | subset in which drawn elements should be stored |
nsubelems | number of elements that should be drawn and stored |
Definition at line 10211 of file misc.c.
References assert(), BMScopyMemoryArray, i, r, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, and SCIPrandomGetInt().
SCIP_Real SCIPrandomGetReal | ( | SCIP_RANDNUMGEN * | randnumgen, |
SCIP_Real | minrandval, | ||
SCIP_Real | maxrandval ) |
returns a random real between minrandval and maxrandval
randnumgen | random number generator |
minrandval | minimal value to return |
maxrandval | maximal value to return |
Definition at line 10130 of file misc.c.
References assert(), i, randomGetRand(), and SCIP_Real.
Referenced by alnsFixMoreVariables(), alnsUnfixVariables(), applyNlobbt(), bilinboundGetScore(), computeFixingOrder(), computeScores(), computeScores(), computeVertexPolyhedralFacetLP(), createSubscip(), dataReset(), ensureStartingPoint(), estimateGradient(), execRelpscost(), generateGaussianNoise(), generateGMICuts(), getScore(), getScoreOfFarkasDiving(), handleCycle(), LNSFixMoreVariables(), LNSUnfixVariables(), performRandRounding(), sampleRandomPoints(), sampleWeighted(), SCIP_DECL_BANDITRESET(), SCIP_DECL_BANDITSELECT(), SCIP_DECL_BANDITSELECT(), SCIP_DECL_BANDITSELECT(), SCIP_DECL_BANDITSELECT(), SCIP_DECL_DIVESETGETSCORE(), SCIP_DECL_DIVESETGETSCORE(), SCIP_DECL_HEUREXEC(), SCIP_DECL_NLPISOLVE(), SCIP_DECL_READERREAD(), SCIP_DECL_SEPAEXECLP(), SCIPapplyLockFixings(), scoring(), scoring(), scoring(), selectBranchVar(), selectDiving(), setupStart(), sortVariables(), and updateBestCandidate().
returns a random real between minrandval and maxrandval
returns a random real between minrandval and maxrandval
minrandval | minimal value to return |
maxrandval | maximal value to return |
seedp | pointer to seed value |
Definition at line 10004 of file misc.c.
References getRandomReal(), and i.
SCIP_RETCODE SCIPgetRandomSubset | ( | void ** | set, |
int | nelems, | ||
void ** | subset, | ||
int | nsubelems, | ||
unsigned int | randseed ) |
draws a random subset of disjoint elements from a given set of disjoint elements; this implementation is suited for the case that nsubelems is considerably smaller then nelems
draws a random subset of disjoint elements from a given set of disjoint elements; this implementation is suited for the case that nsubelems is considerably smaller then nelems
set | original set, from which elements should be drawn |
nelems | number of elements in original set |
subset | subset in which drawn elements should be stored |
nsubelems | number of elements that should be drawn and stored |
randseed | seed value for random generator |
Definition at line 10480 of file misc.c.
References assert(), BMScopyMemoryArray, getRandomInt(), i, r, SCIP_INVALIDDATA, SCIP_OKAY, and SCIPerrorMessage.
SCIP_RETCODE SCIPcreateRandom | ( | SCIP * | scip, |
SCIP_RANDNUMGEN ** | randnumgen, | ||
unsigned int | initialseed, | ||
SCIP_Bool | useglobalseed ) |
creates and initializes a random number generator
scip | SCIP data structure |
randnumgen | random number generator |
initialseed | initial random seed |
useglobalseed | should the supplied seed be initialized by SCIP's global seed shift? |
Definition at line 56 of file scip_randnumgen.c.
References assert(), i, NULL, SCIP_CALL, SCIP_OKAY, SCIPblkmem(), SCIPinitializeRandomSeed(), and SCIPrandomCreate().
void SCIPfreeRandom | ( | SCIP * | scip, |
SCIP_RANDNUMGEN ** | randnumgen ) |
frees a random number generator
scip | SCIP data structure |
randnumgen | random number generator |
Definition at line 79 of file scip_randnumgen.c.
References assert(), NULL, SCIPblkmem(), and SCIPrandomFree().
void SCIPsetRandomSeed | ( | SCIP * | scip, |
SCIP_RANDNUMGEN * | randnumgen, | ||
unsigned int | seed ) |
initializes a random number generator with a given seed
initializes a random number generator with a given start seed
scip | SCIP data structure |
randnumgen | random number generator |
seed | new random seed |
Definition at line 94 of file scip_randnumgen.c.
References assert(), i, NULL, SCIPinitializeRandomSeed(), and SCIPrandomSetSeed().
modifies an initial seed value with the global shift of random seeds
scip | SCIP data structure |
initialseedvalue | initial seed value to be modified |
Definition at line 111 of file scip_randnumgen.c.
References assert(), i, NULL, and SCIPsetInitializeRandomSeed().
Referenced by SCIPcreateBanditEpsgreedy(), SCIPcreateBanditExp3(), SCIPcreateBanditExp3IX(), SCIPcreateBanditUcb(), SCIPcreateRandom(), SCIPresetBandit(), SCIPsetRandomSeed(), and setupAndSolveSubscipCrossover().