DeepMind提出强化学习新算法,教智能体从零学控制

2024-04-12 20:18

本文主要是介绍DeepMind提出强化学习新算法,教智能体从零学控制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AI 科技评论按:不管你让小孩还是大人整理物品,他们很大可能都不会乖乖听你的话,如果想要让 AI 智能体进行整理收拾,那就更难了。如果想成功,需要掌握如下几个核心视觉运动技能:接近物体,抓住并举起它,打开盒子,把物体放进去。而更复杂的是,执行这些技能时,必须按照正确的顺序。

对于一些控制类的任务,比如整理桌面或堆叠物体,智能体需要在协调它的模拟手臂和手指的九个关节时,做到三个 W,即如何(how),何时(when)以及在哪里(where),以便正确地移动,最终完成任务。

在任何给定的时间内,需要明确各种可能的运动组合的数量,以及执行一长串正确动作,这些需求引申出一个严肃的问题,这成为强化学习中一个特别有趣的研究领域。

诸如奖赏塑形(reward shaping)、学徒学习(Apprenticeship learning)或从演示中学习(Learning from Demonstration)等技术可以帮助解决这个问题。然而,这些方法依赖于大量与任务相关的知识,而从零开始,通过最少的预先知识学习复杂的控制问题仍然是一个众所周知的挑战。

我们最近的论文提出了一种新的学习范式,叫做「调度辅助控制」(Scheduled Auxiliary Control (SAC-X)),我们试图通过这种学习范式来克服这个问题。

SAC-X 是基于从头开始学习复杂的任务这种想法,即一个智能体首先应该学习并掌握一套基本技能。就像婴儿在爬行或走路前必须具有协调能力和平衡能力,为智能体提供与简单技能相对应的内在目标(具有辅助作用),这会增加它理解和执行更复杂任务的可能性。

我们在几个模拟和真实的机器人任务中演示了 SAC-X 法,包括不同物体的堆叠,将物体放到盒子里。我们定义的辅助任务遵循一般原则:鼓励智能体探索其感应空间。

例如,激活手指上的触觉传感器,感知手腕的力度,利用本体感应器将关节角度调到最大,在视觉传感器范围内强制性移动物体。对于每个任务,如果实现目标,会提供相应的简单奖励。没实现目标的话,奖励为零。

智能体首先学习激活手指上的触觉传感器,然后移动物体

模拟智能体最终掌握复杂的堆叠任务

智能体接下来可以自行决定其当前的「意图」,例如下一步做什么。可能会是一个辅助任务或者是外部定义的目标任务。至关重要的是,对于目前还没有使用基于回放的离策略学习方法的任务,该代理可以从奖励信号中发现和学习。例如,当拾取或移动一个物体时,智能体可能会偶然地将物体堆叠起来,观察到「堆叠奖励」。一系列简单的任务会让智能体观察到罕见的外部奖励,所以让智能体具有安排意图的能力至关重要。

基于收集到的所有的间接知识,智能体会建立一个个性化的学习课程。在如此大的领域中,通过这种方法来利用知识非常高效,在只有很少的外部奖励信号的情况下尤其有用。

通过调度模块,智能体会决定接下来的意图。利用元学习算法,调度器会在训练过程中得到改进,该算法试图最大限度地提高主任务的进程,进而显著提高数据效率。

在探索完许多内部辅助任务之后,智能体学会了如何堆叠和整理物品

评估表明,SAC-X 能够从零开始完成我们设置的所有任务,这些任务都是在相同的辅助任务集下完成的。令人兴奋的是,利用 SAC-X,我们实验室的机器人手臂能够成功地从零开始学习拾取和摆放。在过去这极具挑战性,因为在现实世界中让机器人学习需要高效的数据,所以流行的方法是预训练模拟智能体,然后再将这种能力转移到真正的机器人手臂中。

针对真实的机器人手臂, SAC-X 能学习如何举起和移动绿色的立方体,在此之前它从来没有接触过这类任务

我们认为 SAC-X 是通向从零学习控制任务的重要一步,只需定义好整体目标。SAC-X 允许任意定义辅助任务,这些任务可以基于一般的看法(如有意激活传感器),最终会涵盖研究人员认为重要的任务。从这方面来说,SAC-X 是一种通用的强化学习方法,可以广泛应用于控制和机器人领域之外的一般稀疏强化学习环境。

论文地址:

https://arxiv.org/abs/1802.10567

via:DeepMind,AI 科技评论编译整理。



点击下方“阅读原文”了解【人工智能实验平台】
↓↓↓

这篇关于DeepMind提出强化学习新算法,教智能体从零学控制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/898133

相关文章

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

基于Python实现智能天气提醒助手

《基于Python实现智能天气提醒助手》这篇文章主要来和大家分享一个实用的Python天气提醒助手开发方案,这个工具可以方便地集成到青龙面板或其他调度框架中使用,有需要的小伙伴可以参考一下... 目录项目概述核心功能技术实现1. 天气API集成2. AI建议生成3. 消息推送环境配置使用方法完整代码项目特点

JavaScript实战:智能密码生成器开发指南

本文通过JavaScript实战开发智能密码生成器,详解如何运用crypto.getRandomValues实现加密级随机密码生成,包含多字符组合、安全强度可视化、易混淆字符排除等企业级功能。学习密码强度检测算法与信息熵计算原理,获取可直接嵌入项目的完整代码,提升Web应用的安全开发能力 目录

利用Python实现Excel文件智能合并工具

《利用Python实现Excel文件智能合并工具》有时候,我们需要将多个Excel文件按照特定顺序合并成一个文件,这样可以更方便地进行后续的数据处理和分析,下面我们看看如何使用Python实现Exce... 目录运行结果为什么需要这个工具技术实现工具的核心功能代码解析使用示例工具优化与扩展有时候,我们需要将

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

MySQL精准控制Binlog日志数量的三种方案

《MySQL精准控制Binlog日志数量的三种方案》作为数据库管理员,你是否经常为服务器磁盘爆满而抓狂?Binlog就像数据库的“黑匣子”,默默记录着每一次数据变动,但若放任不管,几天内这些日志文件就... 目录 一招修改配置文件:永久生效的控制术1.定位my.cnf文件2.添加核心参数不重启热更新:高手应

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示