Skip to content

Diffusion

Noise, meet direction.

Choose two endpoints and a noise seed. Watch a tiny conditional diffusion network turn Gaussian noise into a smooth 2D path, entirely in your browser.

16,352 parameters
16 waypoints · 32 denoising steps

Run the experiment

Choose a checkpoint and compute backend. Inference stays on your device.

From static to something smooth

trained checkpoint · seed 20261016

0 / 32
Sixteen learned waypointsThe filled start marker and hollow goal marker are requests, not forced endpoints. The connected dots are actual sampled coordinates. The viewport automatically fits the current path.normalized coordinates · auto-fit ±1.1StartGoalYour next path starts as noise.
Ready when you are · WebGPU starts only on request

What is actually learned?

A 40 → 96 → 96 → 32 ReLU network predicts a clean path from a noisy one, four endpoint coordinates, and four timestep features. A cosine noise schedule and deterministic DDIM updates repeat that prediction 32 times. No analytic path replaces the output.

Measured, not imagined

Trained with tinygrad Adam on 32,768 synthetic curves. On 2,048 held-out paths, denoising MSE fell from 0.1592 to 0.0126. On 128 separate samples, endpoint RMSE fell from 0.452 to 0.023.

Training & export source ↗

A sketch, not a robot policy

Inspired by LeRobot Diffusion Policy, not its architecture or weights. This original synthetic teaching model has no robot data, obstacles, collision checks, velocity limits, or safety guarantees. Software WebGPU validates shaders, not physical-GPU speed.

Pinned LeRobot reference ↗