在ubuntu16.04下借助ROS和pytorch运行深度强化学习导航算法

一、安装过程

1.重装ubuntu 16.04

参考文章:

win10+ubuntu16.04双系统下完全删除并重装ubuntu16.04_凌波一梦的博客-CSDN博客_双系统重装ubuntu

特性化的点:

一、进入启动项选择界面:按F10

二、分区设置:

选择分区类型均为主分区【Primary】,分区位置为空间起始位置【Beginning of this sapce】

1.swap分区用于【swap area】,设置大小为16G(内存大小),用于【swap area】

2.“/boot”分区,即Ubuntu启动引导分区,设置大小为200Mb即可。

3.“/”分区,即Ubuntu启动引导分区,设置大小为70G。

4.“/home”分区,用于存储用户的个人文件(重装系统后,可以重新挂载到新系统),将剩余全部未分配空间都分给它。

5.注意,在分配完swap、/boot、/和/home四个分区后,要选择安装启动引导器的设备【Device for boot loader installation】为“/boot”所在分区,此处为“/dev/sda4”(不确定是不是这个了)。

2.安装ROS

参考资料:古月居——ROS入门21讲_5.安装ROS系统

1. 添加ROS软件源

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

2. 添加密钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

3. 安装ROS

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-get update
sudo apt install ros-kinetic-desktop-full

(这一步我安装了两个小时)

4.初始化rosdep
 

sudo rosdep init
rosdep update

rosdep update超时的解决方案:

解决ROS系统 rosdep update超时问题的新方法_leida_wt的博客-CSDN博客_rosdep update 超时

5. 设置环境变量

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

6. 安装rosinstall

sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

7.安装完成,检测一下成果吧

roscore

3.安装pip3 20.3.4

sudo apt-get install python3-pip
python3 -m pip install --user --upgrade pip==20.3.4

4.安装pytorch 1.4.0

pip3 install torch==1.4.0+cpu torchvision==0.5.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

5.安装pyyaml(代码里需要)

6.git clone turtlebot3相关包

参考文章:

ROS开发笔记(8)——Turtlebot3 Gazebo仿真环境下深度强化学习DQN(Deep Q-Learning)开发环境构建_天涯0508的博客-CSDN博客_gazebo 强化学习

cd ~/catkin_ws/src/
 
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
 
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
 
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations
 
git clone https://github.com/ROBOTIS-GIT/turtlebot3_machine_learning
 
cd ~/catkin_ws && catkin_make

配置环境变量:

gedit ~/.bashrc

在最下面添加

source ~/catkin_ws/devel/setup.bash

export TURTLEBOT3_MODEL=burger

7.下载gazebo模型

cd ~/.gazebo/
git clone https://github.com/osrf/gazebo_models.git models

git clone速度极慢,可以直接去网站下载,大小约为700Mb,下载完成后解压到~/.gazebo下(ctrl+h查看隐藏文件),命名为models

8.安装rospkg

pip3 install rospkg -i https://pypi.tuna.tsinghua.edu.cn/simple

二、测试

1.登录一个环境

roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch

2.运行算法

python SAC.py

3.gazebo可视化

gzclient

ps:文件里有中文的话,开头加

 # -*- coding: utf-8 python

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
【资源说明】 基于ROS深度强化学习不同算法的移动机器人导航避障python源码+使用详细说明.zip 要求 python 3.5 Tensorflow 1.14.0 ROS Melodic 使用步骤 因为有未知问题,需要把小车在gazebo中的启动,与tesorflow强化学习分开成两个文件夹,合在一起会报错 ## 1.创建虚拟环境 NDDDQN ## 2.安装tensorflow ``` pip install tensorflow-gpu==1.14.0 -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ## 3.在两个工作空间进行编译 在catkin_ws和catkin_ws1分别编译: ``` catkin_make --cmake-args \ -DCMAKE_BUILD_TYPE=Release \ -DPYTHON_EXECUTABLE=/usr/bin/python3 \ -DPYTHON_INCLUDE_DIR=/usr/include/python3.6m \ -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so ``` ## 4.运行 首先在运行小车的catkin_ws1文件夹中: ``` cd catkin_ws1 source devel/setup.sh roslaunch pioneer_utils xxx ``` xxx对应运行环境: ``` bizhang.launch 静态避障 ​ daohang.launch 静态导航 ​ dongtai.launch 动态导航 ​ keyboard_teleop.launch 键盘控制 ``` 然后在运行强化学习的文件夹catkin_ws中: ``` conda activate NDDDQN cd catkin_ws source devel/setup.sh cd src/Tensorflow/xxx python main.py ``` xxx对应运行算法: ``` DQN-bizhang 静态避障-DQN ​ DDQN-bizhang 静态避障-DDQN ​ DQN-Dueling-bizhang 静态避障-Dueling-DQN ​ DDQN-Dueling-bizhang 静态避障-Dueling-DDQN ​ NDDQN-Dueling-bizhang 静态避障-Dueling-NDDQN ​ Beta-DDQN-Dueling-bizhang 静态避障-Beta-Dueling-DDQN ​ Empty-Navigation 静态导航-Dueling-NDDQN ​ separate-Empty-Navigation 静态导航-separate-Dueling-NDDQN ​ Navigation-DDQN 静态导航-DDQN ​ people-Navigation 动态导航-Dueling-NDDQN ``` 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值