Unplugging Dijkstra's Algorithm as a Mechanical Device

Published: 01 Jan 2024, Last Modified: 27 Jan 2025CMSC 2024EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Graphs are a fundamental concept in computer science, effectively modeling diverse scenarios such as social networks, protein interactions, and mobility. Dijkstra’s algorithm is crucial for computing single-source shortest path in graphs and is a key component of graph processing. This paper presents an educational activity designed to “unplug” graphs and Dijkstra’s algorithm, making these topics accessible to a broad audience. The activity utilizes a physical graph with chains as edges and key rings with retractable badge holders as nodes. By pulling two nodes of this graph apart, it is possible to find a shortest path between these nodes. This can be used to visualize how Dijkstra’s algorithm works, including how the graph models the world. It invites for discussing how much more efficient this is compared to enumerating all paths, and what additional insights computer scientists had to achieve impressive speedups over plain Dijkstra, allowing for route planning to be perceived as a solved problem, where we use the packaged solution without further thought. We discuss the implementation of this activity in public outreach events, such as Culture Nights and primary school classrooms.
Loading