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.

Co-Designing Computational Systems for Robotics

The next generation of robotics applications are facing a computational crisis. Facing thermal dissipation limits, CPUs have hit a single-threaded performance wall. At the same time the real-time computational demands for emerging robotics algorithms are only growing. To alleviate this bottleneck, through the lens of co-design, we are developing open-source software libraries that make it easy for other robotics researchers and practitioners to use alternative computing platforms (e.g., GPUs and FPGAs), balance competing computational constraints throughout their software systems, as well as developing automated open-source tools to enable the efficient design and use of custom robotics accelerator chips.

Responsible Tiny Robots

Many emerging robotics use cases will require small, cheap robots that use embedded devices (e.g., MCUs) for computation. When compressing robotics algorithms to fit on these resource constrained computational devices, 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 hardware-software co-design. At the same time, we need to ensure that the proliferation of mobile edge intelligence is done responsibly to ensure that these advances benefit all.

Accessible STEM Education

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

Next Generation (Nonlinear) Optimization Solvers

It is often challenging to get (nonlinear) optimization to converge reliably without getting stuck in spurious local minima. Better methods for handling constraints in the optimization problem and improved design of objective (cost) functions can help alleviate this problem. Leveraging new methods of data-efficient machine learning, mathematical insights from optimization theory, and computational insights from computer architecture, we are working to design robust optimization methods that can be used for real-time applications (e.g., nonlinear model predictive control for robotics).