
Projects
Collection of my projects
01
Demonstration Diversity is Not Free at a Fifty-Episode Budget
Independent project
Researchers on low-cost hardware may only have a few dozen demonstrations to spend when adapting a vision-language-action model to a new robot. On a self-built SO-101 arm, I fine-tuned SmolVLA on 50 demonstrations under four collection strategies: a baseline (one position, clean success), position diversity (5 demonstrations at each of 10 positions), recovery demonstrations (one position, 20 of 50 demonstrations included a deliberate drop and recovery) and color diversity (one position, 10 demonstrations at 5 different cube colors). Across 600 pre-registered rollouts at two seeds, both registered comparisons came back null on success rate, but the arm’s logged trajectories showed why. Policies trained at one position replay a fixed sweep that stops reaching the cube when it moves an inch or two, while the position-diverse policy aims at the cube inside its training range but fails more often. I’ve since extended the study to a density sweep across ten positions.

This clip shows a successful rollout of the an in distribution cell, using the baseline policy.

This clip shows a successful rollout of the an in distribution cell, using the baseline policy.
02
What Deception Probes Read and How Evaluations of Them Fail
Independent study

This test measures whether the transfer test could be read across models. Six of the nine models lie in one direction, while another ... Leaving only two models that can be read from the transfer test.

This test measures whether the transfer test could be read across models. Six of the nine models lie in one direction, while another ... Leaving only two models that can be read from the transfer test.
A deception probe is a linear classifier that reads a language model’s activations and flags when an answer is a lie. The standard check that one works is a transfer test: tell the model to lie, let it answer, and see whether the probe flags the lies. Across nine open models up to 14B parameters, I found that the test confounds the instruction with the lie itself (every lie is given under the lie instruction and every honest answer under the honest one), and for seven of the nine it can’t be read at all, mostly because the models lie in only one direction (e.g., Qwen only lied by saying "No"). In the two models where it can be read, the probe responds to the instruction ~4x as strongly as a false answer. I collected the controls behind these results into a six-step evaluation protocol and released code and data that regenerate every number.
03
Mangrove Field Cleaning Robot
Master of Engineering Project
My M.Eng project at Cornell was an autonomous robot to collect plastic waste from mangrove fields. I built a six-legged walking robot with a front-mounted camera and an arm on its back. When the camera detected a water bottle, using an Azure computer vision model trained on images I collected and labeled, the arm used inverse kinematics to reach for it. In testing, the arm made contact with the bottle but didn’t complete the grasp, and depositing it in the container on the robot’s back was still in progress when the project ended.




04
Custom Metal 3D Printer


Laboratory for Advanced Materials and Manufacturing
Over the summer of 2023, I worked on a custom metal 3D printer that combines melt electrowriting with fused filament fabrication, with the goal of printing high-resolution metal parts at under 10% of the cost of comparable commercial printers. I built the base of the printer and got it printing metal filament, but the summer ended before it could be fully tested.
05
Velocity Distributions of Air Surrounding a Helicopter’s Main Rotor System
Washington University Summer Engineering Fellowship
As an undergraduate researcher at Washington University in St. Louis, I worked under Prof. Dave Peters studying the physics and fluid mechanics of a helicopter's flight. I worked with my mentor to derive equations that modeled the velocity distribution as a function of z, height in relation to the rotor, of the wake left behind a helicopter as it flies vertically. Once we derived those, we proceeded to animate these plots to show what happens in different scenarios, such as the helicopter flying up and down and entering its own wake. All of our values were unitless as we are modeling the distributions compared to ambient pressure and initial velocity. Although we used many assumptions about the physics of two wakes colliding, I hope that this work will one day be implemented into flight simulators and to help train future pilots.




06
Ultrasonic Vibration
Laboratory for Advanced Materials and Manufacturing




For this project, I was tasked with enhancing the mechanical properties of metals printed through grain refinement during additive manufacturing. I focused on designing a device that uses ultrasonic vibrations during the printing process to achieve this. I studied research papers and created CAD models for different designs. Throughout weekly meetings with my PI, I narrowed down my choices and finalized a design. After presenting a B.O.M, I ordered materials online and began machining parts. I was able to fully build two prototypes that each vibrate at different frequencies (28kHz and 40kHz). These prototypes were tested with two different printing methods, Powder Bed Fusion (PBF) and Direct Energy Deposition (DED). In PBF minimal grain refinement was observed but there was a reduction in columnar grains. The results from DED printing were characterized after I left the lab.
07
Cornell Robot Competition
Mechatronics
This project built up on what I learned in my mechatronics class. I worked alongside two classmates to design, code, and build a small robot that would compete in Cornell's annual Robotics Day competition. The main objective in the competition is to see which robot can collect more small wooden cubes. Our robot uses DC motors to spin its wheels, a positional servo to lower an "arm", and a color sensor to be able to detect which side of the board it's on. I focused on the mechanical design and the wiring aspects of this project. After the competition, we analyzed our results and wrote up a report on the entire process, including a B.O.M, circuit diagram, design choices, and assembly.




08
Wind Turbine
Fluids and Heat Transfer Lab




In this class I studied what factors affected a wind turbine's efficiency and gained an understanding of the fluid mechanics involved in extracting energy from wind. Our main project was to design a turbine blade to maximize the output of a wind turbine. I worked alongside two classmates throughout this project. We were constrained to 3 blades and a maximum blade length of ~6 inches. We wrote MATLAB code that used force balance equations and conservation of momentum/mass laws to estimate the power output of different airfoils with varying parameters (wind speed, ideal angle of attack...). After testing over 70 different geometries we chose our top performer and modeled it on Fusion 360. We then 3D printed our design and tested our wind turbine during lab, using a wind tunnel. Our turbine extracted an average power of 3.24W for speeds in the range of 4 to 5.5 m/s.