You should now see the Maze Solver window on your screen.
Generate a new maze by clicking on the `Generate maze` button and watch the application generate the maze.
Once the maze is generated choose which searching algorithm you want to see solve the maze.
As of writing `BFS` and `DFS` are available with more along the way.
Next choose if you want to enable randomness to the algorithm with the `Enable randomness` checkbox.
Randomness is applied when the solver stands before a fork in its path and has to choose from a number of possible directions.
With randomness enabled it will randomly choose the next direction and with it disabled the next direction is chosen from something very similar to an ordered list.
Once you're happy with the options, click on the `Solve the maze` button to start the simulation.
As the solver traverses through the maze, it leaves a red path so that you can keep track of its progress.
When the solver reaches a dead-end it backtracks until it can choose a new path to traverse. When it backtracks it leaves behind a grey trail.
After the solver solves the maze (or fails to do so) you can run the simulation again on the same maze with by pressing the Solve the maze button.
Try running choosing a different algorithm or toggle between randomness before running the simulation again.
You can also generate a new maze by clicking the `Generate maze` button again.