Search papers, labs, and topics across Lattice.
This paper introduces Marble, a novel solver for Linear Complementarity Quadratic Programs (LCQPs) that leverages the Lie group structure of complementarity constraints under infinitesimal relaxation. By performing on-manifold optimization with a numerically stable retraction map, Marble parameterizes constraints to be satisfied by construction, avoiding common issues in LCQP solving. Experiments show Marble is competitive on benchmarks and solves robotics problems where other solvers fail.
Forget hand-tuning heuristics: this new solver, Marble, leverages the Lie group structure of complementarity constraints to solve LCQPs more reliably for robotics.
Many problems in robotics require reasoning over a mix of continuous dynamics and discrete events, such as making and breaking contact in manipulation and locomotion. These problems are locally well modeled by linear complementarity quadratic programs (LCQPs), an extension to QPs that introduce complementarity constraints. While very expressive, LCQPs are non-convex, and few solvers exist for computing good local solutions for use in planning pipelines. In this work, we observe that complementarity constraints form a Lie group under infinitesimal relaxation, and leverage this structure to perform on-manifold optimization. We introduce a retraction map that is numerically well behaved, and use it to parameterize the constraints so that they are satisfied by construction. The resulting solver avoids many of the classical issues with complementarity constraints. We provide an open-source solver, Marble, that is implemented in C++ with Julia and Python bindings. We demonstrate that Marble is competitive on a suite of benchmark problems, and solves a number of robotics problems where existing approaches fail to converge.