International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
Autonomous Maze Solving Robotics: Algorithms
and Systems
Shatha Alamri1, Shuruq Alshehri1, Wejdan Alshehri1, Hadeel Alamri1, Ahad Alaklabi1,
and Tareq Alhmiedat 1,2
1
Faculty of Computers & Information Technology, University of Tabuk, Tabuk, Saudi Arabia
2
Industrial Innovation & Robotics Center, University of Tabuk, Tabuk, Saudi Arabai
Email: {salaamrei, s_alshehri, w.alshehri, h.alamri, a.alaklabi}@ut.edu.sa,
t.alhmiedat@ut.edu.sa
Abstract—In
robot tests several paths to create a map of the maze, and
stores paths and routes and then runs the autonomous
robot through the maze area along the most efficient route.
The solver robot knows the source-point and the
destination-point in the maze area, but it does not have
any information about the maze area structure or
obstacles between the two locations. The implementation
of autonomous vehicles ranges from employing robots to
carry goods through factories, office buildings and other
workspaces to using robots in dangerous situations or
difficult to reach locations such as bomb sniffing, finding
humans in wreckage, fire-fighting, in emergency
situations [2].
Recently, various autonomous maze solving
algorithms and techniques have been developed for this
purpose, each one with its own advantages and
shortcomings. The existing maze solving algorithms and
systems have been reviewed in [3-5]. However, the work
presented in this paper is different because the recent
deployment of maze solving algorithms and systems are
considered. Moreover, we discuss and analyse the
performance of existing autonomous maze solving
robotic algorithms and systems. The main contributions
of this work lies on the following aspects:
1. Research and categorize the existing maze
solving algorithms.
2. Research the recent developed maze solving
robotic systems.
3. Evaluate the efficiency for the recent developed
maze solving robotic systems.
This paper is divided into six sections. Section 2
presents a discussion of the potential applications for
autonomous maze solving robotic systems. A
classification and analysis of the existing maze solving
algorithms are presented in Section 3. In Section 4, the
existing autonomous maze solving robotic systems are
presented and discussed. Section 5 presents a discussion
and analysis of the existing autonomous maze solving
robotic algorithms and systems. And finally, Section 6
draws conclusions.
robotics, autonomous movement is an
important feature that enables the robot to move
independently from one location to another. Autonomous
movement within an unknown area requires the robot to
carry out investigations. The concept of solving a maze has
an important place in the field of robotics, and is based on
one of the most important areas of robotics, the DecisionMaking Algorithm. In this paper, we discuss and analyse
existing maze solving algorithms, and investigate the recent
development of autonomous maze solving robotic systems.
In addition, the work presented in this paper guides the
researcher and developer for choosing an adequate maze
solving algorithm to develop an efficient maze solving
robotic system for a certain scenario.
Index Terms—maze, autonomous robot, maze solving, solver
robot, maze solving algorithms
I.
INTRODUCTION
Autonomous mobile robot navigation plays a critical
role in diverse applications, including: warehouse robots,
self-driving vehicles, smart wheelchairs and personal
assistant robots. In many situations, autonomous robots
are the best option for various missions. Autonomous
navigation is a critical task in mobile robotics because it
enables the mobile robot to independently perform
movement tasks to get from one point to another.
Autonomous mobile robot is an intelligent vehicle that is
capable of travelling through several locations (point of
interest), either following a predefined trajectory, or
navigate itself in a specific area. In both cases, the mobile
robot has to avoid obstacles and move forward to
destination point [1].
One interesting topic in robotics is autonomous maze
solving, where an autonomous robot tries to solve a maze
in the shortest time possible in the most efficient way.
The key mission of an autonomous maze solving robot is
to reach a target location by navigating through a maze
area. Maze solving robot is one of the most popular
independent robots, where the solver robot is self-reliant
and can move through a maze from the source-point to
the destination-point. It follows the shortest route and
take the least time possible. To achieve this goal, a solver
II.
The possible applications for maze solving vehicles
range from simple tasks such as transferring goods
through factories, office buildings, classrooms and other
Manuscript received February 17, 2021; revised April 12, 2021.
© 2021 Int. J. Mech. Eng. Rob. Res
doi: 10.18178/ijmerr.10.12.668-675
ROBOTIC APPLICATIONS
668
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
workspaces, to hazardous tasks in difficult to reach areas
like evacuating people from dangerous buildings, bomb
sniffing, etc. Autonomous maze solving robotic systems
can be applied to:
Maze solving algorithms
Manufacturing: robots can be used to transport
items and tools from one location to another in a
fast and accurate manner across a complicated
terrain, where paths must first be explored to
accomplish the delivery. The Flexible
Manufacturing System (FMS) that employs
autonomous robots are currently dominated by
the use of Automatic Guided Vehicle (AGV) [6,
7].
Home automation: domestic robots are designed
to assist human with tasks including: lawn
moving, vacuum cleaning, and home monitoring.
A mobile robot can be used as a vacuum cleaner,
navigating itself effectively around the house
whilst simultaneously cleaning [8].
Traffic control: this is a real example of maze
solving technology that enables fire fighters or
paramedics to find the best route to an
emergency [9]. Therefore, appropriate traffic
control is a critical issue in highway work zone
safety, in order to control the robotic system to
safely travel from one location to another one
[10].
Rescue operations: rescue missions usually start
with a search in the unknown environment
before reaching the region where victims can be
located. As rescuers progress along a particular
path, therefore, they are required to report their
location to the mission headquarters. This will
help the rescuer to reach the final destination.
Mobile robots have been employed widely in the
search and rescue operations, such as searching
victims in dangerous areas which is harmful for
human, as to offer observation data for map
building [11, 12].
III. MAZE SOLVING ALGORITHMS
In any maze solving system, the first stage is to
compile a maze solving algorithm. This section discusses
existing maze solving algorithms which may be
employed in an autonomous maze solving robotic system.
There are various maze solving algorithms which aim to
find the path between the source-point and the
destination-point. In this section, we classify the maze
solving algorithms into two categories according to the
deployment of the solver robotic system. The categories
are as follows: known environment algorithms (solver
robot has a prior knowledge about the maze area),
unknown environment algorithms (solver robot solves the
maze with no prior knowledge of the maze area). Fig. 1
shows the classification of maze solving algorithms.
© 2021 Int. J. Mech. Eng. Rob. Res
669
Known environment
algorithms
Unknown environment
algorithms
Wall-follower
Lee’s algorithm
Dead-end
algorithm
Tremaux
Soukup algorithm
Hadlock algorithm
Maze-router
algorithm
Flood-fill
algorithm
Random mouse
Pledge
Heuristic search
algorithm
Figure 1. Classification of maze solving algorithms
A. Known-Maze Enviroments-Based Maze Solving
Algorithms
This section describes the maze solving algorithms
which can be deployed with known maze environments,
where the solver robot can see the whole maze at once.
1) Dead-end filling algorithm
Dead-end algorithm works well in known mazes,
where it fills all dead ends, leaving only the correct paths
unfilled. By employing this method, the solver robot first
finds all the dead ends in the maze and then fills in the
path from each dead end up to the first junction. This
algorithm scans the maze in an empty order, finds the
dead ends and closes the associated paths [13].
2) Maze routing algorithm
Maze routing algorithm finds the possible paths
between any two points in the maze area. This algorithm
only works in known mazes where the maze area is
already recognized and stored. The maze routing
algorithm is able to explore the possible paths between
the source and destination points and identify the shortest
path between them [14].
3) Flood-fill algorithm
Flood-fill algorithm assigns a distance value between
any point (intersection) and the centre-point (destination).
The flood-fill algorithm floods the maze when the robot
reaches a new node [15].
4) Lee’s algorithm
The Lee's algorithm offers a simple solution for maze
routing problems based on breadth first search strategy,
and it is able to explore the possible paths between any
two points if exit, and guarantees the minimum path.
Through the Lee's algorithm, (a) an initial point is added
to the queue, (b) then valid neighbouring cells are added
to the queue, (c) next the queue element is removed from
the queue and continue to the next element. The steps (a)(c) are repeated till the queue is empty [16].
5) Soukup algorithm
Soukup algorithm combines both the breadth first and
depth first search algorithms. Through the Soukup
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
algorithm, the line search is first conducted toward the
destination-point, and then an expansion is processed to
'bubble' around the wall as soon as the line search detects
a wall. The Soukup algorithm is 10-50 times faster than
the Lee's algorithm [17].
6) Hadlock algorithm
Hadlock algorithm is a shortest path algorithm for grid
graphs. Hadlock algorithm is an enhancement of Lee's
algorithm which reduces the processing time through the
expansion phase by biasing the search in the target's path.
The Hadlock algorithm uses a value known as detour
value, which is the path from the source to a grid-point
that reveals the number of grids that this path has
detoured away from the target-point. Hadlock algorithm
guarantees that a shortest-path connection will be found if
exist [18].
7) Heuristic search algorithm
The heuristic search algorithm is based on the concept
of ‘greedy best first’ search, which is like the breadthfirst search. The heuristic search algorithm explores
multiple paths in parallel, and the best-first focuses on
paths which are closest to the goal. The distance from the
goal serves as a heuristic to direct the search. The major
drawback for the heuristic algorithm is its space
complexity, since it stores all generated nodes in memory.
B. Unknown-Maze Enviroments-Based Maze Solving
Algorithms
The following algorithms can be deployed in unknown
environments where the solver robot has no prior
knowledge of the maze area. These algorithms include
wall follower, Tremaux’s algorithm, random mouse and
Pledge.
1) Wall-follower algorithm
The wall follower is the most common maze solving
algorithm, where its main idea is to follow walls in the
maze area. The solver robot observes the right or left wall
and moves throughout the maze area until it finds the way
out. There are two possible rules in the wall follower, the
left-hand rule and right-hand rule. The turning priority
will be either to the left or to the right depending on the
rule chosen [19, 20].
2) Tremaux’s algorithm
This algorithm requires drawing lines on the floor to
mark a path. It is guaranteed to work with all mazes that
have well defined passages. Tremaux’s algorithm works
according to the following rules: if a junction that has no
marks (unvisited), then choose an arbitrary unmarked
path, follow it and then mark it as visited. If a junction
has one mark, turn around and return along that path,
marking it a second time as visited. This situation can
occur when the robot reaches a dead end. If a junction has
more than one mark, arbitrarily choose one of the
remaining paths with the fewest marks, follow that path
and mark it as visited. However, when the robot finally
reaches the destination, paths marked just once will
indicate a way back to the start [21, 22].
3) Random mouse algorithm
Random mouse algorithm can be implemented using
any robot, and works in the same way as a mouse would
© 2021 Int. J. Mech. Eng. Rob. Res
solve a maze. The solver robot travels around the maze
aiming to find the destination point. A solver robot
follows a straight line until an obstruction is reached,
where there is a choice of more than one path
(intersection-point). At this point, the robot makes a
random decision as to which path it takes. It continues
straight ahead until it comes to the next intersection. At
each intersection, the solver robot randomly turns right or
left, however, it never goes back along the path it came
from. This method can be implemented by an
unintelligent robot [23].
4) Pledge algorithm
The wall follower algorithm is a part of the Pledge
algorithm solution. The Pledge algorithm is a maze
traversing algorithm used when the walls are disjointed
and there are obstacles present. The robot keeps the
obstacle either on its left or right-hand side, and keeps
track of all turns using a counter, where a right-turn
increases the counter and a left-turn decreases the counter.
When the counter reaches zero, the solver robot has
traversed the obstacle and it continues on its path for the
right-hand side algorithm. The solver robot always begins
by turning left, then for every movement it applies the
following logic: if there is no obstacle on the right, it
moves right; if there is an obstacle on the right, but no
obstacle in front, it moves forward; if there are obstacles
on the right and in front, then it turns left. The solver
robot will continue this way, counting each turn until the
counter reaches zero again [24, 25].
The above algorithms guarantee to solve different
types of maze with no prior knowledge of the maze
environment. However, whenever multiple paths exist
these algorithms do not offer the shortest path possible
between the source and destination points.
IV. AUTONOMOUS MAZE SOLVING ROBOTIC SYSTEMS
Various autonomous maze solving robotic systems
have been proposed recently. Each system employs one
of the maze solving algorithms discussed earlier. In this
section, we discuss the existing autonomous maze solving
robotic systems. In addition, we categorize the existing
systems into two categories based on the navigation
method employed: camera-based systems and sensorbased systems, as presented in Fig. 2.
Autonomous maze
solving robotic systems
Camera-based
systems
Sensor-based
systems
Line follower
systems
Wall follower
systems
Figure 2. Classification of autonomous maze solving robotic systems
670
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
maintaining the integrity of the potentials. The designed
robotic system consists of five infrared proximity
detectors which detect the presence of the walls. I.
Elshamarka, & S. Abu Bakar [33] presented a maze
solving robot algorithm designed to solve a maze based
on the flood-fill algorithm. The algorithm consists of four
main stages: Mapping, Flooding, Updating and Turning.
Three ultrasonic sensors are deployed in order to estimate
the distance to the walls surrounding the robotic system.
I. Arya et al. [34] presented an autonomous robotic
system to navigate the unknown terrain and then explore
the maze using multiple experimental mapping and
navigation algorithms based on ultrasonic sensors. This
work [35] introduced the concept of robot maze solving
using the virtual maze environment. F. Annaz. examined
the performance of various types of robots within various
board algorithms, where two maze solving algorithms
were implemented to solve mazes generated by users: a
primary navigation algorithm for systematic discovery
and a proximity algorithm for optimized rescue.
The work presented in [36] includes the design and
development of an autonomous navigation robot, which
is based on the Left Straight Right Back (LSRB)
algorithm and the Right Straight Left Back (RSLB)
algorithm. The developed robotic system employs
infrared and ultrasonic sensors for navigation. I.
Elshamarka & A. Saman [37] designed a maze solving
robotic system using the flood-fill algorithm. The
designed solver robot was able to detect walls using
ultrasonic rangefinder sensors and was able to learn the
maze, find all possible paths and solve the maze using the
shortest path possible.
The work presented in [38] includes the design and
development of an intelligent robotic system that is able
to solve the maze using the shortest possible distance,
where the maze area is divided into cells. The robot first
navigates the area of interest and then finds the possible
paths between the source-point and the destination-point.
J. Su et al. [39] developed a half-size micro-mouse for
international contests and mobile robot education. The J.
Su et al. developed two new algorithms for enhancing the
resolution of position and velocity estimations and a
time-based diagonal maze solver.
C. Wu et al. [40] proposed a modified route-searching
algorithm to find all potential paths in an unknown maze
area. The maze area is thought of as divided into grids,
where each grid has a maximum of four directions. In
addition, the C. Wu et al. presented a modified searching
algorithm based on the traditional depth-first graph
traversal method.
In [41], R. Kumar et al. proposed an autonomous maze
solving robot with independent mapping and localization
operations, based on deploying three infrared sensors.
The designed robotic system was tested and solved out
the maze successfully without any interruption with walls
and objects. On the other hand, a wall follower-based
maze solving robotic system is presented in reference
[42]. The mobile robot was capable of solving the maze
and calculating the total distance travelled to reach the
A. Camera-Based Systems
The image-processing-based solving robot systems
require capturing the entire image of the maze area using
a digital camera in order to analyse and process the
maze’s paths, determine the possible paths between the
source and destination points, and identify shortest path
possible. M. Aqel et al. [26] proposed a maze solving
robotic system which is based on image processing
technique and artificial intelligence algorithm. The entire
image of the maze is captured using a web camera and
then the maze solving process is performed completely
outside the maze by a computer.
The work presented in [27] includes the design and
development of a maze solving robotic system based on
image processing and path finding techniques. O. Kathe
et al. revealed that the proposed system works faster
because the maze’s data are acquired beforehand rather
than travelling through the maze cell by cell. A. Chandak
et al. [28] proposed a wave-front based algorithm to
create a path for a robot to travel through an indoor
environment. The 4-points and 8-points connectivitybased algorithms are presented for the purpose of path
generation.
B. Rahnama et al. [29] introduced a maze solving
algorithm which avoids the robot having to go through a
long navigation process. This algorithm is based on
image processing and shortest path algorithms. The
proposed system works efficiently because of the preprocessing of the maze image data rather than going
through the maze cell by cell. In reference [30], N.
Barnouti et al. employed A* search algorithm to
investigate the shortest path between the source and
destination points through images that represent a map or
a maze. The proposed algorithm was tested through
different maze environments.
The work presented in [31] includes a wireless
navigation mobile robotic system for path planning and
trajectory execution within an indoor maze environment.
The proposed system is based on a camera in order to
capture live images for the mobile robot within the maze
area. K. Lutvica et al. have developed an image
processing and analysis algorithm which is able to
determine the robot's position and orientation based on
colour markers recognition. The results confirmed the
robustness and effectiveness of the implemented robotic
system.
B. Sensor-Based Systems
Existing sensor-based maze solving robotic systems
can be classified into two sub-categories: rangefinder and
line-follower. The former employs rangefinder
technologies (such as infrared and ultrasonic sensors) to
measure the distance between the solver robot and the
facing wall, whereas the later employs colour (light
intensity) sensors to follow the line drawn on the floor in
order to explore the correct path to the destination points.
The rangefinder systems are discussed first. The work
presented in reference [32] provides experimental and
simulated results for an efficient maze solving algorithm
which provides locally optimized path choices while
© 2021 Int. J. Mech. Eng. Rob. Res
671
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
the flood-fill algorithm is able to explore the path
between the source-point and destination-point with no
requirements or pre-assumptions, in addition, the floodfill algorithm finds the shortest path to the centre of the
maze. However, the flood-fill algorithm requires the
maze area to be divided into cells, which requires a large
memory and is expensive to update.
The maze routing algorithm [14] is able to find the
possible paths between any two points in the maze area,
and guarantees to find the connection between 2
terminals if exist, and promise to find out the shortestpath possible. However, maze routing algorithm is slow
and requires large memory size for dense layout. On the
other hand, the Soukup is an efficient maze routing
solving algorithm, but it has three minor disadvantages:
(1) the initial and the target points have to be specified, (2)
the routes are suboptimal when the maze area becomes
congested, and (3) the algorithm cannot guarantee the
obtained path is the shortest one.
The maze solving algorithms for unknown
environments were discussed. These include: wall
follower, Tremaux’s algorithm, random mouse and
Pledge. The wall follower algorithm [19, 20] is easy to
implement, there is no need to know the robot’s location
and orientation in the maze, and it only needs to follow
the wall. However, the wall follower algorithm does not
work in every maze, especially those containing loops.
On the other hand, Tremaux’s algorithm [21, 22] always
finds a path to the destination-point and is able to explore
the direct path to the destination-point. However, in
robotics, it is hard to implement Tremaux’s algorithm and
large mazes require large memory space to store the
visited paths.
Random mouse algorithm does not record where the
robot has been, but only decides where to go next. The
solver robot could wander for hours when taking wrong
turns and there is a strong possibility that the robot will
not find the exit in the time allocated. Although this
method would always eventually find the solution, this
algorithm can be extremely slow. Therefore, random
mouse algorithm is inefficient in terms of speed and
accuracy.
Wall follower algorithms can solve mazes when the
entrance and exit are on the outer walls of the maze.
However, wall follower algorithms fail to solve the maze
if the robot starts inside the maze area. The Pledge
algorithm can solve this problem, since it is designed to
circumvent obstacles and requires a random direction to
go through. The Pledge algorithm allows a robot with
compass to find the path from any point in the maze area
to the exit. However, this algorithm will not work in
reverse, i.e., finding a path from the exit to the entrance.
The Pledge algorithm is more powerful than wall
follower algorithm and can solve mazes that wall
follower cannot.
Table I presents a comparison of the maze solving
algorithms discussed earlier. The maze solving
algorithms have been compared according to the
following issues:
final destination. The mobile robot was equipped with
ultrasonic sensors in order to detect the presence of walls.
The work presented in [43] includes the design and
development of an autonomous solver robot system
which combines the Pledge algorithm with the Flood-fill
algorithm, named as MazeRobot, and consists of
ultrasonic range-finder sensors to detect the presence of
walls and wheel rotation decoders to estimate the
travelled distance.
L. Bienias et al. [44] proposed a maze exploration
algorithm that consists of two main phases: the
exploration of the whole maze area where all possible
paths are determined, and then the runtime process. The
proposed system integrates two maze solving algorithms:
Wall-follower, and Tremaux's algorithms, and real
experiments were conducted using Arduino-robot
platform with proximity and rotation sensors.
The rest of this section discusses the line follower
systems. Norbert-Brendan, K. & Marius, T.C. [45]
proposed a line follower-based maze solving robotic
system based on the left-hand rule and dead-end filling
algorithms. The designed robotic system was able to offer
a reasonable solution. In [46], S. Sakib et al. proposed a
line follower algorithm for exploring and solving any
kind of maze. The proposed maze mapping system is
based on a coordinate system where the paths are
calculated using the Dijkstra algorithm.
The work presented in [47] includes the design and
development of a line maze solver robot based on a
depth-first search algorithm. The robot was able to solve
out a non-loop maze in an average time of 84.97 seconds
and a loop-maze in an average of 63.40 seconds. On the
other hand, R. Musridho et al. [48] proposed a line maze
solving algorithm to explore and solve a maze area made
up of curved and zigzag lines. The new algorithm
successfully solved the maze with a curved and zigzag
structure.
A. Khan et al. [49] proposed an autonomous maze
solving robot with turning indicators and the ability to
navigate itself through any environment. The work
presented in [50] includes a simple autonomous robotic
system (Lego Ev3) with limited on-board resources to
employ a line follower maze solving algorithm.
V.
DISCUSSION
For any solver robot, the navigation process is the
main task that intends to explore the possible paths
between the source and destination points, and may then
employ routing algorithms to find out the shortest path
between any two points [51]. In this paper, the maze
solving algorithms have been divided into two categories:
algorithms for known environments and algorithms for
unknown environments. This section analyses the
existing maze solving algorithms and evaluates the
existing solver robot systems.
The dead-end filling algorithm [13] finds all the dead
ends in the maze area in order to explore the path from
the source-point to destination-point. However, the deadend algorithm is inefficient in robotics, since the robot
has to look at the entire maze at once. On the other hand,
© 2021 Int. J. Mech. Eng. Rob. Res
672
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
© 2021 Int. J. Mech. Eng. Rob. Res
673
Known environment algorithms
TABLE I.
Unknown environment algorithms
Memory size: the total size of memory required
to process the maze solving algorithm through
the robotic processor.
Implementation with robotics: the ability to
implement the maze solving algorithm in robotic
systems.
Algorithm complexity: this measures the amount
of time it takes to run the maze solving
algorithm.
Obtain the shortest path: can the maze solving
algorithm find the shortest path in the maze area
when more than one path exists between the
source and destination points.
In section 4, we discussed the existing solver robot
systems and placed them into two main categories based
on the method used to solve the maze: camera-based
systems and sensor-based systems.
The existing image processing-based maze solving
robotic systems [26-31] reduce the total time required to
solve the maze. In addition, they offer efficient path
planning and achieve reliable navigation in small
environments (for instance 2 m × 2 m). However, image
processing-based solutions require a camera to capture
the maze area. Moreover, an efficient processor and
memory are required in order to process and analyse the
captured images and explore the possible paths. Finally,
image processing-based systems are inapplicable in large
maze areas and real situations where it is impossible to
capture the maze area.
Sensor-based systems are efficient solutions in terms
of cost and reliability. The rangefinder-based robotic
systems [32-40] employ rangefinder sensors to determine
the distance between the robot and the wall. These
systems are easy to implement, inexpensive and efficient.
The line follower maze solving robotic systems [45, 46,
47, 48, 49, 50] are similar to the wall follower systems,
however they differ in the technology used in the
navigation process, since the line follower systems are
based on sensing the colour placed on the floor in order to
determine the direction of the solver robot. These systems
are efficient in terms of cost, but they fail in
environments with no light source. Table II presents a
comparison between the existing solver robot systems
where the systems are evaluated according to the
following issues:
1. Efficiency: this evaluates the productivity of the
maze solver robotic system in all environments.
2. Maze area: this assesses the efficiency of the
solver robot in any size environment in order to
accomplish the mission that the solver robot
designed to.
3. Robot solver Complexity: this measures the
solver robot design and implementation. The
requirement for complicated sensors increases
the complexity of the solver robot design.
4. Cost: the maze solver robot cost plays a
significant role on the total efficiency of the
maze robotic solver system.
A COMPARISON BETWEEN THE MAZE SOLVING
ALGORITHMS
Maze
Solving
Algorith
m
Dead-end
Maze
routing
Memory
size
Implement
ation with
robotics
Large
Large
Hard
Medium
Flood-fill
Large
Medium
Lee's
Large
Soukup
Large
Medium
(requires
grid
structure)
Medium
(requires
grid
structure)
Hadlock
Large
Heuristic
Large
Medium
(requires
grid
structure)
Hard
Wallfollower
Medium
Easy
Tremaux’
s
Large
Hard
O(n2)
n: # of
junctions in
the maze area
×
Random
mouse
Low
Easy
O(n2)
n: # of
junctions in
the maze area
×
Medium
Medium
O(n2)
n: # of
junctions in
the maze area
×
Pledge
Algorithm
Complexity
O(PN)
O(r×c)
r: rows
c: columns
O(r×c)
Obtain
the
shortes
t path
×
√
√
O(r×c)
√
O(r×c)
10-50 times
faster than
Lee’s
algorithm
O(r×c)
×
O(bd)
d: depth of
solution
b: the
branching
factor
O(n2)
n: # of
junctions in
the maze area
√
×
TABLE II. A COMPARISON BETWEEN THE MAZE SOLVER ROBOT
SYSTEMS
Maze solver
technique
Efficiency
Maze
Area
System
Complexity
Cost
Camerabased
systems
high
efficiency
in small
areas
Small
areas
Requires
processing for
the captured
images
High
Rangefinder
systems
Efficient in
areas with
walls
Any
maze
area
size
Sensing data can
be processed
using any
microcontroller
Low
Line follower
systems
Efficient in
areas with
lines drawn
Any
maze
area
size
Sensing data can
be processed
using any
microcontroller
Low
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
[9]
VI. CONCLUSION & FUTURE WORK
Several maze solving algorithms have been proposed
with diverse structure and efficiency. However, there is
no perfect maze solving algorithm for this purpose. The
deployment of a certain maze solving algorithm depends
on several factors including: area size, area complexity,
area structure, deployment cost and complexity. In this
paper, we investigated the maze solving algorithms and
categorized them in terms of the deployed maze
environment into two categories. In addition, we
discussed the recent deployment of maze solving robotic
systems and a critical analysis is presented, in order to
guide researchers and developers for choosing the most
suitable maze solving algorithm.
[10]
[11]
[12]
[13]
[14]
CONFLICT OF INTEREST
The authors declare that there is no conflict of interest.
[15]
AUTHOR CONTRIBUTIONS
[16]
Ms. Shatha reviewed the recent developed maze
solving algorithms. Ms. Shuruq conducted the research
on the existing maze solving robotic system, whereas Ms.
Wejdan discussed the maze solving algorithms, Ms.
Hadeel discussed the maze solving robotic systems, and
Ms. Ahad performed a comparison study among the
existing robotic systems, and Dr. Tareq Alhmiedat wrote
the paper.
[17]
[18]
[19]
[20]
ACKNOWLEDGMENT
The authors wish to thank the Industrial Innovation
and Robotics Center at the University of Tabuk.
[21]
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
C. Wang, L. Meng, S. She, I. M. Mitchell, T. Li, F. Tung, W. Wan,
M. Q. H. Meng, C. W. De Silva, “Autonomous mobile robot
navigation in uneven and unstructured indoor environments,”
in Proc. 2017 IEEE/RSJ International Conference on Intelligent
Robots and Systems (IROS), pp. 109-116, September, 2017.
A. Saman and I. Abdramane, "Solving a reconfigurable maze
using hybrid wall follower algorithm," International Journal of
Computer Applications, vol. 82, no. 3. 2013.
S. Mishra and B. Pankaj, "Maze solving algorithms for micro
mouse," in Proc. 2008 IEEE International Conference on Signal
Image Technology and Internet Based Systems, pp. 86-93, 2008.
B. Gupta and S. Sehgal, "Survey on techniques used in
autonomous maze solving robot," in Proc. 2014 5th International
Conference-Confluence: The Next Generation Information
Technology Summit, 2014, pp. 323-328.
N. Kumar and S. Kaur, “A review of various maze solving
algorithms based on graph theory,” International Journal for
Scientific Research & Development, vol. 6, no. 12, 2019.
R. C. Arkin and R. R. Murphy, “Autonomous navigation in a
manufacturing environment,” IEEE Transactions on Robotics and
Automation, vol. 6, no. 4, pp. 445-454. 1990.
P. J. Costa, N. Moreira, D. Campos, J. Gonçalves, J. Lima, P. L.
Costa, “Localization and navigation of an omnidirectional mobile
robot: The robot@ factory case study,” IEEE Revista
Iberoamericana de Tecnologias del Aprendizaje, vol. 11, no. 1, pp.
1-9, 2016.
H. Sahin and L. Guvenc, “Household robotics: Autonomous
devices for vacuuming and lawn mowing [applications of
control],” IEEE Control Systems Magazine, vol. 27, no. 2, pp. 2096, 2007.
© 2021 Int. J. Mech. Eng. Rob. Res
674
[22]
[23]
[24]
[25]
[26]
[27]
[28]
[29]
[30]
[31]
M. L. Delle-Monache, J. Sprinkle, R. Vasudevan, and D. B. Work,
“Autonomous vehicles: From vehicular control to traffic control,”
HAL-Inria, 2019.
S. M. Farritor and M. E. Rentschler, “Robotic highway safety
markers,” in Proc. ASME 2002 International Mechanical
Engineering Congress and Exposition, pp. 833-839, American
Society of Mechanical Engineers Digital Collection, January, 2002.
N. Ruangpayoongsak, H. Roth, and J. Chudoba, “Mobile robots
for search and rescue,” in Proc. IEEE International Safety,
Security and Rescue Rototics, Workshop, 2005, pp. 212-217, June,
2005.
H. Sugiyama, T. Tsujioka, and M. Murata, “Coordination of
rescue robots for real-time exploration over disaster areas,”
in Proc. 2008 11th IEEE International Symposium on Object and
Component-Oriented Real-Time Distributed Computing (ISORC) ,
2008, pp. 170-177,.
H. Abelson and A. DiSessa, Turtle Geometry: The Computer as a
Medium for Exploring Mathematics, MIT press. 1986.
M. Fattah, A. Airola, R. Ausavarungnirun, N. Mirzaei, P. Lileberg,
J. Plosial, S. Mohammadi, T. Pahikkala, O. Mutlu, H. Tenhunen,
"A low-overhead, fully-distributed, guaranteed-delivery routing
algorithm for faulty network-on-chips," in Proc. the 9th
International Symposium on Networks on Chip. ACM. 2015.
A. Glassner, "Graphics gems I". San Francisco: Morgan
Kaufmann Publishers Inc. 1990.
C. Y. Lee, “An algorithm for path connections and its
applications,” IRE Transactions on Electronic Computers, vol. 3,
pp. 346-365, 1961.
J. I. R. I, Soukup, “Fast maze router,” in Proc. the 15th Design
Automation Conference, pp. 100-102, IEEE Press, 1978.
F. O. Hadlock, “A shortest path algorithm for grid
graphs,” Networks, vol. 7, no. 4, pp. 323-334. 1977.
D. Hanafi, Y. Abueejela, and M. Zakaria, "Wall follower
autonomous robot development applying fuzzy incremental
controller," Intelligent Control and Automation, vol. 4, no. 01,
p.18, 2013.
M. Al-Khawaldah, O. Badran, and I. Al-Adwan, "Exploration
algorithm technique for multi-robot collaboration," Jordan
Journal of Mechanical and Industrial Engineering, vol. 5, no. 2.
pp. 177-184. 2011.
Public conference, December 2, 2010 – by professor Jean
Pelletier-Thibert in Academie de Macon (Burgundy – France) –
(Abstract published in the Annals academic, March 2011 –
ISSN 0980-6032) Charles Tremaux (1859–1882) Ecole
Polytechnique of Paris (X:1876), French engineer of the telegraph.
2010.
E. Lucas,"Récréations Mathématiques," vol. I, 1882.
M. Babula, “Simulated maze solving algorithms through unknown
mazes,” Organizing and Program Committee, vol. 13, 2009.
D. Abelson. Turtle Geometry: The computer as a medium for
exploring mathematics,” 1980.
S. Papert, "Uses of technology to enhance education," MIT
Artificial Intelligence Memo, no. 298, 1973.
M. Aqel, A. Issa, M. Khdair, M. ElHabbash, M. AbuBaker, and M.
Massoud, "Intelligent maze solving robot based on image
processing and graph theory algorithms," International
Conference on Promising Electronic Technologies (ICPET), pp.
48-53. 2017.
O. Kathe, T. Varsha A. Jagtap, and G. Gidaye, "Maze solving
robot using image processing," IEEE Bombay Section Symposium
(IBSS), pp. 1-5. 2015.
A. Chandak, G. Ketki, G. Shalaka, A. Sumeet & P. Kulkarni.
"Path planning for mobile robot navigation using image
processing," International Journal of Scientific & Engineering
Research, vol. 4, no. 6, pp, 1490-1495, 2013.
B. Rahnama, A. Elçi, and S. Metani, "An image processing
approach to solve labyrinth discovery robotics problem," in Proc.
The 36th Annual Computer Software and Applications Conference
pp. 631-636, 2012.
N. Barnouti, S. Al-Dabbagh, M. Naser, "Pathfinding in strategy
games and maze solving using A search algorithm," Journal of
Computer and Communications, vol. 4, no. 11, p. 15. 2016.
K. Lutvica, J. Velagić, N. Kadić, N. Osmić, G. Džampo, and H.
Muminović, "Remote path planning and motion control of mobile
robot within indoor maze environment," International Symposium
on Intelligent Control (ISIC), pp. 1596-1601, 2014.
International Journal of Mechanical Engineering and Robotics Research Vol. 10, No. 12, December 2021
[32] L. Wyard-Scott, and M. Meng, "A potential maze solving
algorithm for a micromouse robot," in Proc. IEEE Pacific Rim
Conference on Communications, Computers, and Signal
Processing. Proceedings, pp. 614-618, 1995.
[33] I. Elshamarka and S. Abu Bakar, "Design and implementation of a
robot for maze-solving using flood-fill algorithm," International
Journal of Computer Applications, vol. 56, no. 5, 2012.
[34] I. Arya, G. Fiona K. Sohum, M. Karan, R. Daniella B. Jacob
"Autonomously solving mazes with robots," Thesis for Bachelor
of Science in Electronics and Telecommunication Engineering,
2017.
[35] F. Annaz, "A mobile robot solving a virtual maze
environment," International Journal of Electronics, Computer and
Communications Technologies, vol. 2, no. 2. 2012.
[36] A. Islam, F. Ahmad, and P. Sathya, "Shortest distance maze
solving robot," IJRET: International Journal of Research in
Engineering and Technology, vol. 5, no. 7. 2016.
[37] I. Elshamarka and A. Saman, "Design and implementation of a
robot for maze-solving using flood-fill algorithm," International
Journal of Computer Applications, vol. 56, no. 5, 2012.
[38] S. Tjiharjadi, C Wijaya, and E. Setiawan, "Optimization maze
robot using A* and flood fill algorithm," International Journal of
Mechanical Engineering and Robotics Research, vol. 6, no. 5.
2017.
[39] J. Su, X. Cai, C. Lee, and C. Chen. "The development of a halfsize micromouse and its application in mobile robot education,"
in Proc. 2016 International Conference on Advanced Robotics and
Intelligent Systems (ARIS), 2016, pp. 1-6.
[40] C. Wu, D. Liaw, and H. Lee, "A method for finding the routes of
mazes," in Proc. 2018 International Automatic Control
Conference (CACS), 2018, pp. 1-4.
[41] R. Kumar, P. Jitoko, S. Kumar, K. Pillay, P. Prakash, A. Sagar, R.
Singh, and U. Mehta, "Maze solving robot with automated
obstacle avoidance," Procedia Computer Science, vol. 105, pp.
57-61. 2017
[42] S. Chua, J. Dominguez, J. Limqueco, E. Lu, S. Que, J. Rosario,
and D. Abuan, "Development of a maze solving mobile robot
capable of tracking the distance it traversed," Advanced Science
Letters, vol. 24, no. 11, pp. 8640-8646. 2018.
[43] S. Tjiharjadi, “Design and implementation of flood fill and pledge
algorithm for maze robot,” International Journal of Mechanical
Engineering and Robotics Research, vol. 8, no. 4, 2019.
[44] L. Bienias, K. Szczepański, & P. Duch. “Maze exploration
algorithm for small mobile platforms,” Image Processing &
Communications, vol. 21, no. 3, pp.15-26. 2016.
[45] K. Norbert-Brendan and T. C. Marius, "Autonomous line maze
solver using artificial intelligence,” in Proc. 15th International
Conference on Engineering of Modern Electric Systems (EMES),
2019, pp. 133-136.
[46] S. Sakib, A. Chowdhury, S. Ahamed, and S. Hasan, "March. maze
solving algorithm for line following robot and derivation of linear
path distance from nonlinear path," in Proc. 16th International
Conference on Computer and Information Technology, pp. 478483. 2014.
[47] A. Hidayatullah, A. Jati, and C. Setianingsih, "Realization of
depth first search algorithm on line maze solver robot," in
Proc. 2017 International Conference on Control, Electronics,
Renewable Energy and Communications (ICCREC), 2017, pp.
247-251.
[48] R. Musridho, F. Yanto, H. Haron, and H. Hasan, "Improved line
maze solving algorithm for curved and zig-zag track," in Proc. 7th
ICT International Student Project Conference (ICT-ISPC), 2018,
pp. 1-6.
© 2021 Int. J. Mech. Eng. Rob. Res
[49] A. Khan, G. Rana, M. Rabin, F. Mitul, and M. Shahjahan, "Design
and implementation of a robot for maze-solving with turning
indicators using PID controller," in Proc. 2013 International
Conference on Informatics, Electronics and Vision (ICIEV),
2013, pp. 1-6.
[50] C. Saranya, M. Unnikrishnan, S. Ali, D. Sheela, and V.
Lalithambika, "Path planning algorithm for maze: Design and
implementation in LEGO mindstorms rover," in Proc. 2017
International Conference on Inventive Computing and Informatics
(ICICI), 2017, pp. 189-193.
[51] T. A. Alhmiedat, A. Abutaleb, and G. Samara, “A prototype
navigation system for guiding blind people indoors using NXT
Mindstorms,” International Journal of Online and Biomedical
Engineering (iJOE), vol. 9, no. 5, pp. 52-58. 2013.
Copyright © 2021 by the authors. This is an open access article
distributed under the Creative Commons Attribution License (CC BYNC-ND 4.0), which permits use, distribution and reproduction in any
medium, provided that the article is properly cited, the use is noncommercial and no modifications or adaptations are made.
Shatha Alamri is a Teaching Assistant in the Department of Computer
Science, and she has been involved in the Industrial Innovation &
Robotics Center at the University of Tabuk, Tabuk, Saudi Arabia, 2018.
Her main research in the field of AI and robotics. Ms. Shatha is
currently completing her master's degree in computer science at King
Saud University, Riyadh, Saudi Arabia.
Shuruq Al-Shehri, is a Teaching Assistant in the Department of
Computer Science, in the Faculty of Computers & Information
Technology, at the University of Tabuk. She received a BSc degree in
Computer Science from the Faculty of Computers and Information
Technology, University of Tabuk , Tabuk , Saudi Arabia , 2019.
Wejdan Alshehri has completed her BSc degree in the Department of
Computer Science from the Faculty of Computers & Information
Technology, at the University of Tabuk, Saudi Arabia, 2019.
Hadeel Alamri has completed her BSc degree in the Department of
Computer Science from the Faculty of Computers & Information
Technology, at the University of Tabuk, Saudi Arabia, 2019.
Ahad Alaklabi has received BSc degree in Computer Science from the
Faculty of Computers and Information Technology, University of
Tabuk , Tabuk , Saudi Arabia , 2019.
Tareq Ahmiedat is an Associate Professor in the
Department of Computer Science, and the head of
Robotics & Artificial Intelligence Unit, in the
Industrial Innovation & Robotics Center at
University of Tabuk, Tabuk, Saudi Arabia. His
research interests include tracking mobile targets
through Wireless Sensor Networks, robot
navigation and orientation, and robot vision
systems. Dr. Alhmiedat has been involved in
various research projects including: SafetyNET, IndoorTrack, Diabetic
Robot (SARA), and WSN environment monitoring.
675