目录

  • 前言:配置组合。
  • 1. 安装Ubantu 18.04
  • 2. 安装Anaconda
  • 3. 创建conda环境
  • 4. 安装tensorflow 和 keras
  • 5. 安装cuda和cudnn
  • 6. 安装pycharm
  • 7. 安装ROS melodic
  • 7. 安装gym
  • 8. 安装gym-gazebo
  • 8. openai_ROS
  • 9. 踩坑参考

前言:配置组合。

硬件配置:NVIDIA 1050Ti显卡(3g显存)。
合理组合:Ubantu 18.04 + 显卡驱动 418 + tensorflow-gpu 1.13.1 + Keras 2.3.1+ cuda 10.0 + cudnn 7.6.5 + python 3.6 + ROS melodic + gazebo 9.0。

1. 安装Ubantu 18.04

2. 安装Anaconda


download anaconda from https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

bash Anaconda3-5.2.0-Linux-x86_64.sh
sudo gedit ~/.bashrc

注册表中加入:

export PATH=~/anaconda3/bin:$PATH
source ~/.bashrc

3. 创建conda环境

此处需要创建环境并激活(除了显卡驱动之外所有的依赖项全都安装在这个环境下,当然你可以创建很多个环境)

conda create -n tf1 python=3.6

激活环境

conda activate tf1

4. 安装tensorflow 和 keras

pip install tensorflow-gpu==1.14.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install keras==2.3.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install opencv-python==3.4.3.18

Keras在tensorflow2后作为子模块被调用

pip install tensorflow-gpu==2.1.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

5. 安装cuda和cudnn

conda install cudatoolkit=10.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/
conda install cudnn=7.6.5 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/

6. 安装pycharm

sudo snap install [pycharm-community] --classic

7. 安装ROS melodic

配置 Ubuntu 软件仓库

添加ROS源

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

设置密钥

sudo apt install curl
curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add --

安装 ROS

sudo apt update
sudo apt install ros-melodic-desktop-full

配置环境

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

安装构建包所需依赖

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

初始化 rosdep

sudo rosdep init

更新本地 rosdep 数据库

rosdep update

添加环境变量

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

安装ROS Melodic相关的依赖

sudo apt-get install \
python-pip python3-vcstool python3-pyqt4 \
pyqt5-dev-tools \
libbluetooth-dev libspnav-dev \
pyqt4-dev-tools libcwiid-dev \
cmake gcc g++ qt4-qmake libqt4-dev \
libusb-dev libftdi-dev \
python3-defusedxml python3-vcstool \
ros-melodic-octomap-msgs \
ros-melodic-joy \
ros-melodic-geodesy \
ros-melodic-octomap-ros \
ros-melodic-control-toolbox \
ros-melodic-pluginlib \
ros-melodic-trajectory-msgs \
ros-melodic-control-msgs \
ros-melodic-std-srvs \
ros-melodic-nodelet \
ros-melodic-urdf \
ros-melodic-rviz \
ros-melodic-kdl-conversions \
ros-melodic-eigen-conversions \
ros-melodic-tf2-sensor-msgs \
ros-melodic-pcl-ros \
ros-melodic-navigation \
ros-melodic-sophus

安装gazebo库

cd ~/.gazebo/
mkdir -p models
cd ~/.gazebo/models/
wget http://file.ncnynl.com/ros/gazebo_models.txt
wget -i gazebo_models.txt
ls model.tar.g* | xargs -n1 tar xzvf
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ..
catkin_make

安装controller库

sudo apt-get install ros-melodic-joint-state-controller
sudo apt-get install ros-melodic-effort-controllers
sudo apt-get install ros-melodic-position-controllers
sudo apt-get install ros-melodic-ros-control
sudo apt-get install ros-melodic-gazebo-ros-pkgs
sudo apt-get install ros-melodic-gazebo-ros-control
sudo apt-get install ros-melodic-joint-trajectory-controller

安装rqt_multiplot

sudo apt-get install ros-melodic-rqt
sudo apt-get install libqet-dev
sudo apt-get install ros-melodic-rqt-multiplot

7. 安装gym

sudo pip install gym
pip install scikit-image
pip install opencv-python
sudo apt-get install python-skimage
sudo pip install h5py
sudo pip install keras

8. 安装gym-gazebo

安装gym-gazebo

cd ~
git clone https://github.com/erlerobot/gym-gazebo
cd gym-gazebo
sudo pip install -e .

运行 bash 文件,构建 ros 工作区:

cd gym-gazebo/gym_gazebo/envs/installation
bash setup_melodic.bash

8. openai_ROS

git clone https://bitbucket.org/theconstructcore/openai_examples_projects.git
git clone https://bitbucket.org/theconstructcore/openai_ros.git

9. 踩坑参考

gazebo报错

Reference:

  1. ROS 1 安装——从手动到自动:以 Ubuntu 18.04 + ROS Melodic 为例
  2. ROS Melodic安装配置OpenAI
  3. Ubuntu install of ROS Melodic
  4. openai_ros wiki
  5. openai_ros教程 (The constuct)
  6. porterpan/gym-gazebo (github)

Ubantu搭建深度学习和强化学习环境相关推荐

  1. 美团招博士后啦!深度学习、强化学习、计算机视觉与NLP、法学方向

    美团博士后工作站简介 美团博士后科研工作站是美团引进和培养高层次创新型优秀博士人才,推进产学研结合,增强企业创新能力的重要平台.工作站聚焦人工智能.无人驾驶.大数据等方向,从基础理论.关键技术.创新应 ...

  2. 深度强化学习和强化学习_深度强化学习:从哪里开始

    深度强化学习和强化学习 by Jannes Klaas 简尼斯·克拉斯(Jannes Klaas) 深度强化学习:从哪里开始 (Deep reinforcement learning: where t ...

  3. 八千字长文深度解读,迁移学习在强化学习中的应用及最新进展

    点击我爱计算机视觉标星,更快获取CVML新技术 本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载. 机器之心原创 作者:Luo Sainan 编辑:H4O 迁移学习通 ...

  4. AI小白必读:深度学习、迁移学习、强化学习别再傻傻分不清

    摘要:诸多关于人工智能的流行词汇萦绕在我们耳边,比如深度学习 (Deep Learning).强化学习 (Reinforcement Learning).迁移学习 (Transfer Learning ...

  5. dpg learning 和q_深度学习和强化学习之间的差别有多大?

    我是做深度强化学习的(Deep Reinforcement Learning)的,这个问题有趣.我对@张馨宇他在此问题下的简洁回答非常认同:"可以用深度学习这个工具来做强化学习这个任务,也可 ...

  6. 基于深度学习、强化学习、开源RASA对话引擎的多场景对话机器人

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx Chatbot_CN 是一个基于第三代对话系统的多轮对话机器人项目,旨在于开发一个结合规则系统 ...

  7. 人工智能、机器学习、深度学习、强化学习、迁移学习概念辨析

    整体来看:AI>机器学习(ML)>深度学习=强化学习=迁移学习 一.人工智能 ​        1956年,计算机科学家 John McCarthy提出了"人工智能"的 ...

  8. 深度强化学习和强化学习_强化强化学习背后的科学

    深度强化学习和强化学习 机器学习 ,强化学习 (Machine Learning, Reinforcement Learning) You're getting bore stuck in lockd ...

  9. 深度学习之强化学习(1)强化学习案例

    深度学习之强化学习(1)强化学习案例 强化学习案例 1. 平衡杆游戏 2. 策略网络 3. 梯度更新 4. 平衡杆游戏实战 完整代码 人工智能=深度学习+强化学习--David Silver  强化学 ...

  10. B站上线!DeepMind加UCL强强联手推出深度学习与强化学习进阶课程(附视频)

      新智元报道   编辑:元子 [新智元导读]DeepMind和伦敦大学学院(University College London,UCL)合作,推出了一个系列的深度学习与强化学习精品进阶课程.该课程内 ...

最新文章

  1. 数据库字段命名及设计规范
  2. 【 ML 】Newton – Raphson Iteration Procedure of TOA - Based Positioning Simulation
  3. 一位来自《seo实战密码》读者的来信
  4. 关于jquery调用webservice的一些感想
  5. 纪中A组模拟赛总结(2021.7.14)
  6. 字符串驻留机制截图?#注意回顾字符串的深浅拷贝小数据池那节
  7. 联想高校AI精英挑战赛中大收官,“人工智能眼科机器人”获全国总决赛最后入场券
  8. 单个H扩展到多个H时,机器学习的保证
  9. 趣味Python — 不到20行代码制作一个 “手绘风” 视频
  10. linux ext3 fsck一定要慎用
  11. linux 文件系统架构
  12. flea-db使用之基于对象池的FleaJPAQuery
  13. android动态开场,Android 开场动画
  14. MySQL事务 - 自增ID的回滚以及Auto Increment在InnoDB的实现
  15. 网站的养站(养蜘蛛)技巧
  16. AStar寻路算法的Python实现
  17. Qt实现二维码的编解码
  18. Python qrcode二维码操作——(一)简单使用qrcode
  19. 一些感觉挺有意思的例子
  20. 基于单片机的宠物定时喂食器设计

热门文章

  1. 【Unity Shader】渲染纹理实现镜子效果
  2. Win10+Ubuntu18.04 双系统安装遇到的问题记录
  3. 配置路由urlconf
  4. 我知道很多主播因为以前因为公会的名声不太好,或者不想签约被束缚等原因
  5. 手机里的微信群,都在变成DAO
  6. Cannot add or update a child row: a foreign key constraint fails都有哪些原因
  7. 精华来了(含PPT) | 淘系技术嘉年华-杭州站
  8. Postgresql杂谈 10—Postgresql中的分区表
  9. 题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问
  10. 智能车辆纵向速度跟踪与控制方法研究