英文原文:

https://towardsdatascience.com/robotic-control-with-graph-networks-f1b8d22b8c86


强化学习算法是不是另一种形式的AI4Science?

强化学习是一种时序决策算法,比较经典的应用场景就是机器人控制,但是实际上机器人控制是有两种主流的控制算法的:一类是把机器人控制问题看作是自动控制问题,结合物理规则进行数学建模,这时候的机器人控制问题就被转换为一种类似Scince问题的形式,对机器人下个时序的决策就是在根据建立好的数学模型进行方程式的求解,该种方式最大的优势就是可以获得较为精确的解,但其缺点就是计算复杂并且难以自动化建模,从而难以有较好的适用范围,需要较大的人力投入和较长的周期,对于复杂场景难以应付;另一类则是使用AI方法,也就是机器学习方法中的强化学习算法,这时候不需要对机器人的动力学(dynamic)进行建模,而是采用trial-and-error 的方法通过对环境的不断交互来采集数据并用这些数据训练强化学习算法,该种方法的优点就是不需要人力去对机器人的动力学建模,自动化求解程度高,适用的场景更广,可以解决更复杂的问题,求解周期更短,其缺点就是依赖数据,往往需要较大的数据量,并且有sim2real的问题,并且在real的时候难免要用到真实机器人进行较长时间的真实场景下的数据采样,对真实机器人造成一定损害甚至是损坏,并且求解的往往是近似解,在简单场景下往往自动控制算法的解要优于强化学习算法。

可以看到,如果单纯的只从机器人控制问题出发按照传统自动控制的角度来看,机器人控制其实也可以被视作一种Science问题,而强化学习算法也是在一定程度上起到了对自动控制算法的替代,在如此问题背景的限制下强化学习算法也可以被看做是一种AI4Science算法。

本文主要的讨论是:

https://towardsdatascience.com/robotic-control-with-graph-networks-f1b8d22b8c86

这篇blog中最开始讨论强化学习算法是一种融合进环境动力学(dynamic)的决策方法,解决机器人控制的深度强化学习算法可以看作是一种显示/隐式的拟合环境动力学(dynamic)后的决策算法,而深度强化学习算法所使用的神经网络可以看作是对这个动力学(dynamic)的近似器(approximator)。

既然深度强化学习算法可以被看作是一种基于动力学(dynamic)近似器(approximator),那么就必然存在使用那个类型的神经网络作为近似器(approximator)可以有更好的性能表现(performance)。

由于不同的模型,不同类型的神经网络有着不同bias,因此不同的神经网络对不同的问题有着不同的表现能力,比如:线性分类问题如果使用非线性模型进行拟合是没有使用线性模型拟合的性能表现好的;对于图像分类问题,使用全连接网络是没有使用CNN网络性能表现好的;正如同这些cases一样,对于机器人控制问题如果使用深度强化学习算法的话,使用图神经网络可以提高算法的performance。

给出一个机器人控制的示意图:

可以看到,在关节型的机器人控制问题上,图网络可以更好的表现机器人关节间的拓扑关系,并且由于图网络更关注的是关节点之间的拓扑关系而不是关节点之间的距离关系,因此机器人的躯干和四肢的长短并不会影响图网络的拓扑关系,因而使用图网络来对关节型机器人的深度强化学习算法做拟合会有更好的泛化性,取得更高的performance。

PS. 要注意,这里之所以可以使用图网络来作为强化学习算法的拟合函数,其原因在于关节型机器人的各关节之间的拓扑关系具有不变性。可以说,用图网络提高机器人控制算法性能是用于在关节型的机器人中的,如果是非关节型的机器人那么也很难适用这里提到的图神经网络的。

相关论文:

Relational inductive biases, deep learning, and graph networks

Graph Networks as Learnable Physics Engines for Inference and Control

机器人控制与图网络( 利用关系归纳偏置改善泛化和控制)—— Robotic Control with Graph Networks——Exploiting relational inductive bias to improve generalization and control的更多相关文章

  1. UML类图几种关系的总结,泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

    在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Compositi ...

  2. [UML][转]UML类图符号 各种关系说明以及举例

    修改自:http://www.cnblogs.com/duanxz/archive/2012/06/13/2547801.html UML中描述类和类之间相互关系的方式包括:依赖(Dependency ...

  3. [转发]UML类图符号 各种关系说明以及举例

    UML中描述对象和类之间相互关系的方式包括:依赖(Dependency),关联(Association),聚合(Aggregation),组合(Composition),泛化(Generalizati ...

  4. UML类图符号 各种关系说明以及举例(转载)

    文章出处:http://www.cnblogs.com/duanxz/archive/2012/06/13/2547801.html UML中描述对象和类之间相互关系的方式包括:依赖(Dependen ...

  5. 对Inductive Bias(归纳偏置)的理解

    参考资料: https://en.wikipedia.org/wiki/Inductive_bias http://blog.sina.com.cn/s/blog_616684a90100emkd.h ...

  6. 设计模式之UML类图的常见关系

    设计模式之UML类图的常见关系 本文来自转载 烧点饭博客 本篇会讲解在UML类图中,常见几种关系: 泛化(Generalization),依赖(Dependency),关联(Association), ...

  7. 转 UML类图几种关系的总结

    UML类图几种关系的总结   在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregati ...

  8. UML类图几种关系的总结(转)

    原文:http://gjhappyyy.iteye.com/blog/1422515 在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization), ...

  9. UML类图的常见关系1

    设计模式之UML类图的常见关系(一)   本篇会讲解在UML类图中,常见几种关系: 泛化(Generalization),依赖(Dependency),关联(Association),聚合(Aggre ...

  10. UML类图几种关系的总结(网摘)

    Source link:http://www.open-open.com/lib/view/open1328059700311.html UML类图几种关系的总结 原文出处:[深度开源] 在UML类图 ...

随机推荐

  1. leetcode | 103. 二叉树的锯齿形层序遍历 | JavaScript实现

    题目 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 .(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行). 思路 按照正常的层序遍历,然后再对下标为奇数的数组进 ...

  2. CPU的一、二、三级缓存的区别

    引言 概念 缓存大小也是CPU的重要指标之一,而且缓存的结构和大小对CPU速度的影响非常大,CPU内缓存的运行频率极高,一般是和处理器同频 运作,工作效率远远大于系统内存和硬盘.实际工作时,CPU往往 ...

  3. 面试官:谈谈对SpringAI的理解?

    Spring AI 已经发布了好长时间了,目前已经更新到 1.0 版本了,所以身为 Java 程序员的你,如果还对 Spring AI 一点都不了解的话,那就有点太落伍了. 言归正传,那什么是 Spr ...

  4. 增补博客 第二十三篇 python 对比Python中的列表、元组、字典、集合、字符串等之间异同

    1. 列表(List): - 异同:列表是可变(Mutable)的有序容器,使用方括号 [] 定义,可以存储任意类型的元素.可以通过索引访问和修改列表中的元素.列表支持切片操作和列表推导式. - 相同 ...

  5. python pymysql 数据库查询操作

    import pymysql db= pymysql.connect(host="", user='', database="", password='') c ...

  6. mklink命令使得OneDrive同步任意一个文件夹

      本文介绍利用mklink命令,使得OneDrive自动同步电脑中任意指定文件夹的方法.   OneDrive是由微软提供的云存储和文件同步服务.它提供了大量的云存储空间,允许用户将文件和数据存储在 ...

  7. MoneyPrinterPlus:AI自动短视频生成工具-阿里云配置详解

    MoneyPrinterPlus是一个很好的自动短视频生成工具,虽然是一个非常好的工具,但是有些小伙伴可能不太清楚具体应该如何配置才能让它跑起来. 因为MoneyPrinterPlus依赖一些具体的配 ...

  8. C# SM2算法 加密,解密,签名,验签

    最近时间在整SM2算法,在网上看到不少代码,基本都是使用BouncyCastle库,现在这个版本算比较好的拿来分享给大家. 首先引入包 Portable.BouncyCastle 完整代码见Gitee ...

  9. ODPS 不用循环生成连续日期

    生成 20230801 ~ 20230831之间的每一天的sql代码怎么写? 只要一行代码. 一行代码: select TO_CHAR(DATEADD(TO_DATE(bizdate,'yyyymmd ...

  10. Centos7或Ubuntu 磁盘扩容

    准备 切换到root用户(获取root权限) 安装: [root]# install lvm2 -y 查看当前信息: # 查看根分区大小 $ df -h Filesystem Size Used Av ...