Spot walking procedural terrain: Isaac base policy + transfer learning, all driven from Python on my own Vulkan renderer
Short clip of Spot crossing procedural terrain. The base policy came from Isaac Lab, everything else is mine.
Policy: chain of PPO transfers, not zero-shot. Isaac Lab flat walker → fine-tuned for rough terrain → fine-tuned again for discrete stairs.
Keeping the Isaac gait while learning new terrain: I keep a frozen copy of the original Isaac policy as a teacher and add a scan-gated imitation reward. On flat ground the policy is penalized for drifting from the teacher's actions, so it only deviates where the terrain actually demands it. Plus a per-env adaptive curriculum (1024 parallel envs, each promotes/demotes its own step height).
Obs/action: 94-d obs (48-d Isaac proprio + base height + a 45-cell forward height-scan), 12-d joint-target actions. Training is my own PPO loop over batched PhysX on GPU.
The stack (all mine, driven from Python): C++ engine with Python bindings (threepp). A Vulkan deferred renderer with procedural terrain, PhysX physics, and the live SLAM map. No Isaac Sim / Omniverse at runtime; the base policy is the only imported piece.
The current policy largely ignores the depth sensor data. Working on it, but has very good stability nonetheless.
UPDATE: Due to license issues, I have now generated a new similar gait that is not warm-started from a Isaac policy.