Giter VIP home page Giter VIP logo

navi_deeprl's Introduction

in progress! (turlebot, Tensorflow, Gazebo, Deep recurrent Q-learning)

Navi_DeepRL

Goal: use deep reinforcement learning to realize obstacle avoidance.

Platform: turlebot

Deep RL: directly learn robot actions from pixel information.

1. basic settig of DRL.

Action: linearSpeed (0.1, 0.2, 0.3) + angle (right=1, still=0, left=-1)

Pixel state: (小梁和唐宋确定下!) raw image --> processed imgState(vector).

Reward: r = -2 (collision ), r = 0.01 (O.W)

2. install some dependences.

  1. install turtlebot source. use 'Source_Installation'.

b. other dependences.

Tensorflow

3. file introduction

agent file: define RL agent

agent_ros_2_mobile file: use to communicate RL agent with mobile robot.

algorithm file: define DRQN algorithm

utility file: some useful function.

4. turlebot simulation (tested, ok!)

Rviz

a. view in rviz.
roslaunch turtlebot_rviz_launchers view_robot.launch

b. navigation in Rviz.
roslaunch turtlebot_stage turtlebot_in_stage.launch

Gazebo

a. view in gazebo.
roslaunch turtlebot_gazebo turtlebot_world.launch

Keyboard control.

roslaunch turtlebot_teleop keyboard_teleop.launch

5. turtlebot (real-robot)

1. 小梁
reference:
a: http://wiki.ros.org/turtlebot/Tutorials
b. http://learn.turtlebot.com/
c. start robot:
   roslaunch turtlebot_bringup minimal.launch
d. use keyboart control:
   roslaunch turtlebot_teleop keyboard_teleop.launch
e. use openni:
   roslaunch openni_launch openni.launch
f. test camera:
   rosrun image_view image_view image:=/camera/rgb/image_color
   rosrun image_view image_view image:=/camera/depth/image


6. Deep recurrent Q-learning (DRQN)

1. agent_ros_2_mobile (tested, ok!)
roslaunch agent_ros_mobile agent_ros_mobile.launch
    实现: a. python recordMobile.py  # get image from '/camera/rgb/image_raw' topic.
          b. python runMobile.py  #

2. DRQN (tested, ok!)
cd /home/shuang/catkin_ws/src/Navi_DeepRL
python Navi_deepRL.py
    实现: a. RL agent (mobile robot).(tested, ok!)
            cd /home/yuchen/catkin_ws/src/Navi_DeepRL/agent
            python agent_mobile.py
          b. Q-network
            ./algorithm

3. Collect samples
cd /home/shuang/catkin_ws/src/Navi_DeepRL
python collectSample.py
and
python restoreSample.py

7. State learning (???)

8. ???

9.????

navi_deeprl's People

Contributors

yuchen8807 avatar lianghongzhuo avatar h-fu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.