新書推薦:
《
双城史
》
售價:HK$
110.9
《
冯友兰和青年谈心系列:不是问题的问题(哲学大师冯友兰和年轻人谈心,命运解读)
》
售價:HK$
57.3
《
月与蟹(青鲤文库)荣获第144届直木奖,天才推理作家经典作品全新译本。一部青春狂想曲,带你登上心理悬疑之巅。
》
售價:HK$
51.8
《
索恩丛书·盛清统治下的太监与皇帝
》
售價:HK$
88.5
《
透过器物看历史(全6册)
》
售價:HK$
503.7
《
我在台北故宫博物院读名画
》
售價:HK$
112.7
《
尼罗河往事:古埃及文明4000年
》
售價:HK$
78.2
《
一个人·谁也不是·十万人(诺贝尔文学奖得主反思自我的巅峰之作)
》
售價:HK$
54.9
|
編輯推薦: |
·数据收集:利用不同的机器学习技术,机器人可以从小型数据集中学习,并能够将获得的知识泛化到其他示例。 ·控制方法:在运动时进行重新规划以适应新的环境约束,通过冗余处理路径规划中的不确定性,可行性优于最优性。 ·从规划到行动:提出一套新的控制律,利用时不变动态系统,使机器人能够执行无缝控制和高速复杂的行动。 ·柔性控制和力控制:通过柔性处理力控制中的不确定性,并通过将这些方法嵌入动态系统的基础控制来提高重新规划轨迹的能力。·本书网站提供视频、PPT等教学资源。
|
內容簡介: |
本书主要介绍如何通过动态系统学习控制律,从而使机器人具备实时反应能力。本书首先介绍机器人学习数据的收集方法,然后重点讲解使用动态系统学习控制律的核心技术,使用动态系统进行轨迹规划的方法,以及使用动态系统进行柔性控制和力控制的方法。本书提供大量应用示例,包括机械臂、拟人手和仿人机器人的全身控制等。本书要求读者熟悉关于机器人控制的基础知识,并熟悉机器学习、统计、优化以及动态系统等相关内容,适合作为高等院校机器人控制方向的研究生课程教材,也适合相关领域的技术人员参考。
|
關於作者: |
奥德·比拉德(Aude Billard)
瑞士物理学家,IEEE会士,AAIA会士。现为洛桑联邦理工学院(EPFL)工程学院教授,学习算法与系统实验室(LASA)主管。曾任教于南加州大学。目前专注于机器学习和人机交互领域,包括机器人技术、机电一体化、动态系统、计算神经科学等方向,致力于应用机器学习来支持机器人通过人类指导进行学习。
辛纳·米拉扎维(Sina Mirrazavi)
索尼 AI 高级机器人工程师,团队负责人。曾在 Nnaisense 公司担任研究科学家。目前的研究兴趣是如何赋予机器人系统高速移动能力,同时保证人机交互的安全性。拥有EPFL机器人学博士学位,师从Aude Billard教授。
纳迪亚·菲格罗亚(Nadia Figueroa)
宾夕法尼亚大学机械工程和应用力学系助理教授,同时任职于计算机和信息科学系,并担任通用机器人技术、自动化、传感和感知(GRASP)实验室教师顾问。曾在麻省理工学院(MIT)计算机科学和人工智能实验室(CSAIL)交互式机器人小组担任博士后助理研究员。目前致力于为协作式人类感知机器人系统开发安全、控制、评估和学习算法。拥有EPFL机器人学博士学位,师从Aude Billard教授。
|
目錄:
|
目 录
Learning for Adaptive and Reactive Robot Control: A Dynamical Systems Approach
译者序
前言
符号表
第一部分 绪论
第1章 机器人动态控制系统的利用和学习——概述 2
1.1 预备知识和附加材料 2
1.2 不确定条件下的轨迹规划 2
1.2.1 规划抓取物体的路径 3
1.2.2 在线更新规划 5
1.3 计算动态系统的路径 7
1.3.1 稳定系统 8
1.4 学习用于自动规划路径的控制律 9
1.5 学习如何组合控制律 11
1.6 通过学习修改控制律 12
1.7 动态系统的耦合 13
1.8 动态系统的柔性控制的生成和
学习 15
1.9 控制架构 17
第2章 收集学习数据 20
2.1 生成数据的方法 20
2.1.1 应使用哪种方法,何时使用 21
2.2 示教机器人的接口 21
2.2.1 运动跟踪系统 22
2.2.2 匹配问题 22
2.2.3 拖动示教 23
2.2.4 遥操作 24
2.2.5 传力接口 24
2.2.6 组合接口 24
2.3 数据要求 25
2.4 教机器人打高尔夫球 27
2.4.1 通过人类示教任务 27
2.4.2 从失败和成功的案例中学习 29
2.5 从最优控制中收集数据 30
第二部分 控制器的学习
第3章 控制律的学习 32
3.1 预备知识 33
3.1.1 动态系统学习的多元回归 33
3.1.2 稳定动态系统的Lyapunov
理论 36
3.2 线性系统组合的非线性动态系统 40
3.3 学习稳定非线性动态系统 42
3.3.1 约束高斯混合回归 42
3.3.2 动态系统的稳定估计 44
3.3.3 非线性动态系统学习的评估 47
3.3.4 LASA手写数据集:评估稳定
动态系统学习的基准 48
3.3.5 机器人实现 53
3.3.6 动态系统的稳定估计表达
方法的缺点 55
3.4 学习稳定的高度非线性动态系统 56
3.4.1 联合线性变参表达方法 56
3.4.2 物理一致性贝叶斯非参数高斯
混合模型 59
3.4.3 线性变参动态系统的稳定
估计 64
3.4.4 离线学习算法评估 68
3.4.5 机器人实现 74
3.5 学习稳定的二阶动态系统 79
3.5.1 二阶线性变参–动态系统表达
方法 79
3.5.2 二阶动态系统的稳定估计 81
3.5.3 学习算法评估 82
3.5.4 机器人实现 83
3.6 本章小结 84
第4章 学习多种控制律 86
4.1 通过状态空间划分组合控制律 86
4.1.1 简单方法 87
4.1.2 问题公式 89
4.1.3 缩放和稳定性 92
4.1.4 重建精度 92
4.1.5 机器人实现 93
4.2 学习具有分岔的动态系统 95
4.2.1 具有Hopf分岔的动态系统 96
4.2.2 动态系统的期望形状 96
4.2.3 两步优化 98
4.2.4 非线性极限环的扩展 100
4.2.5 机器人实现 101
第5章 学习控制律序列 102
5.1 学习局部活动全局稳定动态
系统 103
5.1.1 具有单个局部活动区域的
线性局部活动全局稳定动
态系统 106
5.1.2 具有多个局部活动区域的
非线性局部活动全局稳定
动态系统 110
5.1.3 学习非线性局部活动全局
稳定动态系统 115
5.1.4 学习算法的评估 118
5.1.5 机器人实现 120
5.2 隐马尔可夫模型线性变参–动态
系统的学习序列 124
5.2.1 逆线性变参–动态系统公式和
学习方法 125
5.2.2 使用高斯混合模型学习稳定
逆线性变参–动态系统 126
5.2.3 使用隐马尔可夫模型的线性
变参–动态系统学习序列 132
5.2.4 模拟和机器人的实现 135
第三部分 耦合和调制控制器
第6章 耦合和同步控制器 140
6.1 预备知识 140
6.2 耦合两个线性动态系统 142
6.2.1 机器人切割 143
6.3 机械臂–手耦合运动 144
6.3.1 耦合形式 145
6.3.2 学习动力学 146
6.3.3 机器人实现 150
6.4 耦合的眼睛–手臂–手指运动 152
第7章 接触并适应移动物体 156
7.1 如何抓取移动的物体 156
7.2 单手抓取固定的小物体 158
7.2.1 机器人实现 160
7.3 单手抓取移动的小物体 162
7.4 机器人实现 165
7.5 双手抓取移动的大物体 168
7.6 机器人实现 171
7.6.1 协调能力 171
7.6.2 抓取大型移动物体 172
7.6.3 抓取快速飞行的物体 173
第8章 适应和调制现行的
控制律 175
8.1 预备知识 175
8.1.1 稳定性 176
8.1.2 调制参数化 177
8.2 学习内部调制 178
8.2.1 局部旋转和范数缩放 178
8.2.2 收集学习数据 179
8.2.3 机器人实现 182
8.3 学习外部调制 184
8.3.1 调制、旋转和速度缩放
动力学 184
8.3.2 学习外部激活功能 186
8.3.3 机器人实现 188
8.4 从自由空间转换到接触的调制 189
8.4.1 形式化 189
8.4.2 模拟示例 192
8.4.3 机器人实现 193
第9章 避障 196
9.1 避障:形式化 196
9.1.1 障碍物描述 196
9.1.2 避障的调制 197
9.1.3 凸面障碍物的稳定性 198
9.1.4 凹面障碍物的调制 199
9.1.5 不可穿透性和收敛性 200
9.1.6 将动态系统封闭在工作
空间中 201
9.1.7 多个障碍物 202
9.1.8 避开移动障碍物 203
9.1.9 学习障碍物的形状 204
9.2 避免自碰撞和关节级障碍物 205
9.2.1 逆向运动学约束和自碰撞
约束的组合 206
9.2.2 学习避免自碰撞边界 207
9.2.3 避免自碰撞数据集的构造 209
9.2.4 用于大数据集的稀疏支持
向量机 210
9.2.5 机器人实现 212
第四部分 动态系统的柔性和力控制
第10章 柔性控制 214
10.1 机器人何时以及为什么应该是
柔性的 214
10.2 柔性运动发生器 217
10.2.1 可变阻抗控制 220
10.3 学习期望的阻抗分布 227
10.3.1 从人体运动中学习可变阻
抗控制 227
10.3.2 从拖动示教中学习可变阻
抗控制 228
10.4 动态系统的被动交互控制 230
10.4.1 非守恒动态系统的扩展 231
第11章 力控制 235
11.1 动态系统接触任务中的运动和力的生成 235
11.1.1 接触任务的基于动态系统的
策略 237
11.1.2 机器人实验 238
第12章 结论与展望 241
附录
附录A 动态系统理论的背景 244
附录B 机器学习的背景 251
附录C 机器人控制的背景 286
附录D 证明和推导 288
附注 303
参考文献 306
|
內容試閱:
|
前 言
Learning for Adaptive and Reactive Robot Control: A Dynamical Systems Approach
献给一个机器人将变得敏捷、智能和安全的世界。
为了理解现状,我们先回顾历史。
人类从未停止制造工具和机器,无论是为了让日常琐事变得更容易,提高生产力,还是仅仅为了享受创造的纯粹乐趣。20世纪在这方面的研究成果尤其丰富,创造了大量具有各种形状和功能的机器人。许多人被机器人很快就能完成大量任务所吸引,但事实是,机器人在很大程度上仍然只能以重复的方式执行常规任务。
如今,机器人的自主性和决策能力几乎仅限于点到点。而当机器人被限制在工业环境中时,这种点到点的能力已经足够了,但这不能满足21世纪对机器人的期望。许多人希望将机器人部署在任何地方:在街道上,如汽车、轮椅和其他移动设备;在家中,为我们烹饪、打扫房间以及提供娱乐服务;从身体角度来看,替代失去的肢体或增强其能力。为了让这些机器人成为现实,它们需要做出较大的改变:它们必须远离舒适、隐蔽、在很大程度上可预测的工业世界。为了应对环境中经常发生的意外变化,机器人需要在不危及人类的情况下快速、适当地调整其行动路径。
思考一个机器人轮椅,其任务是在人群中穿梭,而不能撞到任何行人,这是一个烦琐的挑战。当机器人修改路径以远离拥挤的行人时,它应该避免减速过猛,因为这可能会导致用户被甩出轮椅。类似地,当用户穿过自助餐厅时,负责搬运托盘的手臂假体需要调整姿势,以避免碰到附近的其他消费者,同时确保托盘保持水平。随着托盘上被堆满更多的菜肴,它需要进一步调整力的方向。为了避开人群中的障碍物或以极快的速度抓住盘子边缘,轮椅和假体都需要在几毫秒内做出反应。
本书介绍了可以在运动时重新规划以适应新环境约束的控制方法。这种方法试图赋予机器人必要的反应能力,以调整其在有严格时间限制的情况下做出的路径规划。
在执行动作时,决定什么重要、什么不重要是多年专业知识的结果。例如,我们知道托盘应该水平放置,因为我们已经了解到,某些倾斜的放置方式会导致盘子掉到地板上。这一学习过程是在示教人员的耐心指导下进行的,他们很友善地为我们擦地板,并根据需要为我们拿托盘。机器人的用户不太可能愿意通过类似的实践来教机器人。因此,让机器人向那些有经验的人学习是至关重要的,这样可以通过很少的例子完成学习。本书介绍了一些方法,通过这些方法,机器人能从少数几个例子中学习控制律。我们提供了理论保证,确保机器人能够将其获得的知识泛化到所提供的示例之外。
控制机器人的方法
为了产生运动,传统上机器人依赖规划技术来计算可行路径[89]。在早期,规划是很慢的,需要数小时才能确定路径。然而,近期的科技进步使机器人能够在几秒钟内生成复杂的规划[68]。然而,这些规划的可行性取决于是否拥有准确的环境模型。现在的机器人学认为,没有一个现实世界的模型会在很长一段时间内足够准确或有效。环境和环境相关的动力学都在变化。
物体可能会因为被操纵而改变纹理和质量,而且这种改变的方式不容易被数学建模。机器人本身的动力学虽然在机器人出厂时是已知的,但必然会随着机械的折旧而改变。为了解决这些问题,机器人领域开始在规划和控制中纳入不确定性模型[110]。然而,这些方法的鲁棒性取决于拥有良好的不确定性模型。由于世界模型和不确定性模型都可能发生变化,机器人必须能够根据自己的经验学习和更新模型。此外,它们必须能够生成能应对运行时不确定性的动态规划,而不需要重新规划。
通过冗余处理路径规划中的不确定性,可行性优先于最优性 大多数任务在实现方式上都需要冗余。在获得技能时,人类学习的不是执行任务的单一方法,而是完成任务的各种方式。例如,当我们在保持杯子垂直的情况下来抓取一杯热茶时,我们允许在水平面上移动杯子的方式发生变化。这可以帮助我们避免意外干扰(例如路径上的障碍物),并采取舒适的手臂姿势。冗余是有利的,因为它提供了多种解决任务的方法,以及适应扰动所需的灵活性。本书提出了一个机器人控制器,它克服了环境中的不确定性,通过利用冗余的方式完成任务。这种冗余可以嵌入单个控制律中,该控制律提供了一组不同的路径来实现相同的目标。因此,我们认为,为了适应现实世界的不确定性,可行性优先于最优性。
从规划到行动
本书提供了一套新的控制律,使机器人能够执行无缝控制和高速复杂的行动。这种在线反应性是使用时不变动态系统的结果。由于动态系统能够生成对动态环境中的不确定性和变化具有固有鲁棒性的在线运动规划,因此使用动态系统解决机器人中的运动规划问题已成为主流[123,125,58,8,78]。动态系统也是模拟人类运动的关键[140,130,129,63,132]。因此,将其用于机器人控制,不仅简化了机器人与人类同步移动时的控制,还简化了运动模型从人到机器人的转换。
在线反应性确保了机器人上有足够好的中央处理器,但它还需要能够提供多种解决方案的固有鲁棒控制律。基于动态系统的控制提供了一种封闭形式的解决方案,无须进一步优化。动态系统提供了理论保证,例如向目标靠拢、不穿透障碍物,以及被动性等。此外,它允许人们轻松地同步多个机器人系统,从而确保对目标的协调控制。它还可以用于在控制模式之间快速切换。
通过柔性处理力控制中的不确定性 当今机器人面临的一个主要挑战是应对突发的意外力,如果处理不当,可能会给附近的人带来严重风险。这些意外的接触力可能来自外部意外冲击,例如,有人将物体放在机器人的路径上,或者有人撞到机器人。它们也可能由机器人操作时工件的意外断裂引起。为了减轻意外的力引起的损坏或伤害风险,一种方法是使机器人具有柔性。柔性允许机器人吸收部分冲击力。控制机器人柔性的一种强大的方法是阻抗控制[55],机器人运动吸收或抵抗外力的程度通过阻抗律的刚度来控制。长期以来,控制器的柔性是固定的。然而,最近的研究探索了如何改变这种柔性,使机器人有时是刚性的,有时是柔性的[25,148]。当需要精度时(例如当移动到狭窄通道时),可以要求机器人是高度刚性的。一旦进入自由空间,机器人可以再次变为柔性的。也可以使机器人在方向上是柔性的。例如,如果某些控制方向必须保持刚性(例如平衡负载),而其他方向可以用来吸收干扰,这是有用的。本书介绍了几种不同的方法,通过这些方法可以了解任务相对柔性及其在任务完成过程中的变化,以及如何将这些嵌入动态系统基础控制中,以提高动态重新规划轨迹的能力。
学习需要数据
在本书中,我们假设数据可以通过人类提供任务示教或通过其他方式提供给机器人,例如通过最优控制来解决问题,以生成可行控制律集。
有几种从人类示教中生成数据的技术,我们在第2章简要回顾了这些技术,有关更完整的数据,请参见文献[16,120]。当机器人必须由人类来训练时,关键是示教的数量要少,这样人类才有可能忍受。因此,该算法必须从稀疏数据集中学习。除了稀疏之外,由于噪声或缺乏熟练的示教人员,采集到的数据通常也不太理想。在本书中,学习利用了不同的机器学习技术,从而可以从小型数据集中学习。附录B介绍了这些技术。
从示教中学习的另一个问题是,用户必须提供明确的标签,告诉机器人哪个示教对应于哪个任务。我们展示了可以通过算法来实现这一点,这些算法可以自动将长流程的示教分解为子段,并将动态系统控制律关联到每个部分。我们还提供了自动发现潜在动态数量的技术示例。
教学建议
本书旨在为研究生课程提供支持,因此以教学方式构建。本书主要分为四个部分,共12章,章节组织结构见图0.1。
图0.1 本书章节组织结构
我们从由两章组成的绪论部分开始。第1章概述了本书中介绍的所有技术,通过机器人应用的真实示例介绍了这些技术的起源。第2章介绍了收集数据的技术,以便学习本书其余部分中介绍的系统。我们主要侧重于从示教和优化中学习,还简要介绍了强化学习的概念。
本书的第二部分介绍了使用动态系统学习控制律的核心技术。提出了学习由单个吸引子动态系统组成的控制律的方法(第3章),分别学习了一阶和二阶动态系统的方法。接下来,在第4章中介绍了学习由不同吸引子和不同动态组成的控制律的方法。在第5章中,展示了如何对吸引子和相关动态进行排序。
第三部分是对第二部分的扩展,介绍了使用动态系统进行轨迹规划的方法。第6章提出了基于动态系统的一个或多个控制器的耦合概念,以实现对多个agent的同步控制。我们在第7章中展示了如何用一个或两个机械臂捕捉飞行物体。第8章介绍了通过学习局部动态来修改已知动态系统的方法,而第9章展示了这种调制在避障中的应用。
第四部分介绍了使用动态系统进行柔性控制和力控制的方法。第10章首先简要介绍了通过阻抗控制的柔性控制。然后介绍了学习可变阻抗控制器的两种方法,并解释了如何将学习阻抗与动态系统相结合。第11章解释了如何将动态系统与力控制结合使用,以便在与移动物体接触时进行柔性控制。
本书的每一章都包含了应用这些技术来控制机器人的应用示例,包括机械臂、拟人手和仿人机器人的全身控制。我们还介绍了如何使用多个机械臂对物体进行灵巧操作,用于实时避开复杂和移动的障碍物。我们举例说明了在机器人捕捉飞行中的物体并避免人类向其移动的应用中,动态系统在即时快速重新规划方面的优势。这些应用程序的视频可以在本书的网站上找到,请访问https://www.epfl.ch/labs/lasa/mit-press-book-learning/。
本书应按照章节顺序阅读。第1~3章是本书的核心,应首先阅读。第4~11章对这些核心概念进行了扩展。预计教师只能选择这些章节中的一部分在课程中呈现。为了配合每一章,我们提供了手写和编程练习。练习和幻灯片可在本书网站下载。
预备知识 本书假设读者已经学习了机器人控制的基础课程,并熟悉以下概念: PD控制、逆向运动学和逆动力学、轨迹规划和最优控制。本书还假设读者熟悉机器学习、统计和优化以及动态系统。
附录提供了本书中使用的机器学习技术的补充信息。在主要章节中,我们还简要介绍了动态系统的主要理论概念和机器人控制。附录简要总结了与本书相关的动
|
|