Modern autonomous systems like self‑driving cars and drones are powered by a collection of core technologies. They must sense the environment, perceive important features, localize themselves in a map, plan a safe path and control their actuators. Cameras provide a 360° view around a vehicle and detect lane markings, traffic signs and other road users, while onboard sensors and software handle localization and planning. Mobileye’s description of the self‑driving stack explains how cameras, radar and lidar work together to sense the world and feed perception, localization, planning and control. Drones use similar computer‑vision and artificial‑intelligence techniques to see and interpret their surroundings, enabling tasks like delivery, crop monitoring and search‑and‑rescue. The Ultralytics blog on AI drones and UAV operations describes how vision algorithms let drones recognize objects, map environments and perform autonomous tasks. Behind the scenes, algorithms from path planning, graph theory and design space exploration help these robots navigate efficiently and balance trade‑offs in their designs.
The modules below provide hands‑on demonstrations of these concepts. You can experiment with path planning algorithms like breadth‑first search and A*, explore image processing operations used in computer vision, build simple graphs and find shortest paths, and adjust design parameters to observe how metrics change. The interactive tools are simplified, but they illustrate the same principles that guide an autonomous vehicle’s software stack. We encourage you to tweak the controls and see how changes affect the results.
Path planning is the process of computing a sequence of poses and velocities that moves a robot from a start state to a goal while respecting physical constraints and avoiding obstacles. Algorithms like breadth‑first search (BFS) and A* explore a grid or graph to find a collision‑free route, often using heuristics to speed up the search. In self‑driving cars and drones, planners take inputs from perception modules and generate safe trajectories around other vehicles, pedestrians and buildings. See the Purdue SIGBots path‑planning article for an overview of why planning is needed to handle 2D movement, obstacle avoidance and smooth acceleration. The planner works with a representation of the environment—often a graph of road segments or a grid—and returns a path that downstream controllers can follow.
Computer vision gives machines the ability to interpret images and video. It encompasses techniques for image processing, feature extraction, classification and detection. Common tasks include object recognition, face recognition, segmentation and optical character recognition. The GeeksforGeeks computer‑vision tutorial provides a gentle introduction to these concepts. In the context of self‑driving vehicles, cameras detect lane boundaries, traffic signs and other road users, as described in Mobileye’s discussion of the self‑driving stack. Drones use similar vision systems to see and navigate; machine‑learning models help them recognize and track objects, as outlined in Ultralytics’ article on computer vision for AI drones. The simple image viewer below lets you toggle between the original image, a grayscale version and an edge‑detected version to illustrate how computer vision preprocesses images. Select "Roadway (Lane Highlight)" to view a road‑shaped region of interest with lane‑like edges and colors highlighted, similar to what a driving system would focus on. Play with the box to adjust the region of interest. Note the difficulty in determining the exact boundaries of the roadway.
Graph theory studies mathematical structures composed of vertices (nodes) and edges (connections). In a graph, a path is a sequence of vertices where each adjacent pair is connected by an edge. Breadth‑first search explores a graph level by level to find the shortest unweighted path between two nodes. For a more formal introduction to vertices, edges and paths, see the Lumen Learning module on graph theory. Road networks, flight corridors and communication links can all be modeled as graphs, and planners use graph algorithms to find efficient routes. In our module it’s now simpler: hover a node to highlight it, click empty space to add a node (in any mode), and click‑and‑drag from one node to another to create an edge. Switch to "Find Path" and click two nodes to compute a shortest path. In "Add Node" mode you can also drag nodes to reposition them.
Design space exploration (DSE) systematically evaluates combinations of design parameters to understand trade‑offs. Engineers vary parameters such as power, performance and cost to select an optimal configuration. The Wikipedia article on design space exploration notes that DSE analyses trade‑offs across power, performance and cost. In autonomous systems, designers must balance sensor suites, computing power, weight and energy consumption. For drones, these trade‑offs influence flight time and payload capacity; for self‑driving cars, they affect range, perception quality and reliability.
Inspired by the classic “moving sofa” problem (see Up and Atom’s video here), this widget lets you design a simple shape and see how it moves around a right‑angle hallway. Use the sliders to set the sofa’s width and height (we use a rectangle for simplicity) and the hallway width. Use the Auto Squeeze button to animate it trying to rotate around the inner corner into the vertical corridor. If the shape collides with the walls, it turns red; if it fits, it stays green.