No description
| doc | ||
| mazes | ||
| austin.py | ||
| flip.py | ||
| maze.pl | ||
| maze.py | ||
| maze_recursive.py | ||
| README | ||
A bit of info about the maze test datasets here
These mazes were designed to help test an algorithm that
always follows the right wall. Some of the mazes may be
less helpful for a left-following algorithm.
Valid mazes:
maze01.txt
maze02.txt
maze03.txt
maze04.txt
maze05.txt
maze06.txt
maze07.txt
maze08.txt
maze09.txt
maze10.txt
maze11.txt
maze12.txt
maze15.txt
maze20.txt - my program treats is as valid but may not be due to open wall
maze25.txt - has comments and blank lines
maze26.txt - larger, irregular maze
maze26_alt.txt - same as maze26, but uses alternative characters
maze27.txt - large maze which tripped up my solver until I added a path stack
maze27_alt.txt - same as maze27, but uses alternative characters
maze28.txt - very small maze that tripped up my solver until I added a path stack
maze30.txt - maze27 with exit in a different location
Invalid:
maze13.txt - No ending location
maze14.txt - No route to exit
maze16.txt - No starting location
maze17.txt - Multiple starting locations
maze18.txt - Multiple starting locations
maze19.txt - Empty file
maze21.txt - Hallway is more than one space wide
maze22.txt - Hallway is more than one space wide
maze23.txt - Hallway is more than one space wide
maze24.txt - No solution / maybe invalid due to open wall
maze29.txt - Multiple exit locations
Oh, and if you want to quickly test the maze solvers included here
from the command line, you can do (copy and paste into your terminal)
for F in mazes/maze*.txt; do
./maze.py $F 0 >/dev/null && echo "$F succeeded" || echo "$F failed"
done
and for a bit more info about failed mazes:
for F in mazes/maze*.txt; do
./maze.py $F 0 >maze.out && echo "$F succeeded" || \
(echo "$F failed"; tail -n 2 maze.out; echo)
done; rm maze.out
There is also a utility to flip mazes horizontally or vertically, flip.py
You might try ./flip.py mazes/<whatever_maze> - hv | ./maze_recurse.py - .02