A dominance-based stepwise approach for sensor placement ...

3 downloads 19619 Views 3MB Size Report
Dec 19, 2014 - Following a stepwise optimization approach, we propose a Crowd-Out ... process, the best sensor placement pattern will be presented as the ...... Seo, Y.H. Kim, H.B. Ryou, S.J. Kang, A genetic algorithm for sensor deploy-.
Applied Soft Computing 28 (2015) 466–482

Contents lists available at ScienceDirect

Applied Soft Computing journal homepage: www.elsevier.com/locate/asoc

A dominance-based stepwise approach for sensor placement optimization Albert Hung-Ren Ko a,∗ , Anne-Laure Jousselme b , Robert Sabourin c , Francois Gagnon d a Laboratoire de communication et d’intégration de la micro´lectronique, École de Technologie Supérieure, University of Quebec, 1100 Notre-Dame West Street, Montreal, Quebec H3C 1K3, Canada b SADC2, Defence Research and Development Canada, 2459, boulevard Pie-XI Nord, Val-Bélair, Quebec G3J 1X5, Canada c Laboratoire d’imagerie, de vision et d’intelligence artificielle, École de Technologie Supérieure, University of Quebec, 1100 Notre-Dame West Street, Montreal, Quebec H3C 1K3, Canada d LACIME, École de Technologie Supérieure, University of Quebec, 1100 Notre-Dame West Street, Montreal, Quebec H3C 1K3, Canada

a r t i c l e

i n f o

Article history: Received 17 December 2012 Received in revised form 11 September 2014 Accepted 30 November 2014 Available online 19 December 2014 Keywords: Wireless Sensor Networks Sensor placement Optimization Coverage Genetic Algorithm Simulated Annealing Evolutionary Algorithm Wireless communications

a b s t r a c t A Wireless Sensor Network (WSN) usually consists of numerous wireless devices deployed in a region of interest, each of which is capable of collecting and processing environmental information and communicating with neighboring devices. The problem of sensor placement becomes non trivial when we consider environmental factors such as terrain elevations. In this paper, we differentiate a stepwise optimization approach from a generic optimization approach, and show that the former is better suited for sensor placement optimization. Following a stepwise optimization approach, we propose a Crowd-Out Dominance Search (CODS), which makes use of terrain information and intersensor relationship information to facilitate the optimization. Finally, we investigate the effect of terrain irregularity on optimization algorithm performances, and show that the proposed method demonstrates better resistance to terrain complexity than other optimization methods. © 2014 Elsevier B.V. All rights reserved.

1. Introduction In recent years, territorial security has been studied intensively for various applications, such as environmental monitoring and surveillance, airports, public transit, emergency services, and nuclear facilities. In general, Wireless Sensor Networks (WSN) are used to monitor large geographical areas. A WSN usually consists of numerous wireless devices deployed in a region of interest, each of which is capable of collecting and processing environmental information and communicating with neighboring devices [4,17,29]. As such, it can be regarded as a multi-agent system [12,18,30] for territorial security, in which individual agents cooperate with each other to avoid duplication of effort and to exploit the capacities of other agents [1,30]. Sensor placement is an essential issue in WSN, as it affects how well a region is monitored by sensors, such as national defence [24], home security [31], industrial surveillance [9] and environmental monitoring, among others. The main objective of sensor placement in a WSN is twofold: the region of interest covered should be as complete as possible, and the network should deploy as few sensors as possible, thereby minimizing its overall cost. Note that this is

∗ Corresponding author. Tel.: +1 5145779759. E-mail addresses: [email protected] (A.H.-R. Ko), [email protected] (A.-L. Jousselme), [email protected] (R. Sabourin), [email protected] (F. Gagnon). http://dx.doi.org/10.1016/j.asoc.2014.11.051 1568-4946/© 2014 Elsevier B.V. All rights reserved.

distinctly different from the objective of path planning problems [8], where sensors are installed on robotic platforms and the sensor path is of primary interest. In our case, the sensors are each placed in a fixed position. One of the most pressing concerns regarding a region of interest monitored by sensors is the region coverage [17,19,20,23,29,32]. In general, one of the basic requirements of a WSN is that every location in a region of interest lie within the sensing range of at least one sensor. An alternative approach is that a region of interest be covered by at least K sensors simultaneously [29,32]. Many methods have been proposed to address the problem of coverage and communication, and some optimal methods have been theoretically proved on the assumption that all the sensors are guaranteed to cover a circular area of equal radius [4,17,19,20,29]. However, this assumption implicitly assumes that the area of interest is flat, and so does not take into account obstacles and terrain effects. The assumption simply does not hold in the real world. When we do consider terrain effects, the problem becomes rather complex, and there are currently no theoretically optimal methods that can deal with it. Since we have little knowledge of the problem behavior, we must rely on more generic, iterative optimization methods, such as the Gradient Descent and Evolutionary Algorithms, to optimize the sensor placement pattern. Given an initial placement pattern in a region, an iterative optimization algorithm should be able to find a locally optimal placement pattern after a limited number of iterations. These generic optimization methods generate some new placement patterns at each iteration and calculate the coverage of each pattern. Then, at the end of the iteration process, the best sensor placement pattern will be presented as the solution. These generic optimization methods do work to some extent; however, we believe that

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

467

they may not be optimal, because the sensor placement problem is quite different from other optimization problems. The difference lies in the knowledge we have about the problem. In some optimization problems, we have absolutely no a priori knowledge, and must rely on a heuristic search, such as Evolutionary Algorithms or Simulated Annealing. In contrast, we know about several specific properties of the sensor placement problem: (a) the coverage provided by some positions is better than the coverage provided by others; (b) assuming that the objective of a WSN is to maximize its coverage of a region, a sensor will contribute nothing to the network if it covers an area that is already covered by other sensors. So the question becomes, how can we leverage these two properties to achieve optimal sensor placement? In our effort to leverage the properties of the sensor placement problem to achieve a more efficient optimization, we structure the problem differently in this paper. We assume that an optimization algorithm will work in an iterative way. Given an initial sensor placement pattern in a region, we differentiate two types of optimization approach: (a) a generic approach, like a Genetic Algorithm, which would, in general, change multiple sensor positions at each iteration without considering each individual sensor and (b) a stepwise approach, which would change only a single sensor position at each iteration. In the latter case, we must know which sensors to move, and where to move them, in an iteration. We note that in the literature almost all the sensor placement optimization methods used are generic, and only a few of them are stepwise. We believe that a stepwise approach may be worth investigating, because it would allow us to use more specific information, such as redundant coverage and various sensor performances. In this paper, we are interested in investigating the following issues: (1) Which approach is better for sensor placement optimization, a generic approach or a stepwise approach? (2) If a stepwise approach is implemented, which sensors should we move in an iteration? What are the possible positions for the selected sensors in an iteration? (3) What is the effect of terrain irregularities on the performance of search algorithms? To answer these questions, we propose a Crowd-Out Dominance Search (CODS), which follows a stepwise approach, and so makes use of terrain information and individual sensor information. The proposed optimization methodology is based on the concept of a static dominance and a dynamic dominance that we have designed to tackle the irregular terrain problem in sensor placement. Moreover, our method indicates clearly which sensor to move at each iteration, as well as the possible positions to which this sensor may be moved. In order to validate our proposed method, as well as to evaluate the performance of the generic approach relative to that of the stepwise approach, we compare our results with those of a number of heuristic methods, including Random Search, a Genetic Algorithm, and Simulated Annealing. The paper is organized as follows. In the next section, we introduce some related works in sensor placement optimization. In Section 3, we formulate the problem statement. The methodology is proposed in Section 4. Experimental protocols and results are presented in Section 5, followed by a discussion, our conclusions, and suggestions for future work.

2. Related works The sensor placement problem has been researched extensively in simplified settings in the literature. Usually, terrain effects and obstacles are ignored in these studies. Some deterministic methods have been proposed to address the problem of coverage, and it has been shown that covering a region with disks of equal radius can be achieved in an optimal way [4,10,15,17,19,22]. Similar as simplification of the environment makes it possible to be design and validate an optimal method, the majority of these proposed optimization methods are deterministic, as shown in Fig. 1. Other, more realistic scenarios have been created, such as the Art Gallery problem [11,21,26], where there are fixed obstacles. In this case, the purpose of sensor placement is to achieve maximum coverage with a minimum number of sensors taking these obstacles into account, as shown in Fig. 2. The Art Gallery problem portrays a more realistic setting than a simple plane. Sensors in such a setting should be deployed in such a way as to minimize the disadvantage of the presence of obstacles. Note that the Art Gallery is a 2D environment, where a position is considered either completely flat or an obstacle, and this makes it a binary environment. Moreover, an obstacle in the Art Gallery problem is an obstacle from the perspective of all the sensors, no matter what their position, and,

Fig. 1.√ Pattern of the deterministic method [4,17] implemented in the paper, where da = 3rs , db = 32 rs , and rs is the sensing range of a sensor. The pattern is optimal for a zero-obstacle environment. Circles represent sensor sensing ranges, and dots represent sensor positions.

conversely, a change in the position of a sensor will not affect the status of an obstacle. This is not the case in a 3D problem, where the environment is no longer binary. Furthermore, the number of obstacles seen by a network depends on the positions of the sensors. A sensor placed in a valley may perceive the presence of a different number of obstacles than a sensor placed on a summit, for example. Terrain information can therefore greatly increase the complexity of the problem [29]. The direct consequence of oversimplification in a sensor placement environment is that the theoretically perfect coverage shown by these deterministic methods may not hold true in practice. Most sensor placement optimization methods assume that the sensors are placed on a 2D plane, and topographical details about the terrain, such as hills, valleys, vegetation, and buildings, are not considered [4,10,15,17,19,22]. However, the region of interest that requires sensor activity is rarely completely flat, as both natural and urban environments usually contain some obstacles. The conventional deterministic approaches do not consider environmental factors such as terrain topology, and may lead to the production of incorrect optimization results. While a WSN created using a deterministic method may seem to achieve full coverage on a target

Fig. 2. An example of the Art Gallery problem: the polygon is an area bounded by obstacles, and the dots are sensor positions. Unlike Fig. 1, this 2D environment contains obstacles and they remain where they are, regardless of the sensor positions.

468

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

We believe that there are some important concepts associated with this optimization problem that are worth discussing. 3.1. Terrain effect on visibility

Fig. 3. An example of real terrain: the circle denotes a sensor, and the shading denotes an area that is visible or detectable from the sensor position. In a real environment, the positions of the obstacles depends on positions of sensor.

area, that coverage may not, in fact, be achieved (see Fig. 3). This uncertainty can make sensor placement a challenge. In order to optimize automated sensor placement in a terrain based on realistic topographical information, we need to consider two problems: (1) terrain effects on sensors and (2) redundant coverage among sensors. The former problem results in uneven coverage of the terrain. Because each position will have different coverage in this case, we need to evaluate every position in order to determine the best place to deploy a sensor, as traditional optimal sensor placement schemes are inadequate for this task. The latter problem results in redundant coverage by multiple sensors. Because more sensors mean higher cost for sensor placement, it does not make much sense for two sensors to cover the same area, or if too many sensors are used, making the coverage of some of them redundant. The compounding effect of these two problems makes sensor placement optimization an NP-hard problem, which some practitioners may try to resolve simply by using generic optimization methods, such as Evolutionary Algorithms [3,6,26]. As far as we know, there are no specific algorithms designed to solve a topology-aware sensor placement problem focusing on coverage redundancy among sensors.

3. Problem statement Although there are some common notions on critical issues, such as coverage [2,7,20,32], few comprehensive frameworks have been created for sensor placement optimization that take into account terrain effects. In most cases, sensor placement optimization is regarded as an overly complex problem, and so generic heuristic algorithms are often used for the optimization task [6,26].

Given a region of interest R and N sensors, the objective is to maximize the coverage for the overall sensor network. In an effort to better quantify the coverage, we first discretize the region of interest R into m points of interest, and assume that a sensor can be placed in m positions, as shown in Fig. 4. Assuming that all N sensors are homogeneous, we start with a single sensor and a single point of interest. Given a sensor si with detection range dr at position (si,x , si,y ) and elevation si,z , and a point of interest pj at position (pj,x , pj,y ) and elevation pj,z at a distance dps from sensor si , we first define the visibility v(si , pj ). Suppose that there is a series of points pk , to k ∈ {1, . . ., K}, between sensor si and a point of interest pj , where these points pk form a straight line on the XY plane from the point pj to sensor si , and dij is the distance from point pj to sensor si :

 dij =

(si,x − pj,x )2 + (si,y − pj,y )2

(1)

And the positions of pk can be specified as: pk,x = pj,x +

pk,y = pj,y +

(si,x − pj,x ) dij (si,y − pj,y ) dij

·k

(2)

·k

(3)

where pk,x and pk,y are x and y coordinates of position pk . The expected elevation of point pk can be calculated as: pˆj k,z = pj,z +

(si,z − pj,z ) dij

·k

(4)

The visibility of sensor si on point pj is a binary function, and is true if and only if none of the points in between obstructs the view from sensor si to point pj (see Fig. 5):

v(si , pj ) = 1, if ∀k, pˆ k,z ≤ pk,z

(5)

v(si , pj ) = 0, otherwise

(6)

where pk,z is the true elevation of point pk .

Fig. 4. Illustration of the basic concept definitions. si denotes a sensor, and pj denotes a point to be detected. dr is the sensing range, and dij is the distance between the point pj and the sensor si . The area of interest R is discretized into m points, and a sensor can be placed in m positions. Given N sensors the objective is to maximize the sensor network coverage.

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

469

Given N sensors to be deployed in a terrain and m points in a region of interest, the global coverage c(S) can be defined as the sum of the coverage of all the points of interest, which in turn is a function of all the sensors deployed, {s1 , s2 , . . ., sN }: c(S) =

m 

c(pj ), ∀j, pj ∈ R

(15)

j=1

Fig. 5. Illustration of visibility. si denotes a sensor, and pj denotes a point to be detected. The visibility of sensor si on point pj is true if and only if none of the points in between obstructs the view from the sensor si to the point pj .

3.2. Single sensor coverage Once visibility has been defined, the binary sensor coverage c(si , pj ) of a sensor si with detection range dr on the point pj can be defined as follows: c(si , pj ) = 1, if max(0, dr − dij ) · v(si , pj ) > 0

(7)

c(si , pj ) = 0, otherwise

(8)

Alternatively, we can extend the definition of c(si , pj ) to a probability setting: c(si , pj ) = f (dij ) · v(si , pj )

(9)

where f(dij ) is a probabilistic sensor detection function, the exact function depending on the sensor behavior model. For example, if it is justified, a sigmoid detection function can be used: f (dij ) =

1

 

1 + exp − ˛/dij − ˇ



(10)

where ˛ and ˇ are parameters that define the sensor detection behaviors exactly. A point of interest is regarded as covered if it is covered by at least one of the sensors deployed. Knowing the coverage between sensor si and all the points of interest, the overall coverage of sensor si can be defined by aggregation. If there are m points of interest, then the overall coverage c(si ) of a sensor si can be defined as the accumulated coverage on all the points that sensor si covers: c(si ) =

m 

c(si , pj ),

1≤j≤m

(11)

j=1

where pj is a point, 1 ≤ j ≤ m, in a region of interest R. This definition applies for both binary and probabilistic coverage. 3.3. Sensor network coverage If N sensors are deployed instead of just one, then the sensor network binary coverage c(pj ) on a point pj can be defined as follows: c(pj ) = 1, if

N 

c(si , pj ) > 0

(12)

i=1

c(pj ) = 0, otherwise

(13)

where si denotes a sensor among a total of N sensors, 1 ≤ i ≤ N. Again, a probabilistic coverage on a point can be implemented if the sensor behavior is known. The sensor network probabilistic coverage c(pj ) on a point pj can be defined as follows: c(pj ) = 1 −



(1 − c(si , pj ))

(14)

i=1,...,N

Note that c(si , pj ) is the coverage probability of a single sensor si on a point pj .

where pj is a point, 1 ≤ j ≤ m, in a region of interest R. Again, the same definition works in both binary and probabilistic coverage settings. The global coverage c(S) is a function of terrain elevations pj,z , 1 ≤ j ≤ m for all points of interest in region R and sensor positions si,x , si,y and sensor elevations si,z for all sensors, 1 ≤ i ≤ N. For simplicity, we denote pj,z series as pj,z and the sensor positions and elevations as si,x , si,y , si,z , respectively: c(S) = (pj,z , si,x , si,y , si,z )

(16)

As, the goal of sensor placement is to position the sensors in such a way that global coverage is maximized, we have: {si,x , si,y } = arg max (pj,z , si,x , si,y , si,z ) = arg max c(S)

(17)

Note that pj,z and si,z are terrain effects and the system has no control over these factors. The concepts presented above are straightforward and simple. However, the sensor placement optimization problem has complex behaviors and there are several embedded challenges. We outline some of the difficulties involved in the section below. 3.4. Optimization problems We encounter three issues in sensor placement optimization: (a) the problem cannot be divided into individual sensor optimization problems, and so individual sensor information that may be useful often cannot be used; (b) the problem usually has a very large search space; and (c) there is a trade-off to be made between exploration capability and exploitation capability. We expand on these issues below. 3.4.1. Individual optimization vs. global optimization We derive global coverage c(S) in Eq. (15) by summing the number of points covered in a region interest. This is because some points are covered by more than one sensor, and we cannot simply add up the coverage of all the sensors to obtain the global coverage. Due to redundant coverage, optimization of the coverage of individual sensors would not be equal to that of the overall global coverage. As a result, we cannot decompose the global optimization problem into a number of individual optimization problems, nor can we evaluate the fitness of an individual sensor based only on its individual coverage. Consequently, it may not be trivial to analyze and evaluate the performance of individual sensors, in spite of knowing the global performance of the WSN. This is a subtle, but critical problem, and is the main reason why generic heuristic search such as Random Search, Simulated Annealing or Evolutionary Algorithms are used more often. However, these generic optimization methods lose sights of individual sensors, and disregard individual sensor information that could turn out to be useful for sensor placement optimization. 3.4.2. Optimization search space Although generic heuristic optimization methods may be adequate in a search space with non-smooth surfaces, they are essentially non deterministic and need to explore the search space in some random way. For sensor placement optimization, these methods encounter the problem that the search space can

470

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

be very large if the terrain is highly irregular. As we stated previously, given N sensors to be deployed in an area with m possible sensor positions, the possible placement combination will be m · (m − 1) · · · (m − N + 1). In general, m  N, which means that the number of possible combinations could become colossal. Consequently, heuristic search methods may not perform well if no further information is provided to guide the search. 3.4.3. Single-move-based optimization vs. multi-move-based optimization Given N sensors in a region of interest with m points to cover, and so m possible positions in which to place sensors, let us suppose that an iterative optimization algorithm starts with an initial sensor placement pattern, and that this optimization algorithm will work in such a way that the sensor network will evolve to attain more coverage during the iterations. Assuming that the algorithm moves one sensor at each iteration, there will be N · m different possibilities to evaluate. Now assuming that the moves n sensors at algorithm

N each iteration, n ≤ N, there will be · m · (m − 1)· · ·(m − n + 1) n different possibilities to evaluate. It would not be surprising, then, given N  m, that:



N ·m 

N n

· m · (m − 1)· · ·(m − n + 1)

(18)

An optimization algorithm will have better exploitation capability if it only moves one sensor at each iteration, because it is more likely to choose the best move among all N · m moves, but at the same time it will have a lower exploration capability, because all the other sensor positions are fixed. By contrast, an optimization algorithm will have a lower exploitation capability if it only moves multiple sensors at each iteration, because

it will be less likely to N choose the best move among all · m · (m − 1)· · ·(m − n + 1) n moves, but at the same time it will have a better exploration capability, because multiple sensors will occupy different positions. Many generic heuristic optimization methods take a multimove-based approach, Evolutionary Algorithms, for example, and move multiple sensors at each iteration. However, there are few methods in the literature that implement a single-move-based approach. The merits of exploration capability are rarely validated or compared to those of exploitation capability in sensor placement optimization. For all the reasons described above, and because of the problem of environmental complexity, such as terrain irregularities, it is difficult, and perhaps not feasible, to arrive at a global optimum solution. However, there may be some advantages to implement an adequate optimization algorithm: search space reduction, search process acceleration, and improvement of the quality of the local optima found. We shall keep these potential advantages in mind in designing and comparing optimization algorithms. 4. Proposed method In our proposed method, we structure the problem differently in an effort to leverage individual sensor information and to validate exploitation capability in sensor placement optimization. Assuming that we opt for a single-move-based approach, two fundamental issues arise at each iteration for such a high complexity problem (see Fig. 6): (1) which sensor should we move; (2) where should we deploy that sensor? To try to resolve these question, we propose a Crowd-Out Dominance Search (CODS). Using CODS, the answer to the first question will be to select one sensor among N sensors with a fitness function, and the answer to the second question will be to move the selected sensor to a position that may

increase the gain of the overall WSN. These two questions form an iteration made up of sensor selection and sensor placement. To perform the iteration, we need an adequate fitness function for sensor selection and adequate information for sensor placement. We propose to use the marginal contribution of sensor coverage as a fitness function for sensor selection, and a dominance measure for sensor placement that we propose here. The marginal contribution of the coverage of a sensor may not be the best fitness function, but it is the one that satisfies some important conditions, as we will explain later. Once a sensor has been selected for displacement, the dominance measure is used to evaluate potential positions for that sensor. In order to better understand the concept of CODS, we introduce some important issues in the section below. 4.1. Which sensor to move – sensor evaluation As we stated previously, the sum of the coverage of all the sensors does not equal the global coverage. Consequently, we cannot simply evaluate the performance of each sensor by its coverage in the hope that global coverage will be optimized. So, we first need to find a way to evaluate individual sensors. There are two possible ways to do this: 4.1.1. Use of individual sensor evaluation criteria The following two conditions must be satisfied by the fitness function g(si ) for sensor si that we need to find: (1) Comparability If a network S can perform better without sj rather than without si , then the fitness function g(si ) should be larger than g(sj ) g(si ) > g(sj ) iff c(S\si ) < c(S\sj )

(19)

(2) Monotonicity Given that all the other sensors are fixed, the change in the fitness of a sensor should be monotonic with the change in global coverage: c(S|si ) < c(S |si ) iff g(si ) < g(si ) c(S|si ) > c(S



|si )

iff g(si ) >

g(si )

(20) (21)

The comparability criterion ensures that we can evaluate sensors against their peers, and the monotonicity criterion ensures that the evaluation of individual sensors is in accordance with the evaluation of the overall sensor network. 4.1.2. Application of a sensor evaluation process Given a sensor network S \ si without a sensor si , the effect of adding si to S is the marginal contribution of si , ς (si ). For sensor networks, this marginal contribution of si would be as follows:

ς (si ) = c(S|si ) − c(S\si )

(22)

The marginal contribution ς (si ) is an interesting feature, because it satisfies both the comparability criterion and the monotonicity criterion if we only move one sensor at a time. However, if more than one sensor is moved at a time, then the increase in the marginal contribution of any individual sensor cannot guarantee an increase in global coverage. This is because the marginal contribution works by calculating the additional marginal benefits that a sensor brings to a network, given that all the other sensors remain in the same places. So, if more than one sensor is moved at a time, the condition under which we derive the marginal contribution is not the same. This means that if we move more than one sensor, the area with exclusive coverage may increase, but the area with coverage by

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

471

Fig. 6. Overview of the single-move-based approach.

multiple sensors may decrease. We can ensure that the area covered by multiple sensors stays the same only when we move one sensor at a time. In summary, the marginal contribution can serve as a fitness function for evaluating sensors, but only if we move one sensor at a time. We should stress that the role of the marginal contribution is limited to responding to the first question “Which sensor should we move?”, and is not considered in the second question “Where should we deploy that sensor?” This is our choice for the fitness function, but it may not be the only one. Notice that it only qualifies as a fitness function under the condition that one sensor is moved at a time, but not when multiple sensors are moved at a time. Moreover, although it is far from being the main concept of the proposed methodology, this fitness function serves to facilitate the dominance search that we present below. In the binary coverage setting, the exclusive coverage of sensor si is the marginal contribution of sensor si (see Fig. 7). The exclusive coverage of sensor si corresponds to the number of points covered only by si according to the definition of binary coverage. The advantage of considering exclusive coverage is that it can be easily calculated at the same time as we calculate global coverage, and so there is no need to perform an additional calculation of c(S \ si ) to obtain ς (si ). In the context of sensor placement, we pay attention to two things: its coverage and its redundant coverage. Redundant coverage is important because it indicates that some sensors are duplicating efforts made by other sensors. We note that in a complex environment, duplicated effort may be made by more than two sensors. In the context of sensor placement, this occurs when more than one sensor cover the same point of interest. We define such a phenomenon as multiple coverage. If N sensors are

deployed, instead of just one, then the multiple coverage ϕ(pj ) on a point pj can be defined as follows: ϕ(pj ) =

N 

c(si , pj )

(23)

i=1

where si denotes one sensor among a total of N sensors, 1 ≤ i ≤ N. This definition applies in both the binary and probabilistic coverage settings. Since we already have knowledge of multiple coverage measures for each point in a region of interest, we can derive the exclusive coverage of each sensor deployed in a binary coverage setting. If there are m points of interest, then the exclusive coverage ς (si ) by a sensor si can be defined as follows:

ς (si ) =

m 

max(c(si , pj ) − max(ϕ(pj ) − 1, 0), 0), 1 ≤ j ≤ m

(24)

j=1

where pj is a point, 1 ≤ j ≤ m, in a region of interest R. Alternatively, we can define a set of points that is covered only by one sensor, si . If a point pj is covered only by sensor si , i.e., ∀pj , c(si , pj ) = 1, ϕ(pj ) = 1, 1 ≤ j ≤ m, then we denote it as: pj  si

(25)

Then the exclusive coverage ς (si ) by a sensor si is simply a number of points {pj  si }:

ς (si ) =

m 

pj  si , 1 ≤ j ≤ m

(26)

j=1

The exclusive coverage ς (si ) is the marginal contribution in terms of coverage in binary coverage settings, and satisfies both the comparability and the monotonicity criteria. This means that, it reflects the effect that a sensor has on a network. Thus, the exclusive coverage ς (si ) is the fitness function with which we can evaluate individual sensors with binary coverage. In a probabilistic coverage setting, exclusive coverage may not apply, because in this case coverage is no longer defined as 0 or 1, but rather as a probability of a point of interest being covered or uncovered. So, exclusive coverage cannot be the fitness function in this setting. Consequently, the marginal contribution ς (si ) of a sensor si can simply be calculated as follows:

ς (si ) = c(S|si ) − c(S\si )

(27)

The disadvantage is that we need to remove sensor si in order to obtain c(S \ si ), which requires additional calculation. In the case of probabilistic coverage, CODS implements the marginal contribution ς (si ) to select the sensor that needs to be displaced.

Fig. 7. Illustration of exclusive coverage, redundant coverage and an uncovered area.

4.1.3. Implementation of sensor selection Once the marginal contribution of each sensor is calculated, the one with the smallest marginal contribution is selected to be

472

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

displaced at the next iteration. The crowded-out sensor s˜ can be defined as follows: s˜ = arg min ς (si )

(28)

i=1,...,N

In the case where the marginal contribution is the fitness function, then only one sensor is allowed to move at a time. Because the simultaneous displacements of more than one sensor may dramatically change the multiple coverage patterns among the sensors, it would be impossible to capture intersensors relationships to carry out a systematic placement. Up to now, our discussion has been limited to selecting the sensor to move, and we have not yet addressed the question “where to deploy that sensor”, which is an issue that we intend to resolve using our proposed dynamic dominance concept. However, dynamic dominance is a de facto combination of static dominance and the marginal contribution, as we explain in greater detail below. 4.2. Where to deploy sensors – position selection We consider three approaches to sensor position selection: (1) random selection, (2) selection based on static environmental information, and (3) selection based on dynamic environmental information. 4.2.1. Option 1: Random sensor position selection Once a sensor has been selected and no environmental information is available, we can simply move that selected sensor to a random position. Although this may not be an optimal approach, it does provide a baseline for comparing the single-move-based approach and the multi-move-based approach. It also facilitates the attribution of performance to the sensor selection approaches, i.e., the decision on which sensor to move, and the selection of the new sensor position, i.e., the decision on where to place the selected sensor. 4.2.2. Option 2: Static environmental information To better guide the search process, CODS takes advantage of both terrain information and intersensor information. In order to accomplish this, CODS makes use of more properties than just global coverage for optimization. This is especially true when there is the potential to procure partial environmental information. To accommodate this information, as well as to determine the best possible positions for a displaced sensor and reduce the number of these positions, we define the dominance of each position. If there are m ˜ i ) of a point pi , 1 ≤ i ≤ m, points of interest, the static dominance d(p can be defined as follows: ˜ i) = d(p

m 

c(pi , pj ),

1≤j≤m

(29)

j=1

4.2.3. Option 3: Dynamic environmental information ˜ i ), defined in the previous The dominance of a position d(p section, is based on a static environment, i.e. we calculate the dominance of each position without considering the presence of other sensors and possible redundant coverage caused by multiple sensors. The advantage of using static environmental information is that the calculation only needs to be done once, and so additional cost is not incurred during the optimization iteration. The disadvantage is that, since environmental information is static, there is no guarantee of the true dominance in the presence of other sensors. In other words, the use of static environmental information provides a better guided search than a pure Random Search, but there remains an element of randomness in that search. By contrast, dynamic environmental information calculates the exact dominance, taking into account the interference of all the other sensors and of terrain elevations. To calculate the exact dominance, we first define a set of points that are not covered by any sensors. If a point pj is not covered by any sensors, i.e. if it satisfies the condition ∀pj , c(pj ) = 0, 1 ≤ j ≤ m, then we denote any points not covered as follows: pj  ∅

(31)

˘ i ) of a certain point pi , 1 ≤ i ≤ m, can The dynamic dominance d(p be defined as follows: ˘ i) = d(p

n 

c(pi , pj ), pj ∈ {{pj  ∅} ∪ {pj  si }},

1≤j≤n

(32)

j=1

where n is the sum of non-covered points and the points only covered by the selected sensor si . Only these points are relevant when we move the sensor si (Fig. 8). Note that if n is large, it may not be necessary to calculate the coverage of all n points. We can simply apply a probability 0 <  ≤ 1 that a point pj ∈ {{pj  ∅ } ∪ {pj  si }} ˘ i ). The dynamic dominance will be included in the estimation of d(p ˇ i , ) of a certain point pi , 1 ≤ i ≤ m, can be defined as estimation d(p follows: ˇ i , ) = d(p

n 

P()c(pi , pj ), pj ∈ {{pj  ∅} ∪ {pj  si }},

1 ≤ j ≤ n (33)

j=1

where pj is a discretized point in a region of interest R, 1 ≤ j ≤ m, and c(pi , pj ) is the same as sensor coverage c(si , pj ), except that sensor si is viewed as a position. This means that a displaced sensor would only consider potential sensor positions with a static dominance that is greater than a threshold. An adequately selected threshold is critical for CODS, because a large threshold may dismiss some fit positions, but a low threshold will not reduce the search space by much. Note that the static dominance for each position depends only on terrain variation, and would not be subject to changes in the case of different sensor placement patterns. That is why this property is referred to as “static”. It only needs to be calculated once, using terrain elevation information at each discretized point. A set of points p˜ with high dominance can be denoted as follows: ˜ i ) > } p˜ = {pi |d(p

where  is the threshold required for the static dominance value of each position. Consequently, we believe that, even though complete information concerning the optimal sensor position is unavailable, the decision should be at least guided by partial information that we can easily procure from the environment, such as terrain elevations. Note that the scheme based on static dominance is not a deterministic approach. It simply filters possible sensor positions based on their static dominance.

(30)

where P() = 1 if a uniformly distributed random variable r = [0, 1] satisfies the condition that r < , otherwise P() = 0. Instead of using all n points to calculate the dynamic dominance, we use only n ·  points to obtain a dynamic dominance estimation. ˇ i ) on all possible positions, the Given dynamic dominance d(p ˇ i with the largest dynamic dominance can be defined as point p follows: ˇ i , ) ˇ i = arg max d(p p

(34)

which makes this position the target position of si . Note that a scheme based on dynamic dominance is a deterministic approach, which is different from sensor position selection based on static dominance and a random sensor position selection scheme.

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

473

Fig. 8. Illustration of the dynamic dominance calculation. Black points represent points that are already covered by other sensors, gray points represent points covered only by the selected sensor, and white points represent points that are not covered by any sensors. The only positions used to evaluate dynamic dominance are those that are not covered by any sensors, and those that are only covered by the selected sensor, and no others. Given a potential sensor position to evaluate, the dynamic dominance of the evaluated position would be the number of evaluating positions that it can cover.

The methodologies described in this section will be implemented for sensor placement optimization problems in our experiments. 4.3. Implementation of CODS There are three variations of CODS implementation. Once we have identified the sensor to be displaced by selecting the one with the minimum marginal contribution, we can move that sensor in one of three ways: (1) to a random position; (2) to a position with a static dominance greater than the threshold; or (3) to a position with the largest dynamic dominance. We provide the pseudocode below. Algorithm 1.

Algorithm Option 2: (CODS using Static Dominance) Randomly select a position p˜ i from large static dominance set {˜p}, and move the sensor s˜ to the position p˜ i . Algorithm Option 3: (CODS using Dynamic Dominance) Select ˇ i with the largest dynamic dominance estimation the position p ˇ i , ), and move the sensor s˜ to the position p ˇi d(p

si,x = si,x + i,x , i = 1, . . ., N, si,y = si,y + i,y , i = 1, . . ., N, S

}. = {s1 , s2 , . . ., sN

Pseudo-code of sensor placement with CODS.

Input: the number of sensors N, the number of discretized points m on the region R, terrain elevation information  of all m points, detection range dr Output: the best sensor placement pattern found, Sbest STEP 0 – Initialization: Calculate the dominance d(pi ) of each position pi Define a threshold  for the dominance, and store all position pi with dominance d(pi ) larger than threshold into a candidate set {˜p}: {˜p} = pi , d(pi ) ≥  Initialize a sensor placement pattern with random positions uniformly distributed in a region R si,x



Unif(0, 1), i = 1, . . ., N,

si,y



Unif(0, 1),

S

=

{s1 , s2 , . . ., sN }.

i = 1, . . ., N,

Assess performance of initial sensor network, f = c(S, ) . Set best sensor network and best performance to the initial one, Sbest = S, fbest = f . for t = 1, . . ., Mdo STEP 1 – Sensor Selection: Calculate the exclusive coverage ς (si ) of each sensor si Select the sensor s˜ with the smallest exclusive coverage: s˜ = arg min ς (si ) STEP 2 – Sensor Position Selection: Algorithm Option 1: (CODS using Random Sensor Position Selection) Randomly select a position pi , and move the sensor s˜ to the position pi

STEP 3 – Sensor Placement Evaluation: Evaluate performance of new candidate sensor placement pattern S , f = c(S , ) . if f > f, new sensor placement pattern is better than current one,then Accept new sensor placement pattern, S = S , f = f . iff > fbest , new sensor placement pattern is better than best so far, then Set best sensor placement pattern and best performance to the current one, Nbest = S , fbest = f . end if else Reject new sensor placement pattern. For Algorithm Option 3: (CODS using Dynamic Dominance) Stop iterations. end if end for Return best sensor placement pattern found, Sbest , as final result.

Note that CODS with dynamic dominance is a deterministic approach. It converges after a certain number of iterations, after which the selected sensor will not move anymore, because its position, which is based on dynamic dominance, is the current position exactly. So, CODS with dynamic dominance will simply terminate its optimization process when no sensor is displaced in an iteration. By contrast, CODS with static dominance and CODS with random sensor position selection are both non deterministic methods, and will continue the optimization process until completion of the iterations.

474

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

5. Experiments In order to verify the validity of the proposed method, and to understand the merits of the single-move-based approach, and the static and dynamic dominance effects, we carried out a number of experiments on terrains with different degrees of irregularity. It was impossible for us to test all terrain types, for two reasons: (1) the almost infinite number of terrain types, so many that even categorizing them may not be feasible; (2) the current lack of a way to measure, and therefore quantify, terrain irregularities. We tested several methods, including traditional deterministic pattern [4,17], Random Search, Simulated Annealing, Genetic Algorithm, and three variations of CODS. For CODS with random sensor position selection, we simply selected the sensor to be displaced using the marginal contribution, but did not use terrain dominance information for sensor position selection. For CODS with static dominance, we used both the marginal contribution for sensor selection and static terrain dominance information for sensor position selection. For CODS with dynamic dominance, we implemented the dynamic dominance information, so that the selected sensor would know exactly where to move to in order to maximize the global coverage. Simulated Annealing is implemented with the temperature function ((t)), as follows: (t) =



˛

exp 1 −

M ˇ · M+t



(35)

where ˛ and ˇ are parameters that control temperature behaviors, and M is the maximum number of iterations required for Simulated Annealing. Now, both Random Search and Simulated Annealing can be implemented in either a single-move-approach or a multi-moveapproach. The former is a stepwise approach, and the latter is a generic approach. In an effort to understand the difference in their performances, we implemented Random Search and Simulated Annealing using both the one-sensor-at-a-time approach and the multiple-sensors-at-a-time approach. • Stepwise approach: One sensor at a time Only one sensor is displaced in an iteration by randomly selecting a sensor to be moved. Intuitively, by displacing one sensor at a time, the rest of sensor network preserves more or less the same structure. This means that the optimization may be more stable in this case than if we displace all the sensors at a time. • Generic approach: Multiple sensors at a time Multiple sensors are displaced simultaneously. We carried out our experiments on both artificial terrain and realistic terrain. The former allows us to gain insights into the effect of terrain irregularities, and the latter allows us to evaluate algorithms in a real world setting. 5.1. Experiment on artificially generated terrain To better understand the relationship between terrain irregularities and optimization algorithm performance, we tested various algorithms on some artificial terrains with different irregularities. To do so, we first defined a standard deviation of terrain elevation as an irregularity, and then we generated artificial terrains using different standard deviations and tested different search algorithms. 5.1.1. Experimental protocol 8 sensors are deployed in an area 100 m × 100m, giving the problem a complexity of 10,000 × 9999 × 9998 × 9997 × 9996 × 9995 × 9994 × 9993 combinations, which is almost 1032 .

Coverage is based on a binary setting, and each sensor is supposed to have a detection range of radius 30 m. Sensors are deployed one meter above the ground, which results in an asymmetry between the detecting positions and the detected positions (Fig. 9). The terrain has various elevations, the variations taking a Gaussian distribution with a standard deviation of 0.1 m to 1.2 m and a mean of 0. The terrain is almost flat, with only 0.1 m of standard deviation, but it can be quite complex, with 1.2 m of standard deviation, as shown in Fig. 14. A total of thirty tests are performed for each method, and each test involves 500 iterations, except for the traditional deterministic pattern, the Genetic Algorithm and the CODS with dynamic dominance. The traditional deterministic pattern makes only one placement. As we explained previously, CODS with dynamic dominance will terminate once no sensor is moved in an iteration, and so it is impossible to determine the exact number of iterations beforehand, but we set the maximum number of iterations to 500. In all the tests, other than for the traditional deterministic pattern, the initial sensor positions are set up randomly. For the Genetic Algorithm, we set up a population of 10 individuals, and so there would be 10 displacement evaluations in each generation. This means that the Genetic Algorithm only contains 500 = 50 generations, in order to make it comparable with the other 10 methods. The crossover rate set to 0.9, and a uniform crossover operator is implemented. The mutation rate set to 0.05, and the disturbance in the case of a mutation is a Gaussian distribution with standard deviation r = 10 m. In the literature, the crossover rate is generally set between 0.6 and 1 [5], and it has been suggested that a 0.9 crossover rate may be desirable for a Genetic Algorithm with a small population [27]. Consequently, we adopted a crossover rate of 0.9. For the mutation rate, Grefenstette found that the best Genetic Algorithm with a small population size has a mutation rate of 0.01 [14], whereas sensitivity studies on the mutation rate suggest that mutation rates in the range of 0.05 to 0.35 found the best minima [16]. Consequently, we adopted a mutation rate of 0.05. For Simulated Annealing, we set ˛ = 13 and ˇ = 12 for the temperature function. The parameters ˛ and ˇ are chosen to generate a smoothly declining cooling function. The number of iterations M is set to 500, so that the total number of search iterations for the Simulated Annealing, the Genetic Algorithms, Random Search, and our proposed method will be the same, which facilitate comparison of the results. We also set r = 10 m for the displacement distance, the same as for the Genetic Algorithm. 5.1.2. Experimental results The traditional deterministic placement pattern has the lowest coverage of all the methods tested. This is not surprising, given that traditional deterministic placement does not consider terrain elevations (Table 1). Of the purely heuristic methods, we note that Simulated Annealing with the displacement of only one sensor at a time generally performs better than Simulated Annealing with the displacement of all the sensors at a same. We also observe a similar phenomenon with Random Search. It seems that the proposed stepwise approach does have an advantage over the generic approach. A plausible explanation is that if we displace only one sensor at a time, the rest of sensors more or less preserve the structure of the network. As a result, an optimization algorithm would explore a better solution for a given network during the search, the properties of which are fairly stable. However, if we displace all the sensors at a time, an optimization algorithm may actually generate a completely different network, and this complete new network might prevent optimization algorithms from making use of the properties of a stable network. We also observe that Random Search with the displacement of only one sensor at a time performs even better than that of

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

475

Fig. 9. Terrain elevation distribution, where elevations have different standard deviations on a 100m × 100m region. The histogram is drawn with 100 bins.

Table 1 Coverage percentage on the artificial terrain for sensor placement optimization. The mean and standard deviation of these 30 tests are shown. “std” denotes standard deviation. The numbers in bold indicate the best performances, with a significance 0.01. Method Terrain Elevation

Random Search All at a Time

Random Search One at a Time

Simulated Annealing All at a Time

Simulated Annealing One at a Time

Genetic Algorithm

0.0 m of std 0.1 m of std 0.2 m of std 0.3 m of std 0.4 m of std 0.5 m of std 0.6 m of std 0.7 m of std 0.8 m of std 0.9 m of std 1.0 m of std 1.1 m of std 1.2 m of std

98.88 (0.44)% 74.37 (0.92)% 58.03 (1.31)% 49.99 (1.13)% 44.73 (1.34)% 39.94 (1.15)% 37.29 (1.22)% 34.99 (1.22)% 33.45 (1.47)% 32.41 (1.60)% 31.27 (1.69)% 30.48 (1.78)% 29.13 (1.00)%

99.34 (0.33)% 76.28 (0.85)% 60.25 (0.91)% 52.70 (1.31)% 48.17 (1.59)% 44.81 (1.65)% 42.18 (1.58)% 39.70 (1.56)% 37.64 (2.00)% 37.13 (1.51)% 35.80 (1.64)% 35.03 (1.66)% 34.29 (1.40)%

98.66 (0.58)% 73.61 (0.79)% 57.13 (0.97)% 48.76 (1.34)% 43.62 (1.42)% 39.04 (1.38)% 36.28 (1.45)% 33.86 (1.24)% 32.46 (1.53)% 31.29 (1.86)% 29.38 (1.60)% 28.61 (1.15)% 28.05 (1.93)%

99.66 (0.25)% 75.62 (1.15)% 59.91 (1.25)% 51.26 (1.35)% 46.63 (1.09)% 42.60 (1.65)% 40.29 (1.58)% 37.46 (1.93)% 35.27 (1.78)% 34.86 (2.13)% 32.84 (1.91)% 32.11 (2.05)% 31.72 (2.25)%

99.99 (0.04)% 79.77 (0.71)% 65.05 (1.04)% 57.91 (1.08)% 53.11 (1.72)% 49.53 (1.44)% 46.27 (1.77)% 45.06 (1.76)% 43.77 (1.53)% 42.39 (1.55)% 40.49 (1.85)% 39.80 (1.97)% 40.23 (2.03)%

Method Terrain Elevation

Traditional Deterministic Pattern

CODS Random Sensor Position

CODS Static Dominance

CODS Dynamic Dominance  =1

CODS Dynamic Dominance  = 0.01

0.0 m of std 0.1 m of std 0.2 m of std 0.3 m of std 0.4 m of std 0.5 m of std 0.6 m of std 0.7 m of std 0.8 m of std 0.9 m of std 1.0 m of std 1.1 m of std 1.2 m of std

99.65% 67.14% 49.46% 40.45% 29.46% 14.56% 20.62% 21.44% 20.91% 10.20% 10.28% 13.27% 13.76%

99.51 (0.55)% 77.76 (1.12)% 64.19 (1.55)% 58.59 (1.37)% 54.82 (1.49)% 51.35 (1.40)% 49.27 (1.25)% 48.00 (1.63)% 46.53 (1.63)% 45.79 (1.92)% 44.16 (1.26)% 44.07 (1.33)% 43.93 (1.36)%

99.49 (0.34)% 77.99 (1.29)% 64.45 (1.29)% 58.42 (1.32)% 55.64 (1.54)% 53.38 (1.34)% 51.13 (1.41)% 50.43 (1.28)% 48.85 (1.77)% 48.16 (1.58)% 47.23 (1.57)% 46.45 (1.45)% 46.83 (1.11)%

99.51 (0.55)% 76.64(1.30)% 62.96 (1.38)% 58.41 (1.96)% 54.58 (1.28)% 52.87 (1.66)% 54.90 (1.08)% 51.14 (2.50)% 54.48 (0.97)% 52.34 (1.41)% 53.77 (0.32)% 52.28 (0.74)% 51.88 (1.27)%

99.37 (0.52)% 76.75 (1.31)% 63.21 (1.36)% 56.90 (2.59)% 54.45 (2.08)% 53.15 (1.61)% 51.13 (2.37)% 51.16 (2.08)% 50.69 (1.82)% 50.05 (1.78)% 49.09 (1.93)% 48.16 (1.88)% 48.08 (1.85)%

476

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

Table 2 Coverage percentage on real world terrain in Raleigh, NC, for sensor placement optimization. The mean and the standard deviation of these 30 tests are shown. Bold numbers indicate the best performances with the significance 0.01. Random Search All at a Time 39.46 (0.87)%

Random Search One at a Time 45.03 (0.85)%

Simulated Annealing All at a Time 39.69 (0.79)%

Simulated Annealing One at a Time 44.84 (1.00)%

Genetic Algorithm

Traditional Deterministic Pattern

CODS Random Sensor Position

CODS Static Dominance

31.95%

53.32 (1.07)%

54.06 (0.91)%

CODS Dynamic Dominance  =1 56.37 (1.20)%

CODS Dynamic Dominance  = 0.01 51.71 (1.13)%

Simulated Annealing. We suspect that Random Search becomes somewhat more organized when only one sensor is displaced at each iteration, and so from this perspective Simulated Annealing does not necessarily have an advantage over Random Search. The Genetic Algorithm apparently performs better than both Simulated Annealing and Random Search, and performs best when terrain irregularity is low. Although the Genetic Algorithm may displace only one sensor at a time, or all the sensors at a time, we note that after a few iterations there is a striking similarity among individuals in the population. Usually, fit individuals are differentiated from one another by only one or two genes. The implication is that the Genetic Algorithm is closer to displacing one sensor at a time after a few iterations. The Genetic Algorithm does well in flat terrain, however, most CODS schemes perform better when the terrain is more complex. The sensor selection mechanism for the single-move-approach has a clear advantage over global coverage, but the effect becomes stronger as the irregularities grow larger. The static dominance mechanism further improves the performance of sensor selection with the random sensor position selection scheme, but the extent of that improvement may not be significant, especially when terrain irregularities are small. Finally, the dynamic dominance scheme can be a promising way to improve performance, especially with large terrain irregularities. To summarize, CODS methods generally perform better than generic optimization algorithms in complex terrain. CODS with dynamic dominance performs well when there is a high degree of terrain irregularity, whereas CODS with random sensor position selection and CODS with static dominance perform better when there is little terrain irregularity. 5.2. Experiment on real world terrain To conduct an experiment in the real world, we selected a mountainous area in the state of North Carolina in the USA. The data come from a raster layer map in the OSGeo Edu dataset, which stores geospatial information about parts of North Carolina. The data were extracted from the Geographic Resources Analysis Support System (GRASS) [13]. Specifically, we focused on a portion of the map that covers a small watershed in a rural area near Raleigh, the capital of North Carolina. The coordinates of the environment are as follows: N: 220750, S: 220615, E: 638480, W: 638300. Based on these coordinates, a map of 135 rows and 180 columns was composed, for a total of 24300 positions. The data (terrain elevations) range from 123:9 m to 131:5 m. 5.2.1. Experimental protocol We deploy 20 sensors in an area 135 m × 180 m, which gives the problem a complexity of almost 5.15 × 1087 combinations. Coverage is based on a binary setting, and each sensor is supposed to have a detection range of radius 30 m. Because the terrain is relative flat, the sensors are deployed directly on the ground. In each of 30 tests of a method, 5000 displacement iterations are conducted, except for the Genetic Algorithm and CODS

48.03 (1.34)%

with dynamic dominance. CODS with dynamic dominance makes 17 ∼ 20 iterations, but with various numbers of displacement evaluations in each iteration. In all the tests, the initial sensor positions are set up randomly. For the Genetic Algorithm, we set up a population of 100 individuals, which means that there are 100 displacement evaluations in each generation. As a result, the Genetic Algorithm only contains 5000 = 50 generations, to make it comparable with the other 100 methods. The crossover rate is 0.9 and a uniform crossover operator is implemented. The mutation rate is 0.05, and the disturbance in the case of a mutation is a Gaussian distribution with standard deviation r = 10 m. For the Simulated Annealing, we set ˛ = 13 and ˇ = 12 for the temperature function, and r = 10 m for the displacement distance, the same as for the Genetic Algorithm. 5.2.2. Experimental results The results on the real world terrain in Raleigh, NC (Table 2) are consistent with what we observed on artificial terrains: the stepwise approach performs better than the generic approach, and the Genetic Algorithm outperforms both Simulated Annealing and Random Search. However, the three proposed CODS methods significantly outperform all the other methods in our experiment, as demonstrated in Fig. 12. For CODS with static dominance, the static dominance information can be extracted at each discretized point in the region of interest, as shown in Fig. 11. It can be seen from this figure that the static dominance can be quite different from that in the raw terrain elevation map, which implies that standard optimization methods, such as Gradient Descent and Quadratic Programming, may not be adequate. Also, it can be noted that only the static dominance map used by CODS with static dominance is shown, because the dynamic dominance map used by CODS with dynamic dominance is also influenced by other sensor positions, and so may be different given different sensor placement. Of the three CODS methods, CODS with random sensor position selection and CODS with static dominance are quite similar in terms of performance, whereas CODS with dynamic dominance ( = 1) outperforms these two to some extent. But, when we reduce  to 0.01, CODS with random sensor position selection and CODS with static dominance outperforms CODS with dynamic dominance. This may be due to the relatively smooth terrain in the area tested. The value of  is a trade-off between optimization performance and optimization cost. The larger  becomes, the better the optimization result, and the more time is needed for optimization. Our experiment more or less confirms the applicability of the proposed methods for sensor placement optimization for real world applications. The NC terrain in Fig. 10 is quite natural, and does not contain substantial peaks or valleys on its surface. Nevertheless, the proposed CODS methods prove to be useful. Consequently, we can conclude that the CODS methods will be useful for real world sensor placement applications.

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

477

Fig. 10. Terrain elevation of our experimental area in Raleigh, NC. Open source data extracted from the Geographic Resources Analysis Support System (GRASS) sample dataset [13].

Fig. 11. Terrain static dominance extracted from our experimental area in Raleigh, NC. Note the difference between the static dominance and the original terrain in Fig. 10. Even though the original terrain is relatively smooth, its static dominance reveals a rather rough surface.

Fig. 12. Boxplot of algorithm performances on the experimental terrain in Raleigh, NC. RS-all denotes Random Search All at a Time, RS-one denotes Random Search One at a Time, SA-one denotes Simulated Annealing One at a Time, SA-all denotes Simulated Annealing All at a Time, GA denotes Genetic Algorithm. CODS-rand denotes CODS with random sensor position selection, CODS-stat denotes CODS using static dominance, and CODS-dyn denotes CODS using dynamic dominance with  = 1. CODS-dyn (1%) denotes CODS using dynamic dominance with  = 0.01.

6. Discussion Experimental results on our sensor placement framework suggest that the CODS is fully feasible and shows good promise in

optimizing sensor placement. In general, CODS performs better than Random Search and Simulated Annealing. In this section, we investigate the relationship between terrain irregularity and the relative performances of sensor placement algorithms.

478

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

Table 3 Properties of the static dominance distribution of artificial terrains. Signal-to-noise ratio (SNR) is defined as mean divided by standard deviation. Measurement/Terrain

Mean

Standard Deviation

Skewness

Kurtosis

Signal-to-noise ratio (SNR)

0.0 m of std 0.1 m of std 0.2 m of std 0.3 m of std 0.4 m of std 0.5 m of std 0.6 m of std 0.7 m of std 0.8 m of std 0.9 m of std 1.0 m of std 1.1 m of std 1.2 m of std

2143.5 1369.5 975.9 763.2 618.2 499.6 426.1 373.1 330.2 304.4 278.3 260.6 245.7

555.2 339.6 262.6 252.5 264.1 260.2 259.8 251.8 243.8 236.7 230.8 223.1 218.0

−0.3190 −0.3857 −0.1224 −0.0288 0.0096 0.1801 0.3585 0.5088 0.6750 0.7379 0.8713 0.9578 1.0067

1.9272 2.0931 2.1556 2.4841 2.4584 2.4178 2.3606 2.5073 2.7266 2.7836 3.0141 3.2250 3.3596

3.8608 4.0327 3.7163 3.0226 2.3408 1.9201 1.6401 1.4817 1.3544 1.2860 1.2058 1.1681 1.1271

6.1. Comparison of the generic approach and the stepwise approach First, we can confirm the usefulness of a stepwise approach for sensor placement optimization. Using Random Search and Simulated Annealing, we implemented both a stepwise approach (move only one sensor at each iteration) and a generic approach (move multiple sensors at each iteration). Our experimental results suggest that a stepwise approach offers a clear advantage over a generic approach. We also note that the CODS with random sensor position selection can perform better than the Genetic Algorithm on terrains with a standard deviation larger than 0.3 m and on the real terrain tested in Raleigh, NC. We are surprised by this, because CODS with random sensor position selection is far less sophisticated than the Genetic Algorithm, but it follows a stepwise optimization approach and only takes into account the area exclusively covered by each individual sensor. The Genetic Algorithm, by contrast, most likely starts

with a generic optimization approach, as it tends to displace multiple sensors at each iteration. But, as the iterations start to converge, the Genetic Algorithm behaves more and more like a stepwise optimization approach, since in the end there is a striking similarity among all the individual sensor placement patterns. Still, the superiority of the CODS performance over that of the Genetic Algorithm may provide some indirect indication of the value of a stepwise optimization approach.

6.2. Terrain dominance analysis Although all terrains are generated with a Gaussian distribution with an elevation mean equal to 0 and various elevation standard deviations, their dominance exhibits a quite different pattern. Bearing in mind that dominance is defined as the number of points that a sensor position can cover, the dominance distribution will be uniform when the terrain is completely flat, but will shift from

Fig. 13. Dominance distribution of artificial terrains, the elevations of which have different standard deviations on a 100 m × 100 m region. The histogram is drawn with 100 bins.

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

479

Fig. 14. Scatter plots of the improvements of the three cods methods over the Random Search and various distribution statistics.

negatively skewed to positively skewed as the terrain elevation standard deviation increases, as shown in Table 3 and Fig. 13. As the terrain becomes more complex, the average dominance, as well as the standard deviation of the dominance, decrease sharply, but the former decreases at a faster rate than the latter. By contrast, both skewness and kurtosis increase. Note that even complete terrain does not exhibit a uniform dominance, and this is because positions at terrain borders cover far fewer points than those in the center. There are many traditional heuristic search algorithms; however, we note that they have three disadvantages in common: (1) none of them makes direct use of terrain information, in spite of the importance of terrain effects, probably because of the complexity of those effects; (2) none of them takes into account intersensor relationships, and only the final coverage is considered as an objective function; and (3) the effect of terrain irregularities on these search algorithms is not clear. In other words, systematic approaches, such as Genetic Algorithms or Simulated Annealing, may turn out to be better than a pure Random Search, but this may depend on the terrain characteristics, although this may not be the case if the terrain exhibits a high degree of irregularity. To summarize, current heuristic search algorithms provide a better way to solve the problem than deterministic methods, but are far from being optimal. 6.3. Effect of terrain irregularity on algorithm performance As terrain irregularity increases, the number of obstacles in any given area also increases, and the coverage of any sensor deployed

will decrease. As a result, global coverage decreases as terrains become more irregular. However, we also observe that the extent of terrain irregularity has some influence on the performance of search algorithms. When the terrain is almost flat, i.e. less than 0.2 m of standard deviation, irregular terrain does not pose much of a problem for the sensors, since they are all placed 1 m above the ground. In this case, we note that CODS with random sensor position selection or with static dominance may actually perform better than CODS with dynamic dominance. Nevertheless, as terrain irregularity increases, there is a marked deterioration in the performance of all the algorithms, except for CODS with dynamic dominance. This algorithm is more resistant to terrain irregularity than the other search algorithms. The fact that CODS with dynamic dominance performs better than CODS with static dominance in irregular terrain, but slightly worse in flat terrain, has an important implication. The main difference between CODS with dynamic dominance and CODS with static dominance is subtle. The former tends to maximize the marginal contribution of the crowded-out sensor in each iteration, whereas the latter only tends to increase, and not maximize, the marginal contribution of the crowded-out sensor. The maximization works well when the terrain is irregular, i.e. when the dominance distribution is positively skewed, but not when it is flat. If we examine the dominance distribution on terrains closely, we can see that terrains with large irregularities exhibit positive skewness, i.e. irregular terrains have fat tails, as shown in Fig. 13 and in Table 3. By contrast, more regular terrains have negative skewness, and they have more points with very large dominance. As a result,

480

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

Table 4 Correlation between optimization algorithm performances over random search (all at a time) and properties of static dominance distribution, ignoring the terrain with zero elevation. Correlation Traditional Deterministic Pattern Skewness Kurtosis SNR

−0.5347 −0.4174 0.6912

Simulated Annealing All at a Time

Simulated Annealing One at a Time

Genetic Algorithm

CODS Random Sensor Position

CODS Static Dominance Effect

CODS Dynamic Dominance Effect

−0.6199 −0.6731 0.5148

0.3121 0.0834 −0.4977

0.8466 0.7185 −0.9242

0.9174 0.7924 −0.9847

0.9361 0.7980 −0.9920

0.9763 0.8515 −0.9681

Table 5 The average additional calculations needed for CODS with dynamic dominance using  = 0.01 as the percentage of random search calculation cost. The estimation is the average of 30 tests. Terrain Standard Deviation Additional Calculations

0.0 m 0.85%

0.1 m 6.31%

0.2 m 11.47%

0.3 m 13.15%

0.4 m 16.94%

0.5 m 16.72%

0.6 m 18.93%

Terrain Standard Deviation Additional Calculations

0.7 m 17.65%

0.8 m 22.20%

0.9 m 20.71%

1.0 m 21.85%

1.1 m 21.01%

1.2 m 21.14%

Raleigh, NC 1.98%

the maximization only selects the point with the largest dominance for the current iteration, but may not select the one that will turn out to be the best after all the iterations have been conducted. This means that longer iterations with a smaller increase may turn out to be better than shorter iterations with a larger increase when the dominance distribution exhibits negative skewness. To better understand the effect of dominance distribution, we use Random Search as the baseline, and examine the correlation between algorithm performances and skewness, kurtosis, and signal-to-noise ratio (SNR), defined as mean divided by standard deviation. Based on the correlation measurement in Table 4, it seems that all the CODS schemes and the Genetic Algorithm perform better than Random Search as the terrain becomes more complex and the skewness and kurtosis of the dominance distribution increase. We also examine the relationship between the signal-to-noise ratio (SNR) and search methods. We note that when the SNR decreases, i.e. when signals become noisier, CODS methods and the Genetic Algorithm demonstrate more resistance to noise than Simulated Annealing. Simulated Annealing with one sensor at a time is more resistant to noise than Simulated Annealing with all the sensors at once.

the calculation cost increase is not linear, and seems to converge at just under 25% (Fig. 15). In the real world terrain in Raleigh, NC, 20 × 5000 = 100,000 overall were carried out for each test, with 20 sensors for Random Search, the required additional calculations representing only 1.98% of that of Random Search with  = 0.01. Note that the terrain tested in Raleigh, NC, is relatively flat. The small number of additional calculations may explain the superior optimization performances of the other two CODS methods. Moreover, CODS with dynamic dominance can adjust the number of additional calculations needed by simply changing , which should be proportional to that of needed additional calculations. If we compare the performances for  = 1 and  = 0.01 in Table 1, we can see that, in general, the lower  would lead to a lower performance in complex terrain, but this performance is still better than that of other algorithms on complex terrains with a standard deviation larger than 0.6 m.

6.4. Complexity of CODS

(1) Multiple agent composition The optimization concerns a group of N agents, S, the individual agents si , 1 ≤ i ≤ N having an identical role and functions, but differing from one another in their variables.

While CODS with random sensor position selection and CODS with static dominance do not require additional calculations to evaluate potential sensor positions in each iteration, CODS with dynamic dominance does require some extra calculations, although it is not easy to estimate how many, because the number varies with terrain irregularity, how many sensors are deployed, and the sensing range. As it is quite difficult to theoretically estimate the computational complexity of CODS with dynamic dominance, we measured the empirical number of calculations on different terrains using CODS with dynamic dominance. In our experiments on artificial terrains, we implemented optimization algorithms with 500 iterations. Given that 8 sensors were deployed, 8 × 500 = 4000 evaluations were carried out overall for each test for the random search. For CODS with dynamic dominance, additional evaluations are needed, and the number of calculations varies, depending on the terrains. Assuming we adopt  = 0.01, the required additional calculations range from 0.85% to 22.20% of that of Random Search, again depending on terrain irregularity, as shown in Table 5. We note that the more irregular the terrain, the more additional calculations are needed for CODS with dynamic dominance. But

6.5. Generalization of CODS Finally, we stress that CODS can be applied not only to sensor placement optimization, but also to all non convex multi-agent optimizations that satisfy three conditions:

Fig. 15. Additional calculations required for CODS with dynamic dominance,  = 0.01.

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

(2) Known variables to optimize The goal is to optimize the variables si for agent si , for all agents si ∈ S, 1 ≤ i ≤ N. (3) Known objective function An objective function C(s) that takes into account environmental effects and agent variables can measure the performance of group of agents. The marginal contribution can also be derived as the difference between C(s) and C(s \ si ). CODS algorithms can be useful not only for sensor placement optimization, but also for similar non-convex optimization problems. Its impact is therefore not constrained to a specific field.

481

demonstrate better robustness to terrain irregularities than other conventional methods. Based on our experiments, we can conclude that CODS provides a concrete solution to sensor placement optimization. Besides, it can be generalized for non convex optimization problems that deal with multiple identical agents, a known objective function, and known variables to optimize. Our future work will involve measuring and characterizing natural terrain irregularities using dominance distribution, and selecting the most suitable search algorithm for sensor placement.

References 7. Conclusion and future work The contribution of this paper is threefold: (1) we differentiate a stepwise optimization approach from a generic optimization approach, and show that the stepwise approach is better suited for sensor placement optimization in both Random Search and Simulated Annealing; (2) we propose a stepwise optimization approach, Crowd-Out Dominance Search (CODS), that uses terrain information and intersensor relationship information to facilitate the optimization; and (3) we investigate the effect of terrain irregularity on optimization algorithm performances, and show that terrain irregularity can cause optimization performances to deteriorate, but the proposed method demonstrates better resistance to terrain complexity than other optimization methods. The proposed CODS implements an iterative optimization process. Unlike the generic optimization approach, CODS clearly indicates which sensor to displace at each search step, as well as the positions for this sensor to occupy. To summarize, our experimental results indicate the following: (1) For iterative sensor placement optimization, a stepwise approach is more suitable than a generic approach, and so it may be better to displace one sensor at a time at each optimization iteration. (2) If a search algorithm displaces one sensor at a time, both static and dynamic dominance based on terrain information can be explored to decide where a sensor should be placed in an iteration. (3) Given that exhaustive searching is not feasible, the Genetic Algorithm outperforms both Random Search and Simulated Annealing. All three CODS methods perform better than traditional optimization schemes when the terrain is irregular. Dynamic dominance performs considerably better than the other algorithms tested when there is a large degree of irregularity. The proposed methods show that information on terrain elevation can be extracted as the dominance factor, and that this factor may provide critical information to improve sensor coverage in sensor placement optimization. CODS with random sensor position selection uses only coverage exclusivity to select the sensor to be displaced, whereas CODS with static dominance also uses a static dominance extracted from the terrain to facilitate optimization, and CODS with dynamic dominance uses a dynamic dominance instead, which depends on both the terrain and the positions of the other sensors. Finally, we observe that the different dominance distributions caused by terrain irregularities have some influence on the performances of search algorithms. The performance improvement of the proposed CODS method over Random Search (sensors moved all at once) shows a rather strong correlation with terrain skewness and SNR, 98% and −99%, respectively. To conclude, CODS methods

[1] I.N. Athanasiadis, P.A. Mitkas, An agent-based intelligent environmental monitoring system, Manag. Environ. Qual. 15 (2004) 238–249. [2] N. Ahmed, S.S. Kanhere, S. Jha, Probabilistic coverage in wireless sensor networks, in: LCN 2005: Proceedings of the IEEE Conference on Local Computer Networks 30th Anniversary, 2005, pp. 672–681. [3] V. Akbarzadeh, A.H.R. Ko, C. Gagné, M. Parizeau, Topography-aware sensor deployment optimization with CMA-ES 11th International Conference on Parallel Problem Solving from Nature, vol. 2, 2010, pp. 141–150. [4] X. Bai, S. Kumar, D. Xuan, Z. Yun, T.H. Lai, Deploying wireless sensors to achieve both coverage and connectivity, in: Proceedings of the 7th ACM International Symposium on Mobile Ad Hoc Networking and Computing, 2006, pp. 131–142. [5] S. Baluja, R. Caruana, Removing the Genetics from the Standard Genetic Algorithm, in: Proceedings of the 12th International Conference on Machine Learning, 1995, pp. 38–46. [6] A.P. Bhondekar, R. Vig, M.L. Singla, C. Ghanshyam, P. Kapur, Genetic algorithm based node placement methodology for wireless sensor networks Proceedings of the International MultiConference of Engineers and Computer Scientists, vol. 1, 2009. [7] A. Boukerche, X. Fei, A coverage-preserving scheme for wireless sensor network with irregular sensing range, Ad Hoc Netw. 5 (8) (2007) 1303–1316. [8] C. Cai, S. Ferrari, Information-driven sensor path planning by approximate cell decomposition, IEEE Trans. Syst. Man Cybern. B 39 (3) (2009) 672–689. [9] S. Chen, Thermo-visual video fusion using probabilistic graphical model for human tracking, IEEE Int. Symp. Circuits Syst. 2008 (2008). [10] S.S. Dhillon, K. Chakrabarty, Sensor placement for effective coverage and surveillance in distributed sensor networks, IEEE Wirel. Commun. Netw. (2003) 1609–1614. [11] S. Eidenbenz, C. Stamm, P. Widmayer, Inapproximability results for guarding polygons and terrains, Algorithmica 31 (1) (2001) 79–113. [12] J. Ferber, Multi-Agent Systems: An Introduction to Artificial Intelligence, Addison-Wesley, 1999. [13] Geographic Resources Analysis Support System GIS sample data, GRASS Development Team, 2011 http://grass.fbk.eu/download/data.php [14] J.J. Grefenstette, Optimization of control parameters for genetic algorithms, IEEE Trans. Syst. Man Cybern. 16 (1986) 128. [15] C. Guestrin, A. Krause, A.P. Singh, Near-optimal sensor placements in Gaussian processes, Int. Conf. Mach. Learn. (2005) 265–272. [16] R.L. Haupt, S.E. Haupt, Practical Genetic Algorithms, John Wiley & Sons, New York, 1998. [17] M. Hefeeda, H. Ahmadi, Energy efficient protocol for deterministic and probabilistic coverage in sensor networks, IEEE Trans. Parallel Distrib. Syst. 99 (2009) 579–593. [18] C. Hewitt, J. Inman, DAI betwixt and between: from “intelligent agents” to open systems science, IEEE Trans. Syst. Man Cybern. 21 (6) (1991) 1409–1419. [19] K. Kar, S. Banerjee, Node placement for connected coverage in sensor networks, in: Proceedings of the Workshop on Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks, 2003. [20] S. Kumar, T.H. Lai, J. Balogh, On k-coverage in a mostly sleeping sensor network, Wirel. Netw. 14 (2006) 277–294. [21] H.H. Gonzalez-Banos, J.C. Latombe, A randomized art-gallery algorithm for sensor placement, in: Proceedings of the 17th ACM Symposium on Computational Geometry, 2001, pp. 232–240. [22] F.Y.S. Lin, P.L. Chiu, A near-optimal sensor placement algorithm to achieve complete coverage-discrimination in sensor networks, IEEE Commun. Lett. 9 (1) (2005) 43–45. [23] B. Liu, D. Towsley, A study of the coverage of large-scale sensor networks, in: Proceedings of the IEEE International Conference on Mobile Ad-hoc and Sensor Systems, 2004, pp. 475–483. [24] J.V. Nickerson, S. Olariu, Protecting with sensor networks: attention and response, in: Proceedings of the 40th Annual Hawaii International Conference on System Sciences, 2007. [25] J. O’Rourke, Art Gallery Theorems and Algorithms, Oxford University Press, 1987. [26] J.H. Seo, Y.H. Kim, H.B. Ryou, S.J. Kang, A genetic algorithm for sensor deployment based on two-dimensional operators, in: SAC 2008: Proceedings of the 2008 ACM symposium on Applied computing, 2008, pp. 1812–1813. [27] M. Srinivas, M. Lalit, Patnaik, Genetic algorithms: a survey, IEEE Comput. 27 (6) (1994) 17–26.

482

A.H.-R. Ko et al. / Applied Soft Computing 28 (2015) 466–482

[28] H.R. Topcuoglu, Positioning and utilizing sensors on a 3-D terrain. Part I – Theory and modeling, IEEE Trans. Syst. Man Cybern. C 41 (3) (2011) 376–382. [29] Y.C. Wang, Y.C. Tseng, Distributed deployment schemes for mobile wireless sensor networks to ensure multilevel coverage, IEEE Trans. Parallel Distrib. Syst. 19 (9) (2008) 1280–1294.

[30] M. Wooldridge, An Introduction to MultiAgent Systems, John Wiley & Sons Ltd, 2002. [31] L. Zhang, et al., Information fusion based smart home control system and its application, IEEE Trans. Consum. Electron. 54 (3) (2008) 1157–1165. [32] Z. Zhou, S. Das, H. Gupta, Connected k-coverage problem in sensor network, in: Proceedings of 13th International Conference on Computer, 2007.

Suggest Documents