A central aspect of robotic motion planning is collision avoidance, where a multitude of different approaches are currently in use. Optimization-based motion planning is one method, that often heavily relies on distance computations between robots and obstacles. These computations can easily become a bottleneck, as they do not scale well with the complexity of the robots or the environment. To improve performance, many different methods suggested to use collision primitives, i.e. simple shapes that approximate the more complex rigid bodies, and that are simpler to compute distances to and from. However, each pair of primitives requires its own specialized code, and certain pairs are known to suffer from numerical issues. In this paper, we propose an easy-to-use, unified treatment of a wide variety of primitives. We formulate distance computation as a minimization problem, which we solve iteratively. We show how to take derivatives of this minimization problem, allowing it to be seamlessly integrated into a trajectory optimization method. Our experiments show that our method performs favourably, both in terms of timing and the quality of the trajectory. The source code of our implementation will be released upon acceptance.
翻译:机器人运动规划的一个中心方面是避免碰撞,目前使用多种不同方法。优化运动规划是一种方法,往往严重依赖机器人和障碍之间的距离计算。这些计算很容易成为瓶颈,因为它们与机器人或环境的复杂程度不相称。为了改进性能,许多不同方法都建议使用碰撞原始物,即与较复杂的僵硬体相近的简单形状,比较容易计算距离。然而,每对原始体需要自己的专门代码,而某些原始体则知道它们会受到数字问题的影响。在本文件中,我们建议对各种原始体采用简单易用的、统一的处理办法。我们把远距离计算作为一种最小化的问题,我们反复地加以解决。我们展示如何利用这种最小化问题的衍生物,使它与轨迹优化方法无缝地结合。我们的实验表明,我们的方法在时间和轨迹质量上都是有利的。我们执行的源代码一旦被接受,就会被释放。