May — Aug 2026 · Seoul, South Korea

Autonomy Robotics Software Engineering Intern

Bear Robotics

Bear Robotics makes serving robots that work in real restaurants, which means navigating rooms full of chairs, people, and other robots, all of which move without warning.

I spent the summer on the part of the software that decides how the robot actually moves: the trajectory controller. My work became the basis for the next generation of that controller.

68% → 90%
Navigation success rate
1,192
Trials measured against
2x
Faster control loop

The problem

A robot in a restaurant is rectangular, but the planner it used treated it more simply than that. In tight spaces the difference matters. The robot would refuse routes it could actually fit through, or get itself wedged and need a person to come and free it.

Getting stuck is worse than being slow. A robot that stops in the middle of a dining room is a robot that someone has to walk over and rescue, and that undoes the point of having it.

What I did

I replaced the planner with one that samples many possible paths forward each cycle, scores them all, and follows the best. Crucially, it checks the robot's full rectangular footprint against the map, so it knows precisely what it can and cannot fit through.

I also changed how those candidate paths are generated. Rather than sampling randomly and hoping, the planner deliberately includes options that would get it out of a jam, so when it does find itself boxed in, an escape route is among the choices it is already considering.

What changed

Navigation success went from 68% to 90% across 1,192 trials against the previous system, and the robot recovered from deadlocks far more often instead of waiting for help.

Sampling hundreds of paths every cycle is expensive, so I parallelized the evaluation. The control loop ended up running roughly twice as fast as before while using less CPU than the system it replaced, which matters on hardware that also has to run everything else.

The work is now integrated into the production robot stack.

Stack

  • C++
  • ROS
  • MPPI
  • OpenMP
  • Motion planning