Robot learning & RL

Offline RL with flow policies write-up

  • SAC+BC, IQL, and flow Q-learning on OGBench and navigation task. OGBench cube task

DQN and soft actor-critic write-up

  • DQN on CartPole, LunarLander, and MsPacman, SAC with auto-tuned temperature and clipped double-Q on HalfCheetah and Hopper DQN playing MsPacman

Imitation learning write-up

  • MSE and flow-matching action-chunking policies trained on expert demos Flow matching policy pushing the T block

Policy gradients write-up

  • REINFORCE with reward-to-go, learned baseline, and GAE on CartPole, HalfCheetah, and LunarLander HalfCheetah policy

LLM RL with GRPO

  • GRPO and REINFORCE for LLM post-training on MATH with verifiable rewards; ablations over PPO epochs, KL coefficient, and clipping

ENPIRE SO-101 write-up · code

  • Ported the ENPIRE robot harness from YAM station to my SO-101, MuJoCo with mink IK for the 5-DoF arm, Feetech drivers, leader-arm teleop, RPC server 3D-printed SO-101 arm

Lace & Place: autonomous shoe sorting

  • A UR7e arm that takes a pile of shoes and sorts them on a rack.
  • Implemented and compared 2 approaches using ROS 2 and LeRobot
    1. Classical perception, grasp estimation, motion planning, and grasping: align depth sensor map with scene camera using projective geometry, GroundingDINO & SAM, compute graspable points from filtered point clouds, IK with MoveIt, PD controller.
    2. Robot foundation models: fine-tuned SmolVLA on 250 trajectories for each class.

UR7e arm grasping a sneaker by the heel

Generative models & vision

Ideal flow machines write-up

  • Built a UNet backbone, then trained one-step denoisers, time-conditioned flow matching, and class-conditioned flow matching with CFG on MNIST
  • Reimplemented the IS, LS, ELS, and bbELS analytic score machines from Kamb & Ganguli and ran them against the trained UNet Analytic machine outputs vs UNet

Diffusion and flow matching write-up

  • Sampling loops, classifier-free guidance, SDEdit, visual anagrams, and hybrid images with DeepFloyd IF. Trained a class-conditional flow-matching UNet on MNIST Diffusion results

NeRF from scratch write-up

  • Calibrated my camera with ArUco markers, solved for poses, and trained a NeRF on 40 photos of an object: ray sampling, positional encoding, volume rendering, and novel views visualized in viser

Facial keypoint detection write-up

  • 68 landmarks predicted 3 ways: CNN coordinate regression, ResNet-18 / DINOv2 transfer, and U-Net Gaussian heatmaps Facial keypoint predictions

Classical vision: mosaics, filters, Prokudin-Gorskii mosaics · filters · colorizing

  • Automatic panorama stitching (Harris corners, ANMS, RANSAC homographies, Laplacian blending), hybrid images and multiresolution blending, and pyramid alignment of glass-plate color exposures Apple-orange blend

Language models

Llama 3 from scratch

  • BPE tokenizer trained on TinyStories and transformer architecture: RMSNorm, SwiGLU, RoPE, masked MHA, with FLOPs and memory accounting
  • Training utilities (stable cross-entropy, gradient clipping, warmup + LR schedule), pretraining on TinyStories, then a classification head for QA compared against few-shot prompting

Berkeley EECS RAG write-up

  • Crawled ~15K eecs.berkeley.edu pages and wrote a 138-question QA set (91% IAA), implemented dense retrieval, cross-encoder rerank, full-document context to Llama-3.1-8B on CPU with 4 GB RAM constraint

Chatbot Arena

  • Explored the LMArena battle data with plotly and gradio, identified stylistic confounders, and rebuilt the leaderboard with a Bradley–Terry model Arena analysis

Building things

Viso code · manim-voiceover-plus

  • Turns math questions into animated explanations with multi-agent pipeline: smolagents RAG research agent, planning agents, and a Manim rendering agent with tool calling
  • Won Most Technical Project at AdventureX and placed in the top 20 at the amber.ac hackathon
  • Published manim-voiceover-plus on PyPI for multilingual, parallelized voiceover generation

AI Entrepreneurs at Berkeley site · code

  • Founding member of the largest student-run AI incubator; also built and maintain the website AI Entrepreneurs at Berkeley website homepage