Optimizing Deployment Cost in Camera-Based Wireless Sensor Networks

. We discuss in this paper a deployment optimization problem in camera-based wireless sensor networks. In particular, we propose a mathematical model to solve the problem of minimizing the number of cameras required to cover a set of targets with a given level of quality. Since solving this kind of problems with exact methods is computationally expensive, we rather rely on an adapted version of Binary Particle Swarm Optimization (BPSO). Our preliminary results are motivating since we obtain near-optimal solutions in few iterations of the algorithm. We discuss also the relevance of hybrid meta-heuristics and parallel algorithms in this context.


Introduction
Wireless Sensor Networks (WSN) are particular ad-hoc networks defined as a set of cooperating nodes disseminated in a given geographic area in order to collect its data about some phenomenon autonomously. Specifically, Camerabased wireless sensor networks (WSN) form an emerging research area with many promising applications. Potential applications include remote video surveillance, monitoring and assisting elderly and health patients, and habitat monitoring.
We study in this paper the cost deployment of camera-based WSNs, where the main concern is to determine the optimal minimum number of cameras, along with their positions and their orientations to track a given set of targets with a prescribed level of quality. This problem can be solved with various exact mathematical programming tools such as Branch and Bound. However, as the problem size increases, solving such problems using these exact methods becomes computationally intractable. In fact, Ai and Abouzeid [1] have demonstrated that this problem is NP-hard. A traditional way to deal with such difficult problems is to rely upon meta-heuristic methods. In particular, we adapt the generic procedure of Particle Swarm Optimization (PSO) to solve this deployment problem. We also introduce a quality coverage parameter which serves to ensure that each target in the solution is covered with a sufficient level of quality. Indeed, as the targeting objects move away from the sensing camera, the level of details falls off. Our preliminary results show that the proposed method behaves well both in computational performances and solution quality.
The rest of paper is organized as follows. Section 2 reviews the relevant literature on this topic. Section 3 formulates the problem and describes the proposed coverage model. The detailed mathematical model is given in Section 4, while the proposed PSO-based algorithm is described in Section 5. Section 6 assesses and discusses the obtained results. Finally, The last section concludes the paper and suggests some future research directions.

Related Works
Existing literature in the field distinguishes typically two important kinds of deployment problems: target coverage and area coverage. We focus here on the first one. One version of the problem consists on covering a maximum number of targets with a minimum number of sensors. In [1], authors proposed an exact integer linear program (ILP) and a Centralized Greedy Algorithm (CGA) for the maximum coverage with minimum sensors (MCMS) problem. Then, they provided a Distributed Greedy Algorithm (DGA) solution. They showed that DGA does better than the two other methods (ILP and CGA) by incorporating a measure of the sensors' residual energy into DGA. Aziz et. al. [2] proposed a new algorithm to optimize sensor coverage using PSO and Voronoi diagrams. PSO is used to find the optimal deployment of sensors providing the best coverage, while Voronoi diagram is used to evaluate the fitness of the solution. They showed that the proposed algorithm achieves a good coverage with a better time efficiency than existing approaches.
Authors in [12] improved the field of view (FOV) coverage of a camera network. They considered randomly scattered cameras in a wide area, where each camera may adjust only its orientation and not its localisation. They also implemented a PSO algorithm and efficiently found an optimal orientation for each camera. They considered also region of interest in the search space (ROI) and occlusions. In [6], authors considered the area coverage problem in a 2D/3Dgrid space. The solution process was based on Particle Swarm Optimization Inspired Probability (PSO-IP). For comparison purposes, they also implemented alternative methods based on Tabu Search, genetic algorithms and simulated annealing. Results showed that the proposed PSO-IP overcomes the three other methods especially with large instances. Unlike these two works, we deal with targets coverage not area coverage. We give also a mathematical model to the coverage problem. Note that our solution approach is partly inspired by this last work. But as far as we know, no existing work has formulated a problem similar to ours, in particular by considering a continuous measure of sensing quality.

Problem Definition
We assume that a set of N camera sensors {S i : i = 1, . . . , n} are deployed on the euclidean space A. For each camera S i , we are given its Cartesian coordinates (X S i , Y S i ) and its orientation ϕ in A. The field of vision of each camera is modeled as in [8] by isosceles triangle as depicted in Fig. 1, where α represents the aperture of the camera and W d its working distance.
Field of View A target located on the coordinates (x, y) is assumed to be covered by a given camera with coordinates (x s , y s ) if the three following constraints are satisfied:

Coverage Model
Coverage models determine first if a given target can be covered or not by some sensor, but can also measure a corresponding quality parameter [11]. This is ac-complished by calculating the geometric relation between sensors and targets. In most cases, it consists in calculating the euclidean distance and angles, but some research works assume also that the sensing quality of a sensor is reduced with the increase of the distance away from the sensor [5], [10]. In our case, we make a similar assumption by adopting a directional disk model where the coverage parameter for a given sensor/target pair is represented by a non negative real number calculated as follows: where d(s, z) is the distance separating camera s from target z, α is the exponent attenuation and C is a constant. In particular, we assume that quality decreases quadratically as a function of the distance (α = 2).

Mathematical Model
The adopted model assumes a known number of targets, in a given space, where the objective is to cover these targets optimally. Table 1 The objective of our optimization problem is defined as follows: This objective implies the minimization of the number of deployed cameras, provided that the following constraints are satisfied.
The above constraint ensures that at most one angle is active per each camera. ∑ m k=1 O ik = 0, corresponds to the situation where no camera is deployed at location i.
This constraints ensures that each target is covered by at least one camera. Now, the minimum coverage quality for each target is satisfied through the following constraint: where C is a constant and α is the attenuation exponent. Given some locations of a camera i oriented with angle k, the following three constraints enforce, as described above in (1a),(1b) and (1c), that some target j is covered where L 1 , L 2 , L 3 are large constants, which are introduced to make theses constraints meaningless when b ij = 1. The above objective with the introduced constraints define a mixed-integer problem which is hard to solve in general. In particular, it is not easy to move from one solution to another when applying some meta-heuristic algorithm for example. Hence, we relax this model by moving the coverage constraints (5)-(6) into the objective, as follows.

Particle Swarm Optimization
Particle swarm optimization (PSO) is a meta-heuristic method invented by Russel Eberhart (Electrical Engineer) and James Kennedy (socio-psychologist) in 1995. This algorithm, inspired by social behaviour, has been introduced as an optimization tool dealing with real numbers initially and with integers lately [7]. It is mostly inspired from the manner in which a flock of birds moves with various individuals leading the flock during the travel at different periods of time. The PSO algorithm consists of a group of individuals named particles. Each particle p < Swarm_size is a potential solution to an optimization problem, having its own position in the space search. After each iteration, it moves in function of one of its components: -Actual velocity V ; -Best solution L b ; -Actual position X ; -Best neighbourhood solution G best ; The movement of each particle obeys to the equations: where X = (x ik ), V = (v ik ), i = 1, 2, . . . , n, k = 1, 2, . . . m, denote the distance/angle and the velocity vectors, respectively. ω is the inertia weight, r 1 and r 2 are two random numbers uniformly chosen in [0, 1], and C 1 , C 2 are constant values. Finally k is the iteration index.
A given solution for the deployment problem is a number of cameras with corresponding positions and active angles (see Fig. 3a). We adopt a binary representation of the position vector X. Besides, since PSOs require movements, we define two different types of moves: 1. Rotation: selecting a different camera for an active camera. 2. Displacement: moving one camera from position i to position i . These movements are guided by the velocity parameter. Thus, we redefine (11) as follows: Where alea is a random number from [0, 1], then Eq. (12) become: A camera rotation is defined through the logical operator "exclusive OR", i.e., to invert a zero bit to one in the X vector, while a camera displacement is defined through a binary shift, and this will be a position swap. As a stopping criteria, we define a maximum number of iterations. Algorithm 1 gives an overview of our implemented PSO.
For comparison purposes, we implemented a standard Simulated Annealing Algorithm (SA) [9]. The basic idea behind comes from the principles of statistical mechanics whereby the annealing process requires heating and then slowly cooling a substance to obtain a strong crystalline structure. At each iteration, a random neighbour is generated. Movements that improve the cost function are always accepted. Otherwise, the neighbour is selected with a given probability that depends on the current temperature and the amount of degradation ∆E of the objective function. This probability is calculated as follows: where ∆E represents the fitness difference. This is algorithm is used in largescale optimization problems in wireless sensors networks as in [6], [4]. alea=rand(); 8: for all (p < Swarm_size) do 9: Calculate V(p) using (13); 10: move(p); 11: if Fitness(p) < L b (p) then

Experiments and Results
We discuss in this section various experiments related to our approach. First, the most important parameter to be defined in order to implement a PSO algorithm is the solution coding or representation. Each solution is encoded in binary where the vector X represents camera positions and angles (Fig 3a) and (Fig 3b). The experiments were executed on a computer with Intel © Core TM i3-2350 M CPU @ 2.30 GHz CPU and 4.0 GB of RAM. 1 i n X 1 · · · 0 · · · 0 · · · 1 · · · 1 · · · 0 1 k m 1 k m 1 k m  Table 2a gives parameters used to implement the method. Swarm_size and Steps represent the number of particles (potential solutions) involved in PSO and iteration's number, respectively. C 1 and C 2 represent learning factors of the algorithm, most often set to 2.0 [3]. W d represents the working distance of a camera (extrinsic parameter), X max and Y max are the grid dimensions. Q max and Q min  are, respectively, the maximum and the minimum quality coverage of a camera. Here we require a certain level of quality in target covering. C is a constant which specifies how the quality coverage decreases when moving away from the sensor. In Fig 4, we give an initial solution then a final one found by PSO algorithm. The figures show that we can easily find a good solution consisting of two cameras covering nine targets. As shown in Tab 2b, finding such a solution does not require more than a hundred of iterations in a very brief time for a small number of targets (less than a half of a second). We observe also the high success rate over all executions. As shown in (Fig 4d) we clearly obtanin better average fitness by the proposed PSO than the one obtained by the SA for fifty executions of the two methods.
Finally, note that compared to Y. Morsly et. al. approach in [6] and Yi-Chun Xu et al. in [12], we consider a coverage quality parameter and deal with targets instead of area coverage. Here we must determine camera's positions and orientation, while coverage quality can be specified by the user. Even if we assume mobile targets, the proposed method can easily re-adapt the solution to the new scenario; this is guaranteed by the camera's movement (displacement and rotation).

Conclusion
We have proposed a mathematical mixed-integer model for the deployment of camera-based wireless sensor networks. Solving such models with exact is only feasible with small problem instances, beyond which, the use of approximative method such as meta-heuristics is required. In literature, only a few papers treat the target-based coverage model along with a coverage quality parameter. Hence, we have introduced an additional problem parameter to account for coverage quality. We have adapted a PSO algorithm to minimize the number of active cameras used to cover targets with certain quality. The proposed method gives easily a significant improvement of the initial random solution in few steps. Compared to SA, our PSO returns better solutions. We envisage later to calculate exact solutions by a ILP solver and then compare the results with ours. Moreover, we are working to introduce connectivity and energy-efficiency criteria to our problem. Finally, we are considering to use parallel versions of PSO and evaluate their performance over multiple platforms.