jr-robotics / robo-gym

An open source toolkit for Distributed Deep Reinforcement Learning on real and simulated robots.
https://sites.google.com/view/robo-gym
MIT License
426 stars 75 forks source link

What are the benefits of using RPC instead of ros communication? #41

Closed cgdsss closed 3 years ago

cgdsss commented 3 years ago

I think you use ROS to receive simulation messages, and then use RPC to transmit them to the gym environment. Why don't you send the ROS messages directly to the gym environment ? Is it just because ROS does not support Python3? Are there other considerations?

matteolucchi commented 3 years ago

Hi @cgdsss ! Thank you for your interest in robo-gym!

Is it just because ROS does not support Python3? This was one of the motivations when we started development although now this is solved as ROS Noetic is based on Python 3.

The other reason was that we want to be language agnostic, and even though right now we only use Gazebo and ROS, having gRPC as a communication layer allows us to develop Robot Servers implemented in any language supported by gRPC, this means that we could use simulators and/or robot that do not provide a ROS interface

I hope this answers your question.

Cheers, Matteo