• 沒有找到結果。

在無線感測網路中的覆蓋及連結問題

N/A
N/A
Protected

Academic year: 2021

Share "在無線感測網路中的覆蓋及連結問題"

Copied!
79
0
0

加載中.... (立即查看全文)

全文

(1)國立交通大學 資訊工程系 博 士 論 文. 在無線感測網路中的覆蓋及連結問題 The Coverage and Connectivity Problems in Wireless Sensor Networks. 研 究 生:黃啟富 指導教授:曾煜棋. 教授. 中 華 民 國 九 十 三 年 十 月.

(2) 在無線感測網路中的覆蓋及連結問題 The Coverage and Connectivity Problems in Wireless Sensor Networks. 研 究 生:黃啟富. Student:Chi-Fu Huang. 指導教授:曾煜棋. Advisor:Yu-Chee Tseng. 國 立 交 通 大 學 資 訊 工 程 系 博 士 論 文. A Dissertation Submitted to Department of Computer Science and Information Engineering College of Electrical Engineering and Computer Science National Chiao Tung University in partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy in. Computer Science and Information Engineering October 2004 Hsinchu, Taiwan, Republic of China. 中華民國九十三年十月.

(3) 在. 無. 線. 感. 測. 網. 路. 中. 的. 覆. 蓋. 及. 學生:黃啟富. 連. 結. 問. 題. 指導教授:曾煜棋. 國立交通大學資訊工學系博士班. 摘. 要. 無線感測網路的新興技術,將使得我們的生活更加便利,它的環境之中 包含了許多便宜的無線感測器,每一個感測器都具有收集、儲存、以及處 理環境資訊的能力,此外,感測器和感測器之間還能透過無線的方式互相 通訊。要使得一個感測網路可以成功的運行,感測器必須要能夠同時保持 感測的覆蓋程度、網路的連結性、以及長時間運行的能力。在本論文之中, 我們首先探討在二維及三維空間之中的覆蓋問題,接著,我們研究在一個 感測網路中,感測的覆蓋程度和通訊的連結性之間的關係,然後,為了延 長網路的運行時間,我們提出了分散式的能源節省暨覆蓋維持協定。 覆蓋問題是無線感測網路的基礎問題之一,它反應了一個無線感測網路 是如何地被感測器所監看或追蹤。在本論文之中,我們把這個問題定義成 一個判定問題:給定一個參數 k,我們的目標是要去判定,是不是在一個感 測網路所服務的區域上的每一位置,都能被最少 k 個感測器所偵測到。在 二維的平面上,每一個感測器的感測範圍可以是相同或不同半徑的圓形, 而在三維的立體空間之中,我們將感測器的感測區域假設成圓球(不必是相 同的半徑),我們首先提出這個問題在二維空間之中多項式時間的演算法, 接著,我們更進一步的証明這個問題在三維空間之中,也可以在多項式的 時間之內解答,而我們所提出來的解法,都可以很容易地轉換成分散式的 協定。 要讓一個感測網路可以順利的運行,感測器必須要能夠同時兼顧感測的 覆蓋程度以及網路的連結性,這個問題己經在[35, 43]之中被探討,這兩篇 I.

(4) 文獻都提出了一個類似的結論,那就是,當通訊的半徑大於等於兩倍的感 測半徑時,覆蓋的程度可保証網路的連結性。在本論文中,我們從另外一 個角度來探討這個問題,並提出了不依賴上面假設的解決方案,這也暗示 著,[35, 43]所提出的方法,可以被歸類成我們所提出的方法之中的一個特 別情況。 此外,保持足夠的覆蓋程度和達成系統長時間的存活,是在設計網路的 拓樸時兩個互相衝突的因素,在本論文中,我們提出分散式的協定來安排 感測器工作及休眠時間,可以有效率的提升網路的存活時間,並同時維持 被偵測區域足夠的覆蓋,所提出的協定類似[40]所提的模型,然而,我們的 方法可以大量的減少計算複雜度,以及平衡感測器之間電能的消耗。. II.

(5) The Coverage and Connectivity Problems in Wireless Sensor Networks. student:Chi-Fu Huang. Advisors:Dr. Yu-Chee Tseng. Department of Computer Science and Information Engineering National Chiao Tung University. ABSTRACT. The wireless sensor network is an emerging technology that may greatly facilitate our life. Such environments may have many inexpensive wireless nodes, each capable of collecting, storing, and processing environmental information, and communicating with neighboring nodes. For a sensor network to operate successfully, sensors must maintain sensing coverage, network connectivity, and long lifetime. In this dissertation, we first study the coverage problems both in 2D and 3D spaces. Next, we investigate the relationship between sensing coverage and communication connectivity of a sensor network. Then, decentralized energy-conserving and coverage-preserving protocols are proposed to prolong the network lifetime. One of the fundamental issues in sensor networks is the coverage problem, which reflects how well a sensor network is monitored or tracked by sensors. In this dissertation, we formulate this problem as a decision problem, whose goal is to determine whether every point in the service area of the sensor network is covered by at least k sensors, where k is a given parameter. The sensing ranges of sensors in a 2D space can be unit disks or non-unit disks while in a 3D space the sensing regions of sensors are modeled by balls (not necessarily of the same radius). We first present polynomial-time algorithms, in terms of the number of sensors, to solve this problem in a 2D space. Next, we show that tackling this problem in a 3D space is still feasible within polynomial time. The proposed III.

(6) solutions can be easily translated into efficient polynomial-time distributed protocols. For a sensor network to operate successfully, sensors must maintain both sensing coverage and network connectivity. This issue has been studied in [35, 43], both of which reach a similar conclusion that coverage can imply connectivity as long as sensors' communication ranges are no less than twice their sensing ranges. In this dissertation, we investigate this issue from a different angle and propose more general decentralized solutions that do not rely on the above assumption. Hence, the results in [35, 43] can be regarded as special cases of what proposed in this dissertation. Besides, to maintain sufficient coverage and to achieve long system lifetime are two contradicting factors in designing the topology of a network. In this dissertation, we propose decentralized protocols that schedule sensors' active and sleeping periods to prolong the network lifetime while maintain the sensing field sufficiently covered. The proposed protocols are similar to the model in [40]. However, our approach can significantly reduce the computational complexity incurred, and balance the energy expenditure among sensors.. IV.

(7) 誌. 謝. 感謝我所擁有的一切. 感謝我的指導教授 曾煜棋 教授授辛勤的指導,感謝家人的支持,感謝實驗室中的 每一個成員,感謝所有和我共事過的學長姐和學弟妹。.

(8) Contents 1. Introduction. 1. 2. Related Works. 5. 2.1. Related Geometric Problems . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5. 2.2. The Breach and Support Paths . . . . . . . . . . . . . . . . . . . . . . . . . .. 7. 2.3. Exposure to Sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 10. 2.4. Coverage and Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 12. 2.5. Coverage-Preserving and Energy-Conserving Protocols . . . . . . . . . . . . .. 14. 3. 4. The Coverage Problem in a Two-Dimensional Space. 19. 3.1. Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 19. 3.2. The Proposed Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 20. 3.2.1. The  -UC Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 20. 3.2.2. The  -NC Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 24. 3.2.3. Complexity Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . .. 26. 3.3. Simulation Results and a Sensor Coverage Toolkit . . . . . . . . . . . . . . . .. 26. 3.4. Applications and Extensions of the Coverage Problem . . . . . . . . . . . . . .. 28. 3.4.1. Discovering Insufficiently Covered Regions . . . . . . . . . . . . . . .. 28. 3.4.2. Power Saving in Sensor Networks . . . . . . . . . . . . . . . . . . . .. 31. 3.4.3. Hot Spots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 31. 3.4.4. Extension to Irregular Sensing Regions . . . . . . . . . . . . . . . . .. 32. The Coverage Problem in a Three-Dimensional Space. 33. 4.1. Preliminaries and Problem Statement . . . . . . . . . . . . . . . . . . . . . . .. 33. 4.2. The Proposed Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 34. 4.2.1. 35. Theoretical Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . V.

(9) 5. 6. Determining the Intersection of Spherical Caps . . . . . . . . . . . . .. 36. 4.2.3. The Complete Algorithm . . . . . . . . . . . . . . . . . . . . . . . . .. 38. Ensuring Both Coverage and Connectivity. 41. 5.1. Preliminaries and Problem Statement . . . . . . . . . . . . . . . . . . . . . . .. 41. 5.2. The Proposed Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 42. 5.2.1. Theoretical Fundamentals . . . . . . . . . . . . . . . . . . . . . . . .. 42. 5.2.2. Looser Connectivity Conditions . . . . . . . . . . . . . . . . . . . . .. 45. 5.2.3. Protocols to Determine Coverage and Connectivity . . . . . . . . . . .. 48. Decentralized Energy-Conserving and Coverage-Preserving Protocols. 49. 6.1. Preliminaries and Problem Definition . . . . . . . . . . . . . . . . . . . . . .. 49. 6.2. A Basic Coverage-Preserving Protocol . . . . . . . . . . . . . . . . . . . . . .. 50. 6.2.1. Protocol Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 50. 6.2.2. Energy-Based Scheduling . . . . . . . . . . . . . . . . . . . . . . . .. 52. 6.2.3. Complexity Analysis and Discussion . . . . . . . . . . . . . . . . . .. 54. Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 55. 6.3 7. 4.2.2. Conclusions and Future Works. 58. VI.

(10) List of Tables 2.1. The minimum radius   to cover a unit square by  circles. . . . . . . . . . . .. VII. 7.

(11) List of Figures 2.1. An example of triangulating a polygon and a possible deployment of cameras. Circles represent positions of cameras. . . . . . . . . . . . . . . . . . . . . . .. 2.2. An example of an optimal covering with 7 circles. The radius of each circle is about . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2.3. 5. 6. Examples of (a) the Voronoi diagram and the maximal breach path, and (b) the Delaunay triangulation and the maximal support path. I and F are the source and destination points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8. 2.4. A RNG example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 9. 2.5. An example of exposure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 10. 2.6. Moving direction of an object with respect to a sensor at the origin. . . . . . . .. 11. 2.7. An example of the OGDC algorithm. . . . . . . . . . . . . . . . . . . . . . . .. 13. 2.8. An example of the progress of the algorithm in [9]. Dotted lines show the connectivity between sensors. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2.9. 15. An example of the blind point if both sensors  and  are put into sleeping at the same time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 15. 2.10 Examples that (a) sensor  satisfies the off-duty eligibility rule of [32] and (b) sensor  does not satisfy the off-duty eligibility rule of [32]. . . . . . . . . . . . 3.1. 16. Examples of the coverage problem: (a) the sensing ranges are unit disks, and (b) the sensing ranges are non-unit disks. The number in each sub-region is its coverage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3.2. 3.3. 20. (a) Determining the segment of  ’s perimeter covered by  , and (b) determining the perimeter-coverage of  ’s perimeter. . . . . . . . . . . . . . . . . . . .. 21. Some examples to utilize the result in Theorem 1. . . . . . . . . . . . . . . . .. 23. VIII.

(12) 3.4. Some special cases: (a) two sensors falling in the same location (the number in each sub-region is its level of coverage), and (b) the sensing range of a sensor exceeding the network area . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3.5. 24. The coverage relation of two sensors with different sensing ranges: (a)   not in the range of  , and (b)  in the range of  . . . . . . . . . . . . . . . . . . . .. 25. and (b)   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 27. (b)   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 27. 3.8. Functional descriptions of the toolkit. . . . . . . . . . . . . . . . . . . . . . .. 29. 3.9. Execution results of the toolkit: (a) coverage level and (b) painting results. . . .. 29. 3.10 Insufficiently 4-perimeter-covered segments for the example in Fig. 3.9. . . . .. 30. 3.6. 3.7. Number of sensors v.s. coverage level for sensor fields of sizes: (a)   . Sensing range v.s. coverage level for sensor fields of sizes: (a)    and. 3.11 The coverage problem with irregular sensing regions: (a) coverage levels of irregular sub-regions, (b) polygon approximation of sensor   ’s sensing region, and (c) covered segments of  . . . . . . . . . . . . . . . . . . . . . . . . . . .. 32. 4.1. Illustration of terminologies. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 34. 4.2. The relationship between

(13)   and

(14)   : case 1. . . . . . . . . . . .. 37. 4.3. The relationship between

(15)   and

(16)   : case 2. . . . . . . . . . . .. 37. 4.4. An example to determine the coverage of a circle. . . . . . . . . . . . . . . . .. 39. 5.1. Proof of Lemma 4: (a) the path construction, and (b) possible cases of   . . . .. 43. 5.2. Observations of Theorem 4 and Theorem 5: (a) The network is 2-covered and 1-connected. The removal of sensor will disconnect the network, and (b) The network is 2-covered and 2-connected but no sensor is 2-DPC. Note that the sensing and communication ranges of each sensor are the same and are represented by circles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5.3. 44. An example to compare Theorem 5 with results in [35, 43]. Solid circles and dotted circles are sensors’ sensing ranges and communications ranges, respectively. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 45. 5.4. Proof of the Lemma 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 46. 5.5. An example of two connected components each of which 1-covers . . . . . .. 47. 6.1. One working schedule of a sensor node. . . . . . . . . . . . . . . . . . . . . .. 51. IX.

(17) 6.2. (a) a 4-sensor example, (b) schedules of  and  for intersection

(18) , and (c) the integrated schedule of  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6.3. 53. The ratio of covered area achieved by our basic scheme and the scheme in [40] with different grid size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 55. 6.4. The ratio of alive nodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 56. 6.5. The ratio of covered area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 56. X.

(19) Chapter 1 Introduction The rapid progress of wireless communication and embedded micro-sensing MEMS technologies has made wireless sensor networks possible. Such environments may have many inexpensive wireless nodes, each capable of collecting, storing, and processing environmental information, and communicating with neighboring nodes. In the past, sensors are connected by wire lines. Today, this environment is combined with the novel ad hoc networking technology to facilitate inter-sensor communication [26, 31]. The flexibility of installing and configuring a sensor network is thus greatly improved. Recently, a lot of research activities have been dedicated to sensor networks, including design issues related to the physical and media access layers [29, 38, 42] and routing and transport protocols [4, 8, 12]. Localization and positioning applications of wireless sensor networks are discussed in [3, 5, 22, 27, 33]. Since sensors may be spread in an arbitrary manner, a fundamental issue in a wireless sensor network is to ensure coverage and connectivity. Given a sensor network, the coverage problem in general is to determine how well the sensing field is monitored or tracked by sensors. In the literature, this problem has been formulated in various ways. Even in computational geometry, some coverage-related solutions can be found [24, 37]. Although solutions to those problems cannot be directly applied to wireless sensor networks, it is still worth to study those problems to establish some theoretical backgrounds on the coverage problem. Indeed, a lot of works have been dedicated to the coverage-related problems in wireless sensor networks in the last few years. These include the surveillance and exposure of sensor networks [19, 20, 34], and the concerns of coverage versus connectivity issues when deploying a sensor network [9, 28, 35, 43]. The connectivity issue is concerned with the diversity of communication paths between. 1.

(20) sensors. This would affect network robustness and communication performance. The GAF protocol [39] aims to extend the network lifetime by turning off redundant nodes while keeping the same level of routing fidelity, which is defined as uninterrupted connectivity between communicating nodes. GAF imposes a virtual grid on the network and nodes in the same grid coordinate with each other to determine who can sleep and how long. Reference [7] presents a connectivity-maintaining protocol, SPAN, which can turn off unnecessary nodes such that all active nodes are connected through a communication backbone and all inactive nodes are directly connected to at least one active node. Maintaining a network connected is also a basic requirement of works targeted at topology control, which is to adjust sensors’ transmission power for energy efficiency and collision avoidance [6, 15, 36]. Another concern in a wireless sensor network is the energy issue. Since sensors are usually powered by batteries, sensors’ on-duty time should be properly scheduled to conserve energy. If some nodes share the common sensing region and task, we can turn off some of them to conserve energy and thus extend the lifetime of the network. This issue has been extensively studied recently. Reference [30] proposes a heuristic to select mutually exclusive sets of sensor nodes such that each set of sensors can provide a complete coverage of the monitored area. Also targeted at turning off some redundant nodes, [41] proposes a probe-based density control algorithm to put some nodes in a sensor-dense area to a doze mode to ensure a long-lived, robust sensing coverage. A coverage-preserving node scheduling scheme based on an eligibility rule which allows a node to turn itself off as long as other neighboring nodes can cover its sensing area is presented in [32]. A coverage-aware self-scheduling scheme based on a probabilistic sensing model is proposed in [17]. The work [40], which tries to fairly distribute energy consumption among sensors, is proposed. The whole sensing area is divided into grid points which are used to evaluate whether the area is sufficiently covered or not. Each sensor has to join the schedule of each grid point covered by itself such that the grid point is covered by at least one sensor at any moment. In this dissertation, we first study the coverage problems both in 2D and 3D spaces. Furthermore, the relationship between sensing coverage and communication connectivity of a sensor network is investigated. Finally, to prolong the network lifetime, decentralized coveragepreserving node-scheduling protocols are proposed. We consider a more general sensor coverage problem in this dissertation: Given a set of sensors deployed in a target area, we want to determine if the area is sufficiently  -covered, in. 2.

(21) the sense that every point in the target area is covered by at least  sensors, where  is a given parameter. As a result, the aforementioned works [32, 41] can be regarded as a special case of this problem with  . Applications requiring    may occur in situations where a stronger environmental monitoring capability is desired, such as military applications. It also happens when multiple sensors are required to detect an event. For example, the triangulation-based positioning protocols [22, 27, 33] require at least three sensors (i.e.,  monitor a moving object. Enforcing . 

(22) ) at any moment to.   is also desirable for fault-tolerant purpose. The ar-. rangement issue [2, 11], which is widely studied in combinatorial and computational geometry, also considers how a finite collection of geometric objects decomposes a space into connected elements. However, to construct arrangements, only centralized algorithms are proposed in the literature, whilst what we need for a wireless sensor network is a distributed solution. The solutions proposed in this dissertation can be easily translated to a distributed protocol where each sensor only needs to collect local information to make its decision. In a 2D space, the sensing range of each sensor can be a unit disk or a non-unit disk. Rather than determining the coverage of each location, our approach tries to look at how the perimeter of each sensor’s sensing range is covered, thus leading to an efficient polynomial-time algorithm. As long as the perimeters of sensors are sufficiently covered, the whole area is sufficiently covered. In a 3D space, the sensing region of each sensor is modeled by a 3D ball. At the first glance, the 3-dimensional coverage problem seems very difficult since even determining the subspaces divided by the spheres of sensors’ sensing ranges is very complicated. However, in this dissertation, we show that tackling this problem is still feasible within polynomial time. We propose a novel solution by reducing the geometric problem from a 3D space to a 2D space, and further to a 1D space, thus leading to a very efficient solution. In essence, our solution tries to look at how the sphere of each sensor’s sensing range is covered. As long as the spheres of all sensors are sufficiently covered, the whole sensing field is sufficiently covered. To determined whether each sensor’s sphere is sufficiently covered, we in turn look at how each spherical cap and how each circle of the intersection of two spheres is covered. By stretching each circle on a 1-dimensional line, the level of coverage can be easily determined. In this dissertation, we further study the relationship between sensing coverage and communication connectivity of a sensor network. Reference [35] claims that coverage can imply connectivity as long as sensors’ communication ranges are no less than twice their sensing. 3.

(23) ranges. A similar result is also drawn in [43]. It is clear that the results in [35, 43] are not applicable when some sensors’ communication ranges are less than twice their sensing ranges even though others are not. Also, both [35, 43] assume that all sensors have the same sensing ranges. In this dissertation, we relax these constrains and show conditions for a sensor network to be  -covered and  -connected, and to be  -covered and 1-connected. Hence, the results in [35, 43] can be regarded as special cases of what proposed in this dissertation. Finally, we propose decentralized energy-conserving and coverage-preserving protocols to prolong the network lifetime. We adopt the model in [40] to fairly distribute sensors’ energy expenditure. However, instead of using grid points, we utilize the result in [35] by calculating sensors’ schedules based on the intersection points among their sensing ranges. The result can significantly reduce the computational complexity incurred on each sensor. In addition, the inaccuracy problem caused by gird approximation is completely eliminated. Besides, we further discuss how to utilize sensors’ remaining energy to adjust parameters in our protocol to balance the energy consumption among sensors. Simulations are conducted to verify our results. This dissertation is organized as follows. Related works are surveyed in Chapter 2. Chapter 3 formally defines the coverage problems in a two-dimensional space and then presents our solutions while the three dimensional coverage problem is discussed in Chapter 4. Chapter 5 further studies how to ensure both coverage and connectivity. Coverage-preserving and nodescheduling protocols are presented in Chapter 6. Chapter 7 draws our conclusions and future works.. 4.

(24) Chapter 2 Related Works In this chapter, we first study several relevant computational geometric problems. Then, a number of papers aimed at solving the coverage problem in wireless sensor networks are discussed. We will address issues such as surveillance and exposure of sensor networks, coverage and connectivity in network deployment, and coverage- and energy-preserving protocols for sensor networks.. 2.1 Related Geometric Problems In this section, we review two computational geometric problems which are related to the coverage problem in a sensor network. The first problem is the Art Gallery Problem [24]. Imagine that the owner of an art gallery wants to place cameras in the gallery such that the whole gallery is thief-proof. There are two questions to be answered in this problem: (i) how many cameras. Figure 2.1: An example of triangulating a polygon and a possible deployment of cameras. Circles represent positions of cameras. 5.

(25) Figure 2.2: An example of an optimal covering with 7 circles. The radius of each circle is about .. are needed, and (ii) where these cameras should be deployed. Every point in the gallery should be monitored by at least one camera. Cameras are assumed to have a viewpoint of 360 degrees and rotate at an infinite speed. Moreover, a camera can monitor any location as far as nothing is in the middle, i.e., a line-of-sight exists. The number of cameras used should be minimized. The gallery is usually modeled as a simple polygon on a 2D plane. A simple solution to this problem is to divide the polygon into non-overlapping triangles and place one camera in each of these triangles. By triangulating the polygon, it has been shown that any simple polygon can be guarded by 

(26)  cameras, where  is the number of triangles in the polygon. This is also the best result in the worst case [24]. An example of triangulating a simple polygon is shown in Fig. 2.1 and two cameras are sufficient to cover the gallery. Although this problem can be solved optimally in a 2D plane, it is shown to be NP-hard when being extended to a 3D space [25]. Another related problem in computational geometry is the circle covering problem [37], which is to arrange identical circles on a plane that can fully cover the plane. Given a fixed number of circles, the goal is to minimize the radius of circles. This issue is discussed in [13, 21, 23] for the covering of a rectangle. The coverings with less than or equal to five circles and seven circles can be done optimally [13]. For example, an optimal covering of seven circles is shown in Fig. 2.2. Reference [21] shows the coverings of six and eight circles and presents a new covering with eleven circles by an approach based on the simulated annealing. Table 2.1 lists the minimun radius   to cover a unit square with  identical circles reported in [23] for. 6.

(27) Table 2.1: The minimum radius   to cover a unit square by  circles.. . . . . . . . . 1. 0.7071067. . .. 2. 0.5590169. . .. 3. 0.5038911. . .. 4. 0.3535533. . .. 5. 0.3261605. . .. 6. 0.2987270. . .. 7. 0.2742918. . .. 8. 0.2603001. . .. 9. 0.2306369. . .. 10. 0.2182335. . .. 11. 0.2125160. . .. 12. 0.2022758. . .. 13. 0.1943123. . .. 14. 0.1855105. . .. 15. 0.1796617. . .. 16. 0.1694270. . .. 17. 0.1656809. . .. 18. 0.1606396. . .. 19. 0.1578419. . .. 20. 0.1522468. . .. 21. 0.1489537. . .. 22. 0.1436931. . .. 23. 0.1412448. . .. 24. 0.1383028. . .. 25. 0.1335487. . .. 26. 0.1317468. . .. 27. 0.1286335. . .. 28. 0.1273175. . .. 29. 0.1255535. . .. 30. 0.1220368. . ..     

(28) . The above geometrical computation problems are similar to the nature of coverage problems in wireless sensor networks: we need to know whether an area is sufficiently covered and monitored. The number of sensors is important in terms of cost. These results also provide some theoretical backgrounds to the coverage issue. However, there are several reasons which make solutions of geometric problems not directly applicable to wireless sensor networks. The first reason is that the assumptions are different. For example, a camera in the Art Gallery Problem can see infinite distance unless there is an obstacle. On the contrary, sensors in fact have their maximal sensing ranges. Besides, a sensor network usually has no fixed infrastructure and its topology may even change at any time. Thus, many decisions have to be made in a distributed manner. However, most geometric problems are solved in a centralized manner.. 2.2 The Breach and Support Paths In a sensor network, coverage can be regarded as the path between a given pair of points in the sensing field that is best or worst monitored by sensors when an object traverses along the path. Reference [18] defines the maximal breach path and the maximal support path as paths on which the distance from any point to the closest sensor is maximized and minimized, respectively. Polynomial-time algorithms are proposed to find such paths. The key idea is to use the Voronoi diagram and the Delaunay triangulation of sensor nodes to limit the search space. The Voronoi diagram is formed from the perpendicular bisectors of lines that connect. 7.

(29) I. I F. (a). F. (b). Figure 2.3: Examples of (a) the Voronoi diagram and the maximal breach path, and (b) the Delaunay triangulation and the maximal support path. I and F are the source and destination points two neighboring sensors, while the Delaunay triangulation is formed by connecting nodes that share a common edge in the Voronoi diagram. Examples of the Voronoi diagram and Delaunay triangulation are shown in Fig. 2.3. Because line segments in the Voronoi diagram have the maximal distance to the closest sensors, the maximal breach path must lie on the line segments of the Voronoi diagram. To find the maximal breach path, each line segment is given a weight equal to its minimum distance to the closest sensor. The proposed algorithm then performs a binary search between the smallest and largest weights. In each step, a breadth-first-search is used to check the existence of a path from the source point to the destination point using only line segments with weights that are larger than the search criterion. If a path exists, the criterion is increased to further restrict the lines considered in the next search iteration. Otherwise, the criterion is decreased. An example of the maximal breach path is shown in Fig. 2.3(a). Similarly, since the Delaunay triangulation produces triangles which have minimal edge lengths among all possible triangulations, the maximal support path must lie on the lines of the Delaunay triangulation. To find the maximal support path, line segments are assigned weights equal to their lengths . The search part is then similar to the above case. An example is shown in Fig. 2.3(b). Reference [16] proposes decentralized algorithms to find the maximal support path by constructing the Delaunay triangulation locally. The authors claim that the Delaunay triangulation. 8.

(30) B. B F. F. A. A C. C. E. D. E. D. (b). (a). Figure 2.4: A RNG example. can be replaced by relative neighborhood graph (RNG) and the maximal support path can still be found. The key idea is that the RNG can be constructed locally. Given any two sensors  and.  ,    is the intersection of the two disks centered at  and  , both of the same radius.  , where   is the distance between  and . If    does not contain any sensor, an edge is established to join  and  with a weight of    . The RNG is constructed by such weighted edges and all sensors. Note that RNG can be constructed distributedly by all sensors. Fig. 2.4 shows an example of constructing a RNG. There are six sensors ,  , ,  ,  , and  . In Fig. 2.4(a),    contains node , so the link  should not be built. On the contrary,  . and  . do not contain any other nodes, so the links and . should be built. The final RNG is shown in Fig. 2.4(b). After constructing the RNG, a decentralized algorithm is used to find the maximal support path. First, the starting and ending points have to connect to the sensors that are closest to them. Then, the Bellman-Ford algorithm is adopted to find the minimum weight path connecting the starting and ending points. It is possible that there are several maximal support paths. In this case, the path that consumes the least energy is selected. It is proved in [16] that the maximal support path that can be found using the Gabriel graph can also be found using the RNG. Using both Gabriel and RNG has the same complexity,.     , where  is the number of sensor nodes. Thus, this conquers the problem with. 9.

(31) A. 1 2 s 3 B. Figure 2.5: An example of exposure. Delaunay triangulation that global information needs to be collected.. 2.3 Exposure to Sensors The concept of time should also be included to reflect how much a moving target is exposed to sensors. The exposure time should be accounted for. Consider the example in Fig. 2.5. Suppose that  is a sensor and an object moves from point to point  at a constant speed via three possible paths. Although path 3 is the farthest path from , it is also the longest exposure time. In contract, path 2 is the shortest path, but it has the strongest sensing intensity. Path 1 has neither the longest exposure time, nor the strongest sensing intensity. How to find the minimal exposure path is addressed in [19]. The exposure for an object in the sensor field during an interval     along a path

(32)  is defined as:.  

(33)      . ¾ ½.    

(34)       

(35) .   . where  

(36) . is the sensor field intensity measured at location

(37)  from the closest sensor. . .   or all sensors in the sensor field  , and    is the arc length. A numerical approximation is proposed in [19] to find the minimal exposure path by dividing the sensor network region into grids and forcing the path to only pass the edges of girds and/or the diagonals of grids. Each line segment is assigned a weight equal to the exposure of this segment. Then a single-sourceshortest-path algorithm is used to find the minimal exposure path. Reference [20] further discusses how to compute the exposure of a sensor network in a distributed manner. The key idea is to use the Voronoi diagram to partition the sensor field and then each sensor is responsible for the calculation of exposure in its region. Inside each region, 10.

(38) Y (x 0, y 0) V. q. X. Figure 2.6: Moving direction of an object with respect to a sensor at the origin. the above gird approximation is used. Reference [14] proposes another method to find the minimal exposure path using variational calculus. This work first studies the sensing field with a single sensor and then discusses how to extend the result to a more general case. Reference [34] further proposes a localized algorithm which can reduce the computational complexity of [20]. It is also proved in [34] that finding the maximal exposure path is NP-hard. Several heuristics are then provided to find the maximal exposure path. Another important question in sensor networks is to estimate the number of sensors required to achieve complete coverage of a desired area. Reference [1] defines the critical density thresholds for complete coverage. The exposure is used to find the critical number of sensor nodes required to cover an area. For a sensor , the signal received from a target decreases as the distance from the target increases. If the signal strength is less than the noise signal, the sensor can not detect the target. The authors then investigate the influence of sensors and define two radii: radius of complete influence (  ) and radius of no influence ( ). Objects within the former radius are surely detected and objects outside the latter radius are undetectable. If    , the decision degenerates to the zero-one model. Suppose that there is a sensor located at the origin. Without loss of generality, [1] assumes that the target is initially located at (    on the arc at an angle  from the -axis, as shown in Fig. 2.6, and moves in a straight line with a constant speed  parallel to the -axis. At a period of , the exposure value is.   . . !          . where ! is a constant value depending on the sensor property. The exposure value can be written 11.

(39) using polar coordinates as follows:. !     . . . Æ  .    Æ  . where Æ is the travelling distance. Let  be the object detection threshold. It is shown in [1] that  can be given bye the following equation. !  . . Æ Æ  . and  can be given by the following eguation !   . . . Æ .  . According to [1], to cover an area , the number of nodes required would be of the order.  . 

(40) ¾ , where  is the sensing radius lying between   and  . Via simulations, it is shown that using  is a good estimation for finding the number of sensors required and the probability of detection is  or above.. 2.4 Coverage and Connectivity In this section, we discuss some works that consider the coverage and connectivity of sensor networks [9, 28, 35, 43]. Each sensor is assumed to have a fixed sensing region and a fixed communication range, both of which are modeled as disks. The goal is to achieve certain sensing coverage and/or communication connectivity requirements. For the sensor network to operate successfully, the active nodes must maintain both sensing coverage and network connectivity. Reference [35] proposes another solution to determine if a target area is  -covered and further studies the relationship between coverage and connectivity. To determine the coverage level, this work looks at how intersection points between sensors’ sensing ranges are covered. It claims that a region is  -covered by a set of sensors if all intersection points between sensors and between any sensor and the boundary of this region are at least. -covered. For the network communication connectivity, it claims that if a region is -covered, then the sensor network is  -connected as long as those sensors’ communication ranges are no less than twice their sensing ranges. Based on the above two properties, a Coverage Configuration Protocol (CCP) that can provide different degrees of coverage and meanwhile maintain communication connectivity is presented in [35] when the communication ranges are no less than twice their sensing ranges. 12.

(41) A. B i. D p. C. Figure 2.7: An example of the OGDC algorithm. Initially, all sensors are in the active state. If an area exceeds the required degree of coverage, redundant nodes will find themselves unnecessary and switch to the sleep state. A sensor is unnecessary to stay active if all the intersection points inside its sensing circle are at least  covered. A sleeping node also periodically wakes up and enters the listen state. In the listen state, the sensor evaluates whether it is necessary to return to the active state. If the communication ranges are less than twice the sensing ranges, reference [35] proposes to integrate CCP with SPAN [7] to provide both sensing coverage and communication connectivity. SPAN is a connectivity-maintaining protocol which can turn off unnecessary nodes such that all active nodes are connected through a communication backbone and all inactive nodes are directly connected to at least one active node. Reference [35] proposes that an inactive node should become active following rules of SPAN or CCP. An active node will turn to sleep if it satisfies neither SPAN’s nor CCP’s wakeup rules. How to maintain the sensing coverage and connectivity is also addressed in [43]. Similar to [35], the paper also shows that coverage can imply connectivity if the transmission range is at least twice of the sensing range. If so, we only need to focus on the coverage problem. A decentralized density control algorithm called Optimal Geographical Density Control (OGDC) is proposed to choose as few number of working nodes as possible to cover the network. Initially, all nodes are in the UNDECIDED state. We first find several starting nodes to enter the ON state. Nodes in the ON state may bring other UNDECIDED-state nodes to the ON state. The basic idea is to reduce the overlapping areas that are covered by nodes in the ON state.. 13.

(42) For example, in Fig. 2.7, there are four sensors       and is a starting node. Then. selects its neighbor  to enter the ON state because  ’s distance from is closest to.

(43)  ,. where  is the sensing radius of each sensor. To cover the intersection point of ’s and  ’s circles, we then select the node whose position is closest to the optimal position

(44) which is on the perpendicular bisector of the line connecting and  and is at a distance of  from . As a result, is selected and turned to the ON state. This procedure is repeated until the whole network has been covered. Note that a node in the UNDECIDED state can enter the OFF state if it finds its sensing range has been fully covered by other ON-state nodes. Reference [28] investigates three coverage-related issues about a sensor network based on the grid-based deployment. In a unit square,.    sensors are deployed in the field. How-. ever, each sensor has a probability of

(45)  to remain functioning, and a probability of 

(46) . to be dead. The authors show that when

(47)    . .  , it is very likely that the network. will remain fully covered and connected, where   is the sensing and communication range of each sensor. Also, under such a condition, the network diammeter will be of the order. . .  .. Reference [9] investigates the coverage and connectivity issues from another point of view. When a spatial query is issued to the sensor network to request the data of interest in a geographical region, we may like to select the smallest subset of sensors which are connected and are sufficient to cover the region. The proposed solution is a greedy algorithm which recurrently selects a path of sensors that is connected to an already selected sensor and then adds these sensors into the selected subset until the given query region is completely covered. The greedy rule of the algorithm is to select a path of sensors who can cover the largest uncovered query region at each stage. Fig. 2.8 shows an example with two consecutive stages of the algorithm. Fig. 2.8(b) is resulted from (a) by selecting sensors of path "  since " consists of sensors. and. who together cover the largest uncovered region.. 2.5 Coverage-Preserving and Energy-Conserving Protocols Since sensors are usually powered by batteries, sensors’ on-duty time should be properly scheduled to conserve energy. If some nodes share the common sensing region and task, then we can turn off some of them to conserve energy and thus extend the lifetime of the network. This is feasible if turning off such a node still provides the same “coverage” (i.e., the provided coverage is not affected). An example is shown in Fig. 2.9(a). The sensor  can be put into sleeping mode. 14.

(48) Region covered by selected nodes Query Region C1 C2. C3. C4. C5. C5 C6. C6 C7. C7. Candidate Sensors: C 2, C 3, C 5, C 7 Candidate Path: P 1={C 1, C 2}, P 2={C 3, C 4}, P 3={C 5}, P 4={C 7}. Candidate Sensors: C 5, C 6, C 7 Candidate Path: P 3={C 5}, P 4={C 7}, P 5={C 6}. (a). (b). Figure 2.8: An example of the progress of the algorithm in [9]. Dotted lines show the connectivity between sensors.. a. b. a. b. d. c. d. e. f c. (a). (b). Figure 2.9: An example of the blind point if both sensors  and  are put into sleeping at the same time.. 15.

(49) a. a. b. b c. c. d. d. (a). (b). Figure 2.10: Examples that (a) sensor  satisfies the off-duty eligibility rule of [32] and (b) sensor  does not satisfy the off-duty eligibility rule of [32]. since all its sensing area is covered by the other nodes. Sensor  satisfies this condition too and can go to sleeping mode. However,  and  are not allowed to be turned off at the same time; otherwise a blind point, which is a region not covered by any sensor, could appear, as shown in Fig. 2.9(b). As a result, sensors not only need to be check if they satisfy certain eligibility rules but also need to be carefully scheduled. Reference [30] proposes a heuristic to select mutually exclusive sets of sensor nodes such that each set of sensors can provide a complete coverage of the monitored area. They claim that this problem is a NP-complete problem by it reducing to the minimum cover problem. The key idea of the proposed heuristic is to find out which sensors cover fields that are less covered by other sensors and then avoid including those sensors into the same set. Also targeted at turning off some redundant nodes, [41] proposes a probe-based density control algorithm to put some nodes in a sensor-dense area to a doze mode to ensure a long-lived, robust sensing coverage. In this solution, nodes are initially in the sleeping mode. After a sleeping node wakes up, it broadcasts a probing message within a certain range and then waits for a reply. If no reply is received within a pre-defined time period, it will keep active until it depletes its energy. The coverage degree (density) is controlled by sensor’s probing range and wake-up rate. However, this probing-based approach has no guarantee of sensing coverage and thus blind points could appear. A coverage-preserving node scheduling scheme is presented in [32] to determine when a node can be turned off and when it should be rescheduled to become active again. It is based 16.

(50) on an eligibility rule which allows a node to turn itself off as long as other neighboring nodes can cover its sensing area. After evaluating its eligibility for off-duty, each sensor adopts a back-off scheme to prevent the appearance of blind points. If a node is eligible for off-duty, it will delay a random back-off time before actually turning itself off. During this period of time, if it receives any message from its neighbors requesting to go to sleep, it marks the sender as an off-duty node and reevaluates its eligibility. If the eligibility still holds after the back-off time, this node broadcasts a message to inform its neighbors, waits for a short period of time, and then actually turns itself off. A sleeping node will periodically wake up to check if it is still eligible for off-duty and then decide to keep sleeping or go back to on-duty. However, the solution in [32] may lead to excess energy consumption. An example is shown in Fig. 2.10. Based on the eligibility rule proposed in [32], a sensor only regards a node whose sensing range can cover the sensor as a neighboring node. In Fig. 2.10(a), sensor  is eligible for off-duty since its sensing region is covered by its neighboring nodes , # and . In contrast to the above case, in Fig. 2.10(b), sensor  is not eligible for off-duty since sensor # is not regarded as a neighboring node of . According to the eligibility rule of [32],  cannot be turned off. In fact, ’s sensing region is fully covered by sensors , # and , thus leading to excess energy consumption. Another node scheduling scheme is proposed in [40]. In this scheme, the time axis is divided into rounds with equal duration. Each sensor node randomly generates a reference time in each round. In addition, the whole sensing area is divided into grid points which are used to evaluate whether the area is sufficiently covered or not. Each sensor has to join the schedule of each grid point covered by itself based on its reference time such that the grid point is covered by at least one sensor at any moment of a round. Then a sensor’s on-duty time in each round is the union of schedules of grid points covered by the sensor. However, this scheme may suffer from the time synchronization problem in a large-scale sensor network. A coverage-aware self-scheduling scheme based on probabilistic sensing model is proposed in [17]. Each sensor $ is assumed to be able to detect a nearby event happened at location "  with a probability. $ " .     %. where  is the distance between sensor $ and point " and constants % and & are devicedepended parameters. Thus, the level of coverage perceived by " contributed by all sensors. 17.

(51) can be written as. " .  .  $ ". . Now suppose a sensor $ is removed from the network. The loss of coverage at point "  can be derived by  " $ ".    .  $ ". . Therefore, sensor $ ’s contribution to the network coverage can be defined by summing the losses over all possible points. $ .  within distance ' from $.  " . where ' is the largest range that a sensor can detect with a predefined accuracy. A self-scheduling scheme based on above SD value is then proposed in [17]. Periodically, each sensor $ calculates its SD value in a distributed manner and decides whether to enter sleeping state with a hibernating probability defined as follows. " 

(52)  $ $ $  where $ is half of the maximum possible SD value. Therefore, a sensor with a higher SD value has a higher chance to stay active. To prevent an area becoming uncovered due to all sensors in this area turning themselves off at the same time, a random backoff mechanism as [32] is used.. 18.

(53) Chapter 3 The Coverage Problem in a Two-Dimensional Space In this chapter, we study the coverage problem in a two-dimensional space. We formulate this problem as a decision problem, whose goal is to determine whether every point in the service area of the sensor network is covered by at least  sensors, where  is a given parameter. The sensing ranges of sensors can be unit disks or non-unit disks. We present polynomial-time algorithms, in terms of the number of sensors, that can be easily translated to distributed protocols. The result is a generalization of some earlier results where only   is assumed. Applications of the result include determining insufficiently covered areas in a sensor network, enhancing fault-tolerant capability in hostile regions, and conserving energies of redundant sensors in a randomly deployed network.. 3.1 Problem Statement We are given a set of sensors, $          , in a two-dimensional area . Each sensor.    is located at coordinate    inside and has a sensing range of  , i.e., it can monitor any point that is within a distance of   from  . Definition 1 A location in is said to be covered by  if it is within  ’s sensing range. A location in is said to be  -covered if it is within at least  sensors’ sensing ranges. Definition 2 A sub-region in is a set of points who are covered by the same set of sensors. We consider two versions of the coverage problem as follows. 19.

(54) 2. 1. 1. 3. 2. 2. 2. 3. 1. 4. 3 2. 2 1. 3. 2. 3 4. 3. 2. 1. 3. 2. 2 3 3 4. 3. 2. 2. 2. 3. 2 1. 3 3 4. 4 5 4. 1. 4. 3. 2. 4. 2. 4. 2 1. 2. 3. 2 3 3. 3 2. 4 3. 3. 2 3 2 2. 2 1. 1. 1. 2. 3. 4. 3. 1. 1. (a). 2. 2 3 4. 1. 5 4. 6. 5 2. 2 3. 3 3. 5 4. 3. 5. 4 3. 2. 3 3. 3. 2. 3. 1 3. 4. 2 3. 2. 1. 1. 3 2. 3. 1. 2. 4 4. 3. 2. 3. 4. 2. 3. 2 3. 4. 5. 2. 2. 3. 2. 4. 3 2. 2. 4 3. 3. 3 2. 1. 3. 1. 2. 2. 2. 2. 1. 2. 1. 2. 3. 4. 2. 3 2. 1. 3. 2. 2. 2. 2. 3 2. 3. 2. 3. 4. 5. 5. 1. 3. 5. 6. 1. 3. 4 1. 3 3. 4. 3. 3. 1. 2. 3. 4 5. 4 3. 5. 4. 3. 2. 2. 2. 3. 3 1. 3. 2. 2. 2. 3. 2. 3 1. 2. 2 2. 2. 2. 2. 2 3. 3. 2. 2. 2. 1 2. 1. 3. 2. 1. (b). Figure 3.1: Examples of the coverage problem: (a) the sensing ranges are unit disks, and (b) the sensing ranges are non-unit disks. The number in each sub-region is its coverage. Definition 3 Given a natural number  , the  -Non-unit-disk Coverage ( -NC) Problem is a decision problem whose goal is to determine whether all points in are  -covered or not. Definition 4 Given a natural number  , the  -Unit-disk Coverage ( -UC) Problem is a decision problem whose goal is to determine whether all points in are  -covered or not, subject to the constraint that  

(55)

(56)

(57)  .. 3.2 The Proposed Solutions At the first glance, the coverage problem seems to be very difficult. One naive solution is to find out all sub-regions divided by the sensing boundaries of all  sensors (i.e.,  circles), and then check if each sub-region is  -covered or not, as shown in Fig. 3.1. Managing all sub-regions could be a difficult and computationally expensive job in geometry. There may exit as many as.   sub-regions divided by the circles. Also, it may be difficult to calculate these sub-regions.. 3.2.1 The  -UC Problem In the section, we propose a solution to the  -UC problem, which has a cost of     , where  is the maximum number of sensors whose sensing ranges may intersect a sensor’s sensing range. Instead of determining the coverage of each sub-region, our approach tries to 20.

(58) r. r a a si. sj. p-a. 0. p+a. 2p. (a). a j3,L. a j1,R a j2,L a j7,L. a j2,R. a j6,R a j8,R. a j2,L. a j3,L. a j6,R. a j2,R a j1,L. si. a j7,R a j4,L a j3,R a j8,L. 4. a j7,R 3. a j7,L a j8,R. a j1,R. 4 a j6,L. a j5,R. a j4,L. p/2. a j1,L. p. 0 3p/2. a j3,R. a j5,R. a j6,L. 3. a j4,R. a j5,L3 a j4,R 2. a j8,L a j5,L. (b). Figure 3.2: (a) Determining the segment of  ’s perimeter covered by  , and (b) determining the perimeter-coverage of  ’s perimeter. look at how the perimeter of each sensor’s sensing range is covered. Specifically, our algorithm tries to determine whether the perimeter of a sensor under consideration is sufficiently covered. By collecting this information from all sensors, a correct answer can be obtained. Definition 5 Consider any two sensors  and  . A point on the perimeter of  is perimetercovered by  if this point is within the sensing range of   . Definition 6 Consider any sensor  . We say that  is  -perimeter-covered if all points on the perimeter of  are perimeter-covered by at least  sensors other than  itself. Similarly, a segment of  ’s perimeter is  -perimeter-covered if all points on the segment are perimetercovered by at least  sensors other than  itself.. 21.

(59) Below, we propose an     algorithm to determine whether a sensor is  -perimetercovered or not. Consider two sensors  and  located in positions    and    , respectively. Denote by     .        the distance between  and  .. If       , then  does not contribute any coverage to  ’s perimeter. Otherwise, the range of perimeter of  covered by  can be calculated as follows (refer to the illustration in Fig. 3.2(a)). Without loss of generality, let   be resident on the west of  (i.e.,   and.    ). The angle %  

(60)   . So the arch of  falling in the angle ( % (  % is. perimeter-covered by  . The algorithm to determine the perimeter coverage of  works as follows. 1. For each sensor  such that    .  , determine the angle of  arch, denoted by. %  % , that is perimeter-covered by  .. 2. For each neighboring sensor  of  such that     )  , place the points % and. % on the line segment  ( , and then sort all these points in an ascending order into a list *. Also, properly mark each point as a left or right boundary of a coverage range, as shown in Fig. 3.2(b). 3. (Sketched) Traverse the line segment  (  by visiting each element in the sorted list * from left to right and determine the perimeter-coverage of  . The above algorithm can determine the coverage of each sensor’s perimeter efficiently. Below, we relate the perimeter-coverage property of sensors to the coverage property of the network area. Lemma 1 Suppose that no two sensors are located in the same location. Consider any segment of a sensor  that divides two sub-regions in the network area . If this segment is  -perimetercovered, the sub-region that is outside   ’s sensing range is  -covered and the sub-region that is inside  ’s sensing range is    -covered. Proof. The proof is directly from Definition 6. Since the segment is  -perimeter-covered, the sub-region outside  ’s sensing range is also  -covered due to the continuity of the sub-region. The sub-region inside  ’s sensing range is    -covered because it is also covered by  .. ¾. An example is demonstrated in Fig. 3.2(b). The gray areas in Fig. 3.2(b) illustrate how the above lemma works .. 22.

(61) si. si. (a). (b). Figure 3.3: Some examples to utilize the result in Theorem 1. Theorem 1 Suppose that no two sensors are located in the same location. The whole network area is  -covered iff each sensor in the network is  -perimeter-covered. Proof. For the “if” part, observe that each sub-region inside is bounded by at least one segment of a sensor  ’s perimeter. Since  is  -perimeter-covered, by Lemma 1, this subregion is either  -covered or    -covered, which proves the “if” part. For the “only if” part, it is clear by definition that for any segment of a sensor   ’s perimeter that divides two sub-regions, both these sub-regions are at least  -covered. Further, observe that the sub-region that is inside   ’s sensing range must be covered by one more sensor,   , and is thus at least    -covered. So excluding  itself, this segment is perimeter-covered by at least  sensors other than  itself, which proves the “only if” part.. ¾. Note that Theorem 1 is true when all sensors are claimed to be  -perimeter-covered. When a specific sensor  is  -perimeter-covered, it only guarantees that each point right outside   ’s perimeter is  -covered, and each point right inside  ’s perimeter is    -covered. However, it does not guarantee that all points inside   ’s perimeter is    -covered. An example is shown in Fig. 3.3. In Fig. 3.3(a), sensor  is 2-perimeter-covered since each segment of its perimeter is covered by two sensors. This only implies the coverage levels of the points nearby the perimeter of  . The gray area, which is outside the coverage of  ’s neighboring sensors, is only 1-covered. In fact, the segments that bound the gray area are only 1-perimeter-covered. If we add another sensor to cover these segments (shown in thick dotted line) as shown in Fig. 3.3(b), then  ’s sensing region will be 2-covered. 23.

(62) Figure 3.4: Some special cases: (a) two sensors falling in the same location (the number in each sub-region is its level of coverage), and (b) the sensing range of a sensor exceeding the network area . Below, we comment on several special cases which we leave unaddressed on purpose for simplicity in the above discussion. When two sensors   and  fall in exactly the same location, Lemma 1 will not work because for any segment of   and  that divides two sub-regions in the network area, a point right inside  ’s and  ’s sensing ranges and a point right outside their sensing ranges will differ in their coverage levels by two, making Lemma 1 incorrect (refer to the illustration in Fig. 3.4(a)). Other than this case, all neighboring sub-regions in the network will differ in their coverage levels by exactly one. Since in most applications we are interested in areas that are insufficiently covered, one simple remedy to this problem is to just ignore one of the sensors if both sensors fall in exactly the same location. Another solution is to first run our algorithm by ignoring one sensor, and then increase the coverage levels of the sub-regions falling in the ignored sensor’s range by one afterward. The other boundary case is that some sensors’ sensing ranges may exceed the network area . In this case, we can simply assign the. segments falling outside as -perimeter-covered, as shown in Fig. 3.4(b).. 3.2.2 The  -NC Problem For the non-unit-disk coverage problem, sensors’ sensing ranges could be different. However, most of the results derived above remain the same. Below, we summarize how the  -NC problem is solved. First, we need to define the how the perimeter of a sensor’s sensing range is covered by other sensors. Consider two sensors  and  located in positions    and    with sensing 24.

(63) a a. a a. Figure 3.5: The coverage relation of two sensors with different sensing ranges: (a)   not in the range of  , and (b)  in the range of  . ranges  and  , respectively. Again, without loss of generality, let   be resident on the west of  . We address how  is perimeter-covered by  . There are two cases to be considered. Case 1: Sensor  is outside the sensing range of  , i.e.,       . (i) If  )    .  , then  is not perimeter-covered by  . (ii) If    .  . . .       , then the arch of  falling in the angle. ( % (  % is perimeter-covered by  , where % can be derived from the formula:.         

(64)    

(65)  % . (3.1). (iii) If         , then the whole range  (  of  is perimeter-covered by  . Case 2: Sensor  is inside the sensing range of  , i.e.,       . (i) If  )      , then  is not perimeter-covered by  . (ii) If .    . . .      , then the arch of  falling in the angle. ( % (  % is perimeter-covered by  , where % is as defined in Eq. (3.1).. (iii) If         , then the whole range  (  of  is perimeter-covered by  . The above cases are illustrated in Fig. 3.5. Based on such classification, the same algorithm to determine the perimeter coverage of a sensor can be used. Lemma 1 and Theorem 1 still hold true (observe that in the corresponding proofs, we do not use any property about the absolute sensing ranges of sensors).. 25.

(66) 3.2.3 Complexity Analysis Consider the algorithm in Section 3.2.1. Let  be the maximum number of sensors that are neighboring to a sensor (.  ).. The complexities of steps 1 and 2 are   and     ,. respectively. The last step 3, though sketched, can be easily implemented as follows. Whenever an element % is traversed, the level of perimeter-coverage should be increased by one. Whenever an element % is traversed, the level of perimeter-coverage should be decreased by one. Since the sorted list * will divide the line segment  (  into as many as    segments, the complexity of step 3 is   . So the complexity to determine a sensor’s perimeter coverage is     . The overall complexity for the  -UC problem is thus     . The  -NC problem can also be solved with complexity     , except that the neighbors of a sensor need to be redefined. The work [35] also proposes a solution to determine the coverage level of a sensor network. It looks at how intersection points between sensors’ sensing ranges are covered. Since there are as many as   intersection points in the network and the calculation of the coverage level of each intersection point takes time   , the overall complexity is   .. 3.3 Simulation Results and a Sensor Coverage Toolkit We have developed a simulator and implemented a toolkit based on the proposed algorithms. Square sensor fields are simulated with randomly placed nodes. There are two settings of sensing ranges: unit-disc sensing range and non-unit-disc sensing range. All results presented below are from the average of at least 1000 runs. First, we investigate the level of coverage (i.e.,  ) that can be achieved by using different numbers of sensors. Sensor fields of sizes  . .   and    are simulated with.  nodes. The unit-disc sensing range is 100 units and the non-unit-disc sensing. range falling uniformly between .   units. Both the average and the maximum levels of. coverage are evaluated. The results are in Fig. 3.6. As can be seen, the average value of  grows about linearly as the number of sensors increases. Next, we investigate the level of coverage that can be achieved by setting different sensing ranges of sensors. Sensor fields of sizes    and    are simulated with 500 nodes. For the unit-disc case, the sensing range is fixed from  to  units. For the nonunit-disc case, we first pick an average sensing range + , and the sensors’ sensing ranges are uniformly distributed between +  and +  . The results are in Fig. 3.7. The average 26.

(67) (a). (b). Figure 3.6: Number of sensors v.s. coverage level for sensor fields of sizes: (a)    and. (b)   .. (a). (b). Figure 3.7: Sensing range v.s. coverage level for sensor fields of sizes: (a)    and (b)   .. 27.

(68) value of  grows as the average sensing range of sensors increases. We have also implemented a toolkit based on the proposed algorithms to determine the coverage level of a given sensing field. Fig. 3.8 shows the user interface of the toolkit. In the drawing area, one can easily deploy sensors by pointing out their locations and dragging their sensing ranges. By clicking on the “Deploy” button, the deployment of sensors will be fed into our program. There are three major functions of this toolkit, as described below. 1. Compute the Level of Coverage: By clicking on the “Compute Coverage” button and then the “Display Coverage” button, the system will calculate and return the current coverage level of the whole area, as illustrated in Fig. 3.9(a). 2. Color the Drawing Area: By clicking on the “Paint the drawing area” button, the drawing area will be colored based on each region’s coverage level. The coloring speed can also be modified, which will reflect on the coloring quality. An example is shown in Fig. 3.9(b). 3. Display Insufficiently Covered Segments: One can first select the desired value of  followed by clicking on the “Commit” button to feed  into the system. Clicking on the “Get Low Coverage Segments” button will generate an output file which contains all segments that are insufficiently  -perimeter-covered, as shown in the Fig. 3.10. Each line in the file is a segment of one sensor’s perimeter that is insufficiently covered. Fields in a line include: sensor ID, location, sensing range, starting and ending angles of the corresponding segment, and the levels of coverage inside and outside this segment. This toolkit is publicly downloadable from http://hscc.csie.nctu.edu.tw/download/coverage.zip.. 3.4 Applications and Extensions of the Coverage Problem The sensor coverage problem, although modeled as a decision problem, can be extended further in several ways for many interesting applications. The proposed results can also be extended for more realistic situations. In the following, we suggest several applications of the coverage problem and possible extensions of our results.. 3.4.1 Discovering Insufficiently Covered Regions For a sensor network, one basic question is whether the network area is fully covered. Our modeling of the  -UC and  -NC problems can solve the sensor coverage problem in a more 28.

(69) Drawing area Compute the coverage level. Colors of coverage levels. Display the coverage level Coloring speed Input the deployment Clear the drawing area. Paint the drawing area. Input the k value Output the insufficie n tly covered segments. Desired Coverage. Figure 3.8: Functional descriptions of the toolkit.. (a). (b). Figure 3.9: Execution results of the toolkit: (a) coverage level and (b) painting results.. 29.

(70) Figure 3.10: Insufficiently 4-perimeter-covered segments for the example in Fig. 3.9. general sense by determining if the network area is  -covered or not. A larger  can support a more fine-grained sensibility. For example, if  , we can only detect in which sensor an event has happened. Using a larger  , the location of the event can be reduced to a certain intersection of at least  sensors. Thus, the location of the event can be more precisely defined. This would support more fine-grained location-based services. To determine which areas are insufficiently covered, we assume that there is a central controller in the sensor network. The central controller can broadcast the desired value of  to all sensors. Each sensor can then communicate with its neighboring sensors and then determine which segments of its perimeter are less than  -perimeter-covered. The results (i.e., insufficiently covered segments) are then sent back to the central controller. By putting all segments together, the central controller can precisely determine which areas are less than  -covered. Note that since Theorem 1 provides a necessary and sufficient condition to determine if an area in the network is  -covered, false detection would not happen. Further actions can then be taken if certain areas are insufficiently covered. For example, the central controller can dispatch more sensors to these regions. An optimization problem is: how can we patch these insufficiently covered areas with the least number of extra sensors. This is still an open question and deserves further investigation.. 30.

(71) 3.4.2 Power Saving in Sensor Networks Contrary to the insufficient coverage issue, a sensor network may be overly covered by too many sensors in certain areas. For example, as suggested in [32], if there are more sensors than necessary, we may turn off some redundant nodes to save energy. These sensors may be turned on later when other sensors run out of energy. Reference [32] proposes a nodescheduling scheme to guarantee that the level of coverage of the network area after turning off some redundant sensors remains the same. Based on our result, we can solve a more general problem as follows. First, those sensor nodes who can be turned off, called candidates, need to be identified. A sensor   is a candidate if all of its neighbors are still  -perimeter-covered after  is removed. To do so,  can communicate with each of its neighbors and ask them to reevaluate their perimeter coverage by skipping  . If the responses from all its neighbors are positive,   is a candidate. After determining the candidates, each sensor can compete to enter the doze mode by running a scheduling scheme, such as that in [32], to decide how long it can go to sleep. However, [32] only considers a special case of our results with  .. 3.4.3 Hot Spots It is possible that some areas in the network are more important than other areas and need to be covered by more sensors. Those important regions are called hot spots. Our solutions can be directly applied to check whether a hot spot area is  -covered or not. Given a hot spot, only those sensors whose perimeters are within or have crossings with the hot spot need to be checked. So the central controller can issue a request by identifying the hot spot. Each sensor that is within the hot spot or has crossings with the hot spot needs to reevaluate the coverage of its perimeter segment that is within the hot spot. The results in Lemma 1 and Theorem 1 are directly applicable. So a hot spot is  -covered if and only if all perimeter segments within this hot spot are  -perimeter-covered. Note that a hot spot can be defined in other shapes too.. 31.

(72) 2 3. 2 3. 2. 3. 2. 2. 2. 2 2. 3. 1. 2. 2. 3 2. 3. 3. 2. 2. 3. 3 2. 1 2. 2 1. 1. 2. 2. 2. 2. 2 1. 2. 3 3. sj. 1 3. si. si. 2. 2. 4. 3. 2. 2. 4. 2 3. 1. 3. 1. 3. 1. 3. 2 3. 2 2. 2. 2. 2 3. 3. 2. 1. 2. 2. 2. 3. 1. 1. 3. 3 2. 1. 2. 3 2. 1. 2. 1. 2. 3. 1. 1. 3. 2. 3. 2. 2. 2. 1. 2. 1. 3. 1 2. (a). (b). (c). Figure 3.11: The coverage problem with irregular sensing regions: (a) coverage levels of irregular sub-regions, (b) polygon approximation of sensor   ’s sensing region, and (c) covered segments of  .. 3.4.4 Extension to Irregular Sensing Regions The sensing region of a sensor is not necessarily a circle. In most cases, it is location-dependent and likely irregular.1 Fortunately, our results can be directly applied to irregular sensing regions without problem, assuming that each sensor’s sensing region can be precisely defined. Observe that the sensing regions of sensors still divide the network area into sub-regions. Through Lemma 1, we can translate perimeter-covered property of sensors to area-covered property of the network. Then by Theorem 1, we can decide whether the network is  -covered. Fig. 3.11(a) shows an example. Given two sensors’ sensing regions that are irregular, it remains a problem how to determine the intersections of their perimeters. One possibility is to conduct polygon approximation. The idea is illustrated in Fig. 3.11(b), which can give the perimeter coverage in Fig. 3.11(c).. 1. The sensing region of a sensor may even be time-varying, in which case frequent reevaluation of the sensing. region would be necessary. This issue is beyond the scope of this work.. 32.

(73) Chapter 4 The Coverage Problem in a Three-Dimensional Space In this chapter, we study the coverage problem in a three-dimensional space. We also formulate this problem as a decision problem, whose goal is to determine whether every point in the service area of the sensor network is covered by at least % sensors, where % is a given parameter and the sensing regions of sensors are modeled by balls (not necessarily of the same radius). This problem in a 2D space is solved in Chapter 3 with an efficient polynomial-time algorithm (in terms of the number of sensors). In this chapter, we show that tackling this problem in a 3D space is still feasible within polynomial time. The proposed solution can be easily translated into an efficient polynomial-time distributed protocol.. 4.1 Preliminaries and Problem Statement We are given a set of sensors, $          , in a three-dimensional cuboid sensing field. . Each sensor        is located at coordinate     , inside and has a sensing range of  . So each sensor  ’s sensing area is a ball centered at     , with radius  , denoted as      ,   . The sphere of  is the surface of  , denoted as $ Consider two sensors  and  which have non-empty intersecting sensing regions. The spherical cap

(74)   is the intersection of sphere $  and ball  . The circle    is the intersection of spheres $ and $ . The center of spherical cap

(75)   , denoted by    , is.   and spherical cap

(76)   . Given any two points

(77) and

(78)  on $ , the the intersection of line  geodesic distance between

(79) and

參考文獻

相關文件

In section29-8,we saw that if we put a closed conducting loop in a B and then send current through the loop, forces due to the magnetic field create a torque to turn the loopÆ

• 1961 年Lawrence Roberts使用低速網路線 將劍橋與加州的電腦相連,展示廣域網路 (wide area network) 的概念..

In order to detect each individual target in the crowded scenes and analyze the crowd moving trajectories, we propose two methods to detect and track the individual target in

The purpose of this thesis is to propose a model of routes design for the intra-network of fixed-route trucking carriers, named as the Mixed Hub-and-Spoke

無線感測網路是個人區域網路中的一種應用,其中最常採用 Zigbee 無線通訊協 定做為主要架構。而 Zigbee 以 IEEE802.15.4 標準規範做為運用基礎,在下一小節將 會針對 IEEE

Selcuk Candan, ”GMP: Distributed Geographic Multicast Routing in Wireless Sensor Networks,” IEEE International Conference on Distributed Computing Systems,

In this paper, we discuss how to construct low-density parity-check (LDPC) codes, and propose an algorithm to improve error floor in the high SNR region by reducing the

To maximize coverage rate and minimize overlapping sensing area, we propose a greedy algorithm to find an arc on the circumference of the minimum overlapping area which can