For support questions regarding RL4J, please contact [email protected].
RL4J is a reinforcement learning framework integrated with deeplearning4j and released under an Apache 2.0 open-source license.
- DQN (Deep Q Learning with double DQN)
- Async RL (A3C, Async NStepQlearning)
Both for Low-Dimensional (array of info) and high-dimensional (pixels) input.
A useful blog post to introduce you to reinforcement learning, DQN and Async RL:
- mvn install
Doom is not ready yet but you can make it work if you feel adventurous with some additional steps:
- You will need vizdoom, compile the native lib and move it into the root of your project in a folder
- export MAVEN_OPTS=-Djava.library.path=THEFOLDEROFTHELIB
- mvn compile exec:java -Dexec.mainClass="YOURMAINCLASS"
- Download and unzip Malmo from here
- export MALMO_HOME=YOURMALMO_FOLDER
- export MALMO_XSD_PATH=$MALMO_HOME/Schemas
- launch malmo per instructions
- Documentation
- Serialization/Deserialization (load save)
- Compression of pixels in order to store 1M state in a reasonnable amount of memory
- Async learning: A3C and nstep learning (requires some missing features from dl4j (calc and apply gradients)).