虚拟环境(如ALE、MuJoCo和OpenAI Gym)显著推动了智能体控制与规划学习算法的发展和评估。然而,目前的虚拟环境大多集中于刚体动力学,关于标准软体环境和基准的研究却相对较少,尽管软体动力学在多个研究领域的应用十分广泛。
与刚体动力学相比,软体动力学的模拟、控制和分析更为复杂。其主要挑战之一来自于其无限的自由度(DoFs)及对应的高维控制方程。这种内在复杂性使得许多专为刚体设计的机器人算法无法直接应用,同时也限制了软体任务算法评估所需模拟基准的发展。
在一项近期研究中,MIT沃森人工智能实验室的首席科学家淦创团队与来自MIT、USCD等机构的研究者共同提出了一个支持梯度可导的机器人软体操作平台(PlasticineLab),以应对这一挑战。这项研究在ICLR 2021大会上获得了spotlight的荣誉。
论文链接:
https://aRxiv.oRg/pdf/2104.03311.pdf
项目链接:
http://plasticinelab.csAIl.MIT.edu/
代码下载:
https://Github.coM/hzaskywalkeR/PlasticineLab
该平台提供了10种软体操作任务的基准测试,涵盖50种不同配置,任务包括捏、滚、切、成型和雕刻等复杂操作。其创新之处在于采用可微物理模拟环境,并首次为软体分析提供梯度信息,从而支持基于梯度的优化和监督学习。
PLASTICINELAB学习环境
PlasticineLab包含了一系列具有挑战性的软体操作任务,所有任务都要求智能体利用刚体操纵器对一块或多块3D橡皮泥进行变形。底层模拟器支持用户执行复杂的软体操作,如捏、滚、切、成型和雕刻。
任务描述
PlasticineLab提供10种专注于软体操作的任务。每一任务都包括一个或多个软体和一个操纵器,最终目标是通过规划操纵器的动作使软体变形为目标形状。智能体设计遵循标准的强化学习框架,采用马尔可夫决策过程进行建模。每个任务的设计由其状态和观察、动作表示、目标定义以及奖励函数构成。
马尔可夫决策过程
通常,马尔可夫决策过程包括状态空间、动作空间、奖励函数和转移函数。在PlasticineLab中,物理模拟器负责状态之间的转移。智能体的目标是找到一个随机策略,根据当前状态对动作进行采样,以最大化预期的未来累积回报,其中为折扣因子。
任务的状态包括软体的准确表示和操纵器的末端执行器。我们采用基于粒子的模拟方法,将软体物体表示为粒子系统,状态包括粒子的位置、速度以及应变和应力信息。具体来说,粒子的状态被编码为一个矩阵,矩阵的大小由粒子数量决定,每一行包含一个粒子的相关信息:两个3D向量表示位置和速度,两个3D矩阵表示形变梯度和仿射速度场,所有信息堆叠并转化为一个向量。
作为运动学刚体,操纵器的末端执行器由7D向量表示,包括3D位置和4D四元数方向,某些场景中可能会禁用部分自由度。每个任务会生成一个矩阵以编码操纵器的完整状态,数量视任务要求而定,通常为3或7,取决于操纵器是否需要旋转。关于软体和操纵器之间的交互,我们实现了刚体和软体之间的单向耦合,并固定了其他物理参数,例如粒子质量和操纵器摩擦力。
观察
虽然粒子状态能够全面表征软体动力学,但其高自由度使得任何直接使用的规划和控制算法都难以处理。因此,我们对粒子进行了下采样,并提取位置和速度(每个粒子为6D),将这些信息叠加为一个矩阵,以作为粒子系统的观察。值得注意的是,同一任务中的粒子在橡皮泥的初始配置中保持固定的相对位置,从而在不同配置的任务中实现一致的粒子观察。结合粒子观察和操纵器状态,最终获得的观察向量包含多个元素。
动作
在每个时间步长中,智能体以运动学方式更新操纵器的线速度(必要时也包括角速度),生成一个动作向量,其大小为3或6,具体取决于操纵器是否能旋转。对于每个任务,我们提供全局的动作下限和上限,以确保物理模拟的稳定性。
目标和奖励
每个任务都有一个由质量张量表示的目标形状,此目标形状本质上是将其密度场离散化为一个规则网格。每个时间步长t,我们计算当前软体的质量张量。通过将目标形状和当前形状离散为网格表示,我们能够比较相同位置的密度,从而定义它们的相似性,避免了匹配粒子系统或点云的复杂问题。奖励函数的完整定义包括相似性度量以及两个针对操纵器高层次运动的正则化器:
其中,表示两个形状的质量张量之间的距离,表示两个形状质量张量的带符号距离场的点积,鼓励操纵器靠近软体。在所有任务中,正权重均为常数。偏差确保每个环境初始的奖励为非负值。
评估组件
PlasticineLab包括10种不同的任务。我们在此描述了4个具有代表性的任务,其余6个任务在附录B中详细说明。
这些任务及其不同配置的变体构成了一套评估组件,用于基准测试软体操作算法的性能。每个任务提供5种变体(共计50种配置),通过扰动初始和目标形状及操纵器的初始位置生成。
