frl algorithm for solving a loop-less maze using a micro

6
Submission-ID: 1803 Abstract— Autonomous navigation is an important feature that allows a robot to move freely from one point to another in a maze without help from humans. This Autonomy is not comfortable because humans can analyse an event and make a decision to resolve it. The Autonomous navigation algorithms within the unknown area require that the robot with a behaviour rule must navigate the maze entirely and with this acquired information report the shortest path. This paper presents the development of a simple technique used to solve a maze without loops in a mobile robot and report the shortest path. An inference behaviour rule was established to take a decision tree based on the states of two bits. This algorithm presents a low computational complexity to be implemented in robots of small- range with limited resources. The algorithm proposed has been more efficient than Right, Left, and Flood Fill Algorithms, for considerable distances. KeywordsRobotics, Autonomous navigation, ROBOT Autonomy algorithms, Shortest path, Decision tree applications, Mobile Robot applications, robots of small-range. I. INTRODUCTION Finding the shortest path through a maze is a Robotic fundamental problem that can be analysed in many forms. Also, path planning and navigation for mobile robots, in the particular case where the environment is known, is a well- studied problem, but in practice, complete knowledge about the environment is not available. Therefore, it can be considered as a maze. In this paper, we consider the case where a maze has a single goal location, and an autonomous robot must find a path to that goal from any arbitrary point and optimise its path with an efficient decision algorithm. An optimisation algorithm is proposed. For this investigation a small-range robot is used; this robot has an electronic module Appreciate the facilities provided to carry out this work to Instituto Politécnico Nacional through the Ministry of Research and Graduate with SIP 20180023, 20181488, 20180147 and SIP20180824 projects. The Interdisciplinary Unit of Engineering and Social and Administrative Sciences, Center for Innovation and Technological Development in Computing and Center for Research and Development of Digital Technology. Also Stimulus Program Performance Researchers (EDI) and Stimulus Program Teaching Performance (EDD). Alvarez-Cedillo. A. Jesus, Instituto Politécnico Nacional, CDMX México. ([email protected]). Alvarez-Sanchez. Teodoro, Instituto Politécnico Nacional, CD Tijuana ([email protected]). Nava-Vega Adriana, Universidad Autónoma de Baja California, Campus Tijuana, México, ([email protected]) consisting of light, rotation and touch sensors. Using the programming logic of these sensors was created an algorithm called "FRL" (Forward, Right, Left), where the robot is required to produce a complete path to the goal area. This path information in real time is stored in the memory. It should be emphasised that the range of the sensors is limited, as well as the available RAM and ROM memory [1]. Once the goal area was found, the robot has to report the shortest path and could use this information to navigate the maze a second time[2]. There are five types of mazes (Simply-connected Mazes, Multiply-connected Mazes, Three-dimensional Mazes, Conditional navigation Mazes and Interactive Mazes) and these mazes are the reference to a variety of problems that a robot must resolve in a real-world situation [3], [4]. For each maze, the navigation rules are different. In this work, a new technique to solve a maze with a robot and report the shortest path from the origin point until the solution in mazes without loops is shown [5], [6]. See Figure 1. Fig. 1. Maze used in the conceptual design of our algorithm, the region mark with the number 1 is the beginning point, the region numbered by two marks the finish point. (This Maze was used in the ROBOT CONTEST 2014 in Czech Technical University in Prague) II. RELATED WORK The micro-mouse is a robot that can only resolve simple mazes. Although the micro-mouse is not classified such as artificial intelligence, because it has a deterministic behaviour, it behaves like an Artificial Intelligence (A.I) in some degree but primarily responds to comparing behaviour rules when it tries to solve the maze. The micro-mouse has a micro- 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 200 1 2 200 FRL algorithm for solving a loop-less maze using a micro-mouse robot Jesús Antonio Alvarez-Cedillo, Teodoro Alvarez-Sanchez and Adriana Nava Vega.

Upload: others

Post on 02-Oct-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FRL algorithm for solving a loop-less maze using a micro

Submission-ID: 1803

Abstract— Autonomous navigation is an important feature

that allows a robot to move freely from one point to another in a maze without help from humans. This Autonomy is not comfortable because humans can analyse an event and make a decision to resolve it. The Autonomous navigation algorithms within the unknown area require that the robot with a behaviour rule must navigate the maze entirely and with this acquired information report the shortest path. This paper presents the development of a simple technique used to solve a maze without loops in a mobile robot and report the shortest path. An inference behaviour rule was established to take a decision tree based on the states of two bits. This algorithm presents a low computational complexity to be implemented in robots of small-range with limited resources. The algorithm proposed has been more efficient than Right, Left, and Flood Fill Algorithms, for considerable distances. Keywords— Robotics, Autonomous navigation, ROBOT Autonomy algorithms, Shortest path, Decision tree applications, Mobile Robot applications, robots of small-range.

I. INTRODUCTION Finding the shortest path through a maze is a Robotic

fundamental problem that can be analysed in many forms. Also, path planning and navigation for mobile robots, in the particular case where the environment is known, is a well-studied problem, but in practice, complete knowledge about the environment is not available. Therefore, it can be considered as a maze. In this paper, we consider the case where a maze has a single goal location, and an autonomous robot must find a path to that goal from any arbitrary point and optimise its path with an efficient decision algorithm. An optimisation algorithm is proposed. For this investigation a small-range robot is used; this robot has an electronic module

Appreciate the facilities provided to carry out this work to Instituto Politécnico Nacional through the Ministry of Research and Graduate with SIP 20180023, 20181488, 20180147 and SIP20180824 projects. The Interdisciplinary Unit of Engineering and Social and Administrative Sciences, Center for Innovation and Technological Development in Computing and Center for Research and Development of Digital Technology. Also Stimulus Program Performance Researchers (EDI) and Stimulus Program Teaching Performance (EDD). Alvarez-Cedillo. A. Jesus, Instituto Politécnico Nacional, CDMX México. ([email protected]). Alvarez-Sanchez. Teodoro, Instituto Politécnico Nacional, CD Tijuana ([email protected]). Nava-Vega Adriana, Universidad Autónoma de Baja California, Campus Tijuana, México, ([email protected])

consisting of light, rotation and touch sensors. Using the programming logic of these sensors was created an algorithm called "FRL" (Forward, Right, Left), where the robot is required to produce a complete path to the goal area. This path information in real time is stored in the memory. It should be emphasised that the range of the sensors is limited, as well as the available RAM and ROM memory [1]. Once the goal area was found, the robot has to report the shortest path and could use this information to navigate the maze a second time[2].

There are five types of mazes (Simply-connected Mazes,

Multiply-connected Mazes, Three-dimensional Mazes, Conditional navigation Mazes and Interactive Mazes) and these mazes are the reference to a variety of problems that a robot must resolve in a real-world situation [3], [4]. For each maze, the navigation rules are different. In this work, a new technique to solve a maze with a robot and report the shortest path from the origin point until the solution in mazes without loops is shown [5], [6]. See Figure 1.

Fig. 1. Maze used in the conceptual design of our algorithm, the region mark with the number 1 is the beginning point, the region numbered by two marks the finish point. (This Maze was used in the ROBOT CONTEST 2014 in Czech Technical University in Prague)

II. RELATED WORK The micro-mouse is a robot that can only resolve simple

mazes. Although the micro-mouse is not classified such as artificial intelligence, because it has a deterministic behaviour, it behaves like an Artificial Intelligence (A.I) in some degree but primarily responds to comparing behaviour rules when it tries to solve the maze. The micro-mouse has a micro-

200 200 200 200 200 200 200 200 200 200 200

200

200

200

200

200

1

2

200

FRL algorithm for solving a loop-less maze using a micro-mouse robot

Jesús Antonio Alvarez-Cedillo, Teodoro Alvarez-Sanchez and Adriana Nava Vega.

Page 2: FRL algorithm for solving a loop-less maze using a micro

Submission-ID: 1803

controller to control the hardware and a list of rules to make decisions; only with this can it solve the maze. It has sensors to receive the information about the walls around it in the maze and the information; then it will be used to position the micro-mouse and navigate the maze. Its dimension will not be greater than 25cm x 25cm x 25cm, and these types of robots are called small-range robots. Figure 2 shows the robot[5], [6], [7].

Fig. 2. The robot used to programme our algorithm(Pololu 3pi Robot)

The Wall follower algorithm is the earliest, most straightforward and best-known algorithm to solve a maze. If the maze is simply connected, then by keeping one sensor in contact with one wall of the maze, the micro-mouse robot always ensures that it will not get lost and will reach a different exit if there is one; otherwise, the robot will return to the entrance. The robot must traverse every path in the maze at least once. If the walls are not connected, then the solution of this system will not be ensured[7], [8], [9]. The algorithm 1 shows the behaviour.

This algorithm presents the following disadvantages:

1. Power Limitations: - Increase in complexity operations and increase power consumption in solving time.

2. Slow: -The robot has to visit the entire maze before it finds the exit so this can be a very slow technique.

Other authors are using Lee's algorithm. Given a fixed network maze, it can discover the briefest way between two focuses [1]. The algorithm 2 shows the behaviour.

The Lee's algorithm presents the following characteristics:

1. More natural Technique:- It is easy to apply 2. Guaranteed Solution: - This technique promises to

give the solution to the maze for the simply-connected maze.

3. Complexity: - The complexity of this algorithm is very low.

Some of the significant disadvantages are:

1. High memory requirement. 2. The main disadvantage of Lee’s algorithm is that it

expects that the structure of the maze to be known in advance, and thus it begins its search strategy.

3. Slow: This algorithm guarantees to find the optimal solution but in a longer duration of time.

Other authors are using an alternative of Lee's algorithm known as Flood Fill algorithm. The Flood Fill algorithm expects at the beginning that there are no dividers in the maze and afterwards uses Lee's algorithm to find its path towards the destination. It moves ahead through the maze and runs across new dividers. These dividers are added to the micro-mouse robot learning base, and afterwards, it applies to Lee's algorithm afresh to choose the following cell to move. The Flood Fill algorithm is an application of the Bellman-Ford algorithm [14].

III. METHODOLOGY

The micro-mouse has a set of four primary navigations; the position of these navigations can create a set of rules that the mobile robot can follow.

Page 3: FRL algorithm for solving a loop-less maze using a micro

Submission-ID: 1803

The primary navigations are: forward, backward, left and right. All navigations are represented with binary inputs of two bits. Considering the possible configurations were created, the Truth table is shown in Table 1.

Table1. Micro mouse moves b0 b1 Description

0 0 Backwards

0 1 Forward

1 0 Left

1 1 Right

It is considered that the navigations follow an ordered hierarchy, where the most important thing is to continue moving forward in a straight line. If this is not possible then try to turn left, right and if there is no way then the micro-mouse must go backward.

This solution is based on the Polish notation published by Jan Lukasiewicz (1924), to simplify the sentential logic. A maze can be analysed as a quaternary tree where the path intersections form each node. A tree is an acyclic, connected and undirected graph, i.e., It is an undirected graph in which there is exactly one path between any pair of nodes. This definition allows implementing a tree and its operations applying the representations used for graphs, and a collonaded diagram to represent it. See Figure 3.

Fig. 3. Methodology on the first section, initial maze section and k-tree generated

The last list created shows all the moves for the shortest path. See Figure 4.

Fig. 4. K-Tree final

Our algorithm was implemented in the Pololu 3pi Robot; it is a very popular and well-known micro-mouse, and it is a reference robot published in other works. The Pololu 3pi Robot is a high-performance mobile platform having two micro-metal gear motors and five reflectance sensors, all connected to an ATmega328 micro-controller. It is programmable through C source code and could reach speeds exceeding 3 feet per second. The source code PYTHON developed is shown in the listing1, the full source code could be seen in the A Annexe.

Listing 1. FRL Algorithm a fragment of source code

Page 4: FRL algorithm for solving a loop-less maze using a micro

Submission-ID: 1803

IV. RESULTS

The use of the FRL algorithm with the combined navigation rules can improve the robot navigation time. An experiment was conducted showing the configuration illustrated in Figure 1. The use of the forward and backward moves are an extra feature. To show the behaviour of micro-mouse two configurations of maps were used, both maps are shown in Figures 5 and 6. In the first case, our algorithm works better than the most used Right wall follower and Flood fill algorithms. The second case shows that our algorithm presents the worst performance when the cell target is near the cell start.

It is possible to see the performance from Figure 7, and the results show that the algorithm is optimal. The two different line and arrow types indicate the choice taken by the vehicle based on the navigation rules. The dashed lines show the path traversed using the left-hand or right-hand rule only. The solid lines indicate the choice made by the FRL algorithm on the location of the first opening. It clearly shows that the use of the FRL algorithm provides more intelligence to the robot in navigating the maze.

When traversing the maze to find the target cell, the path is memorised by recording every move that has been executed. The moves are denoted by F (for moving forward), L (turning left), R (turning right) and B (turning back or making a 180-degree turn).

Fig. 5. (Top) FRL algorithm versus right wall follower algorithm,(Down) FRL algorithm versus flood fill algorithm

Fig. 6. (Top) FRL algorithm versus right wall-follower algorithm,(Down) FRL algorithm versus flood fill algorithm.

B. Energy consumption and executed time

Energy consumption and executed time are a requirement demanded of autonomous robots. However, it is given a determined task to fulfil; the robot has to plan its actions using the least time and least energy consumption, and planning of collision-free navigation. A comparative study of the path length and time is taken for the performance of our algorithm with regards to different algorithms is also made. Both simulation and real tests are performed. The comparison of different algorithms is shown in Table II and III.

Page 5: FRL algorithm for solving a loop-less maze using a micro

Submission-ID: 1803

Fig. 7. (Top) FRL algorithm versus right wall-follower algorithm,(Down) FRL algorithm versus flood fill algorithm.

An elaborate analysis of the above algorithms gives us a basis of how to proceed in path planning of intelligent devices capable of navigation.

If we change the dimensions in the map, the time of traversal may change but the algorithm will not. In the case of non-uniform mazes, the extra hardware of a sensor would be required to detect whether a cell has been traversed. For future work, this paper will emphasise this problem and other variances.

V. CONCLUSION

This paper shows an autonomous navigation algorithm using few resources and demonstrates that it can be well optimised. Future study should determine what an obligatory memory size required for robot's circuitry deployment so that it can calculate optimisation algorithms on its own is.

By doing that, path optimisation would be a real-time system variable. Furthermore, the maze could be presented as a three-dimensional space that would demand different robot construction and use of touch sensors. Finally, an often-mentioned advantage of presented algorithms is that a solution can be found even if maze topology or start position are changed, i.e. for adaptive maze scenery.

ACKNOWLEDGEMENT Appreciate the facilities provided to carry out this work to Instituto Politécnico Nacional through the Ministry of Research and Graduate with SIP 20180023 project. The Interdisciplinary Unit of Engineering and Social and Administrative Sciences, Center for Innovation and Technological Development in Computing and Center for Research and Development of Digital Technology. Also Stimulus Program Performance Researchers (EDI) and Stimulus Program Teaching Performance (EDD).

VI. REFERENCES

[1] Bhawna Gupta and Smriti Sehgal, Ahmed Mosa, Survey on Techniques used in Autonomous, 5th International Conference, Con-fluence The Next Generation Information Technology Summit (Confluence),2014,pp.328-332.

[2] Rahnama Behnam, Ozdemir Makbule Canan, Kiran, Yunus, Elci, Atilla, Design and Implementation of a Novel Weighted Shortest Path Algorithm for Maze Solving Robots, Proceedings of the IEEE 37th Annual Computer Software and Applications Conference Workshops (COMPSACW), 2013, pp. 328 - 332.

[3] Ibrahim Elshamarka, Abu Bakar Sayuti Saman, Design and Implementation of a Robot for Maze- Solving using Flood-Fill Algorithm, International Journal of Computer Applications, 2012.

Page 6: FRL algorithm for solving a loop-less maze using a micro

Submission-ID: 1803

[4] Samarth Mehta, Robo 3.1-An Autonomous Wall Following Robot, The-sis from Department of Electrical and Computer Engineering, Cleveland State University, Cleveland, Ohio 44115, 2008.

[5] Frank Schulz, Dorothea Wagner, Karsten Weihe, Dijkstra’s Algorithm On-Line: An Empirical Case Study from Public Railroad Transport, WAE '99 Proceedings of the 3rd International Workshop on Algorithm Engineering, 1999, pp. 328.

[6] Verner, I.M. and D.J. Ahlgren, Robot contest as a laboratory for experiential engineering education. J. Educ. Resour. Comput., 2004. 4(2): pp. 2.

[7] Achmad, B. and M.N. Karsiti. Visual-based fuzzy navigation system for a mobile robot: Wall and corridor follower. In Intelligent and Advanced Systems, 2007. ICIAS 2007. International Conference on. 2007. Kuala Lumpur, 2007, pp.244 - 248.

[8] Vignesh, S., et al., Cave Exploration of Mobile Robots using Soft Computing Algorithms. International Journal of Computer Applications, Published by Foundation of Computer Science, New York, USA. 2013.

[9] Mishra, S. and P. Bande, Maze Solving Algorithms for Micro Mouse, Signal Image Technology and Internet Based Systems, 2008. SITIS ’08. IEEE International Conference, 2008. Pp. 86 - 93.

[10] Cai, J., et al., An Algorithm of Micromouse Maze Solving, in Proceedings of the 2010 10th IEEE International Conference on Computer and Information Technology. 2010, IEEE Computer Society. p. 1995- 2000.

[11] Jianping, C., et al. A micromouse maze solving simulator. In Future Computer and Communication (ICFCC), 2010 2nd International Conference on, 2010, pp. V3-686 - V3-689.

[12] Adil, M.J.S. A Comprehensive and Comparative Study of Maze-Solving Techniques by Implementing Graph Theory, 2010.

[13] Sharma, M. and K. Robeonics, Algorithms for Micro-mouse Future Computer and Communication, ICFCC 2009. International Conference on, 2009, pp. 581 - 585.

[14] Elshamarka, I. and A.B.S. Saman, Design and Implementation of a Robot for Maze-Solving using Flood-Fill Algorithm. International Journal of Computer Applications, 2012. 56(5): pp. 6.

[15] Cai, Z., L. Ye, and A. Yang, FloodFill Maze Solving with Expected Toll of Penetrating Unknown Walls, 2012 IEEE 14th International Conference on High-Performance Computing and Communications. 2012. Pp. 1428 - 1433.

VII. ANNEXE

The Full Micromouse Python source code there is in https://raw.githubusercontent.com/naokishibuya/micro-mouse/master/python/maze.py