Our lab’s core research question is: how can we construct computational systems that enable robots to intelligently, flexibility, and reliably operate in the field? We seek to address this problem by developing, optimizing, implementing, and evaluating next-generation algorithms and edge computational systems, at all scales, through algorithm-hardware-software co-design. This approach requires designing theoretically sound optimization- and learning-based algorithms (e.g., model predictive control) that run at order-of-magnitude faster rates on edge computational hardware ranging from small-scale MCUs, to large-scale GPUs and FPGAs, and even to custom ASICs and non von Neumann architectures (e.g., neuromorphic processors). As such, we work across the computational stack, designing algorithms, software systems, and computational hardware at the intersection of robotics, optimization, computer architecture / systems, and machine learning. At the same time we work to promote responsible and accessible robotics and computing. We therefore research ways to better understand and improve diversity, equity, inclusion, and belonging in STEM education globally; promote a sustainable and privacy preserving future for autonomous systems and edge computing; as well as design and teach new interdisciplinary, project-based, open-access courses that lower the barrier to entry of cutting edge topics like robotics, parallel programming, and embedded machine learning.
Small, low-cost, globally-accessible robots face stringent power, memory, and compute limitations, historically preventing the use of sophisticated algorithms. When compressing robotics algorithms to fit on the embedded systems running on these robots (e.g., MCUs), new challenges and opportunities emerge. We are working to unlock the full potential of these tiny robots by leveraging insights from robotics, machine learning, and computer architecture / embedded systems to custom tailor algorithmic solutions through co-design.
End-to-end robotics applications can only take advantage of accelerated algorithms, like those developed in many of our other lines of research, if they can be run on, and tested through, accelerated middleware and benchmarking frameworks. As such, in this research thrust, we are working to develop such comprehensive benchmarking frameworks, middleware interconnects, and runtime systems with adaptive parameter tuning. Importantly, all of these solutions are being designed for widespread use across robotics (e.g., with native integrations for ROS and ROS2).
Machine learning-based robotics applications are increasing in prevalence and importance. Whether structured as foundation-models, pixels-to-actions policies, or as learned hyperparameters or models for classical approaches, these algorithms will need to run on the edge to support the next generation of field robots. We are therefore working to reduce the challenging memory requirements and long runtimes of such algorithms, enabling their use at the edge.