Research
Algorithms in Optimization and Control

Computers use algorithms to solve problems and make decisions, from back-flipping robots and self-driving cars to massive robotic swarms. Such algorithms are studied in the fields of optimization and control: the former seeks to find the best single decision based on an objective and constraints, while the latter studies multiple decisions made sequentially over time. Moreover, these algorithms are often used in robotics, where robots must use sensors to decide how to interact with the physical world. My research studies algorithms in optimization and control with applications in robotics.

Significant Contributions

Below are my most significant contributions (in my opinion) to the areas of optimization, control, and robotics.

Optimal Method for Convex Optimization

Optimization is a common framework used to describe a wide variety of problems in science and engineering, from controlling humanoid robots to training machine learning models. Existing optimization algorithms, however, may be prohibitively slow to find good solutions, resulting in robot collisions or long training times. It is therefore important for algorithms to make the most efficient use of computational resources. My most significant research contribution is the design of the optimal first-order algorithm to minimize a smooth and strongly convex function LCSS2018. This algorithm achieves the best possible performance on this type of problem and therefore cannot be improved upon. My algorithm has spurred on a variety of other research, from proving fundamental bounds as to what is possible to designing novel algorithms for other scenarios, including robust optimization forthcoming-speedrobustness.

Algorithm Analysis

Characterizing the performance of algorithms with theoretical guarantees is crucial across diverse scenarios, from weeks-long training of large-language models to the real-time demands of robotics. Historically, the analysis of optimization algorithms has relied on extensive numerical computations to tune hyperparameters or deep insight by experts, both of which must be done on a case-by-case basis and produce bounds that may not be tight. Together with collaborators, we have developed a systematic approach to algorithm analysis. Given an algorithm and a class of optimization problems, the methodology automatically constructs bounds on the worst-case performance ICML2018; see also the tutorial paper CDC2023-lyap. We have applied this methodology to a wide variety of scenarios including distributed optimization TCNS2020, CDC2020, constrained optimization CDC2023-primaldual, and optimization with noisy gradients forthcoming-speedrobustness.

Multi-Agent Systems

Large swarms of robots can collaboratively solve complex tasks that are difficult or impossible for an individual robot. Intel puts on shows with hundreds of drones to produce spectacular nighttime visuals, networks of sensors in the ocean build cohesive maps of the sea, and groups of robots coordinate in warehouses to fulfill customer orders. Each of these scenarios requires complex coordination. I have several contributions in this area.