Hybrid model predictive control with both continuous and discrete variables is widely applicable to robotic control tasks, especially those involving contacts with the environment. Due to combinatorial complexity, the solving speed of hybrid MPC can be insufficient for real-time applications. In this paper, we propose a hybrid MPC algorithm based on Generalized Benders Decomposition. The algorithm enumerates and stores cutting planes online inside a finite buffer and transfers them across MPC iterations to provide warm-starts for new problem instances, significantly enhancing solving speed. We theoretically analyze this warm-starting performance by modeling the deviation of mode sequences through temporal shifting and stretching, deriving bounds on the dual gap between transferred optimality cuts and the true optimal costs, and utilizing these bounds to quantify the level of suboptimality guaranteed in the first solve of the Benders Master Problem. Our algorithm is validated in simulation through controlling a cart-pole system with soft contact walls, a free-flying robot navigating around obstacles, and a humanoid robot standing on one leg while pushing against walls with its hands for balance. For our benchmark problems, the algorithm enumerates cuts on the order of only tens to hundreds while reaching speeds 2-3 times faster than the off-the-shelf solver Gurobi, oftentimes exceeding 1000 Hz. The code is available at https://github.com/XuanLin/Benders-MPC.
翻译:混合模型预测控制因其同时包含连续与离散变量,在机器人控制任务中具有广泛适用性,尤其适用于涉及环境接触的场景。受组合复杂性影响,混合模型预测控制的求解速度往往难以满足实时应用需求。本文提出一种基于广义Benders分解的混合模型预测控制算法。该算法在线枚举并存储有限缓冲区内的割平面,通过跨模型预测控制迭代传递割平面为新问题实例提供预热启动,从而显著提升求解速度。我们通过时域偏移与拉伸建模模式序列的偏差,从理论上分析了预热启动性能:推导出传递的最优性割与真实最优成本之间对偶间隙的边界,并利用这些边界量化Benders主问题首次求解时保证的次优性水平。通过控制含软接触墙的倒立摆系统、绕障碍物导航的自由飞行机器人以及单腿站立并通过手推墙壁保持平衡的人形机器人,我们在仿真中验证了算法有效性。在基准问题中,算法仅需枚举数十至数百个割平面,求解速度即达到商用求解器Gurobi的2-3倍,且通常超过1000赫兹。代码开源地址:https://github.com/XuanLin/Benders-MPC。