std1.0.0-beta-7 SafeC docs

std :: ml::rl

Struct std::DqnConfig

#include <std/ml/rl.h> source

struct DqnConfig {
    unsigned long hidden;
    unsigned long hiddenLayers;
    float gamma;
    float lr;
    unsigned long batchSize;
    unsigned long bufferSize;
    unsigned long learningStarts;
    unsigned long trainEvery;
    unsigned long targetEvery;
    float tau;
    float epsStart;
    float epsEnd;
    unsigned long epsDecaySteps;
    int doubleDqn;
    float huberDelta;
    float clipNorm;
    unsigned long seed;
}

Fields

§unsigned long hiddensource
§unsigned long hiddenLayerssource
§float gammasource
§float lrsource
§unsigned long batchSizesource
§unsigned long bufferSizesource
§unsigned long learningStartssource

transitions before the first update

§unsigned long trainEverysource

environment steps per gradient step

§unsigned long targetEverysource

hard target copy every N gradient steps; 0: soft updates

§float tausource

soft target update rate (targetEvery 0)

§float epsStartsource
§float epsEndsource
§unsigned long epsDecayStepssource

linear decay over this many steps

§int doubleDqnsource

van Hasselt et al. 2016: online net picks a', target net scores it

§float huberDeltasource
§float clipNormsource

gradient norm clip, 0 = off

§unsigned long seedsource

Methods

§static struct DqnConfig default()source · definition

2 hidden layers of 64 (ReLU), gamma 0.99, Adam lr 5e-4, batch 64, buffer 50000, learning after 1000 steps, train every step, soft target updates (tau 0.005), epsilon 1 -> 0.05 over 10000 steps, Double DQN, Huber 1, clip 10.