Implementation of the Dueling Deep Q-Learning network. More...
Public Member Functions | |
DuelingDQN () | |
Default constructor. More... | |
DuelingDQN (const int inputDim, const int h1, const int h2, const int outputDim, const bool isNoisy=false, InitType init=InitType(), OutputLayerType outputLayer=OutputLayerType()) | |
Construct an instance of DuelingDQN class. More... | |
DuelingDQN (FeatureNetworkType &featureNetwork, AdvantageNetworkType &advantageNetwork, ValueNetworkType &valueNetwork, const bool isNoisy=false) | |
Construct an instance of DuelingDQN class from a pre-constructed network. More... | |
DuelingDQN (const DuelingDQN &) | |
Copy constructor. More... | |
void | Backward (const arma::mat state, arma::mat &target, arma::mat &gradient) |
Perform the backward pass of the state in real batch mode. More... | |
void | Forward (const arma::mat state, arma::mat &actionValue) |
Perform the forward pass of the states in real batch mode. More... | |
void | operator= (const DuelingDQN &model) |
Copy assignment operator. More... | |
const arma::mat & | Parameters () const |
Return the Parameters. More... | |
arma::mat & | Parameters () |
Modify the Parameters. More... | |
void | Predict (const arma::mat state, arma::mat &actionValue) |
Predict the responses to a given set of predictors. More... | |
void | ResetNoise () |
Resets noise of the network, if the network is of type noisy. More... | |
void | ResetParameters () |
Resets the parameters of the network. More... | |
Implementation of the Dueling Deep Q-Learning network.
For more information, see the following.
OutputLayerType | The output layer type of the network. |
InitType | The initialization type used for the network. |
CompleteNetworkType | The type of network used for full dueling dqn. |
FeatureNetworkType | The type of network used for feature network. |
AdvantageNetworkType | The type of network used for advantage network. |
ValueNetworkType | The type of network used for value network. |
Definition at line 56 of file dueling_dqn.hpp.
|
inline |
Default constructor.
Definition at line 60 of file dueling_dqn.hpp.
References Sequential< InputDataType, OutputDataType, Residual, CustomLayers >::Add().
|
inline |
Construct an instance of DuelingDQN class.
inputDim | Number of inputs. |
h1 | Number of neurons in hiddenlayer-1. |
h2 | Number of neurons in hiddenlayer-2. |
outputDim | Number of neurons in output layer. |
isNoisy | Specifies whether the network needs to be of type noisy. |
init | Specifies the initialization rule for the network. |
outputLayer | Specifies the output layer type for network. |
Definition at line 85 of file dueling_dqn.hpp.
References Sequential< InputDataType, OutputDataType, Residual, CustomLayers >::Add(), and Concat< InputDataType, OutputDataType, CustomLayers >::Add().
|
inline |
Construct an instance of DuelingDQN class from a pre-constructed network.
featureNetwork | The feature network to be used by DuelingDQN class. |
advantageNetwork | The advantage network to be used by DuelingDQN class. |
valueNetwork | The value network to be used by DuelingDQN class. |
isNoisy | Specifies whether the network needs to be of type noisy. |
Definition at line 144 of file dueling_dqn.hpp.
References Concat< InputDataType, OutputDataType, CustomLayers >::Add().
|
inline |
Copy constructor.
Definition at line 163 of file dueling_dqn.hpp.
|
inline |
Perform the backward pass of the state in real batch mode.
state | The input state. |
target | The training target. |
gradient | The gradient. |
Definition at line 221 of file dueling_dqn.hpp.
|
inline |
Perform the forward pass of the states in real batch mode.
state | The input state. |
actionValue | Matrix to put output action values of states input. |
Definition at line 203 of file dueling_dqn.hpp.
|
inline |
Copy assignment operator.
Definition at line 167 of file dueling_dqn.hpp.
|
inline |
Return the Parameters.
Definition at line 256 of file dueling_dqn.hpp.
|
inline |
Modify the Parameters.
Definition at line 258 of file dueling_dqn.hpp.
|
inline |
Predict the responses to a given set of predictors.
The responses will reflect the output of the given output layer as returned by the output layer function.
If you want to pass in a parameter and discard the original parameter object, be sure to use std::move to avoid unnecessary copy.
state | Input state. |
actionValue | Matrix to put output action values of states input. |
Definition at line 187 of file dueling_dqn.hpp.
|
inline |
Resets noise of the network, if the network is of type noisy.
Definition at line 244 of file dueling_dqn.hpp.
|
inline |
Resets the parameters of the network.
Definition at line 236 of file dueling_dqn.hpp.