Metadata-Version: 2.1
Name: jaxagents
Version: 0.1.8
Summary: JAX implementation of Reinforcement Learning agents
License: { file = "LICENSE" }
Author: Antonis Mavritsakis (amavrits)
Author-email: amavrits@gmail.com
Requires-Python: >=3.10,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: chex (>=0.1.86,<0.2.0)
Requires-Dist: distrax (>=0.1.5,<0.2.0)
Requires-Dist: flashbax (>=0.1.2,<0.2.0)
Requires-Dist: flax (>=0.8.4,<0.9.0)
Requires-Dist: gymnax (>=0.0.6,<0.0.7)
Requires-Dist: jax (>=0.4.28,<0.5.0)
Requires-Dist: jax-tqdm (>=0.2.1,<0.3.0)
Requires-Dist: jaxtyping (>=0.2.29,<0.3.0)
Requires-Dist: optax (>=0.2.2,<0.3.0)
Description-Content-Type: text/markdown

# Jaxagents

Jaxagents is a Python implementation of Reinforcement Learning agents built upon JAX. The PyPI page of the project can be found [here](https://pypi.org/project/jaxagents/).

## Installation
You can install the latest version of jaxagents from PyPI via:

```sh
pip install jaxagents
```

## Content

So far, the project includes the following agents:
* Q-learning:
  * Deep Q Networks (DQN)
  * Double Deep Q Networks (DDQN) 
  * Categorical Deep Q Networks (often known as C51)
  * Quantile Regression Deep Q Networks (QRDQN) 
* Policy gradient:
  * REINFORCE
  * PPO with clipping and GAE

## Background

Research and development in Reinforcement Learning can be computationally cumbersome. Utilizing JAX's high computational performance, Jaxagents provides a framework for applying and developing Reinforcement Learning agents that offers benefits in:
* computational speed
* easy control of random number generation
* hyperparameter optimization (via parallelized calculations)

