Hybrid model predictive control with both continuous and discrete variables is widely applicable to robotic control tasks, especially those involving contact with the environment. Due to the combinatorial complexity, the solving speed of hybrid MPC can be insufficient for real-time applications. In this paper, we proposed a hybrid MPC solver based on Generalized Benders Decomposition (GBD). The algorithm enumerates and stores cutting planes online inside a finite buffer. After a short cold-start phase, the stored cuts provide warm-starts for the new problem instances to enhance the solving speed. Despite the disturbance and randomly changing environment, the solving speed maintains. Leveraging on the sparsity of feasibility cuts, we also propose a fast algorithm for Benders master problems. Our solver is validated through controlling a cart-pole system with randomly moving soft contact walls, and a free-flying robot navigating around obstacles. The results show that with significantly less data than previous works, the solver reaches competitive speeds to the off-the-shelf solver Gurobi despite the Python overhead.
翻译:混合模型预测控制(Hybrid MPC)同时包含连续与离散变量,广泛适用于机器人控制任务,尤其是涉及与环境接触的场景。由于组合复杂度问题,混合MPC的求解速度难以满足实时应用需求。本文提出一种基于广义Benders分解(GBD)的混合MPC求解器。该算法在线枚举并存储切割平面于有限缓冲区中。经过短暂的冷启动阶段后,存储的切割平面可为新问题实例提供热启动,从而提升求解速度。即使存在扰动和随机变化的环境,求解速度仍能保持稳定。利用可行性切割的稀疏性,我们还提出一种针对Benders主问题的快速算法。通过控制带随机移动软接触墙的推车-杆系统以及绕障飞行的自由飞行机器人,验证了求解器的有效性。结果表明,尽管存在Python开销,但相比现有方法,本求解器在显著减少数据量的情况下,仍能达到与商业求解器Gurobi相当的求解速度。