Clustering sensors in wireless ad hoc networks operating in a threat environment Dipesh J. Patel,
Rajan Batta,
∗
and
Rakesh Nagi
Department of Industrial Engineering and Center for Multisource Information Fusion, 342 Bell Hall, University at Buffalo (SUNY), Buffalo, NY 14260 Submitted: December 2002 Revised: October 2003 Second Revision: March 2004
Abstract Sensors in a data fusion environment over hostile territory are geographically dispersed and change location with time. In order to collect and process data from these sensors an equally flexible network of fusion beds (i.e., clusterheads) is required. To account for the hostile environment, we allow communication links between sensors and clusterheads to be unreliable. We develop a mixed integer linear programming (MILP) model to determine the clusterhead location strategy that maximizes the expected data covered minus the clusterhead reassignments, over a time horizon. A column generation (CG) heuristic is developed for this problem. Computational results show that CG performs much faster than a standard commercial solver and the typical optimality gap for large problems is less than 5%. Improvements to the basic model in the areas of modeling link failure, consideration of bandwidth capacity, and clusterhead changeover cost estimation are also discussed.
Keywords: Wireless ad hoc networks, military applications, maximal expected coverage.
∗
Author for correspondence. E-mail:
[email protected]ffalo.edu
1
1
Introduction
Fusion of data from multiple sensors (e.g., radars on the ground and sonars under water) facilitates a better judgment of the scenario since we get multiple inputs to verify the authenticity of the information – see, e.g., Hall and Llinas (2001). The scenario that we are referring to is a dynamic battlefield in which enemy movement is occurring and targets are being tracked. Data from multiple sensors are being fused so as to yield better estimates for target tracks. In such a circumstance both the sensors and the fusion bed (e.g., an Airborne Warning and Control System (AWACS)) are mobile. Such a network has to rely on wireless transfer of information in an ad hoc network. The focus of our work is to provide a robust architecture for performing fusion in a hostile environment, where communication links are prone to enemy attack. We assume that sensor movement patterns are known. Our goal is to find the best locations for clusterheads (fusion nodes), for each time period over the planning horizon. We tradeoff the need to provide maximal expected coverage in a hostile environment versus the cost of frequent relocation of clusterheads. We utilize a dynamic version of a maximal expected covering location model (MEXCLP) due to Daskin (1983) to optimize the reallocation of clusterhead assignments between sensors over a given time horizon. It is important to emphasize that ours is a strategic model which will help plan a robust communication scheme over a mission duration. It does not deal with detailed communication issues, e.g., assignment of specific channels to a particular communication link. Instead it focuses on the development of a plan to strategically relocate clusterhead locations so as to maximize the overall efficiency of the communication system – which includes maximizing the expected coverage of sensors and minimizing the overhead cost of changing clusterhead locations. The model and solution methodology developed in this paper is being used in the development of a testbed for tracking, fusion and networking in a military setting (Frontline 2004).
2
Literature Review
An ad hoc network is a self-organizing multi-hop wireless network, which relies neither on fixed infrastructure nor on predetermined connectivity. All the entities in an ad hoc network can be mobile. The communication between network components is carried over a wireless medium and the network topology changes depending on the node mobility. The main advantage of such networks is that they can be rapidly deployed and therefore applications of these are in situations which either lack fixed infrastructure 2
or are at high risk; e.g. in military communications, disaster management, law enforcement, etc. According to Sanchez, Evans, and Minden (1999) the main issues in ad hoc networking are scalability of the network and managing highly mobile nodes with respect to maintaining connectivity, location database and routing tables. Network topology in ad hoc networks is either hierarchical or flat. Ramanathan and Steenstrup (1998) present Multimedia support for Mobile Wireless Networks (MMWN) based on hierarchical structure. Haas and Tabrizi (1998) discuss flat architecture and its advantages over hierarchical architecture. In ad hoc networks the routing has to be determined dynamically and the literature for routing protocols is divided into proactive, reactive or hybrid routing protocol. Proactive protocol (Perkins and Bhagwat (1994), Chiang (1997), Murthy and GarciaLuna-Aceves (1996)) continuously maintains the route between each pair of nodes. The delay in determining the route is minimal, but maintaining the routing table is a costly affair which is wasteful in both time and bandwidth. Reactive protocol (Perkins, Royer, and Das (1999), Johnson and Maltz (1999), Toh (1996), Park and Corson (1997)) determines the route on the basis of need. Hybrid protocols combine the advantages of both reactive and proactive protocols. Haas (1997) proposed Zone Routing Protocol (ZRP), a hybrid protocol based on the notion of routing zone. In this protocol, each node pro-actively determines the routes between itself and nodes within its routing zone. Thus whenever a demand arises, with little effort the route can be determined among the nodes not in the routing zone. Clustering of nodes in ad hoc networks is done in order to use the wireless resources efficiently by reducing congestion and for proper location and routing management. Since the clusterhead selection is an NP-hard problem (Basagni, Chlamtac, and Farago (1997)), most existing solutions available are based on heuristic approaches. The highest degree heuristic, a modified version of the work in Parekh (1994) selects the nodes with highest connectivity as clusterheads. Load balancing is poor but the stability of the cluster is good. The lowest ID heuristic due to Gerla and Tsai (1995) selects the node with lowest ID to assume clusterhead responsibilities. According to Chiang (1997), performance is better than the highest-degree heuristic but causes excessive drainage of lower ID nodes. In node weight heuristic, Basagni (1999) assigns a weight of -v to a node with a speed of v units. The selection criteria is same as the highest degree heuristic. A stable solution is obtained, i.e. the number of clusterhead reassignments is small. Basu, Khan, and Little (2001) propose a distributed clustering algorithm called MOBIC based on relative mobility metric for clusterhead selection.
3
The results in the paper demonstrate that the algorithm has a 33% lower rate of clusterhead change. Chen, Jain, and Singh (1999) present a geographical based clustering algorithm which uses GPS to determine the position and velocity of the nodes to form clusters. Recent clustering methods have also focused on minimizing energy spent in the network (Bandyopadhyay and Coyle 2003). All of the above algorithms assume that the links between nodes within a cluster are reliable and data can be communicated between them at all times. The fusion process demands a highly reliable and stable network architecture for collecting and processing data from all the mobile sensors. The fundamental differences between our approach and the above algorithms are as follows: 1. A mathematical programming approach is adopted for dynamic clustering. 2. A tradeoff between the weighted sensor coverage and the reassignment cost (or number of reassignments) is explicitly sought. 3. Unreliability of links is considered. The math programming approach that we use in this paper is based on a variation of a maximal expected covering location model due to Daskin (1983). We therefore review relevant literature on covering location problems. Toregas, Swain, ReVelle, and Bergman (1971) modeled the location of emergency service facilities as a Set Covering Location Problem (SCLP) where the objective is to cover all demand with the least number of facilities. Church and ReVelle (1974) proposed the Maximal Covering Location Problem (MCLP) with the objective to cover maximum demand with a restricted number of facilities. As a surrogate to modeling server unavailability, Hogan and Revelle (1986) introduced the concept of backup coverage in the context of SCLP and MCLP, and Batta and Mannur (1990) reconsidered the SCLP and the MCLP with multiple units required by the demand nodes. Berman and Krass (2002) introduced a generalized version of MCLP (GMCLP) with partial coverage of demand nodes. Chapman and White (1974) modeled the probabilistic version of SCLP ensuring that each node is served by a specified reliability level α. Daskin (1983) introduced a variant of the MCLP that considers the possibility that facilities may be unable to respond to demand at all times. The resultant model was labeled as MEXCLP (Maximum Expected Covering Location Problem). In a later paper, Batta, Dolan, and Krishnamurthy (1989) attempted to relax three of the assumptions made in the MEXCLP model. Other papers that have attempted to enhance the basic MEXCLP model are those by Marianov and Revelle (1994), Jayaraman and Srivastava (1995), Daskin and Owen (1999), Aytug and Saydam (2002), and Chiyoshi, Galvao, and Morabito (2003). 4
3
Formulation Unoccupied Potential Location Cluster Head
11 Sensor 00 00 11 11 00 00 11 00 11 00 11 11 00 00 11 00 11 00 00 11 00 11 11 11 00 11 00 00 11 00 11 00 11 00 11 00 00 11 00 11 00 11 11 00 11 00 11 11 00 11 00 00 00 11 00 11 11 00 11 00 11 00 11 11 00 11 00 00 11 00 11 11 00 11 00 00 11 00 11 00 11 00 11 00 11 00 11 00 11 11 00 00 11 00 00 11 00 11 00 11 11 00 11 00 11 00 11 11 00
Displacement Vector
Figure 1: A snapshot of the network
Since sensors (nodes) are mobile, clusterhead relocation makes sense. However to ensure a stable location strategy over the entire time horizon, we could either restrict the maximum number of relocations for the entire time horizon or associate a relocation cost for every change in clusterhead location. Thus we consider a tradeoff between data coverage and relocation cost. Our objective is to achieve this tradeoff over a fixed time horizon that is composed of discrete time periods of equal length. Relocation of clusterheads is permitted only at the beginning of these time periods and is assumed to occur instantaneously. Another complication is that the links between clusterheads and sensors are prone to attack. The MEXCLP model due to Daskin allows for node failure probabilities. We extend this concept to link failures and further consider the model in a dynamic framework. We refer to our model as the dynamic MEXCLP. In addition to the dynamic aspect, our model differs from the traditional MEXCLP in that our model permits at most one clusterhead to be located at a potential location. In an urban emergency services application (for which the MEXCLP was originally developed) it makes sense to deploy multiple vehicles at the same location, but this is not meaningful in the sensor network problem. A snapshot of the network is depicted in Fig. 1 with sensors and clusterheads on lower and upper plane respectively. This distinction of levels in the plane is purely conceptual since all entities might be at different altitudes. Similarly, the clusterhead locations might themselves be moving points (perhaps coincident with a sensor – see Section 5.2). In the model that follows we assume that each link fails with equal probability and independently of all other links. This is equivalent to assuming a constant threat level 5
in the region, i.e., no specific knowledge of enemy positions. What this means is that when a sensor needs to use a communication link to send measurement data or tracks to its clusterhead it is not able to do so with a constant and known probability p (threat level). The next time it tries to send this data also results in the same probability of failure, independent of all previous history of failure of that communication link, and that of other links between other sensors and clusterheads. The model and its analysis can be extended to certain other types of threat situations – these are discussed in Section 6. Parameters: ∆ = set of potential clusterhead locations. Θ
= set of sensors.
n
= maximum number of clusterheads to be located.
T
= maximum number of time periods in the horizon under consideration.
U
= the distance beyond which a sensor is considered “uncovered”.
DISikt
=
distance between potential clusterhead location i and demand node k at time t.
Dk
=
demand per period of sensor k.
p
=
probability of a link failure per period (between any clusterhead and sensor). (0 < p < 1)
Rikt
=
C
=
1, if DISikt < U, 0 otherwise.
cost per unit change in the number of clusterheads at any location i (one-half of relocation cost; C > 0).
Decision variables: 1, if a clusterhead is placed at location i at time t, xit = 0 otherwise.
yjkt
=
1, if sensor k is covered by at least j clusterheads at time t, 0 otherwise.
wit
=
1, if a clusterhead is located at i in period t − 1 and not in period t, 1, if a clusterhead is located at i in period t and not in period t − 1, 0 otherwise.
Formulation: (P) Maximize
n T
(1 − p)pj−1 Dk yjkt −
t=1 k∈Θ j=1
6
T t=1 i∈∆
Cwit ,
subject to: n j=1
yjkt −
i∈∆
Rikt xit ≤ 0 i∈∆
∀
k ∈ Θ, t = 1, . . . , T,
(1)
∀
t = 1, . . . , T,
(2)
wit ≥ xit−1 − xit
∀
i ∈ ∆, t = 1, . . . , T,
(3)
wit ≥ xit − xit−1
∀
i ∈ ∆, t = 1, . . . , T,
(4)
xit ≤ n
xit ∈ {0, 1}
∀
i ∈ ∆, t = 1, . . . , T,
(5)
wit ≥ 0
∀
i ∈ ∆, t = 1, . . . , T,
(6)
j = 1, . . . , n, k ∈ Θ, t = 1, . . . , T.
(7)
0 ≤ yjkt ≤ 1
∀
The objective function maximizes the expected demand covered minus relocation costs. If node k is covered by m clusterheads at time t, constraint (1) assigns each of the variables y1kt , y2kt , . . . , ymkt a value of 1 since the objective function is a maximization function containing the term yjkt. Constraint (2) restricts the maximum number of clusterheads to be located to n for any time t. Constraints (3) and (4) determine the positive difference between the number of clusterheads located at location i between time t − 1 and t. Constraint (5) is an binary constraint determining whether a clusterhead is located at location i. Constraint (6) is a non-negativity constraint. Constraint (7) restricts the variable yjkt to take a value between 0 and 1. It can easily be shown that for an optimal solution of (P) the wit variables will take on 0 − 1 binary values. Furthermore, for an optimal solution of (P) the yjkt variables Rikt xit will be integral will also take on 0−1 binary values. This is because the term i∈∆
since Rikt are 0 − 1 binary constants and variables xit assume only 0 − 1 binary values (see Patel (2002) for detailed proofs).
4
Column Generation Heuristic
Column generation (CG) heuristic is a widely used technique to solve large-scale optimization problems in the context of scheduling, set-partitioning, and vehicle routing. It is typically used in a multi-period model when the number of solutions available for each period is very large. For example, in vehicle routing the available routes for each vehicle are combinatorially large. The reader is referred to the following papers for a description of the technique in a variety of different applications: Desrosiers, Soumis, and Desrochers (1984) solve the fleet routing and scheduling problem using a 7
CG based approach. Ribeiro, Minoux, and Penna (1989) solve set-partitioning problem encountered in the context of traffic assignment in satellite communication using a CG heuristic. Krishnamurthy, Batta, and Karwan (1993) adopt a CG heuristic to develop conflict-free routes on a bi-directional network for automated guided vehicles. Mamer and McBride (2000) solve a linear multi-commodity flow problem using an iterative partial pricing scheme that is motivated by the CG approach of Dantzig-Wolfe decomposition. The basic premise behind CG can be explained as follows: The master problem contains the list of solutions currently available for each time period and needs to pick exactly one solution for each time period to maximize a stated objective. If the master problem is solved assuming that all feasible solutions are available for every time period, we would most certainly have (by virtue of complete enumeration) the optimal solution to the problem. Obviously this is an impractical approach since the complete set of feasible solutions for each time period is exponential in number. As a surrogate, we solve the master problem as a linear program (as opposed to an integer program) and consider only a small set of feasible solutions for each time period. Dual information from the solution of this linear program is used to generate additional solutions for each time period in separate sub-problems. Once we have achieved suitable convergence, we then attempt to find the best integer solution to the master problem using only the set of solutions obtained thus far. The method derives its name from the fact that each sub-problem solution constitutes a new “column” in the master problem. We now define some additional parameters and variables used in the master problem and sub-problem for the CG approach: = index set representing all of the possible solutions for time t. Ft Xsit
= value of xit if solution s ∈ Ft is selected at time t.
Ysjkt
= value of yjkt if solution s is selected at time t.
The decision variables of the problem are: 1 if solution s ∈ Ft is selected at time t, fst = 0 otherwise.
4.1
Master problem
The master problem evaluates the set of all possible solutions for each time period and selects one for each period such that the objective value is maximized. It is stated as follows: 8
n T
(Q) Maximize
t=1 k∈Θ j=1 s∈Ft
(1 − p)pj−1Dk Ysjktfst −
T t=1 i∈∆
Cwit ,
subject to: −wit + −wit +
s∈Ft−1
s∈Ft
Xsit−1 fst−1 −
Xsit fst −
s∈Ft−1
Xsit fst ≤ 0 ∀ i ∈ ∆, t = 1, . . . , T
(8)
Xsit−1 fst−1 ≤ 0 ∀ i ∈ ∆, t = 1, . . . , T
(9)
s∈Ft
s∈Ft
∀
fst = 1
fst ∈ {0, 1} ∀ wit ≥ 0
t = 1, . . . , T
(10)
s, t = 1, . . . , T
(11)
∀ i ∈ ∆, t = 1, . . . , T.
(12)
Constraints (8) and (9) are similar to those in (P) except that we have variable fst instead of xit and yjkt, whereas Xsit and Ysjkt are constants. Constraint (10) ensures that only one solution should be selected for each time period t. We note that (Q) is equivalent to (P). The major difficulty with (Q) is that it has all possible solutions for each time period t contained in the index set Ft . To get around this difficulty during the solution procedure, only a subset Ft will be included, leading to a restricted master problem (Q ). We solve the LP relaxation of (Q ) to obtain dual multipliers β, γ, and δ for constraints (8), (9) and (10), respectively. The sub-problems (one for each time period t) attempt to generate solutions using these dual multipliers that have favorable reduced cost.
4.2
Sub-problem for period t
The objective of the sub-problem is precisely the reduced cost of an entering column to the master problem. The sub-problem is solved for each time period t separately. The sub-problem for time periods t = 1 to t = T − 1 is as follows: (SPt ) Maximize
n
(1 − p)pj−1Dk yjkt +
k∈Θ j=1
i∈∆
[βit − βit+1 − γit + γit+1 ]xit − δt ,
subject to: n j=1
yjkt −
i∈∆
Rikt xit ≤ 0 i∈∆
∀
k∈Θ
xit ≤ n
(13) (14)
0 ≤ yjkt ≤ 1 xit ∈ {0, 1}
9
∀
j = 1, . . . , n, k ∈ Θ
(15)
∀
i ∈ ∆.
(16)
The objective function of the sub-problem for t = T is
n
(1 − p)pj−1 Dk yjkt +
k∈Θ j=1
[βit − γit ]xit − δt .
i∈∆
The solution of sub-problem (SPt ) is a set of xit and yjkt values. These coefficient values are said to represent a solution fst , which is added to the index set of solution Ft for period t in the restricted master problem if it has strictly positive reduced cost.
4.3
Initial Solution
The key to a successful CG procedure is to generate a good initial feasible solution to the problem. We use two greedy heuristics to do this. The first (relocation heuristic) considers the tradeoff between coverage and relocation between two consecutive time periods. The second (no-relocation heuristic) finds the optimal single set of locations for clusterheads for all time periods. Relocation Heuristic (RH) is a greedy heuristic, which picks the best n locations, one at a time, for each time period. The heuristic takes into consideration the link failure probabilities as well as the relocation cost incurred in switching clusterheads locations in two successive time periods. No-Relocation Heuristic (NRH) is also a greedy heuristic in which the strategy is to place clusterheads at locations which cover maximum demand for all time periods assuming that relocation is not permitted. The heuristic also accounts for link failure probabilities in a similar manner to RH, but does not reassign clusterheads. Our results showed that in most randomly generated scenarios, the solution quality of the heuristics is good. However, particular examples can be contrived where each heuristic can perform very poorly (see Patel (2002)). We therefore use solutions from both RH and NRH simultaneously as the initial columns (feasible solutions) of the CG procedure. In other words, these solutions form the initial index set Ft for the restricted master problem, for all periods t.
4.4
Iteration Strategy and Termination Criteria
At each iteration we solve the RMP and then solve the sub-problems for periods t = 1 through t = T . The solutions with favorable reduced cost are simultaneously added to the master problem. This strategy tends to have smaller solution time per iteration, since we solve the RMP after solving the sub-problem for all time periods. However, the number of iterations is larger, since we do not update dual multipliers at every step. We note, however, that past experience by researchers (e.g., Krishnamurthy et al.) has
10
shown this method to be superior to other iterative schemes, e.g., those that cycle through each sub-problem separately. In the classical version of column generation, the procedure is terminated when the sub-problem for every period t fails to produce a solution with strictly positive reduced cost. Since our aim is to generate good integer feasible solutions, we terminate the column generation procedure once a reasonable set of columns have been generated. We then use these columns to solve the corresponding problem (Q ) as an MILP. To decide when to terminate the column generation procedure one can utilize a user specified criterion like (i) a threshold time within which a solution is required, (ii) a bound on the number of iterations, or (iii) when the LP relaxation of (Q ) yields a solution that is within a specified percentage of the LP relaxation of (P). For the tests reported in this paper (Section 5) we use a combination of termination criteria (ii) with 200 iterations, and (iii) with 2% gap between LP relaxation of (Q ) and LP relaxation of (P), unless classical termination has been achieved.
4.5
Solving the Integer Master Problem
At the end of the CG procedure we have an index set of columns Ft in problem (Q ). We solve this as a MILP that attempts to choose exactly one column for each time period so as to minimize the total cost. There is no guarantee that doing this will provide an optimal solution to problem (Q) and hence to the original problem (P). However, it works well in practice in other implementations of CG (e.g., see the paper by Krishnamurthy et al.). We determine a special structure of (Q ) that helps us avoid the need of a standard integer programming solver and also solves the problem considerably faster. (Q ) is modeled as a longest path problem with time periods as stages and solutions for each time period as states (see Fig. 2). Arcs connect nodes of two consecutive stages and an arc length represents the gain in expected coverage minus the relocation cost, if any. The solution to the longest path algorithm consists of visiting exactly one solution for each time period. We have adopted this method in our computational results of Section 5. After solving (Q ) we compare its value with that of the linear programming relaxation of (P) to assess its optimality gap. The LP relaxation of (P) is an obvious valid bound since problems (P) and (Q) are equivalent. The results reported in Section 5 use this bound to display the gap between the integer solution of (Q ) and the optimal solution. We note that another method of obtaining a bound would be to let the CG 11
iterative procedure proceed till the sub-problem for every period fails to produce a solution with strictly positive reduced cost. The LP relaxation of the (Q ) instance at this stage is equivalent to the LP relaxation of (Q), since no new columns can be generated. It is entirely possible that this LP relaxation provides a tighter bound that the LP relaxation of (P), even though (Q) and (P) are equivalent problems – see the discussion in Barnhart, Johnson, Nemhauser, Savelsbergh, and Vance (1998). We did not proceed with this method since the bounds we obtained gave us satisfactory gaps. Also, we note that with classical convergence, the (Q ) instance gives us a much larger MILP and makes its solution more time consuming. Expected Coverage − Relocation Cost t=0
t=1
t=T
1
1
2
2
Source
Destination
Ft
F0
FT
Figure 2: State Space Diagram: Integer Master Problem
5
Computational Results
To test the behavior of the model with respect to changes in the parameters p and C, we developed an Excel program and constructed several examples. We discovered, through these examples, that our model has a fairly simple and intuitive behavior. When links are subject to enemy attack, multiple coverage of important sensors is needed by clusterheads – since we want to maximize the probability of at least one clusterhead being able to receive and process an important sensor’s information. As the threat level increases we seek clusterhead locations that provide such multiple coverage. All of this is in the backdrop of the costs associated with changing clusterhead locations. If these changeover costs are high, the solution will seek central positions that provide robust yet sub-optimal coverage over each time period. Under low changeover costs, the model will seek near-optimal expected coverage for each time period. 12
As the military resorts to widespread use of sensors in a dynamic battlefield, the number of sensors could reach hundreds or even thousands. In such cases, the restructuring of this ad hoc network by judicious choice of clusterheads over time is needed to ensure proper connectivity and to meet data fusion requirements. We therefore proceed to test problems in which the instances contain hundreds of sensors. Our goal is to ascertain whether the CG procedure proposed can deliver solutions of good quality within reasonable time on a PC. We also discuss an important military scenario in which a subset of mobile sensors themselves are declared to be clusterheads, i.e., there is no separate set of designated potential clusterheads. To provide easy access of our test problem generation to other researchers, we have given a summary of the list of parameters involved in generating problem instances in the Appendix.
5.1
Computational Experience
Our first set of problems were of the size that CPLEX, using its MIP branch-and-bound routine, yields an optimal solution to the problem within an hour of CPU time. Our goal here was to see whether the CG procedure could deliver solutions within much less time and with reasonable solution quality guarantee. The scenario we used had 300 potential locations, 200 sensors, 11 time periods and 10 clusterheads to be located. We solve formulation (P) using CPLEX 7.1 MILP solver and also use the CG heuristic which was coded in C and used CPLEX 7.1 callable library. In Table 1, we show results for C = 3 and values of p varying from 0 to 0.9. The CG procedure was terminated when the LP relaxation of (Q ) gave a solution that was within 2% of the LP relaxation of (P), or the number of iterations reached 200. Times are reported in CPU seconds on an Intel Pentium 4 processor, 1700 MHz, 512 MB RAM operating on a Windows platform. The CG times include the time needed to solve the LP relaxation of (P). We can see that for values of p ≤ 0.4 (a range we would normally expect in many threat environments) CG delivered high quality solutions (within 1.1% of optimal) within 4.2 seconds, whereas CPLEX requires between approximately a minute to half hour to solve these problems optimally. The final column in Table 1 establishes that CPLEX (using default settings) could not find even a feasible solution within the time that CG delivered a solution it estimated to be within 2% of the optimal solution. Our conclusion is that the CG method provides high quality solutions with much less CPU time than CPLEX. Our second set of problems was focused on more realistic size situations, i.e. involving hundreds of sensors. The scenario we used had the number of clusterheads 13
Table 1: Computational Results for Medium Size Problems CPLEX solution value found within CG solution time for C = 3 p CPLEX CG % gap between CPLEX solution solution time solution time (4) and (2) within CG time (1) (2) (3) (4) (5) (6) (7) 0 20820 1741 20686 4.172 0.64 NFSF 0.1 19054.44 444 18967.92 3.218 0.45 NFSF 0.2 17337.52 115 17201.6 3.109 0.78 NFSF 0.3 15597.47 91 15449.12 3.172 0.95 NFSF 0.4 13793.04 71 13641.6 3.125 1.1 NFSF 0.5 11890.25 67 11784.75 3.109 0.89 NFSF 0.6 9896.32 25 9830.88 2.938 0.66 NFSF 0.7 7765.68 4 7733.34 2.828 0.42 NFSF 0.8 5431.03 3 5399.52 2.796 0.58 NFSF 0.9 2853.13 3 2809.34 2.703 1.33 NFSF NFSF: No Feasible Solution Found between 15-30, the number of potential locations between 800-1000, and the number of sensors between 400-500. Other parameters are given in Table 2. For these instances we found that CPLEX (using default settings) was not able to find even a feasible solution within 4 hours of CPU time. However CG was able to deliver a solution of good quality (within 1.6% of optimal) in less than 5 seconds for four of the five instances. In one instance, the CG method took over 5 minutes to get down to a 3.7% gap. However, in this instance the CG procedure improved the initial solution by about 1.5%. Our conclusion is that the CG method is a viable approach to solve the problem for instances that have up to 500 sensors. We note here that the performance of CPLEX can be improved by tuning its parameters. However, the CG method delivers high quality solutions in time that is up to three orders of magnitude less than CPLEX using default settings. We have also performed detailed statistical tests to determine whether there is a significant difference in the solution methodologies CPLEX and CG in terms of deviation (from an LP upper bound) and solution time. Details are available in Patel (2002). First, screening experiments were conducted to isolate the significant interactions from the insignificant higher level ones. A 29−4 fractional factorial design of resolution IV was designed as the screening experiment with a single replicate. For α-level or level of significance equal 0.05, the ‘Method’ (P = 0.021) and T (P = 0.055), and the interactions between p and ‘data range’ (P = 0.056), and n and |∆| (P = 0.054) were 14
Table 2: Computational Results for Large Size Problem Number of Clusterheads = 15 - 30; Number of Potential Locations = 800 - 1000; Number of Sensors = 400 - 500; Number of Time Slots = 10 -15; Probability of Link Failure = 0.1 - 0.3; Relocation Cost = 60 - 100; Demand = 50 - 100; Coverage Radius = 80; Displacement = 0 - 60; Serial CG CG Time CPLEX CPLEX CG % gap % Improvement No. Solution (sec) Solution Time with LP over initial solution 1 389143.47 321.77 NFSF > 4 hrs 3.73 1.46 2 379934.40 4.99 NFSF > 4 hrs 1.57 0.00 3 318656.64 4.34 NFSF > 4 hrs 1.36 0.00 4 340129.02 4.84 NFSF > 4 hrs 1.32 0.00 5 472456.44 6.77 NFSF > 4 hrs 0.95 0.00 NFSF: No Feasible Solution Found found to have a significant effect on deviation. For solution time we had to increase the level of significance (α = 0.18). We found that n (P = 0.153), |∆| (P = 0.163) and T (P = 0.12) directly affected the solution time, and the interactions between ‘method’ and C (P = 0.187), and p and ‘data range’ (P = 0.171) were significant for solution time. Next we conducted parametric experiments by carefully varying the significant parameters and verified that CG performs significantly better in terms of solution time and the mean deviation is 1.8%. We observed that the solution time decreases with increase in p, and that the solution time is maximum for intermediate values of relocation cost. Other effects observed were that the solution time increases with increasing number of clusterheads (n), number of Time Slots (T ) and number of potential Locations (|∆|).
5.2
Special Case when Subset of Mobiles Sensors are Potential Clusterheads
An important application of our model in a military context is one in which a fixed number of sensors are to be elected to take up the responsibilities of clusterheads among the set of all sensors. Thus clusterheads are also mobile and follow the same trajectory as followed when they were sensors. Fig. 3 depicts a scenario where four clusterheads are chosen. The formulation is similar to the one described in Section 3 with the only difference that the set of potential clusterhead location is same as that of the set of sensors. Thus the same solution methodology and analysis works for solving the problem. The computational results for this variant is presented in Table 3. No 15
feasible solution was found using CPLEX within CG solution time for all the cases. As noted in the papers by Basagni and Basu et al., the sensors that are chosen as clusterheads would ideally be ones that have lower relative mobility (as compared to other sensors). This is because of the desire to keep the relocation costs small. Our test problems displayed similar behavior. 1 0 0 1 0 1
1 0 0 1
1 0 0 1 0 1
1 0 0 1 11 00 00 11
1 0 0 1 0 1 00 11 00 11 00 11
Occupied Potential Location (Clusterhead)
1 0 0 1
1 0 0 1 0 1
11 00 00 11
1 0 0 1
11 00 00 11 1 0 0 1 11 00 00 11
1 0 0 1 0 1
11 00 00 11
11 00 00 Sensor 11 Displacement Vector
11 00 00 11
11 00 00 11 00 11
11 00 00 11 00 11
11 00 00 11 11 00 00 11
1 0 0 1 0 1
1 0 0 1 0 1
Figure 3: Special Case when Subset of Mobiles Sensors are Potential Clusterheads
16
Table 3: Computational Results for Special Case when Mobile Sensors are Potential Clusterheads Number of Clusterheads = 10 - 15; Number of Sensors = 100 - 200; Number of Time Slots = 10 - 20; Coverage Radius = 80; Probability of Link Failure = 0.1 - 0.3; Relocation Cost = 5 - 10; Demand = 10 - 20; Displacement = 0 - 30; Serial CG CG % improvement over CPLEX CG % gap No. Solution Time RH NRH Solution with LP 1 19801.73 23.67 1.21 4.91 NFSF 2.12 2 22816.71 30.28 0.84 5.79 NFSF 2.37 3 20236.65 40.30 0.86 5.02 NFSF 1.96 4 19295.06 41.02 0.76 2.88 NFSF 3.85 5 30692.39 55.38 1.48 6.78 NFSF 2.55 6 31094.82 58.49 1.42 3.90 NFSF 2.63 7 20375.38 109.13 0.16 2.24 NFSF 2.25 8 23307.86 113.25 0.81 5.75 NFSF 4.85 9 23936.31 151.16 0.81 3.09 NFSF 2.60 10 26810.71 161.31 0.10 1.11 NFSF 4.23 NFSF: No Feasible Solution Found
17
6
Improvements to the Basic Model
In this section we investigate model enhancements to improve its potential for applicability in a military context. We discuss relaxation of the assumptions on link failure and the use of tracking information on enemy positions to obtain estimates for link failure probabilities – which are now sensor and time dependent. We also discuss the modeling of fusion or bandwidth capacity, and clusterhead changeover cost estimation. Finally, we discuss the issue of hierarchical clustering. Some of the model extensions are straightforward whereas others require significant future research.
6.1
Relaxation of Assumption on Link Failure
Based on tracking information in a battlefield we would likely have information on enemy positions. Thus the link failure probability, p, will become a function of the sensor, k, and the time period, t. A separate model would be required that uses information on enemy positions to develop appropriate pkt values. Once the pkt values have been obtained, under the assumption of independence we could still use the formulation for (P) by replacing p with pkt . Relaxing the independence assumption is much more involved. There have been some attempts at doing this in the context of Daskin’s MEXCLP model. The paper by Batta, Dolan, and Krishnamurthy (1989) and its follow up paper by Chiyoshi, Galvao, and Morabito (2003) are examples of such approaches. Some of these methods could be applied towards the dynamic MEXCLP but considerable future research is needed. Another assumption that is difficult to relax is that the link failure probability is independent of the clusterhead. In other words, even when pkt values are assumed to be known, implicit in that is the assumption that the pkt value is the same regardless of which clusterhead sensor k is trying to communicate with in period t. If the p values are clusterhead dependent we would need to preserve clusterhead identity and this would lead to a much more complicated formulation than (P).
6.2
Consideration of Fusion or Bandwidth Capacity
The model presented assumes that data fusion and bandwidth requirements can always be met by clusterheads. In reality, some sensors generate enormous amounts of data (e.g., imagery data) that consume significant fusion capacity. On the other hand, other intelligent sensors (e.g., tracking radar) generate relatively much less data and transmit tracks opposed to detailed scan data. Simultaneous consideration of link 18
unreliability and clusterhead capacity is difficult. This is because we need to know the assignment of sensors to clusterheads to properly compute capacity requirements. But the reliability computation (see objective function of (P)) assumes that a sensor can select any feasible clusterhead to communicate with, i.e., there is no specific sensor to clusterhead assignment. We can use a modified version of (P) to handle both link unreliability and capacity considerations, provided we make certain simplifying assumptions. One possible approach is to leave the terms in the objective function of (P) intact, but add to it a term that captures the “value” of assigning a primary clusterhead location to a sensor. We proceed by creating an assignment variable zikt , which takes on a value of 1 if sensor k is assigned to clusterhead i in period t, and 0 otherwise. If cik represents the value of assigning sensor k to clusterhead location i, we can add the term T
t=1 k∈Θ i∈∆
cik zikt to the objective function of (P) to capture the value of all primary
clusterhead assignments to sensors. To capture the capacity constraint (imposed assuming that all sensors communicate with their assigned clusterhead) we can write a constraint set
dk zikt ≤ Qit
i ∈ ∆, t = 1, . . . , T.
k∈Θ
Here Qit is the capacity of clusterhead i in time period t. For this new formulation, that includes capacity consideration separately imposed for each time period, column generation can be easily applied. The master problem remains unchanged and the capacity constraints are imposed on solutions generated by the sub-problems for each time period t.
6.3
Clusterhead Changeover Cost Estimation
Our model assumes that a flat cost 2C is charged if a clusterhead location is changed from one time period to the next. In reality, the changeover cost is associated with the need to update the routing table – i.e., which sensors report to which clusterhead. Specifically, when a cluster head changes its location, it must perform the following three activities: (i) notify the sensors that it will no longer cover from the new location and disconnect the connections, (ii) establish new connections with the sensors that it starts covering in the new location, and (iii) send the updated information to the other clusterheads. Both activity one and two are related to the number of sensors within a particular region, while activity three depends on the number of cluster heads and the size of the updated information. Based on this situation, we can say that the 19
relocation cost should be a function of the number of sensors, cluster head locations and time. This issue can also be incorporated in our model through an extension that not only counts the change in the number of clusterheads at a particular location, but specifically keeps track of location change “from-to”. By expanding the definition of wit to wilt , which indicates if a clusterhead moves from location i to location l at the beginning of time t, this extension can be achieved.
6.4
Hierarchical Clustering
As indicated in Fig. 1, the model developed in this paper is based on a two-level network topology where the sensors are in one level and the clusterheads are in another level. As the dimension of the military problem defined by number of sensors and clusterheads in the war theater grows, there might be need for further levels in the network topology. These levels would be composed of clusters of clusterheads. One approach to the hierarchical clustering is to progressively apply this model for sensorlevel clustering with a limited number of clusterheads, and then reapply it for the remaining clusterheads, and so on. This is clearly a heuristic approach, but it is conducive to incorporating the organizational hierarchy of clusterheads. There are many interesting issues regarding the number of hops in the network and the outcome of the distributed fusion process. In wartime deployment of these network hierarchies, succession of command should be incorporated. We suggest these as areas of future research.
7
Summary
In this work, we modeled a communication network problem of finding optimal assignment (or location) of clusterheads for collecting data from sensors spread over a geographically dispersed area, for the purpose of data fusion. The same framework can be used for general communication in mobile ad hoc networks. A specific feature that our work brings is the explicit consideration of threat, which is important in the military setting. We model the problem as a dynamic MEXCLP while incorporating issues of link failure and mobility of the system entities (sensors and clusterheads). A Column Generation (CG) heuristic is developed to solve the dynamic MEXCLP model. Computational results from our CG heuristic demonstrate the viability of the method to deliver high quality solutions for problems involving several hundred sensors,
20
a few dozen clusterheads and up to a thousand clusterhead locations. An important special case in which some of the sensors themselves are declared to be clusterheads is also examined. Several model enhancements are suggested, in the areas of modeling link failure probabilities using tracking information, fusion or bandwidth capacity, and clusterhead changeover cost estimation. Many of these require significant future research to be fully viable.
Acknowledgement The authors would like to thank the Area Editor, Alan Washburn, the anonymous Associate Editor, and two anonymous referees for their constructive comments. These comments helped strengthen the paper significantly.
Appendix Our goal here is to provide the reader with some basic information regarding the generation of our test problems. More details can be found on the web site http://www.eng.buffalo.edu/~nagi/research_sn.shtml. 1. n: Maximal number of clusterheads available for any given time period. 2. Displacement Range: The maximum displacement possible in X and Y direction per unit time. The z coordinate can also be used. 3. Displacement: This parameter specifies the displacement of the sensors in X and Y directions per unit time. It is randomly generated between 0 and displacement range. The z coordinate can also be used. 4. Potential Location Range: This parameter defines the region within which the potential clusterhead locations are randomly distributed. e.g., if the value of potential location range is 100, x and y coordinates of all the potential clusterhead location are randomly distributed between 0 and 100. The z coordinate can also be used. 5. Sensor Location Range: This parameter defines the region within which the sensors are located at time t = 0. The location of a particular sensor at subsequent time slots is calculated based on the displacement of that sensor per unit time. 21
6. Data Range: This parameter specifies the interval between which the demand of the sensors lies. 7. |∆|: This parameter specifies the number of potential locations available for locating clusterheads, where ∆ is the set of all potential clusterhead locations. We assume that the clusterheads are allowed to be located at only discrete locations. 8. |Θ|: This parameter specifies the number of sensors, where Θ is the set of all sensors. 9. U: This parameter defines the coverage radius within which a clusterhead can cover a sensor. 10. D: Demand of each sensor that needs to be fused per time period (generally in megabytes). We randomly generate demand of each sensor between the Data Range specified. 11. p: Specifies the probability of link failure between the clusterhead and sensors. 12. C: The relocation cost incurred per unit change in the number of clusterheads placed at a location between two successive time periods. 13. T : The value of T signifies that the time horizon under consideration is 0 to T . Thus we have T + 1 time slots for which the problem is to be optimized.
References Aytug, H. and C. Saydam (2002). Solving large-scale maximum expected covering location problems by genetic algorithms: A comparative study. European Journal of Operational Research 141 (3), 480–494. Bandyopadhyay, S. and E. J. Coyle (2003). An energy efficient hierarchical clustering algorithm for wireless sensor networks. In Proc. of IEEE INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications Societies, Number 3, 1713–1723. Barnhart, C., E. L. Johnson, G. L. Nemhauser, M. W. P. Savelsbergh, and P. H. Vance (1998). Branch-and-price: Column generation for solving huge integer programs. Operations Research 46 (3), 316–329.
22
Basagni, S. (1999). Distributed clustering for ad hoc networks. In Proc. IEEE International Symposium on Parallel Architectures, Algorithms, and Networks (ISPAN), Perth, Western Australia, 310–315. IEEE. Basagni, S., I. Chlamtac, and A. Farago (1997). A generalized clustering algorithm for peer-to-peer networks. ICALP ’97 . Basu, P., N. Khan, and T. D. C. Little (2001). A mobility based metric for clustering in mobile ad hoc networks. In Proceedings of Distributed Computing Systems Workshop. Batta, R., J. M. Dolan, and N. N. Krishnamurthy (1989). The maximal expected covering location problem: Revisited. Transportation Science 23 (4), 277–287. Batta, R. and N. R. Mannur (1990). Covering-location models for emergency situations that require multiple response units. Management Science 36 (1), 16–23. Berman, O. and D. Krass (2002). The generalized maximal covering location problem. Computers & Operations Research 29 (6), 563–581. Chapman, S. C. and J. A. White (1974). Probabilistic formulations of emergency service facilities location problems. ORSA/TIMS Conference, San Juan, Puerto Rico. Chen, W., N. Jain, and S. Singh (1999). ANMP: Ad hoc network management protocol. IEEE on Selected Areas in Communications 17 (8), 1506–1531. Chiang, C.-C. (1997). Routing in clustered multihop, mobile wireless networks with fading channel. Proc. IEEE SICON’97 , 197–211. Chiyoshi, F. Y., R. D. Galvao, and R. Morabito (2003). A note on solutions to the maximal expected covering location problem. Computers & Operations Research 30 (1), 87–96. Church, R. and C. ReVelle (1974). The maximal covering location problem. Papers Regional Science Association 32, 101–118. Daskin, M. S. (1983). A maximum expected covering location model: Formulation, properties and heuristic solution. Transportation Science 17 (1), 48–70. Daskin, M. S. and S. H. Owen (1999). Two new location covering problems: The partial p-center problem and the partial set covering problem. Geographical Analysis 31 (3), 217–235.
23
Desrosiers, J., F. Soumis, and M. Desrochers (1984). Routing with time windows by column generation. Networks 14, 545–565. Frontline (2004, March). Understanding Battlefield Realities: Software allows military to track and predict movements, Volume 36, 3 of Industrial Engineer Magazine, Section Front Line: News, Trends & Tactics, 19. Norcross, GA: Institute of Industrial Engineers. Gerla, M. and J. T.-C. Tsai (1995). Multicluster, mobile, multimedia radio network. ACM-Baltzer Journal of Wireless Networks 1 (3), 255–265. Haas, Z. (1997). A new routing protocol for the reconfigurable wireless networks. In Proc. of the IEEE Int. Conf. on Universal Personal Communications. Haas, Z. J. and S. Tabrizi (1998). On some challenges and design choices in ad hoc communications. Proceedings of IEEE MILCOM’98 . Hall, D. L. and J. Llinas (Eds.) (2001). Handbook of multisensor data fusion. Boca Raton, FL : CRC Press. Hogan, K. and C. Revelle (1986). Concepts and applications of backup coverage. Management Science 32 (11), 1434–1444. Jayaraman, V. and R. Srivastava (1995). A service logistics model for simultaneous siting of facilities and multiple levels of equipment. Computers & Operations Research 22 (2), 191–204. Johnson, D. B. and D. A. Maltz (1999). The dynamic source routing protocol for mobile ad hoc networks. In T. Imielinski and H. Korth (Eds.), Mobile Computing, Chapter 5, 153–181. Kluwer Academic Publishers. Krishnamurthy, N. N., R. Batta, and M. H. Karwan (1993). Developing conflict-free routes for automated guided vehicles. Operations Research 41 (6), 1077–1090. Mamer, J. W. and R. D. McBride (2000). A decomposition-based pricing procedure for large-scale linear programs: An application to the linear multicommodity flow problem. Management Science 46 (5), 693–709. Marianov, V. and C. Revelle (1994). The queuing probabilistic location set covering problem and some extensions. Socio-Economic Planning Sciences 28 (3), 167–178. Murthy, S. and J. J. Garcia-Luna-Aceves (1996). An efficient routing protocol for wireless networks. ACM Mobile Networks and App. J. Special Issue on Routing in Mobile Communication Networks 1 (2), 183–197. 24
Parekh, A. K. (1994). Selecting routers in ad-hoc wireless networks. Proceedings of the IEEE International Telecommunication Symposium. Park, V. D. and M. S. Corson (1997). A highly adaptive distributed routing algorithm for mobile wireless networks. In INFOCOM (3), 1405–1413. Patel, D. J. (2002). Clustering sensors in wireless ad hoc networks using a dynamic expected coverage model. Unpublished Master’s thesis, Department of Industrial Engineering, 438 Bell Hall, University at Buffalo (SUNY), Buffalo, NY 14260. Perkins, C. E. and P. Bhagwat (1994). Highly dynamic destination-sequenced distance-vector routing for mobile computers. Proceedings of ACM SIGCOMM’94 , 234–244. Perkins, C. E., E. M. Royer, and S. R. Das (1999). Multicast operation of the ad hoc on-demand distance vector routing. Proceedings of Mobicom’99 , 207–218. Ramanathan, R. and M. Steenstrup (1998). Hierarchically organized multihop mobile wireless networks for quality-of-service support. ACM/Baltzer Mobile Networks and Applications 3 (1), 101–119. Ribeiro, C. C., M. Minoux, and M. C. Penna (1989). An optimal column-generationwith-ranking algorithm for very large scale set partitioning problems in traffic assignment. European Journal of Operational Research 41, 232–239. Sanchez, R., J. Evans, and G. Minden (1999). Networking on the battlefield: Challenges in highly dynamic multi-hop wireless networks. Proceedings of IEEE MILCOM’99 . Toh, C.-K. (1996). A novel distributed routing protocol to support ad hoc mobile computing. Proceedings, IEEE 15th Annual International Phoenix Conference on Computers and Communication, 480–486. Toregas, C., R. Swain, C. ReVelle, and L. Bergman (1971). The location of emergency service facilities. Operations Research 19, 1363–1373.
25