methods for Exp.3-IX bandit selection
Definition in file bandit_exp3ix.c.
#include "scip/bandit.h"
#include "scip/bandit_exp3ix.h"
#include "scip/pub_bandit.h"
#include "scip/pub_message.h"
#include "scip/pub_misc.h"
#include "scip/scip_bandit.h"
#include "scip/scip_mem.h"
#include "scip/scip_randnumgen.h"
Go to the source code of this file.
Macros | |
#define | BANDIT_NAME "exp3ix" |
Functions | |
SCIP_DECL_BANDITFREE (SCIPbanditFreeExp3IX) | |
SCIP_DECL_BANDITSELECT (SCIPbanditSelectExp3IX) | |
static SCIP_Real | SCIPcomputeGamma (int nactions, int t) |
SCIP_DECL_BANDITUPDATE (SCIPbanditUpdateExp3IX) | |
SCIP_DECL_BANDITRESET (SCIPbanditResetExp3IX) | |
SCIP_RETCODE | SCIPbanditCreateExp3IX (BMS_BLKMEM *blkmem, BMS_BUFMEM *bufmem, SCIP_BANDITVTABLE *vtable, SCIP_BANDIT **exp3ix, SCIP_Real *priorities, int nactions, unsigned int initseed) |
SCIP_RETCODE | SCIPcreateBanditExp3IX (SCIP *scip, SCIP_BANDIT **exp3ix, SCIP_Real *priorities, int nactions, unsigned int initseed) |
SCIP_Real | SCIPgetProbabilityExp3IX (SCIP_BANDIT *exp3ix, int action) |
SCIP_RETCODE | SCIPincludeBanditvtableExp3IX (SCIP *scip) |
#define BANDIT_NAME "exp3ix" |
Definition at line 42 of file bandit_exp3ix.c.
SCIP_DECL_BANDITFREE | ( | SCIPbanditFreeExp3IX | ) |
callback to free bandit specific data structures
Definition at line 65 of file bandit_exp3ix.c.
References assert(), BMSfreeBlockMemory, BMSfreeBlockMemoryArray, NULL, SCIP_OKAY, SCIPbanditGetData(), SCIPbanditGetNActions(), and SCIPbanditSetData().
SCIP_DECL_BANDITSELECT | ( | SCIPbanditSelectExp3IX | ) |
selection callback for bandit selector
Definition at line 85 of file bandit_exp3ix.c.
References assert(), i, NULL, SCIP_OKAY, SCIP_Real, SCIPbanditGetData(), SCIPbanditGetNActions(), SCIPbanditGetRandnumgen(), SCIPrandomGetReal(), and selection.
|
static |
compute gamma_t
nactions | the positive number of actions for this bandit algorithm |
t | current iteration |
Definition at line 139 of file bandit_exp3ix.c.
References SCIP_Real.
Referenced by SCIP_DECL_BANDITUPDATE().
SCIP_DECL_BANDITUPDATE | ( | SCIPbanditUpdateExp3IX | ) |
update callback for bandit algorithm
Definition at line 148 of file bandit_exp3ix.c.
References assert(), NULL, SCIP_OKAY, SCIP_Real, SCIPbanditGetData(), SCIPbanditGetNActions(), SCIPcomputeGamma(), and selection.
SCIP_DECL_BANDITRESET | ( | SCIPbanditResetExp3IX | ) |
reset callback for bandit algorithm
Definition at line 196 of file bandit_exp3ix.c.
References assert(), i, NULL, SCIP_OKAY, SCIP_Real, SCIPbanditGetData(), and SCIPbanditGetNActions().
SCIP_RETCODE SCIPbanditCreateExp3IX | ( | BMS_BLKMEM * | blkmem, |
BMS_BUFMEM * | bufmem, | ||
SCIP_BANDITVTABLE * | vtable, | ||
SCIP_BANDIT ** | exp3ix, | ||
SCIP_Real * | priorities, | ||
int | nactions, | ||
unsigned int | initseed ) |
direct bandit creation method for the core where no SCIP pointer is available
blkmem | block memory data structure |
bufmem | buffer memory |
vtable | virtual function table for callback functions of Exp.3-IX |
exp3ix | pointer to store bandit algorithm |
priorities | nonnegative priorities for each action, or NULL if not needed |
nactions | the positive number of actions for this bandit algorithm |
initseed | initial random seed |
Definition at line 230 of file bandit_exp3ix.c.
References assert(), BMSallocBlockMemory, BMSallocBlockMemoryArray, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIP_Real, and SCIPbanditCreate().
Referenced by SCIPcreateBanditExp3IX().
SCIP_RETCODE SCIPincludeBanditvtableExp3IX | ( | SCIP * | scip | ) |
include virtual function table for Exp.3-IX bandit algorithms
scip | SCIP data structure |
Definition at line 293 of file bandit_exp3ix.c.
References assert(), BANDIT_NAME, NULL, SCIP_CALL, SCIP_OKAY, and SCIPincludeBanditvtable().
Referenced by SCIPincludeCorePlugins().