A reinforcement learning framework with the primary purpose of learning and cleaning up personal scripts.
pip install git+https://github.com/brandon-rozek/rltorch
This is a dictionary that is shared around the different components. Contains hyperparameters and other configuration values.
This component needs to support the standard openai functions reset and step.
For Tensorboard to work, you need to define a logger that will (optionally) later go into the network, runner, and agent/trainer.
Due to issues with multiprocessing, the Logger is a shared dictionary of lists that get appended to and the LogWriter writes on the main thread.
A network takes a PyTorch nn.Module, PyTorch optimizer, configuration, and the optional logger.
Takes in a network and provides methods to sync a copy of the original network.
Typtically takes in a network which it then uses to help make decisions on which actions to take.
For example, the ArgMaxSelector chooses the action that produces the highest entry in the output vector of the network.
Stores experiences during simulations of the environment. Useful for later training.
Takes in a network and performs some sort of training upon it.