1. ROS 架构

此时,您知道 Amazon SageMaker 训练您的强化学习模型,Amazon RoboMaker 模拟了该模型的环境,而 Gazebo 则模拟赛车的物理定律。因此,现在让我们来谈谈环境和智能体如何彼此交谈。一组称为机器人操作系统或 ROS 的库和工具可以在机器人的各个部分之间进行通信。这包括它的环境。

因此,一旦您将优化模型从模拟器移动到物理 Amazon DeepRacer,并且模拟动作空间映射到物理动作空间后,ROS 节点会推断/预测结果,以便在本地主机内自主驱动它。







2. 移动到真实世界的赛道

如上所述,一旦您将赛车车移动到真实世界的赛道,将注意到赛车性能的几个差异。本视频重点介绍了其中一些差异。


3. 在理想的世界中

好吧,我们已经讨论了真实环境与模拟环境有何不同,以及为什么赛车在真实环境和模拟环境中的表现不同。现在我们来看看有关如何将模拟模型理想地过渡到现实世界的一些策略。

有三种策略可以帮助您的模型有效地从模拟器过渡到现实世界。第一个策略已经内置在模拟器中,另外两个策略到目前为止是理论上的。请查看下面的三种策略。单击它们,以展开并信息。

3.1 环境控制


这是已经内置在 Amazon DeepRacer 中的策略。用于在模拟器中为赛车创造一个可以在现实世界中看到的环境:蓝天、绿草、暗路等。这也包括实体。如果在模拟器中的动作导致特定的结果,那么现实世界中的动作需要导致相同的结果,反之亦然。假设模拟模型设置为 40% 油门,您需要思考“好吧,如果我采用不同的表面纹理,赛车转弯的速度是否会相同?”实质上,模拟环境受到控制,以便该模型为适应模拟器外面的情况做好充分的准备。

下一个目前属于理论性的策略称为“域随机化”。理论上,您要为模型提供随机数据。这是什么意思?让我们深入研究一下。

3.2 域随机化


目前,赛车拍摄彩色图像,但是在将其发送到模型之前,无论赛车是在训练还是在评估、模拟课程还是真实世界中,它们都会转换为灰度。因此,当赛车训练时,它会以灰度进行训练,并且寻找灰度的图案。请思考一下路中间的分界线。这个分界线是白色的,而路是黑色的。因此,模型学习到这些颜色的渐变有所不同,并将重点放在它们上。也许它会学习到,停留在黑暗的道路上可以获得奖励,有一定阴影也可以,但较轻的阴影却不行。或者,也许您已经根据白线优化了在拐角周围的驾驶。

然后您把赛车放在现实世界中,比如在木地板或白地毯上,它会变得困惑。理论上,您会使用域随机化来改变赛车在模拟器中看到的颜色和纹理。也许它会看到白线,或者可能是黄色或绿色线。无论如何,在模型训练的过程中,它会告诉赛车不要专注于物品的颜色,而是专注于物品本身 – 事实上有一条线。

图像随机化将有助于模型调整适应多种颜色的渐变,并习惯于看到阴影(深色)或反射(光线)之类的东西。

Y3LvrTfVThgTgiUN.jpg
训练这样的模型将需要更长的时间,因为您必须为其提供更多的数据 – 但是当您的模型从模拟器移动到现实世界时,它的配备会更好。

让我们来看看第三种策略。

3.3 模块化和抽象


另一种理论上的策略是第三种策略,称为模块化和抽象。这与管理深度神经网络有关,并且可以通过在训练强化学习模型之前建立 CNN(卷积神经网络)来实现。如果您构建了一个能够识别道路、线或田野的 CNN,那么可以将其插入模型中。这将使模型更容易学习,因为它已经知道什么是道路或建筑物等等。

由于新的 CNN 已经有图像,并将其分类为“道路”、“非道路”、“建筑物”、“赛车”等,因此它可以帮助模型确定是否可驾驶。

因此,这是为了将模拟模型放入现实世界。当您要缩小模型在模拟世界与在现实世界中的性能差距时,请考虑环境控制、域随机化以及模块化和抽象。您可能还无法实施此类策略,但是您可以考虑赛车在现实世界中将看到的颜色、形状和尺寸,最大限度地减少视觉干扰,仔细校准 Amazon DeepRacer 的油门和转向,因此,训练中使用的动作空间与现实世界保持一致。

一旦您把所有这些都放在模拟世界中,看看接下来会发生什么 – 即端到端的体验,在此您可以将我们迄今为止讨论的很多内容付诸实践。

参考

https://www.aws.training/Details/eLearning?id=75478

AWS DeepRacer ROS 架构 模拟环境和真实赛道的区别相关推荐

  1. 15个可交互的真实房屋场景,Silvio/李飞飞组开源大型室内场景的模拟环境iGibson...

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 作者:沈博魁.夏斐.李承澍.Roberto Martín-Martín 转载自:机器之心 在这 ...

  2. 2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车完成定位导航仿真

    2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车完成定位导航仿真 一.前言 二.准备工作 1.创建工作空间 2.下载racecar源代码包,并编译工程 三.启动仿真 1. ...

  3. 2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车,按照给定赛道完成比赛

    大学生智能车大赛室外光电组,在ROS下搭建仿真模拟环境 一.前言 二.效果图 三.准备工作 [1.在Ubuntu上安装ROS Kinetic](https://blog.csdn.net/qq_425 ...

  4. (基础)001 - AWS Deepracer简介

    文章目录 什么是AWS Deepracer AWS DeepRacer 是一个集成的学习系统 什么是AWS Deepracer 个人理解AWS Deepracer是一个提供强化学习(RL) 的平台,通 ...

  5. 基于AWS的云架构设计最佳实践——万字长文:云架构设计原则|附PDF下载

    译者序 AWS用户广泛,产品线复杂,AWS发布的白皮书<Architecting for the Cloud-AWS Best Practices>介绍了常见场景下云架构的最佳实践,不仅对 ...

  6. 李飞飞组开源大型室内场景的模拟环境iGibson

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:知乎链接:https://zhuanlan.zhihu.co ...

  7. ROS学习笔记02:ROS架构与基础

    文章目录 一.ROS架构 二.第一个ROS例程 (一)turtlesim功能包 1.话题与服务 2.背景色参数 (二)控制乌龟运动 1.启动节点管理器 2.启动乌龟仿真器节点 3.启动键盘控制节点 三 ...

  8. ROS学习笔记基础2(基础知识和ROS架构)

    ROS学习笔记1(基础知识和ROS架构) 文章目录 ROS学习笔记1(基础知识和ROS架构) 1. 什么是ROS 2. ROS和其他机器人平台有什么不同 3. ROS架构组成 3.1 文件系统级别 3 ...

  9. ROS入门跟着我就够了(一)ROS概述与环境搭建

    写在最前面的话: 这是第一次在CSDN写博客,也算是正式踏入这个圈子 准备两三天一更,把学习经历完整记录下来 希望最后回看过来能收获很多 查了很多资料,入门ROS比较好的免费资源是古月居的讲授以及赵虚 ...

  10. ROS集成开发环境 --- RoboWare(安装及学习笔记)

    后附 RoboWare中文教程网盘链接 Designer Studio Viewer RoboWare Studio是什么 v1.2.0 32位 deb v1.2.0 64位 deb v1.2.0 使 ...

最新文章

  1. 即学即用的30段Python实用代码
  2. 打印对象和toString方法
  3. 洛谷P1091 合唱队形
  4. 【PAT甲级 删除字符串中的指定字符】1050 String Subtraction (20 分) C++
  5. 台达plc控制伺服电机编程实例_三菱PLC控制伺服电机得编程实例
  6. Ricequant米筐金工——因子分析
  7. 吊打面试官系列之:移动APP测试开发面试题汇总,对标P7职位~ ~熬夜整理,建议收藏!!!
  8. 最新+电脑象棋测试软件,中国象棋2017电脑版
  9. nginx+uWSGI+django+virtualenv+supervisor发布web服务器流程
  10. 利用matlab实现非线性拟合(三维、高维、参数方程)
  11. C++ primer (5th) 随想与学习笔记 6 优先级晦涩难通 新标准更清晰
  12. 电子凸轮追剪曲线生成算法 理解后可转成其他品牌PLC或任何一种编程语言
  13. 细化(thinning)
  14. 惯导基础概念解析(一)初始对准及误差分析
  15. ASCII字符点阵和汉字库点阵显示
  16. Centos/Debian 占用CPU100%挖矿病毒清理
  17. cad计算机中怎么用除号,CAD中特殊符号如何输入?超全教程,一看就懂!
  18. 词性标注集句和句法分析标注集
  19. 开源夏令营《基于HackRF开发GPS信号仿真模拟器》工作总结(二)
  20. Node -- 使用场景及优缺点

热门文章

  1. springboot前台页面写Java代码,接收后台数据,SpringBoot整合Thymeleaf的使用,实现非ajax请求后台的数据实现和遍历效果,以及数据的页面展示
  2. docker java镜像_Docker容器引擎与架构
  3. java导出excel_Java导出excel【复制粘贴直接用】
  4. 【转】java中的Map集合
  5. Use YSlow to know why your web Slow
  6. unittest 单元测试
  7. windows10:检测windows defender是不是已经连接到了云安全中心
  8. 玩转 Git 与 GitHub
  9. 【BZOJ】3524: [Poi2014]Couriers
  10. openstack安装配置(一)