I am a postdoc working with Professor Daniela Rus at the Distributed Robotics Laboratory (DRL) within MIT CSAIL. My research interests include computational design, distributed robotics, path planning, and computational geometry. My current work is in algorithms for synthesis and analysis of engineering designs from modular components.
Interactive Robogami is a design tool that aims to democratize the design and fabrication of robots, enabling people of all skill levels to specify and 3-D print robots without the need for expert domain knowledge. The tool leverages a database of example robots that can be fabricated using our 3D print and fold technique, in which robots are 3-D printed as flat sheets and then folded into 3D structures. Users compose parts from these examples to create new robot designs. The robot designs are tested for stable forward locomotion via simulation and the tool provides visual feedback so that the user can modify the design. Once the user is satisfied, the tool generates a 3-D mesh for printing. New robot designs are automatically added to the database, and experienced designers are also able to extend the database with new designs. We demonstrate the capabilities of the system by designing and fabricating several new robots.
Joint work with Adriana Schulz, Andrew Spielberg, Wei Zhao, Ankur Mehta, Eitan Grinspun, Wojciech Matusik, and Daniela RusGeometric Design of Print-and-Fold Robots
Print-and-fold manufacturing promises inexpensive and customizable robots for the everyman. However, progress is complicated by a lack of understanding of what motions can be achieved via folding. We investigate how foldable mechanisms of arbitrary complexity could be composed from a library of foldable subcomponents. We have created parameterized fold patterns for basic joints commonly found in robots. We have also developed algorithms that, given a 3-D mechanism composed of these joints and foldable rigid bodies, produce one-piece, non-self-intersecting patterns that fold into the 3-D mechanism. Using this composition approach, we have designed multiple foldable mechanisms and robots.
Joint work with Erik Demaine, Martin Demaine, and Daniela RusTask Allocation for Multi-Robot Systems
When multiple robots coordinate to do complex tasks, the task allocation, or the assignment of tasks to robots, has a large effect on the system performance. We consider distributed task allocation for a team of robots. Specifically, we analyze task switching as a method for improving a task allocation as the system is running. For situations where computing even a locally optimal task allocation would be too expensive, we have designed heuristics that nonetheless guarantee task completion. We additionally consider how historical information about such a system's performance could be used to improve future allocations. We have proposed an algorithm for partitioning the environment into regions of equal workload for the robots and used hubs to help robots pass tasks to each other. We have tested our algorithms both in simulation and in hardware experiments.
Joint work with Nora Ayanian and Daniela Rus