All Projects → vita-epfl → Crowdnav

vita-epfl / Crowdnav

Licence: mit
[ICRA19] Crowd-aware Robot Navigation with Attention-based Deep Reinforcement Learning

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Crowdnav

Pytorch Drl
PyTorch implementations of various Deep Reinforcement Learning (DRL) algorithms for both single agent and multi-agent.
Stars: ✭ 233 (-8.63%)
Mutual labels:  reinforcement-learning
Train Robot Arm From Scratch
Build environment and train a robot arm from scratch (Reinforcement Learning)
Stars: ✭ 242 (-5.1%)
Mutual labels:  reinforcement-learning
Reinforcement Learning
Minimal and Clean Reinforcement Learning Examples
Stars: ✭ 2,863 (+1022.75%)
Mutual labels:  reinforcement-learning
Rl learn
我的强化学习笔记和学习材料📖 still updating ... ...
Stars: ✭ 234 (-8.24%)
Mutual labels:  reinforcement-learning
Roboleague
A car soccer environment inspired by Rocket League for deep reinforcement learning experiments in an adversarial self-play setting.
Stars: ✭ 236 (-7.45%)
Mutual labels:  reinforcement-learning
Open spiel
OpenSpiel is a collection of environments and algorithms for research in general reinforcement learning and search/planning in games.
Stars: ✭ 2,991 (+1072.94%)
Mutual labels:  reinforcement-learning
Nn
🧑‍🏫 50! Implementations/tutorials of deep learning papers with side-by-side notes 📝; including transformers (original, xl, switch, feedback, vit, ...), optimizers (adam, adabelief, ...), gans(cyclegan, stylegan2, ...), 🎮 reinforcement learning (ppo, dqn), capsnet, distillation, ... 🧠
Stars: ✭ 5,720 (+2143.14%)
Mutual labels:  reinforcement-learning
Pytorch Ddpg Naf
Implementation of algorithms for continuous control (DDPG and NAF).
Stars: ✭ 254 (-0.39%)
Mutual labels:  reinforcement-learning
Learningx
Deep & Classical Reinforcement Learning + Machine Learning Examples in Python
Stars: ✭ 241 (-5.49%)
Mutual labels:  reinforcement-learning
Ml Games
Machine learning games. Use combination of genetic algorithms and neural networks to control the behaviour of in-game objects.
Stars: ✭ 247 (-3.14%)
Mutual labels:  reinforcement-learning
Aleph star
Reinforcement learning with A* and a deep heuristic
Stars: ✭ 235 (-7.84%)
Mutual labels:  reinforcement-learning
Supergo
A student implementation of Alpha Go Zero
Stars: ✭ 236 (-7.45%)
Mutual labels:  reinforcement-learning
Football
Check out the new game server:
Stars: ✭ 2,843 (+1014.9%)
Mutual labels:  reinforcement-learning
Awesome Real World Rl
Great resources for making Reinforcement Learning work in Real Life situations. Papers,projects and more.
Stars: ✭ 234 (-8.24%)
Mutual labels:  reinforcement-learning
Awesome Tensorlayer
A curated list of dedicated resources and applications
Stars: ✭ 248 (-2.75%)
Mutual labels:  reinforcement-learning
Machine Learning Uiuc
🖥️ CS446: Machine Learning in Spring 2018, University of Illinois at Urbana-Champaign
Stars: ✭ 233 (-8.63%)
Mutual labels:  reinforcement-learning
Rl Cheatsheet
RL Notation and Pseudocode for Udacity's MLND program
Stars: ✭ 245 (-3.92%)
Mutual labels:  reinforcement-learning
Ray
An open source framework that provides a simple, universal API for building distributed applications. Ray is packaged with RLlib, a scalable reinforcement learning library, and Tune, a scalable hyperparameter tuning library.
Stars: ✭ 18,547 (+7173.33%)
Mutual labels:  reinforcement-learning
Grid royale
A life simulation for exploring social dynamics
Stars: ✭ 252 (-1.18%)
Mutual labels:  reinforcement-learning
Awesome Carla
👉 CARLA resources such as tutorial, blog, code and etc https://github.com/carla-simulator/carla
Stars: ✭ 246 (-3.53%)
Mutual labels:  reinforcement-learning

CrowdNav

This repository contains the codes for our ICRA 2019 paper. For more details, please refer to the paper Crowd-Robot Interaction: Crowd-aware Robot Navigation with Attention-based Deep Reinforcement Learning.

Please find our more recent work on

Abstract

Mobility in an effective and socially-compliant manner is an essential yet challenging task for robots operating in crowded spaces. Recent works have shown the power of deep reinforcement learning techniques to learn socially cooperative policies. However, their cooperation ability deteriorates as the crowd grows since they typically relax the problem as a one-way Human-Robot interaction problem. In this work, we want to go beyond first-order Human-Robot interaction and more explicitly model Crowd-Robot Interaction (CRI). We propose to (i) rethink pairwise interactions with a self-attention mechanism, and (ii) jointly model Human-Robot as well as Human-Human interactions in the deep reinforcement learning framework. Our model captures the Human-Human interactions occurring in dense crowds that indirectly affects the robot's anticipation capability. Our proposed attentive pooling mechanism learns the collective importance of neighboring humans with respect to their future states. Various experiments demonstrate that our model can anticipate human dynamics and navigate in crowds with time efficiency, outperforming state-of-the-art methods.

Method Overview

Setup

  1. Install Python-RVO2 library
  2. Install crowd_sim and crowd_nav into pip
pip install -e .

Getting Started

This repository is organized in two parts: gym_crowd/ folder contains the simulation environment and crowd_nav/ folder contains codes for training and testing the policies. Details of the simulation framework can be found here. Below are the instructions for training and testing policies, and they should be executed inside the crowd_nav/ folder.

  1. Train a policy.
python train.py --policy sarl
  1. Test policies with 500 test cases.
python test.py --policy orca --phase test
python test.py --policy sarl --model_dir data/output --phase test
  1. Run policy for one episode and visualize the result.
python test.py --policy orca --phase test --visualize --test_case 0
python test.py --policy sarl --model_dir data/output --phase test --visualize --test_case 0
  1. Visualize a test case.
python test.py --policy sarl --model_dir data/output --phase test --visualize --test_case 0
  1. Plot training curve.
python utils/plot.py data/output/output.log

Simulation Videos

CADRL LSTM-RL
SARL OM-SARL

Learning Curve

Learning curve comparison between different methods in an invisible setting.

Citation

If you find the codes or paper useful for your research, please cite our paper:

@inproceedings{chen2019crowd,
  title={Crowd-robot interaction: Crowd-aware robot navigation with attention-based deep reinforcement learning},
  author={Chen, Changan and Liu, Yuejiang and Kreiss, Sven and Alahi, Alexandre},
  booktitle={2019 International Conference on Robotics and Automation (ICRA)},
  pages={6015--6022},
  year={2019},
  organization={IEEE}
}
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].