The optimal robot assembly planning problem is challenging due to the necessity of finding the optimal solution amongst an exponentially vast number of possible plans, all while satisfying a selection of constraints. Traditionally, robotic assembly planning problems have been solved using heuristics, but these methods are specific to a given objective structure or set of problem parameters. In this paper, we propose a novel approach to robotic assembly planning that poses assembly sequencing as a sequential decision making problem, enabling us to harness methods that far outperform the state-of-the-art. We formulate the problem as a Markov Decision Process (MDP) and utilize Dynamic Programming (DP) to find optimal assembly policies for moderately sized strictures. We further expand our framework to exploit the deterministic nature of assembly planning and introduce a class of optimal Graph Exploration Assembly Planners (GEAPs). For larger structures, we show how Reinforcement Learning (RL) enables us to learn policies that generate high reward assembly sequences. We evaluate our approach on a variety of robotic assembly problems, such as the assembly of the Hubble Space Telescope, the International Space Station, and the James Webb Space Telescope. We further showcase how our DP, GEAP, and RL implementations are capable of finding optimal solutions under a variety of different objective functions and how our formulation allows us to translate precedence constraints to branch pruning and thus further improve performance. We have published our code at https://github.com/labicon/ORASP-Code.
翻译:最优机器人装配规划问题具有挑战性,其关键在于需在指数级数量的可行方案中寻找最优解,同时需满足一系列约束条件。传统上,机器人装配规划问题采用启发式方法求解,但这类方法仅适用于特定目标结构或问题参数集合。本文提出了一种新颖的机器人装配规划方法,将装配序列构建为序贯决策问题,从而能够利用远优于现有技术的求解手段。我们将该问题形式化为马尔可夫决策过程(MDP),并运用动态规划(DP)为中等规模结构寻找最优装配策略。进一步地,我们拓展了该框架以利用装配规划的确定性特征,提出了一类最优图遍历装配规划器(GEAP)。对于更大规模的结构,我们展示了如何通过强化学习(RL)学习生成高奖励装配序列的策略。我们在多种机器人装配问题中评估了该方法,包括哈勃空间望远镜、国际空间站和詹姆斯·韦布空间望远镜的装配。此外,我们展示了DP、GEAP和RL实现如何在多种不同的目标函数下找到最优解,以及我们的形式化方法如何将前序约束转化为分支剪枝,从而进一步提升性能。相关代码已发布于https://github.com/labicon/ORASP-Code。