There is a growing need for computational tools to automatically design and verify autonomous systems, especially complex robotic systems involving perception, planning, control, and hardware in the autonomy stack. Differentiable programming has recently emerged as powerful tool for modeling and optimization. However, very few studies have been done to understand how differentiable programming can be used for robust, certifiable end-to-end design optimization. In this paper, we fill this gap by combining differentiable programming for robot design optimization with a novel statistical framework for certifying the robustness of optimized designs. Our framework can conduct end-to-end optimization and robustness certification for robotics systems, enabling simultaneous optimization of navigation, perception, planning, control, and hardware subsystems. Using simulation and hardware experiments, we show how our tool can be used to solve practical problems in robotics. First, we optimize sensor placements for robot navigation (a design with 5 subsystems and 6 tunable parameters) in under 5 minutes to achieve an 8.4x performance improvement compared to the initial design. Second, we solve a multi-agent collaborative manipulation task (3 subsystems and 454 parameters) in under an hour to achieve a 44% performance improvement over the initial design. We find that differentiable programming enables much faster (32% and 20x, respectively for each example) optimization than approximate gradient methods. We certify the robustness of each design and successfully deploy the optimized designs in hardware. An open-source implementation is available at https://github.com/MIT-REALM/architect
翻译:目前越来越需要计算工具来自动设计和核查自主系统,特别是涉及感知、规划、控制和自主堆放硬件的复杂机器人系统。最近出现了不同编程的强大模型和优化工具。然而,为了了解如何将不同编程用于稳健的、可验证的端对端设计优化,我们很少进行研究,以了解如何将不同的编程用于稳健、可验证的端对端设计优化。在本文件中,我们填补这一空白的方法是,将不同的机器人设计优化编程与用于证明优化设计是否稳健的新型统计框架结合起来。我们的框架可以对机器人系统进行端对端优化和稳健性认证,从而能够同时优化导航、感知、规划、控制和硬件子系统。使用模拟和硬件实验,我们展示了如何利用我们的工具来解决机器人中的实际问题。首先,我们优化了机器人导航的传感器配置(一个有5个子系统和6个金枪鱼参数的设计)在5分钟内实现8.4x的性能改进。第二,我们解决多试剂协作操纵任务(3个子系统和454个参数),在1小时内,在1小时内实现44%的精确性设计。我们每个硬度的试度上,可以使每个硬度设计升级化,我们可以实现44%的初始设计升级。我们可以实现。