Monotone Subsystem Decomposition for Efficient Multi-Objective Robot Design
Andrew Wilhelm, Nils Napp
TL;DR
The paper tackles the NP-hard problem of automated, multi-objective robot component selection from large catalogs. It introduces monotone subsystem decomposition as a CP-based method to efficiently compute the Pareto front by solving smaller, consistent subsystems and reusing their PFs to derive global optimality. The approach demonstrates superior scalability over linear programming in large catalogs (up to $10^{25}$ component combinations) and extends to task-oriented fleet optimization for quadcopters, delivering component-level designs and delivery schedules for each unit. This technique offers practical design guidance, reduced computation time, and reuse of subsystem insights across related design problems, with potential broad impact on cross-domain co-design.
Abstract
Automating design minimizes errors, accelerates the design process, and reduces cost. However, automating robot design is challenging due to recursive constraints, multiple design objectives, and cross-domain design complexity possibly spanning multiple abstraction layers. Here we look at the problem of component selection, a combinatorial optimization problem in which a designer, given a robot model, must select compatible components from an extensive catalog. The goal is to satisfy high-level task specifications while optimally balancing trade-offs between competing design objectives. In this paper, we extend our previous constraint programming approach to multi-objective design problems and propose the novel technique of monotone subsystem decomposition to efficiently compute a Pareto front of solutions for large-scale problems. We prove that subsystems can be optimized for their Pareto fronts and, under certain conditions, these results can be used to determine a globally optimal Pareto front. Furthermore, subsystems serve as an intuitive design abstraction and can be reused across various design problems. Using an example quadcopter design problem, we compare our method to a linear programming approach and demonstrate our method scales better for large catalogs, solving a multi-objective problem of 10^25 component combinations in seconds. We then expand the original problem and solve a task-oriented, multi-objective design problem to build a fleet of quadcopters to deliver packages. We compute a Pareto front of solutions in seconds where each solution contains an optimal component-level design and an optimal package delivery schedule for each quadcopter.
