Scippy

    SCIP

    Solving Constraint Integer Programs

    bandit_exp3.h File Reference

    Detailed Description

    internal methods for Exp.3 bandit algorithm

    Author
    Gregor Hendel

    Definition in file bandit_exp3.h.

    #include "blockmemshell/memory.h"
    #include "scip/def.h"
    #include "scip/type_bandit.h"
    #include "scip/type_retcode.h"
    #include "scip/type_scip.h"

    Go to the source code of this file.

    Functions

    SCIP_RETCODE SCIPincludeBanditvtableExp3 (SCIP *scip)
     
     SCIP_DECL_BANDITFREE (SCIPbanditFreeExp3)
     
     SCIP_DECL_BANDITSELECT (SCIPbanditSelectExp3)
     
     SCIP_DECL_BANDITUPDATE (SCIPbanditUpdateExp3)
     
     SCIP_DECL_BANDITRESET (SCIPbanditResetExp3)
     
    SCIP_RETCODE SCIPbanditCreateExp3 (BMS_BLKMEM *blkmem, BMS_BUFMEM *bufmem, SCIP_BANDITVTABLE *vtable, SCIP_BANDIT **exp3, SCIP_Real *priorities, SCIP_Real gammaparam, SCIP_Real beta, int nactions, unsigned int initseed)
     

    Function Documentation

    ◆ SCIPincludeBanditvtableExp3()

    SCIP_RETCODE SCIPincludeBanditvtableExp3 ( SCIP scip)

    include virtual function table for Exp.3 bandit algorithms

    Parameters
    scipSCIP data structure

    Definition at line 377 of file bandit_exp3.c.

    References BANDIT_NAME, NULL, SCIP_CALL, SCIP_OKAY, and SCIPincludeBanditvtable().

    Referenced by SCIPincludeCorePlugins().

    ◆ SCIP_DECL_BANDITFREE()

    SCIP_DECL_BANDITFREE ( SCIPbanditFreeExp3  )

    callback to free bandit specific data structures

    Definition at line 67 of file bandit_exp3.c.

    References BMSfreeBlockMemory, BMSfreeBlockMemoryArray, NULL, SCIP_OKAY, SCIPbanditGetData(), SCIPbanditGetNActions(), and SCIPbanditSetData().

    ◆ SCIP_DECL_BANDITSELECT()

    SCIP_DECL_BANDITSELECT ( SCIPbanditSelectExp3  )

    selection callback for bandit selector

    Definition at line 87 of file bandit_exp3.c.

    References NULL, SCIP_OKAY, SCIP_Real, SCIPbanditGetData(), SCIPbanditGetNActions(), SCIPbanditGetRandnumgen(), and SCIPrandomGetReal().

    ◆ SCIP_DECL_BANDITUPDATE()

    SCIP_DECL_BANDITUPDATE ( SCIPbanditUpdateExp3  )

    update callback for bandit algorithm

    Definition at line 144 of file bandit_exp3.c.

    References EPSZ, NULL, NUMTOL, SCIP_OKAY, SCIP_Real, SCIPbanditGetData(), and SCIPbanditGetNActions().

    ◆ SCIP_DECL_BANDITRESET()

    SCIP_DECL_BANDITRESET ( SCIPbanditResetExp3  )

    reset callback for bandit algorithm

    Definition at line 219 of file bandit_exp3.c.

    References NULL, NUMTOL, SCIP_OKAY, SCIP_Real, SCIPbanditGetData(), and SCIPbanditGetNActions().

    ◆ SCIPbanditCreateExp3()

    SCIP_RETCODE SCIPbanditCreateExp3 ( BMS_BLKMEM blkmem,
    BMS_BUFMEM bufmem,
    SCIP_BANDITVTABLE vtable,
    SCIP_BANDIT **  exp3,
    SCIP_Real priorities,
    SCIP_Real  gammaparam,
    SCIP_Real  beta,
    int  nactions,
    unsigned int  initseed 
    )

    direct bandit creation method for the core where no SCIP pointer is available

    Parameters
    blkmemblock memory data structure
    bufmembuffer memory
    vtablevirtual function table for callback functions of Exp.3
    exp3pointer to store bandit algorithm
    prioritiesnonnegative priorities for each action, or NULL if not needed
    gammaparamweight between uniform (gamma ~ 1) and weight driven (gamma ~ 0) probability distribution
    betagain offset between 0 and 1 at every observation
    nactionsthe positive number of actions for this bandit algorithm
    initseedinitial random seed

    Definition at line 281 of file bandit_exp3.c.

    References BMSallocBlockMemory, BMSallocBlockMemoryArray, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, and SCIPbanditCreate().

    Referenced by SCIPcreateBanditExp3().