Amazing Mazes is my Son's (AJ) 7th grade Science Fair Project. It is a "Computer Science" project that involves an elementary study of programmatic algorithms.
I wanted to spawn my Son's interest in software development, introduce him to Object Oriented (OO) design principles, and in general ... provide an interesting Science Fair project.
There were several challenges that we faced in this process. The most obvious is how do you pair down the problem to something that is understandable by a Jr. High student, in a way that maintains their interest.
This project involved developing a Mouse base class that will traverse through a maze finding a solution. Once the base Mouse class was developed, several derivations were created that implement different traversal heuristics. The basic idea of the project is to perform an iterative comparison of the various traversal techniques to see which Mouse consistently performs better.
To keep it simple, the scope of the project was limited to developing the various mice which actually traverse the maze. All of the infrastructure (related to maze generation, and the solution engine) pre existed ... at least as far as my son was concerned.
The advantage of this approach is that the mice naturally lend themselves to a class hierarchy, so the student can experience the basics of OO ... encapsulation, derivation, and polymorphism.
In addition, an animated graphical interface was provided, which provides the visual feedback that is necessary for a sense of accomplishment. Many thanks to Bob Kirkland (http://www.mazeworks.com) for his permission to use his MazeGen program as one of our foundational components.
Hope you enjoy the site. We certainly had fun building it :-)
Happy Computing,
Kevin