Multirobot System to Explore Unknown Environment with Connection Maintenance
This paper addresses the problem of exploring an unknown environment using multiple robots and maintaining the communication among the team of robots. The existing exploration methods assume that the communication is maintained among the team of robots throughout the exploration process. However, this is not possible when the area to be explored is very large and when there is limited communication range. The presented exploration methods provide communication maintenance among the team of robots and maintain coordination. Three different approaches are presented for exploration. They are centralized approach, leader-follower approach, and ad hoc approach. The concept of centralized approach is developed where the base station is connected to all the robots in the team. The concept of leader-follower approach is developed, where among the team of robots, a leader will be selected. The concept of ad hoc approach is developed in which even though the robots are not within the communication range of one another, communication will occur through ad hoc network. The performance evaluation is done for the above three approaches based on the path length, exploration time, and total number of cycles required to explore the complete area. Systematic approach is used to examine the effect of influence of the exploration parameters like the number of robots, communication range of a robot, and sensor range of a robot on the performance metrics. It is investigated that when there is increase in the exploration parameters, then the exploration time is reduced.
Exploration is the process of moving a robot in an unknown environment and to build a map that can be used for navigation purpose. Most of the mobile robots are unable to move efficiently in an unknown environment. The map generated during the exploration process should give complete knowledge about the environment. The exploration process can be done efficiently by selecting a frontier. Frontiers are the boundary between the known and the unknown space. When the robot discovers a frontier, the frontier is assigned to the robot so that it can enter the unexplored space and add new information to its map. By moving to successive frontiers, the unexplored space can be reduced by increasing the explored space. Frontier selection process plays a vital role in frontier-based area exploration process. Proper selection of frontier cells helps the robot to reach the goal with minimum number of steps.
In multirobot exploration system, the mobile robots move in an unknown environment in order to collect information about the unknown environment. The collected sensory information is transferred to other robots through ad hoc wireless networks. Here, the coordination among multiple robots is required for efficient functioning. To explore an unknown area using multiple robots, three different approaches are presented in this chapter. The main objective of the three approaches is to gather information about the environment. To build a global map of an unknown environment by autonomous navigation of mobile robot is exploration. The exploration process is carried out step by step. In each step of the exploration process, the next goal position of the robot is determined, and the robot is moved to that goal. These steps are carried out until all the space in the environment is reached by the robots. The exploration time, path length, and number of cycles are the metrics that are to be considered.
Communication is very important for cooperative behavior . Researchers describe three types of communication, such as implicit communication, state communication, and explicit communication. In implicit communication, direct communication is not allowed. The robots communicate only on their own perception of the environment . This type of communication has some disadvantages. The data available at the robots are not always correct, since the sensors are not reliable. The data communicated to the robot via the environment is not sufficient, even though there are many applications employing communication via environment [3–5] and  the tasks that can be accomplished are limited. The next type of communication is state communication, in which the robot observes the state of other robots, and the cooperation among the robots is established. The state of the robots can be observed in many ways. One approach is one bit is assigned to represent the state of the robot  and this bit is transmitted. The important thing is all the robots should have the prior knowledge about the representation of the states. In another approach, cameras or sensors are used to visually observe the state of the robot [8, 9]. It helps mostly in path planning. The drawback of implicit communication is that limitation in completion of task can be avoided in state communication. The state communication is beneficial for completion of task, and also the time required to complete the task is reduced . The third type of communication is explicit communication. It involves the following steps: status information of the transmitting robot is transmitted. The receiving robot will receive the correct time and data and update its information. The proper data has to be transmitted, and it should be updated by the receiving robot. The transmitting robot should identify the correct receiver. The explicit communication is used in different applications [1, 25]. The taxonomy of multirobot communication using swarm robotics is also described .
In most of the research work, it is assumed that the robots always stay connected to each other, and they can communicate with each other. But in many situations when the robots go far away, they cannot maintain communication and the sharing of information is not possible. In that case, the global map cannot be built. So for exploration using multiple robots, the coordination among robots is very important. The multirobot exploration systems can be centralized or decentralized. In centralized multirobot systems, a base station is present, and its function is to store all information about the environment and control the movement of other robots. The other robots collect information about the environment and send it to the base station. In decentralized multirobot system, each robot has its own control. They collect information from other robots and plan the task accordingly.
The communication range is the distance to which the two robots can communicate. The communication topology is the different ways by which the robots can communicate with each other. For example, communication can be through broadcasting, i.e., a robot can send message to specific address or communication through tree structure. The communication bandwidth is the time taken to communicate. If robot A wants to communicate with robot B and if they are within the communication range of each other, they can communicate through direct communication (Figure 1). When two robots want to communicate with each other and if they are not within communication range, then they can communicate with each other via indirect communication (Figure 2). The robots can form a network and then send messages. Mobile Ad hoc NETwork (MANET) is another research area which is used for communication among robots. The various frontier-based exploration approaches are presented in Table 1. An UAV–enabled dynamic multitarget tracking and data collection framework is presented to deal with a dynamic intelligent matching between the UAVs and the targets , and an in-depth and stimulating view on the new frontiers in the field of mobile, ad hoc, and wireless computing is provided .
The main objective of the work is to coordinate the multiple robots to explore the unknown environment and to maintain the communication among the team as efficiently as possible. The next objective is to reduce the performance metrics, like exploration time, path length, and total number of cycles. Three approaches are presented for multirobot exploration: centralized approach, leader-follower approach, and ad hoc approach. Extensive simulation experiments are conducted, and the results are compared for the three approaches. The effect of relative increase or decrease in the number of robots, sensor range, and communication range on the performance of the exploration is discussed in detail.
2.1. Frontier Selection
Frontier-based area exploration is the most common technique used for mobile robot area exploration. The main objective of frontier-based area exploration is to identify the frontiers and allocate the robots to every frontier. The process of area exploration terminates when all the frontiers are explored. So, if the frontier selection is done accurately, then the exploration process will be simplified.
2.1.1. Exploration without Frontier Selection
Figure 3 shows the operational flow chart for exploration in an unknown environment. In the proposed approach, only one robot is considered for exploration. Initially, the starting position of the robot is given as input. Then, the robot is moved to the next location after checking the presence of obstacle in that particular location. If the obstacle is present on the left side of the robot, then the robot moves to the right side. Otherwise, the robot moves to the left side in the given environment. If the obstacle is present on the right side of the robot, then the robot moves to the left side. Otherwise, the robot moves to the right side in the given environment. If the obstacle is present on the right side and left side of the robot, then the robot chooses a new target position for exploration. In order to avoid looping, the robot wheel is slightly moved to the right or left direction after every 25 iterations. Then, it is checked whether the total area is explored, and the exploration process is stopped if the total area is explored.
2.1.2. Exploration with Frontier Selection
Figure 4 shows the operational flow chart for exploration in an unknown environment using frontier selection approach. Similar to the above approach, only one robot is considered for exploration, and initially, the starting position of the robot is given as input. The cells that are next to the robot in all the eight directions are considered as frontier. One among the eight cells is considered for further robot movement. Then, the robot is moved to the next location after checking the presence of obstacle in that particular location. If the obstacle is present on the left side of the robot, then the robot moves to the right side. Otherwise, the robot moves to the left side in the given environment. If the obstacle is present on the right side of the robot, then the robot moves to the left side. Otherwise, the robot moves to the right side in the given environment. If the obstacle is present on the right side and left side of the robot, then the robot chooses a new target position for exploration. After a new location is selected for robot motion, then the selected cell is checked whether it is already visited or not. Then, it is checked whether the total area is explored, and the exploration process is stopped if the total area is explored.
Here, two different approaches are proposed for exploration, and their performances are compared based on the time required to explore the total simulation area. In the first approach, exploration is performed without considering the frontiers. Here, the robot will check the presence of obstacle and determine the next location. In the second approach, frontier-based exploration is performed. It prevents the robot from moving to the area which was already visited. That is the main difference between the two approaches.
3. Simulation Environment for Exploration Using Frontier Selection Approach
The three different environments are used for simulation with different obstacle densities. One of the configuration types is the simulation environment 1 with no obstacles. The other two configurations are building-like obstacle configurations, where the simulation environment 2 contains 25% obstacles, and the obstacle density in the simulation environment 3 is 75%. Figures 5(a)–5(c) show the simulation environment 1, environment 2, and environment 3, respectively. All simulation environments contain the same simulation areas. Table 2 shows the simulation parameters that are used for the two approaches, namely, without frontier selection and with frontier selection.
3.1. System Models
3.1.1. Environmental Model
The environment to be explored is modeled as a 2D occupancy grid. The occupancy grid-based maps maintain information of the environment in a grid, and every cell of the grid corresponds to a specific space in the environment. There are stationary obstacles of different shapes and sizes. The obstacles are distributed in the area to be explored. During the exploration process, each cell of the grid has any one of the following three values. Unknown: if a specific cell is not visited by a robot, then the color of the cell will be gray. Free space: if a specific cell is explored by a robot, then the color of the cell will be yellow. The cell that is next to the unknown cell is frontier. After the robot visits the cell, the state of the cell is changed from unknown to known. Obstacle: the main purpose of the exploration is to explore the area which is occupied by the obstacles and which are free. The color of the cell will be black if the cell contains obstacle. The different state values of the grid cells during exploration are shown in Figure 6.
3.1.2. Robot Model
The shape of the robot is a square and the size of the robot is a cell. Figure 7 shows the robot model. The function of robot is to explore the unknown environment. So, it moves around the environment, senses the obstacles, prepares the local map, and updates the global map. The robot has to maintain communication with each other and with a base station or it has to maintain communication with the leader in the case of absence of a base station. Robot deployment: the robots are deployed in the given unknown environment. Usually, the robots are deployed on the upper left corner of the environment. Sensor region of robot: the robot contains sensors, and the data sensed by the sensors are used to build the map of the environment. Figure 8 shows the sensor region of the robot. Usually, the sensor region is a circle inside the square-shaped cell. The sensor range is denoted as . The robot is located in the specific location of a cell and senses all the neighboring cells. Figure 9 shows that the robot can move from the center of the cell to any one of the 8 different directions. Communication range of a robot: the robot has to move around the unknown environment without colliding with the obstacles and with the other robots. The communication among all the robots and with the base station has to be maintained. It has to be checked periodically. The communication module present inside the robot helps to directly communicate with the other robots within the communication range, and it is denoted as , or to a remote robot through ad hoc communication. The robots are capable to communicate only when they are within the communication range of the other robot.
3.1.3. Base Station Model
The base station is the place where the human operator is present in the unknown environment and monitors the environment. Figure 10 shows the base station model. The position of the base station is fixed, and it has the device used for communication through which it can send control information to the robots. The robots in turn will send the details of the explored area to the base station.
3.1.4. Operational Model of the System
The operational model of the proposed system is shown in Figure 11. The robot starting location is usually randomly chosen. The sensors sense the state value of the cells. After acquiring information from the sensor, the local map is updated. The local maps received from all the robots are integrated to update the global map. The updated global map is transmitted to all the team members, and then the next location of the robot is determined. Now the robot is moved to the new location from the present location.
In this work, we developed an algorithm that controls the robots to explore the whole area of an unknown communication limited environment with minimum path length and minimum exploration time. The approach should maintain network connectivity among the robots during exploration [3, 5].
The performance of the proposed method is measured in terms of the following parameters: (i)Total exploration time: the total time required to explore the whole environment(ii)Path length: the distance travelled by each robot(iii)Total number of cycles: the total cycles required to explore the whole environment
The assumptions made during the exploration process are as follows: all the robots are able to locate its position and to update its local map. The unknown environment is assumed to be static. The robots are homogenous and equipped with sensors. The robots can sense and communicate even in the presence of obstacles in between them.
3.2. Coordinated Exploration Approach
Assignment of task to the robots is the first step. The robots in the team are assigned any one task: either the robot acts as a base station or an explorer. In the exploration process, simultaneous localization and mapping are important to simultaneously locate the position of the robot and to build the map of the unknown environment by updating it frequently. Different types of sensors are available to find the range measurements like optical- or sonar-based. For 2-dimensional environment, laser sensors produce most accurate range readings. By knowing the position of the robot and the range finder readings, the map is built for the unknown environment. Building a map from noisy and uncertain readings is really a problem in real-time implementation. Various techniques are used to compute the map: they include particle filters, Kalman filters, or scan matching. For the experiments here, occupancy-grid-based map is used. The occupancy grids contain cells, and each cell stores the information about the environment. The information stored in the cell depicts any one of the three states of the cell (known, unknown, and obstacle). Table 3 shows the information that is stored in each cell of the occupancy grid map. The information is changed after each step of the robot navigation.
If the robot position and sensor readings are known, then the occupancy grid map is updated as explained below. Figure 12 shows the determination of the frontier region. The circle represents the robot. Initially, the scan points (provided by sensors in the robot) are converted to Cartesian coordinates, and the black dots in Figure 12(a) are coordinates. Then, all the points are connected to form a polygon (Figure 12(b)). By using flood-fill algorithm, the polygon which is formed by connecting all the scan points is filled (Figure 12(c)) and considered as known space in the grid cell. The points which are close to each other are considered as obstacle (Figure 12(d)), and they are stored as obstacles in the grid cell. Among the known space in the grid cell, a radius which is half the distance of the sensors’ maximum distance range is considered. In Figure 12(e), the grey color area denotes the safe space. The area beyond this safe space is taken as the frontier region. In Figure 12(f), the pink color area denotes the free space. For each frontier region, one can calculate the area of the frontier region and the cost of reaching this region.
The utility value for an exploring robot at a particular position is given by where
- area of the frontier region
- length of the path to reach the center of that frontier region
(which determines exploration behavior, if the area is very large then low value is chosen, and if the area is small then high value is chosen).
The assignment of the frontier region to the robot is computed as follows: consider frontier-robot pair (). Calculate the area of the frontier region. To calculate the length of the path from the center of the frontier region to the robot is expensive. So at first, a straight line is connected from the robot to the center of the front region, without considering the obstacles. Then, that distance of the straight line is calculated. The utility value is calculated based on Equation (1). Similarly, the utility values are computed for all the frontier-robot pairs. Then, they are entered in an array in the priority order; that is, the pair having the highest utility value is entered at the top. Then, the utility value is calculated for the first pair using the original path length. If it remains high, then that robot is assigned to that frontier region, and all the pairs having particular robot and frontier are ignored. If the utility value is not high, then the process is repeated for all the pairs in the array. Similarly, all the robots are assigned to the frontier region using the utility values.
4. Experimental Evaluation
4.1. Exploration Parameters
The different parameters that influence the autonomous mobile robot exploration are shown in Table 4. Number of robots: the process of mobile robot exploration is performed by using multiple robots. Therefore, the process is tested for different numbers of robots, and the number of robot is varied from 1 to 10. Then, how the number of robots influence the exploration is tested experimentally. The position of the robot is chosen randomly. Sensor range: the robot contains sensors, and the data sensed by the sensors are used to build the map of the environment. The sensor range is varied from 50 to 250, and the unit for sensor range is the size of the cell. Communication range: by adapting different technologies for communication among robots, the communication range can be varied. If the communication range is large, then the distance between the robots can be increased. The communication range is varied from 50 to 250, and the unit for communication range is the size of the cell.
4.2. Simulator Implementation
To examine the behavior of the proposed mobile robot exploration method, a Java-based self-developed simulator is built. The environment is taken as an image and given as input. The obstacles are represented as black space, and the free areas are represented as gray space. Three different experiments are performed to evaluate the performance of the exploration algorithm.
4.3. Simulation Environment
There are a wide range of possible environments where the robots may be used to explore, and the exploration algorithms may perform better in a particular category of environment while they perform poor in other category of environments. For the experiment, three categories of environments have been chosen: (1) cluttered environment: cluttered environment contains a number of small and fragmented obstacles (Figure 13). (2) Indoor environment: indoor environment contains rooms and corridors (Figure 14). (3) Elongated environment: elongated environment contains long and narrow spaces (Figure 15). The size of the simulation environment is .
In , authors propose reliability measures using various routing protocol along with the calculative measures. In , the concept of mobile node optimization was addressed using ANT method by the authors. In , the authors address the measures for delay-constrained using control algorithm implemented in both reactive and proactive protocols. In , tracking of mobile sensor in multicast mobile environment was addressed using distributed mobility management. In , authors show the enhancement of flooding concept in mobile ad hoc network using broadcasting messaging service. In , message log was addressed by the author using optimizing techniques with checkpoint mechanism.
The controlling device of the whole system is Arduino. In Bluetooth module, DC motors are interacted to the Arduino. The data received by the Bluetooth module from the Android smartphone is fed as input to the controller. The microcontroller acts accordingly on the DC motors of the robot. The robot can be made to move in all four directions using the Android phone. The direction of the robot is indicated using LED indicators of the robot system. The robot can be developed with ultrasonic sensors. Two sensors are fixed on its right side, and these were responsible for maintaining its distance from the wall and guiding it along the correct path, and one sensor at the front, which was responsible for detecting any obstacles and making left turns. Each sensor controls its distance from the nearest obstacle. The algorithm uses ultrasonic data and controller correction system to navigate autonomously, and the developed logic makes it possible to move to a different location without affecting the function.
Robotic parts for the model consist of robot chassis, the Arduino Uno board, Bluetooth module, electric motors, motor driver module, battery pack, jumper wires, and wheels. The Bluetooth module is connected with the Arduino UNO board for the connection with the user. Through the Bluetooth module, monitoring and controlling the particular motor reaches the board and process accordingly, the output of the Arduino goes to the motor driver IC, and it controls the particular motor. Robot chassis is a load bearing framework for any object. It is also used to assemble all the components that might be used in robot. Arduino Uno board is a microcontroller based on a board on a microchip ATmega328P. ATmega328 has 28 pins in total which has 14 digital total input/output pins, in which 6 pins are providing PWM output and 6 pins are providing analog inputs. The microcontroller operates at 5 V. Arduino Uno needs crystal oscillator for 16 MHz frequency. Bluetooth module (HC-05) acts as a communication bridge between the electronic devices. HC-05 generally connects with small devices like mobile phone for a short range. It is designed for wireless connectivity. HC-05 uses the frequency of 2.45 GHz. It operates at a voltage of 5 V of power supply, and operating current has 30 mA. The range of transferring the data is 10 meters. DC motor and motor driver module (L298N) are operated on direct currents; they also come from small motor to huge ones. To operate the robot, 12 V 1.5A DC motor can be used to operate the robot. In robot L298N, H-bridge motor driver can be implemented, and it is capable to drive two DC motor simultaneously. L298N is a 16 pin IC. A motor driver is connected to Arduino to run the robot. Motor driver’s input pins 1, 2, 3, and 4 are connected to Arduino’s digital pin number 5, 6, 10, and 11, respectively. Battery is the source of electrical energy in stored form. Lithium-ion battery is a rechargeable battery, with a supply of 14 V. Jumper wires are used for connection in robot, and wheels are providing motion to the robot. Android Bluetooth controlled application should be used to give a command to the robot for the movement in it. The application is first designed in C language. The Bluetooth HC-05 is interfaced with Arduino UNO for connectivity with android mobile to Bluetooth HC-05. Arduino UNO is programmed by using the Arduino Software; it is an integrated development program environment (IDE) which makes it easy to write code and upload it to the board. For Arduino IDE, C/C++ languages are used for programming .
If the environment to be explored has a similar structure, then it is believed that the computational results with the proposed approaches will have equivalent results. The complexity is more, when the number of robots is more and when the environment obstacle density is more.
5. Results and Discussion
The two approaches were tested by computer simulation using MATLAB. The simulation area to be explored contains 320 cells. In the case of obstacle configuration type, three different obstacle configurations were considered, and the value of obstacle density was chosen as 0, 0.25, and 0.75. In the case of obstacle density equal to zero, the simulation environment is considered as obstacle-free environment.
5.1. Results of Exploration without Frontier Selection
The exploration is done by considering a single robot. The starting position and initial heading angle of the robot are randomly chosen. In all the obstacle configuration types, the exploration process is performed, and the exploration time required to explore the total area is calculated. Screenshots of the exploration process for the first approach are presented in Figure 16. The explored and the unexplored areas are marked by yellow and white color, respectively. The obstacles are denoted as black. Table 5 shows the measured exploration time and path length for both the approaches. Figures 17 and 18 show the performance analysis of the exploration time and path length for both the approaches. In the case of obstacle-free environment, the exploration time is 980 seconds, and in the simulation environment with 25% obstacle density, it is 1700 seconds, and for 75% obstacle density, the exploration time is 2300 seconds. Similarly, the path length is also calculated for the three configuration types. The path length is the distance travelled by the robot to complete the exploration. In the case of exploration without frontier selection, the path length is 690; the path lengths for environment 2 and environment 3 were 477 and 384, respectively, in the case of obstacle-free environment.
6. Results of Exploration with Frontier Selection
In the second approach also, the exploration is done by considering a single robot. The starting position and initial heading angle of the robot are randomly chosen. In all the obstacle configuration types, the exploration process is performed, and the exploration time required to explore the total area is calculated. Screenshots of the exploration process for the second approach are presented in Figure 19. The explored and the unexplored areas are marked by yellow and white color, respectively. The obstacles are denoted as black. In the case of obstacle-free environment, the exploration time is 486 seconds; in the simulation environment with 25% obstacle density, it is 840 seconds, and for 75% obstacle density, the exploration time is 1250 seconds. Similarly, the path length is also calculated for the three configuration types. In the case of exploration without frontier selection, the path length is 340 in the case obstacle-free environment, 240 for environment 2, and 180 for the environment 3.
6.1. Centralized Approach
In this approach, the robots always maintain a communication to a fixed base station. The base station is fixed and its position is 140,200. The base station does not perform exploration, and so the sensor range is taken as zero. The base station has to maintain communication among all the robots, so the communication range is taken as 200. The approach is tested with four robots (A, B, C, and D). The initial position of the robot A is 160,220, robot B is 160,180, robot C is 105,220, and robot D is 105,180. The exploration process is carried out by considering sensor range as 200 and communication range as 200 for all the four robots. The exploration progress starts with robots A, B, C, and D. The robots start the exploration progress from the initial start position and explore the environment. Figure 20 shows the screenshot of the progress of centralized approach in the environment 2.
6.2. Comparison of Centralized Approach with Existing Method
The proposed-centralized approach is compared with the existing method . Figure 21 shows the performance analysis of the exploration time for the existing method and the proposed-centralized approach; Figure 22 shows the performance analysis of the total number of cycles for the existing method and the proposed-centralized approach, and Figure 23 shows the performance analysis of the path length for the existing method and the proposed-centralized approach. Table 6 shows the comparison of the performance metrics. The analysis shows that the exploration time required for exploring the total area using the centralized approach is less than that of the existing method.
6.3. Leader-Follower Approach
The local map generated by each robot will be sent to both the base station and to the leader robot. In a distributed approach, robots always maintain communication among the teammates either by direct or indirect communication. Full connectivity is maintained among the team members. The roles assigned to the robots may be that of a leader or of a follower. The master robots perform the task of exploration whereas slave robots just pass the information about the environment to the master robots. In this approach, the leader robot always maintains a communication to a fixed base station. The base station need not maintain communication among all the robots. The base station is fixed and its position is 30,180. The base station does not perform exploration, and so the sensor range is taken as zero and the communication range is taken as 200. The approach is tested with three robots (A, B, and C). The initial position of the robot A is 140,200, robot B is 90,330, and robot C is 140,530. The robot A is considered as the leader robot and it is connected with the base station and with the follower robot B. The robot B is connected to robot C. The leader robot A can perform multihop communication with all the robots in the team. When the leader robot enters into the communication range of the base station, then all the information are transmitted to the base station. The exploration process is carried out by considering sensor range as 200 and communication range as 200 for all the three robots. The exploration progress starts with robots A, B, and C. The robots start the exploration progress from the initial start position and explore the environment. Figure 24 shows the screenshot of the progress of leader-follower approach in the environment 2.
6.4. Ad Hoc Approach
In this approach, there is no permanent infrastructure. The robots can connect and communicate whenever they are in the communication range of one another. The base station is fixed and its position is 140,200. The base station does not perform exploration, and so the sensor range is taken as zero. The base station has to maintain communication among all the robots, so the communication range is taken as 200. The approach is tested with four robots (A, B, C, and D). The initial position of the robot A is 160,220, robot B is 160,180, robot C is 105,220, and robot D is 105,180. The exploration process is carried out by considering sensor range as 200 and communication range as 200 for all the four robots. The exploration progress starts with robots A, B, C, and D. The robots start the exploration progress from the initial start position and explore the environment. Figure 25 shows the screenshot of the progress of centralized approach in the environment 2.
6.5. Effect of Parameters on the Exploration Performance
6.5.1. Effect of the Communication Range on the Exploration Performance
This section describes the influence of communication range in the performance of exploration. Different communication ranges of the robots are . The results of all the three approaches show that the exploration performance is good with increase in the communication range. Larger the communication range, lesser the exploration time, but relative to the three approaches, they are not much affected. Tables 7–9 show the comparison of the proposed exploration approaches with different communication ranges in all the three environments.
6.5.2. Effect of the Sensor Range on the Exploration Performance
This section describes the influence of sensor range in the performance of exploration. Different sensor ranges of the robots are . The results of all the three approaches show that the exploration performance is good with increase in sensor range. Larger the sensor range, less the exploration time, but relative to the three approaches, they are not much affected. Tables 10–12 show the comparison of the proposed exploration approaches with different sensor ranges in all the three environments.
6.5.3. Effect of the Number of Robots on the Exploration Performance
This section describes the influence of the number of robots in the performance of exploration. The number of robots is varied from . The results of all the three approaches show that the exploration performance is good with increase in team size. The results show that when the number of robots increases, all the performance parameters decrease. The following observations are viewed during the experiment: usually, single hop communication is performed when the team size is small and the communication range is large. But when the team size is large and the communication range is short, then the communication is mostly multihop. Hence, small number of robots with large communication range and large number of robots with short communication range perform better. The results show that the leader-follower approach performs faster than the other two approaches, namely, centralized approach and ad hoc approach. The path length, that is, the distance travelled by each robot, is reduced in ad hoc approach unlike in the other two approaches, namely, centralized approach and ad hoc approach.
Based on the results obtained from the computer simulation, the following conclusions can be drawn. With the help of simple experiments it was found that the exploration process which is performed by considering frontiers performs well when compared to the approach without frontier selection. The exploration time and path length is reduced to almost 50%. Here, a single robot is considered for exploration of an environment. In the next chapter, the exploration using multiple robots is demonstrated. When the number of robots increases, the exploration time and path length will be reduced further. A coordinated communicative exploration has been introduced to accomplish the process of autonomous multiple robot exploration. The main idea of the strategy is to maintain a full communication among the multiple robots throughout the process of exploration. In this work, three different approaches are presented, and they are compared by considering the influence of communication range and sensor range on the performance parameters. The process of exploration enables the robot to move in an unknown environment. In this work, frontier-based exploration approach is used for exploration process. The space between the explored space and the unexplored space is the frontiers. When the robot reaches the frontier, it can explore the unknown area. The performance analysis for the exploration method using the frontier selection approach is done, and the results are compared with the exploration method without frontier selection approach. It was verified that the frontier selection approach produce better results. This work also investigates multirobot exploration in an unknown environment. The number of robot engaged for exploration can be a single robot or multiple robots. When multiple robots are used for exploration, then the process is faster than using a single robot. The future work to improve the proposed methods may include the analysis of the effect of moving target on the robot and hence provide mobile robot navigation in dynamic environment. Quasistatic environment is considered in this study, and in the future it may be extended to a dynamic environment where obstacles and targets are moving. The obstacle avoidance algorithm can be extended to multirobot in the future. The presented work considers only robot as a point. By integrating the proposed algorithm with other methods, the obstacle avoidance algorithm can be extended to the whole robot. In the future, 3D and concave objects can also be taken into account instead of 2D and convex obstacles. There are many ways by which coordinated multirobot exploration can be extended for future enhancement. In the proposed method, the structure of the hierarchy is fixed, and in the future, dynamic hierarchy structure can be introduced. In the presented work, the robots considered for exploration are homogeneous in nature, and in the future, it can be considered as heterogeneous, that is, with different types of robots with different capabilities. Finally, this work can be extended to 3D environment.
We recognize that it is not always possible to share research data publicly, for instance, when individual privacy could be compromised, and in such instances data availability should still be available in the manuscript.
Conflicts of Interest
The authors declare that they have no conflict of interest.
All the authors mentioned in the manuscript have agreed for authorship, read and approved the manuscript, and given consent for submission and subsequent publication of the manuscript.
Y. U. Cao, A. S. Fukunaga, A. B. Kahng, and F. Meng, “Cooperative mobile robotics: antecedents and directions,” in In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 226–234, Pittsburgh, PA, USA, 1995.View at: Google Scholar
L. Steels, “Cooperation between distributed agents through self-organisation,” in Proceedings of the First European Workshop on Modeling Autonomous Agents in a Multi-Agent World, pp. 175–196, Cambridge, England, 1990.View at: Google Scholar
R. A. Brooks, P. Maes, M. J. Matari’c, and G. More, “Lunar base construction robots,” in In Proceedings of the IEEE International Workshop on Intelligent Robots and Systems, pp. 389–392, Ibaraki, Japan, 1990.View at: Google Scholar
Y. Kuniyoshi, N. Kita, S. Rougeaux, S. Sakane, M. Ishii, and M. Kakikura, “Cooperation by observation: the framework and basic task patterns,” in In Proceedings of the IEEE International Conference on Robotics and Automation,, vol. 1, pp. 767–774, San Diego, CA, USA, 1994.View at: Google Scholar
Y. Kuniyoshi, J. Rickki, M. Ishii et al., “Vision-based behaviors for multi-robot cooperation,” in In Proceedings of the IEEE/RSJ/GI International Conference on Intelligent Robots and Systems, pp. 925–932, Munich, Germany, 1994.View at: Google Scholar
R. C. Arkin, T. Balch, and E. Nitz, “Communication of behavorial state in multi-agent retrieval tasks,” in In Proceedings of the IEEE International Conference on Robotics and Automation, vol. 1, pp. 588–594, Atlanta, GA, USA, 1993.View at: Google Scholar
G. Dudek, M. Jenkin, E. Milios, and D. Wilkes, “A taxonomy for swarm robots,” in In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 441–447, Yokohama, Japan, 1993.View at: Google Scholar
B. Yamauchi, “Frontier-based exploration using multiple robots,” in In Proceedings of the Second International Conference on Autonomous Agents, pp. 47–53, ACM Press, Minneapolis, MN, USA, 1998.View at: Google Scholar
R. Simmons, D. Apfelbaum, W. Burgard, D. Fox, S. Thrun, and H. Younes, “Coordination for multi-robot exploration and mapping,” in In Proceedings of the National Conference on Artifcial Intelligence AAAI, pp. 852–858, Austin, Texas, 2000.View at: Google Scholar
J. Vazquez and C. Malcolm, “Distributed multi-robot exploration maintaining a mobile network,” in Proceedings of the 2nd International IEEE Conference on Intelligent Systems,, pp. 113–118, Varna, Bulgaria, 2004.View at: Google Scholar
Y. Pei, M. W. Mutka, and N. Xi, “Coordinated multi-robot real-time exploration with connectivity and bandwidth awareness,” in In Proceedings of IEEE International Conference on Robotics and Automation, pp. 5460–5465, Anchorage, AK, USA, 2010.View at: Google Scholar
K. Støy, “Using situated communication in distributed autonomous mobile robots,” in Proceedings of the 7th Scandinavian Conference on Artificial Intelligence, pp. 44–52, Odense, Denmark, 2001.View at: Google Scholar