人工智能训练机器人的服务器,人工智能系统教会机器人如何在荒野中行走

840aea21ee58136c47f2dc2eca6fbf02.png

对救援人员和户外运动爱好者来说,穿越荒野小径是一项有用的技能,但对机器人来说却很难。这并不是说这些机械动物没有能力在爬上山坡的同时避开倒下的树枝——最先进的机器学习算法可以做到这一点。问题在于它们缺乏通用性:人工智能驱动的机器人经常在他们从未见过的环境中挣扎。

科罗拉多大学(University of Colorado)的研究人员最近在一篇发表在预印本服务器Arxiv.org上的论文(“荒野小径上机器人的虚拟到现实转移学习”)中提出了一个解决方案。他们的方法利用了多种深度学习模型。这是一种模拟神经的数学功能,可以帮助机器人从摄像机镜头中判断出远足路线的方向。

研究人员写道:“机器人在许多涉及户外使用的场景中都很有前途,比如搜救、野生动物管理和收集数据以改善环境、气候和天气预报。”“然而,户外步道的自主导航仍是一个具有挑战性的问题……在许多情况下,收集和管理训练数据集可能不可行或不实用,尤其是在步道条件可能因季节性天气变化、风暴和自然侵蚀而改变的情况下。”

正如这篇论文的作者所指出的,户外步道有很多变化。它们由任意数量的材料(如砾石、泥土和覆盖物)定义,它们跨越不同的生物群落,如森林、草地和山脉。此外,它们的外观随着季节、天气和一天中的时间而变化,而且它们经常被茂密的植被部分遮挡。

845b430b95d3e299c52fa59735d10401.png

收集和标记训练一个健壮的系统所必需的真实数据将是非常耗时的,因此,研究人员转而寻找虚拟户外步道的合成图像。为了制作它们,他们在Unity中组装了一个带有泥土小道的高山场景,并用Unity Asset Store中的树木、岩石和草的3D模型来点缀它。然后,他们释放了一个带有三个摄像头的虚拟机器人——每个摄像头的分辨率为400×400像素,视野为80度——来收集20,269张风景图片。

研究小组将图像的分辨率调整为100×100×3像素,这样处理速度更快,内存消耗更低。然后他们将集合分成三组:一组用于培训,一组用于验证,第三组用于测试。

训练数据集被输入到三种结构不同的神经网络:深度神经网络(deep neural network, DNN)、卷积神经网络(tional neural network, CNN)和递归神经网络(regression neural network, RNN)。在人工智能完全控制虚拟机器人的实验中,一个模型——RNN——成功预测出正确的轨迹方向,准确率达到95.02%。重要的是,在另一项测试中,研究人员在4000幅真实世界图像的数据集上训练了所有三种人工智能算法,DNN模型的准确率达到58.41%,超过了基线,表明虚拟到真实世界的转移学习有潜力超过一些传统的计算机视觉方法。

研究人员在报告中写道:“我们观察到,该机器人在包括急转弯和大圆石等障碍物在内的路径导航方面取得了很大的成功。”“此外,我们观察到几个‘明智’决策的例子;在一次试验中,机器人在遇到一个大障碍物后,会短暂地偏离轨道,但之后又会回到轨道上继续飞行。

这三种神经网络的表现都不完美。该机器人偶尔会将特定的地形区域误认为是步道特征,从而使其偏离航线。研究人员承认Unity的低质量地形包不允许对象之间有“足够的差异”。(他们把提高通用性的技术探索留给了未来的工作,比如用程序生成不同条件下的地形。)

但他们认为,他们的工作为可能加快机器人地形导航人工智能训练的方法奠定了基础。

“机器人电池寿命、人类疲劳和安全问题是人工数据收集的主要挑战;然而,通过我们的方法,这些问题可以避免,因为标记数据生成可以在虚拟环境中快速高效地执行,”研究人员写道。“然后,机器人可能会接受虚拟训练,以导航难以进入和/或危险的地形,包括目前不可能进入和收集真实数据的新地形(例如火星),而从未接触过这些环境。”

举报/反馈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560541.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

世界手机号码格式_脑炎康复之旅——世界脑炎日病友征文

○○脑炎康复之旅世界脑炎日病友征文2月22日是世界脑炎日(World Encephalitis Day)。2014年发起的世界脑炎日旨在致敬和鼓励全世界经历过脑炎的患者和脑炎医疗工作者。几年来,全球已有1.87亿人次参与世界脑炎日活动。2021年的世界脑炎日即将到来,今年世界…

树莓派和微信和服务器,用树莓派搭建微信公共平台

1、首先你需要一个公网ip, 需要做好映射, 把80端口映射到你的树莓派ip。2、打开你的树莓派终端, 创建文件夹“templates ” 和文件“weixind.py”。3、文件“weixind.py”中写入以下代码。安装“sudo apt-get install python-lxml”。5、申请…

mysql数据异常增长_mysql表到一定数据量后会异常的增长

如题InnoDB的table,里面的字段非常简单,如图中的类型才100多W的数据量,数据是慢慢积累起来的,到了最近发现涨到12G后,会每天成倍的增长,最高到达过50G,而数据量还是那些,longtext的字…

舰r4月28服务器维护,崩坏3 11月28日版本更新维护通知

亲爱的舰长:为了给舰长更好的游戏体验,休伯利安号将在11月28日进行版本更新维护,维护完成后战舰将更新为3.6版本——「绯夜霞隐」。维护时间安卓国服、iOS服和各渠道服:11月28日07:00~12:00全平台服(桌面服):11月28日0…

vv7无法启动显示发动机故障_点火系统故障引起发动机不能启动的排除方法

点火系统故障引起发动机不能启动的排除方法a 外观检查首先察看点火线圈和b 中央高压线试火拔出分电器上的中央高压线,插入一个放电器(或备用火花塞)并将放电器(火花塞)搭铁,然后接通点火开关,在转动发动机时看放电器(火花塞)(汽車维修网 Http…

织梦重置mysql数据库密码忘记_织梦cms管理员密码忘记了怎么重置找回?

织梦cms是使用比较广泛的一种开源cms程序,使用织梦的朋友基本上都遇到过忘记后台登录密码这个问题,重置登录密码的方法也有很多,今天木子网络教大家的方法是通过mysql数据库来重置修改密码。下面就为大家分享详细的织梦cms管理员密码重置教程…

Lingo计算最优解

建模最后就是知道结果套过程。。 文章目录线性规划二次规划集合段线性规划 model: title 求解线性规划; max2*x13*x2; 2*x1x2<8; 4*x13*x2<15; end结果&#xff1a; Global optimal solution found.Objective value: 15.00000Infeasibilit…

c 通过jni调用java_使用c通过jni调用java

编译环境:fedora16gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2)java version "1.6.0_31"Java(TM) SE Runtime Environment (build 1.6.0_31-b04)Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)准备工作:首先需要安装jdk和gcc(或者其他c编译器也可以)并配置…

C语言文件与数组之间输入输出操作

C语言文件与数组之间输入输出操作 文件存到数组里面&#xff1a; #include<iostream> #include<fstream> #include<string> #include<cstdio> #include<cstdlib> using namespace std; int main() { fstream fs("test.txt");istream…

java调用scilab_Java调用Scilab-编译运行Javasci v2

1 Scilab简要介绍Scilab 是由法国国家信息、自动化研究院(INRIA)的科学家们开发的“开放源码”软件。Scilab是开源的软件&#xff0c;用户不仅可以在Scilab的许可证条件下自由使用该软件&#xff0c;还可以根据自己需要修改源代码&#xff0c;使之更加符合自身需要。与Matlab类…

java8 foreach 异常_错误处理 – 在java 8流foreach中抛出异常

我正在使用java 8流,我不能在流的foreach中抛出异常.stream.forEach(m -> {try {if (isInitial) {isInitial false;String outputName new SimpleDateFormat(Constants.HMDBConstants.HMDB_SDF_FILE_NAME).format(new Date());if (location.endsWith(Constants.LOCATION_S…

java integer reverse_Leetcode7 Reverse Integer Java实现及分析

首先public int reverse(intx) {int ans 0;while(x!0) {int temp x%10;x/10;ans ans*10temp;}returnans;}但是这样无法检验最终结果是否溢出。我们可以看到&#xff0c;溢出的原因是ans*10temp>MAX或ans*10temp对于正数&#xff0c;举个小点的例子&#xff0c;一个6bit的…

java swing linux_Linux下关于解决JavaSwing中文乱码的情况

前两天在linux中运行java 老是出乱码&#xff0c;很苦恼&#xff0c;后来网上找了好多解决办法。有些可行&#xff0c;有些不可行&#xff0c;今天总结一下。redhed 貌似没出现乱码 本身就jdk就支持中文红旗linux suse等都不支持&#xff0c;需要自己手工配置&#xff0c;解决…

单片机实验:外部中断按键

这是之前写的&#xff0c;一直没发。 实验内容&#xff1a; 实验大致上就是说&#xff1a;按键不按的时候&#xff0c;灯一直亮&#xff0c;按键按下的时候&#xff0c;灯不亮&#xff0c;报警器响。现在给了汇编语言&#xff0c;要改成c语言&#xff0c;并在proteus里面仿真…

java 重复代码优化_Java代码优化

优化实践1.try{}catch(){}使用1)查询中不要使用try{}catch(){}语句2)循环中不要使用try{}catch(){}语句3)异常处理不要对于所有的异常捕获都使用Exception&#xff0c;最好是捕获对应的异常类型&#xff0c;处理日志方式&#xff1a;1、打印错误日志2、调用错误业务逻辑处理函数…

java 06_JAVA06 数组

1.设计思路&#xff1a;首先设置长度为10的数组&#xff0c;设置Random引用对象&#xff0c;在循环中生成一个随机数存储在数组中&#xff0c;累加和&#xff0c;利用对话框输出结果。2.程序流程图&#xff1a;3.源程序代码&#xff1a;1 //2016/11/062 //随机生成10个数&#…

java service 事物_Service 事务(JdbcUtils 升级)

1. DAO 事务// 在 DAO 中处理事务真是"小菜一碟"public void xxx(){Connection con null;try{con JdbcUtils.getConnection();con.setAutoCommit(false); // 开启事务QueryRunner qr new QueryRunner();String sql ...;Object[] params ...;qr.update(con,sql,p…

java 8.0 sinffer_jpcap 配置方法,问题解决,模拟sniffer程序。(附JAVA程序,jar,dll包等环境)...

一、 Eclipse环境下安装与配置Jpcap相关源程序、jpcap jar包&#xff0c;dll包&#xff0c;帮助文档。1、下载安装winpcap2、jpcap官方文件中lib包下&#xff0c;有两个文件&#xff0c;jpcap.dll和jpcap.jar。jpcap.dll-->JAVA安装路径/jre1.6.0_06/bin (JRE目录)jpcap.j…

mysql工作中遇到的问题_MySQL工作中遇到的问题记录

1&#xff1a;log_slave_updates:从库1搭建级联从库2&#xff0c;从库1需要开启log_slave_updates&#xff0c;修改/etc/my.cnf&#xff0c;增加一行log_slave_updates1&#xff0c;重启数据库。http://blog.itpub.net/12679300/viewspace-1319263/2&#xff1a;ERROR 1418 (HY…

java 基本格式

java基本格式&#xff1a; 所有的java程序必须放在一个类之中才可以执行。 主方法main是整个java程序的入口&#xff0c;所有程序都是从public static void main(String[] args)开始运行的。 类定义有两种形式&#xff1a; public class:文件名和类名一致。每一个*.java文件…