All Projects → cjy1992 → interp-e2e-driving

cjy1992 / interp-e2e-driving

Licence: MIT license
Interpretable End-to-end Urban Autonomous Driving with Latent Deep Reinforcement Learning

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to interp-e2e-driving

Carla
Open-source simulator for autonomous driving research.
Stars: ✭ 7,012 (+4310.06%)
Mutual labels:  deep-reinforcement-learning, carla-simulator
reinforcement learning ppo rnd
Deep Reinforcement Learning by using Proximal Policy Optimization and Random Network Distillation in Tensorflow 2 and Pytorch with some explanation
Stars: ✭ 33 (-79.25%)
Mutual labels:  deep-reinforcement-learning
tpprl
Code and data for "Deep Reinforcement Learning of Marked Temporal Point Processes", NeurIPS 2018
Stars: ✭ 68 (-57.23%)
Mutual labels:  deep-reinforcement-learning
ml course
"Learning Machine Learning" Course, Bogotá, Colombia 2019 #LML2019
Stars: ✭ 22 (-86.16%)
Mutual labels:  deep-reinforcement-learning
jax-rl
JAX implementations of core Deep RL algorithms
Stars: ✭ 61 (-61.64%)
Mutual labels:  deep-reinforcement-learning
deep rl acrobot
TensorFlow A2C to solve Acrobot, with synchronized parallel environments
Stars: ✭ 32 (-79.87%)
Mutual labels:  deep-reinforcement-learning
dqn-obstacle-avoidance
Deep Reinforcement Learning for Fixed-Wing Flight Control with Deep Q-Network
Stars: ✭ 57 (-64.15%)
Mutual labels:  deep-reinforcement-learning
telecarla
TELECARLA: An Open Source Extension of the CARLA Simulator for Teleoperated Driving Research Using Off-the-Shelf Components
Stars: ✭ 34 (-78.62%)
Mutual labels:  carla-simulator
DRL in CV
A course on Deep Reinforcement Learning in Computer Vision. Visit Website:
Stars: ✭ 59 (-62.89%)
Mutual labels:  deep-reinforcement-learning
DI-star
An artificial intelligence platform for the StarCraft II with large-scale distributed training and grand-master agents.
Stars: ✭ 1,335 (+739.62%)
Mutual labels:  deep-reinforcement-learning
deep-blueberry
If you've always wanted to learn about deep-learning but don't know where to start, then you might have stumbled upon the right place!
Stars: ✭ 17 (-89.31%)
Mutual labels:  deep-reinforcement-learning
a3c-super-mario-pytorch
Reinforcement Learning for Super Mario Bros using A3C on GPU
Stars: ✭ 35 (-77.99%)
Mutual labels:  deep-reinforcement-learning
DeepCubeA
Code for DeepCubeA, a Deep Reinforcement Learning algorithm that can learn to solve the Rubik's cube.
Stars: ✭ 92 (-42.14%)
Mutual labels:  deep-reinforcement-learning
ActiveRagdollControllers
Research into controllers for 2d and 3d Active Ragdolls (using MujocoUnity+ml_agents)
Stars: ✭ 30 (-81.13%)
Mutual labels:  deep-reinforcement-learning
Super-Meta-MarIO
Mario AI Ensemble
Stars: ✭ 15 (-90.57%)
Mutual labels:  deep-reinforcement-learning
Rainy
☔ Deep RL agents with PyTorch☔
Stars: ✭ 39 (-75.47%)
Mutual labels:  deep-reinforcement-learning
FlashRL
No description or website provided.
Stars: ✭ 25 (-84.28%)
Mutual labels:  deep-reinforcement-learning
revisiting rainbow
Revisiting Rainbow
Stars: ✭ 71 (-55.35%)
Mutual labels:  deep-reinforcement-learning
alphastone
Using self-play, MCTS, and a deep neural network to create a hearthstone ai player
Stars: ✭ 24 (-84.91%)
Mutual labels:  deep-reinforcement-learning
awesome-machine-learning-robotics
A curated list of resources about Machine Learning for Robotics
Stars: ✭ 52 (-67.3%)
Mutual labels:  deep-reinforcement-learning

Interpretable End-to-end Autonomous Driving

[Project webpage] [Paper]

This repo contains code for Interpretable End-to-end Urban Autonomous Driving with Latent Deep Reinforcement Learning. This work introduces an end-to-end autonomous driving approach which is able to handle complex urban scenarios, and at the same time generates a semantic birdeye mask interpreting how the learned agents reasons about the environment. This repo also provides implementation of popular model-free reinforcement learning algorithms (DQN, DDPG, TD3, SAC) on the urban autonomous driving problem in CARLA simulator. All of the algorithms take raw camera and lidar sensor inputs.

System Requirements

  • Ubuntu 16.04
  • NVIDIA GPU with CUDA 10. See GPU guide for TensorFlow.

Installation

  1. Setup conda environment
$ conda create -n env_name python=3.6
$ conda activate env_name
  1. Install the gym-carla wrapper following the installation steps 2-4 in https://github.com/cjy1992/gym-carla.

  2. Clone this git repo to an appropriate folder

$ git clone https://github.com/cjy1992/interp-e2e-driving.git
  1. Enter the root folder of this repo and install the packages:
$ pip install -r requirements.txt
$ pip install -e .

Usage

  1. Enter the CARLA simulator folder and launch the CARLA server by:
$ ./CarlaUE4.sh -windowed -carla-port=2000

You can use Alt+F1 to get back your mouse control. Or you can run in non-display mode by:

$ DISPLAY= ./CarlaUE4.sh -opengl -carla-port=2000

It might take several seconds to finish launching the simulator.

  1. Enter the root folder of this repo and run:
$ ./run_train_eval.sh

It will then connect to the CARLA simulator, collect exploration data, train and evaluate the agent. Parameters are stored in params.gin. Set train_eval.agent_name from ['latent_sac', 'dqn', 'ddpg', 'td3', 'sac'] to choose the reinforcement learning algorithm.

  1. Run tensorboard --logdir logs and open http://localhost:6006 to view training and evaluation information.

Trouble Shootings

  1. If out of system memory, change the parameter replay_buffer_capacity and initial_collect_steps the function tran_eval smaller.

  2. If out of CUDA memory, set parameter model_batch_size or sequence_length of the function tran_eval smaller.

Citation

If you find this useful for your research, please use the following.

@article{chen2020interpretable,
  title={Interpretable End-to-end Urban Autonomous Driving with Latent Deep Reinforcement Learning},
  author={Chen, Jianyu and Li, Shengbo Eben and Tomizuka, Masayoshi},
  journal={arXiv preprint arXiv:2001.08726},
  year={2020}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].