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
Definition at line 293 of file bandit_exp3ix.c.
References assert(), BANDIT_NAME, NULL, SCIP_CALL, SCIP_OKAY, and SCIPincludeBanditvtable().
Referenced by SCIPincludeCorePlugins().