# Rat Maze

Your rat starts out in the upper left corner lead him to the lower right corner. Use the mouse to click on the maze and leave the cheese. Lead the rat out of the rat maze game before you run out of cheese and time. Enjoy rat maze game at The PCman's fun, free games arcade. Rats who were already familiar with the maze learned to solve the maze more quickly and acheived better scores than rats who had never been given exploration time. Their proficiency indicated that the rats had generated a cognitive map of the maze during their explorations (Tolman and Honzik 1930).

*Posted on the 17 March 2016 by Alain_fouxer*

The Rat in a maze is a famous problem in which we have a N x N matrix (the maze) which consists of two types of cells - one the rat can pass through and the other that the rat cannot pass through. The objective of this probleem is that the rat will be at a particular cell and we have to find all the possible paths that the rat can take to reach.

You do now that rats have been used as laboratory test subjects since time immemorial. You should have also paid notice to those mazes built for rats to run and test on. These mazes are actually built to measure certain physical and mental aspects of rats depending on what type of test are being run on them. Naturally of course, there is more than just one type of maze in order to fully test these aspects and reach maximum outputs and results.

Since the early 20th century, rats have been examined how they respond and behave as they run in different types of maze, from T-shaped mazes, water mazes, to radial arms mazes. Generally, these different types of maze are used to measure the spatial learning capacity and memory in rats. Mazes actually help scientists unearth the general principles of a creature's learning capacity and hopefully would be utilized in human applications in the future. At present, mazes are being used to identify or determine the effects of certain conditions or treatments to the learning capacity and memory of rats.

You would be surprised to know that rats are actually amazing maze runners. Their ability to run and solve mazes is actually a by-product of their evolution. Rats have always been critters that burrow through tunnels and find their way out. It's of no surprise at all why they are such gifted maze running creatures.

**The Classic Maze**

This type of maze is the one that first pops into a person's mind. The maze is basically comprised of simple horizontal and vertical walls and a transparent ceiling. The platform can be with narrow passages or with wide ones depending on the level of test being performed on the rat. The rat would begin on one location (starting point), runs across the maze, and solve it as it reaches the other end where a reward awaits.

Often the questions raised every after run of this maze would be: 'How many tries did it take for the hungry mouse until it finished the maze?' Or how long did it take for the mouse to get to the other end without any mistake? Over time the results are recorded and are statistically graphed and interpreted. This will then become important data for the research in order to gain a study output.

**The T-Maze**

The T-Maze, as its name implies is actually a maze shaped like a letter 'T'. Often a reward is placed in the other side of the T or on both sides. The rat is then tasked to make a choice between the two sides or the T arm.

Often, T-mazes are used to determine the side preferences on rats. Whether there is no reward on the other side of the arm, what will the rat choose?

**The Multiple T-Maze**

A multiple T-maze is actually a T-maze in essence only that there are several T-Junctions that branch off from each T-zone. This is basically a much more complicated T-maze for rats to run on, therefore making it as well much more challenging. Such a maze is designed to accommodate much more complicated test programs would often extract much more specific information on the rat's behavioral aspects.

**The Y-Maze**

This maze is actually quite similar to the T-maze. The only significant difference is that the Y-Maze has three identical arms therefore three choices for the rat to choose from. The Y-Maze is actually a much simpler version of the T-maze as the rat could easily through the end of the arms at the middle point.

To Know About How to Catch a Rat Follow This Link

To Know About How to Kill Rats Follow This Link

Source

Haunt the House: Ghost Game. Hardest Game on Earth. I don't like it! Jeff Yourston, e-mail Q I cannot find anything anywhere on this topic. My son has a science project to do for school and he has chosen to do a rat maze. I think it is a fine idea, but I have no idea where I could find info on building a maze or buying one.

There are a number of different **maze solving algorithms**, that is, automated methods for the solving of mazes. The random mouse, wall follower, Pledge, and Trémaux's algorithms are designed to be used inside the maze by a traveler with no prior knowledge of the maze, whereas the dead-end filling and shortest path algorithms are designed to be used by a person or computer program that can see the whole maze at once.

Mazes containing no loops are known as 'simply connected', or 'perfect' mazes, and are equivalent to a *tree* in graph theory. Thus many maze solving algorithms are closely related to graph theory. Intuitively, if one pulled and stretched out the paths in the maze in the proper way, the result could be made to resemble a tree.^{[1]}

## Random mouse algorithm[edit]

This is a trivial method that can be implemented by a very unintelligent robot or perhaps a mouse. It is simply to proceed following the current passage until a junction is reached, and then to make a random decision about the next direction to follow. Although such a method would always eventually find the right solution, this algorithm can be extremely slow.

## Wall follower[edit]

The best-known rule for traversing mazes is the *wall follower*, also known as either the *left-hand rule* or the *right-hand rule*. If the maze is *simply connected*, that is, all its walls are connected together or to the maze's outer boundary, then by keeping one hand in contact with one wall of the maze the solver is guaranteed not to get lost and will reach a different exit if there is one; otherwise, the algorithm will return to the entrance having traversed every corridor next to that connected section of walls at least once. The algorithm is a depth-first in-order tree traversal. Geekstreeblog.

Another perspective into why wall following works is topological. If the walls are connected, then they may be deformed into a loop or circle.^{[2]} Then wall following reduces to walking around a circle from start to finish. To further this idea, notice that by grouping together connected components of the maze walls, the boundaries between these are precisely the solutions, even if there is more than one solution (see figures on the right).

If the maze is not simply-connected (i.e. if the start or endpoints are in the center of the structure surrounded by passage loops, or the pathways cross over and under each other and such parts of the solution path are surrounded by passage loops), this method will not reach the goal.

Another concern is that care should be taken to begin wall-following at the entrance to the maze. If the maze is not simply-connected and one begins wall-following at an arbitrary point inside the maze, one could find themselves trapped along a separate wall that loops around on itself and containing no entrances or exits. Should it be the case that wall-following begins late, attempt to mark the position in which wall-following began. Because wall-following will always lead you back to where you started, if you come across your starting point a second time, you can conclude the maze is not simply-connected, and you should switch to an alternative wall not yet followed. See the *Pledge Algorithm*, below, for an alternative methodology.

Wall-following can be done in 3D or higher-dimensional mazes if its higher-dimensional passages can be projected onto the 2D plane in a deterministic manner. For example, if in a 3D maze 'up' passages can be assumed to lead Northwest, and 'down' passages can be assumed to lead southeast, then standard wall following rules can apply. However, unlike in 2D, this requires that the current orientation is known, to determine which direction is the first on the left or right.

## Pledge algorithm[edit]

Right: Pledge algorithm solution

## Rat Maze Leetcode

Disjoint^{[clarification needed]} mazes can be solved with the wall follower method, so long as the entrance and exit to the maze are on the outer walls of the maze. If however, the solver starts inside the maze, it might be on a section disjoint from the exit, and wall followers will continually go around their ring. The Pledge algorithm (named after Jon Pledge of Exeter) can solve this problem.^{[3]}^{[4]}

The Pledge algorithm, designed to circumvent obstacles, requires an arbitrarily chosen direction to go toward, which will be preferential. When an obstacle is met, one hand (say the right hand) is kept along the obstacle while the angles turned are counted (clockwise turn is positive, counter-clockwise turn is negative). When the solver is facing the original preferential direction again, and the angular sum of the turns made is 0, the solver leaves the obstacle and continues moving in its original direction.

The hand is removed from the wall only when both 'sum of turns made' and 'current heading' are at zero. This allows the algorithm to avoid traps shaped like an upper case letter 'G'. Assuming the algorithm turns left at the first wall, one gets turned around a full 360 degrees by the walls. An algorithm that only keeps track of 'current heading' leads into an infinite loop as it leaves the lower rightmost wall heading left and runs into the curved section on the left hand side again. The Pledge algorithm does not leave the rightmost wall due to the 'sum of turns made' not being zero at that point (note 360 degrees is not equal to 0 degrees). It follows the wall all the way around, finally leaving it heading left outside and just underneath the letter shape.

This algorithm allows a person with a compass to find their way from any point inside to an outer exit of any finite two-dimensional maze, regardless of the initial position of the solver. However, this algorithm will not work in doing the reverse, namely finding the way from an entrance on the outside of a maze to some end goal within it.

## Trémaux's algorithm[edit]

Trémaux's algorithm, invented by Charles Pierre Trémaux,^{[5]} is an efficient method to find the way out of a maze that requires drawing lines on the floor to mark a path, and is guaranteed to work for all mazes that have well-defined passages,^{[6]} but it is not guaranteed to find the shortest route.

## Rat Maze For Sale

A path from a junction is either unvisited, marked once or marked twice. The algorithm works according to the following rules:

- Mark each path once, when you follow it. The marks need to be visible at both ends of the path. Therefore, if they are being made as physical marks, rather than stored as part of a computer algorithm, the same mark should be made at both ends of the path.
- Never enter a path which has two marks on it.
- If you arrive at a junction that has no marks (except possibly for the one on the path by which you entered), choose an arbitrary unmarked path, follow it, and mark it.
- Otherwise:
- If the path you came in on has only one mark, turn around and return along that path, marking it again. In particular this case should occur whenever you reach a dead end.
- If not, choose arbitrarily one of the remaining paths with the fewest marks (zero if possible, else one), follow that path, and mark it.

The 'turn around and return' rule effectively transforms any maze with loops into a simply connected one; whenever we find a path that would close a loop, we treat it as a dead end and return. Without this rule, it is possible to cut off one's access to still-unexplored parts of a maze if, instead of turning back, we arbitrarily follow another path.

When you finally reach the solution, paths marked exactly once will indicate a way back to the start. If there is no exit, this method will take you back to the start where all paths are marked twice.In this case each path is walked down exactly twice, once in each direction. The resulting walk is called a bidirectional double-tracing.^{[7]}

Essentially, this algorithm, which was discovered in the 19th century, has been used about a hundred years later as depth-first search.^{[8]}^{[9]}

## Dead-end filling[edit]

Dead-end filling is an algorithm for solving mazes that fills all dead ends, leaving only the correct ways unfilled. It can be used for solving mazes on paper or with a computer program, but it is not useful to a person inside an unknown maze since this method looks at the entire maze at once. The method is to 1) find all of the dead-ends in the maze, and then 2) 'fill in' the path from each dead-end until the first junction is met. Note that some passages won't become parts of dead end passages until other dead ends are removed first. A video of dead-end filling in action can be seen here: [1][2].

Dead-end filling cannot accidentally 'cut off' the start from the finish since each step of the process preserves the topology of the maze. Furthermore, the process won't stop 'too soon' since the end result cannot contain any dead-ends. Thus if dead-end filling is done on a perfect maze (maze with no loops), then only the solution will remain. If it is done on a partially braid maze (maze with some loops), then every possible solution will remain but nothing more. [3]

## Recursive algorithm[edit]

If given an omniscient view of the maze, a simple recursive algorithm can tell one how to get to the end. The algorithm will be given a starting X and Y value. If the X and Y values are not on a wall, the method will call itself with all adjacent X and Y values, making sure that it did not already use those X and Y values before. If the X and Y values are those of the end location, it will save all the previous instances of the method as the correct path.

This is in effect a depth-first search expressed in term of grid points. The omniscient view prevents entering loops by memoization. Here is a sample code in Java:

## Maze-routing algorithm[edit]

The maze-routing algorithm ^{[10]} is a low overhead method to find the way between any two locations of the maze. The algorithm is initially proposed for chip multiprocessors (CMPs) domain and guarantees to work for any grid-based maze. In addition to finding paths between two location of the grid (maze), the algorithm can detect when there is no path between the source and destination. Also, the algorithm is to be used by an inside traveler with no prior knowledge of the maze with fixed memory complexity regardless of the maze size; requiring 4 variables in total for finding the path and detecting the unreachable locations. Nevertheless, the algorithm is not to find the shortest path.

Maze-routing algorithm uses the notion of Manhattan distance (MD) and relies on the property of grids that the MD increments/decrements *exactly* by 1 when moving from one location to any 4 neighboring locations. Here is the pseudocode without the capability to detect unreachable locations.

## Shortest path algorithm[edit]

When a maze has multiple solutions, the solver may want to find the shortest path from start to finish. There are several algorithms to find shortest paths, most of them coming from graph theory. One such algorithm finds the shortest path by implementing a breadth-first search, while another, the A* algorithm, uses a heuristic technique. The breadth-first search algorithm uses a queue to visit cells in increasing distance order from the start until the finish is reached. Each visited cell needs to keep track of its distance from the start or which adjacent cell nearer to the start caused it to be added to the queue. When the finish location is found, follow the path of cells backwards to the start, which is the shortest path. The breadth-first search in its simplest form has its limitations, like finding the shortest path in weighted graphs.

## See also[edit]

## References[edit]

**^**Maze to Tree on YouTube**^**Maze Transformed on YouTube**^**Abelson; diSessa (1980),*Turtle Geometry: the computer as a medium for exploring mathematics*, ISBN9780262510370**^**Seymour Papert, 'Uses of Technology to Enhance Education',*MIT Artificial Intelligence Memo No. 298*, June 1973**^**Public conference, December 2, 2010 – by professor Jean Pelletier-Thibert in Academie de Macon (Burgundy – France) – (Abstract published in the Annals academic, March 2011 – ISSN0980-6032)

Charles Tremaux (° 1859 – † 1882) Ecole Polytechnique of Paris (X:1876), French engineer of the telegraph**^**Édouard Lucas:*Récréations Mathématiques*Volume I, 1882.**^**H. Fleischner:*Eulerian Graphs and related Topics.*In:*Annals of Discrete Mathematics*No. 50 Part 1 Volume 2, 1991, page X20.**^**Even, Shimon (2011),*Graph Algorithms*(2nd ed.), Cambridge University Press, pp. 46–48, ISBN978-0-521-73653-4.**^**Sedgewick, Robert (2002),*Algorithms in C++: Graph Algorithms*(3rd ed.), Pearson Education, ISBN978-0-201-36118-6.**^**Fattah, Mohammad; et, al. (2015-09-28). 'A Low-Overhead, Fully-Distributed, Guaranteed-Delivery Routing Algorithm for Faulty Network-on-Chips'.*NOCS '15 Proceedings of the 9th International Symposium on Networks-on-Chip*: 1–8. doi:10.1145/2786572.2786591. ISBN9781450333962. S2CID17741498.

## External links[edit]

## Rat Maze For Sale

- Think Labyrinth: Maze algorithms (details on these and other maze solving algorithms)
- Simon Ayrinhac, Electric current solves mazes, © 2014 IOP Publishing Ltd.