
Hello! I'm Adam Li
I am a robotics researcher focused on representations that enable better behaviors and greater safety for robots in order to bring autonomous robots into everyday life.
I received my MS in Robotics from the Department of Robotics at the University of Michigan, where I was a member of ROAHM Lab supervised by Prof. Ram Vasudevan. I also hold a BS in Electrical Engineering and Mechanical Engineering from Rensselaer Polytechnic Institute.
Research Work

Let's Make a Splan: Risk-Aware Trajectory Optimization in a Normalized Gaussian Splat
Jonathan Michaux*, Seth Isaacson*, Challen Enninful Adu, Adam Li, Rahul Kashyap Swayampakula, Parker Ewen, Sean Rice, Katherine A. Skinner, Ram Vasudevan
IEEE Transactions on Robotics (IEEE T-RO) • 2025

Safe Planning for Articulated Robots Using Reachability-based Obstacle Avoidance With Spheres
Jonathan Michaux, Adam Li, Qingyi Chen, Che Chen, Ram Vasudevan
Proceedings of Robotics: Science and Systems (RSS) • 2024

These Maps are Made for Walking: Real-Time Terrain Property Estimation for Mobile Robots
Parker Ewen, Adam Li, Yuxin Chen, Steven Hong, Ram Vasudevan
IEEE Robotics and Automation Letters (IEEE RA-L) • 2022
Contributor

Zonopy and zonopy-robots
A Python library for reachable set computation
Zonopy enables the computation of continuous sets (intervals, zonotops, and polynomial zonotopes), and zonopy-robots introduces method extensions and algorithms for robotics. As one of the primary contributors, I've continued to expand on and improve these libraries for usability and performance.

SEVA: Socio-Ecological Visual Analytics
A data and knowledge management framework with a dynamic dashboard for big data analysis.
I was part of the frontend team at the Center for Architecture Science and Ecology (CASE) at Rensselaer in 2018, where I implemented UI and UX elements and helped migrate data visualization and analysis code away from unmaintained libraries.
Select Projects

Generative Animation Inbetweening
Diffusion modeling 2D animation like a trajectory to address animators' needs
For animations, most generative video models struggle with precision and introduce stylistic changes or errors that are more expensive to fix than simply redrawing from scratch. I built a model focused on adhering closely to provided keyframes and breakdowns (partial keyframes) to deliver hand‑ready and easily-correctable frames for animators.

Multi-Agent Reinforcement Learning to Solve Collaborative Escape-Room Style Tasks
Will agents learn to communicate and escape from a simplified escape-room style game?
For our final project for EECS692 Advanced AI at Michigan, we developed a simplified model for escape-room style tasks, and implemented it as an environment to perform multi-agent reinforcement learning. Puzzle rooms are chained together to create a larger escape-room style task.

Reinforcement Learning using DDPG for Robotic Grasping
Exploring reward shaping, DDPG, and RL for manipulation
For our final project for EECS545 Machine Learning, we implemented Lilicrap et al.'s Deep Deterministic Policy Gradient algorithm to train a robotic manipulator to grasp in a custom OpenAI Gym environment. The goal was to grasp a block on the table without moving it and reward shaping was employed to learn this. Through the inclusion of regularization, we demonstrated superior results over the baseline implementation.
CleanTwrpTar
Basic C program written to recover my corrupted phone backups
Back in 2017, I was restoring my phone from a TWRP nandroid backup, and discovered that all of my backups were corrupted. After inspection, it turned out that one of the other standard streams used for verbose logging occasionally output to the tarfile. This program was written to remove strings inserted between the 512 byte data block boundaries where these logging strings were inserted. A friend and I wrote separate solutions to this problem, and we have saved countless others' backups as a result.