Minimum Position Based on Robot’s Energy Consumption: A New Algorithm for Coordinated Multi-Robot Exploration

This paper addresses the multi-robot exploration problem in unknown environments. The proposed method aims to minimize the exploration time considering the robot’s limited energy. The target area is defined as a frontier which represents the limit between an unknown and explored part of the environment. Thus, each robot from the team is assigned to the frontier for which it has the lowest rank among the other robots in term of energy consumption. An implementation and tests in computerized simulation as well as a comparison with some existing approaches has been performed. The results obtained demonstrate the validity and the efficiency of our method.


Introduction
The exploration of an unknown environment is one of the most important tasks in autonomous mobile robotics.The objective is to build an accurate representation of the world based on the set of observations performed by the robots within a minimal time.Thus, the produced map can be used by the human for achieving some dangerous missions like oceanic and planetary exploration [1,2].In this context, the use of multiple robots can be advantageous in many real world situations where the collaboration of several simple and not expensive robots proves to be faster and more efficient than using a large and complex robot [3].However, these advantages are conditioned by the choice of an appropriate coordination strategy that assigns each robot to a specific target.
One of the famous solution to explore an unknown environment using a team of mobile robots is given by Yamauchi [4] who introduced the concept of frontier [5] defined as a limit between unexplored and explored accessible areas in an environment represented by occupancy grid map [6].During an exploration process, each robot moves to the closest frontier, the cooperation between the team members is limited to sharing their positions and local maps.Consequently, the decision about where the robots should move is taken independently.This approach is known to be completely asynchronous (robots are not waiting for other robots), distributed and remain robust to the robot loss.As a consequence, it presents the problem of redundancy in term of frontiers assignment to the robots.
Simmons et al [7], performed an online approach that explicitly coordinates the robots by considering the estimated path cost to reach a frontier while evaluating its utility corresponding to the expected gain in information from it.Their work has been extended to deal with the problem of limited communication [8] and the problem of obstruction where a path of one robot is blocked by another one [9].Recently, Bautin et al [10], proposed a new algorithm so-called MinPos (for Minimum Positions) based on the frontier concept.This approach takes into account the position or rank of the robot towards its target, which is defined as the number of robots closer to the frontier than the considered one.The position/or rank is evaluated based on the path distance needed to the robot for reaching the frontier.This distance is calculated using the wavefront propagation algorithm (WPA) [11].The advantage of the MinPos algorithm is its ability to separate the robots in different directions which allows to effectively cover the environment and so, reduce the overall exploration time.Furthermore, its complexity is lower compared to previously cited algorithms.However, in the very distinct situations where several robots have the same rank toward a same target, the algorithm introduces redundancy in the affectation of robots.
The main contribution of this paper is a new distributed approach that introduces the energy consumed by the individual robots as the main criterion to assign them the exploration targets defined as frontiers between the unknown and the explored areas.Our assignment algorithm takes into account the position of a robot toward a frontier, which is defined as the number of robots that should consume less energy to reach it.The simulation results show the efficiency of our approach to distribute the robots on the environment which significantly reduces the overall exploration time.
The paper is outlined as follow: The next section presents some preliminaries and introduces the problem posed by exploring an unknown environment using several robots.Section 3, describes our coordination strategy based on the energy consumption for a team of mobile robots.The simulation and experimental results are presented in section 4. We conclude this work in section 5.

Preliminaries and problem statement
The environment to explore is a finite space in which several robots are deployed.The fleet of robots is assumed to be homogeneous, each of them is equipped with sensors that allow it to build a local map and localise itself in it using a simultaneous localisation and mapping algorithm [12].In order to simplify our study, we consider that all robots can communicate between them wherever they are, the produced map is represented by an occupancy grid in which the frontiers cells to explore are identified.Thus, we focus in this paper on the coordination of robots by giving each of them the appropriate frontier to reach in order to explore the environment within a minimal time.
The distribution of robots over the frontiers can be considered as an optimisation problem where the number of possible assignments is equal to the number of permutations without repetition.While solving this problem optimally is intractable for large teams of robots, we propose a new distributed approach that deals with the following criteria: • During exploration process, new frontiers can potentially be discovered.Therefore, no robot should be left without assignation, • For deploying the robots in the environment we affect to each robot a frontier to explore, • Regardless the number of robots used to explore the environment they must be distributed in a balanced manner on the frontiers, • The distribution of robots over the frontiers involves the consideration of the energy ability of each robot to reach the frontier assigned to it for the exploration.
• Since no information about what behind the frontiers is available, the impact of a given assignment on the global system performance cannot be determined.Therefore, the assignment process must be performed in each iteration or extension of the map representing the environment.

Robot's energy consumption
A mobile robot's energy consumption can be divided into two parts: mechanical and electrical parts [13], the first one can be related to the energy consumed by the actuators (DC motors), the second part can be referred to the consumption of different electrical components embedded in the robot such as the microcontroller and the sensors.In addition to these components we can also consider the computer embedded in each robot.However, due to the significant variation of its energy consumption across different programs, we assume that it has its own battery and thus independent of the robot.
In general, the energy consumption of a robot r Ec is the sum of the energy consumptions of its N components , 1 where i Ec is the component's energy consumption.Let's consider the components cited previously, the equation (1) becomes: , where m Ec is the DC motors energy consumption, sr Ec is the sensors energy consumption and mr Ec is the microcontroller's energy consumption.
In order to get the model of the energy consumption of a given robot, we need to model the energy consumption of each one of its components.However assuming that all the team robots have the same microcontroller and the same sensors, we can fix their tasks over the time and thus, consider them as constant.Thereby, the energy consumption of a robot is a linear function of the DC motors energy consumption .cst Ec Ec m r (3) The DC motors allow to convert input electrical power to output mechanical power while generating power loss caused by the armature resistance and the internal mechanical friction [14].The power consumption el P of the motor is calculated by dividing the mechanical power mc P by the energy conversion efficiency ρ ρ mc el P P .(4) In this paper we take into account the two stages of the robot motion, the first one is the acceleration step where the robot starts moving until reaching a desired velocity v with a constant acceleration a .In the second step, the robot keeps moving with the same constant velocity v until reaching the frontier.
The traction force, necessary for moving a robot's mass m at a velocity v and an acceleration a on the ground with a viscous friction constant μ is given by ), μ ( 1 g a m F T (5) where g is the gravity constant.
Accordingly, the mechanical power delivered by the motor can be given according to the velocity, acceleration and the robot's mass: .) μ ( 1 v g a m P mc (6) The traction force, necessary to maintain a robot's mass m at a velocity v with a viscous friction constant μ is given by .μ 2 mg F T (7) Thus, the mechanical power delivered by the motor is given by: .μ 2 v mg P mc (8) Referring to the equation 4 we obtain the power consumption of the motor at each step of the robot's motion .ρ  (10) By integrating the power consumption of the motor along the path for reaching the frontier position between a time 0 t when the robot starts to move toward a frontier and the time f t when the robot reaches it or becomes close enough to it, we obtain: . 0 ³ f t t el r dt P Ec (11) As the robot's motion has two steps, the robot's energy consumption becomes , where v t is the time needed for the robot to reach the velocity v .
Thus, the final expression of the robot's energy consumption is: where X Δ is the path length from the frontier to the robot determined by the wavefront propagation algorithm (WPA) [11] previously detailed in [10].
To take into account the ability of a robot to reach a frontier we compare the value of the energy consumption r Ec of each robot of the team with the energy remaining in its battery r Eb , if this value is bigger, we use a modified energy consumption defined as: Thus, considering the case where the energy consumption of a robot is bigger than the energy remaining in its battery, this robot should not be took into consideration at the frontier assignment to the robots using our algorithm.

Frontier assignment strategy
The proposed method is based on an assignment algorithm that uses the notion of position or rank of a robot toward a frontier based on its energy consumption.This position represents a number of robots that can consume less energy to reach a frontier than the considered one.Thus, a robot is affected to the frontier for which it has the lowest rank, this frontier should have the smallest number of robots that can consume less energy to reach it than the evaluated robot.Considering Algorithm 1 allows to assign an appropriate frontier '  f to a specific robot r using the notion of position or rank and based on its energy consumption.

Algorithm 1. Minimum Position Based on Robot's
Energy Consumption Given a robot R r and the energy consumption F Ec which holds for each robot from the set R the energy consumption for reaching each frontier from the set F .The main specification of this algorithm is to separate the robots in different directions toward the frontiers, thus improving their spatial distribution in the environment.In fact, reasoning on the robot's position based on its energy consumption instead of only the distance allows to distribute two close robots toward frontiers where they are in the first position in term of their energy consumption.In addition, the low complexity of this algorithm ) ( ( NM O with N : number of robots and M number of frontiers) [10] allows its use in the case of robots with limited computational capabilities.
During an exploration process each robot of the team performs repeatedly and independently the following steps.First, it shares its position, energy remaining in its battery and its local map built from its perceptions and merged with the broadcasted maps of the other robots.Secondly, the generated partial map of the environment is used to identify the set of frontiers.Thus, the energy consumption matrix is calculated using positions of all robots and their energy autonomy.This matrix holds for each robot of the team, the expected energy consumption to reach the frontiers.The energy consumption matrix is then used to assign the appropriate frontier to the specific robot using the minimum position algorithm based on robot's energy consumption (Algorithm 1).

Simulation experiments and analysis
In this section, we performed several simulations with MATLAB software for evaluating the proposed coordination algorithm.The environments used in our experiments are depicted in two maps showed in Figure 1 which represent offices (Figure .1.a)and randomly generated mazes (Figure .1.b).The robots are assumed with identical size and have the same computational capability embedding identical sensors that allow them to scan their neighbourhood at 270 degrees around them with a parameterised range.During exploration process, the global position of each robot is assumed to be known and shared with its local occupancy grid map and the energy remaining in its batteries to the other team members.The communication between the robots is guaranteed by a simulated wireless network which is supposed to be perfect without limitations.Nevertheless, even if the information gathered from the other robots is taken into account, the decision about the assignment target is completely independent.In order to evaluate the ability of our assignment algorithm to reduce the overall exploration time, we compared it with two existing methods: the nearest frontier introduced by Yamauchi [4] and the cost-utility based approach performed by Burgard et al [8].In each analyse of the three strategies in the both environments, several simulated exploration runs were performed while varying the number of robots from two to ten with the same random starting position.The objective of the experiments was to completely explore the environment.The exploration time is collected when there are no more frontiers to reach and thus, no unknown accessible areas to explore for all robots of the team.Figure 2 compares the exploration times provided in simulation steps according to the environment used in the experiments.
The results represent an average of 50 runs of each assignment algorithm given the number of robots used in the exploration process.The first observation that can be made in both environments is the reduction of the total exploration time (number of simulation steps) due to the increase in the number of robots.Moreover, it can be seen that, the nearest frontier based approach is less efficient compared to the two other methods that reduce approximately by 30% on average the number of simulation steps needed for completely explore the office environment, and by 29% for the maze environment.On the other hand, our energy consumption based algorithm outperforms the cost-utility algorithm proposed by Burgard et al, especially within the office building that can be considered as a structured and large environment where our approach takes advantage by separating the robots in different directions to unknown areas of the environment through the frontiers.Consequently, our approach is 12% more efficient on the average than the cost-utility based approach regardless to the number of robots.This performance decreases in the maze environment that can be regarded as being crowded and, where the energy consumption algorithm is 6% more efficient on average when the number of robots is small (from two to six robots).However, for the large team of robots (more than six robots) the cost-utility algorithm has close but slightly better performance.The explanation for this last result can be found in Figure 3. Based on the proposed algorithm (see Fig. 3a), the robot 2 leaves the target T 4 (where it is in the 3 rd position in term of its energy consumption) unsigned and moves toward the target T 1 where it is in the 2 nd position.In this case, a cost-utility algorithm (see Fig. 3b) performs better by assigning the robot 2 to the target T 4 , thus avoiding the redundancy in the assignment of robots.

Conclusion
In this paper, the problem of coordinating a team of mobile robots in order to explore an unknown environment has been dressed.We introduced a novel algorithm based on the robot's energy consumption which allows to efficiently distribute the robots on the different unknown parts of the environment and thus, to reduce the overall time needed to explore it.The main difference with the existing methods is the ability consideration of each robot to reach a frontier according to the energy remaining in its battery, which is more realistic as a parameter for the robot's coordination.The performed simulation with various indoor environments and the obtained results demonstrate the ability of the proposed algorithm to reduce more efficiently the total exploration time compared to the nearest frontier and the cost-utility based approach.

rfP
the position of a robot r towards a Frontier f such as:

4 :
If there is equality, choose the minimum energy consumption r f Ec among rf P min

Figure 1 .
Figure 1.Environments used for the simulation experiments.