Interactive Demos
Motion Planner (RRT)
A Rapidly-exploring Random Tree (RRT) planner. In 2D, place obstacles and run the planner to grow a tree toward the goal. In 3D, rotate the scene with the mouse and plan through volumetric obstacles.
Distance Field (Fast Marching Method)
The Fast Marching Method propagates a wavefront from the start through free space. Place a goal and click Run FMM; the path is traced by gradient descent on the resulting distance field. In Query mode, click anywhere to trace a path back to the start.
Safety Filter (Control Barrier Function)
Up to four robots navigate to a goal with a proportional controller. A Control Barrier Function (CBF) safety filter solves a QP each step that modifies the control input, keeping every robot outside the obstacles and clear of the other robots. Obstacles come in three shapes (circle, ellipse, and a rounded square from a 3‑norm superlevel set), each with its own smooth barrier function. In Start mode, click to add or remove agents; in Goal mode, place up to four goals; in Obstacle mode, pick a shape and click to place it. Each agent heads to the goal of its color. Toggle the filter to compare behavior, or change the class‑𝒦 gain α to set how aggressively safety is enforced.
Sheaf Diffusion (Opinion Dynamics)
Each node is an agent holding an opinion (its phase, shown as color). Edges carry restriction maps that encode what agreement means between neighbors; here that is a desired phase offset. Sheaf diffusion minimizes the Dirichlet energy, driving the agents toward a globally consistent state. Toggle Async vs Sync to compare update strategies, or enable Obstruction to introduce a cohomological inconsistency that prevents full consensus. Click a node to pin its opinion as a fixed leader, or click an edge to place the obstruction there. The Vector (ℝⁿ) view shows a heterogeneous cellular sheaf whose stalks have different dimensions: ℱ(v) ≅ ℝ² and ℱ(e) ≅ ℝ² but ℱ(u) ≅ ℝ, joined by rectangular restriction maps (an anisotropic 2×2 map at v, a ℝ→ℝ² embedding at u). Diffusion still drives the section to agree in the edge stalk.
