Author Image

Hi, I am Ryan

Zhihao (Ryan) Ruan

Research Engineer at TuSimple, Inc.

Robotics student with a main area of focus in motion planning and machine learning. Interested in building AI-empowered physical objects for the future.

Note: Personal travel journals are available in the Chinese page.



Planning Research Engineer
TuSimple, Inc.

July 2022 - Present, San Diego, CA

  • Developed motion planning softwares and algorithms for autonomous driving trucks.

Graduate Research Assistant
xLab, University of Pennsylvania

Feb 2021 - May 2022, Philadelphia, PA

xLab is a research lab at University of Pennsylvania lead by Prof. Rahul Mangharam targeting at developing critical systems and autonomous systems.

  • Working on Project CAD2CAV, an unknown environment exploration and mapping project for multiple vehicles.
  • Wrote graph-based multi-agent route planner in ROS and C++ with Ant Colony Optimization solver for Capacitated Vehicle Routing Problem, Spectral Clustering, and k-Way Graph Partitioning.
  • Implemented FMT* planning algorithm for real-time obstacle avoidance as low-level planner.
  • Integrated Pure Pursuit algorithm as the waypoint tracker and controller for F1/10 autonomous racing vehicles.
  • Developed data import utilities from Autodesk Revit 3D building model to ROS occupancy map.

Planning Research Engineer Intern
TuSimple, Inc.

May 2021 - August 2021, San Diego, CA

TuSimple is an autonomous trucking company that builds world-leading autonomous driving trucks and autonomous freight network (AFN).

  • Developed motion planning softwares and algorithms for autonomous driving trucks.

Undergraduate Research Assistant
Interactive Sensing and Computing (ISC) Lab, University of Michigan

Jan 2019 - Dec 2019, Ann Arbor, MI

ISC Lab is a research lab at University of Michigan lead by Prof. Alanson Sample that builds embedded systems for medical research and Human-Computer Interface (HCI) applications.

  • Built an embedded system in C & MATLAB with STM32 microprocessor and Panasonic’s GridEye 8x8 IR sensor through I2C & UART that can collect, detect and visualize heat distribution in the room.
  • Constructed a complete C API for Panasonic’s GridEye 8x8 IR sensor for STM32 microprocessor from scratch.
  • Implemented Direct Digital Synthesis (DDS) in C of a frequency-sweep ultrasonic sine wave from 39kHz to 41kHz with STM32 microprocessor and ultrasonic transducers.
  • Designed two different ultrasound distance measurement algorithms in Python including FMCW (Frequency-Modulated Continuous Wave) algorithm and phase-based ranging algorithm with STM32 microprocessor.


M.S.E. in Robotics
GPA: 3.9 out of 4
Taken Courses
  • MEAM 624 Distributed Robotic Algorithms
  • MEAM 620 Advanced Robotics
  • CIS 700 Probabilistic Methods in Machine Learning
  • CIS 565 GPU Programming & Architecture
  • ESE 514 Graph Neural Networks
  • ESE 605 Modern Convex Optimization
  • CIS 680 Advanced Topics in Machine Perception
  • ESE 650 Learning in Robotics
  • CIS 560 Introduction to Computer Graphics
B.S. in Computer Science Engineering
GPA: 3.9 out of 4
Taken Courses
  • EECS 482 Operating System
  • EECS 467 Autonomous Robotics
  • EECS 281 Data Structures and Algorithm
  • EECS 442 Introduction to Computer Vision
  • EECS 373 Introduction to Embedded Systems Design
B.S. in Electrical and Computer Engineering
GPA: 3.6 out of 4
Extracurricular Activities
  • Deputy Director of Media Department, Student's Union


Developer Feb 2021 - Present

Multi-agent path planning and exploration in unknown environments.

Vehicle Routing in Python
Developer Jan 2022 - May 2022

Python implementation of various Dynamic Vehicle Routing (DVR) algorithms.

Developer Oct 2021 - Dec 2021

Data Efficient Visual Imitation Learning Through Variational Autoencoders and Gaussian Process

F1Tenth Labs
Owner Feb 2021

Lab implementation for F1Tenth autonomous racing course

Developer Nov 2021 - Dec 2021

Vulkan implementation for volume rendering with ReSTIR.

Vulkan Grass Rendering
Owner Nov 2021

Vulkan renderer of grass blades with animation in compute shader.

CUDA Path Tracer
Owner Oct 2021 - Nov 2021

CUDA implementation of software path tracing with À-Trous denoiser.

BicycleGAN in PyTorch
Owner Nov 2020

PyTorch implementation of BicycleGAN.

Faster RCNN in PyTorch
Owner Nov 2020

PyTorch implementation of Faster RCNN.

Developer Oct 2019 - Dec 2019

Dynamic Obstacle Avoidance and Path Planning for robotic manipulators.

Don't Step on White Tiles
Developer Mar 2019 - May 2019

3D interactive version of ‘Don’t Step on White Tiles’ implemented on an embedded system with FPGA.

Recent Posts