All Projects → RobustFieldAutonomyLab → DRL_graph_exploration

RobustFieldAutonomyLab / DRL_graph_exploration

Licence: BSD-3-Clause license
Autonomous Exploration Under Uncertainty via Deep Reinforcement Learning on Graphs

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to DRL graph exploration

gcnn keras
Graph convolution with tf.keras
Stars: ✭ 47 (-11.32%)
Mutual labels:  graphs
deep-rl-quadcopter
Implementation of Deep Deterministic Policy Gradients (DDPG) to teach a Quadcopter How to Fly!
Stars: ✭ 17 (-67.92%)
Mutual labels:  deep-reinforcement-learning
Deep-RL-agents
No description or website provided.
Stars: ✭ 27 (-49.06%)
Mutual labels:  deep-reinforcement-learning
Deep-Quality-Value-Family
Official implementation of the paper "Approximating two value functions instead of one: towards characterizing a new family of Deep Reinforcement Learning Algorithms": https://arxiv.org/abs/1909.01779 To appear at the next NeurIPS2019 DRL-Workshop
Stars: ✭ 12 (-77.36%)
Mutual labels:  deep-reinforcement-learning
FLEXS
Fitness landscape exploration sandbox for biological sequence design.
Stars: ✭ 92 (+73.58%)
Mutual labels:  deep-reinforcement-learning
MaRLEnE
Machine- and Reinforcement Learning ExtensioN for (game) Engines
Stars: ✭ 47 (-11.32%)
Mutual labels:  deep-reinforcement-learning
Deep-Reinforcement-Learning-CS285-Pytorch
Solutions of assignments of Deep Reinforcement Learning course presented by the University of California, Berkeley (CS285) in Pytorch framework
Stars: ✭ 104 (+96.23%)
Mutual labels:  deep-reinforcement-learning
CryptoGraphArb
Using graph algorithms to find arbitrage opportunities
Stars: ✭ 89 (+67.92%)
Mutual labels:  graphs
playing-mario-with-deep-reinforcement-learning
An implementation of (Double/Dueling) Deep-Q Learning to play Super Mario Bros.
Stars: ✭ 55 (+3.77%)
Mutual labels:  deep-reinforcement-learning
pbPlots
A plotting library available in many programming languages.
Stars: ✭ 71 (+33.96%)
Mutual labels:  graphs
hdelk
Web-based HDL diagramming tool
Stars: ✭ 51 (-3.77%)
Mutual labels:  graphs
rl-medical
Communicative Multiagent Deep Reinforcement Learning for Anatomical Landmark Detection using PyTorch.
Stars: ✭ 36 (-32.08%)
Mutual labels:  deep-reinforcement-learning
Deep-Q-Networks
Implementation of Deep/Double Deep/Dueling Deep Q networks for playing Atari games using Keras and OpenAI gym
Stars: ✭ 38 (-28.3%)
Mutual labels:  deep-reinforcement-learning
vallang
Generic immutable recursive data representation API targeted at source code models and more.
Stars: ✭ 28 (-47.17%)
Mutual labels:  graphs
graphs
⬆️📊 Generate response time chart images in Upptime
Stars: ✭ 31 (-41.51%)
Mutual labels:  graphs
deep reinforcement learning gallery
Deep reinforcement learning with tensorflow2
Stars: ✭ 35 (-33.96%)
Mutual labels:  deep-reinforcement-learning
angular-fusioncharts
Angular Component for FusionCharts JavaScript Charting Library
Stars: ✭ 53 (+0%)
Mutual labels:  graphs
dqn-lambda
NeurIPS 2019: DQN(λ) = Deep Q-Network + λ-returns.
Stars: ✭ 20 (-62.26%)
Mutual labels:  deep-reinforcement-learning
VieCut
VieCut 1.00 - Shared-memory Minimum Cuts
Stars: ✭ 34 (-35.85%)
Mutual labels:  graphs
py-problems-solutions
Implementations of various problems using Python. Dynamic Programming, BackTracking & Sorting algorithms 💻
Stars: ✭ 20 (-62.26%)
Mutual labels:  graphs

Autonomous Exploration Under Uncertainty via Deep Reinforcement Learning on Graphs

This repository contains code for robot exploration under uncertainty that uses graph neural networks (GNNs) in conjunction with deep reinforcement learning (DRL), enabling decision-making over graphs containing exploration information to predict a robot’s optimal sensing action in belief space. A demonstration video can be found here.

drawing

drawing

Dependency

  • Python 3
  • PyTorch
  • PyTorch Geometric
  • gtsam (Georgia Tech Smoothing and Mapping library)
    git clone -b emex --single-branch https://bitbucket.com/jinkunw/gtsam
    cd gtsam
    mkdir build && cd build
    cmake ..
    sudo make install
    
  • pybind11 (pybind11 — Seamless operability between C++11 and Python)
    git clone https://github.com/pybind/pybind11.git
    cd pybind11
    mkdir build && cd build
    cmake ..
    sudo make install
    

Compile

You can use the following commands to download and compile the package.

git clone https://github.com/RobustFieldAutonomyLab/DRL_graph_exploration.git
cd DRL_graph_exploration
mkdir build && cd build
cmake ..
make

Please use the following command to add the build folder to the python path of the system

export PYTHONPATH=/path/to/folder/DRL_graph_exploration/build:$PYTHONPATH

Issues

There is an unsolved memory leak issue in the C++ code. So we use the python subprocess module to run the simulation training. The data in the process will be saved and reloaded every 10000 iterations.

How to Run?

  • To run the saved policy:
    cd DRL_graph_exploration/scripts
    python3 test.py
    
  • To show the average reward during the training:
    cd DRL_graph_exploration/data
    tensorboard --logdir=torch_logs
    
  • To train your own policy:
    cd DRL_graph_exploration/scripts
    python3 train.py
    

Cite

Please cite our paper if you use any of this code:

@inproceedings{chen2020autonomous,
  title={Autonomous Exploration Under Uncertainty via Deep Reinforcement Learning on Graphs},
  author={Chen, Fanfei and Martin, John D. and Huang, Yewei and Wang, Jinkun and Englot, Brendan},
  booktitle={2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  pages={6140--6147},
  year={2020},
  organization={IEEE}
}

Reference

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].