This is a TensorFlow based implementation for our paper on
"Dynamic Bottleneck for Robust Self-Supervised Exploration". NeurIPS 2021
python3.6 or 3.7, tensorflow-gpu 1.x, tensorflow-probability, openAI baselines, openAI Gym
The following command should train a pure exploration agent on "Breakout" with default experiment parameters.
python run.py --env BreakoutNoFrameskip-v4
The following command should train a pure exploration agent on "Breakout" with randomBox noise.
python run.py --env BreakoutNoFrameskip-v4 --randomBoxNoise
The following command should train a pure exploration agent on "Breakout" with Gaussian noise.
python run.py --env BreakoutNoFrameskip-v4 --pixelNoise
The following command should train a pure exploration agent on "sticky Breakout" with a probability of 0.25
python run.py --env BreakoutNoFrameskip-v4 --stickyAtari
- ICM: We use the official code of "Curiosity-driven Exploration by Self-supervised Prediction, ICML 2017" and "Large-Scale Study of Curiosity-Driven Learning, ICLR 2019".
- Disagreement: We use the official code of "Self-Supervised Exploration via Disagreement, ICML 2019".
- CB: We use the official code of "Curiosity-Bottleneck: Exploration by Distilling Task-Specific Novelty, ICML 2019".