New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reinforcement Learning: Gaussian noise #3515
Conversation
This commit adds GaussianNoise class which is just a wrapper around arma::randi that is built to interact with reinforcement learning agents that expect an object of type Noise. As of now, there is only one reinforcement learning agent that expect a Noise instance which is DDPG Signed-off-by: Tarek <tareknaser360@gmail.com>
This commit adds 2 new tests for the GaussianNoise class: 1- GaussianNoiseTest which makes sure that the returned noise sample has the right mean and standard deviation. 2- PendulumWithGaussianDDPG which makes sure that the DDPG agent converges when supplied with a GaussianNoise object Signed-off-by: Tarek <tareknaser360@gmail.com>
This commit separates the reinforcement learning policy gradient algorithms tests from other reinforcement learning agents' tests Signed-off-by: Tarek <tareknaser360@gmail.com>
This allows for reusability in /tests/q_learning_test.cpp, /tests/policy_gradient_test.cpp and any future reinforcement learning testing file Signed-off-by: Tarek <tareknaser360@gmail.com>
Signed-off-by: Tarek <tareknaser360@gmail.com>
Signed-off-by: Tarek <tareknaser360@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for putting this together, no further comments from my side.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Second approval provided automatically after 24 hours. 👍
Thanks for another great contribution. |
This pull request introduces the
GaussianNoise
class and reorganizes the reinforcement learning test suite.Implementation Details:
GaussianNoise
Class:GaussianNoise
class provides the necessary noise object required for the DDPG algorithm.GaussianNoise
class allows for potential usage in other RL algorithms, where a noise object might be necessary for training and convergence.policy_gradient_test.cpp
file includes the tests for DDPG, TD3, and SAC.How Has This Been Tested?:
GaussianNoise
class for exploration.