In this paper, some experiments have been performed to check and verify the implementation of the proposed cloud-based HDec-POSMDPs MRS exploration and fire searching algorithm. The Simbad simulator is used to evaluate the performance of the applied algorithm by simulating a number of differential robots with many types of measuring devices like pose share, range finder sensor, thermopile temperature, odometry, etc.[50, 53].
The Gateway cloud driver and ROS are deployed together with the Simbad simulator on a local desktop computer while the computation engine and Rabbitmq message broker are deployed in IoT cloud robotics platform on a virtual machine with 4 GB memory storage and 2 CPU cores at 1.89 GHz. The hardware specification and configurations of 12 cores with six computation nodes are presented in Table 1. In our experiments, the maximum number of parallel instances for each computed bolt is limited to six instances to ensure the process parallelism, and for robot state bolt, it is limited to three instances in order to observe their effect on the performance of the task. The remaining components in the Apache Storm application Topology such as (Rabbitmq, ZooKeeper and Storm master node) have only one instance for each.
Specifications VMs in cloud Local host CPU model Intel Core i5 3437U Intel(R) Core(TM)
CPU Frequency/MHz 1 895.5 MHz 2 893 MHz Cores 2 4 Thread per core 2 2 Memory/MB 4 GB 16 384 OS Windows 10 Pro
Windows 10 Pro 64-bit Hypervisor KVM None
Table 1. System hardware specification
The information collected by each robot is published to ROS via Simbad simulator, and the cloud driver will convert it into custom-records to be processed by the HDec-POSMDPs MRS exploration and fire searching algorithm.
The following metrics are used in the performance evaluation of our algorithm:
1) Delays coming from the computation-nodes (Mean-time) to complete the task for a different number of robots with a different parallelism.
2) Number of steps taken by each robot to accomplish the task.
3) Number of turns taken by a robot team when it faces an obstacle or other robot.
4) Average energy consumption by a robot.
5) Number of hops taken to accomplish the task.
The number of parallelism for the four aforementioned bolts is set to six and the number of parallelism for getting the robot state bolt is set to three.
First, the proposed implementation is used to perform the environment exploration and fire searching for a selected environment which consists of 800 × 600 cells using four robots initialized on a single line of different locations within the environment, and with three fire sources (represents as cubes in Fig. 6 (a) and as a squares in Fig. 6 (b) distributed as shown in Figs. 6 (a) and 6 (b)). Simbad simulator does not have the capability of drawing the explored area and robot paths graphically. So all of these parameters are recorded during the exploration process into log files. And the recorded data is plotted and analyzed using another third party software (Matlab).
Fig. 6 (a) describe a moderate environment used for testing the cloud-based implementation of HDec-POSMDPs MRS exploration and fire searching algorithm, and its equivalent plot in Matlab is plotted in Fig. 6 (b) (Robots 1–4 are represented as a circle, pentagon, hexagon and diamond respectively, and fire sources are represented as squares, obstacles are represented as triangles of different lengths and widths). All the robots are starting to explore the environment and search for the fire sources distributed through the environment in a coordinated manner based on the implementation of the cloud-based HDec-POSMDPs.
The plotted data in Fig. 7 indicates that the burden of the exploration process is divided between all the robots, not all the robots explore the same area. Also, there was a common area between all robots in which the robots need to communicate and publish the measured information.
The MRS exploration and fire searching process is considered as a cooperative process, in which each robot participates in the process by navigating through the environment and performing all the tasks explored in Section 3.2. Because each robot is behaving differently than the other robots based on its sensors reading and its decision. Figs. 8 and 9 shows the path generated by robots 2 after 300 time steps and 1 000 time steps, respectively.
We have tried to perform the same task using a different number of robots range from 2 to 10 robots. The command latency is around 50 ms for robots to finish commands effectively and frequencies are set to 20 Hz. Robots are deployed in a complex environment generated by the Simbad robot simulator and modelled as an occupancy grid of a size 800 m × 600 m with 0.05 resolution and occupied by a set of randomly distributed obstacles. And the experimental runs are done for every 500 s. As shown in Figs. 10 (a) and 10 (b) when the number of parallelism for each computation bolts is set to six and the number of parallelism for robot state bolt is set to three.
The plotted data in Figs. 10 (a) and 10 (b) indicates that as the number of robots starts to increase, the delay of other bolts is decreased, and finally causes the average completion time to decrease task time. Roughly speaking, when the number of robots increases, the collisions between the robots team will happen which in turn leads to increasing the delay of other bolts, but in our case there is a coordination and cooperation between the robot team which prevents the collision with robots themselves or with obstacles which leads to decreasing the average completion of task time.
Figs. 11 (a) and 11 (b) shows the number of steps that are required to complete the task when using different sizes of robot teams and the number of parallelism for each computation bolt varies from two to six and the number of parallelism for robot state bolt is changed one time to one and another to three to observe its effect on the system performance.
The results shown in Figs. 11 (a) and 11 (b) indicate that as the number of robots starts to increase from two to ten robots, the number of steps required is decreased even when the robot state bolt parallelism increases from one to three. Therefore, the obtained results show that as robot team size increases, the required steps to accomplish the task will be decreased.
The number of the parallelism commands is changed from 2 to 4 as shown in Figs. 12 and 13 to observe its effect on the task performance. As shown from Figs. 12 and 13, robots do not collide with each other during the coordination. This means that the delay decreases even when the robot state bolt parallelism increases from one to three. So that, an increase of robot states instances does not improve the task performance in this experimental test; because its computational load is very small if it is compared to the bolts computational load. Finally, we can say that increasing the parallelism of computational bolts decreases the delay for new commands and maintains good performance when the number of robots increases.
Figs. 14 (a) and 14 (b) plots a relation between the numbers of turns taken by each robot in the team to accomplish the task versus the number of robots when using different sizes of robot teams and the number of parallelism for each computation bolt varies from two to six and the number of parallelism for robot state bolt is changed one time to one and another to three. The obtained results show that the number of turns needed to accomplish the task decreases when the size of the robot team increases even when the robot state bolt parallelism increases from one to three.
The average energy consumption is studied for different numbers of mobile robots; because of the acceleration and deceleration caused by stopping and turning the robot, the robot may consume a large amount of energy because the path may have short distance but consumes more energy since the robot states have different directions. Therefore, it is always preferable to have an efficient energy path with a moderate loss of distance.
Figs. 15 (a) and 15 (b) shows the energy consumed by different team sizes of robots where the number of parallelism for each computation bolts varies from two to six and the number of parallelism for robot state bolt is changed from one to three. It shows that the energy consumed decreases when the size of the robot team increases even when the robot state bolt parallelism increases from one to three.
The communication overlapping between robots in an MRS can be minimized by establishing a communication mechanism to coordinate between robots in an MRS. Robots can share their local information to each other at every step of the movement in order to collect their local maps. The link bridges that are established to connect a pair of robots may have multiple jumps or hops, each of them may raise some delay in the communication network between the robot team.
The integration of local maps is done in the cloud framework to build the global map. Therefore, as a small number of communication paths is constructed, which decreases the total number of hop counts. Fig. 16 shows the total number of hops needed when using a team of 2 robots; it remains within a range of (19 to 36), for 4 robots it remains within a range of (27 to 58), for a six robot team it remains within a range of (27 to 69), for an eight robot team it remains within a range of (42 to 82), and for a ten robot team it remains within a range of (50 to 89) which means that a small number of hops to complete the task is required when using IoT cloud robotics framework; so, it improves the performance of the task.
HDec-POSMDPs MRS Exploration and Fire Searching Based on IoT Cloud Robotics
- Received: 2018-10-27
- Accepted: 2019-05-09
- Published Online: 2019-07-15
- Multi-robot systems /
- hybrid decentralized partially observable semi-Markov decision process (HDec-POSMDPs) /
- multi-robot systems (MRS) exploration and fire searching /
- cloud robotics, cloud computing
Abstract: The multi-robot systems (MRS) exploration and fire searching problem is an important application of mobile robots which require massive computation capability that exceeds the ability of traditional MRS′s. This paper propose a cloud-based hybrid decentralized partially observable semi-Markov decision process (HDec-POSMDPs) model. The proposed model is implemented for MRS exploration and fire searching application based on the Internet of things (IoT) cloud robotics framework. In this implementation the heavy and expensive computational tasks are offloaded to the cloud servers. The proposed model achieves a significant improvement in the computation burden of the whole task relative to a traditional MRS. The proposed model is applied to explore and search for fire objects in an unknown environment; using different sets of robots sizes. The preliminary evaluation of this implementation demonstrates that as the parallelism of computational instances increase the delay of new actuation commands which will be decreased, the mean time of task completion is decreased, the number of turns in the path from the start pose cells to the target cells is minimized and the energy consumption for each robot is reduced.
|Citation:||Ayman El Shenawy, Khalil Mohamed and Hany Harb. HDec-POSMDPs MRS Exploration and Fire Searching Based on IoT Cloud Robotics. International Journal of Automation and Computing. doi: 10.1007/s11633-019-1187-6|