MOBILITY-BASED TOPOLOGY CONTROL OF ROBOT NETWORKS...
Transcript of MOBILITY-BASED TOPOLOGY CONTROL OF ROBOT NETWORKS...
MOBILITY-BASED TOPOLOGY CONTROL OF ROBOT NETWORKS
by
Sameera Poduri
A Dissertation Presented to theFACULTY OF THE GRADUATE SCHOOL
UNIVERSITY OF SOUTHERN CALIFORNIAIn Partial Fulfillment of the
Requirements for the DegreeDOCTOR OF PHILOSOPHY
(COMPUTER SCIENCE)
August 2008
Copyright 2008 Sameera Poduri
Table of Contents
Dedication ii
List Of Tables v
List Of Figures vi
Abstract ix
Chapter 1: Introduction 1
Chapter 2: Related Work 82.1 Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Coverage Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Power Control for Network Connectivity . . . . . . . . . . . . . . . . . . . . . . 162.4 Network Configuration in three dimensions . . . . . . . . . . . . . . . . . . . . 182.5 Rendezvous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Chapter 3: Local Geometric Conditions for Global Connectivity 213.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.2 Neighbor-Every-Theta (NET) Graphs . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.1 Connectivity Analysis of NET Graphs . . . . . . . . . . . . . . . . . . . 273.2.2 Proximity Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.2.3 Coverage Analysis of NET Graphs . . . . . . . . . . . . . . . . . . . . . 40
3.3 NET graphs in three dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . 433.4 Power Control with NET Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . 463.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Chapter 4: Distributed Control Algorithms 524.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534.2 Design of the Control Law . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544.3 Experiments and Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.1 k-degree Constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604.3.2 NET constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
iii
Chapter 5: Connectivity Maintenance and Coalescence 725.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.1.1 Communication Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.1.2 Mobility Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765.1.3 Domain Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.2 Coalescence Time Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775.2.1 Hitting Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775.2.2 Meeting Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785.2.3 Coalescence Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Chapter 6: Coverage Optimization in Complex Environments 886.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.1.1 Partial derivative of the overall utility function . . . . . . . . . . . . . . 936.2 Distributed coverage control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.2.1 Control Law for each sensor . . . . . . . . . . . . . . . . . . . . . . . . 946.2.2 Distributed Coverage Algorithm . . . . . . . . . . . . . . . . . . . . . . 956.2.3 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.3 Deployment of Cyclops camera networks . . . . . . . . . . . . . . . . . . . . . 966.3.1 Sensing Performance Function . . . . . . . . . . . . . . . . . . . . . . . 966.3.2 Coverage Algorithm for 1D loop . . . . . . . . . . . . . . . . . . . . . . 1006.3.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036.3.4 Cyclops Experiments and Results . . . . . . . . . . . . . . . . . . . . . 109
6.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Chapter 7: Conclusions and Future Work 116
Bibliography 120
iv
List Of Tables
2.1 Classification of related work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.1 Parameter values used in our implementation of the distributed deployment algo-rithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
v
List Of Figures
1.1 A network of 10 Create Robots deployed at USC . . . . . . . . . . . . . . . . . 2
1.2 Illustration of global connectivity of a robot network . . . . . . . . . . . . . . . 3
1.3 Illustration of global sensing coverage of a robot network . . . . . . . . . . . . . 4
2.1 Hexagonal arrangement of nodes for optimal coverage with (a) Overlaping disksand (b) Non-overlaping disks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1 Illustration of the NET condition . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2 Proof of Theorem 3.2.6 for ‖ V1 ‖= 1 and ‖ V1 ‖= 2 . . . . . . . . . . . . . . . 29
3.3 Proof of Theorem 3.2.6 for ‖ V1 ‖= 3 . . . . . . . . . . . . . . . . . . . . . . . 30
3.4 A finite graph where all non-boundary nodes satisfy the NET condition . . . . . . 31
3.5 Degenerate cases of cuts through NET graphs that result in poor connectivity . . 33
3.6 RNG sector condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.7 θ = 2π3 bound for RNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.8 Sector condition for GG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.9 Sector condition for DelG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.10 Coverage with k nodes placed on the communication perimeter of node x . . . . 42
3.11 NET3D graph: each cone of angle θ must have at least one neighbor. . . . . . . . 44
3.12 RNG cone angle condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
vi
3.13 Comparison of NET graphs and CBTC(α) for a uniform random network of 500nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.14 Simulation results of power control based on NET graphs for a uniform randomnetwork of 500 nodes averaged over 100 runs . . . . . . . . . . . . . . . . . . . 50
4.1 Typical Network Configurations for a 64 robot deployment with k = 2 . . . . . . 67
4.2 Coverage and average degree for N = 49 and Rs = 4 for different values of Rc . 68
4.3 Variation of coverage with network size . . . . . . . . . . . . . . . . . . . . . . 69
4.4 Sample deployments with 100 robots and Rc = Rs = 8.0. . . . . . . . . . . . . 69
4.5 Sample deployments in the presence of obstacles with 100 robots andRc = Rs =8.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.6 Performance of the Distributed deployment Algorithms for a deployment of 100robots in terms of (a) Coverage, (b) Edge Connectivity (c) Average Degree and(d) NET condition satisfaction . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.7 For θ ≤ 2π3 , the communication graph is a supergraph of RNG . . . . . . . . . . 71
5.1 Illustration of Coalescence for N = 5 . . . . . . . . . . . . . . . . . . . . . . . 74
5.2 Illustration of random direction mobility model . . . . . . . . . . . . . . . . . . 75
5.3 Verification of analytical model for kth meeting time . . . . . . . . . . . . . . . 79
5.4 Experimental validation of analytical bounds on Coalescence Time. The graphshows the coalescence time as a function of network size on a linear scale . . . . 82
5.5 Experimental validation of analytical bounds on Coalescence Time. The graphshows the coalescence time as a function of network size on a log scale . . . . . 83
6.1 (a) An aerial view of the garden (b) the pathway to be covered . . . . . . . . . . 89
6.2 Cyclops camera with an attached Mica2 Mote . . . . . . . . . . . . . . . . . . . 89
6.3 Node locations for (a) uniform deployment and (b) optimized locations and theirdetection results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.4 Perspective projection model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
vii
6.5 Illustration of pixels on target not detected . . . . . . . . . . . . . . . . . . . . . 98
6.6 Validation of the proposed model for pixels detected vs. distance for three differ-ent environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.7 Performance of the distributed control law for three types of parameter functionson a 1D loop which is a 250 feet long smooth curve . . . . . . . . . . . . . . . . 104
6.8 Variation in coverage utility and convergence time for different network sizesaveraged over 50 iterations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.9 Performance of the distributed control law in the presence of occlusions - (1)obstacles and (2) sharp corners. . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.10 Performance of the distributed control law with partial knowledge of k1(x) andk2(x). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.11 Cyclops setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.12 Performance of the distributed control law in an indoor rectangular corridor . . . 112
6.13 Performance of the distributed control law in an outdoor environment . . . . . . 113
viii
Abstract
A fundamental problem that arises in realizing large-scale wireless networks of mobile robots is that of
controlling the communication topology. This thesis makes three contributions to the area of mobility-
based topology control in robot networks.
First, this work proposes local, geometric conditions on robot positions that guarantee global network
connectivity. When combined with distributed controllers for mobile robots, these conditions maximize
sensing coverage while maintaining connectivity. The key idea is the introduction of a new construct -
a Neighbor-Every-Theta (NET) graph - in which each node has at least one neighbor in every angular
sector of size θ. We prove that for θ < π, NET graphs are guaranteed to have an edge-connectivity of at
least b 2πθ c, even with an irregular radio communication range. The NET conditions are integrated into an
artificial potential field-based controller for distributed deployment.
Second, for robots communicating over unreliable wireless links, a coalescence behavior is intro-
duced, in which disconnected robots recover connectivity by searching for others. Our contribution is an
asymptotic analysis of coalescence time which quantifies the trade-off between the cost of maintaining
connectivity and that of repairing connectivity - the first such guideline for designing controllers for robot
networks.
Finally, having shown how to construct and maintain robot networks with maximal coverage, we
address a problem motivated by the performance of cheap, low-resolution cameras in complex outdoor
environments. This variation of the sensor coverage problem is the first to address the case where the
sensing performance of each robot carrying a camera depends on the local environmental conditions. We
ix
present a distributed reconfiguration algorithm for this case, and validate it using a network of real Cyclops
cameras placed in environments with varying illumination and backgrounds.
x
Chapter 1
Introduction
Networked Robotics is emerging as a new frontier of Robotics. Groups of robots that are in-
dividually limited can use local communication to collectively achieve complex tasks involving
sensing and sharing of information, collaborative reasoning and inference, and manipulation.
Compared to traditional sensing technologies, the large-scale nature of these networks will allow
high-fidelity sensing over vast terrains and robustness to failures in the sensors. Further, such
networks can leverage mobility to adaptively configure in response to temporal changes in the
sensing field, application requirements, network properties, etc. Currently, several robots have
been designed, fabricated, and deployed as part of networked experimental testbeds. Examples
include the Robomote from the University of Southern California [Dantu et al., 2005], Swarm-
bot and Create (figure 1.1) from iRobot, Scout from the University of Minnesota [Hougen et al.,
2000], Alice and e-puck from EPFL [Caprari and Siegwart, 2005], and Scarab from the University
of Pennsylvania [Michael et al., 2008]. These deployments consist of 10 − 100 robots operat-
ing over short periods of time. Going by the rate of advancement in electronic fabrication and
communication abilities, we expect that in the near future swarms of several hundreds of robots
1
Figure 1.1: A network of 10 Create Robots deployed at USC. Each robot is equipped with aninfrared bump sensor, 802.11 wireless radio and an embedded computer.
will become available. Such systems will significantly change the way we interact with our sur-
roundings. Consider for example, a robot network being deployed in the aftermath of disasters
like hurricane Katrina to discover victims and provide communication infrastructure to rescue
teams, or aquatic networks in oceans to detect and mitigate harmful algal blooms or oil spills, or
a swarm of aerial robots that can track soldiers on a battlefield and form a routing network that
dynamically reconfigures in response to the communication requirements of the soldiers.
A fundamental challenge in realizing robot networks is developing algorithms that enable
intelligent behavior. Since the networks will be very large, the algorithms must necessarily be
de-centralized i.e. they must guarantee global behavior using only local information and local
control. Each robot can typically sense information (such as the relative positions of other robots
and obstacles) within a fixed range to itself and can communicate with robots that are close
to it. Using this limited information, it must decide its motion strategy such that one or more
global properties of the network (such as sensing coverage) are optimized and one or more global
network constraints (such as connectivity) are satisfied. This is an instance of the classic local-to-
global problem that arises in several complex systems. Coverage and connectivity are complex
2
(a) (b)
Figure 1.2: Network connectivity is a global property of robot positions. The filled circles arerobots and the black lines indicate communication links between pairs of robots. In (a) the net-work is connected. When the highlighted robot moves (b), it improves its local communicationlinks (dotted edges) but the global connectivity is broken.
functions of robot locations and controlling them through local interactions is not trivial. Con-
sider the example in figure 1.2, where the network is initially connected. The highlighted robot
moves and improves its local connectivity but in the process breaks one edge that results in the
network being disconnected. Similarly, even if each robot optimizes its local sensing coverage,
the network as a whole can have poor coverage (figure 1.3). The objective of this thesis is to
develop distributed algorithms for large-scale robot networks to maximize sensing coverage
while maintaining network connectivity.
The problem of maintaining the topological properties of networks is called topology con-
trol and has been studied extensively in the context of static and mobile ad-hoc networks such
as packet radio networks, vehicular networks, cell phone networks, and, more recently, sensor
networks [Santi, 2005]. In these networks, topology control can be achieved by varying the
transmission power of the radios (power control) and selectively turning nodes on or off (sleep
scheduling). The traditional approach is to assume that the network is connected when the radios
operate at full power (or all nodes are turned on) and find the minimum transmission power at
each node (or maximum number of nodes that can be turned off) while preserving the network
3
Figure 1.3: Sensing coverage is a global property of robot positions. The disk around each robotis its sensing range. Each robot choses a locally optimal location but the net coverage is far fromoptimal.
connectivity. Robot networks present a very different and interesting scenario for topology con-
trol. Unlike traditional static and mobile ad-hoc networks, robot networks allow control over
positions. Since connectivity properties directly depend on the positions of nodes, position con-
trol can be leveraged for effective topology control.
4
Our thesis is that
“Mobility can be effectively used for topology control of robot networks”
To establish the thesis, we present solutions to the following three problems:
1. Local conditions to guarantee global connectivity
We introduce Neighbor-Every-Theta (NET) graphs defined as graphs in which each node (except
those at the boundary) has at least one neighbor in every θ angular sector around it. Our key theo-
retical result is that for θ < π, a NET graph has an edge-connectivity of at least b2πθ c irrespective
of the edge-lengths. Based on these conditions we design a distributed navigation controller and
power controller. We implement a typical power control protocol using satisfaction of NET con-
dition at each non-boundary node as the termination criterion and show that a power-efficient
network with edge connectivity b2πθ c can be achieved even with realistic, irregular links.
We also present extensions of our results to 3D using a cone in place of the 2D sector. Topol-
ogy control in three dimensions (3D) is much more complex compared to 2D. As a result, there
is very little work on topology control algorithms in 3D. We propose an efficient algorithm for
identifying the largest empty cone of a node’s communication range. This algorithm can be used
in conjunction with several configurations mechanisms for implementing their 3D extensions.
2. Controllers for distributed deployment
We present a distributed algorithm for self-deployment of robot networks based on artificial po-
tential fields. The pair-wise interactions between the robots are govrened by two kinds of forces
- one causes the robots to repel each other to improve their coverage and the other is an attractive
5
force that restricts the inter-robot distances and thereby imposes local edge constraints. By using
a combination of these forces, every robot tries to maximize its coverage while maintaining local
constraints. Two types of constraints are considered - (1) minimum number of neighbors at each
robot and (2) NET condition. Simulations in Player/Stage simulation platform [Gerkey et al.,
2001] show that the controller achieves good sensing coverage and successfully maintains local
constraints even in the presence of obstacles.
The above potential fields based controller assumes that the network is initially connected.
To address the case where robots start in a disconnected state or accidentally lose connectivity
due to failures, we propose a ‘coalescing’ behavior where robots search for their peers and form a
connected network. We study the time taken for coalescence for a worst-case scenario where the
robots are memoryless (do not build a map) and do not have any knowledge of the environment or
positions of the other robots. Each robot performs an independent random search and when two
robots meet, they coalesce into a cluster and move together. Using the random direction mobility
model, we show that coalescence time has an exponential distribution which is a function of the
number of robots, speed, communication range, and size of the domain. Further, as the number of
robots (N ) increases, coalescence time decreases as O( 1√N
) and Ω( log(N)N ). Simulations validate
our analysis and also suggest that the lower bound is tight.
3. Coverage optimization in complex environments
We address a variation of the coverage problem for autonomous mobile sensors where the sens-
ing performance of each sensor depends on the local environmental conditions. We propose a
6
distributed control algorithm by which mobile sensors reconfigure their locations to provide op-
timal coverage. As an application we consider the problem of covering loopy pathways in indoor
and outdoor environments using cyclops camera. Local lighting conditions in these environments
significantly affect the sensing performance of each camera. Based on several experiments we
propose a location dependent sensing model for the camera. We present simulation results for
various scenarios and demonstrate convergence of our algorithm. We also present simulation
results on data collected in the indoor and outdoor settings.
Outline of Dissertation
The dissertation is organized as follows. The next chapter surveys related literature in geometric
optimization, sensor network topology control, and the Rendezvous problem in Robotics. Chapter
3 presents NET graphs and analysis of their connectivity properties in 2D and extensions to 3D.
Self-deployment algorithms for mobile nodes that maintain a local constraint are presented in
Chapter 4 followed by an analysis of Coalescence time in Chapter 5. In chapter 6, we describe
deployment in the presence of non-idealities in the sensor models. Finally, chapter 7 summarizes
the contributions and presents directions for future research.
7
Chapter 2
Related Work
The sensor coverage problem is related to classical geometric optimization problems such as disk-
covering, filling, voronoi partitions, set-cover [Hall, 1988], and the art-gallery problem [O’Rourke,
1987] and also the problem of multi-robot coverage [Gage, 1992]. The key factors that limit the
utility of the solutions of these problems to robot networks are 1) they do not provide for net-
work connectivity constraints and/or 2) they are centralized and assume global knowledge of
the domain. Not surprisingly, the sensor coverage problem has been an active research problem
in robotics. In this section, we review results from classical computational geometry as well as
those from recent research for location optimization in robot networks. The optimal locations can
be realized by using robots or humans to deploy networks [Batalin and Sukhatme, 2007; Corke
et al., 2004] or with networks of mobile robots [Howard et al., 2002; Cortes et al., 2004; Batalin
and Sukhatme, 2002]. In addition to controlling the locations of sensors, sensor coverage is also
studied in the context of sleep scheduling. Sleep scheduling techniques assume an initial high-
density deployment - the problem being to find the smallest subset of nodes that is sufficient to
provide the required coverage and connectivity. This is a discrete version of the sensor placement
8
problem - in the extreme scenario, if the sensor density is infinite, sleep scheduling is equivalent
to finding optimal sensor locations.
In the next section, we present an overview of the various models used for sensing, coverage
and communication. Later, we will discuss algorithms based on the models used (Table 2.1).
2.1 Models
Sensor Model
Let p = p1,p2, ...,pN,pi ∈ Q be locations of n sensors. The sensing performance of each
sensor i at point q is given by f(i,q). Depending on the nature of f(i,q), we can classify sensors
as follows:
• Isotropic Binary Disk Model: f(i,q) = 1 if ||pi − q|| ≤ Rs(i), and 0 otherwise. Rs(i)
is called the sensing range of sensor i. e.g. ranging sensors, temperature, acoustic, radio,
omnidirectional cameras, etc.
• Isotropic Continuous Model: f(i,q) = g(||pi − q||) where g is a monotonically de-
creasing, continuous function.
• Visibility Model: f(i,q) = 1 if the line segment pq ⊆ Q, and 0 otherwise. Also called
line-of-sight sensors.
• Limited range, visibility Model: If θ1, θ2, ...θn are the orientations of the sensors, then
f(i,q) = 1 if (1) ||pi − q|| ≤ Rs(i), (2) angle(i,q) ≤ φi, and (3) pq ⊆ Q, and 0
otherwise. φi is the field-of-view of sensor i. e.g. ranging sensors, cameras, etc.
9
A point in the domain, q is set to be covered if it is within the sensing region of at least
one node, i.e., if f(i,q) ≥ α for at least one i, where α is an application-dependent coverage
threshold. Similarly, a point q in the domain is k−covered if it is simultaneously covered by k
nodes. For sensors (like temperature sensors) that measure at a point, the sensing range can be
interpreted as a measure of sampling granularity.
Coverage Definition
Depending on the application, the desired sensing coverage can be characterized in one of 3 ways
(extension of the taxonomy proposed in [Gage, 1992]):
1. Blanket Coverage:
(a) Max type: If Φ(q),q ∈ Q, is the event density function, find an arrangement of
sensors such that the number of event detections per unit time is maximized, i.e.
C =i=n∑i=1
∫Q
Φ(q).f(i,q)dq
is maximized. If Φ is constant on Q, this is equivalent to maximizing the net area
covered given n sensors.
(b) Complete type: Find the minimum number of sensors such that each point in the
domain is covered, i.e. ,
q ∈ Q|f(i,q) ≥ α, 1 ≤ i ≤ n ⊇ Q
10
2. Barrier Coverage: Find an arrangement of a barrier of static nodes that minimizes the
probability of a moving target penetrating an area undetected.
3. Sweep Coverage: Find a motion strategy for a group of mobile sensors such that the num-
ber of event detection per time is maximized or the number of event misses per area is
minimized. This can be treated as a moving barrier where the targets are static.
Robot network coverage is generally of the blanket type because most of the applications
involve gathering spatial data from the environment. In this work, we consider blanket coverage
optimization.
Communication Model
Wireless communication depends on relative positions of nodes, radio characteristics and envi-
ronmental conditions. The probability that a message from node i reaches node j can be repre-
sented as PRR(i, j). In general, PRR(i, j) 6= PRR(j, i).
• Binary Disk Model: PRR(i, j) = 1 if ||pi − pj|| ≤ Rc(i), 0 otherwise. Rc(i) is called
the Communication range of sensor i.
• Probabilistic Model: In real scenarios, PRR(i, j) is not binary due to non-idealities in-
troduced by hardware and wireless propogation channel. It can be estimated empirically as
a probability distribution. [Zhao and Govindan, 2003; Zuniga and Krishnamachari, 2004;
Cerpa et al., 2005; Lymberopoulos et al., 2006].
11
Connectivity Constraints
A network is said to be connected if there exists at least one path between any two nodes. If
there exist at least k paths between any two nodes, then the network is k−connected. Since
robot networks must mostly operate unattended, connectivity is a necessary requirement to ac-
cess information from the network. Sometimes k−connectivity is desirable for increased fault
tolerance.
Since our work deals with blanket coverage, we first present an extensive survey of blanket
coverage optimization algorithms categorized by the sensor models they use. Several of these
techniques do not address connectivity. In section 2.3 we look at topology control techniques for
a sensor network whose main focus is on maintaining connectivity. Lastly, we review rendezvous
algorithms for groups of mobile robots.
2.2 Coverage Optimization
Binary Disk Sensor Model
Given a domain, D, and disks of fixed radius, R, disk-packing is the problem of finding the
densest arrangement of non-overlapping disks. For simple domains without holes/obstacles, the
hexagonal arrangement (fig. 2.1(a)) is optimal [Williams, 1979]. This is the densest arrangement
of binary disk sensors such that the area covered per sensor is maximum. In the Disk Covering
problem, the disks can overlap and the problem is to find the minimum number of disks that cover
every point in D. Again, a hexagonal arrangement (fig. 2.1(b)) is optimal. If the communication
12
model is a disk with radius at least twice the sensing range, then disk covering implies connectiv-
ity [Xing et al., 2005; Zhang and Hou, 2005]. For Rc ≥ 2Rs, sleep scheduling protocols can be
based only on coverage and a node can be turned off if it does not cover any point that is already
covered by other sensors. For Rc < 2Rs, CCP [Xing et al., 2005] and OGDC [Zhang and Hou,
2005] present heuristics to decide if a node can be turned off. They improve the efficiency of the
network by decreasing the number of active nodes but it is not necessarily the optimal, i.e. the
configuration with the minimum number of active nodes.
Several algorithms have been proposed for dispersion of mobile sensors in unknown environ-
ments [Hsiang et al., 2002; Howard et al., 2002; Batalin and Sukhatme, 2002]. These algorithms
do not consider the connectivity constraint. Potential Field techniques for robot applications were
first introduced by Khatib [Khatib, 1986] and ever since have been used extensively to develop
elegant solutions for path planning. Social potential fields have been introduced for robot for-
mations [Reif and Wang, 1999]. The deployment algorithm we propose is an extension of the
potential field-based deployment algorithm proposed in [Howard et al., 2002] where coverage is
achieved as an emergent property of the system.
Continuous Disk Model
There is a rich body of literature on optimization of facility locations such as locations of mail-
boxes in a city. The problem is to find locations for a limited number of facilities, that provide a
service demanded by users, such that the average (or maximum) distance from the demand points
to the facilities is minimized. The facilities can be modeled as points, lines, circles, or polygons
and the distance metrics can be euclidean, geodesic, minkowski, etc. For the sensor coverage
13
(a) (b)
Figure 2.1: Hexagonal arrangement of nodes for optimal coverage with (a) Overlaping disks and(b) Non-overlaping disks
problem, we are interested in the setting with point-like facilities and euclidean distance metric.
The distance to the facility (or a function of it) gives us the sensor’s performance function, f ,
which is isotropic and monotonically decreasing. If the demand points are uniformly distributed
in the domain, the voronoi diagram [Okabe et al., 1992], of a given arrangement of facilities, par-
titions the domain by allocating each domain-point to its nearest facility. The voronoi partition
of an arrangement of sensors can be used to compute the maximal breach path [Megerian et al.,
2005] which is the path between two points that maximizes the minimum distance to any sensor.
For point-like facilities, the Centroidal Voronoi Partition minimizes the average distance to
the facilities [Du et al., 1999]. Llyod’s Method [Llyod, 1982] is an iterative technique to construct
Centroidal Voronoi Partitions. Given an initial arrangement of k points (or facilities), the Voronoi
cells are constructed and their centroids are used as the new locations. This process is repeated
until the locations coincide with the centroids. Llyods method has been implemented as a dis-
tributed algorithm for a group of mobile facilities where each facility computes its local voronoi
cell and moves towards the centroid [Drezner, 1995; Cortes et al., 2004, 2005]. A non-uniform
14
demand density function can also be incorporated into this framework so that the distribution of
sensors follows the density function. It has been shown that a local estimate of the density func-
tion suffices for this algorithm [Schwager et al., 2006]. A key drawback of these methods is that
they do not consider obstacles in the domain. The optimality and convergence is proved only for
cases without obstacles.
Visibility Model
With the recent development of inexpensive image sensors [Rahimi et al., 2005], large camera
networks will soon be possible. Optimal positioning of visibility sensors is a different instance
of the locational optimization problem because they require line-of-sight. The art-gallery prob-
lem [O’Rourke, 1987] is to find an arrangement of cameras (that have infinite range and 360o
field of view) that can (blanket) cover a given polygon. In 2D, this problem can be solved in
polynomial time even when the polygons have holes. However, finding the arrangement with a
minimum number of cameras is NP-hard [Aggarwal, 1984]. A similar problem is also addressed
in motion-planning for mobile robots, to find the shortest trajectory or large workspace such that
the robot has an unobstructed view of the target [Briggs and Donald, 2000]. The above algorithms
are centralized and do not consider network connectivity constraints.
Finite range, visibility Model
Many of the real world cameras and ranging sensors have both limited field-of-view and limited
range. Finding the smallest number of such sensors to cover an arbitrarily complex domain is a
very hard problem. Recently, a number of approximation algorithms have been proposed. The
15
solutions are either based on randomized approaches [Danner and Kavraki, 2000; Banos and
Latombe, 1998] or a decomposition of the domain into smaller convex polygons [Kazazakis and
Argyros, 2002]. All of these algorithms are centralized and to the best of our knowledge, a
distributed algorithm has not been proposed yet. Instead of repositioning cameras, configuring
the settings such as pan, tilt, and zoom of a static arrangement of cameras can lead significant
improvement in sensing coverage and can be achieved in a distributed manner [Kansal et al.,
2007].
2.3 Power Control for Network Connectivity
Topology Control is considered a canonical problem in static and mobile ad-hoc networks (see
[Santi, 2005] for a detailed survey). Power control algorithms deal with maintaining connectivity
and do not address the problem of sensing coverage. In Cone Based Topology Control (CBTC)
[Wattenhofer et al., 2005], every node divides the space around it into sectors of angle α and
increases its transmission power till in each sector it can reach a neighbor or till it reaches its
maximum transmission power. There are two key differences between CBTC and the NET based
structured deployment: (1) NET condition does not assume the existence of a connected graph
when nodes operate at full power but provide ways to construct such a graph and (2) In CBTC,
it is possible that a non-boundary node operating at full power does not have a neighbor in an
α sector while in a NET graph every non-boundary node must have at least one neighbor in
each θ sector. The largest sector angle that guarantees connectivity in case of the NET graph
is π [D’Souza et al., 2006] as against 5π6 in CBTC. Several authors have proposed pruning the
communication graph to proximity graphs such as the RNG, GG, and Yao Graphs as a way to
16
achieve desirable connectivity and sparseness properties. Jennings, et. al., present a distributed
algorithm for constructing an RNG [Jennings and Okino, 2002] where each node increases it’s
transmit power till its neighbors cover the 2π region around it. We show that to obtain an RNG it
is sufficient to have one neighbor in each 2π3 sector and present sector based conditions for other
proximity graphs. In a similar spirit, D’Souza, et al.,[D’Souza et al., 2006] have shown that if
each non-boundary node in a network has at least one neighbor in every π sector around it, the
graph is guaranteed to be connected and is also sparse. Bredin, et. al., [Brendin et al., 2005] have
recently proposed a network repair strategy that finds additional node locations required to ensure
k-connectivity in any given network. The algorithm is proven to be within a constant factor of
the absolute minimum number of additional nodes.
Since sensing coverage and network connectivity are both related to the spatial configura-
tion of nodes, the relation between the two has generated a lot of interest. It has been shown
that if the communication model is a disk with radius at least twice the sensing range, then disk
covering implies connectivity [Xing et al., 2005; Zhang and Hou, 2005; Tian and Georganas,
2005]. Miorandi and Altman [Miorandi and Altman, 2005] performed a probabilistic analysis
of the relationship between radio connectivity and sensing coverage assuming a random uniform
distribution of the nodes. Recently, sensor placement problem has been studied for non-ideal sen-
sor and communication models [Krause et al., 2006; Zhang and Sukhatme, 2007]. The proposed
algorithm uses a pilot deployment to gather data and build non-parametric probabilistic models
for sensing and communication which are then used to find optimal sensor locations.
17
2.4 Network Configuration in three dimensions
Coverage optimization in 3D is significantly more challenging that in 2D. In fact, most of the
related problems like sphere-packing, art-gallery, and voronoi tetrahedralization are extremely
complex in 3D. Not surprisingly, there have been few efforts to address 3D sensor network prob-
lems like geographic routing [Kao et al., 2005] and localization [Biswas et al., 2006]. In [Bahram-
giri et al., 2006], an algorithm has been presented to extend CBTC [Wattenhofer et al., 2005]. The
computational complexity at each node is O(d3log(d)) as against O(dlog(d)) in 2D, d being the
average node degree. XTC [Wattenhofer and Zollinger, 2004] does not use the disc assumption
or angular information; given an initially connected network in 3D, it can retain connectivity.
2.5 Rendezvous
Rendezvous is the problem of multiple mobile robots meeting at a point in an unknown environ-
ment. In Coalescence, the robots do not stay collocated but try to spread out. Several distributed
Rendezvous algorithms have been proposed. Some of these assume connectivity [Ando et al.,
1999; Lin et al., 2003]. If the communication graph is an RNG then rendezvous algorithms have
been proposed that can deal with partial communication loss over some of the links [Cortes et al.,
2006]. In the absence of connectivity, the robots can explore the environment building a map
of the landmarks [Roy and Dudek, 2001] where other robots are likely to visit. This is similar
in spirit to the Coalescence problem where the base station is a landmark whose location is un-
known. However, our focus is on forming a connected component while allowing the robots to
remain “spread out” so that the time for coalescence is reduced.
18
Several algorithms have been proposed to maintain connectivity of a wireless network [Za-
vlanos and Pappas, 2005; Spanos and Murray, 2004] given that the initial network is connected.
Coalescence algorithms complement these by providing a way to regain connectivity in the event
of failures. In [Porfiri et al., 2007], the variation in connectivity of a network of robots performing
random walks on a lattice has been analyzed. Recently, the role of mobility in increasing sensing
coverage of a network has been analyzed [Liu et al., 2005]. In particular, it has been shown that
the time taken to detect an intruder decreases in comparison to a static network. In delay tolerant
networks, mobile nodes are disconnected most of the time and communicate when they are within
communication range of each other. To study the routing delay, the motion of the mobile nodes
is modeled as a random mobility model. In both the above cases, achieving connectivity is not
the goal and the nodes continue moving after an intruder is detected or message is exchanged.
In random walks literature, a coalescing random walk refers to a system of particles that
coalesce when they hit other particles while performing a random walk [Dykiel, 2005]. Several
asymptotic properties such as the time for convergence have been analyzed. Here, a group of
coalesced particles is equivalent to one particle and this analysis does not capture the increase in
communication spread.
19
Reference Mechanism CoverageModel
Comm Model &Connectivity
Distributed Comment
Isotropic Binary ModelWilliams [1979] placement Blanket, Max.
typeNone No Optimal
Williams [1979] placement Blanket, Com-plete
None No Optimal
Howard et al.[2002]; Batalin andSukhatme [2002]
Mobile Blanket, Max.type
None Yes Heuristic
Zhang and Hou[2005]; Xing et al.[2005]
Sleep schedule Blanket, Com-plete
Binary disk & 1-Conn
Yes Heuristic
NET graphs placement Blanket, Max.type
Binary Disk &tunable k-Conn
Yes Heuristic
Isotropic Continuous ModelOkabe and Suzuki
[1997]placement Blanket; Max None No Sufficient
Du et al. [1999] placement Blanket; Max None Yes OptimalCortes et al.
[2004]; Schwageret al. [2006]
mobile Blanket; Max None Yes Optimal
Infinite Range VisibilityChvatal [1975];
Aggarwal [1984]placement Blanket; Com-
pleteNone No Heuristic
Finite Range VisibilityKazazakis and Ar-gyros [2002]
placement Blanket, Com-plete
None No Approximate
Gerkey et al. [2006] mobile Sweep None No HeuristicKansal et al. [2007] “motility” Blanket, Max
typeNone Yes Optimal
Probabilistic ModelKrause et al. [2006] placement random random No OptimalData-centricdeployment
placement random no Yes Locally Opti-mal
Table 2.1: Classification of related work. The entries in bold refer to our work.
20
Chapter 3
Local Geometric Conditions for Global Connectivity
Topology control for ad-hoc wireless and sensor networks has traditionally only dealt with uncon-
trolled deployments, where there is no explicit control on positions of nodes [Santi, 2005]. The
primary mechanisms proposed are power control and sleep scheduling. These methods involve
removing edges from an existing, well connected communication graph in order to save power
while ensuring that the resultant sub-graph preserves connectivity. Robot networks present a dif-
ferent and interesting scenario for topology control. Since connectivity properties directly depend
on the positions of nodes, position control can be leveraged for effective topology control. Tradi-
tional approaches are ill-suited in such scenarios since they are not designed to exploit control of
the motion and placement of the nodes.
We develop a general approach that supports traditional methods like power control and also
allows new designs for controlled deployments. Our main contributions are:
• a k-connectivity result, based on local conditions and independent of communication model
• topology control algorithms based on the k-connectivity result for a) power control with
static nodes, and b) distributed deployment of mobile nodes
21
• 3D extensions of 2D results and an efficient algorithm for topology control in 3D.
We define Neighbor-Every-Theta (NET) graphs in which each node (except those at the
boundary) have at least one neighbor in every θ sector of its communication range. Our key
theoretical result is that for θ < π, a NET graph has an edge-connectivity of at least b2πθ c irre-
spective of the communication model. This implies that the condition only depends on the angles
between the neighbors of each node and holds for arbitrary edge-lengths. This feature is par-
ticularly relevant for sensor networks using low-power radios that have irregular communication
range. For the special case with an idealized disk communication model, we derive conditions for
maximizing the sensing coverage area (defined as the total area sensed by at least one node) while
satisfying the k-connectivity constraint, and for obtaining proximity graphs such as the Relative
Neighborhood Graph. It should be emphasized that the NET condition is local since each node
only requires relative position information of its (communicating) neighbors.
NET graphs are naturally suited for distributed power control. We implement a typical power
control protocol using satisfaction of NET condition at each non-boundary node as the termination
criterion and show that a power-efficient network with edge connectivity b2πθ c can be achieved
even with realistic, irregular links. This is in contrast to the sector based topology control algo-
rithms in literature including CBTC [Wattenhofer et al., 2005; Li et al., 2001], that rely on an
idealized disk communication model to guarantee connectivity properties. In CBTC based power
control [Bahramgiri et al., 2006], for a network to be k-connected, each node must either have a
neighbor in every θ = 2π3k sector or operate at full power. Our results imply that a sector angle
of θ = b2πk c is sufficient for k-connectivity. A three times larger value of sector angle implies
a much lower power requirement. We present simulation results to establish this in Section VI.
22
Even though we do not consider sleep-scheduling mechanisms in depth, it is possible to think
of designs where densely deployed nodes make sleep/wake decisions in a distributed manner by
using local, pair-wise negotiations based on combinations of NET condition satisfaction and other
criteria.
Position control is ideal for obtaining topologies that are NET graphs. Given the properties
guaranteed by the NET condition, an external agent deploying a static sensor network can make
decisions on the best positions for deployment of new nodes based on the geometry of the existing
network. Self-deploying mobile nodes can use this condition to decide their motion strategy. We
present a distributed algorithm for self-deployment of mobile nodes to concretely demonstrate the
use of the local and geometric conditions to implement coverage and connectivity tradeoffs. The
algorithm involves achieving NET condition satisfaction through purely pair-wise negotiations
between neighbors. The performance of this algorithm is studied through an implementation on
the Player/Stage simulation platform [Gerkey et al., 2001]. Results illustrate the tunable tradeoff
between connectivity and coverage and show that the distributed algorithm can achieve approxi-
mations of some coverage-maximizing tiling structures that also satisfy NET conditions.
Topology control in three dimensions (3D) is much more complex. There are several oper-
ations that are common to a wide range of topology control algorithms that have increased and
sometimes prohibitively high complexity in 3D. Examples include obtaining angular information
of and ordering neighbors and checking for intersections of overlapping regions [Santi, 2005;
Zhang and Hou, 2005; Xing et al., 2005; Cortes et al., 2005]. As a result, there is very little work
on topology control algorithms in 3D. We argue that controlled deployment and NET graphs are
well suited for sensor networks in 3D and present extensions to our 2D results. We propose an
23
efficient algorithm for identifying the largest empty cone of a node’s communication range. This
algorithm can be used in conjunction with several deployment and topology control mechanisms
for implementing their 3D extensions.
This chapter is organized as follows. The next section defines the problem and section 3.2
presents NET graphs and analysis of their connectivity properties which are extended to 3D in
section 3.3. Sections3.4 presents application of NET graphs for distributed power control respec-
tively and conclude in section 3.5.
3.1 Problem Formulation
Local conditions that guarantee global network properties are the key to designing distributed
topology control algorithms. In particular, we study local conditions that guarantee global k-
edge-connectivity of the network. Once such conditions are found, they can be integrated with
controls available in order to design topology control algorithms. Further, it is important to
understand if the results can be extended to 3D networks in an efficient manner. A detailed
description of these three problems follows.
Problem 1: k-connectivity certificates
Given a network, find local geometric conditions between node positions that can guarantee
global k-edge-connectivity.
A graph is said to be k-edge-connected if at least k edges must be removed to disconnect
it Diestel [2000]. By Menger’s theorem, this is equivalent to saying that there exist at least
k edge-disjoint paths between any two nodes in the graph. The graph that we consider is the
24
communication network where two nodes are said to have an edge between them if they can
communicate. In this case, high edge-connectivity is desirable because it implies high fault-
tolerance and path diversity.
By ‘local’ we mean that each node only has information about positions of its communicating
neighbors relative to its own position. The global coordinates of nodes are not available. The con-
ditions we seek must be based only on this local information so that each node can independently
decide whether it satisfies the condition.
Problem 2: Topology control
How can the local geometric conditions for k-connectivity be integrated power control?
Given a static network of N nodes, how should they choose their communication power such
that the network is k-connected and the energy is minimized?
Lastly, we study the extension to networks in three dimensions.
Problem 3: 3D networks
Do the local geometric conditions for 2D networks extend to 3D networks?
3.2 Neighbor-Every-Theta (NET) Graphs
In this section, we will define Neighbor-Every-Theta graphs and show that they give us k-
connectivity certificates.
25
(a) (b)
Figure 3.1: Illustration of the NET condition. Filled circles are symmetric neighbors. In a) nodedoes not satisfy NET condition. It has one sector greater than θ with no neighbor. In b) nodesatisfies NET condition, the largest sector with no neighbors is smaller than θ.
Definition 3.2.1 The Neighbor-Every-Theta (NET) condition (Fig. 3.1) for a node embedded in
the 2D plane is defined as requiring at least one symmetric neighbor in every θ sector of its
communication range.
Nodes A and B are symmetric neighbors if A can communicate to B and B can communicate to
A.
For finite networks, nodes on the network boundary cannot satisfy such a condition. The
boundary of a network can be defined as a cycle of nodes such that every other node lies inside
the cycle [Kroller et al., 2006]. A node that does not belong to the boundary is called an interior
node.
Definition 3.2.2 A NET graph is one in which every interior node satisfies the NET condition for
a given θ.
26
We now analyze the connectivity and coverage properties of NET graphs. For large networks
where the number of boundary nodes is small compared to the network size, we show that NET
graphs have an edge connectivity of at least b2πθ c, independent of the communication model.
With the stronger assumption of a idealized disk communication model, NET graphs, for specific
values of θ, contain proximity graphs such as the Relative Neighborhood Graph (RNG). An upper
bound on the sensing coverage is shown to be obtained from a symmetric arrangement of nodes
and can be computed as a function of θ. NET graphs form a family of graphs based on the
single parameter θ - as θ becomes smaller, the graphs become denser with an increasing level of
connectivity.
3.2.1 Connectivity Analysis of NET Graphs
The edge-connectivity of any graph is at most its minimum node degree and can in general be ar-
bitrarily low irrespective of the node degree [Diestel, 2000]. For some special graphs, higher node
degree implies higher edge-connectivity. One example of such a graph is the random geometric
graph, where an average node degree of O(logN) (where N is the network size) guarantees an
edge-connectivity of 1 with high probability [Xue and Kumar, 2004]. It turns out that for em
NET graphs also there is relation between minimum node degree and edge-connectivity. In NET
graphs every interior node has a degree of at least b2πθ c. We will show that the edge-connectivity
is also at least b2πθ c (except in pathological cases where boundary nodes can be disconnected by
removing fewer edges). This means that the easiest way to disconnect a NET graph is to discon-
nect a single interior node by removing b2πθ c edges. We will now formally establish this property
27
by first considering the simple case of graphs that are very large so that edges close to the bound-
ary are not significant. An extreme case of such graphs are the “boundary-less” graphs defined
below. Later, we will analyze the impact of boundary nodes on connectivity.
Definition 3.2.3 A NET graph is boundary-less if every node satisfies the NET condition. For
θ < π, such a graph must span the entire 2D plane.
Definition 3.2.4 Given a graph G = V,E, a cut set is a set of edges E′ ⊆ E such that
G′ = V,E−E′ has more than one component. The edge-connectivity a graph, λ, is the size of
its smallest cut set, C. Note that if G is connected, C must divide it into exactly two components.
Definition 3.2.5 For a graph embedded in the Euclidean plane a cut is a curve that partitions
the graph into two or more components.
Theorem 3.2.6 For θ < π, a boundary-less NET graph has an edge-connectivity λ ≥ b2πθ c
Proof: Consider a NET graph G = V,E. Let C ⊆ E be the smallest cut set of G so that
λ =‖ C ‖. Let the two components of G′ = V,E−E′ be G1 = V1, E1 and G2 = V2, E2.
WLOG, ‖ V1 ‖≤‖ V2 ‖.
If ‖ V1 ‖= 1 then ‖ C ‖≥ MinDegree ≥ b2πθ c (Fig 3.2(a)). If ‖ V1 ‖= 2 then ‖ C ‖≥
2(b2πθ c − 1
)≥ b2π
θ c since θ < π (Fig. 3.2(b)).
Suppose ‖ V1 ‖> 2. Construct the convex hull, H1 of V1. Then H1 ⊆ V1. Define angle φi
at hi ∈ H1 as shown in Fig 3.3. There will exist at least 3 vertices1 hi such that φi > π i.e. ,
∠hi < π. WLOG, assume that φ1, φ2 and φ3 > π. Since G = V,E is a NET graph, for
i = 1, 2, 3, φi must contain ≥ bπθ c edges ∈ C. Therefore, ‖ C ‖≥ 3bπθ c ≥ b2πθ c. 2
1SinceH is a convex polygon, ∠hi ≤ π,∀i. Suppose all except 2 internal angles are = π, say 0 < ∠h1,∠h2 < πand ∠hi = π for i = 3, 4, ...k, where k is number of vertices of H , then
Pk1 ∠hi = ((k − 2)π + ∠h1 + ∠h2) >
(k − 2)π. Contradiction sincePk
1 ∠hi = (k − 2)π.
28
(a) ‖ V1 ‖= 1 (b) ‖ V1 ‖= 2
Figure 3.2: The filled circles and edges represent G1, dotted edges form the cut set C.
The above result holds for the general case where the graph has boundary nodes provided
the cut is completely in the interior of the network, i.e. if all the nodes in V1 satisfy the NET
condition. If on the other hand, the cut mostly consists of boundary edges then it is not inter-
esting because it is unlikely to impact network performance. Now consider cuts that intersect
the network boundary twice - when entering and leaving the graph (fig. 3.4(a)). WLOG, assume
that the cut is minimal in length i.e. it is the shortest curve corresponding to its cut set. The case
when the cut intersects itself is covered by the above theorem - the number of edges cut inside
the loop alone must be at least b2πθ c. Assume that the cut does not intersect itself and by way
of contradiction, that it disconnects the network by cutting less than b2πθ c edges. We will now
analyze the nature of such a cut and prove that away from the network boundary, the distance
along the cut between two consecutive edges must be less than Rc.sec(θ/2), where Rc is an
upper bound on the edge-length. This implies that away from the boundary the cut cannot be
longer than b2πθ c · Rc.sec(θ/2). If θ is not close to π this expression is bounded. For example,
for θ = 0.9π it is ≈ 13 ·Rc and for θ = 2π3 it is 6 ·Rc. For large networks, a “short” cut like this
29
Figure 3.3: ‖ V1 ‖≥ 3 The red nodes and edges represent G1, the dotted edges form the cut setC. The corresponding convex hull H is shown with solid black lines.
can only exist close to the boundary (fig. 3.5(a)) or if the boundary is “pinched” [de Silva et al.,
2005](fig. 3.5(b)).
Lemma 3.2.7 For θ < π, the length of a minimal cut between two consecutive edges in a
boundary-less NET graph is less than Rc · sec(θ/2).
Proof: Let L be the cut and l its length between two consecutive edges it cuts, say (u1, v1) and
(u2, v2) (figure 3.4(b)). Then l ≤ maxd(u1, u2), d(u1, v2), d(v1, u2), d(v1, v2), where d() is
the euclidean distance function. Let the node pair that leads to maximum distance be P1, P2.
Now P1 must have at least one neighbor in each of the two θ sectors adjoining−−−→P1P2. Let these be
Q1 at an angle 0 ≤ α1 ≤ θ and Q′1 at an angle 0 ≤ α′1 ≤ θ with−−−→P1P2. 0 ≤ α1 + α′1 ≤ θ < π.
WLOG, α1 < π/2. Similarly Q1 must have a neighbor Q2 at an angle α2 ≤ θ, and so on till
some Qm−1Qm intersects−−−→P1P2. Note that the point of intersection cannot be in between P1
30
(a) (b)
Figure 3.4: (a) A finite graph where all non-boundary nodes satisfy the NET condition. The thickcurved line L is a cut through the graph (b) L cuts polygons
and P2 because otherwise L would cut Qm−1Qm contradicting the assumption that (u1, v1) and
(u2, v2) are consecutive edges.
We have,
31
l = ‖P1P2‖
≤ r1 · cos(α1) + r2 · cos(α1 + α2 − π) + · · ·
+rm · cos(α1 + α2 + · · ·+ αm − (m− 1)π)
(where π/2 > α1 > α1 + α2 − π > · · ·
> α1 + α2 + · · ·+ αm − (m− 1)π) > −π/2)
≤ Rc(cos(α1) + cos(α1 + α2 − π) + · · ·
+cos(α1 + α2 + · · ·+ αm − (m− 1)π))
(where Rc is an upper bound on edge length)
≤ Rc((cos(α1) + cos(α1 + θ − π) + · · ·
+cos(α1 − (m− 1)(π − θ)))
(since cos is a concave function in [−π/2, π/2])
= Rcsin(m·(θ−π)
2
)· cos
(α1 + (m−1)·(θ−π)
2
)sin(θ−π
2
)≤ Rc
1cos(θ/2)
2
It must be emphasized that the connectivity result only needs the largest edge in the network to
be bounded and holds even for a non-ideal and irregular communication models. In the following
subsections, we present further interesting properties of NET graphs with a stronger assumption
of an idealized disk communication model.
32
(a) (b)
Figure 3.5: Degenerate cases of cuts through NET graphs that result in poor connectivity. (a) Acut close to the boundary (b) pinched boundary
3.2.2 Proximity Graphs
Proximity graphs such as the Relative Neighborhood Graph (RNG), Gabriel Graph (GG) and
the Delaunay Graph (DelG) have several properties such as connectivity, sparseness, efficient
network routes, etc. that make them desirable network topologies [Li, 2003; Jennings and Okino,
2002; Rajaraman, 2002; Santi, 2005]. We will now analyze conditions under which NET graphs
will contain these proximity graphs. Here we assume an idealized disk communication model
but allow each node to have a different communication range. Further, the number of boundary
nodes is assumed to be small compared to the network size. The analysis presented is non-trivial
since the edge-lengths in NET graphs are restricted by the communication range of nodes, while
in proximity graphs they depend only on the relative positions of nodes and very long edges are
possible.
The set of edgesE for various proximity graphs is defined as follows [Diestel, 2000]. In what
follows, we use the name and location of a node interchangeably.
33
Figure 3.6: RNG sector condition. a) The circle of radius d(x, y) > Rc subtends an angle of 2π3 at
x. The lune contains an area larger than a 2π3 sector. b) The limiting case, when d(x, y) = R(x).
Disk graph (DG(V,E,R)): The directed graph containing all outgoing edges of a node,
u ∈ V , not longer than R(u).
E = (u, v)|u, v ∈ V and d(u, v) ≤ R(u)
Given positive r ∈ R, let C(p, r) be the circle consisting of points whose distance from point
p is strictly less than r. Define the lune, denoted L(p, q), to be the intersection of two circles,
both of radius d(p, q), centered at these points, that is, L(p, q) = C(p, d(p, q)) ∩ C(q, d(p, q)).
34
Relative Neighborhood Graph (RNG(V)): The undirected graph containing an edge (u, v)
if there is no point w ∈ V that is simultaneously closer to both u and v. Equivalently, (p, q) is an
edge if L(p, q) ∩ V = ∅.
E = (u, v)|u, v ∈ V and ∃ no w ∈ V 3
d(u,w) < d(u, v) and d(v, w) < d(u, v)
Gabriel Graph (GG): The undirected graph containing an edge (u, v) if the disk whose
diameter is edge (u, v) does not contain any other points of V, that is, if C(u+v2 , d(u,v)
2 )∩ V = ∅.
E = (u, v)|u, v ∈ V and C(u+ v
2,d(u, v)
2) ∩ V = ∅
Delaunay Graph (DelG): The undirected graph containing an edge (u, v) if the Voronoi
regions of u and v have non-empty intersection. From the properties of Voronoi diagrams it
follows the edges of triangle (u, v, w) are in DelG(V ) if their circumcircle does not contain any
other points of V .
These graphs are hierarchically related:
RNG(V ) ⊆ GG(V ) ⊆ DelG(V ).
In the proofs that follow, we assume that each node, u, in the network has a communication
range R(u) so that the communication graph of the network is a disk graph. Our next step is to
find conditions under which the RNG of the network is contained in the communication graph.
35
This is equivalent to finding conditions under which no edge (u, v) of an RNG is longer than
either R(u) or R(v). The following theorem presents this condition. Later, we prove similar
results for the GG and DelG.
Theorem 3.2.8 If each node x ∈ V has at least one neighbor in every 2π3 sector of C(x,R(x)),
the communication graph is a supergraph of RNG(V ). Moreover, 2π3 is the largest angle that
satisfies this property.
Proof: Consider any node x ∈ V . Suppose x has at least one neighbor in every 2π3 sector of
C(x,R(x)). We first show that for any node y outside C(x,R(x)), the edge (x, y) /∈ RNG(V ).
The lune L(x, y) will contain a sector of at least 2π3 (Fig.3.6). By premise, ∃ a node in L(x, y).
This implies that RNG(V ) does not have any edges incident on x that are longer than R(x).
Next we show that for any node z ∈ V insideC(x,R(x)) such that d(x, z) > R(z) i.e. (x, z) ∈
DG(V,E,R) but (z, x) /∈ DG(V,E,R), the edge (x, z) /∈ RNG(V ). Since z also has a
neighbor in every 2π3 sector of C(z,R(z)) and d(x, z) > R(z), from the above argument
(x, z) /∈ RNG(V ).
Therefore RNG(V ) ⊆ DG(V,E,R(x)).
Now suppose a node x′ ∈ V ′ has two neighbors with a sector angle of 2π3 +δ (δ > 0) between
them (Fig.3.7). We can place a node y′ outsideC(x′, Rc) such that the edge (x′, y′) ∈ RNG(V ′).
Therefore, 2π3 is the largest angle for which this condition holds.2
We have shown that for θ ≤ 2π3 , NET graph contains the RNG assuming an idealized disk
communication model. We can prove a similar property for GG and DelG, except that in this case
the value of θ is a function of the distance to neighbors.
36
Figure 3.7: θ = 2π3 bound for RNG - L(x, y) is empty
Lemma 3.2.9 If each node x ∈ V has at least one neighbor in every θ = 2 arccos( rR(x)) sector
of C(x, r) (r ≤ R(x)), the communication graph is a supergraph of GG(V ). Proof:Consider a
node X and a node Y outside C(X,Rc). For any r ≤ Rc, let β be the angle subtended by the
intersection area C(X, r) ∩ C(X+Y2 , d(X,Y )
2 ) at X . From Fig.3.8 we have,
r
2=d(X,Y )
2cos(
β
2)⇒ β = 2 arccos(
r
d(X,Y )).
Since arccos is strictly decreasing in [0, 1] and d(X,Y ) ∈ (Rc,∞), the smallest angle subtended
is
θ = inf β = 2 arccos(r
Rc). (3.1)
Suppose x has at least one neighbor in every
θ = 2 arccos(r
Rc)
37
Figure 3.8: Sector condition for GG
sector of C(X, r). By definition, the edge (X,Y ) /∈ GG(V ) if
C(d(X,Y )
2,d(X,Y )
2, ) ∩ V 6= ∅. (3.2)
(3.2) is satisfied for any choice of Y if there is a node Z ∈ V in the θ sector of C(X, r). By
premise such a Z exists and hence the GG will not have any edge lengths greater than Rc. This
implies that GG(V ) ⊆ DG(V,E,Rc).2
Corollary 3.2.10 If a node x has at least one neighbor in every θ = 2 arccos( rR(x)) sector of
C(x, r) (r ≤ R(x)), the communication graph is a supergraph of DelG(V ). Proof: Consider
all circles passing through X and Y . The smallest is C(X+Y2 , d(X,Y )
2 ) and the largest are two
circles of infinite radius of which the straight line through X and Y is an arc. From Fig.3.9, it
38
Figure 3.9: Sector condition for DelG
can be seen that the intersections of these circles with C(X, r) subtend an angle which is at least
θ at X , where
θ = inf β = 2 arccos(r
Rc).
By premise, there is at least one node in every θ sector ofC(X, r). Therefore, every circle passing
through X and Y will contain another node. So,
1. there is no Z ∈ V such that the4XY Z ∈ DelG(V )
2. trivially C(X+Y2 , d(X,Y )
2 ) also contains another node.
By 1,2 and definition of DelG, the edge (X,Y ) /∈ DelG(V ). Since the choice of Y is arbitrary,
there are no edge lengths greater than Rc in the DelG. Hence DelG ⊆ DG(V,E,Rc).
In real networks, it is not possible for the boundary nodes to satisfy the conditions required
by the theorems. We show using simulated deployments (in section 4.3.2) that the assertions can
be validated in spite of these exceptions.
39
3.2.3 Coverage Analysis of NET Graphs
Having listed the conditions that guarantee global connectivity properties, we now turn to the
problem of maximizing coverage. We assume that all nodes have a idealized disk sensing model
with a sensing radius of Rs. Maximizing sensing coverage is equivalent to packing problem with
a constraint placed on the communication neighbors. This is a very hard problem given an irreg-
ular communication model and even harder to solve locally. Therefore, we make a simplifying
assumption that the communication model is also an idealized disk with a radiusRc for all nodes.
Suppose that in order to satisfy the NET sector conditions, a node must have k = b2πθ c neighbors.
From the node’s local perspective, all neighbors must be located on the perimeter of the commu-
nication range to maximize coverage. Intuitively, the nodes must also be placed symmetrically
on the perimeter. We prove this result for the special case when Rc = Rs.
Lemma 3.2.11 For Rs = Rc, the area coverage is maximized when the k ≥ 3 nodes are placed
at the edges of k disjoint 2πk sectors of C(x,Rc).
Proof: Consider a node x and k nodes y1, y2, ...., yk placed on the perimeter of C(x,Rc). Let
these nodes be placed in anticlockwise order at angles β1 = 0, β2, ...., βk respectively. Define
θi = βi+1 − βi, 1 ≤ i ≤ k − 1
θk = 2π − βk (3.3)
We need to find θi such that the total area covered by these k + 1 nodes is maximized. The open
disks of all nodes lie within C(x, 2Rc) and are tangent to this disk at exactly one point (Ti) each.
40
The disks of adjacent nodes i and i + 1 intersect at point Ii (and at X). The total coverage lies
between πR2c and 4πR2
c and is maximized when the areak∑i=1
TiIiTi+1 is minimum (Fig.3.10).
TiIiTi+1
= TiXTi+1 − IiYiTi − IiYi+1Ti+1 − IiYiXYi+1
= (2Rc)2 · θi2− 2R2
c ·θi2− 1
2(2Rc sin
θi2
)(2Rc cosθi2
)
= R2c(θi − sin θi)
k∑i=1
TiIiTi+1 = R2c(
k∑i=1
θ −k∑i=1
sin θi)
= R2c(2π −
k∑i=1
sin θi) (3.4)
The problem now reduces to finding maxk∑i=1
sin θi subject tok∑i=1
θi = 2π and 0 ≤ θi ≤ 2π. Since
sin is non-negative and concave in [0, π] and non-positive in (π, 2π], it follows that the solution
is θi = 2πk , 1 ≤ i ≤ k.2
For k = 3, 4, 6, it is possible to place nodes such that each node has its neighbors placed
symmetrically on its communication range. The resulting communication graph will be a tiling
of the space: hexagonal, square and triangle for k = 3, 4 and 6 respectively. In these cases,
since each node maximizes coverage locally, the total coverage of the network will also be the
maximized. For values of k other than 3, 4 and 6 such an arrangement is not possible since
the corresponding tiling structures do not exist. Therefore in these cases, the local condition
for optimizing coverage will not necessarily optimize global coverage. Due to their symmetry,
41
Figure 3.10: Coverage with k nodes placed on the communication perimeter of node x. Theshaded area is the total coverage.
tiling graphs possess some other desirable properties. It can be verified that the hexagonal tiling
(θ = 2π3 ) is an RNG and in this case, GG ≡ RNG. This holds for the square tiling (θ = π
2 ) as
well. The triangle tiling (θ = π3 ) is a DelG.
Based on the above theorem, we can compute an upper bound on the maximum achievable
coverage of a NET graph as a function of θ. Consider the arrangement in Fig. 3.10 with all the
neighbors placed symmetrically around x. If each overlap area within the sensing range of x is
divided by the number of nodes that cover it, then the sum of these weighted areas will give the
maximum possible per-node coverage. In this computation we ignore the boundary nodes which
cannot have a symmetric placement of neighbors. Therefore, this is an asymptotic bound. This
upper bound on coverage is plotted in Fig. 4.6 along with the lower bound for edge-connectivity
derived in theorem 3.2.11.
42
In the next section we extend NET graphs to 3D and study their connectivity and coverage
properties.
3.3 NET graphs in three dimensions
Network configuration in 3D is significantly more complex than in 2D. There are several oper-
ations that are common to a wide range of sensor network configuration algorithms in 2D that
have increased and sometimes prohibitively high complexity in 3D. We argue that controlled
deployment and NET graphs are well suited for sensor networks in 3D and present extensions
to our 2D results. We propose an efficient algorithm for identifying the largest empty cone of a
node’s communication range. This algorithm can be used in conjunction with a number of generic
deployment and topology construction mechanisms for implementing their 3D extensions.
A node satisfies the NET3D condition if it has at least one symmetric neighbor in every cone
of solid angle θ. A NET3D graph is one in which every node except those on the boundary satisfy
the NET3D condition. If the network is very large compared to the size of its boundary, we make
the following conjecture for the edge-connectivity.
Conjecture 3.3.1 For θ < 2π, a boundary-less NET3D graph has an edge-connectivity λ ≥
b2πθ c 2
Note that, like in 2D, the connectivity result is independent of the communication model. For
specific values of θ, NET3D graphs will contain proximity graphs such as RNG, GG, and DelG.
Lemma 3.3.2 If each node x ∈ V has at least one neighbor in every θ = π cone of S(X,R(x)),
the communication graph is a supergraph of RNG(V ).
43
Figure 3.11: NET3D graph: each cone of angle θ must have at least one neighbor.
Lemma 3.3.3 If each node x ∈ V has at least one neighbor in every θ = 2π(1 − rRc
) cone
of S(X,R(x)), the communication graph is a supergraph of GG(V ) and DelG(V ). Moreover,
2π(1− rR(x)) is the largest angle that satisfies this property.
The proofs follow from the corresponding proofs in 2D and the fact that a cone with apex
angle α will contain a solid angle of θ = 2π(1− cos(α)). For example in the proof for RNG, the
3D lune will contain a cone with apex angle α = 2π3 and solid angle of θ = π.
Algorithm to check NET condition
The local conditions described above can be integrated with node placement to construct efficient
topologies. A key requirement is an algorithm to check for empty cones larger than a given θ.
44
Figure 3.12: RNG cone angle condition
For instance, to check for formation of RNG, θ = π. This step is non-trivial in 3D because there
exists no natural “order” of neighbors. We propose the following algorithm for finding the largest
empty cone around a given node.
Algorithm 1: largestCone(G = (V,E),v ∈ V )
let S be the unit sphere centered at v
for each u ∈ Neighbor(v), let −→vu be the
direction vector from v to u
let cu be the intersection of −→vu with S
let DT be spherical delaunay triangulation cu∀u
find ai,j,k = area of circumcircle of triangle
(ui, uj , uk) ∈ DT
return max(ai,j,k)
Algorithm 1: Find largest empty cone around a node
45
Theorem 3.3.4 For a given graphG = (V,E) and node v, largestCone returns the largest empty
cone around v.
Proof: The circumcircle of every (spherical) triangle in the spherical delaunay triangulation is
empty [Na et al., 2002]. Therefore the cone returned by largestCone is certainly empty. Suppose
there exists an empty cone (whose image on the unit sphere is the circle c) that is larger than
the one returned by largestCone. Then the center of c lies in some triangle t of the delaunay
triangulation. Since c is empty, none of the vertices of t must lie inside c. This implies that the
circumcircle of t will be larger than c which is a contradiction. Therefore largestCone correctly
returns the largest empty cone.2.
The computational complexity of largestCone isO(dlog(d)) where d is the number of neigh-
bors of a node. This is because, the complexity of spherical triangulation is O(dlog(d)), the
number of triangles generated is O(d), and sorting them will also take O(dlog(d)) time.
Several topology control algorithms [Santi, 2005; Wattenhofer et al., 2005; Jennings and
Okino, 2002; Xing et al., 2005; Zhang and Hou, 2005] in 2D rely on directional information and
in particular use the angle between adjacent neighbors. This algorithm can be used as a primitive
for extending such algorithms to 3D.
3.4 Power Control with NET Graphs
In this section we illustrate how NET graphs can be used for topology control of a static network
by varying the communication power. The result is a power control mechanism that can guaran-
tee k-edge-connectivity without any restriction on the communication model. In contrast, most
46
existing power control algorithms, including the well-known CBTC [Wattenhofer et al., 2005;
Bahramgiri et al., 2006] algorithm, require an idealized binary disk communication model.
In the power control problem, we are given a network deployed with a sufficiently large
density so that connectivity (k-connectivity) is guaranteed when nodes operate at full power. The
objective is to find an assignment of transmission powers to nodes so that the reduced graph
retains connectivity (k-connectivity) while expending minimum energy. In some applications
it is also desirable to maintain other properties such as planarity, sparseness, spanner, etc. NET
graphs are naturally suited for distributed power control because
• they are based on local geometric conditions that guarantee global k-connectivity,
• communication range for the low power radios used in sensor network applications is
highly irregular [Zhao and Govindan, 2003; Zuniga and Krishnamachari, 2004]. The con-
nectivity properties of NET graphs are independent of the communication model.
Consider a sensor network such that when nodes operate at full power, they satisfy the NET
condition for a given θ. Using a typical power control protocol and satisfaction of NET condition
at each internal node as the termination criterion, a power-efficient k-connected network can be
achieved.
We have implemented a completely distributed power control algorithm as follows. Starting
with a minimum value, each node incrementally increases its transmission power till the NET
condition is satisfied. We assume that the orientation of neighbors can be computed either from
angle-of-arrival of messages or localization information. Each node computes its empty sectors
and increments power if 1) NET condition is not satisfied or 2) if it has an asymmetric incoming
link from a node that does not satisfy NET condition. Since boundary nodes (detected using
47
an algorithm such as [Kroller et al., 2006]) are not required to satisfy NET condition, they only
increase power in response to incoming asymmetric links. This is a simple implementation with
scope for further power optimization which we plan to pursue in future. Our objective here is
to demonstrate that for a given θ the resulting topologies preserve b2πθ c edge-connectivity. In
simulations, we used realistic statistical models for wireless links developed in [Zuniga and
Krishnamachari, 2004] for which the authors have made code available online [Zuniga et al.,
2005].
Fig. 3.4 shows typical topologies resulting with 500 nodes distributed uniformly at random
on a 80m x 80m square. Nodes that cannot satisfy the NET condition at full power are identified
as boundary nodes (shown as red squares). The initial transmission power was set to −10dB
and incremented in steps of 1dB. Links that had a packet reception rate of at least 90% were
considered active. Note that the figures only show bidirectional links. The simulations were
terminated when all non-boundary nodes satisfied NET condition.
Fig. 3.4 (a) and (b) show the comparison the topologies resulting from NET based power
control and CBTC(α) [Bahramgiri et al., 2006] for 2-edge-connectivity. According to CBTC(α)
a node must either have a neighbor in every θ = 2π3k or operate at full power to guarantee k-
edge-connectivity. We show that having a neighbor in every θ = 2πk is sufficient to guarantee
k-edge-connectivity. As a result, NET condition results in a significantly sparser, and hence
efficient, topologies compared to CBTC(α).
Fig. 3.14 shows the edge-connectivity and average power over 100 iterations. Edge-connectivity
was computed as the minimum number of paths consisting of symmetric links between any two
internal nodes. In all experiments, the edge-connectivity was always greater than b2πθ c. This
48
validates our key theoretical result, Theorem 3.4. The average power used increases quickly as θ
decreases (fig. 3.14(b)). This implies that for efficient topology control it is important to choose
the largest value of θ possible depending on the application requirements. Because NET graph
requires an angle (θ = 2π/k) that is three times bigger than the angle required by CBTC(α)
(θ = 2π/3k), the power saved will very large. For example, for 2-edge-connectivity, CBTC(α)
requires an average power of 4dB while NET graph requires −6dB.
These initial results are promising because we are able to achieve power-efficient topologies
that guarantee k-connectivity through distributed power control even with realistic, irregular link
models.
(a) θ = π (b) θ = 2π6
Figure 3.13: Comparison of NET graphs and CBTC(α) for a uniform random network of 500nodes. For 2-edge-connectivity, (a) NET graph requires sector angle θ = π and average power−5.91dB while (b) CBTC requires θ = 2π
6 and average power of 4.10dB.
49
(a) edge-connectivity (b) average power
Figure 3.14: Simulation results of power control based on NET graphs for a uniform randomnetwork of 500 nodes averaged over 100 runs. The edge-connectivity is greater than the 2π
k lowerbound derived in Theorem 3.4. The average communication power for achieving 2-connectivityusing CBTC(α) is 4dB (red square) compared to −6dB using NET graphs.
3.5 Conclusions
This chapter addresses distributed topology control using a construct called Neighbor-Every-
Theta (NET) graphs. These graphs have the following two properties that allow for simple and
practical algorithm design:
• tunable connectivity based on a single parameter, the sector angle θ
• connectivity guarantees do not depend on communication model
NET graphs are such that each node has at least one neighbor in every θ sector around it.
We prove that for a given θ < π, NET graphs have an edge connectivity of at least b2πθ c, except
in pathological cases where the network can be partitioned close to its boundary. This property
holds even in cases when the communication model is irregular. For the special case of an ide-
alized disk communication model, it is shown that for specific values of θ, NET graphs contain
50
proximity graphs such as the relative neighborhood graphs that are well known to be desirable
communication topologies. We also prove the symmetric neighbor placement condition for max-
imizing sensing coverage under the NET condition.
To concretely demonstrate the use of NET graphs for tunable power control, we implement
a typical protocol using satisfaction of NET condition at each internal node as the termination
criterion and show that a power-efficient network with edge connectivity 2πθ can be achieved even
with realistic, irregular links.
Lastly, we consider NET graphs in three dimensions and study their connectivity properties.
It is our conjecture that for a given solid angle θ < 2π, NET3D graphs have an edge connectivity
of at least b4πθ c when partitions close to the boundary are ignored. There is very little earlier
work on topology control in 3D. Several geometric computations become complex and even
intractable when extended from 2D to 3D. We have developed an efficient algorithm for deter-
mining the largest empty cone around a node in 3D based on spherical Delaunay triangulations.
The running time is O(dlogd) for average node density d, which is a significant improvement
over the earlier O(d3logd) algorithm proposed in the context of CBTC [Bahramgiri et al., 2006].
The new algorithm can be used to extend several sector based topology control algorithms to 3D.
Topology control in 3D is an important area for further research.
In the next chapter, we develop distributed deployment algorithms for robot networks to
achieve NET conditions.
51
Chapter 4
Distributed Control Algorithms
In this chapter we propose deployment algorithms for robot networks that maximize sensing
coverage while maintaining a local constraint. We consider two constraints
1. k−degree: each robot has degree at least k where k is a parameter to the algorithm
2. NET condition: each robot satisfies the NET constraint, i.e. has at least one neighbor in
every θ sector of its communication range, where θ is a parameter to the algorithm.
We assume that the robots do not have global localization or a global map of the environment
but can sense the distance and orientation of their neighboring robots.
Our approach is based on virtual potential fields. We treat each robot in the network as a vir-
tual charged particle and define simple force laws to govern the interaction between neighboring
robots. These laws incorporate two different kinds of forces. One is a repulsive force that tries to
maximize coverage while the other is an attractive force that imposes the local constraint. As a
result of these forces, a group of robots placed close together spreads out into a network to maxi-
mize the coverage while satisfying the local constraint. The deployment proceeds by starting in a
state where all the constraints are satisfied and at each step robots move such that no constraints
52
are broken. In the next chapter, we consider the case where the robots are disconnected at the
start of deployment.
4.1 Problem Formulation
Problem: Given N mobile robots with isotropic radial sensors of range Rs and isotropic radio
communication of range Rc, how should they deploy themselves so that the resulting configura-
tion maximizes the total sensor coverage of the network while maintaining a local constraint at
each robot?
We make the following assumptions:
1. The robots have isotropic binary disk sensing and communication,
2. The robots are capable of omni-directional motion, and
3. Each robot can sense the exact relative range and bearing of robots within its sensing range
We impose certain desiderata on the problem solution. The deployment algorithm should:
• be distributed and scalable
• not require a prior map or localization of robots
• adapt to changes in the environment and the network itself
We use the following three metrics to evaluate the performance of the deployment algorithm.
1. the normalized per-robot coverage. This is defined as:
Coverage =(Net Area Covered by the Network)
NπR2s
53
In the remainder of the chapter, we use the term ‘coverage’ to mean the normalized per-
robot coverage as defined above.
2. the percentage of robots in the network that satisfy the local constraint, and
3. the average degree of the network.
4.2 Design of the Control Law
Potential field-based techniques have been used extensively to solve navigation problems in mo-
bile robotics. In these methods, virtual potential fields are used to represent goals and constraints
and the control law for the robot’s motion is formulated such that it moves from a high potential
state to a low potential state similar to the way in which a charged particle would move in an
electrostatic field.
In our deployment algorithm, we construct virtual forces between robots so that each robot
can attract or repel its neighbors. The forces are of two kinds. The first, Fcover, causes a pair of
robots to repel each other to increase their sensing coverage. The second, Fconstraint constrains
a pair robots by making them attract each other when they are on the verge of being disconnected.
By using a combination of these mutually opposing forces, each robot maximizes its coverage
while maintaining the local constraint. The deployment proceeds by starting in a state where all
the constraints are satisfied and at each step robots move such that no constraints are broken.
A robot whose constraints are fully satisfied, repels all of its neighbors using Fcover till its
local constraint is about to be broken. The resulting neighbors are called the robot’s critical
neighbors and the connections between them and the robot are called critical connections. The
54
robot now communicates to all its critical neighbors that its connection with them is critical and
therefore should not be broken. It then continues to repel all its neighbors using Fcover but
as the distance between the robot and its critical neighbor increases, ‖Fcover‖ decreases and
‖Fconstraint‖ increases. As a result, at some distance ηRc, where 0 < η < 1, the net force
‖Fcover + Fconstraint‖ between the robot and its neighbor is zero. At this distance, the robot
and its neighbor are in equilibrium with respect to each other. We call 1η the safety factor because
the larger its value, the smaller the probability of critical neighbors losing connectivity.
The forces are constructed as inverse square law profiles - ‖Fcover‖ tends to infinity when
the distance between robots is zero so that collisions are avoided. Similarly, ‖Fconstraint‖ tends
to infinity when the distance between the critical neighbors is Rc so that loss of connectivity
between them is prevented.
Mathematically, the forces can be expressed as follows. Consider a network of n robots
1, 2, 3, . . . , n at positions x1,x2, . . . ,xn respectively. Let ∆xij represent the Euclidean distance
between robots i and j, i.e. ∆xij = ‖xi − xj‖
Fcover and Fconstraint are defined as follows.
Fcover(i, j) =(−Kcover
∆xij2
)(xi − xj
∆xij
)
Fconstraint(i, j) =
Kconstraint
(∆xij−Rc)2
(xi−xj
∆xij
)if critical connection;
0 otherwise.
where Kcover and Kconstraint are the force constants.
55
The resultant force between the robots i and j is
F(i, j) = Fcover(i, j) + Fconstraint(i, j)
and robot i will experience a net force of
Fi =∑
all neighbors j
F(i, j)
The equation of motion for robot i is formulated as:
xi(t) =(
Fi − νxi
m
)
where ν is a damping factor and m is the virtual mass of the robot which is assumed to be 1.
Computational Details
Having described the equation of motion for the robot, we discuss our choices of the four param-
eters Kcover, Kconstraint, ν and η.
• Kcover: Consider two robots that are repelling each other. As the distance d between them
increases, the combined coverage of the robots increases, reaches a maximum of 2πR2s at
d = 2Rs and remains constant after that. This implies that for d > 2Rs repelling does not
improve coverage. We therefore pick a value for Kcover such that at
d = 2Rs, ‖Fcover‖ ≈ 0
56
• Kconstraint: At d = ηRc we want ‖Fcover + Fconstraint‖ = 0, i.e.
−Kcover
η2Rc2 +
Kconstraint
(η − 1)2Rc2
= 0
Kconstraint =(1− η)2
η2Kcover
• η: A large η increases the probability of critical neighbors getting disconnected while a
small η results in lesser coverage. We used a value of 0.8 for η. This is a heuristic choice
based on experimental experience.
• ν: We conducted a simple ‘two-body’ variant of our scenario by implementing our algo-
rithm on two robots to study the variation in their interaction for different values of ν. For
these experiments we fixed the values of Kcover, Kconstraint and η as explained above. We
found that for small values of ν the system oscillates. We picked the smallest value of ν that
does not lead to oscillations. This value corresponds roughly to the critically dampedcase
for our system. In our experiments, we used ν = 0.25.
In the following, we analyze the coverage achievable by uniform random and symmetrically
tiled network configurations that satisfy the constraint of k-degree. These will serve as reference
points to evaluate the performance of our algorithm.
Coverage of Uniform Random Networks
A uniform random network is one in which the robots are distributed randomly and with a uniform
density. For such networks, the probability of finding i robots in a specified domain depends only
57
on the area of the domain and not on its shape or location. Given any area S, the probability that
it will contain exactly i robots is given by
P (i) =(ρS)i
i!e−ρS
where ρ is the density of robot deployment [Hall, 1988].
The probability that a randomly chosen robot will have a degree of at least k is the probability
that there will be at least k robots in the area πR2c around it.
P (i ≥ K) = 1−i=(K−1)∑i=0
(ρπR2c)i
i!e−ρπR
2c
As the density of deployment increases, the probability that each robot will have a degree
of at least k, increases but the per-robot coverage of the network decreases. Therefore the best
coverage achieved by a random network that satisfies the constraint of k-degree with a high
probability, say 0.95, will correspond to the smallest density for which P (i ≥ K) ≥ 0.95. Let
this density be ρ′.
The coverage of a uniform random network is a function of its density and Rs. For a network
with density ρ′ the normalized per robot coverage is:
Coverage =1− e−ρ′πR2
s
ρ′πR2s
Note that this expression is independent of the number of robots in the network.
58
Coverage of Symmetrically Tiled Networks
In chapter 3, we proved that for Rc = Rs, symmetrically tiled networks give the maximum
coverage achievable by networks satisfying the k-degree constraint. Given a symmetrically tiled
configuration, we can compute the per robot coverage as a function of Rs and Rc. If Rc ≥ 2Rs,
Coverage = 1 because there will be no overlap between the robots. For the case whenRc < 2Rs
and K = 1, Coverage =(π−θ/2+sin(θ/2)
)π where θ = cos−1( Rr
2Rs). We can derive similar
expressions for the other values of k.
4.3 Experiments and Results
This section presents a set of experiments designed to study the performance of the proposed
system for different values of the input parameters. The simulations were conducted using the
Player/Stage1 software platform which simulates the behavior of real sensors and actuators with
a high degree of fidelity [Gerkey et al., 2001]. Each of the robots in our simulations is capable
of omni-directional motion and sensing (using a laser range finder). Further, each robot has a
retro-reflective beacon so that it can be distinguished from the obstacles in the environment. In
our simulations we used a 2D obstacle-less environment.
Fig. 4.1 shows the initial and final network configuration for a typical deployment. The circles
in the figure represent the coverage areas of individual robots. The robots start in a compact grid
like configuration at the center of the environment and spread out to cover a large portion of the1Player/Stage was initially developed jointly at the USC Robotics Research Labs and is freely available under the
GNU General Public License from http://playerstage.sourceforge.net
59
environment. In the particular instance shown, the sensing range of the robots is equal to their
communication range.
4.3.1 k-degree Constraint
Fig. 4.1 shows the variation of the coverage and average degree of the network with time for
different values of k. The coverage (average degree) increases (decreases) rapidly in the first 1-2
minutes and then saturates to a stable value within 4-5 minutes. This is because, initially all the
robots have more than k neighbors and so they spread out uninhibitedly to improve the coverage
until the degree constraints activate and restrict their motion. Further, since these constraints
activate at different stages for different values of k, the coverage (average degree) graphs for the
different values of k, start off identically but branch off at different points and settle at different
values of final coverage (degree).
Fig. 4.2 compares the performance of our algorithm in terms of the coverage and average
robot degree with the uniform random and symmetrically tiled network configurations for three
different regimes - Rc > 2Rs, Rc = 2Rs and Rc < 2Rs. Clearly, the configurations we obtain
outperform the random network. Note that while computing the coverage of the symmetrically
tiled configurations we assume that the size of the network is infinite. The values thus obtained
are in reality an upper bound on the coverage that can be achieved with finite networks because
in the latter case, we will have to take into account the edge effects.
Our third performance metric is the percentage of the robots in the network that have a min-
imum degree of k. This we found was at least 95% in all the network configurations resulting
form our deployment algorithm. This is also the case with the random networks. Recall that
60
while finding the density of deployment for the random network we explicitly imposed the con-
straint that each robot should have at least k neighbors with a probability of at least 0.95. In the
symmetrically tiled configurations however this probability is 1 since all the robots have exactly
k neighbors.
An appealing and unexpected result is that there is no significant change in the per-robot
coverage obtained when the size of the network N was varied from 49 to 81 (fig. 4.3). One
would expect that for smaller values of N the edge effects will be more significant and therefore
as N increases the per-robot coverage will increase. We speculate that either the edge effects do
not vary significantly with the network size or a 49 robot network is large enough to make edge
effects negligible.
4.3.2 NET constraint
In a typical mobile deployment scenario, all robots start in positions close to each other so that
the initial network is highly well connected and the NET condition is trivially satisfied. Each
robot begins by repelling all neighbors to increase its sensing coverage. In the process, it loses
communication with some neighbors that move farther thanRc. When the number of neighbors is
close to the number required to satisfy the NET condition, the robot assigns priority values to each
of its neighbors based on their contribution towards satisfying its NET condition. This is done by
computing sector angles between adjacent neighbors. The neighbors contributing to larger sector
angles have a higher priority and the robot applies the attractive force to hold them within its
communication range. Nodes on the boundary designate all neighbors as low priority and hence
allow the decision to be made based on the requirement of their neighbors. The pseudocode for
61
this algorithm is shown below. c1, c2 are parameters that can be tuned for how strictly the NET
condition is required to be satisfied.
Algorithm 2: assignPriority(θ, robot, neighborList)
if robot is on boundary
for q ∈ neighborList
priority[robot][q] = 1
else
for q ∈ neighborList
sectorV oid[q] = angle(qprev, q) + angle(q, qnext)
if sectorV oid[q] < c1 · θ
priority[robot][q] = 0 (redundant)
else if c1 · θ ≤ sectorV oid[q] < c2 · θ
priority[robot][q] = 1 (low priority)
else priority[robot][q] = 2 (high priority)
The condition used for classifying boundary robots plays an important role in determining
the final network structure. During deployment, the boundary of the network grows and robots
that were previously interior robots become boundary robots. Once a robot becomes a boundary
robot, it is not required to satisfy the NET condition. If interior robots are allowed to easily switch
to becoming boundary robots, the coverage will increase because robots will spread out but the
connectivity properties will suffer. On the other hand, if interior robots are constrained to always
satisfy NET condition and are not able to switch to the boundary then the network cannot spread
out and coverage will be poor. We use a heuristic based on the observation that boundary robots
62
have large empty sectors. Initially all robots are designated as non-boundary. If a robot has an
empty sector greater than αb for time τ , then it declares itself as a boundary robot. Similarly, if a
boundary robot has no empty sector greater than αb for time τ , then it becomes an interior robot.
Algorithm 3: distributedDeployment(θ)
find neighborList
degree = sum(neighborList)
if (degree > (2πθ + 1))
repel all neighbors
else if (degree > 2πθ or boundary)
priority = assignPriority(θ, self , neighborList)
for q ∈ neighborList,
if (priority[self ][q] + priority[q][self ]) ≥ 1
repel + attract q
else repel q
else repel + attract all neighbors
The parameters c1 and c2 in assignPriority can be tuned depending on how strictly NET sat-
isfaction is desired. For the results presented in this section, a conservative choice was sought
and the empirically determined values are shown in Table. 4.1. The sector parameter αb is used
by individual robots for boundary detection. Choosing a large value for αb will result in many
boundary robots considering themselves interior robots trying to ensure NET satisfaction and
63
θ 2π3
π2
2π5
π3
2π7
π4
c1 1.15 1.15 1.25 1.0 1.1 1.1c2 1.45 1.5 1.6 1.3 1.3 1.3αb
21π20
11π12
5π6
5π6
5π6
5π6
Table 4.1: Parameter values used in our implementation of the distributed deployment algorithm
impedes the spreading. On the other hand, choosing a small value leads to interior robots switch-
ing to boundary robots and decreases network connectivity. The appropriate setting of boundary
sector αb depends on the θ value and the empirically determined settings are shown in Table. 4.1.
Results are shown for deployments of 100 robots with each experiment repeated 10 times.
Fig.4.4 show the final network configuration from sample runs of the distributed algorithm for
varying θ values. For θ = 2π3 , hexagonal tiling is difficult to achieve in a distributed manner and
combined with the conservative choice of c1 and c2, the algorithm pushes the deployment to a
square tiling (Fig.4.4a). Large blocks of square tiling are achieved for θ = π2 (Fig. 4.4b). For the
non-tiling angle θ = 2π5 (at least 5 neighbors required), in most cases it is actually beneficial to
settle for 6 neighbors and tile triangularly. Fig. 4.4c shows that the algorithm correctly allows
for the highly stable tiling in large portions of the final configuration. This is also obtained for
the tiling angle θ = π3 , as shown in figure Fig. 4.4d. Samples for θ = 2π
7 and θ = π4 are also
shown. No tiling is possible for these angles. Fig.4.5 shows that the deployment algorithm adapts
well to obstacles. On encountering an obstacle, the robots continue to spread while avoiding it
and surround it with little impact on the NET graph. Obstacles have the effect of increasing the
number of boundary robots in the network and as a result, the network structure is not as uniform
as before.
Fig. 4.6a compares the coverage obtained from the deployment algorithms to an asymptotic
upper bound on coverage obtained from Lemma 3.2.11 by considering robot overlaps as described
64
in Section.4.3.2. The algorithm’s coverage is close to the bound for smaller values of θ and the
difference grows with θ. The difference can be attributed to a conservative choice of parameters
c1 and c2. This is reflected in the fact that the average robot degree resulting from the deployment
algorithm is always greater than b2πθ c (Fig. 4.6c) even though the boundary robots have smaller
robot degrees. Also note that the coverage upper bound is tight only in case of tiling angles. For
non-tiling angles, it is not clear what the optimal deployment is.
Fig. 4.6b shows the edge connectivity values. For the k-connectivity calculation, boundary
robots and one hop neighbors of boundary robots are not considered. For the chosen c1 and c2
values a connectivity of k = b2πθ c is not guaranteed, but it is very often achieved and connectivity
b2πθ c − 1 is almost always assured. Using lower values for c1 and c2 can provide a guaranteed
level of connectivity at the cost of some coverage. Fig. 4.6d shows the number of sectors of
interior robots that violate the NET condition. A 10 % leeway was allowed for deviation from θ,
i.e., a violation occurs if sector angle > 1.1 · θ. There is a drop in violations for θ = 2π5 since it
defaults to the 6-neighbor triangular tiling while there is a sudden increase for θ = 2π7 and θ = π
4
since there are no tiling angles in sight making it difficult for the pair-wise negotiations to attain
symmetrical placement of neighbors. The asymmetry and small value of θ result in increased
violations. Note that this does not adversely affect the k-connectivity.
Fig. 4.7 shows a comparison of the communication graph obtained from deployment with
θ = π3 with its corresponding RNG. In Fig. 4.7c, the dark lines represent the edges in the RNG
that are absent in the communication graph. The communication graph differs from the RNG in
exactly 3 edges at the boundary of the network. Even in the presence of boundary robots in real
networks, these results validate the assertion in Theorem 3.2.8 that the communication graph will
65
contain the RNG for θ ≤ 2π3 . Also, the communication graph contains only a few non-boundary
edges that are not in the RNG and will therefore inherit the sparseness properties of the RNG.
4.4 Conclusions
In this chapter we have presented potential field based self-deployment algorithms for groups
of mobile robots. The aim of the algorithm to to maximize the total sensing coverage while
maintaining a local constraint at each robot. We demonstrated the algorithm with two types of
constraints - 1) number of neighbors of each robot, and 2) NET conditions. The algorithms pre-
sented prove that local constraints can be achieved using potential field algorithms. They do not
optimize the coverage due to over-deployment. However, the insights gained can be used to de-
sign more sophisticated algorithms. The deployment proceeds by starting in a state where all the
constraints are satisfied and at each step robots move such that no constraints are broken. In the
next chapter, we consider the case where the robots are disconnected at the start of deployment.
66
(a) (b)
(c) (d)
Figure 4.1: Typical Network Configurations for a 64 robot deployment with k = 2 (a) InitialConfiguration, (b) Final Configuration, The temporal performance for N = 64, Rs = 4 andRc = 8 (averaged over 10 trials) (c) Coverage vs. Time and (d)Average Node Degree vs. Time
67
(a) (b)
(c) (d)
(e) (f)
Figure 4.2: Coverage and average degree for N = 49 and Rs = 4 for different values of Rc(averaged over 10 trials) (a), (b) Rc = 10 (Rc > 2Rs) (c), (d) Rc = 8 (Rc = 2Rs), (e), (f)Rc = 6
68
Figure 4.3: Variation of coverage with network size (N) for Rs = 4 and Rc = 8 (averaged over10 trials)
(a) θ = 2π3 (b) θ = π
2 (c) θ = 2π5
(d) θ = π3 (e) θ = 2π
7 (f) θ = π4
Figure 4.4: Sample deployments with 100 robots and Rc = Rs = 8.0.
69
(a) θ = 2π3 (b) θ = 2π
5 (c) θ = π3
Figure 4.5: Sample deployments in the presence of obstacles with 100 robots andRc = Rs = 8.0.
(a) (b)
(c) (d)
Figure 4.6: Performance of the Distributed deployment Algorithms for a deployment of 100robots in terms of (a) Coverage, (b) Edge Connectivity (c) Average Degree and (d) NET conditionsatisfaction
70
(a) (b) (c)
(d) (e) (f)
Figure 4.7: For θ ≤ 2π3 , the communication graph is a supergraph of RNG. (a) Communication
Graph (b) RNG (c) Difference for θ = 2π3 . (d) Communication Graph (e) RNG (f) Difference for
θ = 2π4
71
Chapter 5
Connectivity Maintenance and Coalescence
Communication connectivity is both essential and challenging for robot networks. While on
one hand robot groups rely on network-wide connectivity for coordination, on the other hand
maintaining connectivity in a large group of moving robots is hard because it imposes constraints
on robot motion. Another difficulty is that the communication range for most low power radios
is highly irregular [Zhao and Govindan, 2003] which adds to the unpredictability of connectivity.
Given the high cost of maintaining connectivity, we are interested in the question - what happens
if connectivity is lost? This situation could arise due to several reasons - robots could start in a
disconnected state, or accidentally lose connectivity due to failures, or intentionally disconnect
for efficient task completion. The cost of regaining connectivity, in terms of time and energy
spent, should be taken into account while designing the motion coordination algorithm. If the
cost is high the coordination algorithm should minimize the chances of disconnections and if the
cost is low it should allow the robots to occasionally disconnect and rejoin the network after task
completion.
72
Coalescence is the problem of isolated mobile robots independently searching for peers with
the goal of forming a single connected network. In this chapter, we study the time taken for
coalescence. We consider the scenario where the robots are memoryless (do not build a map)
and do not have any knowledge of the environment or positions of the other robots. Each robot
performs an independent random search and when two robots meet, they coalesce into a cluster
and the cluster thereafter sticks together and moves as a single random walk. This is illustrated in
figure 5.1. While the memoryless model is realistic for large swarms of simple robots, in several
applications robots will be capable of performing systematic exploration and mapping to speed up
coalescence. The coalescence time in this case is tied to the exploration algorithm and structure
of the domain and the memoryless random walk provides a simplified worst case study.
While coalescence can be considered a variation of the rendezvous problem, we use the term
coalescence to emphasize that the communication spread of the clusters increases as more robots
join. As we will show in section 5.2.3, the communication spread plays an important role in
determining latency. The basic idea is that robots need not be collocated to remain connected. If
they remain spread out, the disconnected robots will have a better chance of discovering them.
The coalescence time can be further improved if the clusters form an optimal shape such as
a line and move in a direction that maximizes the sweep area. This will involve a significant
coordination overhead because maintaining a formation while moving through an environment
with obstacles is challenging [Muhammad and Egerstedt, 2004]. Therefore we do not make any
assumption on the shape of the cluster.
The outline of the chapter is as follows. Section 5.1 presents the problem formulation and
mobility model. In section 5.2 we derive the coalescence time based on the meeting time of the
73
(a) t = 0 (b) t = MT 51 (c) MT 5
2
(d) t = MT 52 < t < MT 5
3 (e) t = MT 53 (f) t = MT 5
4 = CT (N = 5)
Figure 5.1: Illustration of Coalescence for N = 5. The dark red circles represent robots andthe yellow discs around them are their communication regions. The arrows show the randomwalk steps with the faded discs being the robot positions at the previous time instant. As robotscoalesce, the communication spread of clusters grows and the robots that are still searching havea better chance of hitting it.
mobility model. The coalescence time has an exponential distribution which is a function of the
number of robots, speed, communication range, and size of the domain. The main challenge
in the analysis is that the time between two clusters hitting each other depends on the size and
shape of the clusters which are both random and difficult to model. We make several simplifying
assumptions to make the analysis tractable which are validated using simulations in section 5.3.
We are particularly interested in the asymptotic behavior of the coalescence time with respect to
the size of the network, N . In section 5.2.3 we consider three extreme scenarios and show that
coalescence time is O( 1√N
) and Ω( log(N)N ). Simulations in MATLAB (section 5.3) verify these
bounds and also suggest that the lower bound is tight i.e. the coalescence time is Θ(log(N)/N).
74
(a) t = 0 (b) t = 1 (c) t = 7 (d) HT = t = 11
Figure 5.2: Illustration of random direction mobility model, RM . The blue cone and dark redcircle are a stationary node and the isolated robot respectively along with their communicationdiscs. The light yellow region is the area that the robot has “covered” in its search for the station-ary node.
5.1 Problem Formulation
We are interested in the following problem.
Given N isolated mobile robots placed at unknown locations within a bounded domain
D ⊂ <2, how long will it take for them to coalesce into a single connected component?
The goal of coalescence is to reach a state where all robots can communicate with each other
either directly or via other robots. Clearly, coalescence time will be depend on the communication
and mobility models of the robots. We use the following models.
5.1.1 Communication Model
All robots have a uniform binary disk communication with range R i.e. two robots can commu-
nicate with each other if and only if the distance between them is less than R. We say that two
robots “encounter” or “hit” each other when they are within communication range R and at some
75
time t ≥ 0 the area that a robot has “covered” is the union of the area that has been within its
communication range at 0 ≤ t′ ≤ t (figure 5.2).
5.1.2 Mobility Model
Each robot performs an independent random search for other robots. The motion strategy is a
simplified version of the Random Direction model [Aldous and Fill]. It is defined as follows
(figure 5.2). At each time step the robot
1. chooses a direction θ uniformly in [0, 2π)
2. moves in direction θ with a constant speed v for a constant distance l.
The random direction model results in a uniform stationary distribution.
At any point of time if two robots meet, they form a single cluster i.e. stay connected to each
other and move together following the same path. Similarly when two clusters meet they coalesce
to form a single cluster. Note that this interaction model does not affect the uniform stationary
distribution of the clusters.
5.1.3 Domain Model
For ease of analysis we assume that the domain is a torus. A more realistic boundary condition is
the reflecting model where the robots bounce back on hitting a boundary. However, it is known
that both the torus boundary condition and reflecting boundary condition retain the stationary
distribution of robots [Bettstetter, 2001]. Since stationary distribution is the only condition we
require of the torus boundary condition our analysis is valid for the reflecting boundary condition.
76
5.2 Coalescence Time Analysis
Coalescence time (CT ) is related to the time elapsed between robots meeting each other. There-
fore to model coalescence time, we must first understand the statistics of encounter times between
robots, called hitting time (HT ) and meeting time (MT ).
Definition 5.2.1 The hitting time of a mobility model is the time until a robot following the
mobility model encounters a static robot. If robot i moves according to the mobility model and
robot j is static, HT = mintt : ‖Xi(t)−Xj‖ ≤ R.
Definition 5.2.2 The meeting time is the time until two robots following the same mobility
model meet. If j also follows the mobility model described above and starts from its station-
ary distribution, the meeting time between i and j is the time before their first encounter.
MT = mintt : ‖Xi(t)−Xj(t)‖ ≤ R
We will now derive the hitting time and meeting time for our mobility model.
5.2.1 Hitting Time
Let robot i move according to the random mobility model and let α(t) represent the fraction of
domain area covered by the communication disk of i from time 0 to t. We can assume that this
area is uniformly distributed in the domain. Then the new area covered in the (t+ 1)th time step
is proportional to the fraction of uncovered area in D and is given by
α(t+ 1)− α(t) ≈ (1− α(t))2R`A(D)
(5.1)
77
where A(D) is the area of the domain. Solving the recursion, we get
α(t) ≈ 1−(
1− 2R`A(D)
)t(5.2)
If j is a stationary robot placed at a random position chosen uniformly in the domain, the
probability of hitting j at time t is equal to the fraction of the domain area covered by i, α(t).
Therefore the hitting time has the same exponential distribution as α(t) with mean
E[HT ] =A(D)2R`
(5.3)
Note that as expected, the hitting time is a function of the area of the domain, communication
range, and speed (step length).
5.2.2 Meeting Time
If both i and j start at a random positions chosen uniformly in the domain and follow the random
mobility model, then the meeting time will follow the same exponential distribution as the hit-
ting time with mean E[MT ] = E[HT ]/v [Spyropoulos et al., 2006] where v is the normalized
relative speed given by
v =‖~vi − ~vj‖
v(5.4)
If θ is the angle between the velocity vectors of i and j, then v can be computed as
12π
∫ 2π
0
√(1 + cosθ)2 + sin2θ dθ = 1.27 (5.5)
78
Figure 5.3: Verification of analytical model for kth meeting time, MTNk derived in equation (9)for N = 100, l = 100, and R = 20 averaged over 100 runs
For N = 2, the coalescence time CT is the meeting time. E[CT (n = 2)] = E[MT ] =
E[HT ]/1.27.
5.2.3 Coalescence Time
Let MTN1 ≤ MTN2 ≤ · · · ≤ MTNk ≤ · · · ≤ MTNN−1 be the 1st, 2nd, · · · , kth, · · · (N − 1)th
meeting times in a network of size N . The coalescence time CT (n = N) = MTNN−1.
We will now find an expression for the kth meeting time MTNk . The first hitting time is
the minimum of(N2
)meeting times between the different pairs of robots. Since each of these is
independent and has an exponential distribution,
79
E[MTN1 ] =1(N2
) · E[MT ] =2
N(N − 1)· 1
1.27· A(D)
2R`(5.6)
t = MTN1 , there areN−1 clusters with 1 cluster consisting of two robots andN−2 clusters
consisting of 1 robot each. At t = MTNk , there are N − k clusters in the domain. The number
of robots in each cluster is a random variable. At t = MTNk+1 two of these N − k clusters
meet and coalesce to form a bigger cluster. We expect that the time elapsed between clusters
meeting will also have an exponential distribution similar to the first meeting time MTN1 . The
challenge is that this meeting time will depend on the size and shape of the clusters which is
difficult to estimate. Even if we know the number of robots in each cluster, the shape will still
be random. We will make a simplifying assumption that all clusters have the same size. Further,
we assume that the expected shape of the cluster is a disc since clusters coalesce in all directions
with equal probability. We validate these assumptions using simulations in MATLAB described
in section 5.3. The meeting time derived based on these assumptions is surprising close to the
simulation results (figure 5.3). Based on equation (6) we write the following
∆MTNk+1 = MTNk+1 −MTNk
E[∆MTNk+1] =2
(N − k)(N − k − 1)· 1
1.27· A(D)
2Reff `(5.7)
where Reff is the effective radius of the clusters. Reff depends not only on the size of the
clusters but also the shapes. At t = MTNk , there are N −k clusters. If we assume that the area of
a cluster grows linearly with the number of robots the the total area of all clusters at t = MTNk
80
is NπR2 − kβπR2. Therefore the area of each cluster C at t = MTNk is A[Ck] = πR2(N−kβN−k )
where 0 ≤ β < 1 is a constant. For the optimal case when robots are at a distance from R of
each other, β ≈ 0.2. Approximating the shape of each cluster as a disc, we get Reff =√
N−kβN−k .
Substituting in the above equations we have
E[∆MTNk+1] ≈ 2(N − k)(N − k − 1)
· E[MT ]√(N−kβN−k )
(5.8)
E[MTNk ] =k−1∑
0
E[∆MTNk+1]
=k−1∑
0
2(N − k − 1) · (N − k)
E[MT ]√(N−kβN−k )
(5.9)
We now have an expression for coalescence time in terms of the number of robots, N and the
expected meeting time E[MT ] which in turn is a function of size of the domain D, communica-
tion range, R, and step length or speed `.
E[CT (n = N)] = E[MTNN−1] =N−2∑
0
E[∆MTNk+1]
=N−2∑
0
2(N − k − 1) · (N − k)
E[MT ]√(N−kβN−k )
(5.10)
The asymptotic behavior of the coalescence time as the number of robots N increases is
not clear from the above expression. Therefore we will consider three cases where the analysis
is tractable. In the first case, we will assume that the communication area of clusters does not
81
Figure 5.4: The mean Coalescence Time is bounded by O( 1√N
) and Ω( log(N)N ). The graph shows
the coalescence time(CT ) as a function of network size(N ) averaged over 200 runs with l = 100and R = 20 on a linear scale.
change when robots join i.e. every cluster is a disk of πR2 irrespective of the number robots it
contains. As expected this case gives a very loose upper bound on the coalescence time. Second,
we will assume that there is only one cluster that robots coalesce to upon hitting and ignore
interactions between all other clusters. This case is equivalent to the stationary base station case
and gives us a O( 1√N
) upper bound. Lastly, we will derive a lower bound using an idealized case
where the number of clusters decreases exponentially with time i.e. at each meeting time, every
cluster coalesces with exactly one other cluster.
82
Figure 5.5: The mean Coalescence Time is bounded by O( 1√N
) and Ω( log(N)N ). The graph shows
the coalescence time(CT ) as a function of network size(N ) averaged over 200 runs with l = 100and R = 20 on a log scale.
Case 1: Ignoring area growth
At t = MTNk there are N − k clusters each of which has a disc shape of radius R. Substituting
Reff ≥ R in equation (8) we get
83
E[∆MTNk+1] ≤ 2(N − k)(N − k − 1)
· E[MT ]
E[MTNN−1] =N−2∑
0
E[∆MTNk+1]
≤N−2∑
0
2(N − k − 1) · (N − k)
· E[MT ]
=N−2∑
0
2(1
N − k − 1− 1N − k
) · E[MT ]
= 2(log(2)− log(N) + log(N − k + 1)) · E[MT ] (5.11)
We get, E[CT (n = N)] = E[MTNN−1] ≤ log(2) ·MT i.e. the coalescence time is at most
a constant times the meeting time irrespective of the size of the network. As we will see in
the simulation results, this is a very loose bound for the coalescence time which means that the
communication area growth plays an important role in decreasing the coalescence time.
Case 2: Single cluster
Suppose there is one special robot in the network that robots coalesce with upon meeting. En-
counters between all other clusters do not affect the random motion of robots and in particular, do
not result in robots coalescing. This simplifies analysis because the number of robots in different
clusters is no longer random. At time t = MTNk , there is 1 cluster consisting of k+ 1 robots and
N − k − 1 single-robot clusters. Again, we assume that the area of a cluster grows linearly with
the number of robots. At t = MTNk , the cluster Ck contains k robots and A[Ck] = πR2(1 + βk)
84
where 0 < β ≤ 1 is a constant. Since robots can join the cluster in all directions with equal prob-
ability, we approximate the shape of the cluster as a disk. This give us Reff =√
1 + β · k · R.
At t = MTNk , each of the N − k − 1 isolated robots are uniformly distributed and have an
equal chance of meeting the cluster. Therefore the time before the MTNk+1 is the minimum of the
N − k − 1 meeting times.
E[∆MTNk+1] ≤ 1(N − k − 1)
· E[MT ]√1 + β · k
E[MTNN−1] =N−2∑
0
E[∆MTNk+1]
≤N−2∑
0
1(N − k − 1)
1√1 + β · k
· E[MT ]
≈∫ N−1
0
(1
(N − x− 1)1√
1 + β · x· E[MT ]
)dx
=
2 · tanh−1(√βx+1√
Nβ−β+1)
√Nβ − β + 1
N−1
0
= Ω(
1√N
)(5.12)
85
Case 3: Simultaneous meeting
We will now derive a lower bound on coalescence time by considering an extreme scenario where
at each meeting time, every cluster simultaneously hits one other cluster. Let N = 2p.
E[∆MTNk+1] =1(
2p−k
2
) 12k· E[MT ]
=1
2p−k · (2p−k − 1)1
2k−1· E[MT ]
E[MTNN−1] =p−1∑
0
12p−k · (2p−k − 1)
12k−1
· E[MT ]
= 2−p · p · (log(2)− 1) · E[MT ]
= Θ(
log(N)N
)(5.13)
In the next section we will verify these bounds through simulations.
5.3 Simulation Results
Simulations were conducted in MATLAB to verify the analysis. The domain used is a 2D torus.
The parameters to the program are number of robots N , step size `, communication rage R and
torus side T . The robots start at random positions uniformly distributed over the torus. Every
robot picks a random direction and moves with a uniform speed of 1 unit per time step. At each
time step, the robot checks if it is within a distance R of another robot, in which case, the robots
coalesce and follow the motion of the robot with the smallest ID. After ` time steps, each cluster
picks a new direction. The simulation stops when there is only one cluster.
86
We first verify the model for meeting time (equation (9)). This expression was was based
on three simplifying assumptions 1) the clusters sizes are close to uniform, 2) the shape of the
clusters is close to circular and 3) the area of a cluster grows linearly with the number of nodes.
The results from simulation plotted in figure 5.3 are very close to the analytical expression and
validate our model.
Our next set of experiments simulated Coalescence and measured Coalescence Time as a
function of N . Figure 5.4 compares the mean Coalescence Time to the analytical expressions
derived above. Our objective is to compare the shapes of the curves and the constants in the
expression were found empirically. We see that the coalescence time has bounds of O( 1√N
) and
Ω( log(N)N ).
5.4 Conclusions
We consider the problem of coalescence, i.e. isolated robots independently searching for peers
and forming a single connected component. Coalescence strategies can complement algorithms
for robot collaboration that require a connected network. In the absence of localization or any
information about the environment, the robots can perform a simple random walk search till they
are within the communication range of other robots. We show using probabilistic analysis that
for such a strategy, Coalescence Time has an exponential distribution which is a function of the
number of robots, speed, communication range, and size of the domain. Further, it decreases as
O( 1√N
) and Ω( log(N)N ) with the number of robots, N . Even though the analysis is approximate,
there is a surprisingly good match with the simulation results.
87
Chapter 6
Coverage Optimization in Complex Environments
In this chapter, we address the coverage problem for mobile sensors with location dependent
sensing models. In reality, the performance of each sensor is impacted by the environmental
conditions in which the sensor is located. We observed this while exploring the possibility of
deploying a camera sensor network involving cyclops image sensors [Rahimi et al., 2005] to
monitor indoor and outdoor pathways. We conducted the following simple experiment. Figure
6.2(a) shows an aerial view of a botanical garden. We placed 11 cyclops image sensors(Figure
6.2(b)) uniformly along a path in the garden as shown in Figure 6.3(a). We used the standard
background-subtraction-based detection algorithm in [Horprasert et al., 2000] to test the number
of times a person walking along the path was detected by this network. The results are shown in
Figure 6.3(c). We repeated the same experiment for an alternate sensor arrangement as shown in
Figure 6.3(b) – this time used sensing performance data from various locations along the path.
The detection results in this case were far superior (Figure 6.3(d)).This is due to the fact that
background subtraction is sensitive to lighting conditions that vary from location to location in
the deployment domain. As a result the sensing performance of the image sensors varies from
88
(a) (b)
Figure 6.1: (a) An aerial view of the garden (b) the pathway to be covered
Figure 6.2: Cyclops camera with an attached Mica2 Mote
location to location. In a recent work in [Shi et al., 2007], the authors report that underwater
sound propagation is susceptible to changes in water salinity and temperature and therefore the
listening range, or coverage, of a sound detector is largely influenced by its location underwater.
Currently, coverage algorithms do not address such location dependence. This leads to inefficient
usage of resources.
89
(a) (b)
(c) (d)
Figure 6.3: Node locations for (a) uniform deployment and (b) optimized locations and theirdetection results. The graphs illustrate detection events by node numbers (y-axis) at a given timestep (x-axis). The red squares indicate false-positives.The optimized placements use 9 nodeswhile uniform placements use 11 nodes
For this variation of the coverage problem, we develop a distributed control algorithm based
on the generalized Voronoi partitioning to obtain optimal sensor arrangements with guaranteed
convergence. Cyclops camera sensors provide a wonderful playground to apply our algorithms.
We consider the problem of covering indoor and outdoor pathways with Cyclops camera sen-
sors. Cheap and low-power imaging sensors such as Cyclops and CMUCam [Rowe et al., 2002]
along with Motes have been demonstrated to have many potential applications in monitoring and
surveillance. Because of the constraints on memory, computation and energy resources available
to the imagers, they will most likely use simple image processing such as background subtraction
for object detection. It is is well known that background subtraction is sensitive to changes in the
background and lighting conditions making the sensing performance location-dependent.
90
Our contributions
We formulate the coverage problem as the locational optimization problem with the sensing per-
formance function that is location dependent, i.e., it is a function of the distance between the
sensor and the sampling location as well as the location of the sensor. In the same spirit of the
coverage algorithms in [Cortes et al., 2004], we propose a distributed control and coordination
algorithm for the new formulation. The convergence of the algorithm is proved. We apply these
ideas to the problem of covering indoor and outdoor pathways using Cyclops cameras. Based on
several indoor and outdoor measurements we propose a 1D empirical function for the sensing
performance for the Cyclops sensor. The sensing performance function corresponds to the num-
ber of pixels detected of the test object at different locations based on the standard background-
subtraction-based algorithm [Horprasert et al., 2000]. The function is characterized by two pa-
rameters that vary with the location of the camera sensor thus capturing the location dependence
of the sensing performance. Based on this, we formulate the problem of covering pathways as
a 1D coverage algorithm. We present simulation results for various forms of the functions for
the parameters and demonstrate convergence of our algorithm. In reality, these functions are not
known a priori. Using the history of measurements as camera locations evolve, we estimate the
functions using a piecewise linear form. We present simulation results using this approach. We
conducted experiments in indoor setting under controlled lighting as well as in outdoor settings at
fine scales to find values of the parameters in the performance functions. We present simulation
results on this physical data and demonstrate the performance of our algorithm.
The rest of the chapter is organized as follows. In Section 6.1 we formulate the coverage
with problem with the location dependent sensing performance function. A distributed control
91
algorithm is proposed in Section 6.2 and its convergence is proved. In Section 6.3, we study ap-
plication of the control algorithm to the problem of covering indoor and outdoor pathways using
cyclops cameras. We propose a sensing performance function of the cyclops camera capturing
the location dependence and present simulation and experimental results.
6.1 Problem Formulation
We build on the notation used in [Cortes et al., 2004] to define our coverage problem. Let Q
denote the bounded convex domain in R. We seek to cover Q using n mobile sensors. Let
φ : Q→ R denote the scalar density function. It captures the importance of covering a particular
location. Let p1, p2, · · · , pn denote the current locations of n sensors. We assume a location-
dependent sensing model for each sensor, i.e., the sensing performance at point q for the ith
sensor not only depend on ||q − pi|| but also on the location, pi itself. Here, || · || denotes
the Euclidean norm. We denote the sensing performance function for sensor i at point q by
f(||q − pi||, pi), where f : R+ × Q → R. Note that we explicitly indicate the dependence of
the performance function on the sensor location. The performance function naturally induces a
generalized Voronoi partition of Q. Each sensor has its own dominance region, i.e., its Voronoi
cell where the sensing performance is better than that for any other sensor. More formally, if Wi
denotes the dominance region for the ith sensor, then
Wi = q ∈ Q | f(||q − pi||, pi) ≥ f(||q − pj ||, pj), ∀j 6=i. (6.1)
92
Now we define our coverage metric or net utility function as follows:
H(p1, p2, · · · , pn) =n∑i=1
∫Wi
φ(q)f(||q − pi||, pi)dq (6.2)
The utility function is the sum of the sensing performance function of each sensor over its
dominance region including the weighing density function. We refer to∫Wiφ(q)f(||q−pi||, pi)dq
as the utility of the ith sensor. We formulate the coverage problem as finding the optimal set of
locations of the sensors that maximizes the net utility.
arg maxH(p1, p2, · · · , pn) (6.3)
Note that it is possible to formulate other metrics such as maximizing the minimum over
the utility functions of all the sensors, as suggested in the literature, e.g., [Cortes et al., 2004].
We would like to note that in the common literature [Cortes et al., 2004] the coverage objective
function is known as the locational optimization function and the coverage problem is formulated
as the minimization problem. In the spirit of the application we consider in this chapter, we
formulate the problem as the maximization problem.
6.1.1 Partial derivative of the overall utility function
We note that the result about the partial derivative of the net utility function based on the diver-
gence theorem [Cortes et al., 2004] generalizes easily to our case.
93
Lemma 6.1.1 The partial derivative of the net utility function with respect to the position of the
i-th sensor is given by,
∂H∂pi
=∫Wi
φ(q)∂f(||q − pi||, pi)
∂pidq (6.4)
We refer readers to [Cortes et al., 2004] for the proof of the lemma.
6.2 Distributed coverage control
We propose a distributed coverage control algorithm that is based on iterative local sub-gradient
method.
6.2.1 Control Law for each sensor
Let pi(n) be the position of the i-th sensor after n updates. We state the control law for the
position update of the i-th sensor to pi(n+1). During the time the i-th sensor updates its position
from, our coverage algorithm does not allow the simultaneous update at the Voronoi neighbors
of the i-th sensor. The local control law involves searching for the local optimal solution. Given
that the positions of the Voronoi neighbors are fixed, the net utility H and the local gradient, ∂H∂pi
are just the functions of pi. We state the control law as follows.
pi(n+ 1) = p∗i ,where, p∗i = arg maxpi∈Wi
H(· · · , pi, · · · ) (6.5)
Essentially, the control law involves local search over the Voronoi partitionWi for the optimal
solution p∗i by solving the constrained optimization problem. If p∗i does not lie on the boundary
of Wi, then it is the root of equation g(pi) = 0. Since the search involves finding the optimal
94
location just for one sensor, it is computationally tractable. We state the following lemma about
the increase in the net utility after every pose update.
Lemma 6.2.1 The control law for an individual sensor in Equation 6.5 guarantees that the net
utility increases after the position update of the sensor.
Implementation of the above control law requires the exact knowledge of the sensing perfor-
mance function f(||q − pi||, pi) for each sensor i and the density function φ(q). Later we show
in our case study of camera sensor network that f(||q− pi||, pi) can be estimated on the fly using
measurements. We also note that in [Schwager et al., 2007] it is shown that the global knowledge
of φ(q) is not required.
6.2.2 Distributed Coverage Algorithm
Below we state the coverage algorithm that runs at each node. We assume discrete time steps, 1,
2, · · · . The algorithm involves the implementation of the local control law that we described in
the previous section. A node updates its position only if its Voronoi neighbors are not updating
their positions.
t : Update Vit+1: Check if any j ∈ Vi is updating its positiont+2: if yes, wait for random duration of time and repeat the above stepst+2: if no, schedule position update at t+3 and broadcast over Vit+3: start moving to optimal p∗i as obtained using Equation 6.5t+k: After the move, wait for random duration before the next update
Algorithm 1: Coverage algorithm at the i-th sensor: Let pi denote its position. Let Videnote the set of its Voronoi neighbors.
95
6.2.3 Convergence
Theorem 6.2.2 The distributed coverage algorithm at each sensor as described in Algorithm 1
converges, as the number of position updates tends to infinity.
The proof follows from the fact that the net coverage utility is bounded and by lemma 6.2.1,
it increases monotonically with each iteration of the algorithm.
The algorithm yields a local optimal solution to the coverage problem. Comments about the
optimal solution.
6.3 Deployment of Cyclops camera networks
In this section, we discuss implementation issues and results of our algorithm for the coverage
problem using Cyclops camera sensors.1 The Cyclops camera sensor consists of a CMOS im-
ager with CIF image capability and an internal image processor unit for image interpretation and
analysis. It couples with a Mote and periodically captures images (figure 6.2). Our objective is to
cover loopy environments such as indoor corridors or outdoor pathways such that an intruder ob-
ject can be detected. We show that this problem can be mapped into a suitable coverage problem.
We first propose a model for the sensing performance function of a camera.
6.3.1 Sensing Performance Function
Our choice of the sensing performance function of a camera is related the performance of the
object detection algorithm that is based on background subtraction. Foreground object detection
using background subtraction has been used extensively in video surveillance applications due1We do not consider any network related issues here.
96
to ease of implementation and effectiveness [ref]. This method has low resource requirements
in terms of memory and computation and is therefore well suited for low complexity camera
sensor networks. According to this method, the cyclops camera periodically captures images and
maintains a moving average background model of the environment. A foreground model is also
constructed as the absolute difference of the instantaneous image and the constructed background.
The resulting foreground images are then are passed through a luminance and size filter, which
identifies clusters of pixels that have a considerable change in illumination. See [ref] for the
details of the algorithm. Figure 6.5(a) shows a cyclops camera set up in a corridor in a building.
Figure 6.5(b) and 6.5(c) show the background model and the instantaneous image obtained by
placing a white board at some distance. The foreground images as the difference between the
two images is shown in Figure 6.5(d). The detectability of the object depends on the number
of pixels identified after passing the foreground model through the filter – larger the number of
pixels, better the detection probability. We therefore use the number of pixels identified as the
sensing performance function for each camera sensor. Note that the number of pixels detected is
also a function of distance between the camera and the object. The further away the object is, the
lower the number of pixels detected will be.
Suppose a rectangular object of dimension h × w placed at a distance d on the camera’s
central axis exactly facing the camera. Consider an ideal scenario in which every point on the
object differs significantly in its illumination characteristics from the background image. Then,
97
Figure 6.4: Perspective projection model
(a) (b) (c)
Figure 6.5: Illustration of pixels on target not detected. (a) background image (b) original imageand (c) foreground image. In the foreground image, some of the pixels in the target board areblack. These are the pixels that are similar to the background and are therefore not detected bythe camera.
98
according to a perspective projection camera model, the number of pixels, m, detected by the
camera is approximately given by:
m ' f · h · wd2
· resolutionsensor area
= k · h · wd2· resolution
where f is the focal length and k is a constant. Figure 6.4 shows the perspective projection model.
Thus, the number of pixels detected is inversely proportional to square of the distance between the
camera and the object. We indeed observed this relationship in practice when we experimented
with a white board of dimension 3ft × 2ft placed at different distances in front of a cyclops
camera that was placed in a well-lit corridor. Figure 6.6.1(a) shows the experimental set-up and
Figure 6.6.2(a) shows the number of pixels identified using the background subtraction algorithm
as a function of distance between the camera and the white board. We indeed observe the trend
that the number of pixels are inversely proportional to the squared distance. However these
situations are rare in the environments where the lighting conditions and the object properties are
far from the ideal situation. In practice, the number of pixels detected by the camera deviates from
this ideal model because some pixels on the object have the same texture as that of the background
and go undetected. This is illustrated in fig 6.5 where the target is a white rectangular board. In
the foreground image, the pixels in white are the ones that are detected. Some of the pixels on
the board have intensities close to their corresponding pixels in the background.
This indicates that the sensing performance function of camera depends not only on the dis-
tance but also on the location of the camera itself. This very behavior motivates the definition
99
of the coverage problem we address. We restrict ourselves to coverage of narrow pathways re-
ducing the problem to coverage of 1D loops. We conducted a series of experiments both indoors
and outdoors to extract the sensing performance function of a camera. We placed a white/black
rectangular board in front of a camera along its central axis at increments of 5 feet to obtain the
number of pixels detected. Based on several data sets we observed that the following empirical
model for the sensing performance function best fits the data.
f(||x− q||, x) =k1(x)
k2(x) + ||x− q||2(6.6)
Here x denotes the location of the camera and q denote the sensing performance, i.e., the
number of pixels detected at location q. Note the dependence on the location of x via functions
k1(x) and k2(x). Figure 6.6 shows the best fit and the corresponding values of k1 and k2 for
indoor and an outdoor instances. Note that the sensing performance function is not exact; it
corresponds to the best fit with the data.
6.3.2 Coverage Algorithm for 1D loop
In this section, we discuss the coverage problem formulation and algorithm for covering a loopy
pathway using the cyclops cameras. We assume that the pathway is narrow enough so that we
formulate the problem as a 1D coverage problem. We assume that each sensor is a bi-directional
camera obtained by combining two cyclops camera modules aligned along the same axis. Thus
each sensor can see on its left and right directions on the loop. The sensing performance function
along each direction takes the form of Equation 6.6 with possibly different parameter values.
For now we assume that the pathway is a smooth curve that can be parametrized with a single
100
1(a) 1(b) 1(c)
2(a) 2(b) 2(c)
Figure 6.6: Validation of the proposed model for pixels detected vs. distance for three differentenvironments. 1(a) is a well-lit corridor and close to an ideal environment. 2(a) is an outdoorpathway with shadows of trees and buildings. 3(a) is inside a lab where the lighting conditionsare not uniform. The solid blue line is the number of pixels detected from experiments and thered dashed line is the minimum least squares fit using the model in Equation 6.6
101
parameter and does not contain any sharp corners, i.e., at any location the curvature of the loop
is very large compared with the local detection range of the camera assuming that the sensor is
always aligned on the loop such that its central axis is always tangential to the loop. Let n be the
number of cameras and let p1, p2, · · · , pn denote their locations on the loop in the order such that
pi is between pi−1 and pi+1. Further, let pn+1 = p1. Let fl(||pi − q||, pi) and fr(||pi − q||, pi) be
the left and the right sensing performance functions respectively of the i-th camera located at pi.
We assume that both fl and fr have the empirical form described in Equation 6.6:
fl(||pi − q||, pi) =k1l(pi)
k2l(pi) + ||pi − q||2(6.7)
fr(||pi − q||, pi) =k1r(pi)
k2r(pi) + ||pi − q||2(6.8)
Because the problem is 1D, the region of dominance of any sensor corresponds to a segment
on the loop. We further assume that the region of dominance of the i-sensor strictly belongs to the
interval (pi−1, pi+1). In other words, there are no abrupt changes in the sensing behavior over the
domain such that each sensor contributes to the net utility function. Let [li, ri] be the dominance
range of the i-th sensor. Thus, li ∈ (pi−1, pi) and ri ∈ (pi, pi+1). According to the definition of
the dominance region,
fl(||pi − li||, pi) = fr(||pi−1 − li||, pi−1) and,
fr(||pi − ri||, pi) = fl(||pi+1 − ri||, pi+1).
102
Using the above notation, the net utility function in 6.2 assuming uniform density function
(φ(q) = 1) can be expressed in the following form for the case of 1D loop.
H(p1, p2, · · · , pn) =n∑i=1
∫ pi
li
fl(||pi − q||, pi)dq +∫ ri
pi
fr(||pi − q||, pi) (6.9)
6.3.3 Simulation Results
Simulation Environment
We ran simulations in MATLAB to test the convergence and resulting coverage of our distributed
control law. The path is a 1D loop that can have sharp corners and obstacles that cause the sensing
performance function to vary abruptly. The sensors start at randomly chosen initial positions and
in each iteration of the algorithm, they update their position according to Equation 6.5 using a
constrained optimization routine in MATLAB. We assume that sensors are localized and adjacent
sensors on the path can communicate with each other. The simulation converges when the no
sensor changes its position. We test for different models of k1(x) and k2(x), different shapes of
the path, and different number of sensors.
Global knowledge of sensor performance function
We first consider the ideal scenario where sensors have perfect knowledge of the sensing perfor-
mance function. In practice, the sensors will estimate the performance function based on observed
data the performance of the coverage algorithm will depend on the accuracy of this estimation.
103
1(a) 1(b) 1(c)
2(a) 2(b) 2(c)
3(a) 3(b) 3(c)Utility
Figure 6.7: Performance of the distributed control law for three types of parameter functions ona 1D loop which is a 250 feet long smooth curve. 1(a), 2(a) and 3(a) show the parameter valuesconstant, sine and step. 1(b), 2(b) and 3(b) show the corresponding final positions of sensors (redcircles) superimposed on the k1 function. The crosses show the dominance region boundariesbetween sensors. 1(c), 2(c) and 3(c) show the variation in the net coverage utility. The utilityincreases monotonically with each iteration.
104
(a) (b)
Figure 6.8: Variation in coverage utility and convergence time for different network sizes aver-aged over 50 iterations.
1(a) 1(b) 1(c)
2(a) 2(b) 2(c)
Figure 6.9: Performance of the distributed control law in the presence of occlusions - (1) obstaclesand (2) sharp corners.
105
Figure 6.7 shows the performance of the algorithm for three different sensing performance func-
tions. In each case, the sensors start at random initial locations. As expected, for constant pa-
rameter values (Figure 6.7.1(a)), the sensors converge to a uniform distribution(Figure 6.7.1(b)).
When the parameters have significant variations (Figure 6.7.2(a), 6.7.3(a)), the distribution if
non-uniform (Figure 6.7.2(b), 6.7.3(b)). Sensors try to move to positions where the value of k1 is
large and k2 is small so that their local utility is maximized. Note that in each case the global cov-
erage utility increases monotonically even though the position updates at each sensor are local.
This is in agreement with Theorem 4.2. To study the impact of the network size on the algorithm
performance, varied the network size from 5 to 100. For each network size, we repeated the sim-
ulation 50 times starting with a different random initial position each time. The coverage utility
increases exponentially and eventually saturates (Figure 6.8(a)) since as the number of sensors
increases, the marginal utility of each additional sensor decreases and tends to zero. The varia-
tion in utility is very small indicating that the initial locations do not impact the final coverage.
The convergence time initially increases with the number of sensors and then stops increasing
(Figure 6.8(b)) proving that the algorithm is scalable. The large deviations indicate that unlike
coverage, the convergence time varies significantly with the initial sensor locations.
106
Occlusions
Occlusions can occur due to obstacles in the path or sharp corners. Since the camera cannot sense
beyond an occlusion, it cause an abrupt drop in the sensing performance function. Equations 6.7,
6.8 can be modified as follows to account for occlusions.
fl(||pi − q||, pi) =
k1l(pi)
k2l(pi)+||pi−q||2 if q is not occluded from pi
0, otherwise
(6.10)
fr(||pi − q||, pi) =
k1r(pi)
k2r(pi)+||pi−q||2 if q is not occluded from pi
0, otherwise
(6.11)
Because the sensing function takes on a constant value for points beyond an occlusion, it is
possible that the equations fl(||pi − li||, pi) = fr(||pi−1 − li||, pi−1) and, fr(||pi − ri||, pi) =
fl(||pi+1 − ri||, pi+1) that define the dominance region have many solutions. This will happen,
for example, when adjacent sensors have two or more obstacles between them. For such cases,
we define the dominance region boundary to be the position of its closest occlusion i.e., if the
value of the sensing function of a camera is zero at a point q then q is considered not covered
by the camera and will not belong to its dominance region. Notice that with this definition, the
dominance regions may not form a partition of the path and there could be segments of the path
that do not belong to any sensor’s dominance region. However, since these segments have zero
coverage utility for all the sensors, and the rest of the path is partitioned according to the Voronoi
107
property, this definition of dominance regions is an optimal assignment of points on the path to
sensors.
With these new definitions for performance function and dominance regions, we can apply
the control law in equation 6.5 and Theorem 4.2 guarantees convergence. However, with this
control law, sensors adjacent to occlusions will not cross the occlusions because they only pick
new positions within their dominance regions. To further improve the coverage utility, we intro-
duce an additional switching step where sensors can cross obstacles if the local utility gained by
doing so is more than the utility gain of the optimal location within its dominance region. While
computing the switching utility, we account for change in the dominance regions and the utility
of the neighboring sensors. Note that the local utility of every other sensor remains unchanged.
Figure 6.9.1 shows the result of the algorithm on a loop of length 250 feet with 3 obstacles.
The parameters vary as sine functions. Figure 6.9.1(b) shows the positions of the obstacles (black
squares) and final positions of the sensors (red circles). Figure 6.9.2 shows an example on a
rectangular path with 4 sharp corners that cause occlusions. In both cases, the utility increases
monotonically with each iteration and the algorithm converges. As expected the coverage ob-
tained here is less than Figure 6.7.2(a) where there are no occlusions. We can generalize this
approach to deal with more complex pathways with multiple junctions so at a sensor adjacent to
a junction reasons about the coverage gain in each of the branches that meet at the junction.
Online estimation of sensor performance function
In the coverage algorithm in the previous section we assumed that each sensor has global knowl-
edge of the sensing performance function f(||pi − q||, pi). This permits a sensor to take the best
108
(a) (b) (c)
Figure 6.10: Performance of the distributed control law with partial knowledge of k1(x) andk2(x).
step according to Equation 6.5. However in practice this is not possible. Specifically, in case of
camera sensors, functions k1(x) and k2(x) are not globally known. This necessitates modifica-
tion of the current coverage algorithm. We assume that at every step of the algorithm, a camera
learns its sensing performance function, i.e., the empirical values of k1 and k2.
In the simulations shown in Figure 6.10, each sensor builds piecewise linear models of k1
and k2 based on data from its neighboring sensors and its current data. To improve the estimation
in the first iteration, we assume that sensors share data over multiple hops. We observe that
the utility sometimes decreases because of erroneous estimation (Figure 6.10(c)). But even with
this very simple estimation, the coverage utility is close to the case when global knowledge was
assumed.
6.3.4 Cyclops Experiments and Results
We conducted a series of controlled experiments with cyclops cameras to gather several images
in two different environmental settings – indoor and outdoor. We used interpolation techniques
109
(a) indoor (b) outdoor
Figure 6.11: Cyclops setup
on the gathered data to reconstruct the sensing performance functions in these settings and tested
the performance of our coverage algorithm for these pseudo-real functions.
1) a rectangular corridor in an building with controlled lighting (figure 6.11(a)) a rectangular
pathway surrounded by trees with uncontrolled lighting (figure 6.11(b)). For each of these set-
tings, we picked sample positions for the camera and for each location, we estimated the sensing
performance function (k1 and k2) by placing a target at different distances from the camera.
Indoor experiments
Corridors of buildings provide an ideal playground for testing our coverage algorithms with cy-
clops cameras. We performed experiments under controlled lighting conditions in a rectangular
corridor of which the central axis rectangle is of size 90ft× 30ft. The corridor is 5ft wide and
Figure 6.11(a) shows a cyclops camera set up along the length of the corridor. At every 20ft
along the lengthwise central axis of the corridor, we placed a cyclops camera and captured on
110
both sides the images of the corridor which serve as background models. We also captured im-
ages of a white or black board of dimension 3ft× 2ft placed along the central line kept at every
5ft from the camera up to 25ft. These images serve as foreground models. Since the width of
the corridor is 30ft, along the widthwise central axis, we placed a camera at the middle point
and captured images on both sides in the similar fashion. We used these images to fit the sensing
performance function to obtain the values of k1 and k2 at various locations. Along the entire
corridor, we obtained 22 pairs of values of k1 and k2. We interpolate spline functions through
these values of k1 and k2 to estimate the pseudo-real global sensing performance function. Fig-
ure 6.12(a) shows k1(x) and k2(x) along the entire length of the corridor. We use this form to
test our coverage algorithm.
In our simulations, we placed k sensors initially uniformly randomly. simulations results -
comment about number of sensors, utility, global knowledge / vs online estimation, convergence
Outdoor experiments
We conducted a similar experiment as in indoor case around an outdoor rectangular pathway
surrounded by trees without any control over lighting conditions. The pathway was of size a× b
and Figure 6.11(b) shows a picture of a cyclops camera set up along the pathway. We captured
background images and foreground images at n locations around the pathway in both directions.
We observed that the lighting conditions in the outdoor setting change rapidly and because of
this effect we collected data at relatively a few spots. Based on these images, we estimated the
values of k1 and k2 at the sampling points. We interpolate spline functions through these values
111
(a) (b)
(c) (d)
Figure 6.12: Performance of the distributed control law in an indoor rectangular corridor. (a)Sensor model parameters for left facing camera, (b) Sensor model parameters for right facingcamera, (c) final locations (d) utility
112
(a) (b)
(c) (d)
Figure 6.13: Performance of the distributed control law in an outdoor environment. (a) Sensormodel parameters for left facing camera, (b) Sensor model parameters for right facing camera,(c) final locations (d) utility
113
to obtain the sensing performance function over the domain and Figure 6.13(a) shows this model.
We use this model to test our coverage algorithm.
Dynamic Environments
All the experiments we conducted involved manual positioning of the cameras and the test boards
and was very time consuming. Unlike the indoor environments, the lighting conditions in outdoor
environments change rapidly relative the time scale of collecting all the measurements. However
we believe that with some degree of automation, our coverage algorithm can easily implemented
in dynamic environments that demand frequent reconfiguration of the sensor positions. In partic-
ular, we imagine that the cyclops cameras and the testing board be mounted on mobile platforms
that will have localization ability. The images can be processed on board to estimate the sensing
performance function at the current location. By means of wireless communication the sensors
can implement distributed coverage algorithm. We restricted our work to a simple pixel detection
algorithm. It is possible to implement other kinds of algorithms to improve the local sensing
performance functions. But our coverage algorithm still holds in this scenario.
6.4 Conclusions
We addressed the coverage problem where the performance of each sensor depends on its loca-
tion. We formulate the coverage problem as a locational optimization problem and propose a
distributed algorithm with guaranteed convergence. We applied our algorithm to the problem of
covering indoor and outdoor pathways using Cyclops camera networks. Based on several mea-
surements we proposed an empirical function for the sensing performance of the Cyclops camera.
114
We presented simulation results for various scenarios and demonstrated that our algorithm con-
verges. We also presented simulation results on the data collected at fine scales in indoor and
outdoor settings. As a part of future work we planning to apply our algorithm in 2D situations.
115
Chapter 7
Conclusions and Future Work
The central thesis of this work is that “Mobility can be effectively used for topology control of
robot networks. In the following we summarize the key contributions and discuss directions for
future work.
1. Network Geometry: Local conditions that affect global topological properties aid scala-
bility and can drastically reduce the complexity of robot controllers. Recently, it has been shown
that for a disk graph in a two-dimensional plane, if each node has one neighbor in every θ < π
sector then the network is guaranteed to be 1-connected [Xue and Kumar, 2006]. We extended
this result to show that θ < 2πk < π guarantees k-edge-connectivity. Surprisingly, the condition
for k-connectivity applies to any general (non-disk) graph in a two-dimensional plane provided
the graph is 1-connected. This implies that the condition only depends on the angles between the
neighbors of each node and holds for arbitrary edge-lengths. This feature is particularly relevant
for wireless networks using low-power radios that have irregular communication range. In re-
lated work not shown here, we have also showed that for disk graphs, a weaker local information,
116
cyclic ordering of neighbors, is sufficient to solve the problem of computing a loop of nodes that
encloses a given node.
The results described above are a significant advance since the properties they achieve
were formerly widely assumed to require global information. For robot networks, this line of
research holds promise of further expansion in the scale and complexity of achievable tasks. In
future, one could investigate local conditions for a range of desirable global properties including
vertex-connectivity, spanner properties, and coverage holes. It is of considerable theoretical and
practical significance to characterize a class of network properties that can be achieved through
local information and interactions. A related issue of interest is complexity, in terms of mini-
mality: given a global property, what is the minimum local information (conditions) sufficient to
compute (guarantee) it? Further, these questions need to be studied for general non-disk graphs
to ensure the validity of results to real-world wireless networks.
2. 3D Networks: There is an increasing demand for deploying robot networks in three
dimensions in urban structures, underwater and aerial settings. Network configuration in such
deployments is challenging because geometry in three dimensions is inherently more complex.
Some of the algorithms developed for two-dimensional networks will directly generalize to three
dimensions, many will require additional computational complexity and a few will not generalize
at all. It has been proposed that sector-based configuration algorithms can be extended to cone-
based algorithms in three dimensions [Bahramgiri et al., 2006]. We developed a novel, efficient
algorithm based on spherical Delaunay triangulation to find the largest empty cone around any
node. This algorithm has a run time ofO(dlogd) at each node of degree d, compared to the earlier
117
best of O(d3logd) [Bahramgiri et al., 2006] and crucially, serves as a building block to extend
other sector-based algorithms.
Three-dimensional wireless networks are just beginning to receive attention and consider-
able research efforts are required to develop practical and efficient algorithms. Our simulation
experiments indicate that the cone-based network configuration algorithms, while being correct,
are inefficient and result in overly dense topologies. It is possible that a different structure, such
as the spherical triangle, will lead to more natural and efficient extensions of the sector-based
conditions. We can explore this problem using tools from Spherical and Projective Geometry.
Currently, there is also a lack of statistical models for wireless links in three-dimensions. To
address this need, we plan to gather link data for a large set of configurations of a pair of receiver-
transmitter nodes in various environments.
3. Communication sensitive control: While it is a necessity for coordination, maintain-
ing connectivity in a large group of moving robots is challenging due to irregular and unreliable
wireless links. We designed a virtual potential fields based switched robot controller which uses
a combination of repulsive and attractive forces to maximize sensing coverage while maintaining
constraints on link lengths. This is an example of a commonly used conservative approach in
which only constraint-preserving movements are allowed, sometimes at the cost of performance.
In some applications, it might be more efficient to allow the robots to intermittently break away
and regain connectivity as required. We studied the problem of communication recovery, defining
a behavior called Coalescence, where robots search for each other and form a single connected
component. By modeling the search strategy as a random walk and the communication spread
118
of the connected component as a random shape, we showed that the worst case expected Coales-
cence Time decreases as O(log(N)/N) with the size N of the network.
The two controllers described above lie at the extremes of the classic exploitation versus ex-
ploration tradeoff. Efficient controllers will be those that can achieve a balance, depending on the
task at hand and the relative cost of maintaining and regaining connectivity. Future work includes
establishing design principles for a range of such controllers based on relaxations of connectivity
constraints, such as the time-lapse allowed.
4. Data-driven sampling and coverage: In many applications, the sensing utility of a
robot depends on (i) the distribution of phenomenon of interest, and (ii) physical properties of the
environment that affect the sensor’s performance, and is in general be a function of the robot’s po-
sition. In such cases, a priori computation of robot placement can lead to poor performance. We
proposed a reconfiguration algorithm for coverage optimization of a robot network with location-
dependent utility. The robots iteratively estimate the local utility function based on their current
measurements, and perform a gradient descent based control. This simple, greedy controller is
guaranteed to converge to a local optimum. We evaluated the performance of the controller on
a network of low-resolution Cyclops cameras for intruder detection along a loop in a complex
outdoor environment where they exhibit significant variation in sensing range because of lighting
conditions.
Given such location-dependent utility functions, the problem of optimizing coverage while
maintaining global connectivity constraints has not been addressed.
119
Bibliography
A. Aggarwal. The art gallery problem: Its variations, applications, and algorithmic aspects.PhD thesis, Johns Hopkins University, Baltimore, MD, 1984.
D. Aldous and J. A. Fill. Reversible markov chains and random walks on graphs. preprintavailable at http://www.stat.berkeley.edu/users/aldous/RWG/book.html.
H. Ando, T. Oasa, J. Suzuki, and M. Yamashita. Distributed memoryless point convergence algo-rithm for mobile robots with limited visibility. IEEE Transactions on Robotics and Automation,pages 818–828, October 1999.
M. Bahramgiri, M. Hajiaghayi, and V. S. Mirrokni. Fault-tolerant and 3-dimensional distributedtopology control algorithms in wireless multi-hop networks. ACM/Kluwer Wireless Networks,12(2):179–188, 2006.
H. G. Banos and J. C. Latombe. Planning robot motions for range-image acquisition and auto-matic 3d model construction. In AAAI Fall Symposium Series, Orlando, Florida, USA, October1998.
Maxim Batalin and Gaurav S. Sukhatme. Spreading out: A local approach to multi-robot cover-age. In International Symposium on Distributed Autonomous Robotic Systems, pages 373–382,Fukuoka, Japan, June 2002.
Maxim Batalin and Gaurav S. Sukhatme. The design and analysis of an efficient local algorithmfor coverage and exploration based on sensor network deployment. IEEE Transactions onRobotics, 23(4):661–675, August 2007.
Christian Bettstetter. Mobility modeling in wireless networks: categorization, smooth movement,and border effects. ACM SIGMOBILE Mobile Computing and Communications Review, 5(3):55–66, 2001.
P. Biswas, T/ Lian, T. Wang, and Y. Ye. Semidefinite programming based algorithms for sensornetwork localization. ACM Transactions on Sensor Networks, 2(2):188–220, May 2006.
J. Brendin, E. Demaine, M. T. Hajiaghayi, and D. Rus. Deploying sensor nets with guaranteedcapacity and fault tolerance. In ACM International symposium on Mobile ad hoc networkingand computing (MobiHoc), Urbana-Champaign, IL, May 2005.
A. Briggs and B. Donald. Visibility-based planning of sensor control strategies. Algorithmica,26(3/4):364–388, 2000.
120
G. Caprari and R. Siegwart. Mobile micro-robots ready to use: Alice. In IEEE/RSJ InternationalConference on Intelligent Robots and Systems (IROS), Edmonton, Alberta, Canada, Aug 2005.
A. Cerpa, J. L. Wong, L. Kuang, M. Potkonjak, and D. Estrin. Statistical model of lossy links inwireless sensor networks. In IEEE/ACM International Conference on Information Processingin Sensor Networks (IPSN), Los Angeles, California, USA, April 2005.
V. Chvatal. A combinatorial theorem in plane geometry. Journal of Combinatorial Theory, 18:39–41, 1975.
P. I. Corke, S. E. Hrabar, R. Peterson, D. Rus, S. Saripalli, and G. S. Sukhatme. Autonomousdeployment and repair of a sensor network using an unmanned aerial vehicle. In IEEE Inter-national Conference on Robotics and Automation, pages 3602–3609, April 2004.
J. Cortes, S. Martinez, T. Karatas, and F. Bullo. Coverage control for mobile sensing networks.IEEE Transactions on Robotics and Automation, 20(2):243–255, 2004.
J. Cortes, S. Martinez, and F. Bullo. Spatially-distributed coverage optimization and controlwith limited-range interactions. ESAIM. Control, Optimisation & Calculus of Variations, 11:691–719, 2005.
J. Cortes, S. Martinez, and F. Bullo. Robust rendezvous for mobile autonomous agents via prox-imity graphs in arbitrary dimensions. IEEE Transactions on Automatic Control, 51(8):1289–1298, 2006.
T. Danner and L. E. Kavraki. Randomized planning for short inspection paths. In IEEE Interna-tional Conference on Robotics and Automation (ICRA), San Francisco, California, USA, April2000.
K. Dantu, M. H. Rahimi, H. Shah, S. Babel, A. Dhariwal, and G. S. Sukhatme. Robomote:Enabling mobility in sensor networks. In IEEE/ACM International Conference on InformationProcessing in Sensor Networks (IPSN-SPOTS), pages 404–409, Los Angeles, California, USA,April 2005.
V. de Silva, R. Ghrist, and A. Muhammad. Blind swarms for coverage in 2-D. In Robotics:Science and Systems, Cambridge, Massachusetts, USA, June 2005.
R. Diestel. Graph Theory, Graduate texts in Mathematics, second edition, volume 173. SpringerVerlag, New York, NY, 2000.
Z. Drezner. Facility Location: A survey of applications and methods. Springer-Verlag, NY, 1995.
Raissa M. D’Souza, D. Galvin, C. Moore, and D. Randall. Global connectivity from local geo-metric constraints for sensor networks with various wireless footprints. In ACM/IEEE Inter-national Conference on Information Processing in Sensor Networks (IPSN), Nashville, Ten-nessee, USA, April 2006.
Q. Du, V. Faber, and M.Gunzburger. Centroidal voronoi tessellations: applications and algo-rithms. SIAM Review, 41(4):637–676, 1999.
121
P. Dykiel. Asymptotic properties of coalescing random walks. Technical Report 2005:15, Up-pasala University, December 2005.
D. W. Gage. Command control for many-robot systems. Unmanned Systems, 10(4):28–34, Fall1992.
B. P. Gerkey, S. Thrun, and G. Gordon. Visibility-based pursuit-evasion with limited field ofview. International Journal of Robotics Research, 25(4):299–316, April 2006.
Brian P. Gerkey, Richard T. Vaughan, Kasper Stoy, Andrew Howard, Gaurav S. Sukhatme, andMaja J. Mataric. Most valuable player: A robot device server for distributed control. InIEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pages 1226–1231, Maui, Hawaii, USA, October 2001.
P. Hall. Introduction to the theory of coverage processes. Wiley Series, 1988.
T Horprasert, D Harwood, and LS Davis. A robust background subtraction and shadow detection.In Asian Conference on Computer Vision, Taipei, Taiwan, Feb-March 2000.
D. F. Hougen, S. Benjaafar, J. C. Bonney, J. R. Budenske, M. Dvorak, M. Gini, H. French,D. G. Krantz, P. Y. Li, F. Malver, B. Nelson, N. Papanikolopoulos, P. E. Rybski, S. A. Stoeter,R. Voyles, and K. B. Yesin. A miniature robotic system for reconnaissance and surveillance.In IEEE International Conference on Robotics and Automation (ICRA), pages 501–507, SanFrancisco, CA, USA, April 2000.
A. Howard, M. J. Mataric, and G. S. Sukhatme. Mobile sensor network deployment using po-tential fields: A distributed, scalable solution to the area coverage problem. In InternationalSymposium on Distributed Autonomous Robotic Systems (DARS), pages 299–308, Fukuoka,Japan, June 2002.
T. Hsiang, E. M. Arkin, M. A. Bender, S. P. Fekete, and J. S. B. Mitchell. Algorithms for rapidlydispersing robot swarms in unknown environments. In International Workshop on AlgorithmicFoundations of Robotics (WAFR), Nice, France, December 2002.
E. H. Jennings and C. M. Okino. Topology control for efficient information dissemination inad-hoc networks. In International Symposium on Performance Evaluation of Computer andTelecommunication Systems, San Diego, California, July 2002.
A. Kansal, W. Kaiser, G. Pottie, M. Srivastava, and G. S. Sukhatme. Reconfiguration methodsfor mobile sensor networks. ACM Transactions on Sensor Networks, 3(4):22–23, 2007.
G. Kao, T. Fevens, and J. Opatrny. Position-based routing on 3-d geometric graphs in mobile adhoc networks. In Canadian Conference on Computational Geometry, pages 88–91, Ontario,Canada, August 2005.
G. D. Kazazakis and A. A. Argyros. Fast positioning of limited-visibility guards for the inspectionof 2d workspaces. In IEEE International Conference on Intelligent Robots and Systems (IROS),EPFL, Switzerland, October 2002.
122
O. Khatib. Real-time obstacle avoidance for manipulators and mobile robots. The InternationalJournal of Robotics Research, 5(1):90–98, 1986.
A. Krause, C. Guestrin, A. Gupta, and J. Kleinberg. Near-optimal sensor placements: maximizinginformation while minimizing communication cost. In ACM/IEEE International Conferenceon Information Processing in Sensor Networks (IPSN), Nashville, Tennessee, April 2006.
A. Kroller, S. P. Fekete, D. Pfisterer, and S. Fischer. Deterministic boundary recognition andtopology extraction for large sensor networks. In ACM-SIAM Symposium on Discrete algo-rithm (SODA), pages 1000–1009, Miami, Florida,USA, 2006.
X-Y. Li, P-J. Wan, and Y. Wang. Power efficient and sparse spanner for wireless ad hoc net-works. In IEEE International Conference on Computer Communications and Networks (IC-CCN), pages 564–567, Scottsdale, Arizona, USA, Oct 2001.
Xiang-Yang Li. Algorithmic, geometric and graphs issues in wireless networks. Wireless Com-munications and Mobile Computing, 3(2):119–140, 2003.
J. Lin, A. S. Morse, and B. D. O. Anderson. The multi-agent rendezvous problem. In IEEEInternational Conference on Decision and Control (CDC), pages 1508–1513, Maui, Hawaii,USA, December 2003.
Benyuan Liu, Peter Brass, Olivier Dousse, Philippe Nain, and Don Towsley. Mobility improvescoverage of sensor networks. In ACM international symposium on Mobile ad hoc networkingand computing (MobiHoc), pages 300–308, Urbana-Champaign, IL, USA, 2005.
S. P. Llyod. Least squares quantization in pcm. IEEE Transactions on Information Theory, 28:129–137, 1982.
D. Lymberopoulos, Q. Lindsey, and A. Savvides. An empirical analysis of radio signal strengthvariability in ieee 802.15.4 networks using monopole antennas. In European Workshop onSensor Networks, 2006.
S. Megerian, F. Koushanfar, M. Potkonjak, and M. B. Srivastava. Worst and best-case coverage insensor networks. IEEE Transactions on Mobile Computing, 04(1):84–92, Jan/Feb 2005. ISSN1536–1233.
N. Michael, J. Fink, and V. Kumar. Experimental testbed for large multi-robot teams: Verificationand validation. IEEE Robotics and Automation Magazine, 15(1):53–61, March 2008.
D Miorandi and E Altman. Coverage and connectivity of ad hoc networks in presence of chan-nel randomness. In Joint Conference of the IEEE Computer and Communications Societies(INFOCOM), pages 491–502, Miami, Florida, USA, March 2005.
A. Muhammad and M. Egerstedt. On the structural complexity of multi-agent robot formations.In American Control Conference, pages 4957–4962, Boston, Massachusetts, USA, June-July2004.
123
H. Na, C. Lee, and O. Cheong. Voronoi diagrams on the sphere. Computational Geometry TheoryApplications, 23(2):183–194, 2002.
A. Okabe and A. Suzuki. Locational optimization problems solved through voronoi diagrams.European Journal of Operations Research, 98(3):445–456, 1997.
A. Okabe, B. Boots, and K. Sugihara. Spatial tessellations: Concepts and applications of voronoidiagrams. John Wiley & Sons Ltd., 1992.
J. O’Rourke. Art gallery theorems and algorithms. Oxford University Press, 1987.
M. Porfiri, D. J. Stilwell, E. M. Bollt, and J. D. Skufca. Stochastic synchronization over a movingneighborhood network. In American Control Conference, New York City, USA, July 2007.
Mohammad Rahimi, Rick Baer, Obimdinachi Iroezi, Juan Garcia, Jay Warrior, Deborah Estrin,and Mani Srivastava. Cyclops: In situ image sensing and interpretation in wireless sensornetworks. In ACM Conference on Embedded Networked Sensor Systems (SenSys), San Diego,California, USA, November 2005.
Rajmohan Rajaraman. Topology control and routing in ad hoc networks: a survey. SIGACTNews, 33(2):60–73, 2002.
J. H. Reif and H. Wang. Social potential fields: A distributed behavioral control for autonomousrobots. Robotics and Autonomous Systems, 27(3):171–194, 1999.
A. Rowe, C. Rosenberg, and I. Nourbakhsh. A low cost embedded color vision system. InIEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), EPFL, Switzer-land, October 2002.
N. Roy and G. Dudek. Collaborative exploration and rendezvous: Algorithms, performancebounds and observations. Autonomous Robots, 11(2):117–136, September 2001.
P. Santi. Topology control in wireless ad hoc and sensor networks. Wiley, 2005.
M. Schwager, J. McLurkin, and D. Rus. Distributed coverage control with sensory feedbackfor networked robots. In Robotics: Science and Systems, Philadelphia, Pennsylvania, August2006.
M. Schwager, J. Slotine, and D. Rus. Decentralized, adaptive control for coverage with networkedrobots. In International Conference on Robotics and Automation, Rome, Italy, April 2007.
H. Shi, D.Kruger, and J. Nickerson. Incorporating environmental information into underwateracoustic sensor coverage estimation in estuaries. In Military Communications Conference,MILCOM, October 2007.
D. Spanos and R. M. Murray. Robust connectivity of networked vehicles. In IEEE InternationalConference on Decision and Control (CDC), pages 2893–2898, Atlantis, Bahamas, December2004.
124
T. Spyropoulos, K. Psounis, and C. S. Raghavendra. Performance analysis of mobility-assistedrouting. In ACM International symposium on Mobile ad hoc networking and computing (Mo-biHoc), pages 49–60, Florence, Italy, 2006.
D. Tian and N. D. Georganas. Connectivity maintenance and coverage preservation in wirelesssensor networks. Ad Hoc Networks, 2005.
R. Wattenhofer and A. Zollinger. Xtc: A practical topology control algorithm for ad-hoc net-works. In International Workshop on Algorithms for Wireless, Mobile, Ad Hoc and SensorNetworks, 2004.
R. Wattenhofer, L. Li, P. Bahl, and Y. M. Wang. A cone-based distributed topology controlalgorithm for wireless multi-hop networks. IEEE/ACM Transactions on Networking, 13(1):147–159, Feb 2005.
R. Williams. The geometrical foundation of natural structure: A source book of design. DoverPublications, Inc. New York, 1979.
G. Xing, X. Wang, Y. Zhang, C. Lu, R. Pless, and C. Gill. Integrated coverage and connectiv-ity configuration for energy conservation in sensor networks. ACM Transactions on SensorNetworks, 1(1):36–72, Aug 2005.
F. Xue and P. R. Kumar. On the theta-coverage and connectivity of large random networks. IEEETransactions on Information Theory, 52(6):2289–2299, 2006.
F. Xue and P. R. Kumar. The number of neighbors needed for connectivity of wireless networks.Wireless Networks, 10(2):169–181, 2004.
M. M. Zavlanos and G. J. Pappas. Controlling connectivity of dynamic graphs. In IEEE In-ternational Conference on Decision and Control, pages 6388–6393, Seville, Spain, December2005.
B. Zhang and G. S. Sukhatme. Adaptive sampling for estimating a scalar field using a roboticboat and a sensor network. In IEEE International Conference on Robotics and Automation,pages 3295–3300, Rome, Italy, April 2007.
H. Zhang and J. C. Hou. Maintaining sensing coverage and connectivity in large sensor networks.Ad Hoc & Sensor Wireless Networks, 1(1-2):89–123, Jan 2005.
J. Zhao and R. Govindan. Understanding packet delivery performance in dense wireless sensornetworks. In ACM Conference on Embedded Networked Sensor Systems (Sensys), pages 1–13,Los Angeles, California, November 2003.
M. Zuniga and B. Krishnamachari. Analyzing the transitional region in low power wirelesslinks. In IEEE International Conference on Sensor and Ad hoc Communications and Networks(SECON), pages 517–526, Santa Clara, California, October 2004.
M. Zuniga, B. Krishnamachari, and R. Urgaonkar. Realistic wireless link quality model andgenerator. available online, Dec 2005.
125