23 #ifndef SRC_APPLICATION_MAZEOFDIGITSDLRERPOMPD_HPP_
24 #define SRC_APPLICATION_MAZEOFDIGITSDLRERPOMPD_HPP_
29 #include <opengl/application/OpenGLEpisodicApplication.hpp>
30 #include <opengl/visualization/WindowCollectorChart.hpp>
31 #include <opengl/visualization/WindowMazeOfDigits.hpp>
32 using namespace mic::opengl::visualization;
34 #include <mlnn/BackpropagationNeuralNetwork.hpp>
36 using namespace mic::mlnn;
37 using namespace mic::types;
43 namespace application {
71 virtual void initialize(
int argc,
char* argv[]);
76 virtual void initializePropertyDependentVariables();
81 virtual bool performSingleStep();
86 virtual void startNewEpisode();
91 virtual void finishCurrentEpisode();
164 float computeBestValueForGivenStateAndPredictions(mic::types::Position2D player_position_,
float* predictions_);
171 mic::types::MatrixXfPtr getPredictedRewardsForGivenState(mic::types::Position2D player_position_);
178 mic::types::NESWAction selectBestActionForGivenState(mic::types::Position2D player_position_);
184 std::string streamNetworkResponseTable();
mic::utils::DataCollectorPtr< std::string, float > collector_ptr
Data collector.
mic::configuration::Property< std::string > statistics_filename
Property: name of the file to which the statistics will be exported.
mic::configuration::Property< float > discount_rate
long long sum_of_iterations
std::shared_ptr< std::vector< mic::types::Position2D > > saccadic_path
Saccadic path - a sequence of consecutive agent positions.
WindowMazeOfDigits * wmd_observation
Window displaying the observation.
mic::configuration::Property< float > learning_rate
double sum_of_opt_to_episodic_lenghts
mic::configuration::Property< std::string > mlnn_filename
Property: name of the file to which the neural network will be serialized (or deserialized from)...
WindowCollectorChart< float > * w_chart
Window for displaying statistics.
SpatialExperienceMemory experiences
mic::configuration::Property< bool > mlnn_load
Property: flad denoting thether the nn should be loaded from a file (at the initialization of the tas...
Class emulating the maze of digits environment.
mic::environments::MazeOfDigits env
The maze of digits environment.
mic::configuration::Property< double > epsilon
Application of Partially Observable Deep Q-learning with Experience Reply to the maze of digits probl...
BackpropagationNeuralNetwork< float > neural_net
Multi-layer neural network used for approximation of the Qstate rewards.
WindowMazeOfDigits * wmd_environment
Window displaying the whole environment.
mic::configuration::Property< int > step_limit
size_t batch_size
Size of the batch in experience replay - set to the size of maze (width*height).
Class representing the spatial experience memory - used in memory replay. Derived from the Batch clas...
mic::configuration::Property< float > step_reward
mic::configuration::Property< bool > mlnn_save
Property: flad denoting thether the nn should be saved to a file (after every episode end)...