https://github.com/maik97/wacky-rl
Custom Reinforcement Learning Agents
https://github.com/maik97/wacky-rl
a2c actor-critic deep-learning deep-reinforcement-learning dqn gym policy-gradient ppo proximal-policy-optimization reinforcement-learning rl-agents rl-algorithms sac soft-actor-critic
Last synced: 8 months ago
JSON representation
Custom Reinforcement Learning Agents
- Host: GitHub
- URL: https://github.com/maik97/wacky-rl
- Owner: maik97
- License: mit
- Created: 2021-08-04T11:31:44.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-10-25T11:44:29.000Z (over 2 years ago)
- Last Synced: 2025-09-19T13:12:04.308Z (9 months ago)
- Topics: a2c, actor-critic, deep-learning, deep-reinforcement-learning, dqn, gym, policy-gradient, ppo, proximal-policy-optimization, reinforcement-learning, rl-agents, rl-algorithms, sac, soft-actor-critic
- Language: Python
- Homepage:
- Size: 232 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Custom Reinforcement Learning Agents
**Note:** Project is currently undergoing a major overhaul.
With `wacky-rl`, you can create your own custom reinforcement learning agents.
The library is modular and lets you customize everything by subclassing and plugging in different modules.
Note that there are not many restrictions - you are free to incorporate any wacky idea you have, hence the name `wacky-rl`.
This library is the right choice if you want to create and test your ideas for custom RL agents quickly.
Personally, I use this project for experiments, research, and to expand my understanding of RL.
Check out the prebuilt [agents](https://github.com/maik97/wacky-rl/tree/master/wacky/agents/pre_built) to start;
the [documentation](https://wacky-rl.rtfd.io) will follow soon. Note that the library is based on PyTorch.
## Prebuilt Agents
- [X] DQN to RAINBOW (**Note:** Currently broken due to major overhaul.)
[[code]](https://github.com/maik97/wacky-rl/blob/master/wacky/agents/pre_built/deep_q_network.py),
[[1]](http://arxiv.org/abs/1312.5602),
[[2]](https://www.nature.com/articles/nature14236),
[[3]](http://arxiv.org/abs/1509.06461),
[[4]](https://arxiv.org/abs/1710.02298)
- [x] Double DQN
- [x] DuelingNet
- [x] PrioritizedExperienceReplay
- [x] Categorical DQN
- [ ] NoisyNet
- [ ] N-step Learning
- [x] REINFORCE
[[code]](https://github.com/maik97/wacky-rl/blob/master/wacky/agents/pre_built/reinforce.py),
[[5]](https://people.cs.umass.edu/~barto/courses/cs687/williams92simple.pdf)
- [x] A2C (**Note:** Currently broken due to major overhaul.)
[[code]](https://github.com/maik97/wacky-rl/blob/master/wacky/agents/pre_built/advantage_actor_critic.py),
[[6]](https://arxiv.org/abs/1602.01783)
- [ ] SAC
[code],
[[7]](https://arxiv.org/pdf/1801.01290.pdf),
[[8]](https://arxiv.org/pdf/1812.05905.pdf)
- [x] PPO
[[code]](https://github.com/maik97/wacky-rl/blob/master/wacky/agents/pre_built/proximal_policy_optimization.py),
[[9]](https://arxiv.org/abs/1707.06347),
[[10]](http://proceedings.mlr.press/v37/schulman15.pdf)
## Installation
```
git clone https://github.com/maik97/wacky-rl.git
cd wacky-rl
python setup.py install
```
## Dependencies
- torch
- gym
- numpy