cs0503031/pp.tex
1: 
2: \documentclass[11pt,onecolumn,draftcls,dvips]{IEEEtran}
3: %\documentclass[10pt,twocolumn,final,dvips]{IEEEtran}
4: \usepackage{amsmath,amssymb,epsfig,color}
5: \usepackage[breaklinks=true, colorlinks=true, linkcolor=dblue, urlcolor=dblue,
6: citecolor=dblue, pdfpagemode=None, pdfstartview=FitH]{hyperref}
7: 
8: 
9: \newtheorem{theorem}{Theorem}
10: \newtheorem{lemma}{Lemma}
11: \setlength{\unitlength}{1mm}
12: \definecolor{gray}{cmyk}{.2,0.2,.3,.1}
13: \definecolor{dred}{cmyk}{0,0.9,0.4,0.3}
14: \definecolor{dblue}{rgb}{0,0,0.5}
15: \definecolor{dgreen}{rgb}{0,0.3,0}
16: \definecolor{dgray}{rgb}{0.3,0.3,0}
17: 
18: 
19: \title{On the Scalability of Cooperative Time Synchronization
20:   in Pulse-Connected Networks
21:   \thanks{The authors are with the School of Electrical and Computer
22:   Engineering, Cornell University, Ithaca, NY.  URL:
23:   \href{http://cn.ece.cornell.edu}{{\tt http://cn.ece.cornell.edu/}}.
24:   Work supported by the National
25:   Science Foundation, under awards CCR-0238271 (CAREER), CCR-0330059,
26:   and ANR-0325556.}}
27: \author{An-swol Hu \hspace{2cm} Sergio D.\ Servetto}
28: \date{February 12, 2006.}
29: 
30: 
31: \begin{document}
32: \maketitle
33: 
34: \begin{picture}(0,0)
35: \put(0,78){\tt\small To appear in the IEEE Transactions on Information
36:   Theory.}
37: \end{picture}
38: 
39: \vspace{-10mm}
40: \begin{abstract}
41: \it\noindent The problem of time synchronization in dense wireless
42: networks is considered.  Well established synchronization
43: techniques suffer from an inherent scalability problem in that
44: synchronization errors grow with an increasing number of hops
45: across the network. In this work, a model for communication in
46: wireless networks is first developed, and then the model is used
47: to define a new time synchronization mechanism. A salient feature
48: of the proposed method is that, in the regime of asymptotically
49: dense networks, it can average out all random errors and maintain
50: global synchronization in the sense that all nodes in the
51: multi-hop network can see identical timing signals. This is
52: irrespective of the distance separating any two nodes.
53: \end{abstract}
54: 
55: {\keywords Cooperation in networks, large network asymptotics,
56: relay networks, scalability, sensor networks, time
57: synchronization, wireless communications.}
58: 
59: \section{Introduction}
60: 
61: \subsection{Time Synchronization in Large Distributed Systems}
62: 
63: The problem of time synchronization in large distributed systems
64: consists of giving all the physically disjoint elements of the
65: system a common time scale on which to operate.  This common time
66: scale is usually achieved by periodically synchronizing the clock
67: at each element to a reference time source, so that the local time
68: seen by each element of the system is approximately the same. Time
69: synchronization plays an important role in many systems in that it
70: allows the entire system to cooperate and function as a cohesive
71: group.
72: 
73: Time synchronization is an old problem~\cite{Lamport:78}, but the
74: question of scalability is not.  Recent advances in sensor
75: networks show a clear trend towards the development of large scale
76: networks with high node density.  For example, a hardware
77: simulation-and-deployment platform for wireless sensor networks
78: capable of simulating networks with on the order of 100,000 nodes
79: was recently developed~\cite{KellyEM:03}. As well, for many years
80: the Smart Dust project sought to build cubic-millimeter motes for
81: a wide range of applications~\cite{WarnekLLP:01}.  Also, there is
82: work in progress on the drastic miniaturization of power
83: sources~\cite{LiLBH:02}. These developments (and many others)
84: indicate that large scale, high density networks are on the
85: horizon.
86: 
87: Large scale, high density networks have applications in a variety
88: of situations.  Consider, for example, the military application of
89: sniper localization. Large numbers of wireless nodes can be
90: deployed to find the shooter location as well as the trajectory of
91: the projectile~\cite{LedecziVMSBNK:05}.  Since the effective range
92: of a long-range sniper rifle can be nearly $2$km, in order to
93: fully track the trajectory of the projectile it may be essential
94: that our deployed network be tightly synchronized over distances
95: of a few kilometers.  Another example might be the implementation
96: of a distributed radio for communication.  In extracting
97: information from a deployed sensor network, it may be beneficial
98: for the nodes to cooperatively transmit information to a far away
99: receiver~\cite{BarriacMM:04,OchiaiMPT:05,HuS:03c}.  Such an
100: application would require that nodes across the network be well
101: synchronized. As a result, a need for the synchronization of large
102: distributed systems is very real and one that requires careful
103: study to understand the fundamental performance limits on
104: synchronization.
105: 
106: \subsection{Approaches to Synchronization and the Limitations}
107: 
108: The synchronization of large networks has been studied in fields
109: ranging from biology to electrical engineering.  The study of
110: synchronous behavior has generally taken one of two approaches.
111: The first approach is to consider synchronization as an emergent
112: behavior in complex networks of oscillators. In that work, models
113: are developed to describe natural phenomena and synchronization
114: emerges from these models.  The second approach is to develop and
115: analyze algorithms that synchronize engineering networks.  Nodes
116: are programmed with algorithms that estimate clock skew and clock
117: offset to achieve network synchronization.  However, both of these
118: approaches have significant limitations.
119: 
120: \subsubsection{The Emergence of Synchronous Behavior}
121: 
122: Emergent synchronization properties in large populations has been
123: the object of intense study in the applied
124: mathematics~(\cite{MatharM:96,VanVreeswijkA:93}),
125: physics~(\cite{Chen:94,CorralPDA:95,DiazGuerraPA:98,ErnstPG:98,Gerstner:96,
126: GuardiolaDLP:00,HerzH:95,Kuramoto:91}), and neural
127: networks~(\cite{Izhikevich:99,SmithCN:94}) literature. These
128: studies were motivated by a number of examples observed in nature:
129: \begin{itemize}
130: \item In certain parts of south-east Asia, thousands of male fireflies
131:   congregate in trees and flash in synchrony at night~\cite{BuckB:76}.
132: \item Pacemaker cells of the heart, which on average cause 80
133: contractions a minute during a person's lifetime~\cite{Jalife:84}.
134: \item The insulin-secreting cells of the
135: pancreas~\cite{ShermanRK:88}.
136: \end{itemize}
137: For further information and examples, see~\cite{MirolloS:90,
138: Strogatz:03,McClintock:71,Walker:69}, and the references therein.
139: 
140: A number of models have been proposed to explain the emergence of
141: synchrony, but perhaps one of the most successful and well known
142: is the model of {\em pulse-coupled oscillators} by Mirollo and
143: Strogatz~\cite{MirolloS:90}, based on dynamical systems theory.
144: Consider a function $f:[0,1]\to[0,1]$ that is smooth, monotone
145: increasing, concave down (i.e., $f' > 0$ and $f'' < 0$), and is
146: such that $f(0)=0$ and $f(1)=1$.  Consider also a phase variable
147: $\phi$ such that $\partial\phi/\partial t = \frac 1 T$, where $T$
148: is the period of a cycle.  Then, each element in a group of $N$
149: oscillators is described by a state variable $x_i\in[0,1]$ and a
150: phase variable $\phi_i\in[0,1]$ as follows:
151: \begin{itemize}
152: \item In isolation, $x_i(t)=f(\phi_i(t))$.
153: \item If $\phi_i(t) = 0$ then $x_i(t) = 0$, and if $\phi_i(t) = 1$ then
154:   $x_i(t) = 1$.
155: \item When $x_i(t_0) = 1$ for any of the $i$'s and some time
156: $t_0$,
157:   then for all other $1\leq j\leq N$, $j\ne i$
158:   \[ \phi_j(t_0^+) = \left\{\begin{array}{rl}
159:                      f^{-1}(x_j(\phi_j(t_0))+\varepsilon_{i}),
160:                         & x_j(\phi_j(t_0)) + \varepsilon_{i} \leq 1 \\
161:                      1, & x_j(\phi_j(t_0)) + \varepsilon_{i} > 1,
162:                      \end{array}\right.
163:   \]
164:   where $t_0^+$ denotes an infinitesimal amount of time after $t_0$.
165:   That is, oscillator $i$ reaching the end of a cycle causes the state
166:   of all other oscillators to increase by the amount $\varepsilon_{i}$,
167:   and the phase variable to change accordingly.
168: \end{itemize}
169: The state variable $x_i$ can be thought of as a voltage. Charge is
170: accumulated over time according to the nonlinearity $f$ and it
171: discharges once it reaches full charge, resetting the charging
172: process. Upon discharging, it causes all other charges to increase
173: by a fixed amount of $\varepsilon_{i}$, up to the discharge point.
174: For this model, it is proved in~\cite{MirolloS:90} that for all
175: $N$ and for almost all initial conditions, the system eventually
176: becomes synchronized.
177: 
178: For the network to converge into a synchronous state, one key
179: assumption is that the behavior of every single oscillator is
180: governed by the same function $f(\cdot)$. This means that all
181: oscillators must have the same frequency. From the literature, it
182: appears that this requirement is nearly always needed. As far as
183: we are aware, for a fully synchronous behavior to emerge, the
184: oscillators need to have the same, or nearly the same, oscillation
185: frequencies.
186: 
187: The need for nearly identical oscillators presents a significant
188: limitation for emergent synchronization.  This emergence of
189: synchrony is clearly desirable and it has been considered for
190: communication and sensor networks
191: in~\cite{HongS:04,Werner-AllenTPWN:05, LucarelliW:04}. However,
192: whether or not these techniques can be adapted to synchronize
193: networks with nodes that have arbitrary oscillator frequencies
194: (clock skew) is still unclear.  Thus, in order to overcome this
195: limitation and find techniques capable of synchronizing a more
196: general class of networks, we turn to algorithms designed to
197: estimate certain unknown parameters such as clock skew.
198: 
199: \subsubsection{Estimation of Synchronization Parameters and the Scalability Problem}
200: \label{sec:estimate-params}
201: 
202: There have been many synchronization techniques proposed for use
203: in sensor networks.  These algorithms generally allow each node to
204: estimate its clock skew and clock offset relative to the reference
205: clock.  Reference Broadcast Synchronization
206: (RBS)~\cite{ElsonGE:02} eliminates transmitter side uncertainties
207: by having a transmitter broadcast reference packets to the
208: surrounding nodes. The receiving nodes then synchronize to each
209: other using the arrival of the reference packets as
210: synchronization events. Tiny-Sync/Mini-Sync~\cite{SichitiuV:03}
211: and the Timing-sync Protocol for Sensor Networks
212: (TPSN)~\cite{GaneriwalKW:03} organize the network into a
213: hierarchial structure and the nodes are synchronized using
214: pair-wise synchronization.  In lightweight tree-based
215: synchronization (LTS)~\cite{GreunenR:03}, pair-wise
216: synchronization is also employed but the goal of LTS is to reduce
217: communication and computation requirements by taking advantage of
218: relaxed accuracy constraints.  The Flooding Time Synchronization
219: Protocol (FTSP)~\cite{MarotiKSL:04} achieves one-hop
220: synchronization by having a root node broadcast timing information
221: to surrounding nodes.  These surrounding nodes then proceed to
222: broadcast their synchronized timing information to nodes beyond
223: the broadcast domain of the root node.  This process can continue
224: for multi-hop networks.
225: 
226: The problem with each of these traditional synchronization
227: techniques is that synchronization error will increase with each
228: hop.  Since each node is estimating certain synchronization
229: parameters, i.e. clock skew, there will be inherent errors in the
230: estimate.  As a result, a node multiple hops away from the node
231: with the reference clock will be estimating its parameters from
232: intermediate nodes that already have estimation errors. Therefore,
233: this introduces a fundamental \emph{scalability problem}: as the
234: number of hops across the network grows, the synchronization error
235: across the network will also grow.
236: 
237: Current trends in network technology are clearly moving us in the
238: direction of large, multi-hop networks.  First, sensors are
239: decreasing in size and this size decrease will most likely be
240: accompanied by a decrease in communication range.  Thus, more hops
241: will be required to traverse a network deployed over a given area.
242: Second, as we deploy networks over larger and larger areas, then
243: for a given communication range, the number hops across the
244: network will also increase.  In either case, the increased number
245: of hops required to communicate across the network will increase
246: synchronization error.  Therefore, it is essential that we develop
247: techniques than can mitigate the accumulation of synchronization
248: error over multiple hops.
249: 
250: \subsection{Spatial Averaging and Synchronization}
251: 
252: \subsubsection{Cooperation through Spatial Averaging}
253: 
254: To decrease the error increase in each hop, we need to decrease
255: the estimation error.  There are two primary ways of achieving
256: this.  First, each node can increase the amount of timing
257: information it obtains from neighboring nodes.  For example, from
258: a received timing packet, the node may be able to construct a data
259: point telling it the approximate time at the reference clock and
260: the corresponding time at its local clock.  Using a collection of
261: these data points, the node can estimate clock skew and clock
262: offset.  So instead of using, say, five packets with timing
263: information, a node can wait for ten packets.  More data points
264: will generally give better estimates.  The drawback to such an
265: approach is the increase in the number of packet exchanges.
266: 
267: The second way in which to reduce estimation error is to increase
268: the quality of each data point obtained by the nodes.  This can be
269: achieved through improving packet exchange algorithms and time
270: stamping techniques.  However, we believe that there is one
271: fundamentally new approach to improving data point quality that
272: has not be carefully studied.  This is to use spatial averaging to
273: improve the quality of each data point.
274: 
275: The motivation for this approach is very simple.  Assume that each
276: node has many neighbors.  If all nodes in the network are to be
277: synchronized, then the neighbors of any given node will also have
278: synchronization information.  Is it possible to simultaneously use
279: information from all the neighbors to improve the quality of a
280: timing observation made by a node?  Furthermore, it would seem to
281: make sense that with more neighbors, hence more available timing
282: information, the quality of the constructed data point should
283: improve.  If this is indeed the case, then achieving
284: synchronization through the use of spatial averaging will provide
285: a fundamentally new trade-off in improving synchronization
286: performance.  Network designers would simply be able to increase
287: the number and density of nodes to obtain better network
288: synchronization.  The study of cooperative time synchronization
289: using spatial averaging is the focus of this work.
290: 
291: \subsubsection{Model and Technique} \label{sec:introModel}
292: 
293: To obtain a model for developing cooperative synchronization in
294: large wireless networks, we begin by looking at the signals
295: observed by a node in a network with $N$ nodes uniformly deployed
296: over a fixed finite area. To start, we assume propagation delay to
297: negligible (the general case is considered in
298: Section~\ref{sec:timeDelay}). All nodes transmit a pulse $p(t)$
299: and a node $j$ will see a signal $A_{j,N}(t)$ which is the
300: superposition of all these pulses,
301: \[
302:   A_{j,N}(t)
303:     = \sum_{i=1}^N \frac{A_{max}K_{j,i}}{N}
304:                    p(t-\tau_{0}-T_{i}).
305: \]
306: In this expression, $p(t)$ is the basic pulse transmitted by each
307: node (assumed to be the same for all nodes).  $\tau_{0}$ is the
308: ideal pulse transmit time, but since we assume imperfect time
309: synchronization among the nodes we have $T_{i}$ modelling random
310: errors in the pulse transmission time.  $K_{j,i}$ models the
311: amplitude loss in the signal transmitted by the $i$th node.
312: $A_{max}$ is the maximum magnitude transmitted by a node. We scale
313: each node's transmission by $N$ so that as the network density
314: grows, the total power radiated does not grow unbounded.  This
315: model thus describes the received signal seen at a node $j$ for a
316: network with $N$ nodes and this holds for any $N$.  Increasing $N$
317: will have two effects: (a) node density will increase since the
318: network area is fixed and (b) node signal transmission magnitude
319: will decrease due to the $1/N$ scaling.  Therefore, by increasing
320: $N$ this model allows us to study the scalability of networks as
321: node density grows and node size decreases.
322: 
323: Given that these are the signals observed at each node, we ask: is
324: it possible for $A_{j,N}(t)$ to encode a time synchronization
325: signal that will enable all nodes in the network to synchronize
326: their clocks with bounded error, as $N\to\infty$? The answer is
327: yes, and the key to proving all our results is the law of large
328: numbers.
329: 
330: Our key idea is the following. If all nodes were able to determine
331: when time $\tau_{0}$ (in the reference time) arrives, then by
332: transmitting $p(t)$ at time $\tau_{0}$, the signal observed at any
333: node $j$ would be $p(t-\tau_{0})\sum_{i=1}^N
334: \frac{A_{max}K_{j,i}}{N}$, which is a suitably scaled version of
335: $p(t)$ centered at $\tau_{0}$. In reality however, there will be
336: some error in the determination of $\tau_{0}$, which we account
337: for by allowing for a node-dependent random error $T_i$.  But, if
338: the distribution of $T_i$ satisfies certain conditions, then the
339: effects of that timing error can be averaged out. A pictorial
340: representation of why this should be the case is shown in
341: Fig.~\ref{fig:why-sync-holds}.
342: 
343: \begin{figure}[!ht]
344: \centerline{\psfig{file=pulse.eps,height=4cm,width=7cm}
345:             \psfig{file=rinfinity.eps,height=4cm,width=7cm}}
346: \caption{\small Assume $N$ square waves are transmitted (one by
347:   each node) at random times.  These times have the properties that
348:   they all have the same mean, a small variance compared to the
349:   duration of the wave, and their distribution is symmetric.  Then,
350:   under the assumption of $N$ large, it follows from the Law of
351:   Large Numbers that the observed signal is going to be a smoothed
352:   version of the square wave, in which the center {\em
353:   zero-crossing} will correspond to the location of the mean of the
354:   random times.}
355: \label{fig:why-sync-holds}
356: \end{figure}
357: 
358: Therefore, intuitively we can see how the technique of
359: \emph{cooperative time synchronization} using spatial averaging
360: can average out the inherent timing errors in each node. Even
361: though there is randomness and uncertainty in each node's
362: estimates, by using cooperation among a large number of nodes it
363: is possible to recover {\em deterministic} parameters from the
364: resulting aggregate waveform (such as the location of certain
365: zero-crossings) in the limit as node density grows unbounded. Thus
366: more nodes will give us better estimates. This is because the
367: random waveform converges to a deterministic one as more and more
368: nodes cooperatively generate an aggregate waveform. At the same
369: time, the average power required by each node will decrease since
370: smaller nodes send smaller signals. Therefore, by programming
371: suitable dynamics into the nodes, in this paper we show how it is
372: possible to generate an aggregate output signal with {\em
373: equispaced} zero-crossings in the limit of asymptotically dense
374: networks. Thus, the detection of these zero-crossings plays the
375: same role as that of an externally generated time reference signal
376: based on which all nodes can synchronize.
377: 
378: We develop this synchronization technique in three main steps.
379: One, we set up the model for $A_{j,N}(t)$.  Two, we specify
380: characteristics of the model (i.e. the distribution of $T_{i}$)
381: that allow us to prove desirable properties of the aggregate
382: waveform (such as a center zero-crossing at $\tau_{0}$).  Three,
383: we develop the estimators needed for our synchronization technique
384: and show that the estimators give us the desired characteristics.
385: 
386: \subsection{Main Contributions and Organization of the Paper}
387: 
388: The main contributions presented in this paper are the following;
389: \begin{itemize}
390: \item The definition of a probabilistic model for the study of the
391: time synchronization problem in wireless networks.  This model
392: does contain the classical Mirollo-Strogatz model as a special
393: case, but its formulation and the tools used to prove convergence
394: results are of a completely different nature (purely
395: probabilistic, instead of based on the theory of dynamical
396: systems). \item Using this model, we provide a rigorous analysis
397: of a new cooperative time synchronization technique that employs
398: spatial averaging and has favorable scaling properties. As the
399: density of nodes increases, synchronization performance improves.
400: In particular, in the limit of infinite density, deterministic
401: parameters for synchronization can be recovered. \item We show
402: that cooperative time synchronization works perfectly for
403: negligible propagation delay. When propagation delay is
404: considered, we find that asymmetries at the boundaries reveal some
405: limitations that need to be carefully considered in designing
406: algorithms that take advantage of spatial averaging.
407: \end{itemize} In analyzing the
408: proposed cooperative time synchronization technique, our goal is
409: to show that the proposed technique can average out all random
410: error and provide deterministic parameters for synchronization as
411: node density grows unbounded. This asymptotic result can be viewed
412: as a \emph{convergence in scale} to synchrony.  The result serves
413: as a theoretical foundation for allowing a new trade-off between
414: node density and synchronization performance.  In particular,
415: higher node density can yield better synchronization.
416: 
417: The rest of this paper is organized as follows.  The general model
418: is presented in Section~\ref{sec:systemModel}. Of particular
419: interest here is Section~\ref{sec:specialcase}, where we show how
420: our model contains the model of Mirollo and Strogatz for
421: pulse-coupled oscillators as a special case~\cite{MirolloS:90}. In
422: Section~\ref{sec:timesync-setup} we specialize the general model
423: for our synchronization setup and develop waveform properties that
424: will be used in time synchronization. In
425: Section~\ref{sec:timeSynchronization} we develop the cooperative
426: time synchronization technique for no propagation delay.  We
427: extend the cooperative synchronization ideas to the case of
428: propagation delay in Section~\ref{sec:timeDelay}. The paper
429: concludes in Section~\ref{sec:conclusion} with a detailed
430: discussion on the scalability issue and how the technique proposed
431: in this work lays the theoretical foundation for a general class
432: of cooperative time synchronization techniques that use spatial
433: averaging.
434: 
435: 
436: \section{System Model}
437: \label{sec:systemModel}
438: 
439: \subsection{Clock Model}
440: 
441: We consider a network with $N$ nodes uniformly distributed over a
442: fixed finite area. The behavior of each node $i$ is governed by a
443: clock $c_{i}$ that counts up from $0$. The introduction of $c_{i}$
444: is important since it provides a consistent timescale for node
445: $i$. By maintaining a table of pulse-arrival times, node $i$ can
446: utilize the arrival times of many pulses over an extended period
447: of time.
448: 
449: The clock of one particular node in the network will serve as the
450: reference time and to this clock we wish to synchronize all other
451: nodes. We will call the node with the reference clock node $1$ and
452: the clocks of other nodes are defined relative to the clock of
453: node $1$.  We never adjust the frequency or offset of the local
454: clock $c_{i}$ because we wish to maintain a consistent time scale
455: for node $i$.
456: 
457: The clock of node $1$, $c_{1}$, will be defined as $c_{1}(t)=t$
458: where $t \in [0,\infty)$. Taking $c_{1}$ to be the reference
459: clock, we now define the clock of any other arbitrary node $i$,
460: $c_{i}$. We define $c_{i}$ as
461: \begin{equation} \label{eq:clock}
462: c_{i}(t)=\alpha_{i}(t-\bar{\Delta}_{i})+\Psi_{i}(t),
463: \end{equation}
464: where
465: \begin{itemize}
466: \item $\bar{\Delta}_{i}$ is an unknown offset between the start
467:   times of $c_{i}$ and $c_{1}$.
468: \item $\alpha_{i}>0$ is a constant and for each $i$,
469:   $\alpha_{i} \in [\alpha_{low},\alpha_{up}]$ where
470:   $\alpha_{up},\alpha_{low}>0$ are finite. This bound on $\alpha_{i}$
471:   means that the frequency offsets between any two nodes can not be
472:   arbitrarily large.
473: \item $\Psi_{i}(t)$ is a stochastic process modeling random timing
474:   jitter.
475: \end{itemize}
476: Thus, this model assumes that there is a bounded constant
477: frequency offset between the oscillators of any two nodes as well
478: as some random clock jitter.
479: 
480: It is important to note that node $1$ does not have to be special
481: in any way; its clock is simply a reference time on which to
482: define the clocks of the other nodes.  This means that our clock
483: model actually describes the relative relationship of all the
484: clocks in the network by using an arbitrary node's clock as a
485: reference.
486: 
487: \subsection{Pathloss Only Model} \label{sec:prop-model}
488: 
489: \subsubsection{A Random Model for Pathloss}
490: 
491: From Section~\ref{sec:introModel}, we see that we are interested
492: in studying the aggregate waveform observed at a node $j$.  As a
493: result, we are only concerned with the aggregate signal magnitude
494: and do not care about the particular signal contribution from each
495: surrounding node.  With this in mind, we can develop a random
496: model for pathloss that, for dense networks, gives the appropriate
497: aggregate signal magnitude at node $j$. Such a model is ideal for
498: our situation since we are studying asymptotically dense networks.
499: 
500: We start with a general pathloss model $K(d)$, where $0\leq
501: K(d)\leq 1$ for all distances $d\geq 0$, is non-increasing and
502: continuous. $K(d)$ is a fraction of the transmitted magnitude seen
503: at distance $d$ from the transmitter. For example, if the receiver
504: node $j$ is at distance $d$ from node $i$, and node $i$ transmits
505: a signal of magnitude $A$, then node $j$ will hear a signal of
506: magnitude $AK(d)$. We derive $K(d)$ from a power pathloss model
507: since any pathloss model captures the \emph{average} received
508: power at a given distance from the transmitter.  This average
509: received power is perfect for modelling received signal magnitudes
510: in our problem setup since we are considering asymptotically dense
511: networks. Due to the large number of nodes at any given distance
512: $d$ from the receiver, using the average received magnitude at
513: distance $d$ as the contribution from each node at that distance
514: will give a good modelling of the amplitude of the aggregate
515: waveform.
516: 
517: The random pathloss variable $K_{j}$ will be derived from $K(d)$.
518: To understand how $K_{j}$ and $K(d)$ are related, we give an
519: intuitive explanation of the meaning of $K_{j}$ as follows: the
520: $\textrm{Pr}[K_{j}\in(k,k+\Delta)]$ is the fraction of nodes at
521: distances $d$ from node $j$ such that $K(d)\in(k,k+\Delta)$, where
522: $\Delta$ is a small constant. This means that, roughly speaking,
523: for any given scaling factor $K_{j}=k$, $f_{K_{j}}(k)\Delta$ is
524: the fraction of received signals with magnitude scaled by
525: approximately $k$, where $f_{K_{j}}(k)$ is the probability density
526: function of $K_{j}$. Thus, if we scale the transmit magnitude $A$
527: from every node $i$ by an independent $K_{j}$, then as the number
528: of nodes, $N$, gets large, node $j$ will see $Nf_{K_{j}}(k)\Delta$
529: signals of approximate magnitude $Ak$, and this holds for all $k$
530: in the range of $K_{j}$. This is because taking a large number of
531: independent samples from a distribution results in a good
532: approximation of the distribution.
533: 
534: Thus, this intuition tells us that scaling the magnitude of the
535: signal transmitted from every node $i$ by an independent sample of
536: the random variable $K_{j}$ gives an aggregate signal at node $j$
537: that is the same magnitude as if we generated the signal using
538: $K(d)$ directly. Even though the signals from two nodes at the
539: same distance from a receiver have correlated magnitudes, we do
540: not care about the signal magnitude from any particular node but
541: only that an appropriate number of all possible received signal
542: magnitudes contribute to the aggregate waveform. For a receiving
543: node $j$, we choose therefore to work with the random variable
544: $K_{j}$ instead of directly with $K(d)$ because, for the goals of
545: this paper, doing so has two major advantages: (a) we can obtain
546: desirable limit results by placing very minimal restrictions on
547: the distribution of the $K_{j}$'s (and hence on $K(d)$) and (b) we
548: can apply tools from probability theory (basically, the strong law
549: of large numbers) to carry out our analysis.
550: 
551: \subsubsection{Definition of $K_{j}$}
552: 
553: From the above intuition we can define the cumulative distribution
554: function of $K_{j}$ as
555: \begin{equation} \label{eq:prop_cdf}
556: F_{K_{j}}(k) \;\;=\;\; \textrm{Pr}(K_{j}\leq k)
557:    \;\;=\;\;  \left\{ \begin{array}{ll}
558: 0 & k\in(-\infty,0) \\
559:    \frac{A_{T}-A(j,\bar{r})}{A_{T}}
560:    \;\;=\;\; 1 - \frac{A(j,\bar{r})}{A_{T}} & k\in[0,1] \\
561:    1 & k\in(1,\infty)
562:    \end{array} \right.
563: \end{equation}
564: where
565: \begin{itemize}
566: \item $A_{T}$ is the total area of the network, \item $A(j,a)$ is
567: the area of the network contained in a circle of radius $a$
568: centered at node $j$, \item $\bar{r} = \textrm{sup}\{d:K(d) >
569: k\}$.
570: \end{itemize}
571: From the above discussion we see that the distribution of $K_{j}$
572: is only a function of node $j$, the receiving node. We illustrate
573: the relationship among node $j$, $K(d)$, $\bar{r}$, and
574: $F_{K_{j}}(k)$ in Fig~\ref{fig:propModel-illus}. We sometimes
575: write $K_{j,i}$ with $i$ used to index each node surrounding node
576: $j$. $i$ is thus indexing a sequence of independent random
577: variables $K_{j,i}$ for fixed $j$. Therefore, for a given $j$,
578: $K_{j,i}$'s are independent and identically distributed (i.i.d.)
579: with a cumulative distribution function given by
580: (\ref{eq:prop_cdf}) for all $i$.
581: 
582: We assume that $K_{j}$ has the following properties:
583: \begin{itemize}
584: \item $K_{j}$ is independent from $\Psi_{l}(t)$ for all $j$, $l$,
585: and $t$. \item $0 \leq K_{j} \leq 1$, $0<E(K_{j})\leq 1$, and
586: $\textrm{Var}(K_{j})\leq 1$.
587: \end{itemize}
588: The requirements on the random variable $K_{j}$ places
589: restrictions on the model $K(d)$. Any function $K(d)$ that yields
590: a $K_{j}$ with the above requirements can be used to model
591: pathloss.
592: 
593: \begin{figure}[!h]
594: \centerline{\psfig{file=propModel_illus.eps,height=8.5cm}}
595: \caption[An illustration of node $j$, $K(d)$, $\bar{r}$, and
596: $F_{K_{j}}(k)$.]{\small An illustration of the cumulative
597: distribution function $F_{K_{j}}(k)$ is shown in the bottom-right
598: figure.  For a given scaling value $k$, $F_{K_{j}}(k)$ is defined
599: to be $1-(A(j,\bar{r})/A_{T})$, where the relationship between
600: $\bar{r}$ and $k$ is shown in the top-right figure. The area
601: $A(j,\bar{r})$ and its relation to node $j$ is shown in the
602: top-left figure.} \label{fig:propModel-illus}
603: \end{figure}
604: 
605: \subsection{Delay and Pathloss Model} \label{sec:delay-model}
606: 
607: In this section we develop a more complex model to simultaneously
608: model propagation delay and pathloss.  This leads to the joint
609: development of the delay random variable $D_{j}$ and a
610: corresponding pathloss random variable $K_{j}$.
611: 
612: \subsubsection{Correlation Between Delay and Pathloss}
613: 
614: Since we want to develop a model for both pathloss and time delay,
615: we start by keeping the pathloss function $K(d)$ defined in
616: Section~\ref{sec:prop-model}.  The general delay model assumes a
617: function $\delta(d)$ that models the time delay as a function of
618: distance. $\delta(d)$ describes the time in terms of $c_{1}$ that
619: it takes for a signal to propagate a distance $d$. For example, if
620: node $i$ and node $j$ are distance $d_{0}$ apart, then a pulse
621: sent by node $i$ at time $c_{1}=0$ will be seen at node $j$ at
622: time $c_{1}=\delta(d_{0})$. We make the reasonable assumption that
623: $\delta(d)$ is continuous and strictly monotonically increasing
624: for $d\geq 0$.
625: 
626: As with the pathloss only model, we want to define a delay random
627: variable $D_{j}$ for each receiving node $j$.  Recall that this
628: means that for every node $j$ there is a random variable $D_{j}$
629: associated with it since, in general, each node $j$ will see
630: different delays.  There is a correlation between the delay random
631: variable $D_{j}$ and the pathloss random variable $K_{j}$. This
632: correlation arises for two main reasons. First, since in
633: Section~\ref{sec:prop-model} we define $K(d)$ to be monotonically
634: decreasing and continuous, it is possible for $K(d)=0$ for
635: $d\in[R,\infty)$, $R>0$. This might be the case for a multi-hop
636: network. In this situation, there will be a set of nodes whose
637: transmissions will never reach node $j$ (i.e. infinite delay) even
638: though according to $\delta(d)$ these nodes should contribute a
639: signal with finite delay.  Second, a small $K_{j}$ value would
640: represent a signal from a far away node. As a result, the
641: corresponding $D_{j}$ value should be large to reflect large
642: delay.  Therefore, keeping these two points in mind, we proceed to
643: develop a model for both pathloss and propagation delay.
644: 
645: \subsubsection{Definition of $D_{j}$ and $K_{j}$}
646: 
647: We define the cumulative distribution function of $D_{j}$ as
648: \begin{equation} \label{eq:delay_cdf}
649: F_{D_{j}}(x) \;\;=\;\; \textrm{Pr}(D_{j}\leq x)
650:     \;\;=\;\; \left\{ \begin{array}{ll}
651:     0 & x\in(-\infty,0) \\
652:     \frac{A(j,r')}{A_T} & x\in[0,\delta(R)] \\
653:     a(x-\delta(R))+\frac{A(j,R)}{A_{T}} & x\in(\delta(R),\delta(R+\Delta
654:     R)] \\
655:     1 & x\in(\delta(R+\Delta R),\infty)
656:     \end{array} \right.
657: \end{equation}
658: where $r' = \textrm{sup}\{r:\delta(r)\leq x\}$, $\Delta R>0$ is a
659: constant, $R=\sup\{d:K(d)>0\}$, and
660: \begin{displaymath}
661: a = \frac{1-\frac{A(j,R)}{A_{T}}}{\delta(R+\Delta R)-\delta(R)}.
662: \end{displaymath}
663: Recall that $A(j,a)$, defined in Section~\ref{sec:prop-model}, is
664: the area of the network contained in a circle of radius $a$
665: centered at node $j$ and $A_{T}$ is the total area of the network.
666: Note that $R$ can be infinite.
667: 
668: Using the delay random variable $D_{j}$ with the cumulative
669: distribution function in (\ref{eq:delay_cdf}), we define $K_{j}$
670: as
671: \begin{equation} \label{eq:DjKjconnection}
672: K_{j} = K(\delta^{-1}(D_{j})),
673: \end{equation}
674: where $K(\cdot)$ is the deterministic pathloss function from
675: Section~\ref{sec:prop-model} and
676: $\delta^{-1}:[0,\infty)\to[0,\infty)$ is the inverse function of
677: the deterministic delay function $\delta(\cdot)$. Note that
678: $\delta^{-1}(\cdot)$ exists since $\delta(\cdot)$ is continuous
679: and strictly monotonically increasing on $[0,\infty)$.
680: 
681: \subsubsection{Intuition Behind $D_{j}$ and $K_{j}$}
682: 
683: To understand the distribution of $D_{j}$, we need to consider the
684: definition of $K_{j}$ as well.  Recall that a signal arriving with
685: delay $D_{j}$ is scaled by the pathloss random variable $K_{j}$.
686: Let us consider the cumulative distribution in two pieces,
687: $x\in[0,\delta(R)]$ and $x\in(\delta(R),\infty)$. The case for
688: $x\in(-\infty,0)$ is trivial.  First, for $x\in[0,\delta(R)]$, the
689: probability that $D_{j}$ takes a value less than or equal to $x$
690: is simply the fraction of the network area around node $j$ such
691: that the nodes are at distances $d$ with $\delta(d)\leq x$. The
692: intuition is the same as that for the development of $K_{j}$ in
693: Section~\ref{sec:prop-model}. Second, for
694: $x\in(\delta(R),\infty)$, the situation is more complex. Note that
695: a transmitted signal from a node at distance $d\in(R,\infty)$ from
696: $j$ will arrive at node $j$ with infinite delay since $K(d)=0$ for
697: $d\in(R,\infty)$. Since any delay values in
698: $x\in(\delta(R),\infty)$ correspond to distances
699: $d=\delta^{-1}(x)\in(R,\infty)$, the corresponding scaling value
700: will be zero because $K_{j}$ and $D_{j}$ are related by
701: (\ref{eq:DjKjconnection}). As a result, it does not matter what
702: delay values we assign to the fraction of the network area outside
703: a circle of radius $R$ centered at node $j$ as long as their delay
704: value $x$ is such that $\delta^{-1}(x)\in(R,\infty)$.  Thus, we
705: can arbitrarily choose a constant $\Delta R$ value and construct a
706: piecewise linear portion of the cumulative distribution function
707: of $D_{j}$ on $x\in(\delta(R),\infty)$.  The probability that
708: $D_{j}\in(\delta(R),\infty)$ will be the fraction of the network
709: area outside a circle of radius $R$ around node $j$.  And since
710: $D_{j}\in(\delta(R),\infty)$ will have a corresponding $K_{j}$
711: value that is zero, this fraction of nodes will not contribute to
712: the aggregate waveform at node $j$.  It is clear that the
713: correlated $D_{j}$ and $K_{j}$ random variables work together to
714: accurately model a signal arriving with both pathloss and
715: propagation delay.  An illustration of how $K(d)$, $\delta(d)$,
716: node $j$, and $F_{D_{j}}(x)$ are related can be found in
717: Fig.~\ref{fig:delayModel-illus}.
718: 
719: \begin{figure}[!h]
720: \centerline{\psfig{file=delayModel_illus.eps,height=9.5cm}}
721: \caption[An illustration $K(d)$, $\delta(d)$, node $j$, and
722: $F_{D_{j}}(x)$.]{\small From the top-left and bottom-left figures,
723: we can see how $K(d)$ determines the set of nodes surrounding node
724: $j$ that will contribute to the aggregate waveform at node $j$.
725: This contributing set of nodes is related to $F_{D_{j}}(x)$
726: through $\delta(d)$ and this is illustrated in the top-right and
727: bottom-right figures.} \label{fig:delayModel-illus}
728: \end{figure}
729: 
730: We require that $D_{j}$ is bounded, has finite expectation, and
731: has finite variance for all $j$. Note that $D_{j}\geq 0$ by the
732: requirement that $\delta(d)\geq 0$.  As well, since the cumulative
733: distribution in (\ref{eq:delay_cdf}) is continuous, and often
734: absolutely continuous, we assume that $D_{j}$ has a probability
735: density function $f_{D_{j}}(x)$.  When we write $D_{j,i}$, the $i$
736: indexes each node surrounding node $j$. Thus, the $D_{j,i}$'s are
737: independent and identically distributed in $i$ for a given $j$ and
738: have a cumulative distribution given by (\ref{eq:delay_cdf}).
739: Using the $K_{j}$ and $D_{j}$ developed in this section to
740: simultaneously model pathloss and propagation delay, respectively,
741: we will be able to closely approximate the received aggregate
742: waveform at any node $j$ as $N\to\infty$.
743: 
744: To summarize, we see that our choice of the pathloss and delay
745: random variables will depend on what we want to model. If we only
746: consider pathloss and not propagation delay, then we will use the
747: random variable $K_{j}$ defined in Section~\ref{sec:prop-model}.
748: If we account for both pathloss and delay, then we will use the
749: delay random variable $D_{j}$ in this section
750: (Section~\ref{sec:delay-model}) and the pathloss random variable
751: $K_{j}$ defined by (\ref{eq:DjKjconnection}).
752: 
753: \subsection{Synchronization Pulses and the Pulse-Connection Function}
754: 
755: The exchange of pulses is the method through which the network
756: will maintain time synchronization. Each node $i$ will
757: periodically transmit a scaled pulse $A_{i} p(t)$, where $A_{i}$
758: is a constant and $p(t)$, in general, can be any pulse. We call
759: the interval of time during which a synchronization pulse is
760: transmitted a \emph{synchronization phase}.
761: 
762: What each node does with a set of pulse arrival observations is
763: determined by the pulse-connection function $X_{n,i}^{c_{i}}$ for
764: node $i$.  The pulse-connection function is a function that
765: determines the time, in the time scale of $c_{i}$, when node $i$
766: will send its $n$th pulse. It can be a function of the current
767: value of $c_{i}(t)$ and past pulse arrival times. This function
768: basically determines how any node $i$ reacts to the arrival of a
769: pulse.
770: 
771: \subsection{An Example: Pulse-Coupled Oscillators}
772: \label{sec:specialcase}
773: 
774: The system model that we presented thus far is powerful because it
775: is very general. In this section we show that it is a
776: generalization of the pulse-coupled oscillator model proposed by
777: Mirollo and Strogatz~\cite{MirolloS:90}. As a result, the results
778: presented in that paper will hold under the simplified version of
779: our model.
780: 
781: \subsubsection{Model Parameters for Pulse-Coupled Oscillators}
782: 
783: In setting up the system model, Mirollo and Strogatz make four key
784: assumptions:
785: \begin{itemize}
786: \item Pathloss Model: The first assumption that is made is that
787: there is all-to-all coupling among all $N$ oscillators. This means
788: that each oscillator's transmission can be heard by all other
789: oscillators. Thus, for our model we ignore pathloss, i.e. $K(d) =
790: 1$, to allow any node's transmission to be heard by each of the
791: other $N-1$ nodes. \item Delay Model: The second assumption is
792: that there is instantaneous coupling.  This assumption is the same
793: as setting $\delta(d) = 0$. In such a situation we would use our
794: pathloss only model. \item Synchronization Pulses: The third key
795: assumption made in~\cite{MirolloS:90} is that there is non-uniform
796: coupling, meaning that each of the $N$ oscillators fire with
797: strengths $\epsilon_{1},\dots,\epsilon_{N}$. We modify the
798: parameters in our model by making node $i$ transmit with magnitude
799: $A_{i} = \epsilon_{i}$. They also assume that any two pulses
800: transmitted at different times will be seen by an oscillator as
801: two separate pulses.  In our model, we may choose any pulse $p(t)$
802: that has an arbitrarily short duration and each node will detect
803: the pulse arrival time and pulse magnitude. \item Clock Model: The
804: fourth important assumption made by Mirollo and Strogatz is that
805: the oscillators are identical but they start in arbitrary initial
806: conditions.  We simplify our clock model in~(\ref{eq:clock}) by
807: eliminating any timing jitter, i.e. $\Psi_{i}(t) = 0$, and making
808: the clocks identical by setting $\alpha_{i} = 1$ for
809: $i=1,\dots,N$. We leave $\bar{\Delta}_{i}$ in the model to account
810: for the arbitrary initial conditions. We also assume that the
811: phase variable in the pulse-coupled oscillator model increases at
812: the same rate as our clock.  That is, the time it takes the phase
813: variable to go from zero to one and the time it takes our clock to
814: count from one integer value to the next are the same.
815: \end{itemize}
816: Now that we have identical system models, what remains is to
817: modify our model to mimic the coupling action detailed
818: in~\cite{MirolloS:90}.  This is accomplished by defining a proper
819: pulse-connection function $X_{n,i}^{c_{i}}$.
820: 
821: \subsubsection{Choice of Pulse-Connection Function}
822: 
823: To match the coupling action in~\cite{MirolloS:90}, we choose a
824: pulse transmit time function $X_{n,i}^{c_{i}}(z_{k,i}^{c_{i}},
825: z_{k-1,i}^{c_{i}},\dots,z_{1,i}^{c_{i}}, x_{n-1,i}^{c_{i}})$ that
826: is a function of pulse receive times and also the time of node
827: $i$'s $(n-1)$th pulse transmission time. $z_{k,i}^{c_{i}}$ is the
828: time in terms of $c_{i}$ that node $i$ receives its $k$th pulse
829: since its last pulse transmission at $x_{n-1,i}^{c_{i}}$.  In this
830: case, $X_{n,i}^{c_{i}}$ will be a function that updates node $i$'s
831: $n$th pulse transmission time each time node $i$ receives a pulse.
832: Let $X_{n,i}^{c_{i}}(k) \stackrel{\small{\Delta}}{=}
833: X_{n,i}^{c_{i}}(z_{k,i}^{c_{i}},
834: z_{k-1,i}^{c_{i}},\dots,z_{1,i}^{c_{i}}, x_{n-1,i}^{c_{i}})$ where
835: it is node $i$'s $n$th pulse transmission time after observing $k$
836: pulses since its last pulse transmission.  Node $i$ will transmit
837: its pulse as soon as $X_{n,i}^{c_{i}}\leq c_{i}(t)$ where
838: $c_{i}(t)$ is node $i$'s current time. As soon as the node
839: transmits a pulse at $X_{n,i}^{c_{i}}$ the function will reset and
840: become $X_{n+1,i}^{c_{i}}(0) = x_{n,i}^{c_{i}}+1$. The node is now
841: ready to receive pulses and at its first received pulse, the next
842: transmission time will become $X_{n+1,i}^{c_{i}}(1)$.
843: $X_{n,i}^{c_{i}}$ will thus be defined as
844: \begin{eqnarray} \label{eq:pco_estimator}
845: X_{n,i}^{c_{i}}(k) &=& X_{n,i}^{c_{i}}(k-1) -
846: [f^{-1}(\epsilon_{j}+f(z_{k,i}^{c_{i}}-x_{n-1,i}^{c_{i}}))-(z_{k,i}^{c_{i}}-x_{n-1,i}^{c_{i}})],
847: \qquad k>0\\
848: X_{n,i}^{c_{i}}(0) &=& x_{n-1,i}^{c_{i}}+1
849: \label{eq:pco_estimator2}
850: \end{eqnarray}
851: where the pulse received at $z_{k,i}^{c_{i}}$ is a pulse of
852: magnitude $\epsilon_{j}$ and the function $f:[0,1]\to [0,1]$ is
853: the smooth, monotonic increasing, and concave down function
854: defined in~\cite{MirolloS:90}.
855: 
856: Equations~(\ref{eq:pco_estimator}) and (\ref{eq:pco_estimator2})
857: fundamentally say that each time node $i$ receives a pulse, node
858: $i$'s next transmission time will be adjusted.  This is in line
859: with the behavior of the coupling model described by Mirollo and
860: Strogatz since each time an oscillator receives a pulse, its state
861: variable is pulled up by $\epsilon$ thus adjusting the time at
862: which the oscillator will next fire. To see how
863: equations~(\ref{eq:pco_estimator}) and (\ref{eq:pco_estimator2})
864: relate to the coupling model in~\cite{MirolloS:90}, let us
865: consider an example with two pulse coupled oscillators. Consider
866: two oscillators $A$ and $B$ illustrated in
867: Fig.~\ref{fig:strogatzModel}. In Fig.~\ref{fig:strogatzModel}(a),
868: \begin{figure}[!h]
869: \centerline{\psfig{file=strogatzModel.eps,height=6cm,width=12cm}}
870: \vspace{-5mm} \caption[The connection with pulse-coupled
871: oscillators.]{\small We illustrate the connection between the
872: pulse-coupled oscillator coupling model and our clock model.  In
873: (a), oscillator $B$ is just about to fire and oscillator $A$ has
874: phase $q$.  In (b), oscillator $B$ fires and increases the phase
875: of oscillator $A$ by $d$.  This $d$ increase in phase effectively
876: decreases the time at which $A$ will next fire.  We capture this
877: time decrease by decreasing the firing time of our node by an
878: amount $d$. Thus, oscillator $A$ and our node will fire at the
879: same time.} \label{fig:strogatzModel}
880: \end{figure}
881: we have that oscillator $A$ is at phase $q$ and oscillator $B$ is
882: just about to fire.  Below the pulse-coupled oscillator model we
883: have a time axis for node $i$ corresponding to our clock model
884: going from time $x_{n-1,i}^{c_{i}}$ to $x_{n-1,i}^{c_{i}}+1$. Our
885: time axis for node $i$ models the behavior of oscillator $A$, that
886: is, we want node $i$ to behave in the same way as oscillator $A$
887: under the influence of oscillator $B$. If oscillator $B$ did not
888: exist, then the phase variable $q$ will match our clock in that
889: $q$ reaches $1$ at the same time our clock reaches
890: $X_{n,i}^{c_{i}}(0) = x_{n-1,i}^{c_{i}}+1$ and oscillator $A$ will
891: fire at the same time our model fires.  In
892: Fig.~\ref{fig:strogatzModel}(b), oscillator $B$ has fired and has
893: pulled the state variable of oscillator $A$ up by $\epsilon$. This
894: coupling has effectively pushed the phase of oscillator $A$ to
895: $q+d$ and decreased the time before $A$ fires.  In fact, the time
896: until oscillator $A$ fires again is decreased by $d$.  We can
897: capture this coupling in our model since we can calculate the lost
898: time $d$.  The time at which oscillator $B$ fires is
899: $z_{1,i}^{c_{i}}$ and it is clear that $d =
900: f^{-1}(\epsilon+f(z_{1,i}^{c_{i}}-x_{n-1,i}^{c_{i}}))-(z_{1,i}^{c_{i}}-x_{n-1,i}^{c_{i}})$.
901: Thus, if the time that oscillator $A$ will fire again is decreased
902: by time $d$ due to the pulse of $B$, then we adjust our node
903: firing time by decreasing the firing time to $X_{n,i}^{c_{i}}(1) =
904: x_{n-1,i}^{c_{i}}+1-d$.  This is exactly the expression
905: in~(\ref{eq:pco_estimator}) for $k=1$.  This relationship between
906: our model for calculating the node firing time and the
907: pulse-coupled oscillator coupling model can be easily extended to
908: $N$ oscillators.
909: 
910: We can see then that the pulse-coupled oscillator model
911: proposed by Mirollo and Strogatz in~\cite{MirolloS:90} is a
912: special case of our model.  Our model generalizes this
913: pulse-coupled oscillator model by considering timing jitter,
914: pulses of finite width, propagation delay, non-identical clocks,
915: and an ability to accommodate arbitrary coupling functions.
916: 
917: 
918: \section{Cooperative Time Synchronization Setup}
919: \label{sec:timesync-setup}
920: 
921: Just as we could specialize our model to the pulse-coupled
922: oscillator model of Mirollo and Strogatz, we now specialize the
923: model for our proposed synchronization technique.  We start under
924: the assumption of no propagation delay and develop the
925: synchronization technique for this case. Propagation delay is
926: considered in Section~\ref{sec:timeDelay}. We proceed in three
927: steps. In Section~\ref{sec:signal-reception}, we specify the model
928: for $A^{c_{1}}_{j,N}(t)$, the received waveform at any node $j$.
929: Second, in Section~\ref{sec:pulseProperties}, we prove that given
930: certain characteristics of the model, $A^{c_{1}}_{j,N}(t)$ has
931: very useful limiting properties.  Third, we show in
932: Section~\ref{sec:timeSynchronization} that estimators (i.e., the
933: pulse connection function) developed for our synchronization
934: technique give $A^{c_{1}}_{j,N}(t)$ the desired properties.
935: 
936: \subsection{System Parameters}  \label{sec:systemParameters}
937: 
938: For our synchronization technique, we specialize the general model
939: by making the following assumptions on $\alpha_{i}$ and
940: $\Psi_{i}(t)$ for $i=1\dots N$:
941: \begin{itemize}
942: \item A characterization of the $\{\alpha_{i}\}$ is given by a
943: known function $f_{\alpha}(s)$ with
944: $s\in[\alpha_{low},\alpha_{up}]$ that gives the percentage of
945: nodes with any given $\alpha$ value. Thus, the fraction of nodes
946: with $\alpha$ values in the range $s_{0}$ to $s_{1}$ can be found
947: by integrating $f_{\alpha}(s)$ from $s_{0}$ to $s_{1}$. We assume
948: that $|f_{\alpha}(s)|<G_{\alpha}$, for some constant $G_{\alpha}$.
949: We keep this function constant as we increase the number of nodes
950: in the network ($N\to\infty$). Given any circle of radius $R$ that
951: intersects the network, the nodes within that circle will have
952: $\alpha_{i}$'s that are characterized by $f_{\alpha}(s)$. $R$ is
953: the maximum $d$ such that $K(d)>0$. This means that the set of
954: nodes that any node $j$ will hear from will have its
955: $\alpha_{i}$'s characterized by a known function. Note that $R$
956: can be infinite, and in that case, any node $j$ hears from all
957: nodes in the network. Fundamentally, $f_{\alpha}(s)$ means that as
958: we increase node density, the new nodes have $\alpha$ parameters
959: that are well distributed in a predictable manner. \item
960: $\Psi_{i}(t)$ is a zero mean Gaussian process with samples
961: $\Psi_{i}(t_{0})\sim {\mathcal N}(0,\sigma^{2})$, for any $t_{0}$,
962: and independent and identically distributed samples for any set of
963: times $[t_{0},\ldots,t_{k}]$, $k$ a positive integer. We assume
964: $\sigma^{2}<\infty$ and note that $\sigma^{2}$ is defined in terms
965: of the clock of node $i$. We assume that $\Psi_{i}(t)$ is Gaussian
966: since the RMS (root mean square) jitter is characterized by the
967: Gaussian distribution~\cite{Roberts:03}.
968: \end{itemize}
969: We maintain the full generality of the pathloss model from
970: Section~\ref{sec:prop-model}.  Note that throughout this work we
971: assume no transmission delay or time-stamping error. This means
972: that a pulse is transmitted at exactly the time the node intends
973: to transmit it. We make this assumption since there will be no
974: delay in message construction or access time~\cite{ElsonGE:02}
975: because our nodes broadcast the same simple pulse without worrying
976: about collisions. Also, when a node receives a pulse it can
977: determine its clock reading without delay since any time stamping
978: error is small and can be absorbed into the random jitter.
979: 
980: \subsection{Signal Reception Model} \label{sec:signal-reception}
981: 
982: For our proposed synchronization technique, the aggregate waveform
983: seen by node $j$ at any time $t$ is
984: \begin{eqnarray} \label{eq:timesync-aggwaveform}
985: A^{c_{1}}_{j,N}(t) = \sum_{i=1}^{N} \frac{ A_{max}K_{j,i}}{N}
986: p(t-\tau_{o}-T_{i}),
987: \end{eqnarray}
988: where $A^{c_{1}}_{j,N}(t)$ is the waveform seen at node $j$
989: written in the time scale of $c_{1}$ and $A_{i} = A_{max}/N$ for
990: all $i$. $A_{max}$ is the maximum transmit magnitude of a node.
991: $T_{i}$ is the random timing offset suffered by the $i$th node,
992: which encompasses the random clock jitter and estimation error.
993: This model says that each node $i$'s pulse transmission occurs at
994: the ideal transmit time $\tau_{0}$ plus some random error $T_{i}$.
995: In the next section, Section~\ref{sec:pulseProperties}, we find
996: properties for $T_{i}$ that will give us desirable properties in
997: $A^{c_{1}}_{j,N}(t)$. Then, in
998: Section~\ref{sec:timeSynchronization}, we show that our proposed
999: steady-state synchronization technique and its associated
1000: pulse-connection function will give us the desired properties.
1001: 
1002: There are two comments about (\ref{eq:timesync-aggwaveform}) that
1003: we want to make. First, note that even though we sum the
1004: transmissions from all $N$ nodes in
1005: (\ref{eq:timesync-aggwaveform}), we do not assume that node $j$
1006: can hear all nodes in the network.  Recall from the pathloss model
1007: that if we have a multi-hop network, then there will be a nonzero
1008: probability that $K_{j,i}=0$.  Thus, node $j$ will not hear from
1009: the nodes whose transmissions have zero magnitude.  Second, it may
1010: be possible that the nodes are told that there are $\bar{N}=vN$
1011: nodes in the network while the actual number of functioning nodes
1012: is $N$.  In which case, each node will transmit with signal
1013: magnitude $A_{i} = A_{max}/(vN)$ and
1014: (\ref{eq:timesync-aggwaveform}) will have a factor of $1/v$. Other
1015: than for this factor, however, the theoretical results that follow
1016: are not affected.
1017: 
1018: To model the quality of the reception of $A^{c_{1}}_{j,N}(t)$ by
1019: node $j$, we model the reception of a signal by defining a
1020: threshold $\gamma$.  $\gamma$ is the received signal threshold
1021: required for nodes to perfectly resolve the pulse arrival time. If
1022: the maximum received signal magnitude is less than $\gamma$ then
1023: the node does not make any observations and ignores the received
1024: signal waveform. We assume that $\gamma\ll A_{max}$.
1025: 
1026: In our work we will assume that $p(t)$ takes on the shape
1027: \begin{eqnarray} \label{eq:poft}
1028: p(t) = \left \{ \begin{array}{ll}
1029: q(t) & \textrm{ $-\tau_{nz} < t < 0$}  \\
1030: 0 & \textrm{ $t = 0, t \leq -\tau_{nz}, t \geq \tau_{nz}$} \\
1031: -q(-t) & \textrm{ $0 < t < \tau_{nz}$}
1032: \end{array} \right.
1033: \end{eqnarray}
1034: where $\tau_{nz}>0$ is expressed in terms of $c_{1}$. We assume
1035: $q(t)> 0$ for $t\in (-\tau_{nz}, 0)$, $q(t)\ne 0$ only on $t\in
1036: (-\tau_{nz}, 0)$, $\textrm{sup}_{t} |q(t)| = 1$, and $q(t)$ is
1037: uniformly continuous on $(-\tau_{nz}, 0)$. Thus, we see that
1038: $p(t)$ has at most three jump discontinuities (at $t =
1039: 0,-\tau_{nz},\tau_{nz}$). $\tau_{nz}$ should be chosen large
1040: compared to $\max_{i}\sigma_{i}^{2}$, i.e.
1041: $\sigma_{i}^{2}<<\tau_{nz}$, where $\sigma_{i}^{2}$ is the value
1042: of $\sigma^{2}$ translated from the time scale of $c_{i}$ to
1043: $c_{1}$. This way, over each synchronization phase, with high
1044: probability a zero-crossing will occur.  For each node, the
1045: duration in terms of $c_{1}$ of a synchronization phase will be
1046: $2\tau_{nz}$.  Note that we assume $\tau_{nz}$ is a value that is
1047: constant in any consistent time scale. This means that even though
1048: nodes have different clocks, identical pulses are transmitted by
1049: all nodes. We define a pulse to be transmitted at time $t$ if the
1050: pulse makes a zero-crossing at time $t$. Similarly, we define the
1051: \emph{pulse receive (arrival) time} for a node as the time when
1052: the observed waveform first makes a zero-crossing. A
1053: \emph{zero-crossing} is defined for signals that have a positive
1054: amplitude and then transition to a negative amplitude. It is the
1055: time that the signal first reaches zero.
1056: 
1057: For the exchange of synchronization pulses, we assume that nodes
1058: can transmit pulses and receive signals at the same time.  This
1059: simplifying assumption is not required for the ideas presented
1060: here to hold, but simplifies the presentation.  We mention a way
1061: to relax this assumption in Section~\ref{sec:noSimultTxRx}.
1062: 
1063: In (\ref{eq:timesync-aggwaveform}) and in the discussions above,
1064: we have focused on characterizing the aggregate waveform for any
1065: one synchronization phase. That is,
1066: (\ref{eq:timesync-aggwaveform}) is the waveform seen by any node
1067: $j$ for the synchronization phase centered around node $1$'s
1068: transmission at $t=\tau_{0}$, $\tau_{0}$ a positive integer.  We
1069: can, however, describe a synchronization pulse train in the
1070: following form,
1071: \begin{eqnarray}
1072: \bar{A}^{c_{1}}_{j,N}(t) = \sum_{u=1}^{\infty}\sum_{i=1}^{N}
1073: \frac{A_{max}K_{j,i}}{N} p(t-\tau_{u}-T_{i,u}),
1074: \end{eqnarray}
1075: where $\tau_{u}$ is the integer value of $t$ at the $u$th
1076: synchronization phase, and $T_{i,u}$ is the error suffered by the
1077: $i$th node in the $u$th synchronization phase.  We seek to create
1078: this pulse train with equispaced zero-crossings and use each
1079: zero-crossing as a synchronization event.  An illustration of such
1080: a pulse train is shown in Fig.~\ref{fig:pulsetrain}. For
1081: simplicity, however, most of the theoretical work is carried out
1082: on one synchronization phase.
1083: 
1084: \begin{figure}[!h]
1085: \centerline{\psfig{file=pulsetrain.eps,width=15cm,height=1.5cm}}
1086: \vspace{-3mm}
1087: \caption[A pulse train with equispaced zero-crossings.]{\small An
1088:   illustration of a pulse train with equispaced zero-crossings.
1089:   The pulse at each integer value of $t$ is an instance of
1090:   $A_{j,\infty}(t)=\lim_{N\to\infty}A^{c_{1}}_{j,N}(t)$ so we see
1091:   three instances of $A_{j,\infty}(t)$ in the above figure with
1092:   zero-crossings at $t=1,2,3$. We can control the zero-crossings of
1093:   $A_{j,\infty}(t)$ and choose to place it on an integer value of
1094:   $t$.  As a result, we can use these zero-crossings as
1095:   synchronization events since they can be detected simultaneously
1096:   by all nodes in the network.}
1097: \label{fig:pulsetrain}
1098: \end{figure}
1099: 
1100: \subsection{Desired Structural Properties of the Received Signal}\label{sec:pulseProperties}
1101: 
1102: In this section, we characterize the properties of $T_{i}$ that
1103: give us desirable properties in the aggregate waveform.  From
1104: (\ref{eq:timesync-aggwaveform}), the aggregate waveform seen at
1105: each node $j$ in the network has the form
1106: \begin{eqnarray} \label{eq:waveformGeneralForm}
1107: A_N(t) = \frac 1 N \sum_{i=1}^N A_{max}K_i p(t-\tau_0-T_{i})
1108: \end{eqnarray}
1109: We have dropped the $j$ and $c_{1}$ for notational simplicity
1110: since in this section we deal solely with the received waveform at
1111: a node $j$ in the time scale of $c_{1}$. As we let the number of
1112: nodes grow unbounded ($N\to\infty$), the properties of this limit
1113: waveform can be characterized by Theorem~\ref{theorem:main}. These
1114: properties will be essential for asymptotic cooperative time
1115: synchronization. As a note, in Theorem~\ref{theorem:main} we
1116: present the case for Gaussian distributed $T_{i}$ but similar
1117: results hold for arbitrary zero-mean, symmetrically distributed
1118: $T_{i}$ with finite variance.
1119: 
1120: \begin{theorem}
1121: \label{theorem:main} Let $p(t)$ be as defined in
1122: equation~(\ref{eq:poft}) and $T_i\sim {\mathcal N}(0,
1123: \frac{\bar{\sigma}^{2}}{\alpha_{i}^{2}})$ with
1124: $\bar{\sigma}^{2}>0$ a constant and
1125: $\frac{\bar{\sigma}^2}{\alpha_{i}^{2}} < B <\infty$ for all $i$,
1126: $B$ a constant. Also, let $K_i$ be defined as in
1127: Section~\ref{sec:prop-model} and be independent from $T_{i}$ for
1128: all $i$. Then, $\lim_{N\to\infty}A_{N}(t) = A_{\infty}(t)$ has the
1129: properties
1130: \begin{itemize}
1131: \item $A_\infty(\tau_0) = 0$, \item $A_\infty(t)>0$ for $t\in
1132: (\tau_{0}-\tau,\tau_{0})$, and $A_\infty(t)<0$ for $t\in
1133: (\tau_{0},\tau_{0}+\tau)$ for some $\tau < \tau_{nz}$. \item
1134: $A_{\infty}(t)$ is odd around $t=\tau_{0}$, i.e.
1135: $A_{\infty}(\tau_{0}+\xi) = -A_{\infty}(\tau_{0}-\xi)$ for
1136: $\xi\geq 0$ \item $A_\infty(t)$ is continuous. \qquad
1137: $\bigtriangleup$
1138: \end{itemize}
1139: \end{theorem}
1140: The properties outlined in Theorem~\ref{theorem:main} will be key
1141: to the synchronization mechanism we describe. The specific value
1142: of $\bar{\sigma}^{2}$ will be determined by our choice of the
1143: pulse-connection function. Before we prove
1144: Theorem~\ref{theorem:main} in Section~\ref{sec:theoremProof} we
1145: develop and motivate a few important related lemmas.
1146: 
1147: \subsubsection{Polarity and Continuity of $A_\infty(t)$}
1148: 
1149: At time $t = \tau_1 \ne \tau_0$, we have that
1150: \[ A_N(\tau_1) \;\; = \;\; \sum_{i=1}^N \frac{A_{max}K_i}{N} p(\tau_1-\tau_0-T_{i})
1151:    \;\; = \;\; \sum_{i=1}^N \frac 1 N \bar{M}_i(\tau_1),
1152: \]
1153: where $\bar{M}_i(\tau_1) \stackrel{\Delta}{=} A_{max}K_i
1154: p(\tau_1-\tau_0-T_{i})$. We have the mean of
1155: $\bar{M}_{i}(\tau_{1})$ being
1156: \begin{equation} \label{eqn:MbarMean}
1157: E(\bar{M}_{i}(\tau_{1})) = A_{max}E(K_{i})\int
1158: p(\tau_1-\tau_0-\psi) f_{T_{i}}(\psi) d\psi,
1159: \end{equation}
1160: where $f_{T_{i}}(\psi)$ is the Gaussian pdf
1161: \begin{displaymath}
1162: f_{T_{i}}(\psi) =
1163: \frac{1}{\frac{\bar{\sigma}}{\alpha_{i}}\sqrt{2\pi}}\textrm{exp}
1164: \bigg\{-\frac{(\psi)^2}{2\frac{\bar{\sigma}^{2}}{\alpha_{i}^2}}\bigg\}.
1165: \end{displaymath}
1166: It is clear that the $\bar{M}_{i}(\tau_{1})$'s, for different
1167: $i$'s, do not have the same mean and do not have the same variance
1168: since the two quantities depend on the $\alpha_{i}$ value.  Since
1169: the $\alpha_{i}$'s are characterized by $f_{\alpha}(s)$ (defined
1170: in Section~\ref{sec:systemParameters}), we write the Gaussian
1171: distribution for $T$ as
1172: \begin{displaymath}
1173: f_{T}(\psi,s) =
1174: \frac{1}{\frac{\bar{\sigma}}{s}\sqrt{2\pi}}\textrm{exp}
1175: \bigg\{-\frac{(\psi)^2}{2\frac{\bar{\sigma}^{2}}{s^2}}\bigg\}.
1176: \end{displaymath}
1177: and $\bar{M}_{i}(\tau_{1})$ is in fact a function of $s$ as well,
1178: denoted $\bar{M}_{i}(\tau_{1},s)$. Using $f_{T}(\psi,s)$ and
1179: $\bar{M}_{i}(\tau_{1},s)$, the notation makes it clear that we can
1180: average over the $\alpha_{i}$'s that are characterized by
1181: $f_{\alpha}(s)$. We use the results of
1182: Lemmas~\ref{lemma:polarity_positive} and
1183: \ref{lemma:polarity_negative} to prove the polarity result for
1184: $A_{\infty}(t)$ in Section~\ref{sec:theoremProof}.
1185: 
1186: \begin{lemma} \label{lemma:polarity_positive}
1187: Given the sequence of independent random variables
1188: $\bar{M}_{i}(\tau_{1})$ with $\tau_{1}<\tau_{0}$,
1189: $E(\bar{M}_{i}(\tau_{1})) = \mu_{i}$, and
1190: $\textrm{Var}(\bar{M}_{i}(\tau_{1})) = \sigma_{i}^{2}$. Then, for
1191: all $i$,
1192: \begin{equation}   \label{eqn:cond3a}
1193: \gamma_{2}>\mu_{i} > \gamma_{1} > 0
1194: \end{equation}
1195: \begin{equation} \label{eqn:cond3b}
1196: \sigma_{i}^{2}<\gamma_{3}<\infty,
1197: \end{equation}
1198: for some constants $\gamma_{1}$, $\gamma_{2}$, and $\gamma_{3}$
1199: and
1200: \begin{displaymath}
1201: \lim_{N\to\infty} \frac{1}{N} \sum_{i=1}^{N} \bar{M}_{i}(\tau_{1}) = \eta(\tau_{1}) > 0
1202: \end{displaymath}
1203: almost surely, where
1204: \begin{eqnarray*}
1205: \eta(\tau_{1}) &=& \int_{\alpha_{low}}^{\alpha_{up}}
1206: E(\bar{M}_{i}(\tau_{1},s)) f_{\alpha}(s) ds  \\ &=&
1207: A_{max}E(K_{i})\int_{\alpha_{low}}^{\alpha_{up}}
1208: \int_{-\infty}^{\infty} p(\tau_1-\tau_0-\psi) f_{T}(\psi,s) d\psi
1209: f_{\alpha}(s) ds. \qquad \bigtriangleup
1210: \end{eqnarray*}
1211: \medskip
1212: \end{lemma}
1213: 
1214: \begin{lemma} \label{lemma:polarity_negative}
1215: Given the sequence of independent random variables
1216: $\bar{M}_{i}(\tau_{1})$ with $\tau_{1}>\tau_{0}$,
1217: $E(\bar{M}_{i}(\tau_{1})) = \mu_{i}$, and
1218: $\textrm{Var}(\bar{M}_{i}(\tau_{1})) = \sigma_{i}^{2}$.  Then, for
1219: all $i$,
1220: \begin{equation}   \label{eqn:cond4a}
1221: \gamma_{2}<\mu_{i} < \gamma_{1} < 0
1222: \end{equation}
1223: \begin{equation} \label{eqn:cond4b}
1224: \sigma_{i}^{2}<\gamma_{3}<\infty,
1225: \end{equation}
1226: for some constants $\gamma_{1}$, $\gamma_{2}$, and $\gamma_{3}$
1227: and
1228: \begin{displaymath}
1229: \lim_{N\to\infty} \frac{1}{N} \sum_{i=1}^{N} \bar{M}_{i}(\tau_{1}) = \eta(\tau_{1}) < 0
1230: \end{displaymath}
1231: almost surely,  where
1232: \begin{displaymath}
1233: \eta(\tau_{1}) = \int_{\alpha_{low}}^{\alpha_{up}}
1234: E(\bar{M}_{i}(\tau_{1},s)) f_{\alpha}(s) ds. \qquad \bigtriangleup
1235: \end{displaymath}
1236: \medskip
1237: \end{lemma}
1238: 
1239: The results of Lemma~\ref{lemma:polarity_positive} and
1240: Lemma~\ref{lemma:polarity_negative} are intuitive since given that
1241: $p(t)$ is odd and the Gaussian noise distribution is symmetric, it
1242: makes sense for $A_{\infty}(t)$ to have properties similar to an
1243: odd waveform. Since the proofs of the two lemmas are very similar,
1244: we only prove Lemma~\ref{lemma:polarity_positive}. The proof can
1245: be found in the appendix.
1246: 
1247: Knowing only the polarity of $A_{\infty}(t)$ is not entirely
1248: satisfying since we would also expect that the limiting waveform
1249: be continuous. The proof of Lemma~\ref{lemma:continuity1} is once
1250: again left for the appendix.
1251: 
1252: \begin{lemma}
1253: \label{lemma:continuity1}
1254: Using $p(t)$ in (\ref{eq:poft}),
1255: \[ A_\infty(t) \;\; = \;\; \lim_{N\to\infty}\frac{1}{N}\sum_{i=1}^{N} A_{max}K_i
1256: p(t-\tau_0-T_i) \;\; = \;\; \lim_{N\to\infty}\frac{1}{N}\sum_{i=1}^{N}
1257: \bar{M}_{i}(t) \;\; = \;\; \eta(t)
1258: \]
1259: is a continuous function of $t$, where
1260: \begin{eqnarray*}
1261: \eta(t) &=& \int_{\alpha_{low}}^{\alpha_{up}} E(\bar{M}_{i}(t,s))
1262: f_{\alpha}(s) ds \\
1263: &=& A_{max}E(K_{i})\int_{\alpha_{low}}^{\alpha_{up}}
1264: \int_{-\infty}^{\infty} p(t-\tau_0-\psi) f_{T}(\psi,s) d\psi
1265: f_{\alpha}(s) ds.  \qquad \bigtriangleup
1266: \end{eqnarray*}
1267: \medskip
1268: \end{lemma}
1269: 
1270: \subsubsection{Proof of Theorem~\ref{theorem:main}}
1271: \label{sec:theoremProof}
1272: 
1273: We can proceed in a
1274: straightforward manner to show that $A_\infty(\tau_0)=0$.  For
1275: $t=\tau_{o}$,
1276: \begin{eqnarray*}
1277: A_N(\tau_0) \;\; = \;\; \sum_{i=1}^N
1278: \frac{A_{max}K_i}{N}p(\tau_0-\tau_0-T_{i}) \;\; = \;\; \frac 1 N
1279: \sum_{i=1}^N A_{max}K_i p(-T_{i})
1280:   \;\; = \;\;  \frac 1 N \sum_{i=1}^N M_i,
1281: \end{eqnarray*}
1282: where $M_i \triangleq -A_{max}K_ip(T_i)$.
1283: 
1284: Since our goal is to apply some form of the strong law of large
1285: numbers, we first examine the mean of $M_i$.  We have that
1286: $E(M_i)$ $=$ $-A_{max}E(K_i)E(p(T_i))$.  Furthermore,
1287: \[
1288: E(p(T_i)) = \int_{-\infty}^\infty p(\psi)f_{T_i}(\psi)d\psi = 0,
1289: \]
1290: since $p(\psi)$ is odd and $f_{T_{i}}(\psi)$ is
1291: even because it is zero-mean Gaussian.  Thus, $E(M_{i})=0$.
1292: 
1293: We next consider the variance of $M_i$:
1294: \begin{eqnarray*}
1295: \textrm{Var}(M_i) & = & E(M_i^{2})-E^2(M_i)
1296:   =   A_{max}^2 E(K_i^2p^2(T_i)) \\
1297: & = & A_{max}^2 E(K_i^2)E(p^2(T_i))
1298:   <   A_{max}^2
1299:   <   \infty,
1300: \end{eqnarray*}
1301: where we have used the fact that $E(K_{i}^{2})\leq 1$ and
1302: $|p(t)|\leq 1$.
1303: 
1304: From the preceding discussion we see that the $M_i$'s are a sequence of
1305: zero mean, finite (but possibly different) variance random variables.
1306: From Stark and Woods~\cite{stark-woods}, we know that if
1307: $\sum_{i=1}^{\infty} \textrm{Var}(M_i)/i^2 < \infty$,
1308: then we have strong convergence of the $M_i$'s:
1309: \[
1310:    \frac 1 N \sum_{i=1}^N M_i \to E(M_i),
1311: \]
1312: with probability-1 as $N\to\infty$.  But it is easy to see that
1313: \[
1314: \sum_{i=1}^\infty \frac{\textrm{Var}(M_i)}{i^2} <
1315: \sum_{i=1}^\infty \frac{A_{max}^2}{i^2} = A_{max}^{2}
1316: \frac{\pi^{2}}{6} < \infty,
1317: \]
1318: so the condition is satisfied.  As a result,
1319: \[
1320: A_N(\tau_0) = \frac 1 N \sum_{i=1}^N M_i \to 0,
1321: \]
1322: as $N \to \infty$.
1323: 
1324: We have that $A_{\infty}(t)$ is continuous from
1325: Lemma~\ref{lemma:continuity1}.  Thus, next we need to show that
1326: $A_\infty(t)>0$ for $t\in (\tau_{0}-\tau,\tau_{0})$, and
1327: $A_\infty(t)<0$ for $t\in (\tau_{0},\tau_{0}+\tau)$ for some
1328: $\tau<\tau_{nz}$.  We show the case for
1329: $t=\tau_{1}\in(\tau_{0}-\tau,\tau_{0})$ by simply applying
1330: Lemma~\ref{lemma:polarity_positive}.  Since
1331: Lemma~\ref{lemma:polarity_positive} holds for all
1332: $\tau_{1}<\tau_{0}$, there clearly exists a $\tau$ such
1333: $A_{\infty}(t)>0$ for $t\in (\tau_{0}-\tau,\tau_{0})$.  The case
1334: for $t\in(\tau_{0},\tau_{0}+\tau)$ comes similarly from
1335: Lemma~\ref{lemma:polarity_negative}.
1336: 
1337: Lastly, it remains to be shown that $A_{\infty}(t)$ is odd around
1338: $t=\tau_{0}$.  This, however, is evident from the form of $\eta(t)$.
1339: Since $f_{T}(\psi,s)$ is even in $\psi$ about $0$ and $p(\psi)$
1340: is odd about $0$, it is clear that
1341: $\int_{\infty}^{\infty} p(t-\tau_0-\psi) f_{T}(\psi,s) d\psi$
1342: as a function of $t$ is odd about $\tau_{0}$.  Thus, $\eta(t)$ is odd around
1343: $\tau_{0}$.  This then completes the proof
1344: for Theorem~\ref{theorem:main}. \qquad $\bigtriangleup$
1345: 
1346: 
1347: \section{Asymptotic Time Synchronization}
1348: \label{sec:timeSynchronization}
1349: 
1350: \subsection{The Use of Estimators in Time Synchronization}
1351: \label{assump-theorems}
1352: 
1353: In this work we want to show that as we let $N\to\infty$ then we
1354: can recover deterministic parameters that allow for time
1355: synchronization.  Such a result would provide rigorous theoretical
1356: support for a new trade-off between network density and
1357: synchronization performance.  To simplify the study, we focus on
1358: the steady-state time synchronization properties of asymptotically
1359: dense networks. In particular, we develop a cooperative technique
1360: that constructs a sequence of equispaced zero-crossings seen by
1361: all nodes which allows the network to maintain time
1362: synchronization indefinitely given that the nodes start with a
1363: collection of equispaced zero-crossings. Starting with a few
1364: equispaced zero-crossings allows us to avoid the complexities of
1365: starting up the synchronization process but still allows us to
1366: show that spatial averaging can be used to average out timing
1367: errors.  If we are able to maintain indefinitely a sequence of
1368: equispaced zero-crossing using cooperative time synchronization,
1369: then it means that spatial averaging can average out all
1370: uncertainties in the system as we let node density grow unbounded.
1371: This recovery of deterministic parameters is our desired result.
1372: Here, we overview the estimators needed for cooperative time
1373: synchronization.
1374: 
1375: Let $t_{n,i}^{c_{k}}$ be the time, with respect to clock $c_{k}$,
1376: that the $i$th node sees its $n$th pulse. In dealing with the
1377: steady-state properties, we start by assuming that each node $i$
1378: in the network has observed a sequence of $m$ pulse arrival times,
1379: $t_{n-1,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}}$, that occur at integer
1380: values of $t$, $m$ is an integer. Recall that
1381: $t_{n-1,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}}$ is defined as a set of
1382: $m$ pulse arrival times in the time scale of $c_{i}$. Therefore,
1383: even though $t_{n-1,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}}$ occur at
1384: integer values of $t$ (the time scale of $c_{1}$), these values
1385: are not necessarily integers since they are in the time scale of
1386: $c_{i}$. Note also that in our model the pulse arrival time is a
1387: zero-crossing location. Using these $m$ pulse arrival times, each
1388: node $i$ has two distinct, yet closely related tasks. The first
1389: task is time synchronization.  To achieve time synchronization,
1390: node $i$ wants to use these $m$ pulse arrival times to make an
1391: estimate of when the next zero-crossing will occur.  If it can
1392: estimate this next zero-crossing time, then it can effectively
1393: estimate the next integer value of $t$. This estimator can then be
1394: extended to estimate arbitrary times in the future which gives
1395: node $i$ the ability to synchronize to node $1$. The second task
1396: is that node $i$ needs to transmit a pulse so that the sum of all
1397: pulses from the $N$ nodes in the network will create an aggregate
1398: waveform that, in the limit as $N\to\infty$, will give a
1399: zero-crossing at the next integer value of $t$.  This second task
1400: is very significant because if the aggregate waveform gives the
1401: exact location of the next integer value of $t$, then each node
1402: $i$ in the network can use this new zero-crossing along with
1403: $t_{n-1,i}^{c_{i}},\dots,t_{n-m+1,i}^{c_{i}}$ to form a set of $m$
1404: zero-crossing locations.  This new set can then be used to predict
1405: the next zero-crossing location as well as node $i$'s next pulse
1406: transmission time. Recall that determining the pulse transmission
1407: time is the job of the pulse-connection function
1408: $X_{n,i}^{c_{i}}$. With such a setup, synchronization would be
1409: maintained indefinitely.  The zero-crossings that always occur at
1410: integer values of $t$ would provide node $i$ a sequence of
1411: synchronization events and also illustrate how cooperation is
1412: averaging out all random errors.
1413: 
1414: The waveform properties detailed in Theorem~\ref{theorem:main}
1415: play a central role in accomplishing the nodes' task of cooperatively
1416: generating an aggregate waveform with a zero-crossing at the next
1417: integer value of $t$.  From~(\ref{eq:waveformGeneralForm}), if the
1418: arrival time of any pulse at a node $j$ is a random variable of the
1419: form $\tau_0+T_{i}$, where $\tau_{0}$ is the next integer value of
1420: $t$ and $T_{i}$ is zero-mean Gaussian (or in general any symmetric
1421: random variable with zero-mean and finite variance), then
1422: Theorem~\ref{theorem:main} tells us that the aggregate waveform
1423: will make a zero-crossing at the next integer value of $t$.  This
1424: idea is illustrated in Fig.~\ref{fig:example}.
1425: 
1426: \begin{figure}[!h]
1427: \centerline{\psfig{file=pulse.eps,height=5cm}
1428:             \psfig{file=rinfinity.eps,height=5cm}}
1429: \caption[An illustration of the main idea of
1430: Lemma~\ref{theorem1}.]{\small Theorem~\ref{theorem:main} is key in
1431: explaining the intuition first illustrated in
1432: Fig.~\ref{fig:why-sync-holds}.  The pulse $p(t)$ is shown on the
1433: left figure, with
1434:   $\tau_0=1$ and $A_{max}=1$.  On the right we have a realization of $A_N(t)$ ($N=400$),
1435:   and we assume that $K_{j,i}=1$  (no path loss) and $T_{i}\sim {\mathcal N}(0,0.01)$ for all $i$.  As expected from
1436:   Theorem~\ref{theorem:main}, we notice that
1437:   the zero-crossing of the simulated waveform is almost exactly at $t=1$.} \label{fig:example}
1438: \end{figure}
1439: 
1440: Thus, for achieving time synchronization in an asymptotically
1441: dense network we need to address two issues.  First, we need to
1442: develop an estimator for the next integer value of $t$ given a
1443: sequence of $m$ pulse arrival times that occur at integer values
1444: of $t$. We will call this the {\em time synchronization estimator}
1445: and let us write $V_{n,i}^{c_{i}}$ as the time synchronization
1446: estimator that determines the time, in the time scale of $c_{i}$,
1447: when node $i$ predicts it will see its $n$th zero-crossing. Two,
1448: we need to develop the pulse-connection function $X_{n,i}^{c_{i}}$
1449: such that node $i$'s transmitted pulse will arrive at a node $j$
1450: with the random properties described in
1451: Theorem~\ref{theorem:main}.
1452: 
1453: \subsection{Time Synchronization Estimator Performance Measure} \label{sec:opt-cond}
1454: 
1455: Here we establish the conditions for estimating the next pulse
1456: arrival time, or equivalently the next integer value of $t$, given
1457: $m$ pulse arrival times. These conditions apply most directly to
1458: the time synchronization estimator $V_{n,i}^{c_{i}}$ since we want
1459: to synchronize in some desired manner.  The problem of
1460: synchronization is the challenge of having the $i$th node
1461: accurately and precisely predict when the next integer value of
1462: $t$ will occur. In our setup, the reception of a pulse by node $i$
1463: tells it of such an event.
1464: 
1465: Let us explicitly model the time at an integer value of $t$ in
1466: terms of the clock of node $i$.  Assume $\tau_{0}$ is an integer
1467: value of $t$ and at this time, node $i$ will observe its $n$th
1468: pulse.  Thus, from (\ref{eq:clock}) we have that
1469: \begin{equation} \label{eq:state-eqns}
1470: t_{n,i}^{c_{i}} =
1471: \alpha_{i}(\tau_{0}-\bar{\Delta}_{i})+\Psi_{i}(\tau_{0}).
1472: \end{equation}
1473: The equation makes use of the clock model of node $i$
1474: (\ref{eq:clock}) to tell us the time at clock $c_{i}$ when node
1475: $1$ is at $\tau_{0}$, where $\tau_{0}$ is an integer in the time
1476: scale of $c_{1}$. We are also starting with the assumption that
1477: the zero-crossing that occurs at an integer value of $t$ is
1478: observed by node $i$ at this time.
1479: 
1480: From (\ref{eq:state-eqns}) we see that the pulse receive time at
1481: node $i$, $t_{n,i}^{c_{i}}$, is a Gaussian random variable whose
1482: mean is parameterized by the unknown vector $\vartheta =
1483: [\alpha_i, \tau_{0}, \bar{\Delta}_{i}]$. Thus, to achieve
1484: synchronization node $i$ will try to estimate the random variable
1485: $t_{n,i}^{c_{i}}$ using a series of $m$ pulse receive times as
1486: observations (recall that $m$ is known).  Note that the
1487: observations are also random variables with distributions
1488: parameterized by $\vartheta$. We want the time synchronization
1489: estimator of node $i$ to make an estimate of $t_{n,i}^{c_{i}}$,
1490: denoted $\hat{t}_{n,i}^{c_{i}}(t_{n-1,i}^{c_{i}},
1491: t_{n-2,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}})$ which is a function of
1492: past observations $t_{n-1,i}^{c_{i}},
1493: t_{n-2,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}}$, that meets the
1494: following criteria:
1495: \begin{equation}
1496: E_{\vartheta}\big[\hat{t}_{n,i}^{c_{i}}(t_{n-1,i}^{c_{i}},
1497: t_{n-2,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}})\big] =
1498: E_{\vartheta}(t_{n,i}^{c_{i}}) \label{eq:opt1}
1499: \end{equation}
1500: \vspace{-5mm}
1501: \begin{equation}
1502: \textrm{argmin}_{\hat{t}_{n,i}^{c_{i}}}
1503: E_{\vartheta}\big[(\hat{t}_{n,i}^{c_{i}}(t_{n-1,i}^{c_{i}},
1504: t_{n-2,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}})-t_{n,i}^{c_{i}})^{2}\big]
1505: \label{eq:opt2}
1506: \end{equation}
1507: for all $\vartheta$. The subscript $\vartheta$ means that the
1508: expectation is taken over the distributions involved given any
1509: possible $\vartheta$.  The first condition comes from the fact
1510: that given a finite $m$, it is reasonable to want the expected
1511: value of the estimate to be the expected value of the random
1512: variable being estimated for all $\vartheta$. As in the
1513: justification for unbiased estimators, this condition eliminates
1514: unreasonable estimators so that the chosen estimator will perform
1515: well, on average, for all values of $\vartheta$~\cite{Poor:94}.
1516: The second condition is the result of seeking to minimize the mean
1517: squared error between the estimate and the random variable being
1518: estimated for all $\vartheta$.
1519: 
1520: \subsection{Time Synchronization Estimator} \label{sec:timeSyncEstimator}
1521: 
1522: For the time synchronization estimator, node $i$ will seek to
1523: estimate $t_{n,i}^{c_{i}}$ given
1524: $t_{n-1,i}^{c_{i}},\dots,t_{n-m,i}^{c_{i}}$. From
1525: (\ref{eq:state-eqns}), we see that ${\mathbf
1526: T}=[t_{n-m,i}^{c_{i}},\dots,t_{n-1,i}^{c_{i}}]^{T}$ is a jointly
1527: Gaussian random vector parameterized by $\vartheta$. Recall that
1528: we  assume $\Psi_{i}(t)$ is a zero mean Gaussian process with
1529: independent and identically distributed samples $\Psi_{i}(t)\sim
1530: {\mathcal N}(0,\sigma^{2})$, for any $t$. Also, since we're
1531: assuming that the zero-crossings at node $i$ occur at consecutive
1532: integer values of $t$, the random variable $t_{n-m,i}^{c_{i}}$ is
1533: Gaussian with $t_{n-m,i}^{c_{i}}\sim {\mathcal
1534: N}(\alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i}), \sigma^{2})$ for some
1535: $\vartheta = [\alpha_i, \tau_{0}-m, \bar{\Delta}_{i}]$.  We also
1536: notice that
1537: \begin{displaymath}
1538: E_{\vartheta}(t_{n-m+1,i}^{c_{i}})=\alpha_{i}(\tau_{0}-m
1539: +1-\bar{\Delta}_{i})=\alpha_{i}(\tau_{0}-m-
1540: \bar{\Delta}_{i})+\alpha_{i}.
1541: \end{displaymath}
1542: Since each noise sample is independent, we see that the
1543: distribution of $\mathbf{T}$ parameterized by $\vartheta$ can be
1544: written as ${\mathbf T} \sim {\mathcal N}({\mathbf M},\Sigma)$
1545: where
1546: \begin{displaymath}
1547: {\mathbf M} = \left[ \begin{array}{c}
1548: \alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i})\\
1549: \alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i})+\alpha_{i}\\
1550: \alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i})+2\alpha_{i}\\
1551: \vdots\\
1552: \alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i})+(m-1)\alpha_{i}
1553: \end{array} \right]
1554: \end{displaymath}
1555: and $\Sigma = \sigma^{2}{\mathbf I}$.
1556: 
1557: As a result, for any $m$ consecutive observations, we can simplify
1558: notation by using the model
1559: \begin{equation} \label{eq:simple-obs}
1560: {\mathbf Y} = {\mathbf H}{\mathbf \theta} + {\mathbf W},
1561: \end{equation}
1562: where ${\mathbf Y} = [Y_{1} \quad Y_{2} \dots Y_{m}]^{T} =
1563: [t_{n-m,i}^{c_{i}} \quad t_{n-m+1,i}^{c_{i}} \dots
1564: t_{n-1,i}^{c_{i}}]^{T}$ and
1565: \begin{displaymath}
1566: {\mathbf \theta} = \left[ \begin{array}{c}
1567: \theta_{1}\\
1568: \theta_{2}
1569: \end{array} \right] =
1570: \left[ \begin{array}{c}
1571: \alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i})\\
1572: \alpha_{i}
1573: \end{array} \right]
1574: \end{displaymath}
1575: with
1576: \begin{displaymath}
1577: {\mathbf H} = \left[ \begin{array}{ccccc}
1578: 1 & 1 & 1 & \ldots & 1\\
1579: 0 & 1 & 2 & \ldots & m-1
1580: \end{array} \right]^T
1581: \end{displaymath}
1582: and ${\mathbf W} = [W_{1}\dots W_{m}]^{T}$. Since $\Psi_{i}(t)$ is
1583: a Gaussian noise process, ${\mathbf W} \sim {\mathcal
1584: N}(0,\Sigma)$ with $\Sigma = \sigma^{2}{\mathbf I}$.
1585: 
1586: Using the simplified notation in (\ref{eq:simple-obs}), we want to
1587: estimate $Y_{m+1}$, where $Y_{m+1}$ is jointly distributed with
1588: ${\mathbf Y}$ as
1589: \begin{displaymath}
1590: \left[ \begin{array}{c}
1591: {\mathbf Y}\\
1592: Y_{m+1}
1593: \end{array} \right] \sim {\mathcal N}(
1594: \left[ \begin{array}{c}
1595: {\mathbf M}\\
1596: \theta_{1}+m\theta_{2}
1597: \end{array} \right],
1598: \left[ \begin{array}{cc}
1599: \Sigma & 0\\
1600: 0 & \sigma^{2}
1601: \end{array} \right]).
1602: \end{displaymath}
1603: Using this notation, we can rewrite the synchronization criteria
1604: as:
1605: \begin{equation} \label{eq:opt1-simple}
1606: E_{\theta}\big[\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots,
1607: Y_{m})\big]=E_{\theta}(Y_{m+1})
1608: \end{equation}
1609: \vspace{-5mm}
1610: \begin{equation} \label{eq:opt2-simple}
1611: \textrm{argmin}_{\hat{Y}_{m+1}}
1612: E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m}) -Y_{m+1}
1613: )^{2}\big],
1614: \end{equation}
1615: where $\hat{Y}_{m+1}$ is the estimator for $Y_{m+1}$.
1616: 
1617: Condition (\ref{eq:opt1-simple}) implies that our estimate must be
1618: unbiased.  Condition (\ref{eq:opt2-simple}) is equivalent to
1619: \begin{displaymath}
1620: \textrm{argmin}_{\hat{Y}_{m+1}}
1621: E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m})
1622: -(\theta_{1}+m\theta_{2}) )^{2}\big].
1623: \end{displaymath}
1624: To see this equivalence, note that
1625: \begin{eqnarray}
1626: \lefteqn{E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m})-Y_{m+1} )^{2}\big]} \nonumber \\
1627: & = & E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m})-(\theta_{1}+m\theta_{2})-W_{m+1} )^{2}\big] \nonumber \\
1628: & = & E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m})-
1629: (\theta_{1}+m\theta_{2}) )^{2}\big]+E\big[ W_{m+1}^{2}\big],
1630: \end{eqnarray}
1631: where the last inequality follows from the independence of
1632: $W_{m+1}$ from all other noise samples. Since the distribution of
1633: of $W_{m+1}$ is independent of $\theta$,
1634: \begin{eqnarray}
1635: \lefteqn{\textrm{argmin}_{\hat{Y}_{m+1}} E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m})-Y_{m+1})^{2}\big]} \nonumber \\
1636: &=& \textrm{argmin}_{\hat{Y}_{m+1}}
1637: E_{\theta}\big[(\hat{Y}_{m+1}(Y_{1}, Y_{2}, \dots, Y_{m})-
1638: (\theta_{1}+m\theta_{2}) )^{2}\big] \nonumber.
1639: \end{eqnarray}
1640: With these two conditions, from~\cite{Poor:94} we see that the
1641: desired estimate for $Y_{m+1}$ will be the uniformly minimum
1642: variance unbiased (UMVU) estimator for
1643: $E_{\theta}(Y_{m+1})=\theta_{1}+m\theta_{2}$.
1644: 
1645: Using the above linear model, from~\cite{Kay:93} we know the
1646: maximum likelihood (ML) estimate of $\theta$, $\hat{\theta}_{ML}$,
1647: is given by
1648: \begin{equation} \label{eq:thetaHat}
1649: \hat{\theta}_{ML}=({\mathbf H}^{T}\Sigma^{-1} {\mathbf
1650: H})^{-1}{\mathbf H}^{T}\Sigma^{-1}{\mathbf Y}=
1651: (\mathbf{H}^{T}\mathbf{H})^{-1}\mathbf{H}^{T}{\mathbf Y}.
1652: \end{equation}
1653: This estimate achieves the Cramer Rao lower bound, hence is
1654: efficient.  The Fisher information matrix is
1655: $I(\theta)=\frac{{\mathbf H}^{T}{\mathbf H}}{\sigma^{2}}$ and
1656: $\hat{\theta}_{ML} \sim {\mathcal N}(\theta, \sigma^{2}({\mathbf
1657: H}^{T}{\mathbf H})^{-1})$. This means that $\hat{\theta}_{ML}$ is
1658: UMVU.
1659: 
1660: Again from~\cite{Kay:93}, the invariance of the ML estimate tells
1661: us that the ML estimate for
1662: $\phi=g(\theta)=\theta_{1}+m\theta_{2}$ is
1663: $\hat{\phi}_{ML}=\hat{\theta_{1}}_{ML}+m\hat{\theta_{2}}_{ML}$.
1664: First, it is clear that $\hat{\phi}_{ML} = {\mathbf
1665: C}\hat{\theta}_{ML}$, where ${\mathbf C}=[1\quad  m]$. As a
1666: result, we first see that $E_{\theta}(\hat{\phi}_{ML})={\mathbf
1667: C}E_{\theta}(\hat{\theta}_{ML})=\theta_{1}+m\theta_{2}$ so
1668: $\hat{\phi}_{ML}$ is unbiased. Next, to see that $\hat{\phi}_{ML}$
1669: is also minimum variance we compare its variance to the lower
1670: bound.
1671: \begin{displaymath}
1672: \textrm{Var}_{\theta}(\hat{\phi}_{ML})={\mathbf
1673: C}\sigma^{2}({\mathbf H}^{T}{\mathbf H})^{-1}{\mathbf C}^{T} =
1674: \frac{2\sigma^{2}(2m+1)}{m(m-1)}.
1675: \end{displaymath}
1676: The extension of the Cramer Rao lower bound in~\cite{Kay:93} to a
1677: function of parameters tells us that
1678: \begin{displaymath}
1679: E_{\theta}(\|\hat{g}-g(\theta)\|^{2})\geq {\mathbf
1680: G}(\theta){\mathbf I}^{-1}(\theta){\mathbf G}^{T}(\theta)
1681: \end{displaymath}
1682: with ${\mathbf G}(\theta) = (\nabla_{\theta}g(\theta))^{T}$. In
1683: this case, ${\mathbf G}(\theta)=[1 \quad m]$ so the lower bound to
1684: the mean squared error is
1685: \begin{displaymath}
1686: {\mathbf G}(\theta){\mathbf I}^{-1}(\theta){\mathbf G}^{T}(\theta)
1687: = \frac{2\sigma^{2}(2m+1)}{m(m-1)}.
1688: \end{displaymath}
1689: As a result, we see that $\hat{\phi}_{ML}$ is UMVU.  Since
1690: $\hat{\phi}_{ML}$ is the desired estimate of where the next pulse
1691: arrival time will be, it is the time synchronization estimator.
1692: Thus,
1693: \begin{equation} \label{eq:timesync-estimator}
1694: V_{n,i}^{c_{i}}({\mathbf Y}) = {\mathbf
1695: C}(\mathbf{H}^{T}\mathbf{H})^{-1}\mathbf{H}^{T}{\mathbf Y}.
1696: \end{equation}
1697: Note that
1698: \begin{equation} \label{eq:timesync-estimator-distribution}
1699: V_{n,i}^{c_{i}}({\mathbf Y})=\hat{\phi}_{ML} \sim {\mathcal
1700: N}\Big(\phi,\frac{2\sigma^{2}(2m+1)}{m(m-1)}\Big).
1701: \end{equation}
1702: has a variance that goes to zero as $m\to\infty$.
1703: 
1704: \subsection{Time Synchronization with No Propagation Delay}
1705: \label{sec:one-hop}
1706: 
1707: We now need to develop the pulse-connection function so that the
1708: conditions for $T_{i}$ in Theorem~\ref{theorem:main} are
1709: satisfied. Recall we are developing the synchronization technique
1710: under the assumption of no propagation delay, i.e. $\delta(d)=0$.
1711: Given a sequence of $m$ pulse arrival times, the time
1712: synchronization estimator $V_{n,i}^{c_{i}}$ given in
1713: (\ref{eq:timesync-estimator}) gives each node the ability to
1714: predict the next integer value of $t$.  What remains to be
1715: considered is the second part of the synchronization process:
1716: developing a pulse-connection function $X_{n,i}^{c_{i}}$ such that
1717: the aggregate waveform seen by a node $j$ will have the properties
1718: described in Theorem~\ref{theorem:main}.
1719: 
1720: Let us first consider the distribution of $V_{n,i}^{c_{i}}$.  From
1721: (\ref{eq:timesync-estimator-distribution}), we have that
1722: \begin{displaymath}
1723: V_{n,i}^{c_{i}}({\mathbf Y}) \sim {\mathcal N}
1724: \bigg(\alpha_{i}(\tau_{0}-m-\bar{\Delta}_{i})+m\alpha_{i},\frac{2\sigma^{2}(2m+1)}{m(m-1)}\bigg).
1725: \end{displaymath}
1726: Using (\ref{eq:clock}), we can translate $V_{n,i}^{c_{i}}({\mathbf
1727: Y})$ into the time scale of $c_{1}$ as
1728: \begin{displaymath}
1729: V_{n,i}^{c_{i}}({\mathbf Y}) = \alpha_{i}(V_{n,i}^{c_{1}}({\mathbf
1730: Y})-\bar{\Delta}_{i}) + \Psi_{i}
1731: \end{displaymath}
1732: which gives
1733: \begin{displaymath}
1734: V_{n,i}^{c_{1}}({\mathbf Y}) = \frac{(V_{n,i}^{c_{i}}({\mathbf Y})
1735: - \Psi_{i})}{\alpha_{i}} + \bar{\Delta}_{i}.
1736: \end{displaymath}
1737: This means that
1738: \begin{equation} \label{eq:compToNoSimult}
1739: V_{n,i}^{c_{1}}({\mathbf Y}) \sim {\mathcal
1740: N}\bigg(\tau_{0},\frac{\sigma^{2}}{\alpha_{i}^{2}}\bigg(1+\frac{2(2m+1)}{m(m-1)}\bigg)\bigg).
1741: \end{equation}
1742: Under our assumption of $\delta(d)=0$, any transmission by node
1743: $i$ will be instantaneously seen by any node $j$.  As a result,
1744: the random variable $V_{n,i}^{c_{1}}({\mathbf Y})$ will be seen as
1745: the pulse arrival time at node $j$, in the time scale of $c_{1}$.
1746: 
1747: Due to the assumption of no propagation delay, defining
1748: $X_{n,i}^{c_{1}}({\mathbf
1749: Y})\stackrel{\Delta}{=}V_{n,i}^{c_{1}}({\mathbf Y})$ will give us
1750: the desired properties in the aggregate waveform.  To see this,
1751: let us compare the distribution of $X_{n,i}^{c_{1}}({\mathbf Y})$
1752: to the assumptions of Theorem~\ref{theorem:main}. Since $\tau_{0}$
1753: is the ideal crossing time in the time scale of $c_{1}$, we have
1754: \begin{displaymath}
1755: X_{n,i}^{c_{1}}({\mathbf Y}) = \tau_{0} + T_{i}.
1756: \end{displaymath}
1757: Therefore, we see that
1758: \begin{equation} \label{eq:errorVariance}
1759: \textrm{Var}(T_{i}) =
1760: \frac{\sigma^{2}}{\alpha_{i}^{2}}\bigg(1+\frac{2(2m+1)}{m(m-1)}\bigg)
1761: = \frac{\bar{\sigma}^{2}}{\alpha_{i}^{2}},
1762: \end{equation}
1763: where $\bar{\sigma}^{2}$ from Theorem~\ref{theorem:main} is
1764: \begin{displaymath} \bar{\sigma}^{2} =
1765: \sigma^{2}\bigg(1+\frac{2(2m+1)}{m(m-1)}\bigg).
1766: \end{displaymath}
1767: We have shown that using the pulse connection function
1768: $X_{n,i}^{c_{1}}({\mathbf
1769: Y})\stackrel{\Delta}{=}V_{n,i}^{c_{1}}({\mathbf Y})$ satisfies the
1770: conditions of Theorem~\ref{theorem:main}.  Thus, all the results
1771: of the theorem apply.
1772: 
1773: As a result, we have established a time synchronization estimator
1774: $V_{n,i}^{c_{1}}({\mathbf Y})$ and a pulse-connection function
1775: $X_{n,i}^{c_{1}}({\mathbf Y})$.  In the case of $\delta(d)=0$, we
1776: have that $X_{n,i}^{c_{1}}({\mathbf
1777: Y})\stackrel{\Delta}{=}V_{n,i}^{c_{1}}({\mathbf Y})$, or in the
1778: time scale of $c_{i}$, $X_{n,i}^{c_{i}}({\mathbf
1779: Y})\stackrel{\Delta}{=}V_{n,i}^{c_{i}}({\mathbf Y})$.  When each
1780: node in the network uses the pulse-connection function
1781: $X_{n,i}^{c_{i}}({\mathbf Y})$ we have a resulting aggregate
1782: waveform that has a zero-crossing at the next integer value of $t$
1783: as $N\to\infty$. This fact follows from applying
1784: Theorem~\ref{theorem:main}. Thus, we have an asymptotic
1785: steady-state time synchronization method that can maintain a
1786: sequence of equispaced zero-crossings occurring at integer values
1787: of $t$. An interesting feature of this synchronization technique
1788: is that no node needs to know any information about its location
1789: or its surrounding neighbors.
1790: 
1791: \subsubsection{Cooperation without Simultaneous Transmission and
1792: Reception} \label{sec:noSimultTxRx}
1793: 
1794: Before ending this section, let us comment on the assumption of
1795: simultaneous transmission and reception. One way to relax this
1796: assumption is to divide the network into two disjoint sets of
1797: nodes, say the odd numbered nodes and the even numbered nodes,
1798: where each set is still uniformly distributed over the area. Then,
1799: the odd nodes and the even nodes will take turns transmitting and
1800: receiving.  For example, the odd numbered nodes can transmit
1801: pulses at odd values of $t$ and the even numbered nodes will
1802: listen. The even numbered nodes will then transmit pulses at the
1803: even values of $t$ and the odd numbered nodes will listen.  With
1804: such a scheme, nodes do not transmit and receive pulses
1805: simultaneously, but can still take advantage of spatial averaging.
1806: The odd numbered nodes will see an aggregate waveform generated by
1807: a subset of the even numbered nodes and the even numbered nodes
1808: will receive a waveform cooperatively generated by the odd
1809: numbered nodes.  Let us take a more detailed look at this scheme.
1810: 
1811: \begin{figure}[!h]
1812: \centerline{\psfig{file=noSimultTxRx.eps,width=15cm}}
1813: \caption{\small In the above figure, we assume $\tau_{0}$ is an
1814: even integer value of $t$ and $m=3$.  Therefore, each even
1815: numbered node will turn on its receiver to receive the aggregate
1816: signal arriving at times $\tau_{0}-5$, $\tau_{0}-3$, and
1817: $\tau_{0}-1$. Using these three received times, it can then
1818: estimate the time of $\tau_{0}$. Thus, the aggregate signal
1819: occurring at $\tau_{0}$ is cooperatively generated by the even
1820: numbered nodes and is received by the odd numbered nodes.}
1821: \label{fig:noSimultTxRx}
1822: \end{figure}
1823: 
1824: In Fig.~\ref{fig:noSimultTxRx} we assume that $\tau_{0}$ is an
1825: even integer value of $t$ and use $m=3$.  Each even numbered node
1826: will use the aggregate signals occurring at $\tau_{0}-5$,
1827: $\tau_{0}-3$, and $\tau_{0}-1$ to estimate $\tau_{0}$ and
1828: cooperatively the even nodes will generate the aggregate signal at
1829: $\tau_{0}$. The odd numbered nodes will then use the aggregate
1830: signals occurring at $\tau_{0}-4$, $\tau_{0}-2$, and $\tau_{0}$ to
1831: generate the aggregate signal at $\tau_{0}+1$. Therefore, the odd
1832: and even numbered nodes can take turns transmitting and receiving
1833: signals and nodes never need to simultaneously transmit and
1834: receive.
1835: 
1836: Of course, such a setup would require a modification of the
1837: estimators used by the nodes. Nodes will receive a vector of $m$
1838: observations $\mathbf{Y}$ with $\mathbf{Y}[l+1] =
1839: \alpha_{i}(\tau_{0}+1-2(m-l)-\bar{\Delta}_{i})+\Psi_{i}$ for $l =
1840: 0,1,\ldots,m-1$. With such a mechanism, the ${\mathbf H}$ matrix
1841: in equation (\ref{eq:simple-obs}) would change to
1842: \begin{displaymath}
1843: {\mathbf H} = \left[ \begin{array}{ccccc}
1844: 1 & 1 & 1 & \ldots & 1\\
1845: 0 & 2 & 4 & \ldots & 2(m-1)
1846: \end{array} \right]^T
1847: \end{displaymath} and $\theta$ becomes
1848: \begin{displaymath}
1849: {\mathbf \theta} = \left[ \begin{array}{c}
1850: \theta_{1}\\
1851: \theta_{2}
1852: \end{array} \right] =
1853: \left[ \begin{array}{c}
1854: \alpha_{i}(\tau_{0}+1-2m-\bar{\Delta}_{i})\\
1855: \alpha_{i}
1856: \end{array} \right].
1857: \end{displaymath}
1858: 
1859: To estimate the location $\tau_{0}$ in the time scale of $c_{i}$,
1860: we can proceed as in Section~\ref{sec:timeSyncEstimator}:
1861: \begin{displaymath}
1862: \hat{\theta}_{ML}=({\mathbf H}^{T}\Sigma^{-1} {\mathbf
1863: H})^{-1}{\mathbf H}^{T}\Sigma^{-1}{\mathbf Y}=
1864: (\mathbf{H}^{T}\mathbf{H})^{-1}\mathbf{H}^{T}Y
1865: \end{displaymath}
1866: will be distributed $\hat{\theta}_{ML} \sim {\mathcal N}(\theta,
1867: \sigma^{2}({\mathbf H}^{T}{\mathbf H})^{-1})$ and
1868: $\hat{\theta}_{ML}$ is UMVU. This leads to the UMVU estimate
1869: $\hat{\phi}_{ML} = {\mathbf C}\hat{\theta}_{ML}$, where ${\mathbf
1870: C}=[1\quad  2m-1]$, and
1871: %\begin{displaymath}
1872: $E(\hat{\phi}_{ML})={\mathbf
1873: C}E(\hat{\theta}_{ML})=\theta_{1}+(2m-1)\theta_{2}$.
1874: %\end{displaymath}
1875: In this case, the variance of $\hat{\phi}_{ML}$ will be
1876: $\textrm{Var}_{\theta}(\hat{\phi}_{ML})={\mathbf
1877: C}\sigma^{2}({\mathbf H}^{T}{\mathbf H})^{-1}{\mathbf C}^{T}$, and
1878: thus we have that
1879: \begin{displaymath}
1880: V_{n,i}^{c_{i}}(\mathbf{Y}) = \hat{\phi}_{ML} \sim
1881: \mathcal{N}\bigg(\alpha_{i}(\tau_{0}+1-2m-\bar{\Delta}_{i})+(2m-1)\alpha_{i},
1882: \frac{\sigma^{2}(2m+1)(2m-1)}{m(m-1)(m+1)}\bigg).
1883: \end{displaymath}
1884: Converted to the time scale of $c_{1}$ we have
1885: \begin{equation} \label{eq:noSimult}
1886: V_{n,i}^{c_{1}}(\mathbf{Y}) \sim \mathcal{N}\bigg(\tau_{0},
1887: \frac{\sigma^{2}}{\alpha_{i}^{2}}\bigg(1+\frac{(2m+1)(2m-1)}{m(m-1)(m+1)}\bigg)\bigg).
1888: \end{equation}
1889: Comparing equations (\ref{eq:compToNoSimult}) and
1890: (\ref{eq:noSimult}), we see that they have the same form.  As a
1891: result, we can again set $X_{n,i}^{c_{i}}({\mathbf
1892: Y})\stackrel{\Delta}{=}V_{n,i}^{c_{i}}({\mathbf Y})$ and achieve
1893: cooperative time synchronization.
1894: 
1895: \section{Time Synchronization with Propagation Delay}
1896: \label{sec:timeDelay}
1897: 
1898: We now extend the ideas of cooperative time synchronization to the
1899: situation where signals suffer not only from pathloss but also
1900: propagation delay.  It turns out that the effect of propagation
1901: delay can also be addressed using the concept we have been using
1902: throughout this paper --- averaging out errors using the large
1903: number of nodes in the network.
1904: 
1905: In this section, we use the pathloss and propagation delay model
1906: detailed in Section~\ref{sec:delay-model}.  We introduce a time
1907: delay function $\delta(d)$.  For generality, we explicitly model a
1908: multi-hop network where we have a $K(d)$ function that is zero for
1909: $d$ greater than some distance $R$, i.e. $K(d) = 0$ for $d>R$.
1910: Such a model implies that the aggregate signal seen at any node
1911: $j$ is influenced only by the set of nodes inside a circle of
1912: radius $R$ centered at node $j$. With this we can effectively
1913: divide the network into two disjoint sets, a set of {\em interior
1914: nodes} and a set of {\em boundary nodes}.  An interior node $j$ is
1915: defined to be a node whose distance from the nearest network
1916: boundary is greater than or equal to $R$.  A boundary node is thus
1917: defined to be a node that is a distance less than $R$ away from
1918: the nearest network boundary.
1919: 
1920: We make this distinction since the synchronization technique for
1921: each set of nodes is different.  Please note that if a pathloss
1922: function where $K(d) = 0$ for $d>R$ is unreasonable, then we
1923: simply choose $R$ to be infinite and consider all nodes in the
1924: network to be boundary nodes.
1925: 
1926: Using the propagation delay model, $D_{j,i}$ will obviously modify
1927: the general received aggregate waveform seen at any node $j$.  In
1928: fact, equation (\ref{eq:timesync-aggwaveform}) will now be written
1929: as
1930: \begin{eqnarray} \label{eq:timesync-aggwaveform-withDelay}
1931: A^{c_{1}}_{j,N}(t) & = & \sum_{i=1}^{N} \frac{A_{max}K_{j,i}}{N}
1932: p(t-\tau_{o}-T_{i}-D_{j,i}).
1933: \end{eqnarray}
1934: For $N$ large, this model will give an accurate characterization
1935: of the aggregate waveform seen at node $j$.
1936: 
1937: \subsection{Conceptual Motivation}
1938: \label{sec:propDelay_motivation}
1939: 
1940: From equation (\ref{eq:timesync-aggwaveform-withDelay}), it is
1941: clear that the aggregate waveform will not have a zero-crossing at
1942: $\tau_{0}$ for every node $j$ because of the presence of the
1943: $D_{j,i}$ random variables.  Therefore, to average out propagation
1944: delay, the idea we employ is to have each node introduce a
1945: \emph{random} artificial time shift that counteracts the effect of
1946: the time delay random variable. More precisely, we want to
1947: introduce another random variable $D_{fix}$ such that
1948: $D_{fix}+D_{j}$ will have zero mean and a symmetric distribution.
1949: At the same time, we assume each node knows $K(\cdot)$ and
1950: $\delta(\cdot)$ and will also introduce an artificial scaling
1951: factor $K_{fix}=K(\delta^{-1}(-D_{fix}))$ to simplify the analysis
1952: of the aggregate waveform. This means that instead of using the
1953: scaling factor $A_{i}=A_{max}/N$, each node $i$ will scale its
1954: transmitted pulse by $A_{i}=A_{max}K_{fix}/N$. For the motivation
1955: in this section, let us assume that node $j$ is an interior node.
1956: 
1957: To find the distribution of $D_{fix}$, we consider the following.
1958: $D_{j}$ has density $f_{D_{j}}(x)$ and let $f_{D_{fix}}(x)$ be the
1959: density of $D_{fix}$.  Since $D_{j}$ and $D_{fix}$ are
1960: independent, we know that the density of $D_{T}=D_{fix}+D_{j,i}$,
1961: $f_{D_{T}}(x)$, will be the convolution of $f_{D_{j}}(x)$ and
1962: $f_{D_{fix}}(x)$.  Therefore, by the properties of the convolution
1963: function, if we set
1964: $f_{D_{fix}}(x)\stackrel{\Delta}{=}f_{D_{j}}(-x)$, then we have
1965: that $f_{D_{T}}(x)$ is symmetric, i.e.
1966: $f_{D_{T}}(x)=f_{D_{T}}(-x)$. As well, since $D_{j}$ has finite
1967: expectation, it is easy to see that $E(D_{T}) = 0$.
1968: 
1969: Given a sequence of $m$ zero-crossings that we know to be
1970: occurring at integers of $t$, we can still use
1971: $V_{n,i}^{c_{1}}({\mathbf Y})$ (from (\ref{eq:timesync-estimator})
1972: in the time scale of node $1$) as the time synchronization
1973: estimator. However, with propagation delay, the pulse-connection
1974: function will now be $X_{n,i}^{c_{1}}({\mathbf
1975: Y})=V_{n,i}^{c_{1}}({\mathbf Y})+D_{fix} =
1976: \tau_{o}+T_{i}+D_{fix}$. With $D_{fix}$ and $K_{fix}$ included, we
1977: can rewrite equation (\ref{eq:timesync-aggwaveform-withDelay}) as
1978: \begin{eqnarray} \label{eq:timesync-aggwaveform-withDelayAndFix}
1979: A^{c_{1}}_{j,N}(t) = \sum_{i=1}^{N}
1980: \frac{A_{max}K_{fix}K_{j,i}}{N}
1981: p(t-\tau_{o}-T_{i}-D_{fix}-D_{j,i}).
1982: \end{eqnarray}
1983: It is important to see that since $D_{j}$ has the same
1984: distribution for \emph{all} interior nodes $j$, equation
1985: (\ref{eq:timesync-aggwaveform-withDelayAndFix}) holds for every
1986: node $j$ that is an interior node.  This means that for the
1987: network to cooperatively generate the waveform in
1988: (\ref{eq:timesync-aggwaveform-withDelayAndFix}) each transmit node
1989: $i$ needs to have the following additional knowledge: (1) the
1990: distribution of $D_{fix}$ whose density is
1991: $f_{D_{fix}}(x)\stackrel{\Delta}{=}f_{D_{j}}(-x)$, where $j$ is an
1992: interior node, and (2) the functions $K(\cdot)$ and
1993: $\delta(\cdot)$ to generate $K_{fix}$. With this knowledge, we can
1994: use equation (\ref{eq:timesync-aggwaveform-withDelayAndFix}) to
1995: study the aggregate waveform seen at any interior node $j$. In
1996: fact, we find that the aggregate waveform has limiting properties
1997: that are similar to those outlined in Theorem~\ref{theorem:main}.
1998: These properties are described in
1999: Theorem~\ref{theorem:main-delay}.
2000: 
2001: \begin{theorem}
2002: \label{theorem:main-delay} Let $p(t)$ be as defined in
2003: equation~(\ref{eq:poft}) and $T_i\sim {\mathcal N}(0,
2004: \frac{\bar{\sigma}^{2}}{\alpha_{i}^{2}})$ with
2005: $\bar{\sigma}^{2}>0$ a constant and
2006: $\frac{\bar{\sigma}^2}{\alpha_{i}^{2}} < B <\infty$ for all $i$,
2007: $B$ a constant. $K_{j,i}$ and $D_{j,i}$ are defined as in
2008: Section~\ref{sec:delay-model} and $D_{fix}$ with density
2009: $f_{D_{fix}}(x)\stackrel{\Delta}{=}f_{D_{j}}(-x)$ is independent
2010: from $D_{j,i}$.  $K_{fix}=K(\delta^{-1}(-D_{fix}))$ and let
2011: $D_{j,i}$, $D_{fix}$, and $T_{i}$ be mutually independent for all
2012: $i$. Then, for any interior node $j$ with $A_{j,N}^{c_{1}}(t)$ as
2013: defined in (\ref{eq:timesync-aggwaveform-withDelayAndFix}),
2014: $\lim_{N\to\infty}A_{j,N}^{c_{1}}(t) = A_{j,\infty}^{c_{1}}(t)$
2015: has the properties
2016: \begin{itemize}
2017: \item $A_{j,\infty}^{c_{1}}(\tau_0) = 0$, \item
2018: $A_{j,\infty}^{c_{1}}(t)$ is odd around $t=\tau_{0}$, i.e.
2019: $A_{j,\infty}^{c_{1}}(\tau_{0}+\xi) =
2020: -A_{j,\infty}^{c_{1}}(\tau_{0}-\xi)$ for $\xi\geq 0$. \qquad
2021: $\bigtriangleup$
2022: \end{itemize}
2023: \end{theorem}
2024: The proof of Theorem~\ref{theorem:main-delay} is left for the
2025: appendix.
2026: 
2027: From the arguments so far, it seems that time synchronization with
2028: delay, at least for interior nodes, can be solved simply by
2029: modifying the pulse-connection function $X_{n,i}^{c_{1}}({\mathbf
2030: Y})$ and changing the scaling factor to $A_{i}=A_{max}K_{fix}/N$.
2031: Theorem~\ref{theorem:main-delay} tells us that the limiting
2032: aggregate waveform makes a zero-crossing at the next integer value
2033: of $t$ and the waveform is odd. Thus, we can use this
2034: zero-crossing as a synchronization event and maintain
2035: synchronization in a manner identical to the technique used in the
2036: situation without propagation delay. This, however, unfortunately
2037: is not the case. In order to implement the above concept, we need
2038: to find the random variable, $D_{fix}^{c_{i}}$, in the time scale
2039: of $c_{i}$, that corresponds to $D_{fix}$ such that
2040: \begin{eqnarray*}
2041: (V_{n,i}^{c_{i}}({\mathbf Y})+D_{fix}^{c_{i}})^{c_{1}} & = &
2042: \frac{V_{n,i}^{c_{i}}({\mathbf
2043: Y})+D_{fix}^{c_{i}}-\Psi_{i}}{\alpha_{i}}+\bar{\Delta}_{i} \\
2044: & = & V_{n,i}^{c_{1}}({\mathbf Y}) +
2045: \frac{D_{fix}^{c_{i}}}{\alpha_{i}} \\
2046: & = & V_{n,i}^{c_{1}}({\mathbf Y})+D_{fix}.
2047: \end{eqnarray*}
2048: This means that we need $D_{fix}^{c_{i}}/ \alpha_{i} = D_{fix}$.
2049: However, each node $i$ cannot find $D_{fix}^{c_{i}}$ that
2050: satisfies this since it does not know its $\alpha_{i}$.
2051: 
2052: \subsection{Time Synchronization of Interior Nodes}
2053: \label{sec:timeSync-Interior}
2054: 
2055: Since the $i$th node does not know its own value of $\alpha_{i}$,
2056: to do time synchronization with propagation delay we can have each
2057: node estimate its $\alpha_{i}$ value.  However, this estimate will
2058: not be perfect and we may no longer have the symmetric limiting
2059: aggregate waveform described by Theorem~\ref{theorem:main-delay}.
2060: This means that the center zero-crossing might occur some
2061: $\epsilon$ away from $\tau_{0}$, $\tau_{0}$ an integer value of
2062: $t$. However, steady-state time synchronization can be maintained
2063: if the network can use a sequence of $m$ equispaced zero-crossings
2064: that occur at $t=\tau_{0}-m+\epsilon, \tau_{0}-m+1+\epsilon,
2065: \tau_{0}-m+2+\epsilon,\ldots,\tau_{0}-1+\epsilon$, where
2066: $\tau_{0}$ is an integer value of $t$, to cooperatively generate a
2067: limiting aggregate waveform that has a zero-crossing at
2068: $\tau_{0}+\epsilon$. In such a situation, the network will be able
2069: to construct a sequence of equispaced zero-crossings and maintain
2070: the occurrence of these zero-crossings indefinitely. The idea is
2071: the same as in the case without propagation delay, but the only
2072: difference here would be that the zero-crossings do not occur at
2073: integer values of $t$.  Let us give a more formal description of
2074: this idea.
2075: 
2076: Using notation from Section~\ref{sec:timeSyncEstimator}, we start
2077: with the assumption that each interior node $i$ has a sequence of
2078: $m$ observations that has the form
2079: \begin{equation} \label{eq:observation_form}
2080: \alpha_{i}(\tau_{0}-m+l+\epsilon-\bar{\Delta}_{i})+\Psi_{i},
2081: \end{equation}
2082: where $l=0,1,\ldots,m-1$ and $\epsilon$ is known. To develop the
2083: time synchronization estimator $V_{n,i}^{c_{i}}({\mathbf Y})$ and
2084: the pulse-connection function $X_{n,i}^{c_{i}}({\mathbf Y})$, we
2085: consider the observations made by each node. If we assume that
2086: each node knows the value of $\epsilon$, the vector of
2087: observations can be written as in (\ref{eq:simple-obs})
2088: \begin{displaymath}
2089: {\mathbf Y} = \bar{{\mathbf H}}{\mathbf \theta} + {\mathbf W},
2090: \end{displaymath}
2091: where the matrix $\bar{{\mathbf H}}$ in this case is
2092: \begin{displaymath}
2093: \bar{{\mathbf H}} = \left[ \begin{array}{ccccc}
2094: 1 & 1 & 1 & \ldots & 1\\
2095: \epsilon & 1+\epsilon & 2+\epsilon & \ldots & m-1+\epsilon
2096: \end{array} \right]^T.
2097: \end{displaymath}
2098: Using this model, we can follow the development in
2099: Section~\ref{sec:timeSyncEstimator} to find the the time
2100: synchronization estimator
2101: \begin{equation} \label{eq:timesync-estimator-propDelay}
2102: V_{n,i}^{c_{i}}({\mathbf Y},\epsilon) = {\mathbf
2103: C}(\bar{\mathbf{H}}^{T}\bar{\mathbf{H}})^{-1}\bar{\mathbf{H}}^{T}{\mathbf
2104: Y},
2105: \end{equation}
2106: where ${\mathbf C} = [1\quad m]$.  This estimator will give each
2107: node the ability to optimally estimate the next integer value of
2108: $t$. Note that the variance of the time synchronization estimator
2109: is
2110: \begin{equation}
2111: \textrm{Var}_{\theta}(V_{n,i}^{c_{i}}({\mathbf Y},\epsilon)) =
2112: {\mathbf C}\sigma^{2}(\bar{{\mathbf H}}^{T}\bar{{\mathbf
2113: H}})^{-1}{\mathbf C}^{T} =
2114: \sigma^{2}\bigg(\frac{2(2m+1)}{m(m-1)}+\frac{12\epsilon(\epsilon-1-m)}{(m-1)m(m+1)}\bigg).
2115: \end{equation}
2116: Using the time synchronization estimator, we can choose the
2117: pulse-connection function as
2118: \begin{equation} \label{eq:pulse-connection-propDelay}
2119: X_{n,i}^{c_{i}}({\mathbf Y})=V_{n,i}^{c_{i}}({\mathbf
2120: Y},\epsilon)+\hat{\alpha}_{i}D_{fix}=V_{n,i}^{c_{i}}({\mathbf
2121: Y},\epsilon)+D^{c_{i}}_{fix},
2122: \end{equation}
2123: where each time node $i$ makes the estimate
2124: $V_{n,i}^{c_{i}}({\mathbf Y},\epsilon)$ it also estimates
2125: $\hat{\alpha}_{i}$ as
2126: \begin{displaymath}
2127: \hat{\alpha_{i}} = \bar{{\mathbf
2128: C}}(\bar{\mathbf{H}}^{T}\bar{\mathbf{H}})^{-1}\bar{\mathbf{H}}^{T}{\mathbf
2129: Y},
2130: \end{displaymath}
2131: $\bar{{\mathbf C}}=[0\quad 1]$.  We find that $\hat{\alpha}_{i}
2132: \sim {\mathcal N}(\alpha_{i}, 12\sigma^{2}/((m-1)m(m+1)))$. Since,
2133: from Section~\ref{sec:propDelay_motivation}, we know we want
2134: $D_{fix}^{c_{i}}/ \alpha_{i} = D_{fix}$, we have set
2135: $D_{fix}^{c_{i}} \stackrel{\Delta}{=} \hat{\alpha}_{i}D_{fix}$.
2136: Notice that since $D_{fix}^{c_{i}}$ is simply a realization of
2137: $D_{fix}$ multiplied by node $i$'s estimate of $\alpha_{i}$, node
2138: $i$ can use the realization of $D_{fix}$ and find
2139: $K_{fix}=K(\delta^{-1}(-D_{fix}))$.
2140: 
2141: With our choice of $X_{n,i}^{c_{i}}({\mathbf Y})$ in
2142: (\ref{eq:pulse-connection-propDelay}), we see that
2143: \begin{displaymath}
2144: (V_{n,i}^{c_{i}}({\mathbf Y},\epsilon)+D_{fix}^{c_{i}})^{c_{1}}
2145: \;\;=\;\; V_{n,i}^{c_{1}}({\mathbf Y},\epsilon)+Z_{i}D_{fix}
2146: \;\;=\;\; \tau_{0} +T_{i}+Z_{i}D_{fix},
2147: \end{displaymath}
2148: where $Z_{i}\sim{\mathcal
2149: N}(1,12\sigma^{2}/(\alpha_{i}^{2}(m-1)m(m+1)))$, and
2150: $\tau_{0}+T_{i}=V_{n,i}^{c_{1}}({\mathbf Y},\epsilon)$. Because of
2151: the random factor $Z_{i}$, we see that
2152: $D_{T}=Z_{i}D_{fix}+D_{j,i}$ is no longer a symmetric
2153: distribution.  As a result, the limiting aggregate waveform
2154: \begin{equation} \label{eq:aggregate-waveform-timeDelay}
2155: A_{j,\infty}^{c_{1}}(t)=\lim_{N\to\infty}A^{c_{1}}_{j,N}(t) =
2156: \lim_{N\to\infty}\sum_{i=1}^{N} \frac{A_{max}K_{fix}K_{j,i}}{N}
2157: p(t-\tau_{o}-T_{i}-Z_{i}D_{fix}-D_{j,i})
2158: \end{equation}
2159: may not have a zero-crossing at $t=\tau_{0}$.
2160: 
2161: Thus, if we can find an $\epsilon$ such that each node $i$ using a
2162: set of observations of the form (\ref{eq:observation_form}) allows
2163: the network to cooperatively generate the waveform in
2164: (\ref{eq:aggregate-waveform-timeDelay}) that has its zero-crossing
2165: occurring at $t=\tau_{0}+\epsilon$ (in the time scale of $c_{1}$),
2166: then we have steady-state time synchronization. This is because
2167: the network would be able to use a sequence of $m$ observations to
2168: generate the next observation that gives the same information as
2169: any of the previous observations.  Thus, by always taking the $m$
2170: most recent observations, the process can continue forever and
2171: maintain synchronization.  Each node $i$ would need to know
2172: distribution of $D_{fix}$, the value of $\epsilon$, and the
2173: functions $K(\cdot)$ and $\delta(\cdot)$.  Therefore, we find that
2174: steady-state time synchronization of the interior nodes is
2175: possible under certain conditions. As a note, no interior node
2176: needs to know any location information.
2177: 
2178: \subsection{Time Synchronization of Boundary Nodes}
2179: \label{sec:timeSync-Boundary}
2180: 
2181: Before we consider the synchronization of boundary nodes, we note
2182: that the key requirement for each boundary node $i$ is to have a
2183: pulse-connection function given in equation
2184: (\ref{eq:pulse-connection-propDelay}).  The reason that this must
2185: be the pulse-connection for every boundary node $i$ is because the
2186: analysis for the interior nodes assumes that the aggregate
2187: waveform seen by any interior node $j$ is created by pulse
2188: transmissions occurring at a time determined by
2189: (\ref{eq:pulse-connection-propDelay}).  Since the aggregate
2190: waveform seen by some interior nodes are created by pulse
2191: transmissions from boundary nodes, each boundary node must have
2192: the appropriate pulse-connection function.  This requirement,
2193: however, proves to be extremely problematic and reveals a
2194: limitation of the elegant technique of averaging out timing delay
2195: when we come to boundaries of the network.
2196: 
2197: The problem comes because $D_{fix}+D_{j,i}$ already does not have
2198: a symmetric distribution if $j$ is a boundary node. Recall that
2199: $f_{D_{fix}}(x) = f_{D_{j}}(-x)$ when $j$ is an interior node and
2200: $f_{D_{j}}(x) = f_{D_{l}}(x)$ when $j$ and $l$ are both interior
2201: nodes. However, $f_{D_{j}}(x) \ne f_{D_{l}}(x)$ when $j$ is an
2202: interior node and $l$ is a boundary node.  As a result,
2203: $D_{fix}+D_{j,i}$ is no longer symmetric if $j$ is a boundary
2204: node. In fact, it is clear that the distribution of
2205: $D_{fix}+D_{j,i}$ is a function of node $j$'s location near the
2206: boundary.  Because of this additional asymmetry, let us assume for
2207: a moment that the sequence of zero-crossings observed by boundary
2208: node $i$ occur $\epsilon_{i}$ away from an integer value of $t$.
2209: That is, if every node in the network, including the boundary
2210: nodes, transmitted a sequence of pulses where each pulse was sent
2211: according to (\ref{eq:pulse-connection-propDelay}), then boundary
2212: node $i$ would observe the sequence of observations
2213: \begin{equation} \label{eq:observation_form_boundary}
2214: \alpha_{i}(\tau_{0}-m+l+\epsilon_{i}-\bar{\Delta}_{i})+\Psi_{i},
2215: \end{equation}
2216: where $l=0,1,\ldots,m-1$ and $\epsilon_{i}$ is known.
2217: 
2218: This boundary node $i$ could then use the time synchronization
2219: estimator given by (\ref{eq:timesync-estimator-propDelay}) but
2220: where the matrix $\bar{{\mathbf H}}$ is now replaced with
2221: $\bar{{\mathbf H}}_{i}$
2222: \begin{displaymath}
2223: \bar{{\mathbf H}}_{i} = \left[ \begin{array}{ccccc}
2224: 1 & 1 & 1 & \ldots & 1\\
2225: \epsilon_{i} & 1+\epsilon_{i} & 2+\epsilon_{i} & \ldots &
2226: m-1+\epsilon_{i}
2227: \end{array} \right]^T.
2228: \end{displaymath}
2229: Thus, for this boundary node $i$ we have
2230: \begin{equation} \label{eq:timesync-estimator-propDelay-boundary}
2231: V_{n,i}^{c_{i}}({\mathbf Y},\epsilon_{i}) = {\mathbf
2232: C}(\bar{\mathbf{H}}_{i}^{T}\bar{\mathbf{H}}_{i})^{-1}\bar{\mathbf{H}}_{i}^{T}{\mathbf
2233: Y},
2234: \end{equation}
2235: In this case, however, the variance of the time synchronization
2236: estimator depends on $\epsilon_{i}$
2237: \begin{equation} \label{eq:timesync-estimator-variance-boundary}
2238: \textrm{Var}_{\theta}(V_{n,i}^{c_{i}}({\mathbf Y},\epsilon_{i})) =
2239: \sigma^{2}\bigg(\frac{2(2m+1)}{m(m-1)}+\frac{12\epsilon_{i}(\epsilon_{i}-1-m)}{(m-1)m(m+1)}\bigg).
2240: \end{equation}
2241: The fact that the variance depends on $\epsilon_{i}$ is the root
2242: of the problem.  The pulse-connection function
2243: \begin{equation} \label{eq:pulse-connection-propDelay-boundary}
2244: X_{n,i}^{c_{i}}({\mathbf Y})=V_{n,i}^{c_{i}}({\mathbf
2245: Y},\epsilon_{i})+\hat{\alpha_{i}}D_{fix},
2246: \end{equation}
2247: is \emph{not} the same as that given by
2248: (\ref{eq:pulse-connection-propDelay}).
2249: 
2250: To correct for this, we can make the strong assumption that each
2251: boundary node $i$ knows is own $\alpha_{i}$.  We address the
2252: reasoning behind this assumption in
2253: Section~\ref{sec:propDelay_assumption}.  If we use this
2254: assumption, then each boundary node $i$ can get an observation
2255: sequence of the form (\ref{eq:observation_form}) simply by adding
2256: $\alpha_{i}(\epsilon-\epsilon_{i})$ to each of the $m$
2257: observations of the form given in
2258: (\ref{eq:observation_form_boundary}), where we assume that node
2259: $i$ knows both $\epsilon$ and $\epsilon_{i}$. With such an
2260: observation sequence, boundary node $i$ will have the time
2261: synchronization estimator (\ref{eq:timesync-estimator-propDelay})
2262: and, more importantly, the pulse-connection function
2263: (\ref{eq:pulse-connection-propDelay}). Thus, maintaining time
2264: synchronization for the case of propagation delay would be
2265: possible.
2266: 
2267: What we have then is that boundary node synchronization would
2268: require only the boundary nodes to know their $\alpha_{i}$
2269: parameters.  With this strong assumption only for the boundary
2270: nodes, the network is effectively synchronized.  Even though the
2271: boundary nodes do not see the same zero-crossing as the interior
2272: nodes, they can calculate this time and thus have all the required
2273: synchronization information.
2274: 
2275: \subsection{The Boundary Node Assumption}
2276: \label{sec:propDelay_assumption}
2277: 
2278: The assumption that each boundary node $i$ knows $\alpha_{i}$ is a
2279: strong assumption.  Even though the fraction of nodes that are
2280: boundary nodes is small for multi-hop networks requiring many hops
2281: to send information across the network, we believe that the
2282: assumption is still very artificial. There are two reasons that we
2283: make the assumption for the presentation of results on time
2284: synchronization with propagation delay.
2285: 
2286: First, the assumption allows us to give an elegant presentation of
2287: the main concept of this paper which is to use high node density
2288: to average out errors in the network.  Throughout this work we
2289: have used high node density to average out inherent errors present
2290: in the nodes.  We were able to average out random timing jitter
2291: that is present in each node and provide the network with a
2292: sequence of zero-crossings that can serve as synchronization
2293: events.  We then applied this technique to averaging out the
2294: errors introduced by time delay.  To this end we were partially
2295: successful in that the interior nodes can average out these errors
2296: assuming the boundary nodes have additional information. But this
2297: is of interest since the goal of this paper is to understand the
2298: theory of spatial averaging for synchronization and discover its
2299: fundamental advantages and limitations.
2300: 
2301: Second, the problem encountered at the boundaries is one that
2302: opens up an entirely new area of study which is the target of our
2303: future work. The issue that we encounter is that the waveform seen
2304: by some nodes in the network will have a zero-crossing that is
2305: shifted from the ideal location. This implies that different nodes
2306: will observe different zero-crossings.  Furthermore, these
2307: zero-crossings will now evolve in time since we do not have the
2308: same observations over the entire network. This problem is similar
2309: to what we encounter if we consider finite sized networks. For
2310: finite $N$, the zero-crossing location will be random and thus
2311: introduce another source of error. As well, different nodes will
2312: see different zero-crossing locations. Therefore, we will turn our
2313: attention to the case of finite $N$ and develop a different set of
2314: tools that will be needed to understand what types of
2315: synchronization are achievable under the situation where
2316: zero-crossing locations evolve in time.  Using this understanding,
2317: we hope to return to the issue of propagation delay in
2318: asymptotically dense networks and characterize the behavior of the
2319: network.
2320: 
2321: \section{Conclusions}
2322: \label{sec:conclusion}
2323: 
2324: To conclude, we revisit the scalability issue under the light of
2325: work developed in this paper.
2326: 
2327: \subsection{The Scalability Problem Revisited}
2328: 
2329: In the Introduction (Section~\ref{sec:estimate-params}), we
2330: mentioned that most existing proposals for time synchronization
2331: suffer from an inherent scalability problem.  The problem with
2332: those existing proposals lies in the fact that synchronization
2333: errors accumulate: if node 2 can synchronize to node 1 with some
2334: small error, and node 3 can synchronize to node 2 with the same
2335: small error, these errors accumulate, and the synchronization of
2336: node 3 to node 1 is worse.  Therefore, synchronization error
2337: increases with the number of hops in the network, and this problem
2338: is especially apparent in the regime of high densities.  To make
2339: these ideas precise, we first determine the maximum number of hops
2340: over which synchronization information must travel and then study
2341: how the error in a generic pairwise synchronization mechanism
2342: depends on this number of hops.
2343: 
2344: \subsubsection{An Estimate of the Maximum Number of Hops}
2345: 
2346: To obtain an estimate for the maximum number of hops $\ell_N$ in a
2347: network in the regime of high densities (fixed area,
2348: $N\to\infty$), we approximate the transmission range of a node by
2349: the minimum required transmission distance, $d_{N}$, to maintain a
2350: fully connected network with high probability.
2351: From~\cite{GuptaK:98}, we have that for $N$ nodes uniformly
2352: distributed over a $[0,1]\times [0,1]$ square, the graph is
2353: connected with probability-1 as $N\to\infty$ if and only if each
2354: node's transmission distance $d_{N}$ is such that
2355: \begin{displaymath}
2356: \pi d_{N}^{2} = \frac{\log N + \epsilon_{N}}{N},
2357: \end{displaymath}
2358: for some $\epsilon_{N}\to\infty$.  Let us, therefore, approximate
2359: $d_{N}$ as
2360: \begin{displaymath}
2361: d_{N} \approx \sqrt{\frac{1}{\pi}\frac{\log N}{N}}.
2362: \end{displaymath}
2363: Thus, $\ell_N = 1/d_N = O\big(\sqrt{\frac{N}{\log N}}\big)$, and thus
2364: $\ell_N\to\infty$ as $N\to\infty$.
2365: 
2366: \subsubsection{Synchronization Error Over Multiple Hops}
2367: 
2368: Now, we assume there are $\ell_{N}$ nodes arranged in a linear
2369: ordering, numbered $1$ to $\ell_{N}$.  To synchronize, each node
2370: $i$ forms an estimate of its own $\alpha_{i}$, based on $m$ pulses
2371: transmitted from node $i-1$. As before, node $1$ will have the
2372: reference clock $c_{1}(t)=t$.
2373: 
2374: Node $1$ starts by sending $m$ pulses at times $\tau_{1}+l$ for
2375: $l=0,1,\ldots,m-1$.  As a result, node $2$ will get a vector of
2376: observations ${\mathbf Y}_{2}$, where ${\mathbf Y}_{2}[1] =
2377: \alpha_{2}(\tau_{1}-\bar{\Delta}_{2})+\Psi_{2}$ and the $(l+1)$th
2378: element of ${\mathbf Y}_{2}$ is ${\mathbf
2379: Y}_{2}[l+1]=\alpha_{2}(\tau_{1}-\bar{\Delta}_{2})+l\alpha_{2}+\Psi_{2}$.
2380: This is similar to the situation we had in (\ref{eq:simple-obs})
2381: and we can therefore estimate $\alpha_{2}$ using
2382: \begin{displaymath}
2383: \hat{\alpha}_{2} = \bar{{\mathbf
2384: C}}(\mathbf{H}^{T}\mathbf{H})^{-1}\mathbf{H}^{T}{\mathbf Y}_{2},
2385: \end{displaymath}
2386: where $\bar{{\mathbf C}} = [0\quad 1]$.  We find that
2387: $\hat{\alpha}_{2} \sim {\mathcal N}(\alpha_{2},
2388: 12\sigma^{2}/((m-1)m(m+1)))$.
2389: 
2390: Node $2$ will now transmit $m$ pulses at times, in terms of
2391: $c_{2}$, $\bar{\tau}_{2}+l\hat{\alpha}_{2}$, for
2392: $l=0,1,\ldots,m-1$. Note that $\hat{\alpha}_{2}$ is now a fixed
2393: value since node $2$ has estimated $\alpha_{2}$.  In terms of
2394: $c_{1}$, these pulses occur at
2395: \begin{displaymath}
2396: (\bar{\tau}_{2}+l\hat{\alpha}_{2})^{c_{1}} =
2397: \frac{\bar{\tau}_{2}+l\hat{\alpha}_{2}-\Psi_{2}}{\alpha_{2}}+\bar{\Delta}_{2}
2398: = \tau_{2} + l\frac{\hat{\alpha}_{2}}{\alpha_{2}}-
2399: \frac{\Psi_{2}}{\alpha_{2}},
2400: \end{displaymath}
2401: for $l=0,1,\ldots,m-1$, where $\tau_{2}=
2402: (\bar{\tau}_{2}/\alpha_{2})+\bar{\Delta}_{2}$.  Thus, if we
2403: translate these times into the time scale of $c_{3}$, we will have
2404: the vector of observations, ${\mathbf Y}_{3}$, made by node $3$.
2405: We find that the $(l+1)$th element of ${\mathbf Y}_{3}$ is
2406: \begin{displaymath}
2407: {\mathbf Y}_{3}[l+1] = \alpha_{3}((\tau_{2} +
2408: l\frac{\hat{\alpha}_{2}}{\alpha_{2}}-
2409: \frac{\Psi_{2}}{\alpha_{2}})-\bar{\Delta}_{3})+\Psi_{3} \sim
2410: {\mathcal
2411: N}\bigg(\alpha_{3}(\tau_{2}-\bar{\Delta}_{3})+l\alpha_{3}\frac{\hat{\alpha}_{2}}{\alpha_{2}},
2412: \sigma^{2}\big(\frac{\alpha_{3}^{2}}{\alpha_{2}^{2}}+1\big)\bigg).
2413: \end{displaymath}
2414: This vector of observations is of the form
2415: \begin{equation}
2416: {\mathbf Y}_{3} = {\mathbf H}\bar{{\mathbf \theta}} +
2417: \bar{{\mathbf W}},
2418: \end{equation}
2419: where
2420: \begin{displaymath}
2421: \bar{{\mathbf \theta}} = \left[ \begin{array}{c}
2422: \bar{\theta}_{1}\\
2423: \bar{\theta}_{2}
2424: \end{array} \right] =
2425: \left[ \begin{array}{c}
2426: \alpha_{3}(\tau_{2}-\bar{\Delta}_{3})\\
2427: \alpha_{3}\frac{\hat{\alpha}_{2}}{\alpha_{2}}
2428: \end{array} \right]
2429: \end{displaymath}
2430: with
2431: \begin{displaymath}
2432: {\mathbf H} = \left[ \begin{array}{ccccc}
2433: 1 & 1 & 1 & \ldots & 1\\
2434: 0 & 1 & 2 & \ldots & m-1
2435: \end{array} \right]^T
2436: \end{displaymath}
2437: and ${\mathbf W} = [W_{1}\dots W_{m}]^{T}$. ${\mathbf W} \sim
2438: {\mathcal N}(0,\Sigma)$ with $\Sigma =
2439: \sigma^{2}\big(\frac{\alpha_{3}^{2}}{\alpha_{2}^{2}}+1\big){\mathbf
2440: I}$.
2441: 
2442: With this vector of observations, we can use the estimator
2443: \begin{displaymath}
2444: \hat{\alpha}_{3} = \bar{{\mathbf
2445: C}}(\mathbf{H}^{T}\mathbf{H})^{-1}\mathbf{H}^{T}{\mathbf Y}_{3},
2446: \end{displaymath}
2447: where $\bar{{\mathbf C}} = [0\quad 1]$. We find that
2448: \begin{displaymath}
2449: \hat{\alpha}_{3} \sim {\mathcal
2450: N}\bigg(\alpha_{3}\frac{\hat{\alpha}_{2}}{\alpha_{2}},
2451: \frac{12\sigma^{2}}{((m-1)m(m+1))}\big(\frac{\alpha_{3}^{2}}{\alpha_{2}^{2}}+1\big)\bigg).
2452: \end{displaymath}
2453: If we continue this reasoning, we find that
2454: \begin{displaymath}
2455: \hat{\alpha}_{\ell_{N}} \sim {\mathcal
2456: N}\bigg(\alpha_{\ell_{N}}\frac{\hat{\alpha}_{\ell_{N}-1}}{\alpha_{\ell_{N}-1}},
2457: \frac{12\sigma^{2}}{((m-1)m(m+1))}\big(\frac{\alpha_{\ell_{N}}^{2}}{\alpha_{\ell_{N}-1}^{2}}+1\big)\bigg)
2458: \end{displaymath}
2459: will be the estimate of node $\ell_{N}$.
2460: 
2461: From the above analysis, we see that each node $i$'s estimate
2462: suffers from jitter variance of the same form.  However, there is
2463: an accumulation of error because node $i$'s estimate has a mean
2464: that is dependent on node $i-1$'s estimate.  As a result, if node
2465: $i-1$ has some small error, then that error will propagate to the
2466: estimate of node $i$.  A good way to see this is if we consider
2467: the special case where $\alpha_{2} = \alpha_{3} = \ldots
2468: \alpha_{\ell_{N}} = 1$.  This is the case where the clock
2469: frequencies are the same, but nodes do not know this.  In this
2470: case, we find that node $\ell_{N}$'s estimate can be written as
2471: \begin{displaymath}
2472: \hat{\alpha}_{\ell_{N}} = \hat{\alpha}_{2} +
2473: \sum_{i=3}^{\ell_{N}}W_{i}, \qquad \ell_{N}\geq 2
2474: \end{displaymath}
2475: where $W_{i}\sim{\mathcal N}(0,24\sigma^{2}/((m-1)m(m+1)))$. This
2476: is intuitively obvious because node $i$'s estimate
2477: $\hat{\alpha}_{i}$ will be the mean of the Gaussian random
2478: variable $\hat{\alpha}_{i+1}$.  Therefore, it is obvious that the
2479: error variance grows linearly with the number of hops.  In fact,
2480: this behavior is observed in experimental work. With Reference
2481: Broadcast Synchronization (RBS), from~\cite{ElsonGE:02} the
2482: authors find that the synchronization error variance of an
2483: $\ell_{N}$ hop path is approximately $\sigma^{2}\ell_{N}$, where
2484: $\sigma^{2}$ is the one hop error variance. Therefore, we have
2485: that the synchronization error between our two nodes will grow
2486: linearly as $\ell_{N}=1/d_{N}$, which is strictly monotonically
2487: increasing. As a result, as $N\to\infty$, we have that
2488: synchronization error will grow unbounded.
2489: 
2490: This scalability problem, however, can potentially be avoided
2491: using cooperative time synchronization as $N\to\infty$.  This is
2492: because in the limit of infinite density, the cooperative time
2493: synchronization technique allows every node in the network to see
2494: a set of identical equispaced zero-crossings.  As a result, in
2495: steady-state the synchronization error does not grow across the
2496: network. This comes about by using the high node density to
2497: average out random timing errors.  Thus, we find that cooperative
2498: time synchronization has very favorable scalability properties in
2499: the limit as $N\to\infty$.
2500: 
2501: \subsection{Network Density and Synchronization Performance Trade-Off}
2502: 
2503: The cooperative synchronization technique described in this paper
2504: provides us deterministic parameters that we can use for time
2505: synchronization in the limit as node density grows unbounded. In
2506: fact, as the node density grows, the observations that can be used
2507: for synchronization improve.  This means that our cooperative
2508: synchronization technique provides an effective trade-off between
2509: network density and synchronization performance. Such a trade-off
2510: has not existed before and will provide network designers an
2511: additional dimension over which to improve network synchronization
2512: performance.
2513: 
2514: The fundamental idea behind cooperative time synchronization is
2515: that by using spatial averaging, the errors inherent in each node
2516: can be averaged out.  By using observations that are an ``average"
2517: of the information from a large number of surrounding nodes,
2518: synchronization performance can be improved due to the higher
2519: quality observations.
2520: 
2521: From this point of view, it is clear that the particular technique
2522: described in this paper is but one example of using spatial
2523: averaging to improve synchronization.  Other techniques can also
2524: be developed using spatial averaging.  For example, nodes may not
2525: necessarily have to send odd-shaped pulses and use zero-crossing
2526: observations. Even though this setup takes advantage of the
2527: superposition of pulses, it has its drawbacks.  To keep the
2528: signals in phase, the jitter variance will limit the maximum
2529: frequency at which signals can be sent.  Instead, nodes may
2530: transmit ultra wideband pulses.  If the nodes surrounding a
2531: particular node $j$ each transmit an impulse at their estimate of
2532: an integer value of $t$, then due to timing errors in the
2533: surrounding nodes, node $j$ will see a cluster of pulse arrivals
2534: around this integer value of $t$.  Node $j$ can then take the
2535: sample mean of this cluster of pulses and use that as an
2536: observation, just like we used the zero-crossing as an observation
2537: in this paper.  This idea is illustrated in
2538: Fig.~\ref{fig:pulsetraincluster}. Such a technique based on ultra
2539: wideband pulses will also provide similar scalability properties.
2540: As a result, cooperative time synchronization really describes a
2541: class of techniques that can take advantage of spatial averaging
2542: to improve synchronization performance.
2543: 
2544: \begin{figure}[!h]
2545: \centerline{\psfig{file=pulsetraincluster.eps,width=12cm}}
2546: \vspace{-5mm} \caption[The connection with pulse-coupled
2547: oscillators.]{\small Clusters of ultra wideband pulses can be used
2548: for cooperative time synchronization.  In the the top figure, we
2549: illustrate the clusters of pulses around integer values of $t$. As
2550: the number of nodes increase, the sample mean will converge to the
2551: integer value of the reference time.  This idea is parallel to the
2552: use of zero-crossings shown in the bottom figure.}
2553: \label{fig:pulsetraincluster}
2554: \end{figure}
2555: 
2556: \subsection{Future Work}
2557: 
2558: With the goal of developing practical cooperative synchronization
2559: mechanisms, two keys areas of interest are cooperative
2560: synchronization in finite-sized networks and algorithm
2561: development.  First, the analysis of performance for finite-sized
2562: networks is very important. Determining when the asymptotic
2563: properties presented in this work are good predictors of
2564: performance in networks that may be large but still finite in size
2565: is important in terms of bridging the gap between our proposed
2566: ideas and practical systems. Preliminary, simulation-based work
2567: along these lines can be found in~\cite{HuS:03b}.  Second,
2568: developing practical techniques for cooperative time
2569: synchronization is essential for implementing spatial averaging in
2570: real networks.  Along these lines, one area of interest is
2571: determining what types of pulses should be used, i.e. odd-shaped
2572: pulses or ultra wideband pulses.
2573: 
2574: Furthermore, the ideas in this paper suggest a few other areas of
2575: interest for future work.  One is the issue of distributed
2576: modulation methods.  If we have the ability to generate an
2577: aggregate waveform with equispaced zero-crossings, by controlling
2578: the location of these crossings we can modulate information onto
2579: this waveform and use it to communicate with a far receiver.
2580: Preliminary work along these lines can be found in~\cite{HuS:03c}.
2581: Another issue is to study how the idea of spatial averaging that
2582: is so prevalent in this work contributes to synchronization that
2583: is observed in nature.
2584: 
2585: \pagebreak
2586: \appendix
2587: 
2588: {\bf Proof of Lemma~\ref{lemma:polarity_positive}.} \hspace{0.5cm}
2589: To show~(\ref{eqn:cond3a}), we consider
2590: \begin{eqnarray*}
2591: E(A_{max}K_{i}p(\tau_{1}-\tau_{0}-T_{i})) &=& A_{max}E(K_{i})E(p(\tau_{1}-\tau_{0}-T_{i})) \\
2592: &=& A_{max}E(K_{i})\int p(\tau_{1}-\tau_{0}-\psi)f_{T_{i}}(\psi)d\psi \\
2593: &=& -A_{max}E(K_{i})\int
2594: p(\psi-(\tau_{1}-\tau_{0}))f_{T_{i}}(\psi)d\psi
2595: \end{eqnarray*}
2596: Since $\tau_{1}<\tau_{0}$, we have that $\tau_{1}-\tau_{0}<0$
2597: implying that $p(\psi)$ is shifted to the left and the
2598: zero-crossing of $p(\psi)$ occurs at a negative value. $p(\psi)$
2599: is odd about its zero-crossing and $f_{T_{i}}(\psi)$ is symmetric
2600: about zero and strictly monotonically increasing on $(-\infty,0]$
2601: for all positive finite variance values.  Thus, it is clear that
2602: $\int p(\psi-(\tau_{1}-\tau_{0}))f_{T_{i}}(\psi)d\psi <0$ which
2603: makes $E(A_{max}K_{i}p(\tau_{1}-\tau_{0}-T_{i}))>0$.
2604: 
2605: Now, the expectation will vary with the variance of $T_{i}$ and
2606: the variance will range from a positive upper bound of
2607: $\bar{\sigma}^{2}/\alpha_{low}^{2}<B$ to a positive lower bound of
2608: $\bar{\sigma}^{2}/\alpha_{up}^{2}$, where recall that
2609: $\bar{\sigma}^{2}$ is a value determined by our choice of the
2610: pulse connection function. If we consider $\int
2611: p(\psi-(\tau_{1}-\tau_{0}))f_{T_{i}}(\psi)d\psi$ to be a function
2612: of the variance of $T_{i}$, then we see that it is bounded and
2613: continuous on the compact domain
2614: $[\bar{\sigma}^{2}/\alpha_{up}^{2},
2615: \bar{\sigma}^{2}/\alpha_{low}^{2}]$. Since we showed in the
2616: previous paragraph that
2617: $E(A_{max}K_{i}p(\tau_{1}-\tau_{0}-T_{i}))>0$ whenever $T_{i}$ has
2618: a nonzero finite variance, clearly
2619: $E(A_{max}K_{i}p(\tau_{1}-\tau_{0}-T_{i}))>0$ when
2620: $\textrm{Var}(T_{i})\in [\bar{\sigma}^{2}/\alpha_{up}^{2},
2621: \bar{\sigma}^{2}/\alpha_{low}^{2}]$. Thus, it is clear that
2622: $\gamma_{1}$ and $\gamma_{2}$ exist and~(\ref{eqn:cond3a}) is
2623: shown.
2624: 
2625: To show~(\ref{eqn:cond3b}), we consider
2626: \begin{eqnarray*}
2627: \textrm{Var}(A_{max}K_{i}p(\tau_{1}-\tau_{0}-T_{i}))&=& E(A_{max}^{2}K^{2}_{i}p^{2}(\tau_{1}-\tau_{0}-T_{i}))-E^{2}(A_{max}K_{i}p(\tau_{1}-\tau_{0}-T_{i})) \\
2628: &\leq& A_{max}^{2}E(K^{2}_{i})E(p^{2}(\tau_{1}-\tau_{0}-T_{i}))\\
2629: &\leq& A_{max}^{2}E(K^{2}_{i})\\
2630: &\leq& A_{max}^{2}
2631: \end{eqnarray*}
2632: where the second to last inequality follows from the fact that
2633: $E(p^{2}(\tau_{1}-\tau_{0}-T_{i}))$ is upper bounded by $1$. The
2634: last inequality follows since $E(K^{2}_{i})\leq 1$ by the fact
2635: that $0\leq K_{i}\leq 1$. Thus, we have shown~(\ref{eqn:cond3b}).
2636: 
2637: Next we define $S_{n} = \bar{M}_{1}(\tau_{1}) + \dots +
2638: \bar{M}_{n}(\tau_{1})$ and $m_{n} = E(S_{n}) =
2639: \mu_{1}+\ldots+\mu_{n}$. From~\cite{Feller:50} we have the
2640: following theorem
2641: \begin{theorem} \label{theorem:Feller}
2642: The convergence of the series
2643: \begin{displaymath}
2644: \sum \frac{\sigma_{i}^{2}}{i^{2}}
2645: \end{displaymath}
2646: implies that the strong law of large numbers will apply to the
2647: sequence of independent random variables $\bar{M}_{i}(\tau_{1})$.
2648: That is, again from~\cite{Feller:50}, for every pair $\epsilon>0$,
2649: $\delta>0$, there corresponds an $N$ such that
2650: \begin{displaymath}
2651: \textrm{Pr}\bigg\{\frac{|S_{n}-m_{n}|}{n}<\epsilon;\quad
2652: n=N,N+1,\ldots,N+r\bigg\}
2653: > 1-\delta
2654: \end{displaymath}
2655: for all $r>0$. \qquad $\bigtriangleup$
2656: \end{theorem}
2657: 
2658: We have shown~(\ref{eqn:cond3b}) so we have $\sigma_{i}^{2}<\gamma_{3}<\infty$.  Thus
2659: \[
2660: \lim_{N\to\infty} \sum_{i=1}^{N} \frac{\sigma_{i}^{2}}{i^{2}} \;\; \leq \;\;
2661: \lim_{N\to\infty} \sum_{i=1}^{N} \frac{\gamma_{3}}{i^{2}} \;\; = \;\;
2662: \gamma_{3}\frac{\pi^{2}}{6}.
2663: \]
2664: and we have convergence by the direct comparison test.  Therefore,
2665: we can apply Theorem~\ref{theorem:Feller} and get that for any
2666: pair $\epsilon>0$, $\delta>0$, we can find an $N$ such that
2667: \begin{eqnarray} \label{eqn:slln}
2668: \textrm{Pr}\bigg\{\bigg|\frac{S_{n}}{n}-\frac{m_{n}}{n}\bigg|<\epsilon;\quad
2669: n=N,N+1,\ldots,N+r\bigg\} > 1-\delta
2670: \end{eqnarray}
2671: for all $r>0$.
2672: 
2673: By~(\ref{eqn:cond3a}) we have that $\gamma_{2}>\mu_{i} > \gamma_{1} > 0$.  Thus, we can clearly see that
2674: \begin{displaymath}
2675: \frac{m_{n}}{n} > \gamma_{1}.
2676: \end{displaymath}
2677: Furthermore, since we keep the function $f_{\alpha}(s)$ constant
2678: as we increase the number of nodes in the network we get that
2679: $m_{n}/n$ converges to a constant $\eta(\tau_{1})$ given by
2680: \begin{eqnarray*}
2681: \eta(\tau_{1}) &=&
2682: A_{max}E(K_{i})\int_{\alpha_{low}}^{\alpha_{up}}
2683: \int_{-\infty}^{\infty} p(\tau_1-\tau_0-\psi) f_{T}(\psi,s) d\psi
2684: f_{\alpha}(s) ds \\
2685: &=& \int_{\alpha_{low}}^{\alpha_{up}} E(\bar{M}_{i}(\tau_{1},s))
2686: f_{\alpha}(s) ds.
2687: \end{eqnarray*}
2688: The above expression comes from the fact that since each
2689: $\mu_{i}=E(\bar{M}_{i}(\tau_{1}))$ is a function of $\alpha_{i}$,
2690: $m_{n}/n$ will converge to the average of the $\mu_{i}$ over
2691: $f_{\alpha}(s)$, the function that characterizes the set of
2692: $\alpha_{i}$'s. Therefore, given any $\epsilon$, we can find an
2693: $N'$ such that
2694: \begin{equation} \label{eq:means-converge}
2695: \bigg|\frac{m_{n}}{n}-\eta(\tau_{1})\bigg|< \epsilon
2696: \end{equation}
2697: for all $n>N'$.  Note that since $(m_{n}/n)>\gamma_{1}$, we have
2698: that $\eta(\tau_{1})\geq \gamma_{1}$. Since
2699: \begin{displaymath}
2700: \bigg|\frac{S_{n}}{n}-\eta(\tau_{1})\bigg| <
2701: \bigg|\frac{S_{n}}{n}-\frac{m_{n}}{n}\bigg|+
2702: \bigg|\frac{m_{n}}{n}-\eta(\tau_{1})\bigg|,
2703: \end{displaymath}
2704: using (\ref{eqn:slln}) and (\ref{eq:means-converge}) we have
2705: \begin{eqnarray*}
2706: \textrm{Pr}\bigg\{\bigg|\frac{S_{n}}{n}-\eta(\tau_{1})\bigg|<2\epsilon;\quad
2707: n=N'',N''+1,\ldots,N''+r\bigg\} > 1-\delta.
2708: \end{eqnarray*}
2709: for all $r>0$, where $N''=\max\{N,N'\}$. Thus, we have
2710: \begin{displaymath}
2711: \lim_{N\to\infty} \frac{1}{N} \sum_{i=1}^{N} \bar{M}_{i}(\tau_{1})
2712: =\eta(\tau_{1})
2713: >0
2714: \end{displaymath}
2715: almost surely. This completes the proof of Lemma~\ref{lemma:polarity_positive}. \qquad
2716: $\bigtriangleup$
2717: 
2718: {\bf Proof of Lemma~\ref{lemma:continuity1}.} \hspace{0.5cm}
2719: First, we start by finding an analytical expression for
2720: $|A_{\infty}(t)-A_{\infty}(t_{o})|$. From the proof of
2721: Lemma~\ref{lemma:polarity_positive} we have that
2722: \begin{displaymath}
2723: A_{\infty}(t) = A_{max}E(K_{i})\int_{\alpha_{low}}^{\alpha_{up}}
2724: \int_{-\infty}^{\infty} p(t-\tau_0-\psi) f_{T}(\psi,s) d\psi
2725: f_{\alpha}(s) ds.
2726: \end{displaymath}
2727: Therefore, $|A_{\infty}(t)-A_{\infty}(t_{o})|$ can be written as
2728: \begin{eqnarray*}
2729: \lefteqn{|A_{\infty}(t)-A_{\infty}(t_{o})|} \\
2730: & = &
2731: |A_{max}E(K_{i})\int_{\alpha_{low}}^{\alpha_{up}}\int_{-\infty}^{\infty}
2732: [p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)]
2733: f_{T}(\psi,s) f_{\alpha}(s)d\psi ds| \\
2734: & \leq & A_{max} \int_{\alpha_{low}}^{\alpha_{up}}\int_{-\infty}^{\infty} |p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)|f_{T}(\psi,s) f_{\alpha}(s)d\psi ds \\
2735: & = &  A_{max}
2736: \int_{\alpha_{low}}^{\alpha_{up}}\int_{-\tau_{nz}+t_{o}-\tau_{0}-|t-t_{o}|}^{\tau_{nz}+t_{o}-\tau_{0}+|t-t_{o}|}
2737: |p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)|
2738: f_{T}(\psi,s)f_{\alpha}(s) d\psi ds,
2739: \end{eqnarray*}
2740: where $E(K_{i})\leq 1$. The change in the limits of integration in
2741: the last equality comes from the fact that
2742: $p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)=0$ outside of $\psi \in
2743: [-\tau_{nz}+t_{o}-\tau_{0}-|t-t_{o}|,\tau_{nz}+t_{o}-\tau_{0}+|t-t_{o}|]$.
2744: This is the maximum interval over which
2745: $p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)$ can be non-zero. There
2746: is no need to take the absolute value of $f_{T}(\psi,s)$ and
2747: $f_{\alpha}(s)$ since they are always non-negative.
2748: 
2749: Our second step is to bound the inner integral.  Before doing so,
2750: we first show that the inside integral is in fact Riemann
2751: integrable. For any given $t$ and $t_{o}$, the inside integral is
2752: taken over a closed interval.  Over a closed interval, we know
2753: from Strichartz~\cite{Strichartz:00} that any bounded function
2754: that is continuous except at a finite number of points is Riemann
2755: integrable.  Furthermore, also from~\cite{Strichartz:00} we know
2756: that the sums and products of continuous functions are continuous.
2757: As well, if a function is continuous then the absolute value of
2758: that function is also continuous. $p(t)$ has at most $D=3$
2759: locations at which it is discontinuous and over any open interval
2760: not containing a discontinuity, $p(t)$ is uniformly continuous
2761: since $q(t)$ is uniformly continuous. $f_{T}(\psi,s)$ has $D'=0$
2762: discontinuities in $\psi$ for an given $s$ since it is Gaussian
2763: for any $s$.  And since $s\in [\alpha_{low},\alpha_{up}]$,
2764: $|f_{T}(\psi,s)|\leq G_{T}$ for all $\psi$ and $s$ ($G_{T}$
2765: occurring when $\psi=0$ and $s=\alpha_{up}$). Thus, since $p(t)$
2766: and $f_{T}(\psi,s)$ are continuous except at a finite number of
2767: points, we see that for given $s$, $t$, and $t_{0}$
2768: \begin{displaymath}
2769: |p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)| f_{T}(\psi,s)
2770: \end{displaymath}
2771: is also continuous in $\psi$ except at a finite number of points
2772: (at most $D'+2D$ points). This function is also bounded since the
2773: product of two bounded functions is bounded.  As a result, we see
2774: that the integral is Riemann integrable over any closed interval.
2775: 
2776: We now proceed to bound from above the value of this integral by
2777: first bounding the maximum value of the integral assuming no
2778: discontinuities and then introducing another term that bounds the
2779: maximum area contributed by the discontinuities. If we ignore the
2780: discontinuities and assume $p(t)$ is uniformly continuous, for any
2781: $m_{1}>0$ there exists a $n>0$ such that
2782: \begin{displaymath}
2783: |t-t_{o}|<\frac{1}{n} \Rightarrow |p(t)-p(t_{o})|<\frac{1}{m_{1}},
2784: \end{displaymath}
2785: for all $t$ and $t_{o}$.  As a result,
2786: $p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)$ can be made as small
2787: as desired by choosing the proper $n$ thus giving us
2788: $p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)<1/m_{1}$ for all $\psi$
2789: for an appropriate choice of $n$.
2790: 
2791: Furthermore, we note that $|p(t-\tau_{o}-\psi)| f_{T}(\psi,s) \leq
2792: G_{T}$ because $|p(t)|\leq 1$ and $|f_{T}(\psi,s)|\leq G_{T}$. The
2793: maximum possible jump at a discontinuity in the function
2794: $|p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)| f_{T}(\psi,s)$ is
2795: thus $2G_{T}$ and for any $|t-t_{o}|$, the maximum area
2796: contributed by each discontinuity is $2G_{T}|t-t_{o}|$.  As a
2797: result, for all $D'+2D$ discontinuities, the maximum area
2798: contribution will be no more than $2G_{T}|t-t_{o}|(D'+2D)$.
2799: 
2800: We can, therefore,  bound the inner integral as
2801: \begin{eqnarray*}
2802: \lefteqn{\int_{-\tau_{nz}+t_{o}-\tau_{0}-|t-t_{o}|}^{\tau_{nz}+t_{o}-\tau_{0}+|t-t_{o}|}
2803: |p(t-\tau_{o}-\psi)-p(t_{o}-\tau_{o}-\psi)| f_{T}(\psi,s) d\psi}
2804: \\  & \leq &
2805: \int_{-\tau_{nz}+t_{o}-\tau_{0}-|t-t_{o}|}^{\tau_{nz}+t_{o}-\tau_{0}+|t-t_{o}|} \frac{G_{T}}{m_{1}} d\psi+ 2G_{T}|t-t_{o}|(D'+2D) \\
2806: & = & \frac{G_{T}}{m_{1}}(2\tau_{nz}+2|t-t_{o}|)+ 2G_{T}|t-t_{o}|(D'+2D) \\
2807: & = & 2\frac{G_{T}}{m_{1}}\tau_{nz}+2\frac{G_{T}}{m_{1}}|t-t_{o}|
2808: + 2G_{T}|t-t_{o}|(D'+2D),
2809: \end{eqnarray*}
2810: where $|t-t_{o}|<1/n$.
2811: 
2812: What we have is that if $|t-t_{0}|<1/n$ then
2813: \begin{eqnarray*}
2814: \lefteqn{|A_{\infty}(t)-A_{\infty}(t_{o})|} \\
2815: & \leq & A_{max}
2816: \int_{\alpha_{low}}^{\alpha_{up}}\bigg(2\frac{G_{T}}
2817: {m_{1}}\tau_{nz}+2\frac{G_{T}}{m_{1}}|t-t_{o}|
2818: + 2G_{T}|t-t_{o}|(D'+2D)\bigg) f_{\alpha}(s) ds \\
2819: & \leq & A_{max}G_{\alpha}(\alpha_{up}-\alpha_{low})
2820: \bigg(2\frac{G_{T}}{m_{1}}\tau_{nz}+2\frac{G_{T}}{m_{1}}|t-t_{o}|
2821: + 2G_{T}|t-t_{o}|(D'+2D)\bigg)
2822: \end{eqnarray*}
2823: since $|f_{\alpha}(s)|<G_{\alpha}$ (defined in
2824: Section~\ref{sec:systemParameters}). We define $\bar{A}$ as
2825: \begin{displaymath}
2826: \bar{A}=A_{max}G_{\alpha}(\alpha_{up}-\alpha_{low}).
2827: \end{displaymath}
2828: 
2829: Now, for the third step of our proof we make
2830: \begin{eqnarray*}
2831: \lefteqn{|A_{\infty}(t)-A_{\infty}(t_{o})|}\\
2832: & \leq & \bar{A}\bigg(2\frac{G_{T}}{m_{1}}\tau_{nz}+2\frac{G_{T}}{m_{1}}|t-t_{o}|+ 2G_{T}|t-t_{o}|(D'+2D)\bigg)\\
2833: &<& \frac{1}{m},
2834: \end{eqnarray*}
2835: for any choice of $m>0$. We do this by making each of the three
2836: terms less than $1/(3m)$.
2837: 
2838: For the first term we want
2839: \begin{displaymath}
2840: \frac{2\bar{A}G_{T}\tau_{nz}}{m_{1}} < \frac{1}{3m}.
2841: \end{displaymath}
2842: We solve and get
2843: \begin{displaymath}
2844: m_{1} > 6m\bar{A}G_{T}\tau_{nz}.
2845: \end{displaymath}
2846: Since for any value of $m_{1}>0$ we can find an $n>0$, this
2847: condition can be satisfied.
2848: 
2849: For the third term we want
2850: \begin{displaymath}
2851: 2\bar{A}G_{T}(D'+2D)|t-t_{o}| < \frac{1}{3m}.
2852: \end{displaymath}
2853: This gives us
2854: \begin{displaymath}
2855: |t-t_{o}|< \frac{1}{6\bar{A}G_{T}(D'+2D)m}.
2856: \end{displaymath}
2857: Since the only requirement is $|t-t_{o}|<1/n$ for $n$ chosen by
2858: any given $m_{1}>0$, we can always choose $|t-t_{o}|$ as small as
2859: desired.  Thus, this condition can be satisfied.
2860: 
2861: With the second term we want the condition
2862: \begin{displaymath}
2863: \frac{2\bar{A}G_{T}}{m_{1}}|t-t_{o}| < \frac{1}{3m}
2864: \end{displaymath}
2865: which means that
2866: \begin{displaymath}
2867: \frac{|t-t_{o}|}{m_{1}} < \frac{1}{6m\bar{A}G_{T}}.
2868: \end{displaymath}
2869: Again, this condition can be satisfied since we can choose $m_{1}$
2870: as large as we want and $|t-t_{o}|$ as small as we want as long as
2871: $|t-t_{o}|<1/n$ for a given $m_{1}$.
2872: 
2873: Thus, for any $m>0$, we first choose
2874: $m_{1}>6m\bar{A}G_{T}\tau_{nz}$. Then, we find an $n'>0$ such that
2875: $|t-t_{o}|<1/n'$ implies that $|p(t)-p(t_{o})|<1/m_{1}$ for all
2876: $t$ and $t_{o}$ if we remove the discontinuities in $p(t)$. Then,
2877: if necessary, $n'$ is increased to $n$ so that $|t-t_{o}|<1/n$
2878: implies that $|t-t_{o}|< 1/(6\bar{A}G_{T}(D'+2D)m)$ and
2879: $|t-t_{o}|/m_{1} < 1/(6m\bar{A}G_{T})$. If no increase is
2880: necessary, then $n=n'$. With this choice of $n>0$,
2881: $|A_{\infty}(t)-A_{\infty}(t_{o})|<1/m$.  As a result, for any
2882: $m$, we can find an $n$ such that $|t-t_{o}|<1/n$ implies that
2883: $|A_{\infty}(t)-A_{\infty}(t_{o})| < 1/m$.  Thus, $A_{\infty}(t)$
2884: is continuous.
2885: 
2886: This completes the proof for Lemma \ref{lemma:continuity1}.
2887: $\bigtriangleup$
2888: 
2889: {\bf Proof of Theorem~\ref{theorem:main-delay}.} \hspace{0.5cm}
2890: Let us start by writing
2891: (\ref{eq:timesync-aggwaveform-withDelayAndFix}) as
2892: \begin{displaymath}
2893: A^{c_{1}}_{j,N}(t)\;\; = \;\;\sum_{i=1}^{N}
2894: \frac{A_{max}K_{fix}K_{j,i}}{N}
2895: p(t-\tau_{o}-T_{i}-D_{fix}-D_{j,i}) \;\; = \;\; \sum_{i=1}^{N}
2896: \frac{1}{N} \tilde{M}_{i}(t,s),
2897: \end{displaymath}
2898: where $\tilde{M}_{i}(t,s)\stackrel{\Delta}{=}A_{max}K_{fix}K_{j,i}
2899: p(t-\tau_{o}-T_{i}-D_{fix}-D_{j,i})$. Recall that the dependence
2900: on $s$ comes from the fact that the density of $T_{i}$ is a
2901: function of $\alpha_{i}$ which is characterized by
2902: $f_{\alpha}(s)$. This notation is analogous to the notation used
2903: in Section~\ref{sec:pulseProperties}. Following the steps in the
2904: proof of Lemma~\ref{lemma:polarity_positive}, we can quickly show
2905: that the limiting aggregate waveform at node $j$ will take on the
2906: form
2907: \begin{eqnarray} \label{eq:limitingWave-delayProof}
2908: \eta(t) =
2909: \int_{\alpha_{low}}^{\alpha_{up}}E(\tilde{M}_{i}(t,s))f_{\alpha}(s)ds,
2910: \end{eqnarray}
2911: where
2912: \begin{eqnarray*}
2913: \lefteqn{E(\tilde{M}_{i}(t,s)) } \\
2914:  & & = A_{max}\int_{-\infty}^{\infty}
2915: \int_{-\infty}^{0}
2916: \int_{0}^{\infty}g(-y)g(x)p(t-\tau_{0}-\psi-y-x)f_{D_{j}}(x)
2917: f_{D_{fix}}(y) f_{T}(\psi,s)dx dy d\psi,
2918: \end{eqnarray*}
2919: with $g(\cdot)=K(\delta^{-1}(\cdot))$. Therefore, we can prove
2920: Theorem~\ref{theorem:main-delay} in two steps:\begin{itemize}
2921: \item To show that $\eta(t)$ is odd about $\tau_{0}$, we need to
2922: show that $E(\tilde{M}_{i}(t,s))$ is odd in $t$ about $\tau_{0}$,
2923: i.e.
2924: $E(\tilde{M}_{i}(\tau_{0}+\xi,s))=-E(\tilde{M}_{i}(\tau_{0}-\xi,s))$
2925: for $\xi\geq0$. \item To show a zero-crossing at $\tau_{0}$, show
2926: that $E(\tilde{M}_{i}(\tau_{0},s))=0$.
2927: \end{itemize}
2928: These two steps come directly from the form of $\eta(t)$ in
2929: (\ref{eq:limitingWave-delayProof}).
2930: 
2931: We first show that
2932: $E(\tilde{M}_{i}(\tau_{0}+\xi,s))=-E(\tilde{M}_{i}(\tau_{0}-\xi,s))$
2933: for $\xi\geq 0$. Using the fact that
2934: $K_{fix}=K(\delta^{-1}(-D_{fix}))=g(-D_{fix})$ and
2935: $K_{j,i}=g(D_{j,i})$, we have the following:
2936: \begin{eqnarray*}
2937: \lefteqn{E(\tilde{M}_{i}(\tau_{0}+\xi,s))} \\ &=&
2938: E\big(A_{max}g(-D_{fix})
2939: g(D_{j,i}) p(\xi-[T_{i}+D_{fix}+D_{j,i}])\big) \\
2940: &\stackrel{\small{(a)}}{=}& -E\big(A_{max}g(-D_{fix})
2941: g(D_{j,i}) p(-\xi+[T_{i}+D_{fix}+D_{j,i}])\big) \\
2942: &=& -A_{max}\int_{-\infty}^{\infty} \int_{-\infty}^{0}
2943: \int_{0}^{\infty}g(-y)g(x)p(-\xi+[\psi+y+x])f_{D_{j}}(x)
2944: f_{D_{fix}}(y) f_{T}(\psi,s)dx dy d\psi \\
2945: &\stackrel{\small{(b)}}{=}& A_{max}\int_{\infty}^{-\infty}
2946: \int_{\infty}^{0}
2947: \int_{0}^{-\infty}g(z)g(-u)p(-\xi-[w+z+u])f_{D_{j}}(-u)
2948: f_{D_{fix}}(-z) f_{T}(-w,s)du dz dw \\
2949: &\stackrel{\small{(c)}}{=}& -A_{max}\int_{-\infty}^{\infty}
2950: \int_{-\infty}^{0}
2951: \int_{0}^{\infty}g(-u)g(z)p(-\xi-[w+u+z])f_{D_{j}}(z)
2952: f_{D_{fix}}(u) f_{T}(w,s)dz du dw \\
2953: &=& -E\big(A_{max}g(-D_{fix})
2954: g(D_{j,i}) p(-\xi-[T_{i}+D_{fix}+D_{j,i}])\big) \\
2955: &=& -E(\tilde{M}_{i}(\tau_{0}-\xi,s)),
2956: \end{eqnarray*}
2957: where $(a)$ follows because $p(t)=-p(-t)$ and at $(b)$ we did a
2958: change of variables with $u=-x$, $w=-\psi$, and $z=-y$.  $(c)$
2959: follows from $f_{T}(x,s)=f_{T}(-x,s)$ and
2960: $f_{D_{j}}(x)=f_{D_{fix}}(-x)$.  We thus have
2961: $E(\tilde{M}_{i}(\tau_{0}+\xi,s))=-E(\tilde{M}_{i}(\tau_{0}-\xi,s))$
2962: for $\xi\geq0$.
2963: 
2964: $E(\tilde{M}_{i}(\tau_{0},s))=0$ can now be shown as follows.
2965: Using the just proven fact that
2966: $E(\tilde{M}_{i}(\tau_{0}+\xi,s))=-E(\tilde{M}_{i}(\tau_{0}-\xi,s))$
2967: for $\xi\geq0$, setting $\xi=0$ gives us
2968: $E(\tilde{M}_{i}(\tau_{0},s))=-E(\tilde{M}_{i}(\tau_{0},s))$. This
2969: implies that $E(\tilde{M}_{i}(\tau_{0},s))=0$.
2970: 
2971: This completes the proof for Theorem~\ref{theorem:main-delay}.
2972: $\bigtriangleup$
2973: 
2974: 
2975: 
2976: %\bibliographystyle{plain}
2977: %\bibliography{library}
2978: \begin{thebibliography}{10}
2979: 
2980: \bibitem{LedecziVMSBNK:05}
2981: A.~Ledeczi, P.~Volgyesi, M.~Maroti, G.~Simon, G.~Balogh, A.~Nadas,
2982: B.~Kusy, S.~Dora and G.~Pap.
2983: \newblock{Multiple Simultaneous Acoustic Source Localization in Urban
2984: Terrain}.
2985: \newblock In {\em Proc. Information Processing in Sensor Networs
2986: (IPSN'05)}, Los Angeles, CA, 2005.
2987: 
2988: \bibitem{BuckB:76}
2989: J.~Buck and E.~Buck.
2990: \newblock{Synchronous Fireflies}.
2991: \newblock {\em Scientific American}, 234:74-85, 1976.
2992: 
2993: \bibitem{Chen:94}
2994: C.~Chen.
2995: \newblock{Threshold Effects on Synchronization of Pulse-Coupled
2996: Oscillators}.
2997: \newblock {\em Physical Review E}, 49(4):2668-2672, 1994.
2998: 
2999: \bibitem{CorralPDA:95}
3000: A.~Corral, C.~J. P\'erez, A.~D\'{\i}az-Guilera and A.~Arenas.
3001: \newblock{Self-Organized Criticality and Synchronization in a
3002: Lattice Model of Integrate-and-Fire Oscillators}.
3003: \newblock{\em Physical Review Letters}, 74(1):118-121, 1995.
3004: 
3005: \bibitem{DiazGuerraPA:98}
3006: A.~D\'{\i}az-Guilera, C.~J. P\'erez and A.~Arenas.
3007: \newblock{Mechanism of Synchronization and Pattern Formation in a
3008: Lattice of Pulse-Coupled Oscillators}.
3009: \newblock{\em Physical Review E}, 57(4):3820-3828, 1998.
3010: 
3011: \bibitem{BarriacMM:04}
3012: B.~Barriac, R.~Mudumbai and U.~Madhow.
3013: \newblock{Distributed Beamforming for Information Transfer in
3014: Sensor Networks}.
3015: \newblock In {\em Proc. International Symposium on Information Processing in Sensor Networks
3016: (IPSN)}, Berkeley, CA, 2004.
3017: 
3018: \bibitem{OchiaiMPT:05}
3019: H.~Ochiai, P.Mitran, H.~V. Poor and V.~Tarokh.
3020: \newblock{Collaborative Beamforming for Distributed Wireless Ad
3021: Hoc Sensor Networks}.
3022: \newblock{\em IEEE Transactions on Signal Processing},
3023: 53(11):4110-4124, 2005.
3024: 
3025: \bibitem{ElsonGE:02}
3026: J.~Elson, L.~Girod, and D.~Estrin.
3027: \newblock {Fine-Grained Network Time Syncrhonization using Reference
3028:   Broadcasts}.
3029: \newblock In {\em Proc. 5th Symp. Op. Syst. Design Implementation (OSDI)},
3030:   Boston, MA, 2002.
3031: 
3032: \bibitem{ErnstPG:98}
3033: U.~Ernst, K.~Pawelzik and T.~Geisel.
3034: \newblock{Delay-Induced Multistable Synchronization of Biological
3035: Oscillators}.
3036: \newblock{\em Physical Review E}, 57(2):2150-2162, 1998.
3037: 
3038: \bibitem{Feller:50}
3039: W.~Feller.
3040: \newblock{\em{An Introduction to Probability Theory and its Applications}}.
3041: \newblock John Wiley \& Sons, Inc., 1968.
3042: 
3043: \bibitem{GaneriwalKW:03}
3044: S.~Ganeriwal, R.~Kumar and M.~B. Srivastava.
3045: \newblock{Timing-Sync Protocol for Sensor Networks}.
3046: \newblock In {\em Proc. First ACM Conference on Embedded Networked
3047: Sensor Systems (SenSys)}, Los Angeles, CA, November 2003.
3048: 
3049: \bibitem{Gerstner:96}
3050: W.~Gerstner.
3051: \newblock{Rapid Phase Locking in Systems of Pulse-Coupled
3052: Oscillators with Delays}.
3053: \newblock{\em Physical Review Letters}, 76(10):1755-1758, 1996.
3054: 
3055: \bibitem{GreunenR:03}
3056: J.~van Greunen and J.~Rabaey.
3057: \newblock{Lightweight Time Synchronization for Sensor Networks}.
3058: \newblock In {\em Proc. 2nd ACM International Workshop on Wireless
3059: Sensor Networks and Applications (WSNA 2003)}, San Diego, CA,
3060: September 2003.
3061: 
3062: \bibitem{GuardiolaDLP:00}
3063: X.~Guardiola, A.~D\'{\i}az-Guilera, M.~Llas and C.~J. P\'erez.
3064: \newblock{Synchronization, Diversity, and Topology of Networks of
3065: Integrate and Fire Oscillators}.
3066: \newblock{\em Physical Review E}, 62(4):5565-5570, 2000.
3067: 
3068: \bibitem{GuptaK:98}
3069: P.~Gupta and P.~R. Kumar.
3070: \newblock {Critical Power for Asymptotic Connectivity in Wireless Networks}.
3071: \newblock In W.~M. McEneany, G.~Yin, and Q.~Zhang, editors, {\em Stochastic
3072:   Analysis, Control, Optimization and Applications: A Volume in Honor of W. H.
3073:   Fleming}. Birkhauser, 1998.
3074: 
3075: \bibitem{HerzH:95}
3076: A.~Herz and J.~J. Hopfield.
3077: \newblock{Earthquake Cycles and Neural Reverberations: Collective
3078: Oscillations in Systems with Pulse-Coupled Threshold Elements}.
3079: \newblock{\em Physical Review Letters}, 75(6):1222-1225, 1995.
3080: 
3081: \bibitem{HongS:04}
3082: Y.~Hong and A.~Scaglione.
3083: \newblock{A Scalable Synchronization Protocol for Large Scale
3084: Sensor Networks and its Applications}.
3085: \newblock {\em IEEE Journal on Selected Areas in Communications (JSAC)},
3086: 23(5):1085-1099, May 2005.
3087: 
3088: \bibitem{Werner-AllenTPWN:05}
3089: G.~Werner-Allen, G.~Tewari, A.~Patel, M.~Welsh, and R.~Nagpal.
3090: \newblock{Firefly-Inspired Sensor Network Synchronicity with Realistic Radio
3091: Effects}.
3092: \newblock In {\em Proc. SenSys'05}, San Diego, CA, November 2005.
3093: 
3094: \bibitem{HuS:03b}
3095: A.~Hu and S.~D. Servetto.
3096: \newblock {Algorithmic Aspects of the Time Synchronization Problem in
3097:   Large-Scale Sensor Networks}.
3098: \newblock ACM/Kluwer Mobile Networks and Applications. Special Issue on Wireless Sensor
3099: Networks. 10:491-503, 2005.
3100: 
3101: \bibitem{HuS:03c}
3102: A.~Hu and S.~D. Servetto.
3103: \newblock {dFSK: {\em Distributed} Frequency Shift Keying Modulation in Dense
3104:   Sensor Networks}.
3105: \newblock In {\em Proc. IEEE Int. Conf. Commun. (ICC)}, Paris, France, 2004.
3106: 
3107: \bibitem{Izhikevich:99}
3108: E.~M. Izhikevich.
3109: \newblock{Weakly Pulse-Coupled Oscillators, FM Interations,
3110: Synchronization, and Oscillatory Associative Memory}.
3111: \newblock{\em IEEE Trans. Neural Networks}, 10(3):508-526, 1999.
3112: 
3113: \bibitem{Jalife:84}
3114: J.~Jalife.
3115: \newblock{Mutual Entrainment and Electrical Coupling as Mechanisms for
3116: Synchronous Firing of Rabbit Sinoatrial Pacemaker Cells}.
3117: \newblock {\em J. Physiol.}, 356:221-243, 1984.
3118: 
3119: \bibitem{Kay:93}
3120: S.~M. Kay.
3121: \newblock {\em {Fundamentals of Statistical Signal Processing: Estimation
3122:   Theory}}.
3123: \newblock PTR Prentice Hall, Inc., 1993.
3124: 
3125: \bibitem{KellyEM:03}
3126: C.~Kelly IV, V.~Ekanayake, and R.~Manohar.
3127: \newblock {SNAP: A Sensor Network Asynchronous Processor}.
3128: \newblock In {\em Proc. 9th Int. Symp. Async. Circ. Syst.}, Vancouver, BC,
3129:   2003.
3130: 
3131: \bibitem{Kuramoto:91}
3132: Y.~Kuramoto.
3133: \newblock{Collective Synchronization of Pulse-Coupled Oscillators and Excitable
3134: Units}.
3135: \newblock{\em Physica D}, 50:15-30, 1991.
3136: 
3137: \bibitem{Lamport:78}
3138: L.~Lamport.
3139: \newblock {Time, Clocks, and the Ordering of Events in a Distributed System}.
3140: \newblock {\em Comm. ACM}, 21(4):558--565, 1978.
3141: 
3142: \bibitem{LiLBH:02}
3143: H.~Li, A.~Lal, J.~Blanchard, and D.~Henderson.
3144: \newblock {Self-Reciprocating Radioisotope-Powered Cantilever}.
3145: \newblock {\em J. Applied Phys.}, 92(2):1122--1127, 2002.
3146: 
3147: \bibitem{LucarelliW:04}
3148: D.~Lucarelli and I.~Wang.
3149: \newblock{Decentralized Synchroniztion Protocols with Nearest
3150: Neighbor Communication}.
3151: \newblock In {\em Proc. SenSys'04}, Baltimore, Maryland, 2004.
3152: 
3153: \bibitem{MarotiKSL:04}
3154: M.~Maroti, B.~Kusy, G.~Simon and A.~Ledeczi.
3155: \newblock {The Flooding Time Synchronization Protocol}.
3156: \newblock In {\em Proc. 2nd International Conference on Embedded
3157: Neteworked Sensor Systems}, Baltimore, MD, November 2004.
3158: 
3159: \bibitem{MatharM:96}
3160: R.~Mathar and J.~Mattfeldt.
3161: \newblock{Pulse-Coupled Decentral Synchronization}.
3162: \newblock{\em SIAM Journal on Applied Mathematics},
3163: 56(4):1094-1106, 1996.
3164: 
3165: \bibitem{McClintock:71}
3166: M.~K. McClintock
3167: \newblock{Menstrual Synchrony and Suppression}.
3168: \newblock {\em Nature}, 229:244-245, 1971.
3169: 
3170: \bibitem{MirolloS:90}
3171: R.~E. Mirollo and S.~H. Strogatz.
3172: \newblock {Synchronization of Pulse-Coupled Biological Oscillators}.
3173: \newblock {\em SIAM J. Appl. Math.}, 50(6):1645--1662, 1990.
3174: 
3175: \bibitem{Poor:94}
3176: H.~V. Poor.
3177: \newblock {\em {An Introduction to Signal Detection and Estimation}}.
3178: \newblock Springer-Verlag, 1994.
3179: 
3180: \bibitem{Roberts:03}
3181: N.~Roberts.
3182: \newblock{Phase Noise and Jitter: A Primer for Digital Designers}.
3183: \newblock{{\tt
3184: http://www.eedesign.com/showArticle. jhtml?articleID=16501598}},
3185: 2003.
3186: 
3187: \bibitem{ShermanRK:88}
3188: A.~Sherman, J.~Rinzel and J.~Keizer.
3189: \newblock{Emergence of Organized Bursting in Clusters of
3190: Pancreatic Beta-Cells by Channel Sharing}.
3191: \newblock {\em Biophys. J.}, 54:411-425, 1988.
3192: 
3193: \bibitem{SichitiuV:03}
3194: M.~L. Sichitiu and C.~Veerarittiphan.
3195: \newblock{Simple, Accurate Time Synchronization for Wireless
3196: Sensor Networks}.
3197: \newblock In {\em Proc. IEEE Wireless Communication and Networking
3198: Conference (WCNC 2003)}, New Orleans, LA, March 2003.
3199: 
3200: \bibitem{SmithCN:94}
3201: L.~S. Smith, D.~E. Cairns and A.~Nschwitz.
3202: \newblock{Synchronization of Integrate-and-Fire Neurons with
3203: Delayed Inhibitory Lateral Connections}.
3204: \newblock In {\em Proc. International Conference on Artificial Neural
3205: Networks (ICANN)}, 1994.
3206: 
3207: \bibitem{stark-woods}
3208: H.~Stark and J.~Woods.
3209: \newblock {\em {P}robability, {R}andom {P}rocesses, and {E}stimation {T}heory
3210:   for {E}ngineers}.
3211: \newblock Prentice Hall, Inc., 2nd edition, 1994.
3212: 
3213: \bibitem{Strichartz:00}
3214: R.~S. Strichartz.
3215: \newblock {\em {The Way of Analysis}}.
3216: \newblock Jones and Bartlett Publishers, 2000.
3217: 
3218: \bibitem{Strogatz:03}
3219: S.~Strogatz.
3220: \newblock {\em Sync: The Emerging Science of Spontaneous Order}.
3221: \newblock Theia, 2003.
3222: 
3223: \bibitem{VanVreeswijkA:93}
3224: C.~Vanvreeswijk and L.~F. Abbott.
3225: \newblock{Self-Sustained Firing in Populations of
3226: Integrate-and-Fire Neurons}.
3227: \newblock {\em SIAM Journal on Applied Mathematics},
3228: 53(1):253-264, 1993.
3229: 
3230: \bibitem{Walker:69}
3231: T.~J. Walker.
3232: \newblock{Acoustic Synchrony: Two Mechanisms in the Snowy Tree Cricket}.
3233: \newblock {\em Science}, 166:891-894, 1969.
3234: 
3235: \bibitem{WarnekLLP:01}
3236: B.~Warneke, M.~Last, B.~Liebowitz, and K.~S.~J. Pister.
3237: \newblock {Smart Dust: Communicating with a Cubic-Millimeter Computer}.
3238: \newblock {\em IEEE Computer Mag.}, 34(1):44--51, 2001.
3239: 
3240: \end{thebibliography}
3241: 
3242: \pagebreak
3243: 
3244: \begin{biography}{An-swol Hu} was born in New York State and grew
3245: up in California.  He received his B.S. in Electrical Engineering
3246: from Stanford University in 2002.  Currently he is a Ph.D.
3247: candidate in the School of Electrical and Computer Engineering at
3248: Cornell University.  His research interests include applied
3249: statistics and statistical signal processing, with applications to
3250: sensor networks.
3251: \end{biography}
3252: 
3253: \begin{biography}{Sergio D.\ Servetto} was born in Argentina, on
3254: January 18, 1968.  He received a Licenciatura en Informatica from
3255: Universidad Nacional de La Plata (UNLP, Argentina) in 1992, and
3256: the M.Sc. degree in Electrical Engineering and the Ph.D. degree in
3257: Computer Science from the University of Illinois at
3258: Urbana-Champaign (UIUC), in 1996 and 1999.  Between 1999 and 2001,
3259: he worked at the Ecole Polytechnique Federale de Lausanne (EPFL),
3260: Lausanne, Switzerland. Since Fall 2001, he has been an Assistant
3261: Professor in the School of Electrical and Computer Engineering at
3262: Cornell University, and a member of the field of Applied
3263: Mathematics.  He was the recipient of the 1998 Ray Ozzie
3264: Fellowship, given to ``outstanding graduate students in Computer
3265: Science,'' and of the 1999 David J. Kuck Outstanding Thesis Award,
3266: for the best doctoral dissertation of the year, both from the
3267: Dept. of Computer Science at UIUC.  He is also the recipient of a
3268: 2003 NSF CAREER Award.  His research interests are centered around
3269: information theoretic aspects of networked systems, with a current
3270: emphasis on problems that arise in the context of large-scale
3271: sensor networks.
3272: 
3273: \end{biography}
3274: 
3275: \end{document}
3276: 
3277: