Program the Mice
This step involves creating different mice with different strategies
that we will use to compare (see Appendix A).
The mice that we plan to create are:
- ScatterBrained - ScatterBrained doesn't have a memory and goes
through the maze in any random open direction.
- Randy - Like ScatterBrained, Randy goes through the maze in any
random open direction. Unlike ScatterBrained, Randy has a memory.
- NESW - NESW goes North, East, South or West in that order, which
ever one is first open. He also has a memory.
- SWEN - SWEN goes South, West, East, or North in that order, which
ever one is first open. He also has a memory.
- FocusedR - FocusedR always tries to go straight. If he can't go
straight, then he turns right until an opening is found. He also has
a memory.
- FocusedL - FocusedL always tries to go straight. If he can't go
straight, then he turns left until an opening is found. He also has a
memory.
- Goalie - Goalie will always go in the open direction that is
nearest to the end of the maze. He also has a memory.
For each mouse that is to be created:
- Derive the mouse from the appropriate mouse parent.
- Program the makeAMove method. This method will implement a
specific strategy, returning a move direction of
North/East/South/West/Retreat for each move
(see Appendix B).
- Add the mouse to the maze engine software. This will allow us to
select this new mouse in our tests.
- Compile all source code using the Java compiler. Fix any compiler
errors.
- Run a test of this new mouse (in slow motion) to see if it's
strategy is programmed correctly.