Next Article in Journal
A Review of Advanced Algebraic Approaches Enabling Network Tomography for Future Network Infrastructures
Next Article in Special Issue
EAOA: Energy-Aware Grid-Based 3D-Obstacle Avoidance in Coverage Path Planning for UAVs
Previous Article in Journal
Acknowledgement to Reviewers of Future Internet in 2019
Previous Article in Special Issue
WLAN Aware Cognitive Medium Access Control Protocol for IoT Applications
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

MCCM: An Approach for Connectivity and Coverage Maximization

1
Department of Computer Science, International University of Beirut, Beirut 146404, Lebanon
2
Department of Computer Science, Lebanese University, Rafic Hariri Educational Campus, Beirut 146404, Lebanon
3
Department of Computer Science, University of Quebec at Chicoutimi, Chicoutimi, QC G7H 2B1, Canada
*
Author to whom correspondence should be addressed.
Future Internet 2020, 12(2), 19; https://doi.org/10.3390/fi12020019
Submission received: 27 December 2019 / Revised: 16 January 2020 / Accepted: 18 January 2020 / Published: 21 January 2020
(This article belongs to the Special Issue The Internet of Things for Smart Environments)

Abstract

:
The internet of Things (IoT) has attracted significant attention in many applications in both academic and industrial areas. In IoT, each object can have the capabilities of sensing, identifying, networking and processing to communicate with ubiquitous objects and services. Often this paradigm (IoT) using Wireless Sensor Networks must cover large area of interest (AoI) with huge number of devices. As these devices might be battery powered and randomly deployed, their long-term availability and connectivity for area coverage is very important, in particular in harsh environments. Moreover, a poor distribution of devices may lead to coverage holes and degradation to the quality of service. In this paper, we propose an approach for self-organization and coverage maximization. We present a distributed algorithm for “Maintaining Connectivity and Coverage Maximization” called M C C M . The algorithm operates on different movable devices in homogeneous and heterogeneous distribution. It does not require high computational complexity. The main goal is to keep the movement of devices as minimal as possible to save energy. Another goal is to reduce the overlapping areas covered by different devices to increase the coverage while maintaining connectivity. Simulation results show that the proposed algorithm can achieve higher coverage and lower nodes’ movement over existing algorithms in the state of the art.

1. Introduction

Growth in technology and computing power is continuously progressing and transforming the way societies connect to each other and to the physical world. The tendency to bring smartness to living and environments to make them more adaptive, autonomous and personalized to human needs, prepares the ground to smart worlds [1]. The Internet of Things (loT) is defined by the International Telecommunication Union (ITU) [2] and the European Research Cluster on the Internet of Things (IERC) [3] as a dynamic global network infrastructure with self-configuring capabilities based on standard and inter-operable communication protocols. Mostly a smart network of linked objects and machines, which communicate information via wireless technology and the cloud [4]. Wireless Sensor Network (WSN) plays an important role in conjunction with IoT. It consists of many distributed sensors for environmental monitoring tasks. It brings more control, precisions, early alerts, monitoring and tracking the environment. This is reflected in many projects such as Array of Things (AoT) [5], NEOM City [6,7], Google’s Loon [8], etc. Google’s Loon project aims to create an aerial wireless network formed by nodes such as satellites, balloons, drones, or fixed-wing aircraft. These flying nodes provide network access and rescue missions over areas in disaster scenarios.
Although IoT has great benefits, it has some major challenges such as: Connectivity and coverage, energy consumption, reliability and privacy. The initial deployment of devices in an area of interest might not always meet the mission needs (rescue or military). The basic requirement after deployment is to have sufficient coverage and connectivity [9]. In many cases, the mobility feature of devices is used to maximize the coverage [10]. Wireless sensor devices can sense, process, and in some applications move and organize themselves for coverage missions. These tasks drain devices’ energy and become very challenging especially for power-constrained devices [11]. For this purpose, energy saving during coverage maximization should be considered, and it is necessary to cover all targets areas with a minimum number of devices.
In this paper, we are interested in maintaining connectivity and coverage in wireless distributed networks composed of heterogeneous mobile devices. Our work consists of three parts (1) a distributed algorithm for Coverage Maximization and Maintaining Connectivity (MCCM) between group of neighboring devices, (2) gaps bridging between disjoint groups, and (3) comparison and validation of the proposed distributed algorithm. The algorithm ensures that each device is connected to at least two other devices in the network. This setup increases the network resistance against failure as well as reliability.
The remaining part of the paper is organized as follows: In Section 2, we investigate related works on connectivity and coverage maximization. The motivation and contribution of the work are presented in Section 3 and Section 4 respectively. The performance of the algorithm as well as a comparative study with related works are discussed in Section 5. Section 6 concludes the paper.

2. Related Works

Maintaining connectivity between devices and maximizing coverage is big challenge to reduce the cost of deployment, and to ensure the reliability of data. They are key issues in WSNs as they measure how effectively a network field is monitored by its sensor devices. Coverage is to guarantee that each area is monitored by at least one node, and connectivity is to guarantee that any device can communicate with each other [12]. Protocols related to area coverage are classified based on the sensor types (mobile, static) and the coverage requirement (1-coverage or k-coverage) [13]. Different algorithms [14,15,16,17,18,19] were proposed in the literature and have good impact on the coverage optimization. Protocols can be classified into either distributed or centralized. The type of sensors in the network can be homogeneous (The sensors have the same sensing range and technical properties) or heterogeneous. Studies such as C T C k [16] and D C T C k [16] take into account energy efficiency for coverage and connectivity optimization. Their algorithms work for centralized and distributed coverage in heterogeneous networks and tackle the k-coverage problem. In D C H G A [20] (Dynamic Clustering of Heterogeneous WSNs using Genetic Algorithm), authors present a genetic algorithm. The proposed work can operate on both homogeneous and heterogeneous environments. This algorithm requires a Central Station (CS) with advanced resources to control the devices distributed in the network. Another work ( H M R C ) [21] uses the harmony search algorithm to improve connectivity and coverage within an area of interest. The algorithm in [21] only works on networks where the devices are homogeneous and controlled by a Sink Node (SN) or Central Station (CS).
The authors in [22], presented an asynchronous algorithm ( A A E E C C ) that is energy efficient and provides integrated coverage and connectivity. It is fully distributed and scalable. They also presented a fault-tolerance connectivity maintenance algorithm ( F T C M ) to increase the resistance against failure that might occur during the nodes scheduling. In [23], authors presented an algorithm based on Voronoi partition. The algorithm eliminates the isolated nodes and reduces the redundant coverage. Nodes move to their final best position to maintain network connectivity. A deployment technique ( A B S D C ) is suggested in [24] to enhance coverage, connectivity, and reliability. The idea is to use the angle between sensor nodes and their neighbors. The work showed higher coverage percentages and good connectivity compared to the Glowworm Swarm Optimization (GSO) approach [25]. This algorithm works on homogeneous environments only. Another algorithm (OPDCC) [26] addresses the k coverage and m connected problem in WSN. It estimates the minimum number of nodes (and their locations) required for the connectivity and coverage. The proposed algorithm requires a central station (CS) to do all the calculations.
Another novel algorithm for Coverage Maximization of Heterogeneous Wireless Network ( C M H N ) is proposed in [27]. The algorithm is centralized. Devices are heterogeneous and the sensing range of each device has a circular shape. The circumference of the circle is represented as an interval of an angle (0, 2 Π ). For any two connected devices D i and D j with sensing ranges r i and r j respectively, the distance d i j between them is less than the sum of their ranges. A device moves (after random deployment) to a position that ensures a maximum coverage and connects to a closest device to maintain connectivity. The main goal is to keep the movement of devices as minimal as possible to save energy. Another goal is to reduce the overlapping areas covered by different devices and keep it to a small margin to maximize the coverage while maintaining connectivity. C M H N ensures that every device is connected to at least k = 2 devices. In this algorithm, the notion of m ratio is introduced. It adds flexibility in controlling the overall displacement in the network.
m ( i , j ) = m i j = m , r i < r j m + 1 2 , r i = r j 1 , r i > r j
where m [ 0 , 1 ] is a user-defined value. To determine the location to which a device will move, authors introduced two rules (called the “empty-arc” rules). A device D i has 2 π empty arc when there is no other device D j such that d i j < r i + r j . In other words, it has no intersection area with another device on its circumference. An empty arc has initially the value 2 π r i . The value of the circumference starts to decrease when other devices start to intersect with the device D i until it reaches zero. It is worthy to mention that the device D i starts to fill this empty arc during the maximization process and any overlapping before the maximization process is ignored by the device D i . If a device D i has empty arc the minimum required overlapping between D i and another device D j , is defined by τ i j = m i j · r i + m j i · r j . D i moves to a position that guarantees τ i j . This is called “circle-circle” connection. Another rule is "circle-two circle" connection. Given two intersecting circles, a new coming device D i , will be able to connect to them if it has an empty arc. D i moves along the line through the two crossing points of the crossed circles. It chooses the closest point of intersection and connects to the closest circle that has free arc on that point [27]. Simulation results showed a significant improvement in the coverage gain.

3. Motivation

The examined algorithms in the related works require higher computational resources like D C H G A [20], H M R C [21], V C A C W S N [23], O P D C C [26], D C T C k [16], and A A E E C C [22]. We will present this part in Section 5. Applying the aforementioned algorithms in distributed environments to run locally on each device, drains the battery energy quickly. Consequently, they might not behave well in networks where devices are energy-constrained. Although A B S D C [24] presents an efficient algorithm and requires low energy consumption. However, authors adopted the triangular circular packing idea. This approach forces a fixed angle between the connected devices as well as a fixed distance between them. Every device should be r 3 apart from its neighbor devices where r is the device’s range. This restricted the algorithm to work on homogeneous environments only. Also, the overlapping between devices is constant and is the same between all devices which is not suitable for heterogeneous environments.
C M H N [27] is designed to maintain connectivity and maximize the coverage. It minimizes energy consumption by reducing the number of nodes’ displacement in the network. However, it is a centralized algorithm. In some scenarios, the devices need to take decisions locally, without waiting to be told what to do by a central station, such as in harsh environments, wide forests, monitoring huge amounts of cattle. In such situations, the adoption of distributed algorithm is more appropriate. By investigating the behavior of this algorithm, we noticed the formation of gaps/holes in some scattered distributions. It occurs when a device D i moves to its final position, it tries to find the closest device D j that can intersect with (i.e., a device that has enough free arc on its circular range for connection).
In this paper, our work is based on C M H N . We propose a distributed version called M C C M , for maintaining connectivity and maximizing coverage in disaster and harsh scenarios. The basic idea is that devices are deployed randomly and need to re-organize themselves. Every device takes the decision to move to a nearest location to maximize its coverage while maintaining connectivity with others. We aim to have fewer movements and energy drain. Another part we tackle in this work is that after the self-organizing process is done, disjoints groups of connected devices might appear in the network. We call them "islands" of devices. We bridge the islands to ensure more connectivity using alpha-shape technique to find the islands’ boundaries and shortest path between adjacent boundary sets.

4. Distributed Maintaining Connectivity and Coverage Maximization (MCCM)

In this section, we present the two main parts of our work. The first is M C C M ; a distributed algorithm which runs independently on each device D i for coverage maximization. Then, the bridging part that connects the isolated islands using alpha-shape method. The approach consists of three steps as shown in Figure 1: Neighborhood discovery, coverage maximization and bridging process.

4.1. Neighborhood Discovery Process

This process builds the neighborhood list for each device D i . Every device will know about the other devices connected directly or indirectly to it. We denote Ω the set of n heterogeneous devices in the network:
Ω = { D i | i [ 1 , n ] }
We denote D i the i th device in the network with center x i , y i and range r i . The distance d i s t D i , D j between two devices D i and D j is the Euclidean distance denoted d i j . We say two devices D i and D j are “neighbors”, if their sensing ranges intersect.
D i is directly connected to D j when d i j < r i + r j and both devices have minimal overlapping τ i j according to [27]. In this case, we denote D i D j .
We say D i is indirectly connected to D j when there is another device D f , such that D i D f and D j is directly/indirectly connected to D f . We denote this case D i D j .
An island (or group) of connected devices to D i is denoted N i . It is the set of k devices that includes D i and its neighbors as follows:
N i = { D j Ω | D j D i D j D i }
where | N i | = k and k n .
Figure 2 shows how the discovery process occurs on a device D i N i .
The main steps are as follows:
  • Any device D i waits for a certain amount of time t to emit a discovery signal. It is allowed to make c trials.
  • Upon receiving a signal from a device D j , both devices start the “Add to neighborhood list” process, only if they have empty arcs on their circumferences. If so D j is added to N i . The devices in N i update their list about the newly coming device D j .
  • When the emit counter exceeds c times, the device goes to sleep for a certain period of time n. Then, it tries again until the sleeping count exceeds a value s.
  • The discovery process ends when the device does not have any more empty arcs or the sleeping counter reaches s.

4.2. Coverage Maximization

This process starts once the discovery process finishes. It occurs in each island N i , if it has more than one device (i.e., | N i |>1). Figure 3 shows how the maximization process works. The main idea is to find for each device D i its location, to maximize the coverage.
The steps are as follows:
  • A device D i N i calculates the mean coordinates M ( x m , y m ) . It is the mean location of the devices in N i , where x m = 1 k l = 1 k ( x l ) , and y m = 1 k l = 1 k ( y l ) , such that D l ( x l , y l ) N i .
  • A device D i moves to the location M ( x m , y m ) if it is the closest device to it, thus:
    d i s t ( D i , M ) = m i n { d i s t ( D , M ) , D N i }
    The device then updates its status to ready for the monitoring mission.
  • Otherwise, D i finds its next location by guessing the behavior of its adjacent devices located closer to M . D i orders its neighbors by their initial position with respect to the mean location M . Then it chooses the neighbors that are closer to M . It estimates their positions and moves according to the estimated position. Assume the sequence D i + 1 , D i , D i 1 and D i 2 is ordered from the farthest to the closest devices to M . Device D i + 1 is the farthest one. D i calculates its final position in two ways: (1) either it relies on D i 1 estimated position, if the circle-to-circle method is to be applied, (2) or it relies on D i 1 and D i 2 positions if the circle-to-two circles method is to be used. D i + 1 does the same. It relies on D i and/or D i 1 estimated positions, and so. For instance, let ζ be the set of devices located between D i and M ( x m , y m ) .
    ζ = { D N i | m i n ( y i , y m ) y D m a x ( y i , y m ) m i n ( x i , x m ) x D m a x ( x i , x m ) }
    D i evaluates the possible location of each device D ζ by applying the empty-arc rules. Then it moves towards the closest device D k and connects to it, where D k = f ( D i , ζ ) :
    f ( D i , ζ ) = { D k ζ | ( D k M D k M ) d i s t ( D i , D k ) = m i n { d i s t ( D i , D ) } }

4.3. Bridging

In the earlier section, we introduced the maximization process which runs in a distributed manner. Every device knows about the devices that belong to the same neighborhood only. This might form a network with different disconnected neighborhoods (islands) or isolated devices. We mean by isolated device, the one that does not belong to any neighborhood, and we refer to it as an island with only one device. One of the real examples for such problems is losing the connectivity between the different troops in the battle fields. To provide connectivity between the different isolated islands. We need to build connections (bridges) between these islands. These bridges do not need to cover the whole area. It is enough to have them between these islands and the central station to maintain the flow of data. In this section, we provide two different type of bridging: A distributed and centralized bridging.

4.3.1. Centralized Bridging

At the end of the maximization process, the network might be composed of different islands in which the coverage is maximized. Thus, we have Ω = i = 1 t N i where t is the number of islands in the network. For any two islands N i Ω and N j Ω , we have N i N j = ϕ where i j (Figure 4).
To bridge the islands, we use flying nodes or drones. This is useful in disaster locations that humans cannot reach. The goal is to find the closest points between two islands and bridge with the lowest number of drones. We use alpha shape to determine the boundaries of each island. The alpha-shape algorithm attempts to define the shape of a finite set of points in the plane. Formally, the boundary is a graph G i ( V i , E i ) (Figure 4), where V i is the list of devices on the boundary of N i and E i is the set of edges ( | E i | = e ).
We denote α shape ( N i ) the list of edges of an island N i (Figure 4).
E i = α shape ( N i ) = { ( D u , D v ) | D u N i , D v N i }
where ( D u , D v ) is an edge between two vertices D u and D v . The set of devices on the boundaries are denoted V i as follows:
V i = { D q E i | q [ 1 , b ] b | N i | }
We denote N i v the list of sub chains of E i .
An island N i may have one or more neighboring islands N j , called adjacent islands. Assume N i has β adjacent islands. We denote A ( V i ) the set of devices on the edges of the neighboring islands. In other words, it is a set of β adjacent boundary sets V j to V i .
A ( V i ) = j = 1 β { V j } = { D q V j | V j V i j ( t 1 ) }
The bridging process is initiated by the central station (CS). Drones are sent to discover the isolated islands using discovery algorithms such as the Fast Neighbor Discovery Algorithm (FNDA) [28]. Drones calculate the boundary set for each neighborhood N i using alpha-shape algorithm.
After determining the boundaries E i of each island N i , this bridging process starts finding the minimal distance between any two adjacent boundary sets. Computing the minimum distance between two islands N i and N j (Figure 5) is a well-studied problem in computational geometry [29].
Let d ( G i , G j ) be this distance:
d ( G i , G j ) = m i n { d ( N i v , N j v ) }
where N i v , N j v are linearly separable sub chains of N i and N j respectively. The problem of determining d ( G i , G j ) is decomposed into a collection of subproblems d ( N i v , N j v ) [29].
When both G i and G j are convex, their separation can be determined in O(log n) time [30]. If exactly one of G i or G j is convex, then their separation can be computed in O(n) time [31]. When neither polygon is convex their separation can be found in O(n log(n)) time by traversing the contour between the polygons in their generalized Voronoi diagram [32]. According to [29], determining a closest pair among all pairs ( D i , D j ) where D i A ( V j ) and D j A ( V i ) , runs in O(log(n)) time.
Let Γ = { γ i ( x i , y i , z i , r i ) } i = 1 g be a set of g drones ( x i , y i , z i ) needed for bridging. The range of each drone is r Γ . The central station (CS) calculates the required number of drones as well as the position of each drone on the shortest path between N i and its adjacent island N j . The number of drones is equal to d ( G i , G j ) / r Γ .

4.3.2. Distributed Bridging

A large enough number of drones are deployed in the area of interest. The steps are as follows:
  • Drones start scanning the area of interest using coverage path planning algorithms to find any neighborhood or isolated devices.
  • If a drone finds a neighborhood, the drone stack to the closest point between the neighborhood and the central station. The drone becomes part of this island and all the devices in the neighborhood knows about it. The chain of connected drones continues growing as straight line between the neighborhood and the central station. Drones either connect to a device at the edge of the island or to another drone. This connection is established using the τ formula.
  • The process of discovery continues till all the links are established between the central station and the neighborhoods or isolated devices if any.
Both ways can be used to form a connected network between all the devices in the area of interest. However, the distributed approach requires greater deployed number of drones. We opt to use the centralized approach.

5. Validation, Simulation and Comparison with Existing Algorithms

We consider terrain where nodes can move without blockage in their ways and have enough energy to reach the final destination. Our goal is to understand how the coverage maximization algorithm behaves. We run different simulations to measure the performance of MCCM algorithm. The number of devices in each scenario varied between 25 and 150 devices ( N = { 25 , 50 , 75 , 100 , 125 , 150 } ). They were distributed randomly in the area of interest. We tested the algorithm using homogeneous and heterogeneous distributions. We mean by homogeneous, the presence of sensors with the same characteristics and technical properties. In heterogeneous distributions, sensors are different in sensing ranges and characteristics. We choose the sensing range of the devices in the homogeneous distributions to be 5 m. It varies between 3 m and 8 m for heterogeneous distributions. For a better study, we followed the statistical approach by taking a sample of 10 runs for each deployment. We chose the area of interest to be a rectangular area of 250 m × 250 m. The simulation parameters are presented in Table 1. The device characteristics are picked similarly to [33].
Figure 6 shows the simulation results for 150 devices in both heterogeneous and homogeneous environments. The blue colored figures represent the deployment before applying our algorithm, the red colored figures represent the result after applying our algorithm and the green circles represent drones.
Figure 6a shows a random deployment of 150 devices in a homogeneous environment and Figure 6b shows the result after applying our algorithm. The coverage gain is 90%. The average device displacement is 18.21 m. Each device D i has at least three devices directly connected to it. Figure 6c shows a random deployment of 150 devices in a heterogeneous environment, and Figure 6d shows the result after applying our algorithm. The coverage gain reached 87%. The average device displacement is 22.13 m. Each device D i has at least four devices directly connected to it. In the next section we present a comparative study with other related works.

5.1. Comparative Study

In this section, we present the key features of M C C M and existing algorithms in the state of the art. We discuss the coverage gain, the displacement of nodes as well as the energy gain by the algorithms. Table 2 lists the following characteristics: The algorithm’s architecture (Centralized or Distributed), the type of distribution (Homogeneous or Heterogeneous), the resource usage (low, high, medium) and the time complexity.
The time complexity of M C C M is O(nlog(n)) similarly to C M H N and A B S D C , where n is the number of devices. Other algorithms (such as O P O D C C and H M R C ) require high computational resources. They are either centralized or suitable for homogeneous environments only. For instance, D C H G A uses genetic code approach to calculate the final positions of the devices within the network. It requires high resources since the required memory allocation is n × p × g where n is the number of devices, p is the population size, and g is the number of generations.
In the next section, we rely on the following indicators to measure the performance of our algorithm: (1) the average number of movements per device m o v ( Ω ) related to distance, (2) the coverage gain A g a i n ( Ω ) , which is the probability that each point in the area is covered and (3) the energy depleted by the moving devices denoted E.

5.1.1. Coverage Gain and Displacement

Let D i f be the final position of a device D i after applying the algorithm. To measure the average number of movements denoted m o v ( Ω ) , in the network Ω , we use Equation (2).
m o v ( Ω ) = 1 n i = 1 n d i s t ( D i , D i f )
As for the coverage gain, we adopt the evaluation method of Abo-Zahhad et al. in [10]. We treat the Area of Interest (AoI) as a matrix C of dimension w × h . C ( i , j ) presents the cell at position ( i , j ) in the matrix C where i w is a row in C, and j h is a column C. To exemplify, Figure 7 shows the distribution of two devices in the matrix D A (the red circle) and D B (the black circle). The point D is uncovered, which means there is no device covering this point. The point C is covered by two devices D A and D B . The point E is only covered by the device D B .
For any point ( x , y ) in the matrix C, the probability P ( x , y , D i ) that the point is covered by a device D i is given by Equation (3), where ( x i , y i ) are the coordinates of the device and r i is its range.
P ( x , y , D i ) = 1 , ( x x i ) 2 + ( y y i ) 2 < r i 0 , o t h e r w i s e
For the whole network Ω = { D i } i = 1 n , we will use the above equation to find the probability that the point is covered. It is denoted P ( x , y , Ω ) presented in Equation (4).
P ( x , y , Ω ) = 1 i = 1 n ( 1 P ( x , y , D i ) )
The coverage of the area of interest ( w × h ) in Equation (5), is the summation of all the aforementioned probabilities:
A c o v ( Ω ) = x = 1 w y = 1 h P ( x , y , Ω )
We care about the coverage gained in the network by our algorithm. Therefore, we calculate the difference between the coverage obtained after applying our algorithm (denoted A c o v f ( Ω ) ) and the coverage before applying the algorithm ( A c o v ( Ω ) ) as shown in Equation (6).
A g a i n ( Ω ) = A c o v f ( Ω ) A c o v ( Ω ) A c o v ( Ω )
We run 60 scenarios of random deployments with different number of devices. Figure 8a (resp. Figure 8b) clearly depicts that M C C M and C M H N are showing least nodes’ displacement in heterogeneous (resp. homogeneous) environments. Figure 8c (resp. Figure 8d) represents the coverage gain in the heterogeneous (resp. homogeneous) environments. The centralized algorithms showed higher values in terms of coverage gain over distributed algorithms, as we expected. The reason is that by having the calculation done by a Central Station (CS), all the devices will move to their final optimized position. The centralized algorithm C M H N showed better results over ABSDC. This is due to the presence of the empty-arc rules that reduce the overlapping between devices and change it according to their ranges. In ABSDC, there are fixed angle and fixed distance between devices which makes the size of the overlapped area higher than C M H N . Both algorithms require low computational resources and they use simple mathematical formulas. A B S D C achieved 143 % coverage gain while algorithm C M H N achieved 185 % coverage gain. This means 42 % more coverage gain over A B S D C .
M C C M showed better results compared to the distributed algorithms D C T C k and D C H G A . D C T C k achieved 75 % coverage gain while M C C M achieved 87 % coverage gain. This means that our algorithm increases the coverage gain by 12 % in heterogeneous environment. As for the homogeneous environment scenarios, our algorithm achieves 9 % gain over D C T C k . The latter reached a gain of 81 % when M C C M attained 90 % . As a result, our algorithm performed better coverage gain in homogeneous environment. Similar results are obtained in the heterogeneous environment.
As for the displacement, Figure 8b shows the displacement made by each algorithm to maximize the network coverage. C M H N has better results than the other centralized algorithms. M C C M achieves lower average node’s displacement and better coverage over the other distributed algorithms ( D C T C k and D C H G A ).
Table 3 summarizes the average overall performance of M C C M compared to the distributed algorithms D C T C k and D C H G A in homogeneous and heterogeneous environments. It increases the coverage gain up to 19% and reduces the nodes displacement by 35.55% compared to the algorithms in the table. In the next section, the results obtained in Figure 8 are interpreted from the energy saving perspective.

5.1.2. Energy Consumption

As the energy consumption is proportional to the displacement, we adopt the formula in Equation (7). It measures the energy depleted by a moving device, where H e is the energy required to move one meter ( J / m ) and d is the displacement ( m ) .
E = H e d
C M H N and A B S D C are both centralized algorithms. However, A B S D C operates only in homogeneous environments. For fair comparison we run both in scenarios composed of 150 homogeneous devices. The results were as follows: A B S D C required an average displacement of 47.3 m to maximize the coverage. Consequently, the energy consumed by the devices in A B S D C was: E A B S D C = 2.8 × 47.3 = 132.44 J. C M H N required 39.06 m displacement to maximize the coverage. The energy consumed is E C M H N = 2.8 × 39.06 = 109.368 J. Hence, the centralized version of MCCM algorithm reduced the displacement and improved the coverage by saving 17.4% of energy in the network:
E ( C M H N ) E ( A B S D C ) E ( A B S D C ) = 109.368 132.44 132.44 = 0.174
M C C M and D C T C k are distributed algorithms and can operate on different network environments (homogeneous and heterogeneous). D C T C k requires higher computational resources than M C C M (as shown in Table 2). The comparison of the two algorithms in a homogeneous environment of 150 devices depicted the following:
D C T C k required an average of 19.87 m displacement to maximize the coverage. The consumed energy is E D C T C k = 2.8 × 19.87 = 55.636 J. Whereas the M C C M required 18.21 m displacement to maximize the coverage, the energy is E M C C M = 2.8 × 18.21 = 50.988 J. We can notice that M C C M algorithm reduced the nodes displacement by saving 8 % of energy over D C T C k algorithm:
E ( M C C M ) E ( D C T C k ) E ( D C T C k ) = 50.988 55.636 55.636 = 0.08
M C C M behaves similarly in other scenarios. Displacements results in Table 3 showed an energy saving up to 35.5% in M C C M compared to D C T C k and D C H G A .

6. Conclusions and Future Works

The collaboration between UAV and WSN into the Internet of things (IoT), is gaining a lot of attention, as a solution to detect emergency events especially in rural and harsh environments. It guarantees an autonomous network healing and quick actions during long-distance missions. Nonetheless, it contributes to a rural transformation by motivating people to live in rural area and facilitating their daily activities. The main issue in harsh and disaster environments is to maintain connectivity between all the objects (devices) and to maximize the coverage between them. Reducing the mobility of devices is also another issue. Many constraints have been considered and handled in this article such as the distributed environment, the heterogeneity and mobility of devices. The main goal is to keep the movement of devices as minimal as possible to save energy. Another goal is to reduce the overlapping areas covered by different devices and keep it to a small margin to maximize the coverage while maintaining connectivity. We proposed M C C M a distributed algorithm for coverage maximization, in which each mobile device re-organizes itself to maximize the coverage in its neighborhood. Since the random deployment and the movement of devices, might form isolated groups or “islands”, we bridge these groups using alpha-shape technique. Simulation results showed an increase in coverage gain and reduction in nodes’ displacement and energy consumption, compared to other algorithms in both homogeneous and heterogeneous environments.
We noticed the following about M C C M : It may happens that a device D i trying to maximize the coverage in an island N i , might meet another device D j from another island N j on his way. The two devices might overlap at their final positions and might not be located in their optimal position with respect to each other (as they belong to two different islands). The reason is that the maximization process applies only inside an island and not when two islands meet. This behavior can be beneficial in scenarios where overlapping gets less priority, while the presence of redundancy enhances network reliability. From the coverage optimization perspective, it is recommended to have the least overlapping area among devices while maximizing coverage. In the future works, we intend to tackle this matter by adapting the m-ratio and τ i j constraints when combining islands together. We also aim to do more experimentation with industrial fields and concrete case studies.

Author Contributions

Conceptualization, H.M., M.B.H.; Funding acquisition, G.F.; Investigation, M.B.H., A.G., G.F.; Supervision, A.G., H.M.; Validation, M.B.H.; Writing-original draft, M.B.H.; Writing-review and editing, A.G., All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Acknowledgments

The authors would like to thank the editors and the anonymous reviewers, for their valuable comments which improved the clarity and quality of the paper.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
List of Acronyms
IoTinternet of Things
WSNWireless Sensor Network
MCCMCoverage Maximization and Maintaining Connectivity
ITUInternational Telecommunication Union
IERCEuropean Research Cluster on the Internet of Things
AoIArea of Interest
AoTArray of Things
C T C k connected target k-coverage
D C T C k distributed connected target k-coverage
DCHGADynamic Clustering of Heterogeneous WSNs using Genetic Algorithm
CSCentral Station
SNSink Node
HMRCHarmony Memory Considering Rate
AAEECCAsynchronous Algorithm for providing Energy Efficient Coverage and Connectivity
FTCMFault Tolerant Connectivity Maintenance
ABSDCAngles-based Sensors Deployment Algorithm to Develop the Coverages in WSN
GSOGlowworm Swarm Optimization
OPDCCOptimal Deployment for k-Coverage in m-Connected Wireless Networks
CMHNCoverage Maximization for Heterogeneous Wireless Network
VCACWSNVoronoi coverage Algorithm based on Connectivity for Wireless Sensor Networks
UAVUnmanned Aerial Vehicle
List of Symbols
D i A device i in the network
r i Range of device D i
m ( i , j ) m ratio between devices D i and D j
d i j Distance between devices D i and D j , denoted d i s t D i , D j
τ i j Minimum required overlapping between devices D i and D j
Ω Set of devices in the network
N i An island i in the network
M The mean location of the devices in an island
ζ Set of devices located between Device D i and M
G i ( V i , E i ) A graph of V i vertices and E i edges
A ( V i ) A set of devices on the edges of the neighboring islands
d ( G i , G j ) Minimum distance between two graphs G i and G j
Γ Set of drones
D i f Final position of Device D i
m o v ( Ω ) Average number of movements in the network
P ( x , y , D i ) Probability that point (x,y) is covered by device D i
A c o v ( Ω ) Coverage obtained before applying our algorithm
A c o v f ( Ω ) Coverage obtained after applying our algorithm
A g a i n ( Ω ) Coverage gained in the network
EEnergy depleted by a moving device
H e The energy required to move one meter

References

  1. Bica, I.; Chifor, B.C.; Arseni, S.; Matei, I. Multi-Layer IoT Security Framework for Ambient Intelligence Environments. Sensors 2019, 19, 4038. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  2. Jones, R. The International Telecommunication Union; IEEE: New York, NY, USA, 2019; p. 1248. [Google Scholar] [CrossRef] [Green Version]
  3. Hennebert, C.; Baldini, G.; Peirce, T.; Botterman, M.; Talacchini, M.; Guimaraes Pereira, A.; Handte, M.; Rotondi, D.; Pohls, H. IoT Governance, Privacy and Security Issues. Available online: https://bhanu18.wordpress.com/2015/07/01/iot-governance-privacy-and-security-issues/ (accessed on 21 January 2020).
  4. Gassmann, O.; Böhm, J.; Palmié, M. Smart Cities; Emerald Publishing Ltd.: Bingley, UK, 2019; pp. 25–66. [Google Scholar] [CrossRef]
  5. Vepachedu, S. Privacy and Internet of Things, Array of Things & Artificial Intelligence. Available online: https://www.ftc.gov/system/files/documents/reports/federal-trade-commission-staff-report-november-2013-workshop-entitled-internet-things-privacy/150127iotrpt.pdf (accessed on 21 January 2020).
  6. Aly, H. Royal Dream: City Branding and Saudi Arabia’s NEOM. Middle East Top. Argum. 2019, 12. [Google Scholar] [CrossRef]
  7. Farag, A. The story of NEOM City: Opportunities and challenges. In New Cities and Community Extensions in Egypt and the Middle East; Springer: Berlin, Germany, 2019; pp. 35–49. [Google Scholar] [CrossRef]
  8. Devaul, W.; Devaul, R.; Teller, E.; Biffle, C.L.; Weaver, J. Ballon Network with Free-Space Optical Communication between Super-Node Balloons and RF Communication between Super-Node and Sub-Node Balloons. U.S. Patent No. 8,718,477, 24 March 2014. [Google Scholar]
  9. Cuka, M.; Ozera, K.; Obukata, R.; Elmazi, D.; Oda, T.; Barolli, L. Implementation of a GA-based Simulation System for Placement of IoT Devices: Evaluation for a WSAN Scenario; Springer: Cham, Switzerland, 2018; pp. 34–42. [Google Scholar] [CrossRef]
  10. Abo-Zahhad, M.; Ahmed, S.M.; Sabor, N.; Sasaki, S. Coverage maximization in mobile Wireless Sensor Networks utilizing immune node deployment algorithm. In Proceedings of the 2014 IEEE 27th Canadian Conference on Electrical and Computer Engineering (CCECE), Toronto, ON, Canada, 4–7 May 2014; pp. 1–6. [Google Scholar] [CrossRef]
  11. Jaradat, Y.; Masoud, M.; Jannoud, I.; Zaidan, D. The Impact of Nodes Distribution on Energy Consumption in WSN. In Proceedings of the 2019 IEEE Jordan International Joint Conference on Electrical Engineering and Information Technology (JEEIT), Amman, Jordan, 9–11 April 2019; pp. 590–595. [Google Scholar] [CrossRef]
  12. Tripathi, A.; Gupta, H.P.; Dutta, T.; Mishra, R.; Shukla, K.K.; Jit, S. Coverage and Connectivity in WSNs: A Survey, Research Issues and Challenges. IEEE Access 2018, 6, 26971–26992. [Google Scholar] [CrossRef]
  13. Wang, X.; Xing, G.; Zhang, Y.; Lu, C.; Pless, R.; Gill, C. Integrated Coverage and Connectivity Configuration in Wireless Sensor Networks. In Proceedings of the 1st International Conference on Embedded Networked Sensor Systems; ACM: New York, NY, USA, 2003; Volume 1, pp. 28–39. [Google Scholar] [CrossRef] [Green Version]
  14. Yeasmin, N. k-Coverage Problems and Solutions in Wireless Sensor Networks: A Survey. Int. J. Comput. Appl. 2014, 100, 1–6. [Google Scholar] [CrossRef]
  15. Zhu, C.; Zheng, C.; Shu, L.; Han, G. A survey on coverage and connectivity issues in wireless sensor networks. J. Netw. Comput. Appl. 2012, 35, 619–632. [Google Scholar] [CrossRef]
  16. Yu, J.; Chen, Y.; Huang, B. On Connected Target k-Coverage in Heterogeneous Wireless Sensor Networks. In Proceedings of the 2015 International Conference on Identification, Information, and Knowledge in the Internet of Things (IIKI), Beijing, China, 17–18 October 2014; pp. 262–265. [Google Scholar] [CrossRef] [Green Version]
  17. Gupta, N.; Kumar, N.; Jain, S. Coverage problem in wireless sensor networks: A survey. In Proceedings of the 2016 International Conference on Signal Processing, Communication, Power and Embedded System (SCOPES), Paralakhemundi, India, 3–5 October 2016; pp. 1742–1749. [Google Scholar] [CrossRef]
  18. Ahmed, A.; Awais, M.; Akram, T.; Kulac, S.; Alhussein, M.; Aurangzeb, K. Joint Placement and Device Association of UAV Base Stations in IoT Networks. Sensors 2019, 19, 2157. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  19. More, A.; Raisinghani, V. A Survey on Energy Efficient Coverage Protocols in Wireless Sensor Networks. J. King Saud Univ. Comput. Inf. Sci. 2016, 29. [Google Scholar] [CrossRef] [Green Version]
  20. Elhoseny, M.; Hassanien, A.E. Expand Mobile WSN Coverage in Harsh Environments. In Dynamic Wireless Sensor Networks; Springer: Cham, Switzerland, 2019; pp. 29–52. [Google Scholar] [CrossRef]
  21. Sharma, D.; Gupta, V. Improving coverage and connectivity using harmony search algorithm in wireless sensor network. In Proceedings of the 2017 International Conference on Emerging Trends in Computing and Communication Technologies (ICETCCT), Dehradun, India, 17–18 November 2017; pp. 1–7. [Google Scholar] [CrossRef]
  22. Ansari, N.A.; Deshpande, U.A.; Mohammad, S.P. An asynchronous algorithm for providing energy efficient coverage and connectivity in Wireless Sensor Networks. In Proceedings of the 2016 IEEE International Conference on Advanced Networks and Telecommunications Systems (ANTS), Bangalore, India, 6–9 November 2016; pp. 1–6. [Google Scholar] [CrossRef]
  23. Qihua, W.; Ge, G.; Lijie, C.; Xufeng, X. Voronoi coverage algorithm based on connectivity for wireless sensor networks. In Proceedings of the 2015 34th Chinese Control Conference (CCC), Hangzhou, China, 28–30 July 2015; pp. 7833–7837. [Google Scholar] [CrossRef]
  24. Hasson, S.T.; Finjan, A.A.R. A suggested angles-based sensors deployment algorithm to develop the coverages in WSN. In Proceedings of the 2018 2nd International Conference on Inventive Systems and Control (ICISC), Coimbatore, India, 19–20 January 2018; pp. 547–552. [Google Scholar] [CrossRef]
  25. Kadavy, T.; Pluhacek, M.; Viktorin, A.; Senkerik, R. Multi-Swarm Optimization Algorithm Based on Firefly and Particle Swarm Optimization Techniques; Springer: Cham, Switzerland, 2018; pp. 405–416. [Google Scholar] [CrossRef]
  26. Gupta, H.P.; Tyagi, P.K.; Singh, M.P. Regular Node Deployment for k -Coverage in m -Connected Wireless Networks. IEEE Sens. J. 2015, 15, 7126–7134. [Google Scholar] [CrossRef]
  27. Mcheick, H.; Hatoum, M.S.B.; Ghaddar, A. CMHN: Coverage Maximization of Heterogeneous Wireless Network. In Proceedings of the 16th ACS/IEEE International Conference on Computer Systems and Applications AICCSA’19, Abu Dhabi, UAE, 3–7 November 2019. [Google Scholar]
  28. Wei, L.; Sun, W.; Chen, H.; Yuan, P.; Yin, F.; Luo, Q.; Chen, Y.; Chen, L. A Fast Neighbor Discovery Algorithm in WSNs. Sensors 2018, 18, 3319. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  29. Amato, N.M. Determining the Seperation of Simple Polygons; World Scientific Publishing Company: Singapore, 1994; pp. 457–474. [Google Scholar]
  30. Dobkin, D.P.; Kirkpatrick, D.G. Determining the separation of preprocessed polyhedra a unied approach. In International Colloquium on Automata, Languages, and Programming; Springer: Berlin/Heidelberg, Germany, 1990; Volume 443, pp. 400–413. [Google Scholar]
  31. Chin, F.; Sampson, J.; Wang, C.A. A unifying approach for a class of problems in the computational geometry of polygons. Vis. Comput. 1985, 1, 124–132. [Google Scholar] [CrossRef]
  32. Yap, C.K. An O(n log n) algorithm for the Voronoi diagram of a set of simple curve segments. Discret. Comput. Geom. 1987, 2, 365–393. [Google Scholar] [CrossRef] [Green Version]
  33. Aleksandrov, D.; Penkov, I. Energy Consumption of Mini UAV Helicopters with Different Number of Rotors. In Proceedings of the 11th International Symposium Topical Problems in the Field of Electrical and Power Engineering, Parnu, Estonia, 16–21 January 2012. [Google Scholar]
Figure 1. M C C M process steps.
Figure 1. M C C M process steps.
Futureinternet 12 00019 g001
Figure 2. Neighborhood discovery process of device D i .
Figure 2. Neighborhood discovery process of device D i .
Futureinternet 12 00019 g002
Figure 3. Neighborhood maximization process of device D i .
Figure 3. Neighborhood maximization process of device D i .
Futureinternet 12 00019 g003
Figure 4. Example of the boundary obtained by alpha shape.
Figure 4. Example of the boundary obtained by alpha shape.
Futureinternet 12 00019 g004
Figure 5. Distance between boundaries.
Figure 5. Distance between boundaries.
Futureinternet 12 00019 g005
Figure 6. Coverage gain by MCCM: the blue (resp. red circles) represent the devices before (resp. after) running our algorithm; The green nodes are the drones that bridge the isolated islands.
Figure 6. Coverage gain by MCCM: the blue (resp. red circles) represent the devices before (resp. after) running our algorithm; The green nodes are the drones that bridge the isolated islands.
Futureinternet 12 00019 g006
Figure 7. The matrix C of coverage.
Figure 7. The matrix C of coverage.
Futureinternet 12 00019 g007
Figure 8. Validation results of our algorithms against some existing algorithms.
Figure 8. Validation results of our algorithms against some existing algorithms.
Futureinternet 12 00019 g008
Table 1. Simulation parameters.
Table 1. Simulation parameters.
ParameterValues
Area size250 m × 250 m
Number of nodes25, 50, 75, 100, 125, 150
Sensing range (meter)3, 5, 8
Battery voltage11.1 V
Horizontal Movement H e 2.8 J/m
Energy Capacity C4900 mAh
Battery Energy195,804 J
Speed2 m/s
Table 2. Comparative study between our algorithms and existing related works.
Table 2. Comparative study between our algorithms and existing related works.
NameArchitectureDistributionResourceComplexity
CMHN [27]CentralizedHeterogeneousLow O ( n l o g ( n ) )
MCCMDistributedHeterogeneousLow O ( n l o g ( n ) )
DCTCk [16]DistributedHeterogeneousLow O ( p × q )
DCHGA [20]CentralizedHeterogeneousHigh O ( p × g × n )
HMRC [21]CentralizedHomogeneousMedium O ( n 2 )
AAEECC + FTCM [22]DistributedHomogeneousMedium O ( n 2 )
VCACWSN [23]CentralizedHomogeneousMedium O ( n 2 )
ABSDC [24]CentralizedHomogeneousLow O ( n l o g ( n ) )
OPODCC [26]CentralizedHomogeneousHigh O ( n 3 )
Table 3. MCCM performance over existing related works.
Table 3. MCCM performance over existing related works.
HOMOGENEOUS
Number of nodes5075100125150
MCCM versusDCTCkDCHGADCTCkDCHGADCTCkDCHGADCTCkDCHGDCTCkDCHGA
Increase in coverage gain in MCCM15%19%14%14%12%12%15%16%11%13%
Reduction in Displacement11.65%35.55%29.75%33.31%0.35%15.42%4.13%15.12%8.35%15.58%
HETEROGENEOUS
Number of nodes5075100125150
MCCM versusDCTCkDCHGADCTCkDCHGADCTCkDCHGADCTCkDCHGADCTCkDCHGA
Increase in coverage gain in MCCM0%5%3%3%13%13%13%18%16%26%
Reduction in Displacement11.86%38.67%1.21%22.87%0.13%21.24%5%10.46%0.09%10.69%

Share and Cite

MDPI and ACS Style

Ghaddar, A.; Bou Hatoum, M.; Fadlallah, G.; Mcheick, H. MCCM: An Approach for Connectivity and Coverage Maximization. Future Internet 2020, 12, 19. https://doi.org/10.3390/fi12020019

AMA Style

Ghaddar A, Bou Hatoum M, Fadlallah G, Mcheick H. MCCM: An Approach for Connectivity and Coverage Maximization. Future Internet. 2020; 12(2):19. https://doi.org/10.3390/fi12020019

Chicago/Turabian Style

Ghaddar, Alia, Monah Bou Hatoum, Ghassan Fadlallah, and Hamid Mcheick. 2020. "MCCM: An Approach for Connectivity and Coverage Maximization" Future Internet 12, no. 2: 19. https://doi.org/10.3390/fi12020019

APA Style

Ghaddar, A., Bou Hatoum, M., Fadlallah, G., & Mcheick, H. (2020). MCCM: An Approach for Connectivity and Coverage Maximization. Future Internet, 12(2), 19. https://doi.org/10.3390/fi12020019

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop