Obstacle Lab.
Change the world. Watch the bot find its way.
Build obstacles, change their height,
and explore how a bot adapts.
Click a floor tile to place an obstacle. Keyboard: I J K L select a tile, Enter places it.
Measurements come from the simulator’s geometry. The bot has access to the full map.
Ready to explore.
Same world. Different decisions.
One fixed target, same start and 180-step cap. No collision shield. Custom layouts are outside the bundled benchmark.
| Controller | Outcome | Steps | Return |
|---|
What is the bot actually learning?
The bot learns a table of expected rewards for actions at each position, heading and altitude. It uses the known simulator to update those values until they settle. Changing obstacles triggers a new solve. This is model-based value iteration, not learning from a camera or trial-and-error reinforcement learning.
Each move costs 1 point, reaching the target earns 40, and a collision ends the run with −30. The planner uses breadth-first search. The untrained table always selects its first action. No safety shield changes the learned bot’s decisions.
Cars use a simplified grid with forward, reverse and quarter-turn moves. All bots have a one-tile collision footprint. The pallet mover’s low body carries a load requiring 1.4 m total clearance. Vacuum coverage uses an authored nearest-reachable uncleaned target rule; the learned table navigates to each target.
Obstacle heights are exact synthetic measurements. This experiment does not establish real-world sensing, driving or flight performance.