Research Projects

Our lab’s work is usually focused on the design of robotic algorithms and implementations at the intersection of computer systems / architecture and numerical optimization / machine learning. Historically we’ve done a lot of work on GPU acceleration of numerical optimal control algorithms in the pursuit of whole body nonlinear model predictive control. Over the next few years we will likely be continuing with that line of work as well as exploring smaller scale solvers on microcontrollers for tiny robots. At the same time we care deeply about expanding access to robotics and STEM education more broadly. As such, our work is currently focused on four main projects listed below.

GPU-Accelerated Optimization and Optimal Control

How can we overcome numerical optimization’s high computational complexity, while still capturing complex dynamics and providing reliable convergence for field robots? This project seeks to answer that question by co-designing new theoretically sound algorithms that are optimized to take advantage of the large-scale parallelism available on GPUs. Through support from the NSF this project seeks to go beyond developing point solutions to release a broadly applicable toolbox for the robotics and optimization communities.

Computational Hardware Accelerators for Robotics

Computer architects have shown that moving beyond the CPU and GPU, to custom computational hardware, can further accelerate computations while lowering energy consumption. How can we apply these techniques in robotics? This project seeks to answer that question through the design of automated workflows that can directly encode into computational hardware the structured sparsity and parallelism patterns found in embodied robotics algorithms. These resulting co-designed FPGAs and custom ASICs can then be flexibly leveraged for downstream robotics applications.

Next Generation Intelligence for Tiny Robots

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.

Accelerated Middleware and Benchmarking for Robotics

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).

Accelerated and Memory Efficient Edge Reinforcement Learning

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.

Responsible and Accessible Robotics and Computing

In order to improve the accessibility of robotics and computing globally we are undertaking research to: understand and improve diversity, equity, inclusion, and belonging in STEM education globally; design new interdisciplinary, project-based, open-access courses that lower the barrier to entry of cutting edge topics like robotics and embedded machine learning; and collaboratively promoting a sustainable and privacy preserving future for autonomous systems and edge computing. As a part of this effort we help lead the Tiny Machine Learning Open Education Initiative (TinyMLedu).