Robot Light target Obstacle
drag = pan · wheel = zoom

Subsumption Architecture: Layered Reactive Robot Control (2D)

Most robot-programming intros teach a single monolithic loop, but real-world reactive robots are usually built as a stack of independent behaviors that fight for control of the motors. This top-down 2D simulator implements Rodney Brooks' subsumption architecture: an Avoid-Obstacle layer, a Seek-Light layer and a Wander layer run concurrently, and a fixed priority arbitration lets a higher layer subsume — completely override — a lower one whenever its trigger condition fires. Toggle each layer, change the obstacle density, arena size, turn rate and wander jitter, drag to pan and scroll to zoom the arena, and watch both the telemetry panel and a live strip chart show exactly which layer is steering the robot from one frame to the next, with no central planner or world model anywhere in the loop.