zoukankan      html  css  js  c++  java
  • Turtlebot3 机器学习

    机器学习是一种数据分析技术,它教计算机识别人类和动物的自然特征——通过经验学习。机器学习分为三类:监督学习、无监督学习、强化学习。此应用程序是使用 DQN(深度 Q 学习)进行强化学习。强化学习与软件代理应该如何在环境中采取行动以最大化累积奖励的一些概念有关。

    这显示了在凉亭中使用 TurtleBot3 的强化学习。这种强化学习应用了 DQN(Deep Q-Learning)算法和 LDS。
    我们正在准备一个四步强化学习教程。

    1.软件设置

    要完成本教程,您需要在 Ubuntu 18.04 和 ROS1 Melodic 上安装 Tensorflow、Keras 和 Anaconda。

    1.1.python

    您可以下载Anaconda 5.2.0 for Python 2.7 版本。

    下载Andaconda后,进入下载文件所在目录,输入follow命令。

    通过yes在终端中输入查看并接受许可条款
    还要将 Anaconda2 安装位置添加到 .basrhc 文件中的 PATH。

     bash Anaconda2-5.2.0-Linux-x86_64.sh
    

      安装 Anaconda 后,

     source ~/.bashrc
    

      

     python -V
    

      

    如果 Anaconda 安装成功,Python 2.7.xx :: Anaconda, Inc.将在终端中返回。

    1.2.ROS依赖包

    首先安装所需的软件包。

    pip install msgpack argparse
    

    要同时使用 ROS 和 Anaconda,您必须另外安装 ROS 依赖包。

    pip install -U rosinstall empy defusedxml netifaces
    

      

    1.3.TensorFlow

    本教程使用 python 2.7(仅限 CPU)

    pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.8.0-cp27-none-linux_x86_64.whl
    

      

     1.4.Keras

    Keras是一种高级神经网络 API,用 Python 编写,能够在 TensorFlow 之上运行。

    pip install keras==2.1.5
    

    可以忽略与张量板有关的不兼容错误消息,因为它在本示例中未使用,但可以通过如下安装张量板来解决。

    pip install tensorboard
    

    1.5.机器学习包

    cd ~/catkin_ws/src/
    git clone https://github.com/ROBOTIS-GIT/turtlebot3_machine_learning.git
    #或者
    git clone https://gitee.com/kay2020/turtlebot3_machine_learning.git
    cd ~/catkin_ws && catkin_make
    

      

    机器学习在 Gazebo 模拟世界上运行。如果您还没有安装 TurtleBot3 模拟包,请使用以下命令安装。

    cd ~/catkin_ws/src/
    git clone -b melodic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
    cd ~/catkin_ws && catkin_make
    

      

    完全卸载并重新安装numpy以纠正问题。您可能需要执行几次卸载,直到 numpy 完全卸载。

    pip uninstall numpy
    pip show numpy
    pip uninstall numpy
    pip show numpy

    此时,numpy应该已经卸载完成了,输入时应该看不到任何numpy信息pip show numpy

    重新安装numpy。

    pip install numpy pyqtgraph
    

      

    作者:kay
    出处:https://www.cnblogs.com/kay2018/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    Android 源代码解析 之 setContentView
    poj 2484 A Funny Game
    BlueDroid代码分析之GKI
    Chromium多线程模型设计和实现分析
    关于template 的23个问题
    Struts2 动态结果集
    沁园春·咏史
    android中常见的内存泄漏和解决的方法
    Spring整合freemarker发送邮件
    [struts2学习笔记] 第三节 创建struts 2 HelloWorld所需的六个步骤
  • 原文地址:https://www.cnblogs.com/kay2018/p/15617943.html
Copyright © 2011-2022 走看看