Multi-Robot Exploration in Unstructured and Dynamic Environments

— This paper deals with exploration by team of multi-robots in unknown, unstructured and dynamic environments at the same time. The goal of the research is to minimize the total exploration time taken by team of robots to complete the mission and to achieve faster re-planning of their planned path in case of sudden changes in the environment as robots move through the environment. The proposed exploration approach is fully distributive in the sense that all robots are assigned separate regions in an unknown environment with each robot exploring its assigned region. As a first step the environment is partitioned into different regions as available number of robots and then each robot in a team is assigned its separate region for exploration. The proposed approach has been tested in different simulation environments with varying number of robots. Comparison with another approach proves the superiority of the approach in terms of reduction of exploration time in unstructured and changing environments .


INTRODUCTION
Exploration by a team of robots in unknown environment is a interesting field that is demanding research efforts by researchers as single robot is not capable of exploring whole environment efficiently [1] [2]. Multi-robot teams are more fault tolerant than a single robot, thus robust to failure of a teammate during mission. Furthermore, multi-robots which perform exploration can save precious human lives as they can protect them by inspecting dangerous and life threatening environments instead of direct inspection by humans. Environment exploration carries out work by exploring all unknown regions with generating maps of these regions as multi-robots move in the environment. Robots in exploration maintains a map of their world and keep on updating it as unknown areas are explored by them. Applications of the field includes search and rescue operations, reconnaissance, surveillance and planetary exploration missions.
There are different kind of environments for achieving exploration. Some are structured [3], while some lack a defined structure i.e unstructured [4]. Another point of consideration is that not all environments are static, changes in environment are likely to occur, so multi-robot exploration should also be robust to any kind of environmental change [5] [6] like moving people and obstacles while robots are performing exploration and other kinds of dynamics.
In order to reap benefits of exploration, researchers have provided novel ideas from time to time. Yamauchi [7] introduced the concept of frontiers for the first time between open and unexplored space for robotic exploration of unknown environment. Concept of frontiers is given as areas on the borderline between open space and unknown space. Some authors presented centralized approach in exploration in which supervisor makes the routing decisions based on status of robots regarding frontier exploration [8]. Burgard et al came up with an approach in which robots selected their target frontiers based on cost to reach frontiers and its utility and shared their positions with respect to team mates by simultaneous localization and mapping [9][10].
Work presented here applies a distributed approach which enables the complete dispersion of the team members in unpredictable environments. In the past, several researchers have carried out work on dispersing robots in exploring missions. Some have performed unsupervised clustering [11] [12], While others have partitioned the environment into segments considering structure of the world [3] [13].
In our method, we have highlighted an issue of efficient exploration by groups of mobile robots seeking for reduction in mission accomplishment time and energy consumption by each robot. Also we have taken into account sudden changes in the environment in the sense of unknown obstruction in planned path of a robot and how robot cope with these changes in an efficient manner. Our exploration methodology can be divided into three parts. First one is the partitioning of the environment. Second one is to assign regions to all robots. Third one is to plan a path for reaching assigned regions.

A. Exploration and Mapping
The field of exploration has undergone developments year after year and still improving for benefit of science and technology. Yamauchi [14] came up with an exploration International Journal of Engineering Works Vol. 7, Issue 03, PP. 189-196, March 2020 www.ijew.io strategy in which each robot tracked the frontier cell which it could approach with minimum cost. That strategy lacked coordination during exploration. Stachniss and Burgard came up with an idea of building and updating maps with mobile robots from sensor information [1]. Centralized approach for mapping [9] was also presented in which central executive robot received local maps generated by teammate robots and constructed a global map by integrating all local maps. Based on global map central executive assigned targets location for each robot. The drawback of centralized approach is that if central agent becomes faulty whole mission fails as a result. Another similar approach was used that maximized information gain and reduced cost through Auction Negotiation Process [15].

B. Other Approaches
Authors have also focused their work on behavior based approaches such as potential field that takes into consideration several behaviors to generate a resultant potential field. It works by planning path for robots by combined influence of attractive and repulsive potentials acting on robots. Robots are attracted towards frontiers and repelled by obstacles and fellow robots while navigating towards their goal [16] [17]. The drawback of potential field approach is the problem of local minima i.e attractive and repulsive forces become balanced making resultant force zero. J. De Hogg, Cameron and Visser proposed Role based exploration approach [18] which is a centralized approach ,it gives importance to communication between robots when exploring distant regions in the environments. It is suitable in environments where communication drop out is an issue. Shortcoming of this approach lies in the fact that it requires separate explorer robots, relay robots and a central station, thus consuming much resources. Role-based method is also prune to complete failure in case of central station going down.

C. Distributed Approaches
Authors have also taken into consideration approaches that leads to faster distribution of robots in environments which is ideal for saving exploration time as well as power consumption by robots. Researchers have applied various techniques. Unsupervised clustering technique using k-means algorithm as proposed by Solanas and Garcia [11], divided the explored area into as many clusters as available robots. Also segmentation based approach was adapted by Wurm, Stachniss and Burgard [3] where robots were assigned different regions in an environment to explore using graph partitioning and Hungarian algorithm. Arezoumand, Mashohor and Marhaban, came up with an another segmentation approach which aimed at finding objects in exploration mission [19]. Lopez-Perez et al [20] proposed idea of splitting of the scene by assigning frontiers their weights for each robot to explore different regions.
Nowadays a key objective in exploration is planning an optimal path for robots in dynamic environments. In dynamic environments, robots have to deal with unknown obstructions in their planned path during navigation which we have considered here. This makes exploration mission really challenging. In such manner [21] thought of an algorithm that looked through a few way portions to make robot move towards its goal. Tazir et al [22] used static and dynamic modules to integrate two navigation methods by using prior information to find a global path in an efficient manner by applying a combination of Genetic algorithms and Dijkstra algorithm. In [23], adaptive dimensionality algorithm was applied to speed up path planning in changing environments for a robot without any assumptions on its motion model.

III.
ENVIRONMENT MODEL 2D occupancy grid model of environment is considered here representing status of cells as free, occupied, unknown (frontiers). Status of the cell is determined by sensor information of robots.

A. Assumptions
 Every robot possess skills to map the environment and localize itself in it.
 Environment to be mapped is globally known and locally unknown.
 Multi-Robots can occupy a single grid.
 All robots are assumed to be holonomic (can move in all directions)  The simulated robots are homogeneous with same sensing capabilities.
 Dynamic environment means only changing position of obstacles in the environment and not failure of robots.

B. Objectives
 To explore the whole environment in minimum time.
 Robots should consume less energy in mission.
 Robots should quickly overcome dynamics of the environment.
C. Terminologies used  FREE CELL -Robot detected from sensors that the cell is free from obstacle but has not visited neither explored that cell.
 OCCUPIED CELL-Robot detected that the cell is occupied by obstacle or explored by another robot.
 UNKNOWN CELL -Robot has not detected neither explored that cell.
 FRONTIER CELL: Boundary between free and unknown space.
 SEGMENT: Separate portion of an environment for each robot to explore.

D. Significance of work
 Exploration approach is fully distributive.
 Approach deals with unstructured environments which are complex instead of simple structured ones.  Fast re-planning is applied in unpredictable scenarios.

IV. METHODOLOGY
Operational flow of our methodology is illustrated in Fig 1.

A. Environment Segmentation
Unexplored space is divided into same number of segments as team members involved by the application of k-means algorithm [24]. Here, K corresponds to total team members involved in exploration and objects represent unknown cells which are expressed in 2D coordinates. The centroids of the k clusters are haphazardly set at start. Afterwards the algorithm makes modifications to centroids at every iteration till convergence condition is achieved, thus resulting in a group of k different clusters (segments) having center of mass as resulting centroids [11].

B. Robot Segment Assignment
After division of environment into segments, the approach decides for assignment of segments to each member in the team. The target is to choose such an optimal assignment so that total travelling cost of the team is reduced efficiently. Therefore, it is essential to architect a good solution to assign robots to their segments efficiently. We have used Hungarian method for this purpose [25]. This method handovers optimal assignment of robots to their segments, thus reducing travelling cost of robots in terms of distance.
Assignment is written in the form of 'n * n' cost matrix in (1) [12] which denotes the cost of all personal assignments of team members to their segments.
Here, each Ci value in the matrix denotes the travelling path the concerned robot has to pass through for reaching its assigned goal. Here position of robots are the source and centroid of a region are goals. The planning of path from a robot to reach its goal is accomplished by applying D* lite path planning algorithm [26] which is also well suited for replanning in dynamic environments.
Steps of the Hungarian method [3] are as following: 1. Compute a reduced cost matrix by subtracting from each element the minimum element in its row. Afterwards do the same with the minimal element in each column.
2. Find the minimal number of horizontal and vertical lines required to cover all the zeros in the matrix. In case, exactly n lines are required, the optimal assignment is given by the zeros covered by n lines. Otherwise, continue with step 3.
3. Find the smallest non-zero element in the reduced cost matrix that is not covered by a horizontal or vertical line. Subtract this value from each uncovered element in the matrix. Furthermore, add this value to each element in the reduced cost matrix that is covered by a horizontal and a vertical line, continue with step 2.

C. Frontier Assignment using minimum cost
Here we choose those frontier cells as target points that can produce lowest costs. Here cost is defined in terms of distance to travel and is determined with the help of path planning algorithm.
Cost function is represented as: Terms used in (2) are specified in Table 1. The above cost function in (2) keeps robots dispersed while exploring and also assigns them frontier cells having the least cost. According to (2) frontier cells which are not related to the segment allotted to a robot are penalized by huge value ∆. Furthermore this condition assures that robots will go on ijew.io exploring their assigned segments. As a robot arrive at a target frontier, it start scanning the environment and updating the whole map, after that another goal is selected by repeating the same phenomenon and so on, As soon as detection of predefined number of unknown frontier cells is completed by robots, k means clustering process is applied to redistribute the rest of the cells and it stops until all cells are known in the environment.

D. Path-Planning
We have used D* Lite algorithm for calculating the shortest collision free path for all robots. It is fast re-planning methods which calculates most optimal paths between the present state of the robot and destination state again and again as variations come in graph,s edge cost as the robot advances towards the destination state [26]. Algorithm uses heuristic functions for restricting re-planning process to only states that are relevant for repairing the path. Thus it is well suited for dynamic environments. This algorithm searches from the destination state towards the present state of a robot. A* algorithm used by researchers [12] for finding shortest path is suitable for those environments whose complete topography is known and will remain known throughout exploration. On the other hand D* Lite as used in our approach can plan a path efficiently in environments where topography is not completely known and is changing with time.

V. EXPERIMENTATION
We executed our methodology using Python based simulator running under operating system Ubuntu 16.04. For visualization we used cv2 python library. Robots used in simulation were holonomic robots (which can move in any direction) equipped with range sensors having a sensing range of 45 pixels in each direction. Environment in which experiments were performed consisted of three difficult levels with varying complexities as shown in Fig 2. We conducted experiments by varying team sizes from 1 to 8 robots in all environments. Size of the all three environments was set to 632×1044 pixels. During exploration we also changed position of obstacles in every iteration in environments given in Fig 2 to check robustness of our methodology. Our performance indicator was total time (in seconds) taken by robots to complete the exploration.

VI. RESULTS
As described in section 5, we check robustness of our approach in three different simulation environments with changing obstacle positions for each simulation run. We compared results of proposed method with Pruned Frontier method [12]. As stated earlier we assume here that all robots possess mapping, localization and communication capabilities.         We compared our results with pruned frontier approach [12] in terms of number of robots and exploration time. As their environment sizes were very large as compared to our maps, we scaled their exploration time according to our environment size.  From these results, it is very clear that our approach is time efficient in both difficulty levels moderate as well as difficult. For team size of 1-5 robots our approach is far superior in both environments, while for 6-8 robots, pruned frontier is nearly as good as our method.

CONCUSLION
The work presents exploration by a team of holonomic robots in an unknown environment which assures full distribution of robots in the environment by assigning them separate portions, thus making exploration time efficient. The work also highlights faster re-planning of multi-robots in unstructured and dynamic environments at the same time. As an additional factor, this approach also saves energy consumption by all robots because as time is reduced, power is also less consumed by each robot. We also tested our methodology by varying difficulty levels during experimentation and compared our approach with one approach in different environments and results proved the domination of our methodology in terms of exploration time.