Most robotics applications are typically accompanied with safety restrictions that need to be satisfied with a high degree of confidence even in environments under uncertainty. Controlling the state distribution of a system and enforcing such specifications as distribution constraints is a promising approach for meeting such requirements. In this direction, covariance steering (CS) is an increasingly popular stochastic optimal control (SOC) framework for designing safe controllers via explicit constraints on the system covariance. Nevertheless, a major challenge in applying CS methods to systems with the nonlinear dynamics and chance constraints common in robotics is that the approximations needed are conservative and highly sensitive to the point of approximation. This can cause sequential convex programming methods to converge to poor local minima or incorrectly report problems as infeasible due to shifting constraints. This paper presents a novel algorithm for solving chance-constrained nonlinear CS problems that directly addresses this challenge. Specifically, we propose an operator-splitting approach that temporarily separates the main problem into subproblems that can be solved in parallel. The benefit of this relaxation lies in the fact that it does not require all iterates to satisfy all constraints simultaneously prior to convergence, thus enhancing the exploration capabilities of the algorithm for finding better solutions. Simulation results verify the ability of the proposed method to find higher quality solutions under stricter safety constraints than standard methods on a variety of robotic systems. Finally, the applicability of the algorithm on real systems is confirmed through hardware demonstrations.
翻译:大多数机器人应用通常伴随着安全限制,即使在不确定环境下也需要以高置信度满足这些限制。通过控制系统的状态分布并强制执行分布约束等规范,是满足此类要求的一种有前景的方法。在这一方向上,协方差引导(CS)作为一种日益流行的随机最优控制(SOC)框架,通过显式约束系统协方差来设计安全控制器。然而,将CS方法应用于具有机器人学中常见的非线性动力学和机会约束的系统时,一个主要挑战在于所需的近似是保守的,并且对近似点高度敏感。这可能导致序列凸规划方法收敛到较差的局部极小值,或者由于约束偏移而错误地报告问题不可行。本文提出了一种解决机会约束非线性CS问题的新算法,直接应对这一挑战。具体而言,我们提出了一种算子分裂方法,将主问题暂时分解为可并行求解的子问题。这种松弛的益处在于,它不要求所有迭代在收敛前同时满足所有约束,从而增强了算法探索更优解的能力。仿真结果验证了所提方法在多种机器人系统上,相较于标准方法,能够在更严格的安全约束下找到更高质量的解。最后,通过硬件演示证实了该算法在实际系统中的适用性。