A one decade survey of autonomous mobile robot systems

ABSTRACT


INTRODUCTION
Today, with the increasing interest in robotics so global, the approaches of mobile robots are in scientific research fields which are rapidly growing. Because of their capabilities, humans might be substituted via mobile robots in various fields. While they have many applications such as medical care, personal services, entertainment, industrial automation, emergency rescue operations, surveillance, reconnaissance, construction, guides intervention in extreme environments, and so on, also with various other industrial applications. The majority of them are already provided in the markets. In 2017, a study conducted via global consultants McKinsey assumed that by the year 2030, a third of USA's employees might be replaced via robots and automation. Yet, timelines might be changed via events such as pandemics. In 2020 the coronavirus disease (COVID-19) outbreak sped up the process and opened up new chances of using autonomous robots and automation in many industrial sectors. A robot is autonomous when it has little or no human intervention and itself is capable of determining the actions taken for performing tasks, utilizing perception systems which help it navigate. Also, it requires a control system or cognition unit for coordinating all sub-systems which include robotics [1], indicating that robots should be capable of navigating with no disruptions and capably of avoiding obstacles in the confinement of movement in outdoor or indoor environments [2]. In addition, environment modeling, recognition, planning as well as motion have autonomous mobile robot design [2], [6]. On the opposite, active sensors are providing their energy to environment and after that measuring the environment's response. Since active sensors have the ability of controlling further controlled interactions with environment, then they are frequently working excellently. Many risks are shown via active detection: the output energy might be affecting the properties which might be measured via the sensors [6]. Yet, active sensors might be suffering from interference from its environment and its signal. Some instances of active sensors were radars, ultrasonic sensors, sonars, laser rangefinders and so on. Table 1 shows a classification related to the most significant sensor's types utilized for autonomous mobile robots [2].  They are designed to sense and determine the exact position of an object at a short distance via direct physical contact. They are also used to detect heat variations.

Wheel Encoders
Optic Magnetic Pp, A It helps to measure the distance or speed the robot has driven. The wheel encoders also count the revolutions of each wheel an orientation. Optical sensor Infrared Lidar Ep, A Ep, A These are light-based sensors which produces range estimate based on the time needed for the light to reach the target return. Heading sensor Gyroscope Pp it is a reliable rotation sensor that measures angular velocities and orientation. Vision-based sensors CCD/CMOS Camera Ep, P These sensors offer a vast sum of information about the environment and enables intelligent interaction in dynamic environments. Active ranging sensors Ultrasonic Laser rangefinder Optical triangulation Ep, A Ep, A Ep, A Active ranging sensors aid robot navigate and usually originate as part of the localization and environmental modelling. They are devices that generates highly precise distance measurement between sensor and target. Where, A is means active; P is means passive; Pp is means proprioceptive; Ep is means exteroceptive.

LOCALIZATION SYSTEM
In recent years, systems for the localization and formation of robots have been of particular interest in mobile robots [14]. For robots to move efficiently, it should have the ability of determining its position in the workplace. The best-known localization method is the global positioning system (GPS). In the case when accurate GPS system might be installed on robots, the location problem might be solved. However, there are some limitations such as high cost, power consumption, and large size that make this method difficult to use regularly. In addition, GPS cannot be used for indoor environments or in obstructed areas and therefore be limited in their workspace, and further such system is not currently available or not sufficiently accurate to work with [1], [14]. Global localization, along with perception, is currently the main prerequisite for navigating and controlling mobile robots. In the case when just current sensor data based on previously learned map were utilized, the location related to mobile robots might be estimating the accurate position regarding mobile robots. Thus, the sensors (perception system) were vital in localization. Any accuracy or sensitivity related to the sensor affecting the robot's location [15]. Figure 3 shows the General Schematic for mobile robot localization [6].
Fine localization is useful for various tasks like destination tracking, path planning and traffic control. Therefore, the complex part related to localization was estimating the orientation and position of robots that might be utilized for obtaining information from the sensors as well as other systems. In any case, control systems are also playing a role. In the case when robots want to reach a specific place, it requires a model or a map related to the surroundings, thus it might be planning its way to a destination, indicating that localization was one of the broad problems which involves not just evaluating the absolute position of robots on earth, yet also create a map and determine the position of robot relative to the map [1], [2], [15].
To tackle such problems, the localization approaches were divided into two categories for determining the pose of robots: absolute and relative localization approaches. In relative localization approaches measuring the orientation and position of moving robots through combining data from various sensors. In addition, the integration starts from initial pose e.g., P0 = [0, 0, 0], and is updated regularly over time when the robot is moving. While in absolute localization techniques; instead of tracking the pose incrementally, a mobile robot might be searching for its location directly from its environment or assumable exact map or a known area. Usually, such techniques are based on map similarity, passive or active landmarks and navigation beacons [16]. On the other hand, there is a lot of research being done regarding the localization of a mobile robot indoors and outdoors. Extensive global indoor localization studies were carried out, which might be divided into three categories from sensor viewpoint: vision-based localization, laserbased localization, and wireless local area network (WLAN) based localization.
WLAN based localization is implementing the process of localization via combining signal propagation model and experience test based on information from each one of the network nodes. On the contrary, laser-based localization was more robust, where Bayesian filtering was utilized for converting mobile robot's localization into a problem of evaluating the probability distribution based on grid maps. In terms of vision-based localization, images might be providing thorough visual information like color textures and geometric elements. Also, vision-based localization was majorly utilized for indoor localization due to its ease of use and low costs [15]. While, in outdoors have irregular shapes and variations on geometry and lighting due to weather conditions. As a result, environmental insecurity is relatively high. There are many complex studies for autonomous navigation of mobile robot in outdoor [17], for example: a combination related to GPS and IMU [18], odometry curb functions and information on the differential global positioning system (DGPS) [17], VIZARD [19] and faster regional convolutional neural network (faster R-CNN) [20]. Finally, representation was one of the fundamental problems for map-based localization system. Over the years, various map presentation approaches were designed in literature which were utilized in route planning. However, the research is still ongoing. The main features of the real-world are poorly represented on world maps because the real-world is dynamic and real obstacles might move. Therefore, methods are required for identifying and distinguishing moving, static and permanent obstacles [1], [6], [14], [16].

Map representation
There is a high importance in indicating that the map representation is influencing the computational complexity related to reasoning about mapping, navigation, and localization. The robot must represent two specific concepts: a representation (model) of an environment or a map as well as aspects regarding environment contained in the map. The accuracy of the position display is often limited by the accuracy of the map display. In any case, when selecting a particular map representation, three basic relationships must be understood [6], [16]: − The map's accuracy should be matched by the accuracy with which robots should be achieve their tasks. − The map's accuracy and the type of objects displayed should be matched by the type and accuracy of data returned via the sensors of the robot. − The map's representation complexity has direct effect on the computational complexity that is related to the considerations for navigation, localization, and mapping. In all cases, the maps might be intelligently representing the object's physical location with no reference to their elasticity, color, texture, or any comparable secondary property which is not directly associated to space and position. For these reasons, robots are requiring nonvisual representation related to the map which it might store in its memory. Also, there were two approaches of storing maps: discrete maps (grid maps) and continuous maps [21]. A good example is a continuous line-based. Wherein a continuous map view includes a set of infinite or finite lines approximating real-world environmental lines based on a 2-D slice of the world. Note that the only environmental objects that appear on the map are straight lines, for example along walls and at corners. This is not just a sampling related to richest elements of real-world, yet also a simplification, as the real wall might have texture and relief which is not reflected in drawn line. Moreover, a practical implemented about line follower robot can be found in [22]. Furthermore, for simplicity, the map view can also be minimized by general decomposition. Like exact cell decomposition. This method was developed to minimize the amount of excess lengthwise movement by combining narrow cells into one cell. This method provides a decomposition via selecting boundaries between discrete cells based on geometric criticality. The robot's capability for moving from any area of free space to adjacent areas is important. The view might be very compact since each area is efficiently stored as separate node, while the major assumption behind such decomposition is that the robot's precise position in any free space regions is irrelevant, more detail about exact cell decomposition can be found in literature [6], [23]. The exact decomposition depends on the specific obstacles regarding free space and environment. In the case when it was expensive or anonymous for collecting such information, this approach not feasible. Therefore, the exact decomposition is not often suitable. Another option was fixed decomposition (approximate decomposition of cells), in which the continuous real environment is converted into discrete approximation for the map. Each cell was assigned a value that refers to the likelihood that the cell will be occupied. A threshold can then be applied to the occupancy grid to define the minimum required probability that a cell is occupied in [24].
Fixed expansion shows what occurs to free areas and obstacles throughout such transformation. Perhaps the most widely used and popular map display method in mobile robotics is fixed decomposition. It is useful but incomplete due to its imprecise nature. With this change, it can lose narrow passages. Another approach is adaptive cell decomposition, also known as the occupancy grid representation. It is a powerful methodology of solving physical systems based on partial differential equations. Such techniques offer a significant reduction in computation and discretization times, for detail see [25]. In which the environment was specified via discrete grid, such technique is of specific value in the case when the robot is equipped with distance-based sensor, since distance values regarding each one of the sensors combined with robot's absolute position might be directly utilized for updating empty or filled value regarding each one of the cells. Figure 4 shows all map representation methods. Probabilistic methods are differing since they are explicitly identifying probabilities with possible robot positions. Therefore, the recent study is focusing on probabilistic localization approaches [26]. A set of methodologies have been proposed as follows: kalman filter localization, markov localization, Monte Carlo localization, route-based localization, positioning beacon systems, globally unique localization, landmark-based navigation, the stochastic map technique, autonomous map building, dynamic environments, and cyclic environments. The techniques and algorithms were thoroughly examined are proposed in [6], [24]- [26].

COGNITION, PATH, TRAJECTORY TRACKING, AND MOTION PLANNING
In common, robot's cognitive design should be planning the path which must be taking via the robot for realizing the destination. In this manner, the robot's cognitive level is decision making as well as the execution part which is used by the robot for realizing high level goals with no collapse or collide with obstacles available in its way or environment [27]. Moreover, the capacity of the robot to act based on its information and the data from the sensors for reaching its goal positions as reliably and effectively as possible [28]. Path planning generally represents deciding collision free paths from its beginning configuration to the ultimate configuration optimizing execution model like energy, time, or distance. The latter is considered as the major used criterion [4]. Also, the optimal or shorter way between two focuses might be to optimize or minimizes the amount of braking and the amount of turning. An extra thorough research, with broader objective was trajectory planning, which includes specifying the energy inputs for moving the actuators, thus the robot is following a path allowing it to move from initial configurations to final configurations whereas avoiding obstacles. It considers the physical characteristics and dynamics of the robot when planning trajectory. As a rule, the planning of trajectories and trajectories were part of further complete concept: motion planning [4], [27]. Such as Lutvica et al. [29] proposed both path planning and trajectory execution within an indoor maze environment.
In addition to that, the main tasks are required to navigate a mobile robot. First task, path, or trajectory planning: this is strategic problem-solving skill since the robot must decide what to do in the long run for achieving its goals, whereas the second task, avoiding obstacles: means changing the robot's trajectory to avoid collisions. Avoiding obstacles is an important challenge in robotics since it is significant that mobile robots reaching its destination with no collision or obstacle in its path. A collision free algorithm is vital for autonomous mobile robots. Therefore, a lot of techniques were indicated for obstacle avoidance [4], [6], [27]. The next subsection is for more information about avoiding obstacles.
In recent years, several methods have been developed that try to solve the problem of motion planning of mobile robots. There are different categories of planning methods which can be divided into different types depending on the environment in which the robot is located, which are: local path planning and global path planning [27]. While other authors, distinguish between off-line and on-line, based on the availability of environmental information or on the computer's power or the capability for solving the major demanding algorithm [1], [4]. At any case, the two approaches are similar. Figure 5 shows the classifications related to mobile robot path planning approaches [2]. − Off-line path planning or global path planning: This method can be used in areas where there is complete information on static obstacles and movement obstacles. Thus, this path creates a complete path from its starting point to its destination before the moving robot begins its motion. Examples of route planning in off-line, service robots, automatic guided vehicles, and so on, in which there might be no changes to captured environment map. This method is used where the environment is completely unknown, where routes are planned, and the robot is moving. In this algorithm the path changes as it moves in relation to changes in the environment based on information through sensors. Basically, on-line planning begins its offline path, yet change to online mode when detecting new changes in obstacles' state. Examples of route planning in on-line environments involve reconnaissance robots, planet exploration are proposed in [4], [27]. Recently, with developments in computers, a lot of off-line strategies became on-line ones. The major aim of such approaches is finding a solution which is a possible path.

Categories of path planning algorithms
Over time, they were supplemented via optimization approaches attempting on reducing the distance that is traveled via mobile robots. Therefore, many researchers have proposed solutions to solve these problems and tested in many environments with dynamic and static obstacles. The first attempt on robot planning has been conducted in the late 1960's and early 1970's. The current methods and algorithms fall into four categories and the two methods have many benefits and drawbacks in many conditions [27], [30]: classical approaches, probabilistic approaches, heuristic planners, and evolutionary approaches.
The initial step in all path-planning programs is converting such continuous environmental model into discrete map adequate for the chosen rout-planning methods are explained in [6]. The first algorithm is "classical approaches" developed in 1980s and 1990s, such approaches involve three common planning techniques such as road mapping methods, potential functions, and cell decomposition methods are discussed in [1], [30]. In a road map, a set of routes is built where each non-collision route connects the starting points with the destination. The shortest route of the routes found in the visual graph is identified. Therefore, the most well-known road map is the visibility graph and Voronoi diagram are illustrated in [4], [30].
Bhattacharya and Gavrilova [31] suggested a way to design a safe clearance path with the use of Voronoi diagram for solving optimality issues. The road map method works in a sparse environment since the number of roads is based on the number regarding multiple obstacles as well as its edges are built using points of equal length for two or more obstacles. As a result, the path obtained is safe but usually not short is clear in [4], while, potential field path-planning form gradient or field, around a robotic map that directs a robot to a goal location from many previous locations. The major idea of such methods is directing the robot to the target through creating a significant force in the robot environment. Attraction forces is assigned to objectives and repulsive forces is allocated to obstacles. The potential field method is treating robots as points within the impact related to artificial potential field. This artificial field is directing a robot to target whereas avoiding known obstacles. However, it must be indicated that this is not just a path design, yet also a control law for robots. The main disadvantage of this method is that there is a local minimum in the potential field, where the robot keeps oscillating between obstacles as explained in [6], [30].
On the other hand, the process of cell decomposition represents the search space as individual units referred to as cells. The main aim is providing a sequence related to obstacle steps from starting point through the goal. These steps might be provided via using cells with no restrictions. One common cell decomposition method is the grid method where it was utilized for creating environment map. The greater the complexity in specifying the grid's size, the smaller the grid's size, the environmental representation will be more accurate. However, if smaller grids are used, there will be an increase in the search distance and memory space, example of these approaches in [32], a new molecular decomposition strategy is developed when barriers, objectives, sensor platform and field of vision (FOV) were provided as limited and closed subsets related to Euclidean workspace [4], [30]. Some of the problems presented in this way, requires much memory for analyzing work environment leading to main computational complexities.
During the 1990s, new types of methods arose to problem-solving emerged from the classical methods, known as "probabilistic approaches". Probabilistic roadmap (PRM) is a network of straight-curve sections, or arcs, which meet in the nodes. In this way, nodes are generated, and links are made based on the parameters set in the PRM algorithm. The number of nodes is directly related to the problem and affects the algorithm's suitability for any complexity in the environment [1]. The algorithm uses a network of connected nodes to determine the direction of a moving robot collision. In PRM, the map is loaded first and then the random configuration is set to be used as network locations. The first and last positions are then defined. A network of node connections may be established between the first and last sites. Finally, the algorithm searches for this network of connected nodes to retrieve a non-collision path [33].
On the other hand, PRM produces a potential path in a very short time to make it work in the most efficient conditions but make the most of the smooth navigation. In [34] when the authors proposed a new change in PRM that sought to simultaneously reduce the path length and the planning time of multi-query problems of the planning that has been called as a semi-lazy PRM which provides a balance between basic PRM and LPRM according to a value of the collision test. Another set of the approaches are "heuristic planners" or experienced algorithms of the search strategy. The types of heuristic methods of planning, although used more recently compared to the classical methods, are very important because of their learning based on human-like behavior. Many Heuristic system algorithms are designed for perfection, effectiveness and optimism and may find a faster path besides the classical one [34]. Rubio et al. [1] distinguish this method based on graph search, for example: Algorithm A *, greedy search, Dijkstra algorithm and D * algorithm.
Although, VInjarapu and Gawre [30] are aware that heuristic methods are similar to the human learning. Therefore, according to this fact, it is listed as follows: Artificial natural networks (ANN), genetic algorithms, and fuzzy logic, Wavelets. In addition, Ganganath et al. [35] recommends the Z * heuristic search algorithm for algorithm planning for energy-saving areas in hilly areas. In this review, it was explained that the two most popular are the Dijkstra algorithm and the A * algorithm. Both algorithms offer the best path back and can be considered as special types of dynamic programming [36]. − Dijkstra algorithm: In 1956, computer scientist Edsger W. Dijkstra developed an algorithm to find very short paths between the nodes on a graph that could represent, for instance, a road map or a separate workspace. − Algorithm A *: This algorithm performs the search of all the paths which may be directed towards the goal and characterizes the path that has the minimum costs (i.e., minimal time, minimal distance traveled, and so on). Of all every available path, the algorithm chooses the path or paths that possibly result in fast solution. The algorithm operates with the use of the weighted graphs: beginning from a 1 st graph node, form a path tree that starts from that node, observing potential paths one by one, to the point where one of its paths is ending at targeted node. In short, A * operates similarly to Dijkstra's capabilities except that it guides its search towards the most promising states and can save a significant amount of calculation. Finally, all the techniques described above have been applied with success to the new robot systems which exploded on the platform in 2000's, like the space rovers and humanoid robots. For more study about this approach and highlight their practical benefits and disadvantages are presented in [30], [35], [36], while the classic methods have been found to be effective, the calculation time is important in determining the probability of a collision. Also, the classical methods are often confined to a suitable local optimum solution that can be much smaller than global solution. In addition to that, it becomes even more difficult when the environment is dynamic. These disadvantages make classical methods incompetent in complex areas (the more information on classical and evolution in off-line and on-line path planning algorithms, are explained in [4]. Further, over the past two decades, the evolutionary process and methodological approach have evolved and introduced "evolution algorithms". This algorithm has been widely used to plan pathing and solve complex and dynamic obstacle problems in the environment through various tasks. Hence, the various types of evolutionary techniques have been appeared such as: − Genetic algorithm (GA): this is an optimization tool based on genetic selection and genetic engineering.
They are combining the survival of fittest with random data to create a search algorithm which creates solutions to the search issues. In GA, the first step is random generation of population and then have been used the crossover, mutation, and selection to create possible paths [4], [37]- [39]. Achieving the goal in a complex environment requires chromosomes of varying lengths. Ismail et al. [37] introduced binary coding of varying lengths of GA where the gene means successive direction of the movement as well as the distance [38] proposed a genetic based algorithm of path planning, where it has been carried by the populations, including those overcoming obstacles (and illegal paths also). Later, an invalid path sequence of methods is considered the evaluation of the penalty function, which results in increasing the computational load which leads to higher time of execution.
On the other hand, Chaymaa et al. [39] used a genetic algorithm to produce an optimal response using optimal control. Cost work is calculated for each optimal response, and then the best is chosen for the next step. This process will continue until lower costs are reached. − Particle swarm optimization (PSO): Is another evolutionary algorithm widely used in path planning. The concept of that method comes from simplification of a simplified social program, attempting to mimic the unexpected movements of a flock of birds or a school of fish. Years of studying the dynamics of animals have led to the possibility of using this behavior as a tool for excellence. In comparison with the GA, the advantage of the PSO is that it is easy to use and has a smaller number of the repair parameters [1], [4], [40]- [42].
Recently, Nasrollahy and Javadi [40] introduced a PSO-based system of dynamic areas where populations have been produced, which contain invalid paths and tested under penalty function evaluation. In addition, Gong et al. [41] suggested a model that utilized a multi-objective PSO and a genetic like operator of mutation. Many targets have been too short a distance and the most dangerous path from obstacles. The operator of the mutation has been utilized to configure the invalid paths, while in [42] variables length is used depending on the number of vertices of the polygonal obstacles. The binary PSO is used in conjunction with a genetic-like operator of mutation for optimizing the direction. − Ant colony optimization (ACO): In 1992, Marco Dorigo introduced this algorithm, which is part of a colonial family algorithms, in swarm intelligence strategy. The first algorithm aimed to search the best route in the graph, based on the behaviors of the ants to find the minimal route to the food source. The ACO has been utilized to find a global optimum path from sub best paths [43], [44].
Mei et al. [43] proposed a new hybrid approach that combines the ACO and artificial potential field (APF) for the dynamic environments. The ACO has been used for the planning of global path and the APF has been utilized to direct the robot to jump to local minimum. From this hybrid approach it can be satisfied by obstacle avoidance in both a global optimal and real-time.
The main issues of the ACO are difficulties to obtain the quick solution convergence and difficult to apply to the complex maps and very large. Therefore, Lee et al. [44] improved ACO and introduced it using a potential field method to obtain a quick convergence solution through adjusting ACO control parameters. The advanced ACO uses a standard pheromone selectivity (a substance that is secreted by the ants) for updating the vector of the position. − Simulated annealing (SA): which means annealing in metallurgy, is one of the random searches methods and is similar to the procedure of cooling molten metal by annealing that explained in [4]. Miao and Tian [45] developed a method based on the SA algorithm for dynamic areas with stable and dynamic obstacles. Their approach uses vertices of obstacles as a search area. The SA algorithm is utilized for quickly finding the optimal path or the near best path and in [46] introduced a SA multidisciplinary approach for path planning in four dynamic environments with different complexities. Replacing, deleting, modifying, and repairing the operator was introduced alongside with SA. SA parameters have been optimized for the moving obstacles. They have also introduced comparisons between the SA and GA [46]. Over the years, several authors have reviewed the previous algorithms. At first, these algorithms only understood time which is required to run a trajectory and tried to do it without any assumptions and adapt it to systems as real as possible. The algorithm is then upgraded and analyzed of the robot's systems have been extended to those which are more realistic. One way to do this is analyzing the behaviors of robot systems, results in improving operating parameters (i.e., torque, time, energy, and distance). The initial algorithm for trajectory planning sought to decrease time which is required to complete a mission. In those researches, the authors have forced smooth pathing for the robots to follow. Another way to take trajectory planning has been based upon finding a jerk optimal route [1], [4], [6]. One more different line for solving the issue of the trajectory planning has been based upon torque and minimization of the energy used. In the field of automated manufacturing processes and robotics, energy minimization is of interest. In the future, robot collaborative work will optimization to obtain minimized displacements and it is more important to avoid collisions. Artificial intelligence will enhance the performance of cooperative robots [4], [47].

Obstacle avoidance
Avoiding obstacles in local route planning is an essential technology and one of an important technology that guarantees safety. Robot navigation is the ability of a mobile robot for moving around environment (the known as well as the unknown) in which the goal can be achieved without hitting any obstacle [2], [48] this process requires a map, target location, and current location of the robot using a sensor or other positioning system. In addition, recalculate detouring path and for steering itself to a more efficient and safer path in the real time. For many years, numerous studies were performed on this subject and numerous approaches were presented, some of those approaches have been implemented in the real systems. Therefore, the algorithm of obstacle avoidance is helpful in preventing the collisions. These include obstacle detection and the actual obstacle avoidance [4], [47], [48]. Most of the prevent collisions algorithms can be: a. Map-based: this type of the algorithm depends upon the geometric models or the maps of an environment. The robot has an environment map model and may be sensing its current position at any of the moments and may be detecting the collisions through the calculation of the distances [47]. b. Mapless-based: they do not use an explicit environment representation whatsoever. They are dependent upon the information sensor systems to monitor the environment as explained [6].
On the other hand, the most recognized methods for obstacle avoidance are presented in [6], [27], [47] as the following: a. The bug algorithm: is one of the ancient algorithms. It can enable a robot for tracking the contour of obstacles found in the path's and decide on most suitable point to move toward a goal. One of the main disadvantages of this type of algorithm is that the behavior of robots at certain times is usually a function that only considers the latest sensor readings. This can cause unwanted problems but can be prevented if a momentary reading of the robot sensor does not provide enough information to avoid collisions [2], [6], [48]. b. The histogram of the vector field: This method utilizes a two-dimensional grid of the histogram to simulate an environment, which has been simplified into a 1-D "polar histogram" which is constructed surrounding a robot's position at a given time. The robot direction is regulated with the selection of a sector that has the least number of the obstacles. Maps are constantly updated by robot sensors with the data that is associated with distance between robots and obstacles. This algorithm is improved by considering the size of the robot and selecting safe and effective angles [27], [47]. c. Dynamic window methods: The main concept is selecting a control in the robot speed space. The robot path consists of a "set of the circular arcs". Arc is defined with the use of the vector of the velocity (vi, wi), where (vi) represents forward velocity and (wi) represents rotational velocity; the two variables are reflecting search area [45], [47]. This method includes three velocity-angular windows (Vr =Vs ∩ Va ∩ Vd). Where (Vs) is area, (Va) where the robot cannot move and evade collisions, and (Vd) represented a dynamic window [6,47]. a. Nearness diagram (ND): is an approach that uses a "divide and conquer" method. This approach divides the work environment to various areas to indicate the position of obstacles. The ND approach utilizes a paradigm of "situated activity" based on behavior. This idea uses a predetermined group of conditions, consisting of a variety of appropriate problems and actions. In the case where the approach has been carried out, the current situation is specified and appropriate actions are taken from [6], [27], [47].

NAVIGATION SYSTEM
One of most important and vital problems in the studies of the mobile robots related to navigation systems because the need to define them clearly at the design stage. The goal is for a robot to be moving from a place to a different one in an unknown or known environment, considering the sensor values to achieve the wanted goal. Which means that the robots must depend upon some other aspects, like the perception, localization, cognition, and motion control. In most cases, the moving robot is unable to travel the straight path from the starting location to its destination. It is very important to provide enough of the information on the location of the robot to move. That is why, the methods of the localization have been considered key to navigation process [49]. In addition, navigating a moving robot requires additional skills, including control capabilities, trajectory planning, obstacle avoidance, and safe distances to the goal, which mobile robots need to perform to provide superior navigation. Every one of the navigation systems must consider the general design mentioned above to ensure that all tasks can be met [3], [6], [50]. Over the past two decades, researchers have studied the problems, methods, and applications of mobile robot's navigation systems. Mobile robot navigation has been taken under consideration as one of the major areas of application that is gaining a lot of attention due to its wide range of potential applications [2], [3], [50]. In addition, there are many works of research in which people have tried to solve the navigation issue and examples of their successful applications.
Chou and Lian [51] presented a new navigation method that can effectively use sensory information to handle unknown and changing environments, that called the dynamic window approach* (DWA *). DWA * is a local reactive navigation, based on the DWA space velocity approach, which directly seeks the optimal speed command from a set of all speeds executed for a robot. This method provides fast and smooth navigation with no local minimum.
Moreover, various algorithms have been suggested to plan the navigation of robots under many conditions. One of the most exciting issue is to control the navigation of the robot [52]. Therefore, Kala et al. [53] proposed to find the most optimal robotic path using genetic algorithms, artificial neural networks, and A * algorithms at any time of the robot's travel. The robot physically moves according to this result. Also, this method can be used to allow many robots to move together in one place.
On the other hand, Nurmaini and Tutuko [50] proposed intelligent navigation systems based on individual attributes or biological structures of social animals, starting with one robot, multi robots and swarm robots from a specific point of view. The combination of navigation systems and biological approaches has gained a considerable amount of the attention. This makes it a significant area of research for intelligent robotic systems to increase the performance as well as address the weaknesses associated with mobile robot navigations [54]. On top of that, the intelligent computing algorithms that include swarm's intelligence and soft computing have been rated as powerful methods that may be providing solutions without environmental modeling. Thus, a new navigation methodology based upon neural networks (NNs) for intelligent autonomous mobile robots in a structured maze environment is presented in [55]. Through neural back propagation networks, robots learn during the navigation process from sensors, update this one and utilize it for planning and control navigations intelligently. Moreover, this method contributes positively to decrease the time desired to train the network. Neural network controllers are ideal for learning general navigation and real-time intelligence. For the purpose of improving mobile navigation system's robustness and rapidity. Kaiyuan et al. [56] developed a quick multi-mobile system of robot navigation for intelligent logistics using simultaneous localization and mapping based on Rao-Blackwellized particle filter (RBPF-SLAM) algorithm, to build 2D grid maps of job environments. Joint the anytime repairing A* (ARA*) global path planning and dynamic window approach (DWA) local path planning, to find best path to target position and avert static and dynamic obstacles, while in [57], different soft computing methods were proposed to solve the problem of avoiding obstacles and navigating robots in various environments. This method is done by using deterministic and non-deterministic (stochastic) algorithms and their hybridization. In this study, the authors note that researchers mostly use soft computing as opposed to hard computing for static environments, not dynamic environments, and use simulations rather than implementations on physical robots.
Finally, Crespo et al. [58] provides a survey of concepts, methodologies, and techniques in robot navigation systems, with attentions to the impact of the semantic information. The semantic navigations may be known as the robot's capability for planning a path to a target with the use of the high-level information that has been provided by the environmental elements. In addition, all researchers correspond that the mapping way of the environment defines high-level navigation to be performed. On the other hand, there are different ways to obtain this information either directly from the environment, or to acquire knowledge because of interactions with the humans. This latter option enables more abstract relation. An interesting characteristic for the semantic navigations, it operates with the abstractions which are similar to the ones that are carried out by the humans for planning their paths and classifying the environment based on its utilizations.
Besides, with the process of continuous research and investigation within the field of mobile robotics, researchers have progressively found that it is difficult to utilize a single robot framework to function in more complex working situations. Subsequently, the development of multi-robot frameworks has continuously gotten to be a center of consideration center for researchers and specialists [59], [60]. Multirobot systems are of senior attention among scholars, compared to individual systems. Already, numerous analysts were centering on the robot-to-robot communication system to unravel different multi-robot coordination issues. Rather than employing a robot-to-robot communication system, a few analysts investigated an unused thought to unravel multi-robot coordination issues by considering a one-to-all communication system or better known as a broadcast control system such as in [60]. The authors altering the standard broadcast control system based on simultaneous perturbation stochastic approximation (SPSA) with a norm-limited upgrade vector algorithm to overcome the precariousness issue of the existing broadcast control system in fathoming a few of the motion-coordination errands.
On the other hand, Shirsat et al. [61] presented a probabilistic search technique for numerous operators that is based on local sensing. In this way, the search technique is appropriate for applications in which organize connectivity is troublesome to preserve, such as disaster scenarios. The agents move concurring to a discrete-time discrete-state (DTDS) Markov chain and share information with neighboring robots. This methodology demonstrated to achieve consensus on the presence of an immobile target, with no suspicions on the connectivity of the communication network. Moreover, Firoozi et al. [62] presented a dispersed method for multi-robot coordination in tight spaces utilizing nonlinear model predictive control (NMPC) and solid duality hypothesis. The approach permits the robots to utilize a polytopic depiction of each robot's shape and defining collision-free directions for all the robots, at the same time. The results display that the dispersed method is computationally effective for online implementation, scalable to larger networks of robots, and at long last, the strategy is generalizable to a heterogeneous group of robots with diverse polytopic shapes.
Whereas Zitouni et al. [63] proposed a dispersed approach to tackling the multi-robot errand assignment issue that combines the consensus-based bundle algorithm and ant Colony Framework. This issue comprises of two fundamental continuous stages: robots and tasks. The objective is to allow tasks to robots whereas optimizing a given model. The authors compared the execution of the process to five states of-theart multi-robot task assignment (MRTA) arrangements based on the three measurements: i) make span, ii) traveled distances, and iii) traded messages. Liu et al. [59] a high-order bilateral consensus robot figuration control protocol for multi-agent frameworks was proposed by combining the concepts of chart hypothesis and structural balance, to realize the asymptotical agreement of the third-order framework. The condition that the framework has solid connectivity.
At long last, Benevento et al. [64] proposed a method, named the prediction-correction coverage (PCC) method, which administers the directions and detection of the robots. This method borrows effective concepts from bayesian optimization together with Gaussian Forms. When combined with control laws to realize centroidal Voronoi decoration, give rise to a versatile consecutive testing strategy to explore and cover the space.

OPEN PROBLEM IN AUTONOMOUS MOBILE ROBOT SYSTEMS
Even if mobile robots have experimented with a significant number of theoretical and workable advances during the final decades, a few issues stay unsolved. New researches are exceptionally promising in order to resolve the different open issues which are not yet satisfactorily solved with current mechanisms and excellent algorithms. On the other hand, a real mobile robot is totally different from a computer simulation. A real mobile robot needs sensory systems, movement systems, energy feeding and, computing devices. So, it is fundamental to continuously keep in mind their importance and the way they impact and enforce the design of the mobile robot's navigation modules.
One of the open problems in [2] related to the route and localization of a mobile robot in an arbitrary environment, a challenge due to the complexity and variety of environments, processes, and sensors that are included. It is subsequently essential to proceed to investigate modern frameworks and modern strategies with the point to unwind particular sensor combination issues for robot route and localization. Additionally, to move forward localization for a mobile robot in a structured or unstructured environment, it is proposed that particular or specific objects are to be detected. In spite of other related work done, it is still an open issue.
Another open problem is considered autonomous navigation [65]. The navigation of mobile robots in outside environments such as agrarian applications is still an open problem. Due to the common feature of dynamic environments are their nature of being unpredictable or unknown, climate conditions, unforeseen obstacles, zone nature variations, and vegetation.
Given these current challenges, on the other side, the analysts look to thrust the boundaries of autonomous and intelligent robotics with challenging environments, in mind must consider the behavior of control plans, decision-making approaches, and planning algorithms when used to tasks that are met with uncertainty and difference. So, in [66] the analysts clarified a few challenges and profundity of open issues within the field of robotics and autonomous systems (RAS) for harsh environments, associated with the interaction of three common classes of robots (humanoid robots, Ground vehicle robots (GVR), and unmanned aerial vehicles (UAVs)).
As for the multi-robot systems, there are several open problems linked to middleware support for robot collaboration that requires more investigation [67]. A really adaptable middleware tool stash would be required that empowers the creator of a cooperation application to arrange the middleware by selecting the particular set of components that matches best the application prerequisites. Besides, the capacity to share information could be a pivotal prerequisite for cooperation. There are different approaches for building a shared information base in multi-robot frameworks. In addition, the motion control design of trajectory tracking for single or multi-robots are still to be addressed in terms of smooth and optimal control action are generated "velocity action or torque action" as well as minimum tracking position and orientation errors are obtained [68], [69]. For all of these perspectives, the state of the art provides individual solutions. In any case, how to forge these arrangements into a shared information base that fulfills the particular prerequisites of an application space are an open issue.

CONCLUSION
A one-decade survey of autonomous mobile robot systems has been introduced in this paper. So, robots in general and mobile robots especially, will keep evolving in the coming years due to their relevance and application in today's world. Over the years, researchers have conducted many studies on the importance of mobile robots, their applications, and their problems. As technology advances, the demand for mobile robots increases due to the tasks they perform and the services they provide. Therefore, to perform the task and achieve a predetermined goal, it is necessary to control the mechanical structure of the moving robot. The major areas interested in this area are the localization, perception, cognition, and navigations. The perception systems provide the information on environment, the actual robot, as well as connection of a robot with the environment. This information will be treated, and after that, suitable instructions will be sent to an actuator that moves the mechanical structure. Moreover, a system is responsible for the coordination of all the input data and planning the movement of the robot for it to be capable of moving consequently. This review is intended to provide a brief overview of the autonomous mobile robot systems.