HomeRobotics & KinematicsLearned vs Classical Motion Planner

Learned vs Classical Motion Planner

Watch a real RRT* tree search race a frozen learned-policy field toward the same goal: the classical planner always finds a collision-free path but takes time to explore, the learned policy answers instantly but can fail once you drag obstacles out of its training layout.

Robotics & Kinematics3DAdvanced60 FPS
learned-vs-classical-motion-planner ↗ Open standalone

This simulator races two real motion-planning strategies to the same goal through the same obstacle field. A classical RRT* planner grows a tree of random, collision-checked motions and rewires it toward an optimal route — slow to watch, but it always respects the obstacles exactly as they are right now. A learned policy stands in for a network trained once on this environment: it answers instantly by following a frozen value field rather than searching, which is fast but only correct as long as the world still looks like its training layout. Drag the obstacles to move the environment out of that training distribution and watch the learned shortcut start clipping pillars while RRT* keeps finding a clean path, just more slowly.

⚙ Under the hood

Races a real RRT* tree search against a frozen learned-policy value field toward the same goal through the same obstacle field. RRT* grows and rewires a collision-checked tree against the live obstacle layout; the learned policy walks downhill along a field trained once offline and answers in a single fast pass. Drag obstacles to move the scene out of the learned policy's training distribution and watch it start colliding while RRT* keeps re-planning correctly.

Three.jsroboticsmotion planningRRT*reinforcement learningpath planningneural network

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)