PathVis
What is this?
Control Panel
GitHub Repo
Path
Vis
A Pathfinding Algorithm Visualization Tool
Short Tutorial
Pathfinding Algorithms
What are they?
A pathfinding algorithm attempts to find the shortest path between two points given the presence of obstacles. This is done through the utilization of various pre-determined characteristics unique to each algorithm. This particular program features graph search algorithms.
How do They Work?
Below is a list of algorithms that can be found in PathVis along with a brief description of how each one works.
Does not account for the "cost" of the path produced
Unweighted Algorithm
Limits the number of moves made, where each move adds to the "cost" of the path
Weighted Algorithm
Dijkstra's Algorithm
Checks each node for its state; begins at start node and expands outward. Slow, but guarantees the shortest path.
A* Search
Uses heuristics and weights in tandem to guarantee the shortest path quickly and efficiently.
Greedy Search
A faster, more heuristic-based version of A* that doesn't guarantee the shortest path.
Breadth-First Search
Traverses through a "potential moves" tree by each level. Doesn't favor one subtree. Guarantees shortest path.
Depth-First Search
Traverses through each potential move outcome subtree independently. Slow and doesn't guarantee shortest path.
Adding Walls
Click on the grid to add a wall. Generate mazes and various other patterns using the "Generate" tab in the control panel. Walls are viewed as impenetrable by all algorithms.
Medial Target Placement
Click the "Toggle Medial Target Placement" button in the control panel to summon in a medial target. Click and drag it around the grid to modify its position. To remove it, click the toggle button again.
Realtime Recalculations
After the initial visualization process has been completed, you may click on and move any node to another position on the grid. The shortest path and visited nodes will then be recalculated instantaneously.
Control Panel
Visualize!
Begin Algorithm Visualization
Clear Board
Clear Board of all Elements
Clear Path
Clear all Shortest-Path Nodes
Speed
▼
Change Visualizer Speed
Fast
Moderate
Slow
Configure Pathfinding
Algorithm
▼
Select an Algorithm to Visualize
Dijkstra's Algorithm
A* Search
Greedy Best-first Search
Breadth-first Search
Depth-first Search
Generate
▼
Generate Mazes & Patterns
Recursive Division
Basic Random Maze
Stair Pattern
Secondary Target Placement
Add Medial Target
Pick an algorithm and visualize it!
Site loading, please wait...