Robotics simulation and RL engineer

I train humanoid robots in simulation and build the engines they train in.

Hi, I am Bhargav Oza. I work with MuJoCo MJX, JAX and CUDA C++. My latest work is a from-scratch DeepMimic pipeline for the Unitree H1 humanoid, and a paper on the bugs that the reward curve did not show.

Trained policy (black) next to the reference motion (green) in MuJoCo.

Selected work

A few things I built, with the results and the limits.

Unitree H1 policy tracking a reference walking motion

Featured. Research preprint, Oct 2026

Unitree H1 DeepMimic: silent failures in motion imitation

I reimplemented DeepMimic from scratch for the full 19-DOF Unitree H1 in MuJoCo MJX and JAX. Training ran and the reward went up, but the robot still did the wrong thing. The paper catalogues 22 such failures and a per-joint diagnostic that found them.

  • Walks a 14.7 minute reference clip with no falls
  • Walking speed 0.74 to 1.26 m/s from one action-scale fix
  • 4,096 parallel environments at about 8,800 steps/s on one RTX 4070 Ti
  • Plain DeepMimic reward is enough once the bugs are fixed
MuJoCo MJXJAXPPOImitation learningSimulation only

Attempt 1

Attempt 2

Attempt 3

Open source / bounty work

Humanoid get-up with TQC in K-Sim

Trained a 20-DoF humanoid to get up from lying and stand, using TQC in JAX, in about 24 hours on one RTX 4070 Ti. Staying balanced after standing is still in progress. Open-source and bounty work for K-Scale.

TQCJAXK-Sim
Code on GitHub →

Freelance

Skinned-mesh locomotion and climbing

Reinforcement learning for locomotion and climbing of a skinned-mesh character, built with Unity ML-Agents.

Unity ML-AgentsC#RL
Watch on X →

In progress

GPU physics engine from scratch

A physics engine in CUDA C++ with a Vulkan renderer. The goal is parallel environments for RL training of any robot, through articulated body dynamics.

CUDA C++VulkanRigid body dynamics

What I do

Simulation and RL for robots

Humanoid imitation and locomotion in MuJoCo MJX, Isaac Sim and Unity. Reward design, curriculum and, above all, finding out why a policy that looks fine on paper does the wrong thing.

Physics and rendering engines

Rigid body dynamics, collision detection and rendering written from scratch in CUDA C++ and Vulkan, so that I understand what sits under the simulator.

Training at scale

Pretrained a 1B-parameter model on 8 H100 GPUs and fine-tuned a 15B model with GRPO on 8 A6000 GPUs. Day to day I train on a single RTX 4070 Ti with JAX.

On real robots

ROS navigation and sensor fusion on Jetson-based robots. My RL work so far is in simulation, and I want to take it to hardware.

Skills

Simulation

MuJoCo / MJXIsaac SimIsaac LabUnity ML-AgentsUnreal Engine 4/5ROS 1 / ROS 2

Reinforcement learning

PPOSACTQCGAIL / AIRLReward shapingDomain randomizationGRPO

Engines and graphics

CUDA C++VulkanRigid body dynamicsCollision detectionOpenGLDirectX 12

Languages and ML

PythonC++CUDA C++C#JAXPyTorchStable Baselines3Hugging Face

Hardware

JetsonRaspberry PiLiDAR / sonarArduino

Also: multi-GPU training, Docker, Azure / AWS.

Research

What the Reward Curve Didn’t Show: Silent Failures in DeepMimic-Style Imitation on the Unitree H1

Bhargav Oza. Preprint on Zenodo, October 2026. A case study, not a new method.

Symptoms that look like reward-design problems in motion imitation are often action-space or data-pipeline bugs, and the aggregate reward cannot tell the two apart. The paper lists the failures with the evidence that exposed each one, and gives a checklist to run before tuning any reward.

Bhargav Oza

About

I am a computer engineer from India (“भारत”), with a B.Tech in Computer Engineering from Marwadi Education, Rajkot. I like building simulators and teaching robots to move in them, and I have been doing it long enough to know that most of the work is finding out what is quietly wrong.

Outside work I listen to synthwave and ambient music, watch anime, read manga and play video games.

Contact

I am looking for robotics simulation, reinforcement learning and physical AI roles. The best way to reach me is email.

ozabhargav41@gmail.com