YunjaeChoi / Reinforment-Implementation-on-a-Quadruped

Reinforment Implementation on a Quadruped using DDPG(tensorflow), ROS, Gazebo, real quadruped robot.
MIT License
68 stars 11 forks source link
python reinforcement-learning ros-kinetic tensorflow

Reinforcement Learning Implementation on a Quadruped

My project in Korea University.

Overview

This project is a reinforment learning environment for a quadruped. It uses python 2.7, ROS (robot operating system) Kinetic Kame, Tensorflow, Gazebo simulation. The robot interacts with both Gazebo simulation and the real world using ROS. It is trained to walk forward in Gazebo simulation and can be deployed in a real robot. Deep Deterministic Policy Gradient(DDPG) is used for the robot.

Files

quadruped folder

This folder contains files for reinforment learning environment.

quadruped_imu_and_servo folder

This folder contains files for a real robot implementation. ROS should be installed on the real robot. (Running confirmed on Raspberry pi model B + Ubuntu MATE)

quadruped_imu_publisher

quadruped_servo_subscriber

Prerequisites

additional installations for simulation

additional installations for real robot

-

How to

Learning an agent

roslaunch quadruped quadruped_control.launch
python quadruped_learn.py

simulate learned agent

roslaunch quadruped quadruped_control.launch
python quadruped_gazebo_act.py

learned agent on real quadruped

Tips

always

source ~/catkin_ws/devel/setup.bash

ROS core

roscore

ROS via network (local LAN)

xacro to URDF file

rosrun xacro xacro --inorder quadruped_model.xacro > model1.urdf

Videos