Course:CPSC312-2018-Daedalus

From UBC Wiki

Daedalus

Author: Ben Walker

What is the problem?

Maze generation

I will use a depth-first traversal of a matrix of nodes to generate an n x m maze - and then will display it as a png.

What is the something extra?

Maze solving

I will use backtracking search to find a solution to a given maze - and then display the solution superimposed on the original maze as a png.

What did I learn from doing this?

  • developing my own ADTs in Haskell
  • the Haskell Graphics library
  • custom datatypes and typeclasses
  • using stack, a Haskell application build tool
  • implementation of well-known algorithms in purely functional form in Haskell

I would like to improve what I currently have by making optimizations and perhaps employing parallelism to give the program a speed boost. I would also like to try different maze generation/solving algorithms to make comparisons with the currently implemented.

Links to code etc

code