Deep Reinforcement Learning for Robot Locomotion
- Jack Shi (junyaoshi)
- Tony Dear (tonydear)
- Python ≥ 3.5
- Keras 2.2.4
- matplotlib 3.1.0
If python requirement is not met, a virtual environment can be installed using the follwoing method on terminal:
conda create -n py37 python=3.7 anaconda
conda activate py37
pip install keras=2.2.4
pip install matplotlib=3.1.0
DiscreteRL
: different versions of implementation of discrete RL agentDQN
: most up-to-date implementation of DQN agentDQN_agent.py
: a general-purpose class that can be easily used to train different kinds of snake robots.DQN_runner.py
: a simple interface for running a single trial of DQN with customized parametersDQN_multi_runner.py
: a simple interface for running a multiple trials of DQN with customized parameters
DQN_old
: some old implementation of DQN, please ignoreMathematica Notebooks
: used for generating animation and plotsRobots
: different types of snake robot models.DiscreteDeepRobots.py
,ContinuousDeepRobot.py
: wheeled snake robot implementationContinuousSwimmingBot.py
: swimming snake robot implementation
Clone this repository into some local directory local_dir
on the local machine.
First, open terminal and change directory:
cd local_dir
Clone this repository in the local directory:
git clone https://github.com/junyaoshi/DeepRobots.git
Then, change directory to DeepRobots directory:
cd DeepRobots
Make sure the system path is set up properly so that all library and module imports can be successfully performed.
See DQN/DQN_runner.py
for example.
To perform a single DQN trial, run:
python DQN/DQN_runner.py
To perform a multiple different trials of DQN, run:
python DQN/DQN_multi_runner.py
To perform DQN physical experiments with the physical robot, first change directory to DeepRobots directory:
cd DeepRobots
Then run:
python DQN/DQN_physical_runner.py