routing to mobile users by exploiting mobility prediction in wireless mesh …kg407mt1632/... ·...

99
ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH NETWORKS A DISSERTATION SUBMITTED TO THE DEPARTMENT OF ELECTRICAL ENGINEERING AND THE COMMITTEE ON GRADUATE STUDIES OF STANFORD UNIVERSITY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY HyungJune Lee August 2010

Upload: others

Post on 17-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY

PREDICTION IN WIRELESS MESH NETWORKS

A DISSERTATION

SUBMITTED TO THE DEPARTMENT OF ELECTRICAL

ENGINEERING

AND THE COMMITTEE ON GRADUATE STUDIES

OF STANFORD UNIVERSITY

IN PARTIAL FULFILLMENT OF THE REQUIREMENTS

FOR THE DEGREE OF

DOCTOR OF PHILOSOPHY

HyungJune Lee

August 2010

Page 2: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

http://creativecommons.org/licenses/by-nc/3.0/us/

This dissertation is online at: http://purl.stanford.edu/kg407mt1632

© 2010 by HyungJune Lee. All Rights Reserved.

Re-distributed by Stanford University under license with the author.

This work is licensed under a Creative Commons Attribution-Noncommercial 3.0 United States License.

ii

Page 3: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

I certify that I have read this dissertation and that, in my opinion, it is fully adequatein scope and quality as a dissertation for the degree of Doctor of Philosophy.

Leonidas Guibas, Primary Adviser

I certify that I have read this dissertation and that, in my opinion, it is fully adequatein scope and quality as a dissertation for the degree of Doctor of Philosophy.

Fouad Tobagi, Co-Adviser

I certify that I have read this dissertation and that, in my opinion, it is fully adequatein scope and quality as a dissertation for the degree of Doctor of Philosophy.

Nicholas Bambos

Approved for the Stanford University Committee on Graduate Studies.

Patricia J. Gumport, Vice Provost Graduate Education

This signature page was generated electronically upon submission of this dissertation in electronic format. An original signed hard copy of the signature page is on file inUniversity Archives.

iii

Page 4: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Abstract

With the advent of ubiquitous wireless networks, supporting user mobility has become

crucial. Routing algorithms face challenges in supporting mobility while remaining

energy efficient. Mobility of human or vehicle makes wireless links in these mobile

networks much more volatile than the links in wireless networks of stationary nodes,

and the wireless connectivity varies frequently due to moving speeds. Hence reliable

data delivery to mobile users is often hard to achieve.

In this thesis, we propose a new routing algorithm for wireless mesh networks with

mobile users based on the following components: (i) predicting likely next association

node of mobile user (short-term mobility prediction), and (ii) predicting a sequence

of the future association nodes of mobile user (long-term mobility prediction). Our

approach is to understand and characterize the mobility of the mobile users by looking

at connectivity patterns over stationary mesh nodes using past history of connectivity

information. Our main contribution is the design of techniques that can be used by

routing algorithms to leverage the predictive knowledge of user mobility to efficiently

deliver data to those users. This work enables a long-term routing plan through a

network optimization process, called data stashing. The data stashing scheme enables

reliable data delivery from stationary mesh nodes to mobile users. In this scheme,

each mesh node selects a set of possible association nodes on which to stash its data,

to be picked up whenever the mobile user passes the stashing node.

We show that data stashing significantly decreases routing cost for delivering data

from stationary mesh nodes to multiple mobile users compared to immediate routing

protocols where mesh nodes immediately deliver data to the last known association

nodes of mobile users. We also show that the scheme provides better load balancing,

iv

Page 5: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

avoiding collisions and consuming energy resources evenly throughout the network,

leading to longer overall network lifetime over the immediate routing protocols. More

importantly, we demonstrate that given even limited information about the future

node associations of mobile users, optimization of routing paths leads to significant

improvements in routing performance.

v

Page 6: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Acknowledgments

I am so blessed to enjoy my graduate student life at Stanford. The great sunny

weather in the Bay Area kept me staying with positive and active mind, and pro-

vided a great environment to engage in free thinking without constraint in indoor

and outdoor atmospheres. I enjoyed the high quality courses offered by the distin-

guished professors at Stanford both in Electrical Engineering and Computer Science.

I was able to learn many state-of-the-art technical contents from in-depth theoretical

knowledge to practical system implementation, which have been essential research

tools for my Ph.D. research work.

First of all, I would like to thank my Ph.D. advisor, Leonidas Guibas for his

valuable and insightful advising throughout my Ph.D. study. He provided me with

enough freedom to choose interesting research topics, and taught me a variety of re-

search essentials – brainstorming from group discussion, positioning research work,

and interdisciplinary methodology by introducing many different approaches from

other research areas. I learned how to communicate research ideas to people who do

not necessarily have the same research background. I gave many research presenta-

tions during the group meetings and improved my presentation skills based on his

feedback. I learned a lot from these valuable opportunities.

I also thank Fouad Tobagi and Nicholas Bambos for serving as my reading com-

mittee. Thanks to their helpful suggestions and feedback, I was able to improve and

finalize this dissertation.

Next, I would like to thank our Guibas group members for their valuable feed-

back and suggestions throughout my research. Especially, Martin Wicke, Omprakash

vi

Page 7: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Gnawali, Arik Motskin, Branislav Kusy, and Nikola Milosavljevic have been great col-

laborators. Numerous fruitful discussions enabled me to develop initially crude ideas

into publishable research work. I also thank Kyle Heath, Primoz Skraba, Mirela Ben-

Chen, Dmitriy Morozov, Eunjoon Cho, Kevin Wong, Xiaoye Jiang, Qixing Huang,

Daniel Chen, and others for being my colleagues and having great moments with me

in the office.

I would also like to express my gratitude to my funding sources: Samsung Schol-

arship and Army High Performance Computing Research Center (AHPCRC) for sup-

porting my graduate studies and research work.

I would like to thank my mother, father, grand mother, and my older brother

for their love, faith, and sacrifice throughout my life. Their prayers enabled me to

overcome hardships and difficulties upon me through God’s way. Without them, I

would never have finished my Ph.D. study. I thank my beloved wife, Haejin Song.

She has been always on my side, and supportive with her love and exceptionally

beautiful singing. Without her, everything that I achieved with all my effort would

be meaningless. This dissertation is a result of her constant love and encouragement.

I also thank my parents-in-law for all their love and support for our family of Haejin

and me.

Finally, I devote this dissertation to my Savior and God, Jesus Christ for His

grace, mercy, and love in my entire life.

vii

Page 8: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Contents

Abstract iv

Acknowledgments vi

1 Introduction 1

1.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.1 Mesh Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.2 Mobile Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1.3 Association Nodes . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2 Main Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Thesis Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.3.1 Short-Term Mobility Prediction . . . . . . . . . . . . . . . . . 8

1.3.2 Long-Term Mobility Prediction . . . . . . . . . . . . . . . . . 9

1.3.3 Predictive Data Delivery . . . . . . . . . . . . . . . . . . . . . 11

2 Short-Term Mobility Prediction 13

2.1 Short-Term Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.2 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.4 Constructing the Mobility Model . . . . . . . . . . . . . . . . . . . . 16

2.4.1 Mobility Graph . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.4.2 Mobility Graph Extraction . . . . . . . . . . . . . . . . . . . . 21

2.5 Connectivity Prediction . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.5.1 Matching Segments Using Dynamic Time Warping . . . . . . 24

viii

Page 9: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

2.6 Empirical Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.6.1 Evaluation Setup . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.6.2 Prediction Performance . . . . . . . . . . . . . . . . . . . . . . 28

2.7 Summary and Discussion . . . . . . . . . . . . . . . . . . . . . . . . . 31

3 Long-Term Mobility Prediction 33

3.1 Long-Term Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.2 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.3 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

3.4 Constructing the Mobility Model . . . . . . . . . . . . . . . . . . . . 37

3.4.1 Trajectory Representation . . . . . . . . . . . . . . . . . . . . 38

3.4.2 Similarity Measure . . . . . . . . . . . . . . . . . . . . . . . . 38

3.4.3 Cluster Representation . . . . . . . . . . . . . . . . . . . . . . 39

3.5 Connectivity Prediction . . . . . . . . . . . . . . . . . . . . . . . . . 42

3.5.1 Cluster Matching . . . . . . . . . . . . . . . . . . . . . . . . . 42

3.5.2 Alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

3.6 Empirical Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

3.7 Summary and Discussion . . . . . . . . . . . . . . . . . . . . . . . . . 47

4 Predictive Data Delivery 48

4.1 Routing Benefits from Mobility Prediction . . . . . . . . . . . . . . . 49

4.2 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.3 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

4.3.1 Reactive Approach . . . . . . . . . . . . . . . . . . . . . . . . 53

4.3.2 Proactive Approach . . . . . . . . . . . . . . . . . . . . . . . . 54

4.3.3 Predictive Approach . . . . . . . . . . . . . . . . . . . . . . . 54

4.4 Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

4.5 Network Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . 56

4.6 Empirical Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

4.6.1 Evaluation Setup . . . . . . . . . . . . . . . . . . . . . . . . . 58

4.6.2 Network Performance . . . . . . . . . . . . . . . . . . . . . . . 61

4.7 Summary and Discussion . . . . . . . . . . . . . . . . . . . . . . . . . 72

ix

Page 10: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

5 Conclusion 75

5.1 Future Directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Bibliography 78

x

Page 11: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

List of Figures

1.1 Overview of our routing algorithm using predictive knowledge of the

anticipated association nodes . . . . . . . . . . . . . . . . . . . . . . 6

2.1 The differences between mobility and connectivity graph . . . . . . . 18

2.2 Extracting the mobility graph from an observation sequence . . . . . 20

2.3 Dynamic time warping determines the best-matching outgoing edge

and predicts the next relay node. . . . . . . . . . . . . . . . . . . . . 23

2.4 Dynamic time warping example . . . . . . . . . . . . . . . . . . . . . 24

2.5 Routes used for training and testing short-term mobility prediction . 27

2.6 Experimental evaluation of prediction algorithm for varying time to

transition to the node . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.7 Experimental evaluation of prediction algorithm depending on speed

variance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.8 Impact of size and variability of training data . . . . . . . . . . . . . 30

3.1 Clustering and alignment procedures. . . . . . . . . . . . . . . . . . . 41

3.2 Sequences belonging to a cluster, the aligned sequences, and their

graphical profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

3.3 Sequence alignment of a partial trajectory with a cluster profile. . . . 44

3.4 Typical trajectories of moving buses in UMass from the DieselNet dataset 45

3.5 Average entropy of wireless associations within a cluster . . . . . . . 46

4.1 Optimal selection of stashing nodes for each mesh node, given a set of

trajectories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

xi

Page 12: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

4.2 Wireless mesh sensor network testbed in Clark building at Stanford . 58

4.3 Wireless mesh sensor network in downtown San Francisco for simulation 59

4.4 Routing cost depending on the number of mobile sinks in Clark testbed. 60

4.5 Fraction of packets stashed on nodes that are actually visited by the

mobile node depending on number of nodes used for prediction in the

DieselNet dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4.6 Moving paths of mobile vehicles in simulation dataset . . . . . . . . . 64

4.7 Routing cost and delivery reliability depending on the number of mo-

bile sinks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.8 Routing cost and delivery reliability depending on the number of pre-

dicted trajectory nodes for 10 mobile sinks . . . . . . . . . . . . . . . 67

4.9 Packet delivery reliability depending on number of nodes used for pre-

diction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.10 Distributions of the number of hops and node transition time of mobile

sinks in evaluation data, and packet delay performance . . . . . . . . 69

4.11 Running time for a sensor node to solve an optimization problem for

stashing in each platform/tool depending on the number of mobile sinks. 70

4.12 Load balancing throughout the networks (for 10 mobile sinks case). . 71

4.13 Packet delivery reliability depending on speed of mobile users . . . . 72

4.14 Storage overhead over the mesh nodes for 10 mobile sinks. . . . . . . 73

xii

Page 13: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Chapter 1

Introduction

A variety of wireless devices based on 802.11x, ZigBee, WiMAX, and Bluetooth have

become affordable for large scale use in mobile and wireless applications and are

ubiquitous in our working and living environments. These wireless devices typically

rely on infrastructure (such as cellphone towers or wireless access points) for com-

munication. When such infrastructure is not available, or when the infrastructure is

not in direct range of radio transmission of these devices, they can be configured to

form a multi-hop wireless network called mesh networks. The mesh nodes, which are

nodes in these mesh networks, act not only as packet source or destination, but also

as routers. The mesh nodes forward data from the source to the destination, which

might be multiple hops away. Recently, mesh networks have been publicly deployed to

support Wi-Fi sharing over San Francisco area [59], Mountain View in California [25],

and Champaign-Urbana in Illinois [9]. A special type of mesh nodes equipped with

sensors are deployed and configured to form sensor mesh networks in Cambridge,

MA [61], and UC Berkeley campus [30], for monitoring weather conditions and air

pollutants or auditing electrical usage in buildings.

Many mesh network applications require communication between mobile wireless

devices moving across the network and the nodes in the mesh network. For example,

humans or vehicles carry wireless devices and communicate with the mesh networks

in order to either send data to the networks or receive data from them. This data

delivery for mobile users can be categorized into two scenarios: i) from a mobile user

1

Page 14: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 2

to a mesh node, and ii) from a mesh node to a mobile user. In the first scenario,

when a mobile user wants to deliver data to a mesh node in the network, the mobile

user first sends the data to the currently associated mesh node, and thereafter the

data can be delivered to the destination node through a series of intermediate mesh

nodes. The second scenario raises a more challenging problem. When a mesh node

needs to deliver data to a mobile user, the mesh node sends data toward the last

known associated node of the mobile user. If the mobile user moves away from the

communication range of the associated node while the packets are in transit, those

packets will be lost unless additional mechanisms ensure path discovery to the new

location of the mobile user.

In this dissertation, we study the problem of data delivery from mesh nodes (as

data sources) to mobile users in wireless mesh networks – the goal is to design a

reliable and scalable routing algorithm for mesh nodes to deliver data to multiple

mobile users.

There is a large body of prior work in the field of routing from mesh nodes to

mobile users. We can categorize them into two schemes: 1) proactive scheme such

as OLSR (Optimized Link State Routing) [11] and DSDV (Destination-Sequenced

Distance Vector routing) [67], and 2) reactive scheme such as DSR (Dynamic Source

Routing) [31] and AODV (Ad hoc On-demand Distance Vector routing) [68]. The

state-of-the-art ad-hoc routing protocols can discover routes without initially knowing

the topology of the networks, and this aspect is considered as a big advantage of these

protocols over traditional routing protocols like OSPF(Open Shortest Path First) [12]

and RIP(Routing Information Protocol) [57]. However, the problem is that their

routing performance degrades rapidly with increasing mobility, i. e., resulting in higher

route update cost for proactive scheme or higher bandwidth usage of on-demand

flooding for reactive scheme as investigated in [71].

Since mobile users’ movement is restricted by environmental structures such as

buildings, bridges, roads, and walkways, we can assume that not all possible move-

ments within space are actually realized. Rather, a recent study [74] investigated that

the users move along a limited set of typical spatial trajectories, and the movement

shows a certain degree of regularity. This suggests that we can learn the structure

Page 15: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 3

in human’s movement, called the mobility pattern from repeated observation, and

exploit the mobility pattern for designing a more reliable and efficient routing scheme

that works even under high mobility.

The ad-hoc routing protocols in prior work do not explicitly consider connectivity

pattern of user mobility for the routing problem. Our work opens a new direction by

interconnecting routing algorithm with mobility pattern modeling of mobile users for

improving routing performance in wireless mesh networks.

In this chapter, we introduce the system model, describe our main contributions

compared to prior work in the literature, and then give an overview of the main

chapters.

1.1 Preliminaries

We describe the system model that we consider throughout this thesis. We assume

two-tier communication structure, consisting of 1) mesh nodes and 2) mobile nodes.

Stationary mesh nodes are configured to form a mesh network, considered as an

underlying communication structure, and mobile nodes communicate with the mesh

networks. We describe several types of nodes in more detail below.

1.1.1 Mesh Nodes

Mesh nodes are wireless nodes that connect with other wireless nodes to form a multi-

hop wireless network. In this thesis, each mesh node operates as a data source or acts

as a router (called a relay node) in the network. Mesh nodes can be either 802.11 Wi-

Fi ad-hoc devices, 802.15.4 sensor nodes [14, 70], or any other wireless ad-hoc devices.

A mesh node communicates with several neighboring mesh nodes, and mesh nodes

are configured to form a mesh network. Packet transmission from a stationary source

to a stationary destination in the mesh network needs multi-hop delivery through

intermediate mesh nodes.

We assume that each mesh node is stationary and has enough memory to record

and keep any collected data from the environment using sensor equipment and buffered

Page 16: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 4

packets for packet relay.

1.1.2 Mobile Nodes

Mobile nodes are wireless nodes that move in the area covered by the mesh network.

We assume that a human or vehicle carries a wireless device, and it is considered as a

mobile node. In this dissertation, we consider a data delivery scenario in which mesh

nodes have data to deliver to mobile users serving as sinks (data consumers). Mobile

users can receive data through the underlying stationary mesh networks. We will use

the terms mobile user, mobile sink, and mobile node interchangeably.

1.1.3 Association Nodes

If a mobile node is in the mesh network, one of stationary mesh nodes which usually

has the highest signal strength from the mobile node, called association node, is

selected, and a communication link between two nodes is established. When the

mobile node roams through the network, the association node changes, and a sequence

of association nodes is given for a physical path of the user.

1.2 Main Contributions

This dissertation focuses on designing optimal routing algorithm based on under-

standing user mobility using wireless association in wireless mesh networks. This

thesis comprises three main parts: 1) short-term mobility pattern modeling for pre-

dicting the future association nodes of mobile users, 2) long-term mobility pattern

modeling for predicting a sequence of the future association nodes, and 3) reliable

routing algorithm to multiple mobile users with energy efficiency by taking a long-

term routing plan through network optimization. We describe each of these in more

detail below.

1) We propose a prediction scheme to infer highly probable next association node of

mobile users in wireless mesh networks. We introduce the mobility graph, a directed

Page 17: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 5

graph structure that encodes a direct link of association transition from a mesh node

to another, corresponding to user’s physical movement. The mobility graph captures

movement patterns of mobile users in the space of wireless connectivity using past

history of RSSI (Received Signal Strength Indicator) for packet transmission from

mesh nodes to mobile user. The mobility graph is extracted from wireless trace of

mobile users who explore a number of physical paths over the networks in a learning

phase. Then the mobility graph is used to predict the future mesh nodes to which

the mobile node will connect after the link to the current association node becomes

unreliable. The experimental evaluation from real testbed deployment demonstrates

that we can predict the next association node of a mobile user 1-2 seconds in advance

with 90% accuracy.

Our work is different from prior work for predicting the next association for mobile

users in Wi-Fi networks recently presented in [64, 77], in that their approaches are

based on Markov model with only few states of the current and past associations,

whereas our approach exploits more detailed signal strength information as well as

associations for embedding association patterns in a graph.

2) Beyond the short-term prediction algorithm described above, we present more

general prediction algorithm which allows us to predict a sequence of node associ-

ation nodes of mobile users, called long-term mobility prediction. To do this, we

present a method for representing trajectories with wireless association, learning typ-

ical trajectories from observations as well as predicting likely association patterns

given observed partial association history, where we borrowed ideas of sequence simi-

larity, clustering, and alignment, from computational biology. Wireless device carried

by mobile user runs the prediction algorithm to compute and supply information

about its future association sequences to the network. We characterize a trajectory

as a sequence of node associations, and compute similarity between two sequences

out of all association data acquired in a learning phase. Using this similarity, we

compute clusters representing typical moving paths through the network. We design

a compact probabilistic representation for the clusters which we use to efficiently find

Page 18: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 6

Figure 1.1: Overview of our routing algorithm using predictive knowledge of the antic-ipated association nodes. Red node is the immediate future association node (throughshort-term prediction), and blue nodes are sequences of the future association nodes(through long-term prediction).

Data Source

likely trajectories during prediction. This work provides an efficient probabilistic tra-

jectory, which is used for prediction of the anticipated trajectory nodes for mobile

users.

There are prior works [19, 39] to model long-term movement patterns of moving

users using GPS traces, and predict the goal destination of the users. Our work is

different since we use wireless association data which is more coarse and noisy, and

our long-term prediction algorithm provides more detailed view of all possible future

paths, not just the destination.

3) Based on the mobility prediction algorithms, we design a routing scheme that

exploits knowledge about the long-term association pattern of mobile users within

a network of data sources to minimize energy consumption and network congestion

enabling the routing scheme to scale to multiple mobile users and a large number of

data sources. For delay-tolerant network applications, which do not require immediate

real-time data retrieval, we propose to route data not to the mobile sink directly,

Page 19: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 7

but to relay nodes along a predicted path of the mobile node that is close to the

data source in terms of communication hops (see Fig. 1.1). The selected relay node

will stash the information to be picked up when the mobile node passes within the

transmission range of the relay node. We use an integer programming technique to

find optimal relay nodes that minimize the number of necessary transmissions while

guaranteeing robustness against link and node failures. We demonstrate that this

technique can drastically reduce the number of transmissions necessary to deliver

data to mobile sinks. We derive mobility and association models from real-world

data traces and evaluate our techniques in real-world testbeds and simulations. We

examine the influence of uncertainty in the trajectory prediction on the performance

and robustness of the routing scheme.

There is a large body of previous work on data delivery algorithms in mesh net-

works, which minimizes the routing cost. One class of the previous algorithms [20, 56]

controls the movement of mobile users through optimization to minimize routing cost.

The other class of the algorithms [49, 52, 55] does not control the sink movement,

but has not explicitly considered user mobility in the routing problem. To the best of

our knowledge, our proposed scheme is the first to incorporate the analysis of long-

term user mobility into the problem of mobile data delivery, without controlling any

movements of mobile users.

Together these three contributions offer a characterization and analysis of user

mobility captured in the space of wireless connectivity and provide a practical way

to design a routing algorithm to compute routes to deliver data to mobile users.

The proposed work builds sophisticated mobility pattern structures to help network

routing protocols to proactively plan to route data to mobile users. Using intermedi-

ate relay nodes spreads the traffic evenly across the network, leading to better load

balancing and more even utilization of network resources, compared to immediate

routing protocols in which all the mesh nodes immediately deliver data to the last

known association nodes of mobile users. This work demonstrates a key claim that

even probabilistic knowledge of the future trajectory of mobile users can significantly

improve routing performance.

Page 20: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 8

1.3 Thesis Organization

Mobile nodes move in physical space which is restricted by environmental structures,

constraining possible trajectories, while continuously connecting to stationary mesh

nodes. Further, mobile users often follow short(-est) paths from a starting point to

a destination, greatly limiting the set of possible paths. In this thesis, we study how

much association patterns of mobile users can be extracted from repeated observation

of mobile users’ physical movement. And then, we design techniques that can be

used by routing algorithms to leverage the predictive knowledge of user mobility to

efficiently deliver data to those users.

In each chapter, we introduce the problem that we propose to solve, and raise

the importance of the problem statement. We position our work in the flow of pre-

vious literature, and then describe our algorithm: short-term connectivity prediction

algorithm (Chapter 2), long-term connectivity prediction algorithm (Chapter 3), and

predictive routing algorithm for mobile users using the prediction algorithms (Chap-

ter 4).

1.3.1 Short-Term Mobility Prediction

Since stationary mesh nodes are configured as an underlying communication network,

wireless association and signal strength data of mobile nodes to the mesh networks

can be gathered and analyzed. Because of inherent regularity of human’s movement

behavior, the movement pattern can be collected and analyzed in a learning phase,

and this knowledge can be exploited to predict the future relay mesh node in the next

few seconds based on the current and past RSSI history. Chapter 2 focuses on the

problem of predicting the immediate next associated nodes of a mobile user, called

short-term mobility prediction.

Since wireless connectivity of a mobile user to the mesh networks is more dy-

namic due to user mobility, extracting connectivity patterns of mobile users is not

a straightforward problem. It requires an understanding of characteristics of both

dynamic wireless channel and human’s mobility. The goal is to construct an efficient

structure to encode association patterns of mobile users using RSSI measurements

Page 21: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 9

over time, and to exploit it to predict the highly probable association transitions.

The algorithm in Chapter 2 introduces the mobility graph, which is a directed

graph structure to encode connectivity transitions of mobile users and embed knowl-

edge about likely local mobility patterns within the network. The mobility graph

is used to predict the future relay nodes for the mobile node, taking into account

wireless dynamics as well as mobility.

The output of this algorithm is next relay transitions as well as expected time

to transition. The algorithm is validated with a real testbed of 10 wireless devices.

The experimental evaluation in real testbeds shows that we can predict the next

association node 1-2 seconds in advance with 90% accuracy. The algorithm can

be used to precompute and efficiently store additional routing plans for non-local

movement of mobile users, which would take significant time to update the correct

routing path.

Chapter 2 is based on [42], where I proposed the mobility graph, designed the

short-term mobility prediction algorithm, and evaluated the algorithm in a real-world

testbed.

1.3.2 Long-Term Mobility Prediction

Chapter 2 presents the techniques to predict the next association node after the cur-

rent association, i. e., short-term transition. However, the inferred future association

nodes can be wrong when there is a significant moving speed difference in between the

learning phase and the usage phase. We extend the mobility prediction to capture a

sequence of the future association nodes likely to be encountered a few minutes into

the future, called long-term transitions, by learning dynamic transitional patterns of

mobile users while they are walking and connecting to stationary mesh nodes. The

topic of Chapter 3 is the problem of predicting the long-term future association nodes

of mobile users, called long-term mobility prediction.

As a mobile user moves along a physical path from a starting location to the

destination, the corresponding wireless association sequence (also called trajectory) to

the stationary mesh networks can be obtained. Due to imperfect links and radio signal

Page 22: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 10

strength fluctuations, and also moving speed variance, the association trajectories

from the same spatial path are not necessarily identical. A trajectory may include

some additional association nodes, miss some nodes, or have different associations

among nearby connections compared to the trajectory collected at a different time.

The goal is to learn typical movement clusters given only association trajectories of

mobile users, and to predict not only the immediate future transitions, but also a

sequence of the anticipated trajectory nodes.

In Chapter 3, we present a mobile trajectory clustering algorithm given wireless as-

sociation trajectories using sequence matching, alignment, and clustering techniques,

borrowing from computational biology, in order to extract typical movement patterns

of mobile users. We characterize a trajectory as a sequence of node associations and

use multiple sequence alignment techniques to compute pair-wise similarity out of

all sequences. After clustering, a set of wireless trajectories can belong to a charac-

teristic mobile trajectory cluster. We propose a probabilistic representation for sets

of similar trajectories to compactly describe a cluster of trajectories, and efficiently

find the best matching cluster given a partial trajectory. The constructed mobile

trajectory clusters are used to predict a set of the anticipated trajectory nodes by

finding out the current node association of the mobile node within the probabilistic

representation of the best-matching cluster.

The output of this prediction algorithm is a set of long-term future association

sequences. The algorithm is validated with real-world mobility dataset from UMass

DieselNet [4] and simulations. The algorithm can be used to design a scalable and

energy-efficient routing scheme for mobile users, by using a subset of the predicted

trajectory nodes as intermediate storage nodes from which the mobile users can later

receive the data, instead of immediate data delivery to mobile users. Also, if the

network proactively knows anticipated associations of mobile users, it can search user-

specific information of possible interests using a collaborative filtering technique, and

proactively push the data to the nodes which the mobile user will be associated with

in the future.

Chapter 3 is based on [46], where I proposed the long-term mobility prediction

algorithm, and evaluated the algorithm with real-world wireless traces.

Page 23: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 11

1.3.3 Predictive Data Delivery

Chapters 2 and 3 present connectivity-based mobility models for learning the short-

term and the long-term transitional patterns of mobile users, and algorithms to pre-

dict the anticipated associations of the mobile users (i. e., the immediate future relay

nodes as well as the anticipated trajectory relay nodes). A key connection of the

predictive knowledge of connectivity to the mobile data delivery is to deal with the

uncertainty of the future connections of mobile users, and to provide a specific pro-

tocol and algorithm to effectively use the probabilistic knowledge to ensure packet

routing to multiple mobile users, achieving high packet delivery reliability, and low

network overhead. The topic of Chapter 4 is the problem of designing a data routing

algorithm, which delivers data from stationary mesh nodes to multiple mobile nodes,

using the predictive knowledge of connectivity.

Since the unstable wireless links and moving speed variance make the prediction

problem difficult, we should design a robust prediction algorithm to deal with the

uncertainty of the future associations of mobile users. When we use the predictive

knowledge of user associations to design a routing algorithm, we must take into ac-

count the uncertainty of the predicted associations for ensuring reliable data delivery

to mobile users. The goal is to design a robust data delivery scheme which ensures

high packet delivery and low routing cost, by exploiting the predictive knowledge of

mobile users’ movement.

In Chapter 4, we demonstrate a key claim that using only the probabilistic future

associations of mobile users can greatly improve routing performance in terms of net-

work overhead, packet delivery reliability, and load balancing, compared to immediate

data delivery schemes such as proactive and reactive ad-hoc routing protocols. To

establish this claim, we present a data delivery scheme, called data stashing, which

routes data not to the sink directly, but to relay nodes along a predicted path of

the mobile node that is close to the data source in terms of communication hops.

To ensure packet delivery, a data source can select multiple storage nodes (called

stashing nodes) and send data to them in order to cover all likely future paths of

each mobile node. We formulate this problem into a binary integer program where

the output of the algorithm is the optimal relay nodes that minimize the number of

Page 24: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 1. INTRODUCTION 12

necessary transmissions while guaranteeing robustness against link and node failures.

We show that our routing scheme provides better load balancing, avoiding collisions

and consuming energy resources economically and evenly throughout the network.

The algorithm provides not only a routing protocol, but also a way to improve

existing protocols by learning and exploiting mobility patterns. Existing mobile ad-

hoc routing protocols can benefit from the short-term and the long-term connectivity

analysis and prediction of mobile users, which provides lower routing cost, more

reliable packet delivery, and better load balancing. Also, our optimization problem

formulation itself can be a separate contribution by adding an interesting class of

wireless mobile routing into Network Utility Maximization (NUM) problems [33, 34].

Chapter 4 is based on [46], where I proposed the data stashing scheme, designed

algorithms, and evaluated with real-world testbed experiments and simulations.

Finally, in Chapter 5, we summarize our results and contributions, and propose

interesting directions for future research.

Page 25: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Chapter 2

Short-Term Mobility Prediction

In this chapter, we present a mobility modeling that encodes the movement patterns

of mobile nodes using radio signal strength information, and allows the prediction of

highly probable relay node transitions. This structure can support proactive route

update for data delivery to mobile users. Network connectivity of a mobile user over

deployed stationary mesh nodes changes rapidly with high moving speed. In order

for stationary mesh nodes to deliver data to a mobile user, setting up the route to the

mobile user must be fast to avoid high latency and packet loss. Further, depending

on the network topology, the route can change significantly even if the mobile user

moves only a short distance. Packets already en route will be lost unless additional

mechanisms ensure path discovery to the new location of the mobile user.

We address this problem by introducing the mobility graph, which is a directed

graph structure to encode connectivity transitions of mobile users and embed knowl-

edge about likely local mobility patterns within the network. The mobility graph can

be extracted from training data and is used to predict the next future transition which

the mobile user will be associated with immediately after the current association node.

The rest of this chapter is structured as follows: In Sec. 2.1, we introduce the

problem of short-term mobility prediction, and discuss the importance of short-term

prediction for data delivery to mobile users, and we present our contributions in

Sec. 2.2. We discuss related work in Sec. 2.3, and in Sec. 2.4, we present the mobility

model and introduce the mobility graph. We describe our approach for prediction of

13

Page 26: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 14

future relay nodes in Sec. 2.5, and in Sec. 2.6, we present an experimental evaluation

of the approach and discuss the results. In Sec. 2.7, we conclude this chapter.

2.1 Short-Term Connectivity

In our data delivery scenario, mesh nodes are stationary (i. e., not mobile), and con-

figured as mesh network. In our approach, one relay node is designated as a proxy for

the mobile node, through which the data is forwarded to the user. Thus, the proxy

node becomes the stationary sink for all traffic destined to the mobile node.

We define the mobility graph, a directed graph structure that allows for association

transition to a new relay node, resulting in significant improvements in the accuracy

of predicting the correct future relay node. We describe how the mobility graph can

be extracted from received signal strength indicator (RSSI) traces from mesh nodes

to mobile user. By comparing the measured RSSI traces with RSSI traces in edges

of the mobility graph, which are collected in a learning phase, we can predict the

future association nodes and time to the transition. We use dynamic time warping

(DTW) to match the current RSSI trace of the mobile node to the traces recorded in

the past, and calculate similarity between two traces which may vary in time due to

moving speed variance.

To minimize the impact of mobility on packet delivery performance, a routing

algorithm needs to update its destination nodes toward both the current and the

predicted association node, guaranteeing that the new routing path to the predicted

future association node is ready once it is needed. The prediction algorithm can

be used to precompute and efficiently store additional routing plans for non-local

movement of mobile users, which would take significant time to update the correct

routing paths.

2.2 Contribution

In this section, we present our contributions in the field of wireless mesh networks as

follows:

Page 27: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 15

• We introduce the mobility graph, a directed graph structure that encodes knowl-

edge about the possible local movements of mobile users roaming the area cov-

ered by a mesh network. We show how to compute a mobility graph from RSSI

measurements, and demonstrate its utility for prediction.

• We propose a method for short-term mobility prediction that infers the future

association nodes based on knowledge of the mobility graph, as well as RSSI

traces that represent the edges of the graph. Experiments show that the correct

future association node for a mobile user can be predicted with up to 90%

accuracy seconds before the transition to that node happens.

The proposed prediction scheme supports proactive routing decision for data de-

livery to mobile users, and can also be applied to other applications such as improving

bandwidth reservation for dynamic usage of spectrum.

The main advantage of our algorithm is that likely movement patterns of mobile

users are modeled in the space of wireless connectivity. The input of the algorithm

is raw RSSI measurements, which reflect wireless dynamics well, and can be easily

obtained by every single wireless radio chip. The mobility graph constructed by the

extensive real-world wireless traces can provide accurate future connectivity for the

usage of data delivery application.

2.3 Related Work

Short-term prediction problems have been widely studied using Markov models in

cellular, wireless, and GPS networks. Liu and Maguire [53] predict user’s future

location using the user’s movement history in cellular networks. Their proposed

model captures both long-term regular user movements through Movement Circle

model, and less-constrained random movements through Movement Track model.

However, the prediction method is validated only analytically with synthetic dataset,

leaving its practicality with real mobility trace still unanswered. Similar models have

also been used for predicting next association and supporting proactive hand-off in

wireless LAN networks in [18]. Using Wi-Fi traces of mobile users in long-term real

Page 28: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 16

testbed experiment presented in [77], the authors have shown that Markov models

can predict the next wireless access point with around 70% accuracy for a median

user. Together with simulations, the method improves packet reception ratios as well

as latency by fast hand-off. Further, Lempel-Ziv text compression algorithms were

also successfully applied to mobility prediction problem by building and maintaining

dictionary of mobile user’s association list based on analytical study in [6]. Lee et

al. [47] construct a semi-Markov model for capturing the steady-state and transient

behaviors of user mobility using Dartmouth WLAN trace [37] by filtering out noisy

associations.

Kim et al. [36], Liu et al. [54], and Yoon et al. [83] aim to capture mobility

patterns and build mobility models for generating simulated movement of mobile

users. The approaches use Wi-Fi access point (AP) association in Dartmouth dataset,

and apply various stochastic techniques such as Kalman filtering and Markov model

after discarding noisy associations (called ping-pong events). Markov-style predictors

are particularly well suited for applications involving large networks in which users

move in a repeatable, non-random way in [40, 64]. However, most of the previous

approaches fall into one of the following problems: 1) the prediction algorithm is

validated with analytical or simulation studies, 2) dynamic associations are filtered

out for making steady-state Markov model, and 3) Markov-based prediction algorithm

is based on current and past states only, not using more informative radio signal

strength information.

Our work is different in that the mobility graph is extracted from real mobility

trace with dynamic association transitions, and our short-term prediction algorithm

is based not just on few states, but rather on sound analysis in signal strength fluc-

tuations over time, also considering changing speed.

2.4 Constructing the Mobility Model

The mobility graph captures the movement patterns using RSSI measurements from

mesh nodes to mobile users. We assume that the mobility graph is constructed by a

number of physical movements which mobile users explored in a learning phase.

Page 29: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 17

Assuming that we can observe users as they go about their everyday activities

over a certain period of time, it is possible to extract mobility patterns of the users

in the observed environment.

More specifically, we assume that users carry a mobile computing device that ac-

tively communicates with surrounding mesh nodes. This allows us to observe physical

movements of the users indirectly via RSSI traces1 of communication links between

mesh nodes and the user. Formally, we assume that N mesh nodes measure signal

strength ri(t), i = 1 . . . N of a packet from a user U received at time t. A location of

the user at time t corresponds to an observation vector

R(t) = (r1(t), ..., rN(t)).

At each point in time, we define the association node

B(t) = argmaxi=1...N

ri(t)

as the node measuring the highest signal strength at a given point in time.

The trajectory of a user corresponds to an observation sequence

R(t1 : tk) = R(t1)R(t2) . . . R(tk)

where t1, t2, . . . tk is the packet reception time from the user in a regular basis. Given

such an observation sequence, we can define the sequence of association nodes

B(t1 : tk) = B(t1)B(t2) . . . B(tk).

Note that we do not assume the ability to measure locations of the users directly,

nor do we assume any relation between the location of the user and the measured

signal strengths. However, we do assume that if the user follows the same moving

path at different times, the corresponding observation sequences will be similar. In

essence, we assume that the environment does not change drastically over time, and

1Or in general, traces of any other link quality estimator.

Page 30: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 18

(a) Mobility Graph

(b) Network Connectivity Graph

Figure 2.1: The differences between mobility and connectivity graph. (a) Note theadditional (blue) edges in the mobility graph in regions where the network providesno coverage. (b) The connectivity graph is significantly more dense (red edges) inareas where movement is constrained by walls.

Page 31: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 19

we aim to optimize routing protocols for more reliable packet delivery to mobile users

for the case of frequently repeated mobility patterns. Even though we require training

phase for constructing the mobility graph in this thesis, data aging techniques can be

used to relax this assumption.

2.4.1 Mobility Graph

The mobility graph is a high level directed graph structure that encodes local mobil-

ity patterns extracted from observation sequences. Formally, the mobility graph is

defined on a set of N vertices, corresponding to the infrastructure mesh nodes. Two

vertices vm and vn are connected by a (directed) edge if there exists an observation

sequence such that at some point, the association node switched from m to n:

∃i : {B(ti) = m} ∧ {B(ti+1) = n}.

Intuitively, an edge in the mobility graph is inserted whenever the user moves from

node vm to vn. This edge assignment essentially cuts the observation sequences into

short segments, each segment corresponding to the transition between two nodes. For

a trajectory Ri, each edge en→m connecting vertices vn and vm is associated with the

segment Rn→mi = Ri(tjn , tjm) for which the association node is n:

Bi(tjn−1) 6= n ∧

∀tjn ≤ t ≤ tjm : Bi(t) = n ∧

Bi(tjm+1) = m.

This defines a set of segments Se for each graph edge e.

Although other ways of associating the data with the graph exist, we found this

to be most useful for routing and prediction as described below.

Mobility Graph vs. Network Connectivity Graph Even though the mobility

and network connectivity graphs are defined on the same set of vertices, they can

have substantially different edge sets (see Fig. 2.1). On one hand, the mobility graph

Page 32: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 20

(a) Mobility graph from a path

(b) RSSI measurements over time

Figure 2.2: Extracting the mobility graph from an observation sequence. (a) Thelayout of our office with 10 infrastructure nodes. The trajectory is shown by a dottedline, arrows show the extracted mobility graph. (b) RSSI data recorded during theexperiment. An edge between nodes 2 and 1 is highlighted. This corresponds to thedata segment in which node 2 is the association node.

Page 33: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 21

can contain edges that are not present in the connectivity graph, if a user moves

through areas without network coverage. On the other hand, the connectivity graph

can contain edges that are not present in the mobility graph, since radio signals can

bypass obstacles, or travel through walls.

Using the Mobility Graph We use the mobility graph in two ways. The mobility

graph constrains future location of a user in the network. We show in Sec. 2.5 that if

we store typical signal strength observation sequences at edges of the mobility graph,

both future relay nodes for a mobile user as well as the time to transition to that

node can be predicted with high accuracy.

Edges in the mobility graph that do not exist in the connectivity graph are the ba-

sis for a routing algorithm. We use the differences between the two graphs to identify

regions in the network for which routing information needs to be precomputed.

We believe that the mobility graph is a valuable data structure, independent of the

usage laid out in this thesis. For example, the differences between the mobility and

connectivity graph can guide network administrators in deploying additional nodes

or redeploying existing nodes to improve the quality of the network coverage, or to

understand data traffic patterns.

2.4.2 Mobility Graph Extraction

The mobility graph is extracted from a set of observation sequencesR = {Ri(ti1 : ti2)}that correspond to users moving in the environment. We assume that the sequences

are preprocessed and the setR contains only continuous, densely sampled observation

sequences. An example of one such trajectory is shown in Fig. 2.2.

Since the vertex set of the mobility graph is defined by the set of infrastructure

nodes, we only have to decide which edges should be present in the mobility graph.

We determine the edges solely from the observation sequences. Given an observation

sequence Ri(t1 : tk), we add an edge in the mobility graph whenever the corresponding

association node Bi(t) changes.

In practice, this algorithm might construct a large number of edges in the mobility

Page 34: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 22

graph due to the noise in the link quality measurements. Mobility of the users exacer-

bates the effects of reflections and signal fading in structured buildings or other urban

environments. We have implemented a number of filters that prevent constructing

unnecessary edges.

The observation sequence is low-pass filtered and the nodes in the best neighbor

sequence are retained only if they provide a high quality link for at least two seconds.

The obtained mobility graph is further pruned by removing its infrequently observed

edges. This final filtering step can be adapted to provide a simple yet efficient data

aging mechanism: as new measurements are taken, rarely visited edges in the mobility

graph are deleted, enabling the mobility graph to adapt to gradual changes in the

environment.

The filtering criteria are motivated by a cost analysis of the routing algorithm.

The cost of briefly losing a connection to a node (a link failed because we did not

choose the “best” node with the highest signal strength) is much lower than the cost

of setting up a new connection (if we switch nodes for less than two seconds). Other

applications may dictate other criteria, resulting in a slightly different mobility graph.

2.5 Connectivity Prediction

In this section, we present an algorithm to predict future relay nodes using the con-

structed mobility graph in Sec. 2.4. We use pattern matching to determine the current

position in the graph.

With each edge e of the mobility graph, we associate a set Se of observation

sequence segments that are representative for this edge. This set is determined in

the training phase during which the mobility graph is extracted. Set Se contains all

segments that witnessed the mobility edge e, normalized to the same transmission

power.2 While the network is deployed, new data can be added to the graph, and

data aging techniques can be applied to adapt the graph to gradual changes in the

2We simply calculate the mean segment-wise RSSI value for each segment and scale the segmentsto have the same mean. This way, the mobility prediction algorithm works even if the transmittedsignal had variable signal strength.

Page 35: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 23

Figure 2.3: Dynamic time warping determines the best-matching outgoing edge andpredicts the next relay node.

t

RSSI

environment.

The prediction problem can then be stated as follows: At each time t, we know

the current position of the mobile user in the mobility graph, given by the current

relay node vt. Given the current RSSI measurements R(t0 : t) since the last change

of relay node, what is the next relay node and when will the transition occur?

Using the mobility graph extracted in the training phase, we can restrict the

search by only considering the set of outgoing edges E→(vt) from the current graph

vertex vt. In order to determine the correct edge, we match the current RSSI trace to

the stored RSSI segments of all edges in E→(vt). The edge emin associated with the

best-matching segment is chosen, and its end-vertex is the predicted next relay node.

emin = argmine∈E→(vt)

minRG∈Se

DDTW(R,RG)

The distance function DDTW is discussed below. Fig. 2.3 illustrates the matching

algorithm.

Page 36: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 24

R

RG

RG

R (k,amin)EE

Figure 2.4: Dynamic time warping: Left: The best match between two sequencesR and RG defines pairwise matches between individual samples. If one sequence issignificantly shorter, its last sample is matched to the remainder of the longer sequence(red correspondences). Right: The warp distance DDTW in matrix form. The warppath W is shown in red. In case of a partial match, W reaches the edge of the costmatrix.

2.5.1 Matching Segments Using Dynamic Time Warping

We use dynamic time warping (DTW) [41] to find a reliable match in the presence of

significant differences in speed. Since mobile users move through a dynamic environ-

ment, and each mobile user has different characteristics (the most obvious is different

natural walking speeds), the measured RSSI sequence is warped non-linearly in the

time domain. The DTW algorithm provides a similarity measure between two non-

linearly warped sequences as well as the optimal pairwise match within the sequences.

While the plain DTW algorithm assumes that both sequences are complete, in our

case the current RSSI trace should be matched to the first part of the stored data. We

therefore use a variant of DTW supporting partial matching. An additional output

of the matching algorithm is the estimated time to transition.

In the following discussion, we will denote the current RSSI trace as R(t1 : tk)

and a trace stored in the mobility graph as RG(t′1 : t′l).

To compute a matching, we first calculate the matrix of element distances D by

Page 37: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 25

comparing each RSSI sample from R to each sample from RG:

Dij = d(R(ti), RG(t′j)), (2.1)

where i ∈ {1, . . . , k}, j ∈ {1, . . . , l}, and d(·, ·) is a distance function operating on

vectors of RSSI samples; we simply use the L2 distance.

The warp path distance matching the first i samples of R to the first j samples of

RG can then be defined recursively by

DDTW(i, j) = Dij + min[DDTW(i− 1, j) + α,

DDTW(i− 1, j − 1),

DDTW(i, j − 1) + β].

The penalties α and β are applied when a sample is skipped in the stored or cur-

rent data, respectively. The traditional warp distance assuming a complete match

is now DDTW(k, l). The path taken by the recursion defines matches between in-

dividual samples in the sequences. We will write it as a sequence of index pairs

W = [(1, 1), . . . , (k, l)]. Fig. 2.4 illustrates the matching.

By default, DTW matches the complete sequence and computes errors accordingly.

This behavior favors sequences of equal length. Since we are interested in partial

matches, we consider only the error incurred until R is fully matched: we find the

first sample amin of RG that matches the end of R, amin = min{a | (k, a) ∈ W} (see

Fig. 2.4 for an illustration). The final DTW distance for the partial match is then

DDTW(k, amin).

In our experiments, we have obtained the best results penalizing stretching of

longer sequences, and compression of shorter sequence. Thus, if tk − t1 ≤ t′l − t′1,

we use α = 50 and β = 0, while otherwise we use α = 0 and β = 50. The results,

however, are not very sensitive to the choice of these parameters.

Expected Time to Transition In order to synchronously change the routing

behavior throughout the network, it is useful to have advance warning when the

relay node changes. Using the partial DTW matching outlined above, we can easily

Page 38: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 26

compute an estimate. As before, we are given the current RSSI trace R(t1 : tk) and

the best match RG(t′1 : t′l). Using the match for the end point of R, amin, we can

estimate the remaining time ∆t until the end of RG as

∆t = (tk − t1)l − amin

amin

.

We use this information to synchronously change the routing state of the whole net-

work when necessary.

2.6 Empirical Evaluation

In this section, we demonstrate the performance of our short-term mobility prediction

algorithm through real-world testbed experiments.

2.6.1 Evaluation Setup

We have deployed a small testbed in a 750 m2 indoor office space and tested the

prediction accuracy in a series of experiments.

We tested the mobility prediction algorithm experimentally, in a network of 10

MicaZ [14] motes deployed in an office space (see Fig. 2.2(a) ). We have covered the

area of approximately 30 m × 25 m, leading to a 3 hop network. The infrastructure

nodes were programmed in TinyOS-2.1 [21] and recorded time-stamped RSSI of mes-

sages received from a mobile node. The mobile node broadcasted messages with a

0.6 seconds period with a constant transmission power throughout all experiments.

All experiments were taken during regular working hours, with people and equipment

moving around, doors opening and closing, and with the mobile node moving both

inside and outside of the building.

The algorithm requires a set of observation sequences to learn the mobility graph.

Altogether, we have collected data for 9 different trajectories as shown in Fig. 2.5,

repeating each of them at least 5 times. We selected 5 of these trajectories, (1) – (5)

for learning and used the remaining 4 trajectories, (6) – (9) for testing. None of the

testing trajectories was the same as any learning trajectory, although learning and

Page 39: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 27

Figure 2.5: Routes used. (1) – (5) for training, (6) – (9) for testing.

Page 40: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 28

100%

90%

100%

Prediction Accuracy (%)

70%

80%

Prediction Accuracy (%)

50%

60%

Prediction Accuracy (%)

30%

40%

50%

Prediction Accuracy (%)

20%

30%

Prediction Accuracy (%)

0%

10%

1 2 3 4 5 6 7 8 9 10

Prediction Accuracy (%)

1 2 3 4 5 6 7 8 9 10

Time to transition (sec)

Figure 2.6: Experimental evaluation of prediction algorithm. Mean accuracy of pre-diction of the next node, for varying time to transition to the node.

testing trajectories overlapped in some segments. The trajectories were collected over

a one week period to account for variance of RSSI signals over time.

2.6.2 Prediction Performance

The prediction algorithm needs to be able to reliably predict the next relay node

sufficiently in advance, to leave enough time for the routing protocol to adapt to the

new relay node. In general, prediction of a few seconds ahead is sufficient.

We first evaluate accuracy of the prediction algorithm: for a given observation

sequence R(t1 : tk), we construct the best neighbor sequence B(t1 : tk) to obtain the

ground truth of which node is the relay node throughout the experiment. In the online

phase, we predict the next relay node and estimate the time to transition to the new

relay node, ∆t. We initially use only the first observation R(t1) for prediction and

incrementally consider more observations R(t1 : t), until t = tk. For each prediction,

we compare the predicted relay node and the predicted time to transition to the

ground truth and calculate the ratio of correct predictions of relay nodes. We show

Page 41: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 29

50%

60%

70%

80%

90%

100%

Pre

dic

tion

Acc

ura

cy (

%)

Medium speed

Varying speed

0%

10%

20%

30%

40%

50%

1 2 3 4

Pre

dic

tion

Acc

ura

cy (

%)

Time to transition (sec)

Varying speed

(a)

6

8

10

12

14

Tim

ing e

rror

(sec

)

Fast speed

Slow speed

Medium speed

-2

0

2

4

6

1 2 3 4

Tim

ing e

rror

(sec

)

Time to transition (sec)

(b)

Figure 2.7: Experimental evaluation of prediction algorithm depending on speed vari-ance. (a) Prediction accuracy for different speeds. �: Training and testing speeds aresimilar, �: Training and testing speeds differ by ±30%. (b) Error in estimation oftime to transition, showing the mean error and the standard deviation. �: Trainingand testing speeds are similar. �: Slower testing speed. N: Faster testing speed.

Page 42: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 30

50%

60%

70%

80%

90%

100%

Pre

dic

tio

n A

ccu

racy

(%

)

0%

10%

20%

30%

40%

50%

1 2 3 4

Pre

dic

tio

n A

ccu

racy

(%

)

Time to transition (sec)

100% trajectories

80% trajectories

60% trajectories

(a)

100%

90%

100%

Prediction Accuracy (%)

70%

80%

Prediction Accuracy (%)

50%

60%

Prediction Accuracy (%)

100% use

30%

40%

Prediction Accuracy (%)

100% use

60% use

40% use

20% use

10%

20%

30%

Prediction Accuracy (%)

20% use

0%

10%

1 2 3 41 2 3 4

Time to transition (sec)

(b)

Figure 2.8: Impact of size and variability of training data. (a) Prediction accuracydepending on the size of the training set. (b) Prediction accuracy depending on thevariability of the training set.

Page 43: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 31

the histogram of prediction accuracy depending on the actual time to transition in

Fig. 2.6. As we can see in the figure, the accuracy of the prediction is initially low,

since only few data points are available for prediction. As the number of data points

grows (with decreasing time to transition), the accuracy of the prediction improves

significantly, around 90% for prediction 1-2 seconds before the transition.

We further test how well the DTW algorithm can compensate for speed differences.

Fig. 2.7(a) shows the prediction accuracy of the same trajectory when the walking

speed in training and testing samples were identical, and when we changed the walking

speed in the testing phase by ±30%.

Additionally, we measure the error in the estimation of time to transition. Fig. 2.7(b)

shows the mean error in the estimate, along with the standard deviation of the er-

ror. The estimated time to transition can be used to let the network know when the

routing path should be updated for ensuring packet delivery.

Finally, we explore the impact of the size and variability of the training set on

prediction accuracy. First, we discard datasets of some training trajectories (out of

the five trajectories we used in total). Fig. 2.8(a) shows that the prediction accuracy

degrades significantly as we remove trajectories from the training set. The main rea-

son is that the remaining training trajectories capture mobile patterns only partially

and it is difficult to predict trajectories that have never been observed. Next, we

kept all training trajectories, but removed some of the repetitive training rounds for

each trajectory. Fig. 2.8(b) shows that the prediction accuracy is less dependent on

the variability of the training set. Even when removing 60% of the training data,

the prediction accuracy is quite high. Overall, this evaluation implies that exploring

the complete routes over the network with fairly many training runs is an important

factor to achieve higher prediction accuracy.

2.7 Summary and Discussion

We have presented an algorithm to predict future association nodes of mobile users

for proactive route plan using a novel mobility prediction algorithm. We build on

the concept of the mobility graph, a data structure that encapsulates and formalizes

Page 44: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 2. SHORT-TERM MOBILITY PREDICTION 32

knowledge about possible mobility patterns of users roaming the mesh network. Es-

pecially in structured, man-made environments, the mobility graph is a valuable tool

for understanding and optimizing wireless networks.

However, in case of varying moving speed, predicting only the next future con-

nectivity is not enough because the predicted node using the mobility graph could be

the second or third next connected nodes depending on the moving speeds we used

in the learning and testing phases. To take into account the moving speed variance

more reliably, we would need more sophisticated mobility model, which can predict

long-term future connectivity of mobile nodes beyond the short-term connectivity.

Also, our concept of mobility graph requires storing all RSSI signatures in each corre-

sponding edge, increasing the complexity of storage and computation. In Chapter 3,

we present a long-term mobility model, which captures long-term mobility pattern

behavior, and allows the prediction of a set of future trajectory nodes using only

high-level association node list, not using the raw RSSI measurements.

Although we use the short-term prediction algorithm for routing, it would be

interesting to apply the short-term prediction to dynamic bandwidth allocation to

proactively avoid possible bandwidth shortage. Also, in this thesis, our mobility

graph needs a separate learning phase (i. e., off-line learning phase), and we do not

provide a specific way to dynamically update it in the usage phase. On-line learning

and updating of mobility graph is another interesting future research topic.

Page 45: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Chapter 3

Long-Term Mobility Prediction

In this chapter, we present an algorithm that classifies mobile users’ movements into

typical mobility pattern clusters, not using raw RSSI measurements. Instead, our

long-term mobility prediction algorithm uses high-level node associations to formulate

a compact and efficient representation of those clusters. The proposed algorithm

provides anticipated trajectory node lists, which will be exploited to design a routing

scheme for delivering data to mobile users in Chapter 4.

Network connectivity is highly volatile due to environmental effects such as multi-

path fading, scattering, and more importantly the changing speed of mobile users.

Predicting only the next association node is not enough and can be wrong when there

is a huge difference in moving speeds between the learning and usage phases.

We address this problem by introducing mobile trajectory clusters, which are

captured using wireless association, to encode knowledge about likely long-term tran-

sitional patterns within the network. This algorithm needs only the association traces

over time while mobile users are roaming within the network, not geographical coor-

dinates. The constructed mobile trajectory clusters are used as a crucial part of the

data delivery scheme described in Chapter 4. They are used to provide all possible

predicted association nodes in the near future trajectory of the mobile user. This

enables a routing algorithm to deliver data to mobile users while minimizing packet

routing cost throughout the networks by letting data sources push data to the close

relay nodes which the mobile users pass through in the future, instead of sending

33

Page 46: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 34

immediately toward mobile users.

The rest of this chapter is organized as follows: In Sec. 3.1, we introduce the

problem of long-term mobility prediction, and discuss the benefits and significance of

long-term prediction for data delivery to mobile users. We present our contributions

in Sec. 3.2, and discuss related work in Sec. 3.3. In Sec. 3.4, we present the mobil-

ity model and introduce mobile trajectories representation in the space of wireless

connectivity association, and clustering algorithms. We describe our approach for

prediction of a set of future trajectory nodes using the constructed mobile trajectory

clusters through learning in Sec. 3.5, and in Sec. 3.6, we present an experimental

evaluation of the approach and discuss the results. In Sec. 3.7, we conclude this

chapter.

3.1 Long-Term Connectivity

We predict likely long-term association nodes of mobile users by using the current

association and a past history of association trajectories. We present a method for

learning typical movement patterns from observations, representing trajectories, as

well as predicting likely trajectories, given observed partial trajectories. The predic-

tion algorithm is used by the mobile node to compute and supply information about

its future trajectory to the network. We characterize the trajectories as sequences of

node associations, and compute similarity between two trajectories out of all collected

trajectories in the learning phase. Using this similarity metric, we compute clusters

representing typical trajectories through the network. Using multiple sequence align-

ment techniques to identify similar regions and dissimilar regions in a cluster, we find

a compact probabilistic representation for the clusters which we use to efficiently find

likely future trajectories during prediction.

The predicted long-term trajectory of mobile users can benefit network-wise appli-

cations: especially providing an efficient data delivery to mobile users. For example,

when each information source in the network needs to deliver data to multiple mobile

users, it can select intermediate storage nodes which are close to itself in terms of

communication hops, and are also along the anticipated trajectory of the sinks, and

Page 47: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 35

stash the data to the selected nodes, instead of routing the data directly to the sinks

at their current positions. As a mobile user passes through the network, it can pick

up the data at the intermediate storage node. The anticipated long-term connectivity

prediction can contribute to designing a scalable data delivery scheme for multiple

mobile users, which can reduce redundant packet transmissions by sharing data deliv-

eries via intermediate storage relays, which are popular overlapped trajectory nodes

among mobile users.

3.2 Contribution

In this section, we present contributions we make in the field of wireless mesh networks

as follows:

• We introduce a network-centric representation for trajectories. In this represen-

tation, a trajectory is represented as a sequence of associated nodes, giving us all

the information we need for data delivery, while abstracting from unnecessary

and possibly misleading spatial information. We also develop useful similarity

measures for this motion representation which allows us to perform clustering.

• We propose a probabilistic representation for sets of similar (but potentially

partial) trajectories. This representation can be used to compactly describe

a cluster of trajectories, and efficiently find the best-matching cluster given a

partial trajectory.

• We present a method for predicting a set of anticipated trajectory nodes by find-

ing out the current node association of the mobile node within the probabilistic

representation of the best-matching cluster, and using the rest of association

nodes.

To the best of our knowledge, this work is the first to classify dynamic real-world

wireless traces into several unique mobile clusters from the perspective of long-term

connectivity, using wireless association traces.

Page 48: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 36

The proposed prediction scheme is closely coupled with a routing scheme for mo-

bile users, enabling the whole network to find efficient intermediate relays in order

to distribute data to mobile users, minimizing packet routing cost throughout the

networks. It should be pointed out that our mobility model and prediction algorithm

characterize likely movement patterns of mobile users, and provide necessary future

connectivity information to enable long-term route pre-planning for later mobile users’

retrieval.

3.3 Related Work

Long-term mobility pattern modeling has been studied using GPS data, or association

data from cellular networks or wireless LANs. In the case of GPS, since the raw GPS

data contain many outliers, most of the previous research approaches [3, 19, 39] filter

out the noisy and unreasonable measurements first, and then identify the possible goal

locations from the filtered GPS positions, and construct prediction models. Ashbrook

and Starner [3] find significant places where a user spent over a threshold amount of

time, and cluster them into locations with the k-means clustering algorithm. Finally,

a Markov model is applied for each location, and used for predicting the next goal

location. Froehlich and Krumm [19, 39] obtain the end-to-end routes from the raw

GPS data, and use a Bayesian model and a trip similarity clustering algorithm to

predict the next goal location. Further, Liao et al. [50, 51], and Yin et al. [82] not

only extract significant places from filtered GPS data, but also try to associate the

places with activities that a person can undertake in each different place. Their work

is the first to suggest exploiting high-level context (i.e., user’s activities) to detect the

goal place for a mobile user with higher fidelity. Although the previous approaches

infer long-term destination of mobile users, our work provides more detailed view of

all possible future paths, not just the destination.

Similarly, in cellular networks, some previous work [5, 43, 44, 66] uses cell identi-

fiers to identify significant locations, and constructs prediction models by clustering

algorithms. In wireless LAN networks, a long-term large-scale measurement study

Page 49: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 37

of user-access point (AP) association at Dartmouth [37] has inspired work in mo-

bility prediction. It has been noted that wireless users’ locations can be predicted

with up to 72% accuracy using an order-2 Markov predictor [76] for users with long

trace lengths. Further analysis of the same dataset has suggested the feasibility of

predicting the future associations of a mobile user in space and time [75]. Using a

different dataset, Ghosh et al. [22] describe techniques to predict a user’s location

with respect to social hubs such as buildings and classrooms, rather than individual

wireless AP’s. Although the approaches work with real world mobility data, and use

only association data for predicting the future association, they do not explicitly deal

with noisy association for classifying mobility pattern clusters. Our work provides a

specific way to address possible insertion, deletion, and replacement of associations,

and to do fine clustering considering the dynamics.

3.4 Constructing the Mobility Model

In this section, we introduce a trajectory in terms of wireless association and present

our mobile trajectory clustering method using given trajectories for an off-line learning

phase.

In most scenarios, mobile users travel along a fairly limited set of trajectories.

Oftentimes, this is due to obstacles present in the environment: buildings, bridges,

roads, and walkways constrain the possible trajectories. Even without any environ-

mental restrictions, there are usually few interesting start- and endpoints for any

given journey, and sinks often follow short(-est) paths from a starting point to a

destination, greatly limiting the set of possible trajectories.

It therefore makes sense to find and exploit the structure that is present in the

likely trajectories through a network. We will do so by clustering similar trajectories,

thus creating a database of historical trajectories, arranged in clusters of similar

trajectories in the off-line learning phase. In order to perform practical clustering

on trajectories, we require a trajectory representation, a similarity measure, and a

compact representation of a cluster of sequences. The following sections describe

these concepts in turn.

Page 50: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 38

3.4.1 Trajectory Representation

In the following, we will represent a single trajectory through the network not in

terms of spatial position, but in terms of the associated mesh node at any given time.

Let us consider a mobile user moving through the network on a given spatial path.

Sending periodic beacons and listening for replies, the mobile node can record the

nodes in radio range at each beacon time. In each of these sets, we can determine the

association node, for example, by measuring signal strength on the acknowledgment

or the beacon packet. This is the node that the mobile node would associate with to

send or receive data. We represent trajectories through the network as a sequence of

association nodes:

T = N1N2N3 . . . Nk.

We only record changes in the associated node list, i. e. Ni 6= Ni+1. For example,

given “s s a a a r r r a n n g h h h h a a e e e e y y o o”, the

corresponding trajectory is represented as T = s a r a n g h a e y o.

Note that due to imperfect links and radio signal strength fluctuations in dynamic

environments, two node sequences recorded from the same spatial path are not nec-

essarily identical, or even of the same length. To compensate for noisy fluctuations in

capturing similar trajectory patterns, we borrow a similarity measure from computa-

tional biology where functional, structural, or evolutionary relationships between se-

quences encoding biological macromolecules have been thoroughly investigated. Also,

note that once trajectory data is collected, the corresponding mobile user ID can be

discarded, allaying possible privacy concerns.

3.4.2 Similarity Measure

We use a variant of the longest common subsequence metric known from string the-

ory and a variant of the Smith-Waterman algorithm [73] to calculate this similarity

measure between two sequences.

Informally, to compute the similarity between two sequences TA = A1 . . . AnAand

TB = B1 . . . BnB, we count how many nodes we have to insert, delete, or substitute in

TA to obtain TB.

Page 51: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 39

We define the partial match function FAB(i, j), which computes the similarity

between the prefixes of length i and j of TA and TB, A1 . . . Ai and B1 . . . Bj. FAB can

be defined recursively:

FAB(i, 0) = 0 for 0 ≤ i ≤ nA,

FAB(0, j) = 0 for 0 ≤ j ≤ nB, (3.1)

FAB(i, j) = max[FAB(i− 1, j − 1) + s(Ai, Bj),

FAB(i− 1, j) + d,

FAB(i, j − 1) + d,

0],

where the similarity for insertion or deletion operations, d, as well as the similarity

function on individual nodes are free parameters. In our experiments, we use d = 0,

meaning we see no similarity in deletion or insertion operations, and we set s(A,A) =

1 and s(A,B) = 0 ∀A 6= B. With these parameters, FAB(nA, nB) is the length of

the longest common subsequence in the two sequences.

We often need to compare several partial trajectories A to a significantly longer

complete trajectory B. As it is defined above, FAB(nA, nB) will be lower the shorter

A is, even if (in the matching part of B) there is a perfect match. To compensate for

differences in length of A or B, we normalize the similarity measure by dividing by

the length of the shorter sequence:

S(A,B) =FAB(nA, nB)

min(nA, nB).

Note that the similarity measure we define is not a distance metric.

3.4.3 Cluster Representation

Based on the pairwise similarities between all pairs of sequences, we apply a hierarchi-

cal clustering method for classifying each mobility trajectory into a certain number of

Page 52: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 40

characteristic mobility pattern clusters. We use the average linkage metric which uses

the average similarity between objects in two clusters to determine whether clusters

are merged. For a more detailed description of the hierarchical clustering method, we

refer to [32].

Each cluster consists of a number of similar sequences. During the prediction

stage of our algorithm, we will be presented with a partial trajectory T and asked to

find the most likely cluster for this trajectory. While it would be possible to compute

average linkage for T and each cluster, this would entail computing the similarity

between T and each trajectory in the database. To avoid limiting the size of our

database, we instead propose a probabilistic representation for each cluster, so that

we can efficiently query for the best matching cluster.

We create a representation for our clusters in two steps: for each cluster, we

first align all its sequences and then create a probabilistic summary of the aligned

sequences.

Multiple Sequence Alignment

Given a set of sequences, multiple sequence alignment algorithms compute how the

sequences should be lined up in order to maximize overlap. Our algorithm for comput-

ing the similarity between two sequences essentially computes a sequence alignment

for these two sequences. In the general case, however, multiple sequence alignment

is an NP-hard problem [79]. Heuristic alignment methods are widely used for DNA

or protein alignments in bioinformatics [65]. We use a modified version of ClustalW,

one of the most popular alignment tools [78].

The ClustalW algorithm starts by aligning the most similar sequences, and pro-

gressively adds more distant sequences one by one. This iterative procedure yields a

good alignment of all sequences. We have changed the alphabet of twenty amino acids

or four DNA base pairs used in computational biology to the set of node IDs more

suitable for our situation. We also use an unweighted substitution matrix, making

each substitution equally likely. The computation complexity of ClustalW algorithm

is O(N2L2) where N is the number of sequences and L is the sequence length [2].

To construct a cluster profile database, the aligned trajectory sequences need to be

Page 53: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 41

z a y u r s m a

z u r s t a

a r s l t

m t u z y q p b v m

t z q b q m

m q b v n

a l o r t z t b o r t

l o z t r z

o z b o t

Clustering

- a - - r s l t -

z a y u r s m - a

z - - u r s - t a

m t u z y q p b v m

- t - z - q - b q m

m - - - - q - b v n

…a l o r t z t b o r t

- l o - - z t - - r z

- - o - - z - b o - t

Alignment

Figure 3.1: Clustering and alignment procedures.

stored with storage cost O(NL).

The output of the algorithm is aligned sequences that have the same length. Gaps

in the aligned sequences are marked with a special gap symbol (see Fig. 3.1). We

compute a probabilistic representation from these aligned sequences within a cluster.

Probabilistic Cluster Representation

Given the set of aligned sequences of length n, we construct a probabilistic repre-

sentation for the cluster, which we call the cluster profile. A profile is a sequence

of probability distributions P = P1 . . . Pn. At each position i, the probability dis-

tribution Pi(A) denotes the probability that node A appears in position i. This

representation can also be considered a 0th order Markov model of the set of aligned

Page 54: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 42

sequences.

The cluster profiles allow us to efficiently find the most likely cluster, given a

partial test sequence. See Fig. 3.1 for an illustration of clustering and alignment for

profile generation, and Fig. 3.2 for a profile example of sequences after clustering.

3.5 Connectivity Prediction

In this section, we describe a long-term connectivity prediction algorithm. The predic-

tion algorithm provides a set of possible future trajectory nodes using the constructed

mobile trajectory clusters in Sec. 3.4.

If the future trajectory of a mobile user is unknown, our system tries to predict its

behavior by comparing it to historical data. We will demonstrate that even limited in-

formation about the future relay nodes can significantly improve routing performance

in terms of transmission cost and load balancing in Chapter 4.

Specifically, we are given a partial trajectory TM = N1 . . . NnMrecorded after

the mobile user enters the network. We would like to compute a set of trajectories

through the network that are likely continuations of the recorded partial trajectory.

In our experiments, we compute the cluster that TM most likely belongs to, and use

all elements in that cluster as our set of likely trajectories. For each of the returned

sequences, we have to find the most likely position of the last node of our partial

trajectory TM , so that we can avoid pushing data to nodes that have already been

visited by the mobile node. In the next two sections, we describe how we compute the

closest cluster (Sec. 3.5.1), and how we compute the current position of the mobile

node within the returned set of sequences (Sec. 3.5.2).

3.5.1 Cluster Matching

Computing the similarity between a trajectory and a probabilistic trajectory profile

is very similar to computing the similarity between two trajectories. In fact, the

recursive definition (3.1) can be used unaltered, except that the partial match function

FTP now operates on a trajectory T = N1 . . . NnTand a profile P = P1 . . . PnP

. We

Page 55: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 43

-RT-EACE-GIP----D--S -R--E-CEIGIPS---D--S --Y-E-C---I--------- REC-EICG--IGNG-ND--S -ED-E-C---IGP---D--S -R--E-CH-CIGK---D--S -R--E-C---IGC------- -RI-E-CG--SG-D-LDK-S --K-E-CG--IGTD-WD--S -R--E-CN--IG-DGTD--S -REPE-CN--IGID-GDKDS

RTEACEGIPDS RECEIGIPSDS YECI RECEICGIGNGNDS EDECIGPDS RECHCIGKDS RECIGC RIECGSGDLDKS KECGIGTDWDS RECNIGDGTDS REPECNIGIDGDKDS

(a) Sequences in a cluster

-RT-EACE-GIP----D--S -R--E-CEIGIPS---D--S --Y-E-C---I--------- REC-EICG--IGNG-ND--S -ED-E-C---IGP---D--S -R--E-CH-CIGK---D--S -R--E-C---IGC------- -RI-E-CG--SG-D-LDK-S --K-E-CG--IGTD-WD--S -R--E-CN--IG-DGTD--S -REPE-CN--IGID-GDKDS

RTEACEGIPDS RECEIGIPSDS YECI RECEICGIGNGNDS EDECIGPDS RECHCIGKDS RECIGC RIECGSGDLDKS KECGIGTDWDS RECNIGDGTDS REPECNIGIDGDKDS

(b) Sequences after alignment

(c) Profile presentation from the aligned sequences in a cluster

Figure 3.2: Sequences belonging to a cluster, the aligned sequences, and their graph-ical profile. The profile generated by WebLogo[13] graphically represents all possiblerealizations of sequences within a mobile trajectory cluster. Letter sizes reflect prob-abilities.

Page 56: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 44

m t u z y q p b v m

- t - z - q - b q m

m - - - - q - b v n

Cluster Profile Database

P1(m) =1, P2(t) =1, ..., P9(v) = 2 /3, P10(m) = 2 /3

P9(q) =1/3, P10(n) =1/3

m t z q

Test Sequence

Predicted trajectory nodes = { {p, b, v, m}, {b, v, n}, {b, q, m} }

Figure 3.3: Sequence alignment of a partial trajectory with a cluster profile.

need to change the definition of the per-node similarity function s(Ni, Pj) to reflect

the likelihood of Ni given the probability distribution Pj. We choose

s(Ni, Pj) =

{ePj(Ni) Pj(Ni) > 0,

f otherwise.

with the parameter values of d = −1, e = 8, and f = −1 which have proven effective

in our setting. The parameters in the Smith-Waterman algorithm can be tuned to

the problem, e. g., denser deployments incur higher variability of relay nodes, thus

the parameters need to allow for additional mismatches and insertions/deletions.

3.5.2 Alignment

Once we have found the best-matching cluster, we need to align the partial trajectory

with the sequences in the cluster in order to find the part of the trajectories that will

be visited by the mobile node. All sequences in the cluster are aligned to each other

and the cluster profile using multiple sequence alignment as described in Sec. 3.4.3.

It is therefore sufficient to find an alignment of the partial trajectory T to the profile

Page 57: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 45

Figure 3.4: Typical trajectories of moving buses in UMass from the DieselNet dataset.When a bus is associated with a nearby access point, the access point is shown witha marker.

P . In particular, we are interested in the position J that the last node in the partial

trajectory, NnT, is matched to in the profile P .

Note that the Smith-Waterman algorithm implicitly aligns two sequences in order

to compute their similarity. We can make this alignment explicit: after we compute

FTP (i, j), the best-matching position of the last node in T , NnT, is given by J =

argmaxj FTP (nT , j).

If the matched cluster contains the set of expanded trajectories {T1 . . . Tk}, all

of which have been aligned to be of length n as described in Sec. 3.4.3, then the

set of trajectories that needs to be considered by the data stashing optimization is

{T1[J, n] . . . Tk[J, n]}. See Fig. 3.3 for an illustration.

3.6 Empirical Evaluation

We validate our probabilistic trajectory model used for prediction using real-world

mobility data traces from UMass DieselNet [4] (shown in Fig. 3.4). The traces consist

of time series of wireless access point (AP) IDs that wireless cards installed in buses

Page 58: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 46

5 10 23 500

20

40

60

80

100

120

140

160

180

200

# of selected clusters

entr

op

y p

er e

ach

ass

oci

atio

n

Figure 3.5: Average entropy of wireless associations within a cluster, with error barsshowing the standard deviation. The selected 23 clusters provided by our clusteringalgorithm resulted in the smallest entropy of 6 bits.

connect to. There are 34 buses, 4198 access points, and 789 bus trips in the dataset,

covering an area in and around the UMass campus. Note that we did not use any

bus identification information, but used only wireless association list of each bus trip

as the input of our trajectory model.

We tested the hierarchical clustering algorithm described in Sec. 3.4 using the

DieselNet dataset. The algorithm ended up with clustering the set of 789 bus trips

into 23 clusters. Even though we have no ground truth to compare these clusters

against, we quantified the entropy of wireless connections at each association within a

cluster (referring to [38]) to demonstrate the performance of our clustering algorithm.

We show that the resulting 23 clusters lead to the smallest entropy of wireless as-

sociations within each cluster as in Fig. 3.5. This means that our clustering algorithm

found out a tight classification of mobile users’ movement patterns into a characteris-

tic mobile cluster by selecting the appropriate number of typical movement patterns.

Regarding prediction accuracy on how well our method estimates the correct an-

ticipated future connectivity of mobile users, we will show related results in Sec. 4.6

together since the mobility prediction algorithm is closely coupled with our predictive

Page 59: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 3. LONG-TERM MOBILITY PREDICTION 47

data delivery scheme in Chapter 4.

3.7 Summary and Discussion

We have presented a mobile trajectory clustering method using only wireless associ-

ation lists from mobile users’ trips to classify them into a certain number of charac-

teristic trajectory clusters. This allows the prediction of a set of possible anticipated

trajectory associations for mobile users. This structure abstracts from unnecessary

and possibly misleading spatial information, and can be effectively used for reliable

data delivery. We also presented a probabilistic representation for sets of similar tra-

jectories. This representation is used to compactly describe a cluster of trajectories

and to efficiently find the best matching cluster against the whole cluster database,

given a partial trajectory.

The trajectory clustering algorithm is currently executed in an off-line learning

phase. On-line learning for efficiently updating mobility model would be an interest-

ing future work. As each mobile node associates with some of mesh nodes, and collects

the connectivity information, we need an efficient collection algorithm to retrieve each

user’s connectivity history for keeping the most up-to-date mobility patterns. In addi-

tion, once the network analyzes and updates mobile users’ mobility model, designing

an efficient distribution algorithm would be also crucial so that data sources through-

out the network can exploit the updated model for spreading necessary information

to users in an effective way. Also, dynamically tuning an appropriate updating fre-

quency depending on degrees of freedom in movement would be another interesting

research direction.

Interesting directions for algorithmic improvements include a more sophisticated

clustering method that explicitly represents partial trajectories and is able to partition

long trajectories into short pieces that can be clustered more efficiently. A multi-tier

or hierarchical approach to deal with extremely large networks is another avenue for

future work.

Page 60: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Chapter 4

Predictive Data Delivery

In this chapter, we present a data delivery scheme that exploits knowledge about

the movement patterns of mobile users within a network of data sources to minimize

energy consumption and network congestion. For delay-tolerant network applications,

we propose to route data not to the sink directly, but instead to a relay node along

an announced or predicted path of the mobile node that is close to the data source

in terms of communication hops. The relay node will stash the information until the

mobile node passes by and picks up the data.

Classic multi-hop wireless routing protocols compute the shortest path (in hops

or metrics such as ETX [16]) between sources and destinations in a network. Since

the shortest path minimizes the number of necessary transmissions, this strategy

minimizes not only delay but also energy use.

In the presence of mobility, however, the shortest path computed at one point in

time is not necessarily the shortest possible path connecting the source and the sink.

A shorter path might be available, if the nodes move closer to each other in the future.

The mobile nodes roaming through the network act as data sinks only, and are not

used to forward information. Finding a route from anywhere within the network to a

mobile node is accomplished by finding a route to a relay node in the network which

is or will be within radio distance of the mobile node. An optimal routing strategy

can be devised if the trajectory of the mobile nodes is known.

48

Page 61: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 49

We address the problem of sending information from the nodes in a mesh net-

work to multiple mobile users moving in the same space as the network. Given the

information about each user’s trajectory, we aim to minimize the expected routing

cost to that user. We assume that the information sources and mesh network nodes

are stationary (not mobile), while data sinks (humans or vehicles) move inside the

area covered by the mesh network. Finally, we assume that applications tolerate a

packet delivery delay in the order of the average network traversal time for mobile

nodes, e.g., a few minutes. This is often the case in mesh networks that accumulate

measurements until an observer takes a reading [72]. Examples of such data delivery

patterns can also be found in applications that sense information in places where

people work or live and deliver it to user mobile devices, enabling more intelligent

living environments.

The rest of this chapter is structured as follows: In Sec. 4.1, we introduce the prob-

lem of predictive data delivery, and discuss routing benefits from mobility prediction.

We present our contributions in the field of routing to mobile users in Sec. 4.2, and

discuss related work in Sec. 4.3. In Sec. 4.4, we give an overview of how a data delivery

scheme can exploit the knowledge of future associations of mobile users for routing

benefits, and we show the benefits can be achieved through network optimization in

Sec. 4.5. In Sec. 4.6, we present an experimental evaluation of the routing scheme

and discuss the results, and finally we conclude this chapter in Sec. 4.7.

4.1 Routing Benefits from Mobility Prediction

The main objective of this chapter is to develop a routing scheme that delivers data

to mobile users through a wireless mesh network. We exploit knowledge about the

mobility of the users to lower the cost and increase the reliability of data transmission.

In particular, we solve the following problem: One (or several) mobile user moves

through a network, collecting local data from the nodes in the network. Traditionally,

we would either send all data directly to the current position of the mobile user (that

is, to a node that is close to the mobile user, which will relay the information to

the mobile user), or not send any data at all, and wait for the mobile user to collect

Page 62: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 50

Op#malRouteSelec#onUsingPredic#veKnowledge

•  Op#miza#onproblem– ForsensornodeA,

– Findop#malstashingnodes,minimizingrou#ngcost,•  Fromsensornodeitself•  Totheselectedstashingnodes

– Subjectto•  Stashingnodescoverallpossiblefutureconnec#onsofmul#plemobileusers

M1

M2

T1 T2

T4

N

25

A T3

Figure 4.1: Given a set of trajectories, we select an optimal set of stashing nodes foreach mesh node. This set minimizes transmission cost, but ensures that no matterwhich trajectory is used by each mobile node, the data will be collected.

the data as it passes each of the mesh nodes. The latter option is often infeasible

if we cannot control the movement of the mobile user, or if moving within radio

range of each desired node is not an option. We choose a compromise between the

two extremes. Using knowledge about the trajectory of the mobile user, data sources

route data to a set of stashing nodes that store information along the likely trajectories

of the mobile user.

At the core of our method is an optimization procedure that for each mesh node

chooses a set of stashing nodes that guarantee (with high probability) that a mobile

user will receive data which the data source had. See Fig. 4.1 for an illustration. The

optimization procedure is described in detail in Sec. 4.5.

We assume some knowledge about the possible trajectories that a mobile user can

take. This information either comes from the mobile user itself, or is deduced from

observations of motion patterns of users in the network, resulting from Chapters 2

Page 63: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 51

and 3.

Our evaluation in Sec. 4.6 shows that exploiting knowledge of users’ motion can

greatly decrease transmission costs and energy use. However, we do require stationary

mesh nodes to have some storage capacity for stashing data, and we assume that the

data delivered to the mobile user is delay-tolerant. The user will collect the data

throughout its journey through the network, possibly introducing some delay in data

availability to the user.

4.2 Contribution

In this chapter, we present our contributions in the field of mobile routing on wireless

mesh networks as follows:

• We present data stashing, a data delivery scheme that routes data to mobile

users, but lets each mesh node decide where on a set of possible trajectories it

wants to stash its data, to be picked up whenever the mobile user passes the

stashing node.

• Data stashing scheme consumes much less routing cost while achieving higher

packet delivery reliability as opposed to traditional routing schemes, demon-

strating scalability for a large number of mobile users.

• Our proposed method provides not only a routing protocol, but also a way to

improve existing protocols by learning and exploiting mobility patterns.

• We demonstrate a key claim that even with limited probabilistic information

about future trajectories of mobile users, optimization of routing paths leads to

significant improvements in routing performance.

The proposed routing scheme benefits heavily from mobility prediction algorithms

described in Chapters 2 and 3 for routing purpose to concurrently deliver data to

multiple mobile users. This combined approach enables a reliable and load balancing

data delivery throughout the network, while minimizing packet routing overhead.

We also show some interesting observations about trade-off property as follows.

Page 64: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 52

• Tolerated delay vs. Routing performance: We demonstrate that tolerated delay

allows us to use techniques that significantly improve routing performance.

• Radio energy cost vs. Storage cost: Our data stashing scheme provides a spe-

cific way to reduce radio energy cost, by selectively using storage resources

throughout the mesh networks.

4.3 Related Work

There is a large body of research in routing protocols designed to deliver packets to

mobile users in wireless networks. Some of these protocols assume little about the

network and the mobility pattern of the mobile users and perform network discovery

pro-actively or on-demand. Classic protocols such as DSR [31] and AODV [68],

which were originally designed for wireless ad hoc networks, and sometimes used in

mobile ad-hoc routing, fall into this category. In the wireless sensor network context,

protocols such as SEAD [35] and TTDD [81] construct energy-efficient routing paths

without knowledge of the mobility patterns of the sink.

Especially regarding routing to mobile sinks, mobile trajectories can be pro-

grammed to optimize data forwarding efficiency in [20, 55, 56]. Our work does not

assume a programmable trajectory of the mobile sinks. Researchers have also formu-

lated computing energy-efficient routes in sensor networks as an optimization problem

in [10, 49, 52]. Our work also frames routing as an optimization problem. However,

in our optimization formulation a number of stashing nodes or the sinks themselves

can be feasible destinations, while also taking into account link reliability and the

probabilistic nature of the predicted trajectories of the mobile sinks.

Mobile ad-hoc routing protocols provide several available ways to route packets

from a source to a destination in mesh networks. In case that every node does not

initially know topology of the networks, it needs to discover other stationary nodes or

mobile nodes through some ways. To update recent topology of the networks, reactive

approach and proactive approach have been widely proposed. The reactive approach

basically floods the networks to find a mobile node on demand, and uses the updated

Page 65: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 53

route once the mobile node sends back to the queried node with the reverse route of

the query message. On the other hand, the proactive approach keeps routing tables

updated periodically by broadcasting routing tables.

However, if we can assume that there are both stationary mesh nodes and mobile

nodes in the networks, prediction-based methods can be embedded from a motivation

that the correlation between a mobile node and stationary nodes can be extracted in

that human’s movements are based on a certain degree of regularity, and the correlated

patterns can be used to enable proactive routing by predicting mobile users’ short-

term or long-term association patterns. Our work falls into this category, and takes

an initiative for correlating routing with mobility pattern prediction. In the following

sections, we briefly describe reactive, proactive, and predictive approaches for the

routing problem.

4.3.1 Reactive Approach

One representative of reactive routing protocols is AODV (Ad hoc On-Demand Dis-

tance Vector Routing) [68]. AODV finds available routes on demand when a source

needs to forward a packet to a mobile destination where its current location is not

known. Without updating routing tables periodically, this approach relies on flood-

ing query messages to find mobile users, so the flooded packets can lead to network

congestions. Also, since this approach finds the route on demand, the latency for

packet forwarding increases significantly. DSR (Dynamic Source Routing) [31] is sim-

ilar to AODV in the way to find a mobile user by flooding, but different in that DSR

uses source routing such that during the discovery phase, the source accumulates

the discovered paths to the destination, stores the whole route, and use it for data

forwarding instead of using intermediate nodes’ routing tables.

DYMO (Dynamic Manet On-demand Routing) [7] is a more improved version of

AODV. DYMO uses the basic route discovery and maintenance procedures similar

to AODV, but DYMO can work in both proactive and reactive ways, e.g., routes are

updated only when there are significant topology changes. Due to more optimized

improvements than AODV, DYMO provides the lower latency as well as the lower

Page 66: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 54

packet loss rates than AODV. DYMO is an emerging reactive routing protocol in an

IETF standard (while Optimized Link State Routing Protocol is one representative

of proactive routing protocols in a RFC standard).

4.3.2 Proactive Approach

Proactive routing protocols periodically maintain routing tables for destination nodes

so that network changes can be immediately reflected in routing table entries. Ac-

cordingly, proactive routing protocols are used when network applications need to

meet a hard latency requirement or when traffic patterns are not very sparse.

DSDV (Destination-Sequenced Distance Vector Routing) [67] maintains a routing

table based on Bellman-Ford algorithm. Each routing entry includes a sequence

number for each destination in order to use the most recent route information with

the latest sequence number. Since DSDV needs to update very frequently to support

highly dynamic networks, e.g., mobile ad-hoc networks, the original DSDV protocol

cannot be directly used in mobile networks.

OLSR (Optimized Link State Routing Protocol) [11] further optimizes the routing

table update procedures to reduce the route updates by allowing only a subset of

nodes, called Multi Point Relay (MPR), to generate link-state information. Each node

assigns an MPR among one-hop neighbors, which can connect to two-hop neighbors

while each MPR maintains its MPR selectors who assigned it as their own MPR. MPR

advertises its link state information not to all of neighbor nodes, but only to MPR

selectors so that more efficient link state updates can be processed. This protocol

reduces the number of control packets by reducing duplicate link state information.

4.3.3 Predictive Approach

There has been previous work on exploiting predicted mobility to improve the effi-

ciency of routing to mobile users with predictable trajectories. Chakrabarti et al. [8]

proposed a protocol in which the mesh nodes keep statistics of user visits and trans-

mit information only when the mobile user is within transmission range. Our work

Page 67: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 55

does not assume that the trajectory of a mobile node takes it within single-hop trans-

mission range of each mesh node in the network. Most closely related to our work

is recent work on the proactive scheme in TwinRoute [80]. Based on the user arrival

statistics, a subset of nodes elect themselves as storage nodes and initiate routing

tree construction as roots. The mesh network forwards data to these storage nodes so

that packets can be relayed to the mobile user. Although our work fits in this general

framework, we employ different methods to overcome shortcomings of this approach.

Our protocol is based on a clustering algorithm to improve the accuracy of trajectory

prediction (as described in Chapter 3) and uses the predictive knowledge to help an

efficient routing decision which is scalable for many mobile users in terms of radio

energy consumption and packet delivery reliability.

4.4 Protocol

In this section, in order to clarify the overall procedure of trajectory prediction,

stashing node selection, and routing, we give a high-level description of the protocol

used to negotiate data stashing for a mobile user. The protocol assumes that a mobile

user enters the network and requests data from a set of mesh nodes.

1. Trajectory prediction. When a mobile user joins the network, it beacons in

regular intervals. Mesh nodes in range reply with their IDs and the user selects

the node whose reply was received with the strongest signal as its relay node for

proxy. As the user moves through the network, this yields a string of relay node

IDs. We use this string to predict a set of likely trajectories that most closely

match the recorded prefix in the database of historical trajectories acquired in

an off-line learning phase, as described in Sec. 3.5. If the trajectory or set of

likely trajectories is known, this step can be skipped.

2. Data request and trajectory announcement.

The mobile user announces the set of likely trajectories to the network. The set

of trajectories is encoded and broadcast to the whole network. This message

Page 68: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 56

can also contain a set of mesh nodes whose data are interesting to the mobile

user.

3. Stashing node selection. Upon receiving a user’s request for data and a set

of likely trajectories, each mesh node (which is a data source) computes a set of

stashing nodes that cover the likely trajectories and minimize the routing cost

required to send the data to the stashing nodes. The optimization procedure is

described in Sec. 4.5.

4. Data stashing. Mesh nodes forward data to the stashing nodes, for future

delivery to mobile users.

5. Data collection. As the mobile user moves through the network, it regularly

beacons to announce its position. If a stashing node receives a beacon, it starts

transmitting the data stashed at this node to the mobile user.

This protocol is easily extensible to multiple mobile users. We disambiguate be-

tween the users based on their unique IDs and discuss scenarios with multiple mobile

users in Sec. 4.6.

Note that we assume an underlying point-to-point routing protocol such as S4 [58],

however, we make no assumptions on the properties of this protocol.

4.5 Network Optimization

Contrary to traditional routing schemes, data delivery by stashing does not route to

the current position or in fact, to any single future position of a mobile node. Instead,

we route to all possible trajectories of one or several mobile nodes. To this end, we

choose a set of nodes that covers all trajectories, but at the same time is as cheap to

route to as possible.

We formulate the problem of data delivery from a data source to stashing nodes

along a set of trajectories as a linear programming relaxation of a binary integer

program. The proposed scheme finds, for each data source, the optimal stashing

nodes to which to send the data. Each data source can compute the solution to its

Page 69: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 57

particular routing problem independent of the other nodes. In the following, we will

assume that a node A is asked to route data to one or several mobile nodes which

travel along a set of possible trajectories {T1 . . . Tm}. The output of the optimization

is a set of stashing nodes R = {R1 . . . Rk}.To set up our integer program, let us first define an indicator function I(N)

indicating whether our data source has chosen N to be part of its set of stashing

nodes:

I(N) =

{1 N ∈ R,0 otherwise.

Based on this definition, we can write the objective function to minimize as

f =∑N

I(N)C(A,N), (4.1)

where C(·, ·) denotes the routing cost between two nodes. In our experiments, we use

the expected number of transmissions on a link as the routing cost for that hop, and

the cost for a path is the sum of the per-hop costs.

In order to make sure that the data can be retrieved by the mobile users, there

must be at least one stashing node on each of the trajectories. Given the trajectories

Ti = Bi1 . . . B

ini

, we can write this condition as a single linear constraint per trajectory

Ti: ∑0<j≤ni

I(Bij) ≥ 1 (4.2)

Using these definitions, our problem is to find a set R that minimizes (4.1) subject

to the constraints (4.2). This problem can be solved by a linear program (LP) if we

ignore the integrality constraints. In our case, since the variable I(N) is either zero

or one, we are dealing with the special case of binary integer programming, which we

solve using the bintprog optimization toolbox in MATLAB and AMPL/Gurobi.

Page 70: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 58

Figure 4.2: 41 stationary mesh sensors (marked with red circle) and moving pathsof mobile users in Clark building at Stanford University. 10 different moving pathsincluding the opposite direction are explored while a mobile user carries a sensordevice and communicates with the networks.

4.6 Empirical Evaluation

We conduct experiments with real-world wireless traces to validate our trajectory

clustering algorithm, and evaluate our data delivery scheme in a real-world testbed.

For a larger network evaluation, we also carry out simulations to validate our approach

by comparing our technique against direct routing which immediately delivers data

directly to mobile users in terms of routing efficiency and robustness. We show

that benefits of our technique are better load balancing and more even utilization of

network resources, such as energy.

4.6.1 Evaluation Setup

First we validate our trajectory clustering algorithm on data taken from the DieselNet

traces [4] as several example paths are shown in Fig. 3.4 . We evaluate how accurately

the selected stashing nodes can be actually connected to mobile users.

We evaluate our algorithms in a real testbed deployed in Clark Center at Stanford

University as in Fig. 4.2. 41 TelosB sensor motes [70] are deployed, configured as a

Page 71: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 59

(a) Connectivity graph over 716 sensor nodes where links areshown for PRR > 75%.

0 20 40 60 80 1000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Distance (m)

PR

R

(b) Wireless connectivity characteristic in simulation.

Figure 4.3: Wireless mesh sensor network in downtown San Francisco for simulation.716 sensor nodes are distributed over 830× 790 m2.

Page 72: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 60

1 2 3 420

40

60

80

100

120

140

160

180

200

# of mobile sinks

# o

f p

acke

ts s

ent

StashStash(opt)Direct

Figure 4.4: Routing cost depending on the number of mobile sinks in Clark testbed.

mesh network. 10 different moving paths are explored by mobile users while a mobile

user carries a TelosB mote and communicates with the networks. Each mobile user

broadcasts at 1 Hz while moving through the networks. The node which replies back

to the mobile node with the highest signal strength is considered as the association

node at every beacon time.

We also test the algorithms in a larger simulated network of downtown San Fran-

cisco. The network consists of 716 sensor nodes in an 830×790 m2 area (see Fig. 4.3).

We generated 20 different trajectories, a subset of which we show in Fig. 4.6. Each

vehicle moves at a random speed of N (30, 52) km/h and broadcasts beacons at 1 Hz.

To derive radio signal strengths for transmitted packets, we use a combined path-loss

and shadowing model with a path-loss exponent of 3, a reference loss of 46.67 dB, and

an additive Gaussian noise of N (0, 52) in dB. These parameters have been derived

from measurements in urban environments [24]. We model interference effects using

the CPM model [45] in TinyOS 2.1 [1] with meyer-light noise traces.

We implemented our routing algorithm in the TinyOS TOSSIM simulator [48]

using idealized static shortest-path routing. In our scenario, it is often the case that

we route several packets along similar paths. We use multicast to reduce redundant

Page 73: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 61

packet transmissions. We ran all of the experiments 10 times, and draw mean values

with standard deviation error bars wherever applicable.

4.6.2 Network Performance

We evaluate routing in terms of routing cost, packet delivery, and load balance met-

rics, and compare our optimization scheme (Stash) to two other protocols: a point-

to-point proactive distance-vector routing protocol (Direct) where each sensor node

delivers its data to the currently connected relay node of each mobile sink, and the

idealized stashing scheme that is given the perfect set of future locations for all sinks

(Stash(opt)). The Direct protocol compares performance of our optimization scheme

to traditional data delivery methods. The Stash(opt) scheme serves as an upper

bound on what our algorithm could achieve, given perfect prediction. Note that this

is not only a theoretical bound; it is achieved if the trajectories of nodes are known

in advance — for example because the mobile sink announces them.

Our evaluation shows that Stash has lower control overhead than Direct. Both

Stash and Direct require flooding that reaches the entire network to announce the

presence and paths to the mobile sink. However, there is a key difference: Direct

scheme requires continuous flooding to announce each mobile sink’s current relays,

while in the Stash scheme, the mobile sinks need to announce the anticipated trajec-

tory node IDs only once. In our 716 node topology, it took 682 packet transmission

to disseminate one packet from a mobile user to the entire network using Drip dis-

semination algorithm in TinyOS 2.x. In our simulation setting, the Direct method

requires one position update every 2 seconds for the sink speed of 30 km/h. This po-

sition update needs to be disseminated throughout the network. Hence, the control

overhead of Direct for this setting is 341 packet transmission per second. On the other

hand, in Stash, the encoded set of trajectory nodes can be disseminated throughout

the network with a total of 7502 packet transmissions per mobile sink.1 Thus, the

control overhead of Direct exceeds that of Stash after 22 seconds of operation and

continuously increases at 341 packet transmissions per second while the overhead for

1The size of the encoded trajectory requires 11 packets due to 110 byte payload limit in TinyOSpackets. Thus, it takes 7502(= 682× 11) packet transmissions per mobile sink.

Page 74: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 62

Stash remains constant.

When we evaluate the routing cost, we count how many packets were used to

deliver data from sensor nodes to destination nodes, after sensors learn the identity of

the correct relay or possible relay candidates. In the evaluation of testbed experiments

(see Fig. 4.4) and simulations below, we demonstrate that even without considering

the control cost, our Stash scheme requires far fewer data packets than the Direct

scheme.

In our experiments, we measure whether packets arrive at the stashing node (or

in the direct routing case, at the current relay node), we do not take into account

packet loss on the last hop, from the stashing or relay node to the mobile node. Since

this affects Stash and Direct equally, it does not change the comparative analysis,

however, it might lower the overall reliability of both methods. Consequently, we

only count a packet as delivered if it is stashed at a node that is visited by the mobile

node, i. e., if the stashing node is the associated node to the mobile node at any point

in time. In reality, even if the stashing node is never selected as the associated node,

it might still be within range. While this would slightly increase the reliability of

data stashing, we do not believe it would change the qualitative results.

Note that the protocols use global knowledge of the network and deliver data

to mobile sinks along shortest routes. A specialized protocol like S4 [58] might be a

better choice for the dynamic routing environment in sensor networks. To understand

the implications of using scalable routing protocol such as S4 to route packets to the

stashing nodes, we ran the S4 protocol in TOSSIM on the same topology with 20

beacon nodes in which we ran Stash. We computed the cost of the paths selected by

S4 to route packets from the sensor nodes to the stashing nodes. The result shows

that the routing cost of Stash using S4 is 1.27 times higher than if using an ideal

shortest path routing. We do not expect this change in routing algorithm to lead to

significantly different results of our comparative evaluation.

We demonstrate that given even limited information about future trajectories

of sinks, optimization of routing paths leads to significant improvements in routing

performance.

Page 75: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 63

1 5 10 20 30 400

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

L

frac

tio

n o

f co

rrec

t st

ash

ed p

acke

ts

StashStash(opt)

Figure 4.5: Fraction of packets stashed on nodes that are actually visited by themobile node depending on number of nodes L used for prediction in the DieselNetdataset.

Clustering and Trajectory Prediction

We tested the hierarchical clustering algorithm described in Sec. 3.4 on the DieselNet

dataset. The algorithm clustered the set of 789 bus trips into 23 clusters as shown in

Sec. 3.6.

To make sure that our prediction would work in real-world settings, we use the

clusters we found in the DieselNet traces to predict likely trajectories for a partial

trajectory (which was not part of the training data). Since there is no network data

available, we assume that nodes are connected by perfect links, and that routing

cost between two nodes is proportional to the Euclidean distance between them.

While these idealized assumptions do not allow us to draw conclusions about network-

related quality metrics, they help us evaluate the quality of our prediction algorithm

in the context of data stashing. Using the predicted trajectories and the cost metric

described above, we select stashing nodes for ten randomly chosen data sources in the

network, and measure what percentage of packets the mobile sink is able to retrieve.

The results in Fig. 4.5 show that our prediction method results in excellent stashing

Page 76: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 64

Figure 4.6: Moving paths of mobile vehicles. Each vehicle moves at a speed ofN (30, 52) in km/h. We generate 20 different moving paths including the oppositedirection as well. All of 20 vehicles are moving over the networks while communicatingwith sensor nodes as in Fig. 4.3(a).

node selections for real-world data.

Routing Performance

We evaluated our network optimization scheme against the direct point-to-point and

perfect stashing algorithms using the simulated network. In these experiments, all

716 sensor nodes are transmitting data to 1 – 20 mobile sinks. Given the moving

paths of mobile vehicles as shown in Fig. 4.6, we constructed trajectory clusters and

their profiles. The average length of a cluster profile is 513.

We first analyze how the number of mobile sinks affects the performance of these

algorithms. Even though the performance of all algorithms degrades as the number of

sinks increases, stashing algorithms are affected less, because they exploit overlaps in

the different trajectories (see Fig. 4.7). This effectively prevents network congestion.

In fact, data stashing requires only 19% of packets to deliver the same data, compared

to direct routing. Consequently, congestion in the network causes direct routing to

drop a significant number of packets while stashing algorithms deliver above 80% of

the packets even for 20 sinks (see Fig. 4.7(b)). The Stash routing algorithm uses up

to 30 retransmissions just like the state-of-the-art collection protocol CTP [23]. Note

that the performance of stashing algorithms also decreases due to increased network

congestion, but at a much lower pace.

Page 77: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 65

1 2 4 6 8 10 12 14 16 18 200

0.5

1

1.5

2

2.5

3x 10

5

# of mobile sinks

# o

f p

acke

ts s

ent

StashStash(opt)Direct

(a) Routing cost

1 2 4 6 8 10 12 14 16 18 200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

# of mobile sinks

pac

ket

del

iver

y ra

tio

StashStash(opt)Direct

(b) Reliability. Shown are mean, error bars are standarddeviation

Figure 4.7: Routing cost and delivery reliability depending on the number of mobilesinks.

Page 78: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 66

The performance of the predictive stashing scheme is close to the upper bound set

by perfect prediction, suggesting that even limited knowledge of the future trajectory

can significantly improve routing performance.

We also evaluate how the length of predicted trajectories affects performance. If

the trajectory prediction is very uncertain far in the future, or if there are some con-

straints on permissible packet delivery delay, it might be preferable not to use the

full predicted trajectories, but only allow stashing at the first W nodes. The results

of these experiments are summarized in Fig. 4.8. Intuitively, longer trajectories give

the network optimization more choice to select future stashing nodes. Consequently,

sensors are more likely to find stashing nodes close to their own location, decreasing

routing cost and congestion. Note that our optimization scheme can only counter-

balance the effects of imperfect trajectory prediction if it is given enough choice. In

our experiments, the break-even point is at W = 10. Achieving high reliability and

efficiency of data delivery to the sinks, however, has its cost in increased delay. As W

increases, it is more likely that the stashing nodes are located far in the future along

the sink’s trajectory.

There is another interesting tradeoff between transmission cost and computation

cost depending on W . As W increases, each sensor node receives a larger number of

anticipated trajectory nodes from mobile sinks, and needs to solve a more complex

linear program. In practice, especially in large networks where we would expect very

long trajectories, one would set a limit of W ≈ 100.

The prediction algorithm uses the first L nodes of the sink trajectory to predict

the rest. Fig. 4.9 shows the performance of data stashing (we use packet reception

ratio as a proxy) as a function of L. Too little information about the trajectory

leads to worse performance as prediction quality suffers. However, waiting for more

information is only useful up to a point: waiting for information also results in fewer

choices for stashing, since some of the trajectory has already been visited. In our

setting, L = 20 appears optimal.

We evaluate the timing of packet delivery of each scheme to emphasize why Direct

scheme inherently lacks data timeliness. In our simulation setting, the stationary

mesh networks lead to the average communication hops of 10, spanning from 1 hop

Page 79: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 67

1 10 25 50 75 100 125 150 1750

0.5

1

1.5

2

2.5

3x 10

5

W

# o

f p

acke

ts s

ent

StashStash(opt)Direct

(a) Routing cost

1 10 25 50 75 100 125 150 1750

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

W

pac

ket

del

iver

y ra

tio

StashStash(opt)Direct

(b) Packet delivery ratio to mobile sinks, representing themean value and error bars of standard deviation

Figure 4.8: Routing cost and delivery reliability depending on the number of predictedtrajectory nodes W for 10 mobile sinks.

Page 80: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 68

1 5 10 20 30 400

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

L

pac

ket

del

iver

y ra

tio

StashStash(opt)Direct

Figure 4.9: Packet delivery reliability depending on number of nodes L used forprediction. Shown is data for 10 mobile sinks, with mean value and error bars showingstandard deviation.

to 26 hops (as the distribution of the number of hops is shown in Fig. 4.10(a)). For the

mobile sinks’ speed of 30 km/h, the average transition time of mobile nodes is given

by 2.2 seconds (see the distribution of transition time in Fig. 4.10(b)). Fig. 4.10(c)

shows that Direct scheme needs a larger number of communication hops and thereby

much longer travel time to arrive at the association node of the mobile node from

a data source, e. g., 15 seconds for 10 mobile sinks case. This means that when the

packet arrives at the destination relay node, the mobile node would be out of range

already, and now connect to some other mesh nodes far away from the previously

connected node. In Stash scheme, stashing data at some intermediate storage nodes

(somewhere between the data source and the mobile sink) significantly reduces the

number of travel hops, and the packet travel time.

To evaluate the feasibility of efficiently computing the stashing nodes through

optimization on the sensor node platform, we measured the running time for solving

the binary integer program described in Sec. 4.5. The results for different platforms

are shown in Fig. 4.11: we tested the performance on a Dell Precision 390 PC with

Page 81: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 69

0 5 10 15 20 25 300

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

# of hops

dis

trib

uti

on

(a) Distribution of the number of hopsthroughout the mesh networks

0 2 4 6 8 10 120

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

transition time (s)

dis

trib

uti

on

(b) Distribution of mesh node transition timeof mobile sinks

1 2 4 6 8 10 12 14 16 18 200

5

10

15

20

25

30

35

# of mobile sinks

pac

ket

del

ay (

s)

StashStash(opt)Direct

(c) Packet delay, representing the mean time and error barsof standard deviation

Figure 4.10: Distributions of the number of hops and node transition time of mobilesinks in evaluation data, and packet delay performance. Large packet delay in Directscheme would lead to a critical performance degradation in the dynamic transitionsof mobile nodes.

Page 82: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 70

1 2 4 6 8 100

50

100

150

200

250

300

350

400

450

500

# of mobile sinks

run

nin

g t

ime

(ms)

MATLAB (pc)Gurobi (pc)Gurobi (emb)

Figure 4.11: Running time for a sensor node to solve an optimization problem forstashing in each platform/tool depending on the number of mobile sinks.

Ubuntu Linux and a 2.4 GHz Core 2 Duo processor, and an embedded platform: a

fit-PC2 with Ubuntu Linux and Intel Atom Z530 1.6GHz. We also tested two solvers:

the bintprog optimization toolbox in MATLAB and the AMPL/Gurobi solver. The

solution time for the optimization problem each node has to solve is less than 500 ms

on an embedded platform.

A strength of data stashing is implicit load-balancing. Fig. 4.12 shows that data

stashing spreads packet transmissions more evenly, as opposed to the tree-like rout-

ing patterns seen in direct routing to the current position of the mobile sink. In

Direct scheme, there exist many hot regions which transmit a large number of pack-

ets (see Fig. 4.12(a)) whereas there are only very few hot regions in Stash scheme

(see Fig. 4.12(b)).

We have also tested the robustness of our data stashing scheme against differences

in the speed of mobile users. Because the trajectory matching algorithm implicitly

compensates for speed differences, changes in the speed of mobile users do not affect

reliability. After training with a speed of 30 km/h, varying the speed between 30 and

90 km/h in the testing phase has no significant impact on reliability, which remains

above 80% for 30, 50 km/h and above 70% above for 70, 90 km/h as shown in Fig. 4.13.

Page 83: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 71

−122.43 −122.428 −122.426 −122.424 −122.422 −122.42 −122.418 −122.41637.749

37.75

37.751

37.752

37.753

37.754

37.755

37.756

37.757

37.758

37.759

0

50

100

150

200

250

300

350

400

(a) Potential plot of the number of packetssent by a node for Direct scheme

−122.43 −122.428 −122.426 −122.424 −122.422 −122.42 −122.418 −122.41637.749

37.75

37.751

37.752

37.753

37.754

37.755

37.756

37.757

37.758

37.759

0

50

100

150

200

250

300

350

400

(b) Potential plot of the number of packetssent by a node for Stash scheme

0 500 1000 15000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

maximum # of packets sent by node

frac

tio

n o

f se

nso

r n

od

es

StashStash(opt)Direct

(c) Fraction of nodes sending less than a certain number ofpackets

lati

tude

longitude

# of packets

Figure 4.12: Load balancing throughout the networks (for 10 mobile sinks case).

Page 84: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 72

30 50 70 900

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

moving speed (km/h)

pac

ket

del

iver

y ra

tio

StashStash(opt)

Figure 4.13: Packet delivery reliability depending on speed of mobile users. Shown isdata for 10 mobile sinks, mean value and error bars showing standard deviation.

Finally, we evaluate the storage requirements that data stashing algorithms impose

on sensor nodes (see Fig. 4.14). It is likely that data stashing requires more storage

than direct routing schemes; the node stashing most data needs to store around 200

packets in our scenario. Such peaks occur at “favorite” stashing locations, which

turn out to be the intersections of several trajectories as shown in Fig. 4.14(b). In

our opinion, data storage is generally less problematic than radio transmission in

sensor networks, making this a good trade-off.

4.7 Summary and Discussion

Energy efficient communication system is important for practical deployments of mesh

networks. Radio transmission consumes a large part of the limited energy resources

of mesh nodes. We have presented a data delivery protocol that exploits knowledge

of the mobility of users querying the mesh network to reduce transmission cost. We

focused on the common case that the data that a mesh node collected is delay-

tolerant. Instead of directly transmitting to the mobile user, data can be stashed

Page 85: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 73

100 200 300 400 500 600 7000

20

40

60

80

100

120

140

160

180

node ID

# o

f st

ash

ed p

acke

ts

(a) Storage cost throughout the mesh nodes

•  Datastashingrequiressomestoragecost

•  Thereexist“favorite”stashingloca8ons,suchasthebusyintersec8onofseveraltrajectories

•  Trade‐off:

Radioenergycostvs.Storagecost

StorageOverhead

37

“favorite”stashingloca2ons

(b) Favorite storage node distribution over the networkswhere •: ≥ 150 packets, •: ≥ 100 packets, •: ≥ 50 packets,•: ≥ 10 packets, presented with mobile users’ moving paths

Figure 4.14: Storage overhead over the mesh nodes for 10 mobile sinks.

Page 86: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 4. PREDICTIVE DATA DELIVERY 74

along the user’s trajectory, where it will be picked up when the mobile user passes.

Our experiments indicate that our scheme significantly decreases the total trans-

mission cost for providing the requested information to mobile users over state-of-

the-art ad hoc routing protocols. We also show that we can provide much better

load-balancing, avoiding collisions and consuming energy resources evenly through-

out the network, leading to longer overall network lifetime. More importantly, we

demonstrate that despite limited probabilistic information about future trajectories

of the users, optimization of routing paths leads to significant improvements in routing

performance. Our proposed method provides not only a routing protocol, but also a

way to improve existing protocols by learning and exploiting mobility patterns. This

opens a new direction to maximize the routing performance given network resources.

Currently, we only select stashing nodes once and do not monitor the progress of

the mobile users as they move through the network. In scenarios where prediction is

more difficult, recomputing the set of stashing nodes and correcting prediction errors

by re-stashing at newly predicted nodes could significantly increase packet delivery.

To support the backup mechanism for prediction failures more reliably, it would

be interesting to find out not only anticipated paths in a cluster, but also wider

matched regions over the clusters considering hierarchical associations, and use all

the corresponding nodes for possible stashing nodes. Multi-tier clustering algorithm

using graph partitioning algorithm would be one of desirable approaches.

Although our method can take into account multiple mobile users without prob-

lems, there is currently no protocol that accounts for the possibility of announcing

several users at once. This extension of our method would be useful in several sce-

narios.

Page 87: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Chapter 5

Conclusion

In this dissertation, we presented several algorithms for extracting mobility patterns

using association updates over stationary mesh networks, and predicting short-term

and long-term transitions of mobile users. Based on the predictive knowledge of

dynamic transitions, we have designed a routing scheme which routes data not to the

mobile user directly, but instead to relay nodes along a predicted path of the mobile

user that is close to the data source in terms of communication hops. These techniques

significantly reduce radio energy consumption for packet routing while ensuring high

packet delivery. We have demonstrated a key claim that even limited knowledge of the

future trajectory of mobile users can greatly improve routing performance in wireless

mesh networking.

In Chapter 2, we introduced the mobility graph, a novel direct graph structure

to capture node transitions of mobile nodes using RSSI measurements. By explicitly

differentiating it with network connectivity graph, mobility graph projects physical

movements of mobile users into the space of wireless connectivity and encodes move-

ment patterns of mobile users. The constructed mobility graph is used to predict

future association nodes for the mobile user for proactive data delivery to the mobile

user.

In Chapter 3, we presented a more sophisticated mobile trajectory clustering al-

gorithm to learn long-term transitional patterns of mobile users, using wireless asso-

ciations over time, called a trajectory. Given only the brief connectivity information

75

Page 88: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 5. CONCLUSION 76

without using any geographical information, typical mobile pattern clusters are ex-

tracted, and represented with their own probabilistic profiles which summarize likely

realizations and help faster searching. The mobile clusters allow us to predict the

anticipated trajectory nodes for mobile users over the next few minutes.

In Chapter 4, we presented data stashing, a data delivery scheme from stationary

data sources to mobile users, by exploiting the predicted knowledge of the future

transitions of mobile users in Chapters 2 and 3. Data stashing routes data not to

the mobile user directly, but to relay nodes along a predicted path of the mobile

user that is close to the data source. The optimization of routing paths leads to

significant improvements in routing performance compared to direct routing scheme.

More importantly, this provides a specific way to improve existing mobile routing

protocols by learning and exploiting mobility patterns.

This dissertation provided an analysis of the mobility in wireless network routing

performance, and investigated routing benefits from mobility pattern prediction us-

ing only wireless connectivity information such as RSSI measurement or association

update.

5.1 Future Directions

This dissertation work opens several interesting research directions. In this thesis,

we have considered general mobility models, which are learned with mobile users by

exploring different physical trajectories in the learning phase, and are shared by other

mobile users for the routing. Beyond the general models, it would be interesting

to construct a user-specific mobility model, which captures user’s own and unique

movement patterns. The movement pattern is highly dependent on social activities

and networking among other users [15, 17, 26, 27, 28, 29, 60, 62, 63, 69]. The correlated

mobility patterns in time, space, and social activity can provide useful information to

share data of similar interests in a social group and help more efficient route decision.

For example, if the network detects that a group of users are moving together, the

network can route data to a user who is the closest in terms of communication hops,

and the user can share the data among the group users.

Page 89: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

CHAPTER 5. CONCLUSION 77

In this dissertation, we have not answered the question: which data is interesting

to which users?. To answer this interesting question, designing a dynamic data rec-

ommendation scheme which considers user’s recent mobility pattern history, social

network relationship, and activity history would be an exciting research direction.

This will integrate techniques from wireless networks, social networks, and collabora-

tive filtering all together in a single application. Understanding a user’s background

information would provide a promising technique for improving the recommendation

accuracy, and best meeting user’s needs and interests. The dynamic data recom-

mendation scheme can be effectively used in the context of location-aware mobile

advertisement in which a mobile user can receive customized advertisement in need,

based on his current and past locations, shopping history, and social relationship with

other users in the network.

Page 90: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

Bibliography

[1] TinyOS 2.1.0. http://www.tinyos.net/tinyos-2.1.0/.

[2] Ankit Agrawal and Siddhartha K. Khaitan. A new heuristic for multiple se-

quence alignment. In Proceedings of the IEEE International Conference Elec-

tro/Information Technology, 2008.

[3] D. Ashbrook and T. Starner. Using GPS to learn significant locations and predict

movement across multiple users. Personal and Ubiquitous Computing, Jan 2003.

[4] Nilanjan Banerjee, Mark D. Corner, Don Towsley, and Brian N. Levine. Relays,

base stations, and meshes: enhancing mobile networks with infrastructure. In

MobiCom ’08: Proceedings of the 14th ACM international conference on Mobile

computing and networking, pages 81–91, New York, NY, USA, 2008. ACM.

[5] M. Bayir, M. Demirbas, and N. Eagle. Mobility profiler: A framework for dis-

covering mobile user profiles (technical report version). cse.buffalo.edu, 2008.

[6] Amiya Bhattacharya and Sajal K. Das. Lezi-update: an information-theoretic

framework for personal mobility tracking in PCS networks. Wireless Networks,

8(2/3):121–135, 2002.

[7] I. Chakeres and C. Perkins. Dynamic MANET On-demand (DYMO) Routing.

Internet-Draft, draft-ietf-manet-dymo-12.txt, 2008.

[8] Arnab Chakrabarti, Ashutosh Sabharwal, and Behnaam Aazhang. Using pre-

dictable observer mobility for power efficient design of sensor networks. In IPSN

78

Page 91: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 79

’03: Proceedings of the 2nd International Workshop on Information Processing

in Sensor Networks, Palo Alto, CA, USA, 2003.

[9] Champaign-Urbana Community Wireless Network, http://cuwireless.net.

Champaign-Urbana Community Wireless Network.

[10] Jae-Hwan Chang and Leandros Tassiulas. Maximum lifetime routing in wireless

sensor networks. IEEE/ACM Trans. Netw., 12(4):609–619, 2004.

[11] T. Clausen and P. Jacquet. Optimized link state routing protocol (OLSR), 2003.

[12] R. Coltun, D. Ferguson, and A. Lindem J. Moy. Rfc 5340 ”OSPF for IPv6”,

2008.

[13] G. E. Crooks, G. Hon, J.-M. Chandonia, and S. E. Brenner. WebLogo: A

sequence logo generator. Genome Research, 14:1188–1190, 2004.

[14] Crossbow Technology Inc., http://www.xbow.com. MICAz wireless measure-

ment system, June 2004.

[15] Elizabeth Daly and Mads Haahr. Social network analysis for routing in dis-

connected delay-tolerant manets. MobiHoc ’07: Proceedings of the 8th ACM

international symposium on Mobile ad hoc networking and computing, Sep 2007.

[16] Douglas S. J. De Couto, Daniel Aguayo, John Bicket, and Robert Morris. A

high-throughput path metric for multi-hop wireless routing. In MobiCom ’03:

Proceedings of the 9th annual international conference on Mobile computing and

networking, pages 134–146, New York, NY, USA, 2003. ACM.

[17] N. Eagle and A. Pentland. Reality mining: sensing complex social systems.

Personal and Ubiquitous Computing, Jan 2006.

[18] F. Feng and D. Reeves. Explicit proactive handoff with motion prediction for

mobile IP. In Proc. of the Wireless Comm. and Networking Conf., 2004.

[19] J. Froehlich and J. Krumm. Route prediction from trip observations. Society of

Automotive Engineers (SAE) 2008 World Congress, 2008.

Page 92: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 80

[20] Shashidhar Gandham, Milind Dawande, Ravi Prakash, and Subbarayan. Energy

efficient schemes for wireless sensor networks with multiple mobile base stations.

In GlobeCom ’03: Proceedings of the Global Communications Conference, San

Francisco, CA, USA, 2003.

[21] David Gay, Philip Levis, and David Culler. Software design patterns for TinyOS.

Trans. on Embedded Computing Sys., 6(4):22, 2007.

[22] J. Ghosh, M. Beal, H. Ngo, and C. Qiao. On profiling mobility and predict-

ing locations of campus-wide wireless network users. Technical Report: State

University of New York at Buffalo, Jan 2005.

[23] Omprakash Gnawali, Rodrigo Fonseca, Kyle Jamieson, David Moss, and Philip

Levis. Collection Tree Protocol. In Proceedings of the 7th ACM Conference on

Embedded Networked Sensor Systems (SenSys’09), November 2009.

[24] Andrea Goldsmith. Wireless Communications. Cambridge University Press, New

York, NY, USA, 2005.

[25] Google Inc., http://wifi.google.com. Google WiFi.

[26] W. Hsu and A. Helmy. Capturing user friendship in wlan traces. IEEE INFO-

COM poster, Apr 2006.

[27] W. Hsu and A. Helmy. On modeling user associations in wireless LAN traces

on university campuses. In In Proceedings of the Second Workshop on Wireless

Network Measurements (WiNMee), 2006.

[28] P. Hui, A. Chaintreau, J. Scott, R. Gass, and J. Crowcroft. Pocket switched

networks and human mobility in conference environments. Proceedings of the

2005 ACM SIGCOMM workshop on Delay Tolerant Networking, Jan 2005.

[29] Pan Hui, Jon Crowcroft, and Eiko Yoneki. Bubble rap: social-based forwarding

in delay tolerant networks. In MobiHoc ’08: Proceedings of the 9th ACM inter-

national symposium on Mobile ad hoc networking and computing, pages 241–250,

New York, NY, USA, 2008. ACM.

Page 93: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 81

[30] Xiaofan Jiang, Minh Van Ly, Jay Taneja, Prabal Dutta, and David Culler. Expe-

riences with a high-fidelity wireless building energy auditing network. In SenSys

’09: Proceedings of the 7th ACM Conference on Embedded Networked Sensor

Systems, pages 113–126, New York, NY, USA, 2009. ACM.

[31] D. Johnson, D. Maltz, and J. Broch. DSR: The dynamic source routing protocol

for multihop wireless ad hoc networks. In Ad Hoc Networking, 2001.

[32] Stephen Johnson. Hierarchical clustering schemes. Psychometrika, 32(3):241–

254, September 1967.

[33] F. Kelly. Charging and rate control for elastic traffic. European Transactions on

Telecommunications, 8:33–37, 1997.

[34] F. Kelly, A. Maulloo, and D. Tan. Rate control in communication networks:

shadow prices, proportional fairness and stability. Journal of the Operational

Research Society, 49:237–252, 1998.

[35] Hyung Seok Kim, Tarek F. Abdelzaher, and Wook Hyun Kwon. Minimum-energy

asynchronous dissemination to mobile sinks in wireless sensor networks. In Sen-

Sys ’03: Proceedings of the 1st international conference on Embedded networked

sensor systems, pages 193–204, New York, NY, USA, 2003. ACM.

[36] M. Kim, D. Kotz, and S. Kim. Extracting a mobility model from real user traces.

INFOCOM 2006. 25th IEEE International Conference on Computer Communi-

cations. Proceedings, pages 1 – 13, Apr 2006.

[37] David Kotz, Tristan Henderson, and Ilya Abyzov. CRAWDAD

data set dartmouth/campus (v. 2004-12-18). Downloaded from

http://www.crawdad.org/dartmouth/campus, December 2004.

[38] Anders Krogh and Graeme Mitchison. Maximum entropy weighting of aligned

sequences of proteins or DNA. In In Proceedings of the Third International

Conference on Intelligent Systems for Molecular Biology (ISMB ’95), pages 215–

221. AAAI Press, 1995.

Page 94: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 82

[39] J. Krumm. Real time destination prediction based on efficient routes. Society of

Automotive Engineers (SAE) 2006 World Congress, Jan 2006.

[40] J. Krumm. A markov model for driver route prediction. Society of Automotive

Engineers (SAE) 2008 World Congress, 2008.

[41] J. Kruskall and M. Liberman. The symmetric time warping problem: From

continuous to discrete. In Time Warps, String Edits and Macromolecules: The

Theory and Practice of Sequence Comparison, pages 125–161. Addison-Wesley

Publishing Co., 1983.

[42] Branislav Kusy, HyungJune Lee, Martin Wicke, Nikola Milosavljevic, and

Leonidas Guibas. Predictive QoS routing to mobile sinks in wireless sensor net-

works. In Proc. of ACM/IEEE International Conference on Information Pro-

cessing in Sensor Networks (IPSN), pages 109–120, 2009.

[43] K. Laasonen. Clustering and prediction of mobile user routes from cellular data.

LECTURE NOTES IN COMPUTER SCIENCE, Jan 2005.

[44] K. Laasonen, M. Raento, and H. Toivonen. Adaptive on-device location recog-

nition. LECTURE NOTES IN COMPUTER SCIENCE, Jan 2004.

[45] HyungJune Lee, Alberto Cerpa, and Philip Levis. Improving wireless simulation

through noise modeling. In Proc. of ACM/IEEE International Conference on

Information Processing in Sensor Networks (IPSN), pages 21–30, 2007.

[46] HyungJune Lee, Martin Wicke, Branislav Kusy, Omprakash Gnawali, and

Leonidas Guibas. Data stashing: Energy-efficient information delivery to mo-

bile sinks through trajectory prediction. In Proc. of ACM/IEEE International

Conference on Information Processing in Sensor Networks (IPSN), pages 291–

302, 2010.

[47] Jong-Kwon Lee and Jennifer C. Hou. Modeling steady-state and transient be-

haviors of user mobility: formulation, analysis, and application. In MobiHoc ’06:

Page 95: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 83

Proceedings of the 7th ACM international symposium on Mobile ad hoc network-

ing and computing, pages 85–96, New York, NY, USA, 2006. ACM.

[48] Philip Levis, Nelson Lee, Matt Welsh, and David Culler. TOSSIM: Simulating

large wireless sensor networks of TinyOS motes. In Proceedings of the First ACM

Conference on Embedded Networked Sensor Systems (SenSys), 2003.

[49] Yuxi Li, Janelle Harms, and Robert Holte. Optimal traffic-oblivious energy-

aware routing for multihop wireless networks. In INFOCOM ’06: Proceedings of

the 26th Conference on Computer Communications, Barcelona, Spain, 2006.

[50] L. Liao, D. Fox, and H. Kautz. Extracting places and activities from GPS

traces using hierarchical conditional random fields. The International Journal of

Robotics Research, Jan 2007.

[51] L. Liao, D. Patterson, D. Fox, and H. Kautz. Learning and inferring transporta-

tion routines. Artificial Intelligence, Jan 2007.

[52] Longbi Lin, Ness B. Shroff, and R. Srikant. Asymptotically optimal energy-

aware routing for multihop wireless networks with renewable energy sources.

IEEE/ACM Trans. Netw., 15(5):1021–1034, 2007.

[53] Liu and Maguire. A class of mobile motion prediction algorithms for wireless

mobile computing and communications. Mobile Networks and Applications, 1996.

[54] Tong Liu, Paramvir Bahl, and Imrich Chlamtac. Mobility modeling, location

tracking, and trajectory prediction in wireless ATM networks. IEEE Journal on

Selected Areas in Communications, 16(6):922–936, 1998.

[55] Jun Luo and Jean-Pierre Hubaux. Joint mobility and routing for lifetime elon-

gation in wireless sensor networks. In INFOCOM ’05: Proceedings of the 25th

Conference on Computer Communications, Miami, FL, USA, 2005.

[56] Jun Luo, Jacques Panchard, Michal Piorkowski, Matthias Grossglauser, and

Jean-Pierre Hubaux. Mobiroute: Routing towards a mobile sink for improv-

ing lifetime in sensor networks. In DCOSS ’06: Proceedings of the International

Page 96: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 84

Conference on Distributed Computing in Sensor Systems, San Francisco, CA,

USA, 2006.

[57] G. Malkin. RIP version 2, 1998.

[58] Yun Mao, Feng Wang, Lili Qiu, Simon S. Lam, and Jonathan M. Smith. S4:

Small state and small stretch routing protocol for large wireless sensor networks.

In 4th Symposium on Networked Systems Design and Implementation (NSDI

2007), 2007.

[59] Meraki Inc., http://www.meraki.com. meraki.com: Meraki to Build Free Com-

munity WiFi Network in San Francisco.

[60] A. Miklas, K. Gollu, K. Chan, and S. Saroiu. Exploiting social interactions in

mobile systems. LECTURE NOTES IN COMPUTER SCIENCE, Jan 2007.

[61] Rohan Murty, Geoffrey Mainland, Ian Rose, Atanu Roy Chowdhury, Abhimanyu

Gosain, Josh Bers, and Matt Welsh. CitySense: A vision for an urban-scale

wireless networking testbed. In IEEE International Conference on Technologies

for Homeland Security, 2008.

[62] Mirco Musolesi, Stephen Hailes, and Cecilia Mascolo. An ad hoc mobility model

founded on social network theory. In MSWiM ’04: Proceedings of the 7th ACM

international symposium on Modeling, analysis and simulation of wireless and

mobile systems, pages 20–24, New York, NY, USA, 2004. ACM.

[63] Mirco Musolesi and Cecilia Mascolo. Designing mobility models based on social

network theory. SIGMOBILE Mob. Comput. Commun. Rev., 11(3):59–70, 2007.

[64] Anthony Nicholson and Brian Noble. Breadcrumbs: forecasting mobile connec-

tivity. MobiCom ’08: Proceedings of the 14th ACM international conference on

Mobile computing and networking, Sep 2008.

[65] Cedric Notredame. Recent progress in multiple sequence alignment: a survey.

Pharmacogenomics, 3(1):131–144, January 2002.

Page 97: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 85

[66] Petteri Nurmi and Johan Koolwaaij. Identifying meaningful locations. Mobile

and Ubiquitous Systems: Networking & Services, 2006 Third Annual Interna-

tional Conference on, pages 1 – 8, Jul 2006.

[67] C. E. Perkins and P. Bhagwat. Highly dynamic destination-sequenced distance-

vector routing (DSDV) for mobile computers. In ACM SIGCOMM, 1994.

[68] Charles E. Perkins, Elizabeth M. Belding-Royer, and Samir Das. Ad hoc on

demand distance vector (AODV) routing. IETF Internet draft, draft-ietf-manet-

aodv-09.txt, November 2001 (Work in Progress).

[69] S. Phithakkitnukoon, T. Horanont, and G. Di Lorenzo. Activity-aware map:

Identifying human daily activity pattern using mobile phone data. HBU, Jan

2010.

[70] Joseph Polastre, Robert Szewczyk, and David Culler. Telos: enabling ultra-low

power wireless research. In Proc. of ACM/IEEE International Conference on

Information Processing in Sensor Networks (IPSN), 2005.

[71] Cesar A. Santiva nez, Ram Ramanathan, and Ioannis Stavrakakis. Making link-

state routing scale for ad hoc networks. In MobiHoc ’01: Proceedings of the 2nd

ACM international symposium on Mobile ad hoc networking & computing, pages

22–32, New York, NY, USA, 2001. ACM.

[72] Rahul C. Shah, Sumit Roy, Sushant Jain, and Waylon Brunette. Data mules:

Modeling a three-tier architecture for sparse sensor networks. In IEEE SNPA

Workshop, pages 30–41, 2003.

[73] T. F. Smith and M. S. Waterman. Identification of common molecular subse-

quences. Journal of Molecular Biology, 147(1):195–197, March 1981.

[74] Chaoming Song, Zehui Qu, Nicholas Blumm, and Albert-Lszl Barabsi. Limits of

predictability in human mobility. Science, 327(5968):1018–1021, 2010.

[75] L. Song, U. Deshpande, U. Kozat, D. Kotz, and R. Jain. Predictability of WLAN

mobility and its effects on bandwidth provisioning. INFOCOM 2006. 25th IEEE

Page 98: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 86

International Conference on Computer Communications. Proceedings, pages 1 –

13, Apr 2006.

[76] L. Song, D. Kotz, R. Jain, and Xiaoning He. Evaluating location predictors

with extensive Wi-Fi mobility data. INFOCOM 2004. Twenty-third AnnualJoint

Conference of the IEEE Computer and Communications Societies, 2:1414 – 1424

vol.2, Feb 2004.

[77] Libo Song, David Kotz, and Xiaoning He. Evaluating next-cell predictors with

extensive Wi-Fi mobility data. IEEE Trans. on Mob. Comp., 5(12):1633–1649,

2006.

[78] J. D. Thompson, D. G. Higgins, and T. J. Gibson. Clustal W: improving the

sensitivity of progressive multiple sequence alignment through sequence weight-

ing, position-specific gap penalties and weight matrix choice. Nucleic Acids Res,

22(22):4673–4680, November 1994.

[79] L. Wang and T. Jiang. On the complexity of multiple sequence alignment. Jour-

nal of Computational Biology, 1(4):337–348, 1994.

[80] Ricklef Wohlers, Niki Trigoni, Rui Zhang, and Stephen Ellwood. Twinroute:

Energy-efficient data collection in fixed sensor networks with mobile sinks. In

MDM ’09: Proceedings of the 2009 Tenth International Conference on Mobile

Data Management: Systems, Services and Middleware, pages 192–201, Wash-

ington, DC, USA, 2009. IEEE Computer Society.

[81] Fan Ye, Haiyun Luo, Jerry Cheng, Songwu Lu, and Lixia Zhang. A two-tier data

dissemination model for large-scale wireless sensor networks. In MobiCom ’02:

Proceedings of the 8th annual international conference on Mobile computing and

networking, pages 148–159, New York, NY, USA, 2002. ACM.

[82] Jie Yin, Qiang Yang, Dou Shen, and Ze-Nian Li. Activity recognition via user-

trace segmentation. Transactions on Sensor Networks (TOSN), 4(4), Aug 2008.

Page 99: ROUTING TO MOBILE USERS BY EXPLOITING MOBILITY PREDICTION IN WIRELESS MESH …kg407mt1632/... · 2011. 9. 22. · form a multi-hop wireless network called mesh networks. The mesh

BIBLIOGRAPHY 87

[83] Jungkeun Yoon, Brian Noble, Mingyan Liu, and Minkyong Kim. Building realis-

tic mobility models from coarse-grained traces. MobiSys ’06: Proceedings of the

4th international conference on Mobile systems, applications and services, Jun

2006.