# Mobility-Assisted on-Demand Routing Algorithm for MANETs in the Presence of Location Errors

Authors: Trung Kien Vu; Sungoh Kwon
Journal: The Scientific World Journal
 (2014)

---

## Abstract

We propose a mobility-assisted on-demand routing algorithm for mobile ad hoc networks in the presence of location errors. Location awareness enables mobile nodes to predict their mobility and enhances routing performance by estimating link duration and selecting reliable routes. However, measured locations intrinsically include errors in measurement. Such errors degrade mobility prediction and have been ignored in previous work. To mitigate the impact of location errors on routing, we propose an on-demand routing algorithm taking into account location errors. To that end, we adopt the Kalman filter to estimate accurate locations and consider route confidence in discovering routes. Via simulations, we compare our algorithm and previous algorithms in various environments. Our proposed mobility prediction is robust to the location errors.


---

## Body

## 1. Introduction

A mobile ad hoc network (MANET) [1] consists of a set of wireless mobile nodes that dynamically exchange data among themselves without relying on any fixed infrastructure. Because of their easy deployment and extension, MANET application scenarios include emergency and rescue operations, conference settings, car networks, and personal networking. Due to limited transmission ranges and infrastructure-free networks, each node in such networks has the responsibility not only to discover new routes but also to relay messages.The most challengeable problem of MANETs [2] is how to adapt the topology changing that affects the performance of the network [3, 4]. Due to changeable topology, routes from sources to destinations may be suddenly broken and nodes have to discover other available routes to deliver data. The ad hoc on-demand distance vector routing algorithm (AODV) was proposed as a reactive routing algorithm to allow mobile nodes to quickly adapt to topology changes and link breaks in mobile ad hoc networks [5]. To find a possible route, the AODV makes a source flood a routing request message over the network and discovers a route based on the principle of the shortest path. The amount of overhead messages for route discovery and route maintenance depends on the longevity of routing paths. The awareness of link and path durations can improve routing performance in such mobile networks [6–8].In [9, 10], the authors modeled the distribution of path duration and analyzed the relation between path duration and other factors such as relative speed, transmission range, and number of hops. Their analysis shows that routing protocol with higher path duration can improve the network performance. In [11], the authors also investigate the distribution of path duration and then design a scheme to select a route with the largest expected duration and provide reliable network services in MANETs.Location information enables nodes to predict mobility and estimate path durations more accurately. In [12–14], the authors proposed schemes to improve routing performance with location awareness. The proposed algorithms in [12, 13] anticipate the link expiration time (LET) based on measured locations and velocities and were applied to routing protocols to reduce overheads in [12] or to select the most reliable route that has the longest path duration [13]. In [14], the link duration time is adaptively applied to route maintenance in order to reduce unnecessary overhead. However, lifetime of link may be incorrectly calculated due to location errors that lead to incorrect hello frequency setting.In practical deployment scenarios, location errors intrinsically occur in measurement [15], even if locations are measured by the global positioning system (GPS) receiver. Such imperfect location information leads imperfect mobility prediction, which results in performance degradation. However, the previous work assumed error-free location information and developed routing algorithms. In [12], the impact of location errors on routing performance was provided only by simulations, but there is no effort to improve routing performance in such noisy information environments. Therefore, it is necessary to develop an efficient routing that is robust to location errors.In this paper, we proposed a mobility-assisted on-demand routing algorithm in the presence of location errors in order to mitigate the impact of location errors on routing performance. To that end, the algorithm adopts the Kalman filter to compensate for the measurement location errors and estimate link durations to reduce overheads and select reliable routes. We also consider the confidence level of route in selecting the best route. Via simulations, we compare our proposed algorithm with previous algorithms.The rest of this paper is organized as follows. In Section2, we describe the system model and problem. In Section 3, we propose the Kalman filter based routing algorithm with mobility prediction for location correction and route selection. In Section 4, we provide numerical results to analyze the impact of location errors and the efficient of our proposal in the presence of location errors, and we conclude the paper in Section 5.


## 2. System Model and Problem

### 2.1. System Model

In this paper, we consider a mobile wireless network that supports multihop routing. The network is modeled as a setN of mobile nodes with transmission range r and a set L of communication links (
i
,
j
) between nodes i and j in N.Link(
i
,
j
) is calledvalid orconnected link at time t
k when the distance between nodes i and j at time t
k is less than or equal to the transmission range r; that is,
(1)
|
X
i
(
t
k
)
-
X
j
(
t
k
)
|
≤
r
,
where X
i
(
t
k
) and X
j
(
t
k
) are locations of nodes i and j, respectively, and |
X
| stands for a Euclidian distance of vector X. Otherwise, link (
i
,
j
) is consideredbroken ordisconnected, because the two nodes are out of their communication range. The link duration of link (
i
,
j
) is defined as the time interval for which the link is valid.Due to a limited transmission range, packets are delivered from a source to a destination in a multihop manner via a route, which is defined as a set of links. For given source and destination nodes,s and d, respectively, H possible routes at time t
k are denoted as R
(
s
,
d
)
(
h
)
(
t
k
) for h
∈
H
=
{
1
,
…
,
H
}, which consists of |
R
(
s
,
d
)
(
h
)
(
t
k
)
| links.To find a route from a source to a destination and maintain routes, each mobile node employs the AODV routing algorithm, which is one of the reactive routing protocols and frequently adopted in mobile ad hoc networks.


### 2.2. Overview of AODV

The AODV [5] routing algorithm consists of two main operations: route discovery and route maintenance. Route discovery is initiated by a source node that has data to send a destination node and does not have an active route in its routing table. To find a valid route to the destination, the source node broadcasts a route request (RREQ) message, including a sequence number, to neighboring nodes. The RREQ message is flooded through the entire network until the message reaches the destination or an intermediate node that has a valid route to the destination. Each node that receives the RREQ message stores a reverse route to the source and then broadcasts the message to their neighboring nodes if the node is not the destination and the RREQ message is not a duplicate. When the RREQ message arrives at a destination node or at an intermediate node that has a valid route to the destination, the node sends a route reply (RREP) message to the neighboring node in a reverse route in a unicast manner. The RREP message contains the number of hops to reach the destination node and the sequence number for the destination. A node receiving the RREP message sends this message to the source via the stored reverse route and then creates or updates a forward route to the destination.Route maintenance is performed by nodes after route discovery operation, in order to maintain local connectivity and routes. Nodes periodically send a hello message to their neighbors to check if links are connected. If a node does not receive any hello message from its neighbors during a certain time period, referred to as the lifetime of hello message, the node assumes that the link to the neighbor is currently disconnected and reports the link failure to the source corresponding to the link via a route error (RRER) message.


### 2.3. Location Awareness and Performance Enhancement

In a mobile ad hoc network, the location information of nodes helps to improve routing performance, such as packet delivery rate and overhead by estimating node mobility. In a route discovery operation, the route with the longest lifetime can be selected to reduce the number of transmission failures and the number of overheads to find a new route [13]. To reduce overhead messages, instead of a fixed period for hello message, the adaptive period is proposed using link lifetime to achieve high protocol efficiency in [14].To predict mobility, the previous work proposed a location prediction scheme [12], which is defined as
(2)
X
^
i
(
t
k
+
Δ
t
)
=
X
i
′
(
t
k
)
+
V
i
→
(
t
k
)
Δ
t
,
where X
^
i
(
t
k
+
Δ
t
),   X
i
′
(
t
k
), and V
i
→
(
t
k
) are the predicted location of node i at time t
k
+
Δ
t, a measured location at time t
k, and a measured velocity at time t
k, respectively. If individual velocities of nodes are not available in (2), the nodes can approximately estimate their velocities using the previously stored location information [15] as follows. For t
k
>
t
k
-
1, the velocity of node i at time t
k is approximately expressed as
(3)
V
i
→
(
t
k
)
≃
X
i
′
(
t
k
)
-
X
i
′
(
t
k
-
1
)
t
k
-
t
k
-
1
.Based on the mobility prediction, nodes estimate link durations corresponding to adjacent nodes, and destination nodes choose the longest lifetime route among candidates. Since a link between two nodes is connected only if the distance between the two nodes is less than or equal to their transmission range, the estimated link durationLD
T
(
i
,
j
) between nodes i and j is defined as
(4)
LD
T
(
i
,
j
)
=
max
⁡
Δ
t
(5)
subject
to
D
^
(
i
,
j
)
(
t
k
+
Δ
t
)
≤
r
,
where D
^
(
i
,
j
)
(
t
k
+
Δ
t
) is the estimated distance between nodes i and j elapsed time Δ
t from current time t
k. A route consists of ordered links and is disconnected if one of the links is broken. Hence, the route expiration time RE
T
(
s
,
d
)
(
h
) of a route R
(
s
,
d
)
(
h
) between nodes s and d is expressed as
(6)
RE
T
(
s
,
d
)
(
h
)
=
min
⁡
(
i
,
j
)
∈
R
(
s
,
d
)
(
h
)
LD
T
(
i
,
j
)
for h
∈
H. The most reliable route can be chosen among candidate routes based on (6).


### 2.4. Location Errors and Estimation Problem

In practice, location errors inevitably exist in measurement. However, in previous work, mobility prediction used perfect location information receiving from the GPS devices or other techniques [16, 17]. The imperfect location information induces erroneous mobility estimate, which results in performance degradation.For example, letX
i
(
t
k
) and X
i
′
(
t
k
) be the real location and the measured location of node i at time t
k. Then, based on measured locations X
i
′
(
t
k
) and X
j
′
(
t
k
) of nodes i and j, respectively, after elapsed time Δ
t from time t
k, the estimated distance D
^
i
′
(
t
k
+
Δ
t
) between the two nodes is less than the transmission range r and the link between two nodes is consideredconnected, even though node j locates out of the transmission range of node i; that is, the communication link between two nodes isdisconnected, as shown in Figure 1. Hence, we propose a routing algorithm in the presence of location errors in measurement to mitigate the impact of imperfect location information.Figure 1
Estimated link duration.


## 2.1. System Model

In this paper, we consider a mobile wireless network that supports multihop routing. The network is modeled as a setN of mobile nodes with transmission range r and a set L of communication links (
i
,
j
) between nodes i and j in N.Link(
i
,
j
) is calledvalid orconnected link at time t
k when the distance between nodes i and j at time t
k is less than or equal to the transmission range r; that is,
(1)
|
X
i
(
t
k
)
-
X
j
(
t
k
)
|
≤
r
,
where X
i
(
t
k
) and X
j
(
t
k
) are locations of nodes i and j, respectively, and |
X
| stands for a Euclidian distance of vector X. Otherwise, link (
i
,
j
) is consideredbroken ordisconnected, because the two nodes are out of their communication range. The link duration of link (
i
,
j
) is defined as the time interval for which the link is valid.Due to a limited transmission range, packets are delivered from a source to a destination in a multihop manner via a route, which is defined as a set of links. For given source and destination nodes,s and d, respectively, H possible routes at time t
k are denoted as R
(
s
,
d
)
(
h
)
(
t
k
) for h
∈
H
=
{
1
,
…
,
H
}, which consists of |
R
(
s
,
d
)
(
h
)
(
t
k
)
| links.To find a route from a source to a destination and maintain routes, each mobile node employs the AODV routing algorithm, which is one of the reactive routing protocols and frequently adopted in mobile ad hoc networks.


## 2.2. Overview of AODV

The AODV [5] routing algorithm consists of two main operations: route discovery and route maintenance. Route discovery is initiated by a source node that has data to send a destination node and does not have an active route in its routing table. To find a valid route to the destination, the source node broadcasts a route request (RREQ) message, including a sequence number, to neighboring nodes. The RREQ message is flooded through the entire network until the message reaches the destination or an intermediate node that has a valid route to the destination. Each node that receives the RREQ message stores a reverse route to the source and then broadcasts the message to their neighboring nodes if the node is not the destination and the RREQ message is not a duplicate. When the RREQ message arrives at a destination node or at an intermediate node that has a valid route to the destination, the node sends a route reply (RREP) message to the neighboring node in a reverse route in a unicast manner. The RREP message contains the number of hops to reach the destination node and the sequence number for the destination. A node receiving the RREP message sends this message to the source via the stored reverse route and then creates or updates a forward route to the destination.Route maintenance is performed by nodes after route discovery operation, in order to maintain local connectivity and routes. Nodes periodically send a hello message to their neighbors to check if links are connected. If a node does not receive any hello message from its neighbors during a certain time period, referred to as the lifetime of hello message, the node assumes that the link to the neighbor is currently disconnected and reports the link failure to the source corresponding to the link via a route error (RRER) message.


## 2.3. Location Awareness and Performance Enhancement

In a mobile ad hoc network, the location information of nodes helps to improve routing performance, such as packet delivery rate and overhead by estimating node mobility. In a route discovery operation, the route with the longest lifetime can be selected to reduce the number of transmission failures and the number of overheads to find a new route [13]. To reduce overhead messages, instead of a fixed period for hello message, the adaptive period is proposed using link lifetime to achieve high protocol efficiency in [14].To predict mobility, the previous work proposed a location prediction scheme [12], which is defined as
(2)
X
^
i
(
t
k
+
Δ
t
)
=
X
i
′
(
t
k
)
+
V
i
→
(
t
k
)
Δ
t
,
where X
^
i
(
t
k
+
Δ
t
),   X
i
′
(
t
k
), and V
i
→
(
t
k
) are the predicted location of node i at time t
k
+
Δ
t, a measured location at time t
k, and a measured velocity at time t
k, respectively. If individual velocities of nodes are not available in (2), the nodes can approximately estimate their velocities using the previously stored location information [15] as follows. For t
k
>
t
k
-
1, the velocity of node i at time t
k is approximately expressed as
(3)
V
i
→
(
t
k
)
≃
X
i
′
(
t
k
)
-
X
i
′
(
t
k
-
1
)
t
k
-
t
k
-
1
.Based on the mobility prediction, nodes estimate link durations corresponding to adjacent nodes, and destination nodes choose the longest lifetime route among candidates. Since a link between two nodes is connected only if the distance between the two nodes is less than or equal to their transmission range, the estimated link durationLD
T
(
i
,
j
) between nodes i and j is defined as
(4)
LD
T
(
i
,
j
)
=
max
⁡
Δ
t
(5)
subject
to
D
^
(
i
,
j
)
(
t
k
+
Δ
t
)
≤
r
,
where D
^
(
i
,
j
)
(
t
k
+
Δ
t
) is the estimated distance between nodes i and j elapsed time Δ
t from current time t
k. A route consists of ordered links and is disconnected if one of the links is broken. Hence, the route expiration time RE
T
(
s
,
d
)
(
h
) of a route R
(
s
,
d
)
(
h
) between nodes s and d is expressed as
(6)
RE
T
(
s
,
d
)
(
h
)
=
min
⁡
(
i
,
j
)
∈
R
(
s
,
d
)
(
h
)
LD
T
(
i
,
j
)
for h
∈
H. The most reliable route can be chosen among candidate routes based on (6).


## 2.4. Location Errors and Estimation Problem

In practice, location errors inevitably exist in measurement. However, in previous work, mobility prediction used perfect location information receiving from the GPS devices or other techniques [16, 17]. The imperfect location information induces erroneous mobility estimate, which results in performance degradation.For example, letX
i
(
t
k
) and X
i
′
(
t
k
) be the real location and the measured location of node i at time t
k. Then, based on measured locations X
i
′
(
t
k
) and X
j
′
(
t
k
) of nodes i and j, respectively, after elapsed time Δ
t from time t
k, the estimated distance D
^
i
′
(
t
k
+
Δ
t
) between the two nodes is less than the transmission range r and the link between two nodes is consideredconnected, even though node j locates out of the transmission range of node i; that is, the communication link between two nodes isdisconnected, as shown in Figure 1. Hence, we propose a routing algorithm in the presence of location errors in measurement to mitigate the impact of imperfect location information.Figure 1
Estimated link duration.


## 3. Proposed Algorithm

In this section, we proposed an on-demand routing algorithm robust to location errors with mobility prediction. In MANETs, the mobility prediction plays a great role in predicting the link lifetime and the route lifetime, which can reduce overhead messages and improve routing performance [13]. However, as shown in Figure 1, location errors in measurement provide an incorrect mobility prediction, which induces wrong decision for routing. To mitigate the impact of such errors on mobility prediction and routing decision, we adopt two schemes: location error correction and route confidence.


### 3.1. Location Correction and Mobility Prediction

We employ the discrete Kalman filter, which is a set of recursive mathematical equations and supports the estimation of states in such way that minimizes the variance of estimation errors. The recent updates with previous measured location compensate current location for measurement errors. In this paper, the process errors are ignored and the main focus is the measurement errors. A detail of the discrete Kalman filter is presented in [18].From (2), the current or future location depends on the previous location. The location errors are defined as the difference between the actual location and the measurement location. Let W
i be the location errors at node i, which is the additive noise; then, the measurement location of node i at time t
k can be expressed as X
i
′
(
t
k
)
=
X
i
(
t
k
)
+
W
i
(
t
k
).For each nodei
∈
N, let state matrix x be defined as x
(
t
k
)
=
[
X
(
t
k
)
V
→
(
t
k
)
]
T with real location X and velocity V
→; then, x
(
t
k
) denotes the actual state at time t
k. In the same way, we define the measurement state x
′
(
t
k
) at time t
k as x
′
(
t
k
)
=
[
X
′
(
t
k
)
V
′
→
(
t
k
)
]
T.During time intervalΔ
T, which is the elapsed time from the previous updated time t
k
-
1 until current time t
k, that is, Δ
T
=
t
k
-
t
k
-
1, the node moves from X
(
t
k
-
1
) to X
(
t
k
) such that X
(
t
k
)
=
X
(
t
k
-
1
)
+
Δ
T
V
→
(
t
k
). Hence, the measured velocity V
i
′
→
(
t
k
) is
(7)
V
i
′
→
(
t
k
)
=
X
i
′
(
t
k
)
-
X
i
′
(
t
k
-
1
)
Δ
T
=
V
→
i
(
t
k
)
+
1
Δ
T
W
i
(
t
k
,
t
k
-
1
)
,
where W
i
(
t
k
,
t
k
-
1
) is the sum of measurement errors at times t
k and t
k
-
1.Suppose that during elapsed timeΔ
T the velocity is constant; that is, V
→
(
t
k
)
=
V
→
(
t
k
-
1
). The actual state x
(
t
k
) and measurement state x
′
(
t
k
) can be written as
(8)
x
(
t
k
)
=
[
1
Δ
T
0
1
]
x
(
t
k
-
1
)
x
′
(
t
k
)
=
[
1
0
0
1
]
x
(
t
k
)
+
w
(
t
k
)
,
where w
(
t
k
)
=
[
W
(
t
k
)
(
1
/
Δ
T
)
W
(
t
k
,
t
k
-
1
)
]
T. Denote that matrix A
(
t
k
-
1
)
=
[
1
Δ
T
0
1
] and that matrix B
=
[
1
0
0
1
]. The matrix A
(
t
k
-
1
) represents the state change and the matrix B describes the relation between the actual state and measurement state. The above equation can be rewritten as
(9)
x
(
t
k
)
=
A
(
t
k
-
1
)
x
(
t
k
-
1
)
x
′
(
t
k
)
=
B
x
(
t
k
)
+
w
(
t
k
)
.Since the actual statex
(
t
k
) cannot directly be acquired, we define x
^
-
(
t
k
) asa priori estimate at time t
k for a given state prior to time t
k, and x
^
(
t
k
) asa posteriori estimate state at time t
k for a given measurement state x
′
(
t
k
). Let P
-
(
t
k
) and P
(
t
k
) bea priori estimate error covariance anda posteriori estimate error covariance, respectively, and they can be expressed by
(10)
P
-
(
t
k
)
=
E
[
(
x
(
t
k
)
-
x
^
-
(
t
k
)
)
(
x
(
t
k
)
-
x
^
-
(
t
k
)
)
T
]
(11)
P
(
t
k
)
=
E
[
(
x
(
t
k
)
-
x
^
(
t
k
)
)
(
x
(
t
k
)
-
x
^
(
t
k
)
)
T
]
.To find the best estimate of the current state, we apply the Kalman filter. The operation of the Kalman filter includes two mechanisms: time update and measurement update. The time update process is responsible for predicting the current estimate state based on the previous state by computingx
^
-
(
t
k
) and P
-
(
t
k
) as follows:
(12)
x
^
-
(
t
k
)
=
A
t
k
-
1
x
^
(
t
k
-
1
)
,
P
-
(
t
k
)
=
A
(
t
k
-
1
)
P
(
t
k
-
1
)
A
T
(
t
k
-
1
)
.After the time update operation, the measurement update corrects the measurement state as follows:(13)
K
(
t
)
=
P
-
(
t
k
)
B
T
(
B
P
-
(
t
k
)
B
T
+
R
)
-
1
x
^
(
t
k
)
=
x
^
-
(
t
k
)
+
K
(
t
k
)
(
x
′
(
t
k
)
-
B
x
^
-
(
t
k
)
)
P
(
t
k
)
=
(
I
-
K
(
t
k
)
B
)
P
-
(
t
k
)
,
where K
(
t
k
) and R are the Kalman gain and the measurement error covariance, respectively. After that, the operation is repeated and the estimate state is measured based on the previous state and measurement state. Each node updates and tracks its current location based on periodically or eventually measured locations as the process of the discrete Kalman filter algorithm, which is summarized in Figure 2.Figure 2
The Kalman filter based location correction process.In implementation, the measurement error covarianceR is measured prior to the operation of the Kalman filter. The measurement error covariance is determined by the variance of measurement noise by obtaining some off-line sample measurement [18]. The initial value for each state x
^
(
t
0
) is set to the measured information at the beginning.In addition, we can obtain the confidence level of a link duration from thea posteriori estimate error covariance matrix P
(
t
k
). Thea posteriori estimate error covariance matrix in (11) can be reexpressed as(14)
P
(
t
k
)
=
[
E
[
e
X
2
(
t
k
)
]
E
[
1
Δ
T
(
e
X
2
(
t
k
)
-
e
X
(
t
k
)
e
X
(
t
k
-
1
)
)
]
E
[
1
Δ
T
(
e
X
2
(
t
k
)
-
e
X
(
t
k
)
e
X
(
t
k
-
1
)
)
]
E
[
1
Δ
T
2
(
(
e
X
(
t
k
)
-
e
X
(
t
k
-
1
)
)
)
2
]
]
,wheree
X
(
t
k
)
≡
X
(
t
k
)
-
X
^
(
t
k
). The square root of the expected square error E
[
e
X
2
(
t
k
)
] is equivalently considered as the standard deviation in the engineering community [19]. Hence, the root-mean-square error, E
[
e
X
2
(
t
k
)
], is equivalently the standard deviation of errors, and E
[
e
X
i
2
(
t
k
)
+
e
X
j
2
(
t
k
)
]
/
V
→
(
i
,
j
), denoted as ε, becomes the confidence level of link duration of link (
i
,
j
).


### 3.2. The Enhanced Mobility Prediction Routing Protocol

In this subsection, we develop a mobility prediction-based routing protocol in the presence of location errors. Our goal of mobility prediction is to find the longest RET and to avoid the risky link. The risky link that is defined as a link with vulnerable link duration time (LDT) seems to be dead or to be no longer alive in a short time after discovering.When new data arrive at a node, the source node finds an active route associated with the corresponding destination in its routing table, as in Section2.2. If no active route exists, the source node initiates route discovery to find a route to the destination node by broadcasting a RREQ message with recently updated location information and the standard deviation E
[
e
X
2
(
t
k
)
] of location error to neighboring nodes. The RET field and the hop count field in the RREQ message are initially set to infinity and one, respectively.Upon reception of RREQ, a node computes the link duration time between the RREQ sender and itself, which implies the estimated lifetime of the link, from (5). To compute link durations in (5), nodes use the compensated location information x
^
(
t
k
) instead of the measured location information x
′
(
t
k
). To exclude the risky link, the node compares LDT value with the confidence level ε of LDT, which is computed from the standard deviations of the RREQ sender and itself. If the LDT value is less than ε, the node discards the RREQ. Otherwise, the LDT value updates a RET value in the RREQ. If the LDT is smaller than the RET in the RREQ, the receiving node replaces the RET value by the new LDT. If the RREQ receiver is not the destination of the RREQ, the node broadcasts the receiving RREQ to other nodes after increasing the hop count by one until the RREQ reaches the destination.In the case when a node is the destination of RREQ, the node waits for time intervalT
w and collects RREQs whose destination is the node. After the time interval T
w, the destination chooses the longest route among the received routes and replies a RREP message after setting the lifetime field as the corresponding RET. RREP receivers relay the RREP message in a unicast manner until the RREP reaches the source, as described in Section 2.2. The details of proposed algorithm, AODV with enhanced mobility prediction (EMP), are described in Figure 3.Figure 3
The Kalman filter based enhanced mobility prediction (EMP).For route maintenance, we adopt the adaptive period for hello messages as in [14, 20], referred to as hello interval adjustment (HIA), to reduce the overheads instead of a fixed period. When receiving a RREQ from node i, node j estimates link duration LD
T
(
i
,
j
) in Figure 3 and set the period for hello frequency to
(15)
max
⁡
{
T
min
⁡
,
min
⁡
i
∈
N
j
LD
T
(
i
,
j
)
β
}
,
where T
min
⁡ is the minimum value for the hello period, N
j is a set of the nodes that establish active links with node j, and β is a control parameter. The value of β is greater than or equal to 1, which aims to adjust the hello frequency.


## 3.1. Location Correction and Mobility Prediction

We employ the discrete Kalman filter, which is a set of recursive mathematical equations and supports the estimation of states in such way that minimizes the variance of estimation errors. The recent updates with previous measured location compensate current location for measurement errors. In this paper, the process errors are ignored and the main focus is the measurement errors. A detail of the discrete Kalman filter is presented in [18].From (2), the current or future location depends on the previous location. The location errors are defined as the difference between the actual location and the measurement location. Let W
i be the location errors at node i, which is the additive noise; then, the measurement location of node i at time t
k can be expressed as X
i
′
(
t
k
)
=
X
i
(
t
k
)
+
W
i
(
t
k
).For each nodei
∈
N, let state matrix x be defined as x
(
t
k
)
=
[
X
(
t
k
)
V
→
(
t
k
)
]
T with real location X and velocity V
→; then, x
(
t
k
) denotes the actual state at time t
k. In the same way, we define the measurement state x
′
(
t
k
) at time t
k as x
′
(
t
k
)
=
[
X
′
(
t
k
)
V
′
→
(
t
k
)
]
T.During time intervalΔ
T, which is the elapsed time from the previous updated time t
k
-
1 until current time t
k, that is, Δ
T
=
t
k
-
t
k
-
1, the node moves from X
(
t
k
-
1
) to X
(
t
k
) such that X
(
t
k
)
=
X
(
t
k
-
1
)
+
Δ
T
V
→
(
t
k
). Hence, the measured velocity V
i
′
→
(
t
k
) is
(7)
V
i
′
→
(
t
k
)
=
X
i
′
(
t
k
)
-
X
i
′
(
t
k
-
1
)
Δ
T
=
V
→
i
(
t
k
)
+
1
Δ
T
W
i
(
t
k
,
t
k
-
1
)
,
where W
i
(
t
k
,
t
k
-
1
) is the sum of measurement errors at times t
k and t
k
-
1.Suppose that during elapsed timeΔ
T the velocity is constant; that is, V
→
(
t
k
)
=
V
→
(
t
k
-
1
). The actual state x
(
t
k
) and measurement state x
′
(
t
k
) can be written as
(8)
x
(
t
k
)
=
[
1
Δ
T
0
1
]
x
(
t
k
-
1
)
x
′
(
t
k
)
=
[
1
0
0
1
]
x
(
t
k
)
+
w
(
t
k
)
,
where w
(
t
k
)
=
[
W
(
t
k
)
(
1
/
Δ
T
)
W
(
t
k
,
t
k
-
1
)
]
T. Denote that matrix A
(
t
k
-
1
)
=
[
1
Δ
T
0
1
] and that matrix B
=
[
1
0
0
1
]. The matrix A
(
t
k
-
1
) represents the state change and the matrix B describes the relation between the actual state and measurement state. The above equation can be rewritten as
(9)
x
(
t
k
)
=
A
(
t
k
-
1
)
x
(
t
k
-
1
)
x
′
(
t
k
)
=
B
x
(
t
k
)
+
w
(
t
k
)
.Since the actual statex
(
t
k
) cannot directly be acquired, we define x
^
-
(
t
k
) asa priori estimate at time t
k for a given state prior to time t
k, and x
^
(
t
k
) asa posteriori estimate state at time t
k for a given measurement state x
′
(
t
k
). Let P
-
(
t
k
) and P
(
t
k
) bea priori estimate error covariance anda posteriori estimate error covariance, respectively, and they can be expressed by
(10)
P
-
(
t
k
)
=
E
[
(
x
(
t
k
)
-
x
^
-
(
t
k
)
)
(
x
(
t
k
)
-
x
^
-
(
t
k
)
)
T
]
(11)
P
(
t
k
)
=
E
[
(
x
(
t
k
)
-
x
^
(
t
k
)
)
(
x
(
t
k
)
-
x
^
(
t
k
)
)
T
]
.To find the best estimate of the current state, we apply the Kalman filter. The operation of the Kalman filter includes two mechanisms: time update and measurement update. The time update process is responsible for predicting the current estimate state based on the previous state by computingx
^
-
(
t
k
) and P
-
(
t
k
) as follows:
(12)
x
^
-
(
t
k
)
=
A
t
k
-
1
x
^
(
t
k
-
1
)
,
P
-
(
t
k
)
=
A
(
t
k
-
1
)
P
(
t
k
-
1
)
A
T
(
t
k
-
1
)
.After the time update operation, the measurement update corrects the measurement state as follows:(13)
K
(
t
)
=
P
-
(
t
k
)
B
T
(
B
P
-
(
t
k
)
B
T
+
R
)
-
1
x
^
(
t
k
)
=
x
^
-
(
t
k
)
+
K
(
t
k
)
(
x
′
(
t
k
)
-
B
x
^
-
(
t
k
)
)
P
(
t
k
)
=
(
I
-
K
(
t
k
)
B
)
P
-
(
t
k
)
,
where K
(
t
k
) and R are the Kalman gain and the measurement error covariance, respectively. After that, the operation is repeated and the estimate state is measured based on the previous state and measurement state. Each node updates and tracks its current location based on periodically or eventually measured locations as the process of the discrete Kalman filter algorithm, which is summarized in Figure 2.Figure 2
The Kalman filter based location correction process.In implementation, the measurement error covarianceR is measured prior to the operation of the Kalman filter. The measurement error covariance is determined by the variance of measurement noise by obtaining some off-line sample measurement [18]. The initial value for each state x
^
(
t
0
) is set to the measured information at the beginning.In addition, we can obtain the confidence level of a link duration from thea posteriori estimate error covariance matrix P
(
t
k
). Thea posteriori estimate error covariance matrix in (11) can be reexpressed as(14)
P
(
t
k
)
=
[
E
[
e
X
2
(
t
k
)
]
E
[
1
Δ
T
(
e
X
2
(
t
k
)
-
e
X
(
t
k
)
e
X
(
t
k
-
1
)
)
]
E
[
1
Δ
T
(
e
X
2
(
t
k
)
-
e
X
(
t
k
)
e
X
(
t
k
-
1
)
)
]
E
[
1
Δ
T
2
(
(
e
X
(
t
k
)
-
e
X
(
t
k
-
1
)
)
)
2
]
]
,wheree
X
(
t
k
)
≡
X
(
t
k
)
-
X
^
(
t
k
). The square root of the expected square error E
[
e
X
2
(
t
k
)
] is equivalently considered as the standard deviation in the engineering community [19]. Hence, the root-mean-square error, E
[
e
X
2
(
t
k
)
], is equivalently the standard deviation of errors, and E
[
e
X
i
2
(
t
k
)
+
e
X
j
2
(
t
k
)
]
/
V
→
(
i
,
j
), denoted as ε, becomes the confidence level of link duration of link (
i
,
j
).


## 3.2. The Enhanced Mobility Prediction Routing Protocol

In this subsection, we develop a mobility prediction-based routing protocol in the presence of location errors. Our goal of mobility prediction is to find the longest RET and to avoid the risky link. The risky link that is defined as a link with vulnerable link duration time (LDT) seems to be dead or to be no longer alive in a short time after discovering.When new data arrive at a node, the source node finds an active route associated with the corresponding destination in its routing table, as in Section2.2. If no active route exists, the source node initiates route discovery to find a route to the destination node by broadcasting a RREQ message with recently updated location information and the standard deviation E
[
e
X
2
(
t
k
)
] of location error to neighboring nodes. The RET field and the hop count field in the RREQ message are initially set to infinity and one, respectively.Upon reception of RREQ, a node computes the link duration time between the RREQ sender and itself, which implies the estimated lifetime of the link, from (5). To compute link durations in (5), nodes use the compensated location information x
^
(
t
k
) instead of the measured location information x
′
(
t
k
). To exclude the risky link, the node compares LDT value with the confidence level ε of LDT, which is computed from the standard deviations of the RREQ sender and itself. If the LDT value is less than ε, the node discards the RREQ. Otherwise, the LDT value updates a RET value in the RREQ. If the LDT is smaller than the RET in the RREQ, the receiving node replaces the RET value by the new LDT. If the RREQ receiver is not the destination of the RREQ, the node broadcasts the receiving RREQ to other nodes after increasing the hop count by one until the RREQ reaches the destination.In the case when a node is the destination of RREQ, the node waits for time intervalT
w and collects RREQs whose destination is the node. After the time interval T
w, the destination chooses the longest route among the received routes and replies a RREP message after setting the lifetime field as the corresponding RET. RREP receivers relay the RREP message in a unicast manner until the RREP reaches the source, as described in Section 2.2. The details of proposed algorithm, AODV with enhanced mobility prediction (EMP), are described in Figure 3.Figure 3
The Kalman filter based enhanced mobility prediction (EMP).For route maintenance, we adopt the adaptive period for hello messages as in [14, 20], referred to as hello interval adjustment (HIA), to reduce the overheads instead of a fixed period. When receiving a RREQ from node i, node j estimates link duration LD
T
(
i
,
j
) in Figure 3 and set the period for hello frequency to
(15)
max
⁡
{
T
min
⁡
,
min
⁡
i
∈
N
j
LD
T
(
i
,
j
)
β
}
,
where T
min
⁡ is the minimum value for the hello period, N
j is a set of the nodes that establish active links with node j, and β is a control parameter. The value of β is greater than or equal to 1, which aims to adjust the hello frequency.


## 4. Performance Evaluation

We evaluate the performance of our proposed algorithms by using the network simulator NS-2 [21]. For simulations, there are 100 nodes initially distributed in an area of 2 km by 1.5 km and the transmission range of each node is set to 250 m. We run simulations with ten different random seeds and average the simulation results.The random waypoint mobility (RWP) [22] model is used as a referenced mobility model, in which mobile nodes move from their current locations to new locations by randomly choosing directions and speeds. Upon arrival at a destination, after a pause time, they choose another random destination in the simulation area and travel toward the destinations with a uniformly distributed speed between the maximum speed and minimum speed. We set the pause time to zero to represent constant mobility.The constant bit rate (CBR) traffic under the user datagram protocol (UDP) is used to accurately compare different routing protocols with a sending rate of 4 packets per second and 512 bytes of packet size. The parameter settings are listed in Table1.Table 1
Parameter settings.
Parameter
Values
Network simulator
NS-2.34
Simulation area
2 km× 1.5 km
Number of mobile nodes
100
Simulation time
900 s
Mobility model
Random way point
Pause time
0 s
Packet generation rate
4 packets/s
Packet size
512 bytes
Transmission range
250 mTwo metrics are used for evaluating the network performance: the packet delivery rate and the normalized routing load. The packet delivery ratio is defined as the ratio of the number of generated packets to the number of packets received at the corresponding destinations. For the amount of overhead packets, we count the number of packets used for route discovery and route maintenance. For comparison, the total number of overhead packets is normalized by the number of packets successfully delivered to destinations.To evaluate the performance improvement, our EMP routing protocol is compared with mobility prediction-based AODV routing protocol with route discovery mechanism [13] and the conventional AODV routing protocol in various noisy environments. For simplicity, the mobility prediction-based AODV routing protocol is denoted by the classic mobility prediction (MP). For simulations, we assume that the location errors of each node i are Gaussian random variables with zero mean and standard deviation σ
i.Firstly, we compare the performance of our enhanced mobility prediction EMP with the previous work MP in the presence of location errors by varying the standard deviation of location errors from 3 m (1.12% of transmission range) to 50 m (20% of transmission range).Secondly, we fix the standard deviation of location errors to 20 m (8% of transmission range) and show the network performance under different impact of network environments, such as the impact of node velocity, traffic load, and node density. For each scenario, the HIA mechanism is enabled or disabled to show the impact of adaptive hello period.


### 4.1. The Performance of the Kalman Filter Based Enhanced Mobility Prediction in the Presence of Location Errors

To compare our EMP routing protocol with the MP routing protocol, ten source-destination pairs generate 4 packets per second during the simulation time. For mobility, each node follows the RWP mobility model with randomly selected speed between 1 m/s and 20 m/s.Our proposal incorporates the Kalman filter to remove the location errors in order to reduce the impact of location errors and predicts the link duration time more accurately. The EMP can also improve the network performance by limiting the number of route discovery due to the dangerous link with an uncertain link duration time. The node establishing the uncertain link duration time does not allow forwarding the RREQ messages. Therefore, the discovered route becomes a better candidate for route selection and the number of overhead messages is significantly decreased.In Figure4(a), the packet delivery rates of EMP, MP, and AODV routing protocols are compared. As the standard deviation of location errors increases, the packet delivery rate of the MP routing protocol is decreased faster than that of EMP. When the standard deviation of location errors is behind a certain level (20 m in this case), the packet delivery rate of the MP routing protocol is lower than that of the AODV routing protocol. The large location errors lead to poor mobility prediction, which results in performance degradation. However, the packet delivery rate of our proposed routing protocol EMP outperforms MP and AODV routing protocols in all the cases and is robust to the location errors.Impact of location errors—fixed hello interval.
(a)
Packet delivery rate versus location errors
(b)
Normalized routing load versus location errorsFigure4(b) shows the normalized routing loads of EMP, MP, and AODV routing protocols. As the standard deviation of location errors increases, the normalized routing loads of MP and EMP increase due to inaccurate prediction. The normalized routing load of MP increases faster than that of EMP and is even greater than that of the conventional AODV. However, the EMP just slightly increases the routing overhead, which demonstrates that our proposed algorithm is robust to location errors.Figures5(a) and 5(b) show the packet delivery rate and the normalized routing load when the HIA is enabled for the mobility prediction-based routing protocol. The HIA mechanism is used for reducing the unnecessary hello messages. The AODV routing protocol sets the hello frequency to 1 second and the AODV-I sets the hello frequency to 20 seconds. As the location errors increase, the performance of MP is degraded. It is because the MP routing cannot estimate the true value of link duration that leads to incorrect route selection. Therefore, the selected route is unreliable and unstable so that the source node has to handle the route more frequently. When the standard deviation of location errors is larger than 40 m, the performance of the MP routing is lower than the AODV-I routing. The inaccurate link duration for selecting the route and setting the hello interval causes the performance degradation of mobility prediction-based routing protocol without location error compensation.Impact of location errors—flexible hello interval.
(a)
Packet delivery rate versus location errors
(b)
Normalized routing load versus location errors


### 4.2. The Impact of Node Velocity

We study the impact of node velocity on routing performance in various network environments. The node mobility has a great impact on network performance [23, 24] since the change of topology leads to more exchanging messages in order to find and maintain new routes. During simulations, performances are compared in three different mobile environments: low mobility, medium mobility, and high mobility. For the low mobility environment, we set the speed for RWP to 1 m/s, which is a pedestrian speed (3.6 km/h). We also set 10 m/s and 20 m/s (72 km/h) as the node speeds for the medium mobility and the high mobility environments, respectively.Figure6 shows that the packet delivery rate decreases as the node velocity increases since routes are more frequently broke and more overhead messages are necessary due to fast topology change, as shown in Figure 7. Whether hello interval for route maintenance is fixed or adaptive to mobility, AODV with mobility prediction is better than the conventional AODV in the presence of location errors, as shown in [12]. Our algorithm, which compensates for location errors, outperforms the others and is close to the case (EMP-wo) when location information is error-free. Therefore, our proposed routing protocol EMP can adapt to the scalability network even in the presence of location errors.Packet delivery rate versus node velocity.
(a)
fixed hello interval
(b)
flexible hello intervalNormalized routing load versus node velocity.
(a)
fixed hello interval
(b)
flexible hello interval


### 4.3. The Impact of Traffic Load

Traffic load can affect the performance of routing protocols. To study the impact of traffic load, we vary the number of source-destination pairs to deliver generated data. For mobility, each node also follows the RWP mobility model with randomly selected speed between 1 m/s and 20 m/s.Figure8 shows the packet delivery rates. By increase of the number of source-destination pairs in the network, due to transmission collision and congestion, the packet delivery rates are reduced. In Figures 8(a) and 8(b), our algorithm outperforms the others and is almost close to the EMP-wo, which assumes no location errors in measurement and is an upper bound of the performance. That means that our proposed algorithm EMP is robust to the location errors.Packet delivery rate versus traffic load.
(a)
fixed hello interval
(b)
flexible hello intervalFigure9 reports the normalized routing load when increasing the traffic load. In Figure 9(a), the HIA mechanism is disabled, the MP needs to exchange more routing messages caused by the location errors, whereas the EMP can reduce the amount of routing overhead as compared to the MP and the original AODV. When the HIA mechanism is enabled, a large number of hello messages are reduced, but the hello message still contributes well to the local connectivity management. The EMP and EMP-wo routing protocol can sharply reduce a great number of overheads as compared with the MP and the original AODV routing protocol.Normalized routing load versus traffic load.
(a)
fixed hello interval
(b)
flexible hello interval


### 4.4. The Impact of Node Density

In this subsection, we study the impact of node density on routing performance by varying the number of nodes from 75 nodes to 200 nodes as shown in Figures10 and 11. If the number of nodes is too small, feasible routes between sources and destinations may not exist in the network so that the routing performance improves as the number of nodes increases in the network. However, above a certain number of nodes, the larger number of node hinders packet delivery due to larger overhead messages required to maintain and discover routes. The EMP still outperforms the MP with respect to the packet delivery rate and the overhead in the presence of location errors.Packet delivery rate versus node density.
(a)
fixed hello interval
(b)
flexible hello intervalNormalized routing load versus node density.
(a)
fixed hello interval
(b)
flexible hello interval


## 4.1. The Performance of the Kalman Filter Based Enhanced Mobility Prediction in the Presence of Location Errors

To compare our EMP routing protocol with the MP routing protocol, ten source-destination pairs generate 4 packets per second during the simulation time. For mobility, each node follows the RWP mobility model with randomly selected speed between 1 m/s and 20 m/s.Our proposal incorporates the Kalman filter to remove the location errors in order to reduce the impact of location errors and predicts the link duration time more accurately. The EMP can also improve the network performance by limiting the number of route discovery due to the dangerous link with an uncertain link duration time. The node establishing the uncertain link duration time does not allow forwarding the RREQ messages. Therefore, the discovered route becomes a better candidate for route selection and the number of overhead messages is significantly decreased.In Figure4(a), the packet delivery rates of EMP, MP, and AODV routing protocols are compared. As the standard deviation of location errors increases, the packet delivery rate of the MP routing protocol is decreased faster than that of EMP. When the standard deviation of location errors is behind a certain level (20 m in this case), the packet delivery rate of the MP routing protocol is lower than that of the AODV routing protocol. The large location errors lead to poor mobility prediction, which results in performance degradation. However, the packet delivery rate of our proposed routing protocol EMP outperforms MP and AODV routing protocols in all the cases and is robust to the location errors.Impact of location errors—fixed hello interval.
(a)
Packet delivery rate versus location errors
(b)
Normalized routing load versus location errorsFigure4(b) shows the normalized routing loads of EMP, MP, and AODV routing protocols. As the standard deviation of location errors increases, the normalized routing loads of MP and EMP increase due to inaccurate prediction. The normalized routing load of MP increases faster than that of EMP and is even greater than that of the conventional AODV. However, the EMP just slightly increases the routing overhead, which demonstrates that our proposed algorithm is robust to location errors.Figures5(a) and 5(b) show the packet delivery rate and the normalized routing load when the HIA is enabled for the mobility prediction-based routing protocol. The HIA mechanism is used for reducing the unnecessary hello messages. The AODV routing protocol sets the hello frequency to 1 second and the AODV-I sets the hello frequency to 20 seconds. As the location errors increase, the performance of MP is degraded. It is because the MP routing cannot estimate the true value of link duration that leads to incorrect route selection. Therefore, the selected route is unreliable and unstable so that the source node has to handle the route more frequently. When the standard deviation of location errors is larger than 40 m, the performance of the MP routing is lower than the AODV-I routing. The inaccurate link duration for selecting the route and setting the hello interval causes the performance degradation of mobility prediction-based routing protocol without location error compensation.Impact of location errors—flexible hello interval.
(a)
Packet delivery rate versus location errors
(b)
Normalized routing load versus location errors


## 4.2. The Impact of Node Velocity

We study the impact of node velocity on routing performance in various network environments. The node mobility has a great impact on network performance [23, 24] since the change of topology leads to more exchanging messages in order to find and maintain new routes. During simulations, performances are compared in three different mobile environments: low mobility, medium mobility, and high mobility. For the low mobility environment, we set the speed for RWP to 1 m/s, which is a pedestrian speed (3.6 km/h). We also set 10 m/s and 20 m/s (72 km/h) as the node speeds for the medium mobility and the high mobility environments, respectively.Figure6 shows that the packet delivery rate decreases as the node velocity increases since routes are more frequently broke and more overhead messages are necessary due to fast topology change, as shown in Figure 7. Whether hello interval for route maintenance is fixed or adaptive to mobility, AODV with mobility prediction is better than the conventional AODV in the presence of location errors, as shown in [12]. Our algorithm, which compensates for location errors, outperforms the others and is close to the case (EMP-wo) when location information is error-free. Therefore, our proposed routing protocol EMP can adapt to the scalability network even in the presence of location errors.Packet delivery rate versus node velocity.
(a)
fixed hello interval
(b)
flexible hello intervalNormalized routing load versus node velocity.
(a)
fixed hello interval
(b)
flexible hello interval


## 4.3. The Impact of Traffic Load

Traffic load can affect the performance of routing protocols. To study the impact of traffic load, we vary the number of source-destination pairs to deliver generated data. For mobility, each node also follows the RWP mobility model with randomly selected speed between 1 m/s and 20 m/s.Figure8 shows the packet delivery rates. By increase of the number of source-destination pairs in the network, due to transmission collision and congestion, the packet delivery rates are reduced. In Figures 8(a) and 8(b), our algorithm outperforms the others and is almost close to the EMP-wo, which assumes no location errors in measurement and is an upper bound of the performance. That means that our proposed algorithm EMP is robust to the location errors.Packet delivery rate versus traffic load.
(a)
fixed hello interval
(b)
flexible hello intervalFigure9 reports the normalized routing load when increasing the traffic load. In Figure 9(a), the HIA mechanism is disabled, the MP needs to exchange more routing messages caused by the location errors, whereas the EMP can reduce the amount of routing overhead as compared to the MP and the original AODV. When the HIA mechanism is enabled, a large number of hello messages are reduced, but the hello message still contributes well to the local connectivity management. The EMP and EMP-wo routing protocol can sharply reduce a great number of overheads as compared with the MP and the original AODV routing protocol.Normalized routing load versus traffic load.
(a)
fixed hello interval
(b)
flexible hello interval


## 4.4. The Impact of Node Density

In this subsection, we study the impact of node density on routing performance by varying the number of nodes from 75 nodes to 200 nodes as shown in Figures10 and 11. If the number of nodes is too small, feasible routes between sources and destinations may not exist in the network so that the routing performance improves as the number of nodes increases in the network. However, above a certain number of nodes, the larger number of node hinders packet delivery due to larger overhead messages required to maintain and discover routes. The EMP still outperforms the MP with respect to the packet delivery rate and the overhead in the presence of location errors.Packet delivery rate versus node density.
(a)
fixed hello interval
(b)
flexible hello intervalNormalized routing load versus node density.
(a)
fixed hello interval
(b)
flexible hello interval


## 5. Conclusion

This paper proposed an on-demand routing algorithm with enhanced mobility prediction that takes into account the location errors. Imperfect location information induces the performance degradation, but location errors in measurement were ignored in previous work. In the presence of location errors, we develop an on-demand routing algorithm collaborating to the Kalman filter to predict node mobility. Since the Kalman filter provides the root-mean-square error between the actual location and estimated location, the proposed algorithm excludes unreliable links considering the confidence levels of links. The estimated link duration adapts to the route maintenance period to reduce overheads. Via simulations, our proposed algorithm is robust to location errors and outperforms the previous algorithms.



---

*Source: 790103-2014-05-18.xml*