21
Improving Network Connectivity in Ad Hoc Networks Using Particle Swarm Optimization and Agents Abdullah Konak, Orhan Dengiz, and Alice E. Smith Abstract In a mobile ad hoc network (MANET) the nodes can serve as both routers and hosts and can forward packets on behalf of other nodes in the network. This functionality allows the MANET to form an instant, autonomous telecommunica- tion network without an existing infrastructure or a central network control. This chapter introduces a dynamic MANET management system to improve network connectivity by using controlled network nodes called agents. Agents have prede- fined wireless communication capabilities similar to the other nodes in the MANET. However, the agents’ movements, and thus their locations, are dynamically deter- mined to optimize network connectivity. A particle swarm optimization (PSO) al- gorithm is used to choose optimal locations of the agents during each time step of network operation. 1 Introduction Mobile wireless ad hoc networks (MANET) are instantaneous, autonomous telecom- munication networks that provide service to users wherever and whenever the ser- vice is needed. The communication depends on wireless links that are formed be- tween the mobile nodes. A link is established between two nodes if they are within each other’s wireless communication range. A MANET topology is dynamic and ex- pected to change often and unpredictably due to arbitrary movements of its nodes. Therefore, a MANET might be disconnected intermittently during its mission time. This chapter introduces an approach to maintain global connectivity in MANETs by Abdullah Konak Penn State Berks, Reading, PA, USA, e-mail: [email protected] Orhan Dengiz DnD Technical Solutions , Ankara, Turkey, e-mail: [email protected] Alice E. Smith Auburn University , Auburn, AL, USA e-mail: [email protected] 1

Improving Network Connectivity in Ad Hoc Networks Using

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Improving Network Connectivity in Ad Hoc Networks Using

Improving Network Connectivity in Ad HocNetworks Using Particle Swarm Optimizationand Agents

Abdullah Konak, Orhan Dengiz, and Alice E. Smith

Abstract In a mobile ad hoc network (MANET) the nodes can serve as both routersand hosts and can forward packets on behalf of other nodes in the network. Thisfunctionality allows the MANET to form an instant, autonomous telecommunica-tion network without an existing infrastructure or a central network control. Thischapter introduces a dynamic MANET management system to improve networkconnectivity by using controlled network nodes called agents. Agents have prede-fined wireless communication capabilities similar to the other nodes in the MANET.However, the agents’ movements, and thus their locations, are dynamically deter-mined to optimize network connectivity. A particle swarm optimization (PSO) al-gorithm is used to choose optimal locations of the agents during each time step ofnetwork operation.

1 Introduction

Mobile wireless ad hoc networks (MANET) are instantaneous, autonomous telecom-munication networks that provide service to users wherever and whenever the ser-vice is needed. The communication depends on wireless links that are formed be-tween the mobile nodes. A link is established between two nodes if they are withineach other’s wireless communication range. A MANET topology is dynamic and ex-pected to change often and unpredictably due to arbitrary movements of its nodes.Therefore, a MANET might be disconnected intermittently during its mission time.This chapter introduces an approach to maintain global connectivity in MANETs by

Abdullah KonakPenn State Berks, Reading, PA, USA, e-mail: [email protected]

Orhan DengizDnD Technical Solutions , Ankara, Turkey, e-mail: [email protected]

Alice E. SmithAuburn University , Auburn, AL, USA e-mail: [email protected]

1

Page 2: Improving Network Connectivity in Ad Hoc Networks Using

2 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

using controlled MANET nodes, called agents. The function of an agent node is toaugment network connectivity. During a mission time of a MANET, the user nodesare assumed to move freely. However, their current and past location data are avail-able, and a mobility prediction model can be used to predict their future locations.Based on the predicted locations of user nodes, the agent nodes are directed to moveto new locations to improve connectivity among the user nodes. Although networksoperate in continuous time, to make the optimization tractable, the continuous timeoperation is sliced into T discrete time steps.

Let Gt(Nt ,Et) denote a MANET with node set Nt and arc set Et at time t. Node setNt includes two types of nodes: user nodes (UNt ) and agent nodes (ANt ). User nodesare nodes that demand network services. Agent nodes are responsible for helping theuser nodes experience the best network service possible. At the beginning of timet, it is assumed that the current and past locations (xik,yik) are known for all nodesi ∈ UNt and k = 1, ..., t. The decision problem at time t is to determine the bestnew location (xi(t+1),yi(t+1)) for each agent node i ∈ ANt to maximize a measure ofnetwork connectivity. Note that it will take some time for agent nodes to move fromtheir current locations at the beginning of time t to their new locations, and duringthis time user nodes may also move to new positions. Between time t and t +1, eachagent node i moves to its new location (i.e., (xi(t+1),yi(t+1))). It is assumed that atthe beginning of each time period, new location data becomes available, and the newbest locations of agent nodes should be determined again. Therefore, the decisionproblem should be solved as quickly as possible when new location data becomesavailable at the beginning of each time period, and the decisions about agents’ nextlocations should be propagated to them.

This chapter presents a particle swarm optimization (PSO) algorithm to directthe motion of the mobile agents in MANETs where the global state of the networkcan be tracked using a GPS tracking system. In GPS tracking systems, each nodeis equipped with a GPS receiver, and the location data is periodically transmittedto a central location using low frequency radio or a satellite modem embedded inthe node [18]. The proposed approach in this chapter includes a mobility predictionmodel to predict the future locations of the nodes, and the PSO algorithm determinesthe new locations of the agent nodes based on this prediction. The proposed PSO al-gorithm is tested under dynamic scenarios using a simulation environment. Amongapplication areas of the proposed approach are network-centric warfare, fleet track-ing, and search and rescue operations.

2 Background

In the literature, several approaches have been proposed to address the challengesin MANETs due to unpredictable user node movements. One of the major problemsis the accessibility of the centralized network services used by all network nodeswhen the network is disconnected. A solution approach to this problem involvesreplicating network services [32, 33] and critical data [19] at multiple nodes and

Page 3: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 3

dynamically deploying these nodes to disconnected partitions of the network. An-other problem is delivery of data packets across disconnected network partitions. Toaddress this problem, a few papers [10, 34] propose using special agent nodes thatcan buffer packets until their destination nodes are reachable. These agent nodesmay move arbitrarily or systematically, and when they are connected to a networkpartition, they deliver their payloads. This approach, however, is mainly applicableto delay-tolerant data networks. Alternatively, several papers propose topology con-trol by modifying node trajectories or power level nodes. In [23], the intermediatenodes between a source and a destination node modify their trajectories to ensurethe delivery of packets, and an algorithm to minimize the trajectory modificationsis proposed. Goyal and Caffery [15] propose first determining critical links whosefailures cause partitioning of the network, and then supporting these links by eithermodifying the trajectory of the nodes involved in the critical links or bringing anoutside node to reinforce them. Kim et al. [22] use transmission power managementschemes to strengthen the network topology across the critical nodes of a network.

There has been very limited work in the literature to improve network connec-tivity in MANETs through mobile agents. Ou [25] uses forwarding nodes that canadjust their locations to assist network partitions in an ad hoc network. When de-ployed initially, forwarding nodes move randomly to discover network partitions. Itis assumed that each node has GPS capability and the nodes can exchange locationdata. When a forwarding node receives a service request, it will move to the servicearea if it is available (i.e., it is not servicing other nodes). However, the paths of theforwarding nodes are not optimized in this approach. Chadrashekar et al. [6] definethe problem of achieving connectivity of a disconnected ground MANET by dynam-ically placing unmanned air vehicles (UAVs) which function as relay nodes. Then,they develop a heuristic algorithm for the single-UAV problem. Zhu et al. [28] alsopropose using UAVs equipped with communication capabilities to provide servicesto ground-based MANETs. They define a gradient-based algorithm to determine thelocation of a single UAV to maximize two network connectivity measures, globalmessage connectivity and worst-case connectivity. Both connectivity measures aredefined on a spanning tree so the optimization problem is to determine the most reli-able Steiner tree of the network, where the UAV is considered a Steiner point in thenetwork. Recently, Hauert et al. [16] propose the deployment of a swarm of UAVsfor search and rescue missions. During a mission, UAVs are expected to maintaindirect or indirect connection to their base-station through the ad hoc network thatthey form. An ant-colony approach [11] is developed to control the UAV MANET.

3 Proposed MANET Management System and ProblemDescription

The user nodes in the MANET move at their own will and it is assumed that theirfuture positions are unknown. However, the location data of users and agents areassumed to be available to the agent control system at all times. Tracking user and

Page 4: Improving Network Connectivity in Ad Hoc Networks Using

4 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

agent node locations is technically possible by the GPS tracking technology dis-cussed in Section 1. Arc set Et at time t depends on the locations of the nodes andtheir transmission ranges as follows: Et = {(i, j) : min(Rit ,R jt) ≥ di jt ∀i, j ∈ Nt}where Rit is the wireless transmission range of node i and di jt is the Euclidean dis-tance between nodes i and j at time t. Each arc (i, j) has a transmission capacity ui jt(in bits per second-bps), which is also a function of the distance between nodes iand j at time t.

3.1 Objectives and Evaluating Network Connectivity

The overall objective is to increase the connectivity of a MANET. In the ideal case,there should be at least one path between every user node pair in the network. There-fore, the primary objective is to connect each user node to every other one. Thisoverall connectivity objective can be expressed as:

O1t = 2×∑

i, j∈UNt :i< jzi jt

nut × (nut −1)(1)

where zi jt = 1 if there is a path between user nodes i and j at time t, and zi jt = 0,otherwise, and nut is the number of user nodes at time t. Intuitively, equation (1) isthe percentage of user node pairs that are connected at time t.

Equation (1) is a meaningful objective function if the network is disconnected.For a connected network, however, equation (1) is not sensitive with respect tochanges in agent node locations. In other words, equation (1) will have the valueof one for a possibly infinite number of agent node location combinations as long asthe network is connected. However, each of these combinations may result in differ-ent network topologies, link capacities and network performance. A good measureto quantify the connectivity of a connected network is the capacity of the cut set withthe minimum capacity among all cut sets of the network. Let MaxFlow(Gt , i, j) bethe maximum data (in bps) that can be sent from node i to node j through all pos-sible paths between these two nodes on network Gt . MaxFlow(Gt , i, j) provides agood measure of the connectivity between nodes i and j, as well as the quality ofthe links between them. MaxFlow(Gt , i, j) can be calculated by solving a maximumflow problem with node i as the source and node j as the sink on capacitated net-work Gt . The minimum capacity cut set of a network can be determined by solvingMaxFlow(Gt , i, j) for all node pairs i and j of the network. However, solving themaximum flow problem is a computationally expensive operation, particularly forlarge problems. Since the network operates dynamically in real time, a good solu-tion must be quickly found during each time step so that agent nodes can be properlydeployed to their new locations. To reduce the computational time, the maximumflows between clusters of nodes, instead of between individual nodes, are consid-ered in the approach herein. Let C1t , ...,CKt denote K clusters of user nodes at timet. The second criteria to gauge network connectivity is given as:

Page 5: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 5

O2t = mini=1,...,K−1,j=i+1,...,K

{MaxFlow(Gt ,Cit ,C jt)

}(2)

In the calculation of MaxFlow(Gt ,Cit ,C jt), first a dummy node di is connectedto all nodes of cluster Cit using directional arcs with unbounded capacities and adummy node d j is connected to all nodes of cluster C jt in a similar fashion, andthen the maximum flow between di and d j is calculated. O2t improves the weakestconnection between the clusters of user nodes. In addition, it is a responsive objec-tive function for connected networks. For disconnected networks, O2t is not requiredto be evaluated since it is always zero. In summary, O1t is used to compare two so-lutions with disconnected topologies, and O2t is used to compare two solutions withconnected topologies.

3.2 Future User Location Prediction

The objectives defined in the previous section are considered for each time step t.However, the proposed system is expected to maximize network connectivity dur-ing a mission time of T time periods. Therefore, predicting the future locations ofuser nodes and deploying agent nodes based on these predictions may improve theaverage connectivity during the mission time. In the literature, there are a few pa-pers addressing the location prediction problem in MANETs. Wang and Chang [31],Su et al. [29] and Tang et al. [30] utilize a simple location and velocity based ex-pected position to help the routing protocols in MANETs. Ashbrook and Starner[2] propose a Markov model to predict the next important station which a userwill be located at. This approach is only valid over the specific area that is usedfor learning. Mitrovic [24] develops a neural network model to predict car motion.This neural network is trained using specific maneuvers on certain road conditions.However, the proposed neural network approach can be adapted for more gener-alized motion patterns. Creixell and Sezaki [9] report promising results to predictpedestrian trajectories using a time series method. Kim et al. [21] propose a double-exponential smoothing approach to predict velocity and direction of mobile users. Ina more recent study, Huang and Zaruba [17] propose a method that enables non-GPSequipped ad hoc nodes to estimate their approximate locations by using informationfrom GPS equipped nodes.

Any of the location prediction methods cited above can be used in the proposedMANET management system, but in this chapter the double-exponential smoothingapproach is selected since it is computationally efficient and it can be used to predictnode velocities. The predicted location of user node i at time t +H is given as:

xi(t+H) = xit +Hvxit

yi(t+H) = yit +Hvyit

Page 6: Improving Network Connectivity in Ad Hoc Networks Using

6 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

where xit and yit are the smoothed locations of user node i along the x-axis and y-axis, respectively, and vx

it and vyit are the corresponding estimated velocities. xit and

vxit are updated based on the past locations as follows:

xit = α1xit +(1−α1)xi(t−1)vx

it = α2(xit − xi(t−1))+(1−α2)vxi(t−1)

where α1 and α2 are smoothing parameters between 0 and 1 for the expected lo-cation and velocity, respectively. Note that yit and vy

it are also updated in a similarfashion.

3.3 Optimization Problem and Deployment Decision

At the beginning of any time t, the locations of user nodes (UNt) and agent nodes(ANt) are known. The overall decision problem is to relocate the agents from theircurrent positions at time t to their new locations at time t +1. However, consideringpredicted user locations further in the future than the next time period and deployingthe agents accordingly may improve the connectivity of the network over the longterm. Therefore, the optimization problem is formulated to determine the futurelocations of the agents to maximize network connectivity at time t + H. In otherwords, the PSO algorithm searches for the best location of each agent node i at timet +H. Let (xi(t+1),yi(t+1)) denote the deployment decision of agent node i at time t.The distance that an agent node can travel during a time period is limited by Dmax,and the deployment decision of an agent node at a time period determines its startinglocation at the following time period. Therefore, the optimization problem at time tis expressed as follows:

Problem ALOC(t,H):

Max z = O1(t+H) +O2(t+H)

√(xi(t+H)− xit

)2 +(yi(t+H)− yit

)2 ≤ H×Dmax ∀i ∈ ANt

The outcome of problem ALOC(t,H) is the best location (x∗i(t+H),y∗i(t+H)) of each

agent node i at time t + H. However, due to the dynamic nature of the problem, attime t +1, which is the start of a new optimization cycle, the new location informa-tion of user nodes becomes available and the optimization problem will be solvedagain with this new information. Therefore, the outcome of problem ALOC(t,H)must be implemented during the single time period between t and t + 1. Based on(x∗i(t+H),y

∗i(t+H)), the deployment decision at time t is as follows:

xi(t+1) = xit +(x∗i(t+H)− xit)/Hyi(t+1) = yit +(y∗i(t+H)− yit)/H (3)

Page 7: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 7

Equation (3) means that each agent node i is deployed at time t with a commitmentto be at location (x∗i(t+H),y

∗i(t+H)) at time (t +H) if the direction and velocity of the

agent are not changed. Note that the velocities and directions of agent nodes areassumed to be constant during their deployment between times t and t +1.

4 Particle Swarm Optimization and Implementation

4.1 Particle Swarm Optimization (PSO)

PSO is a population-based meta-heuristic which emulates the social behavior ofspecies that live in the form of swarms in nature. These swarms are capable ofexchanging valuable information such as food locations in the habitat. PSO was de-veloped by Eberhart and Kennedy [12]. In PSO, the aim of particles is to search forthe optimal point in a continuous search space as they constantly move from onepoint to another according to their velocities. For a problem with n decision vari-ables, each particle j in swarm S is represented by three vectors X j =

{x1 j, ...,xn j

},

P j ={

p1 j, ..., pn j}

, and V j ={

v1 j, ...,vn j}

. Vector X j represents the current posi-tion of particle j, P j represents the position of the particle’s historic best fitness, andV j is the velocity vector that defines the direction and magnitude of the particle’smovement in the search space. V j is used to update X j each iteration as follows:

X j ← X j +V j (4)

As particles swarm over the search space, they communicate with each other,broadcasting their best found positions and learning about the best found positionsof others. Based on these interactions as well as their own past experiences, particlesadjust their velocities in each iteration as follows:

V j ← ωV j +φ 1 · (P j−X j)+φ 2 ·(GN( j)−X j

)(5)

where N( j) is the set of particles which particle j shares information with (i.e., theneighborhood of particle j) and GN( j) =

{g1 j, ...,gn j

}is the best position discov-

ered so far by the particles in N( j). φ 1 and φ 2 are vectors of n uniform randomnumbers between 0 and ϕ1 and between 0 and ϕ2, respectively. Parameters ϕ1 andϕ2 are called cognition and social coefficients, respectively, and are very importantfor facilitating convergence in PSO. According to an empirical study [26] as well astheoretical results [8], it is recommended to set ϕ1 and ϕ2 such that ϕ1 + ϕ2 ≤ 4 inorder to keep the growth in velocity magnitudes under control. Note that the operator(·) in equation (5) denotes element-by-element vector multiplication.

Parameter ω is called the inertia constant and is used to balance local versusglobal search. In a standard PSO, ω is usually set to one, which encourages explo-ration of new areas in the search space. For small values of ω such as ω < 0.4, thesearch shifts to the intensification mode as particles tend to oscillate between P j and

Page 8: Improving Network Connectivity in Ad Hoc Networks Using

8 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

GN( j). Dynamically updating ω , starting with a value close to one for global searchat the initial stages of the search and then gradually reducing it for local search atthe final stages, has been shown to improve the performance of PSO algorithms[27]. Selecting a proper neighborhood structure N( j) depends on the problem type.A common approach is to use a global neighborhood structure where each particleshares information with every other particle in the swarm (i.e., N( j) = S). The globalneighborhood structure leads to fast convergence, but it may increase the chance ofbeing trapped at a local optimum.

The pseudo code of the standard PSO is presented in Fig. 1 for a maximiza-tion objective function f (). In the pseudo code, U(a,b) represents a random samplefrom the uniform distribution on [a,b] and G∗ = {g1, ...,gn} is the best positionfound so far by all particles. The initial positions of particles are randomly deter-mined between the maximum and minimum values of each decision variable (xi

max

and ximin, respectively). Alternatively, particles can also be systematically initial-

ized in the search space. Particle velocities are also randomly initialized betweenthe maximum and minimum velocity limits (vi

max and vimin, respectively). Velocity

limits usually depend on the ranges of the decision variables.

for each particle X j ∈ S do {xi j ←U(xi

min,ximax) for i = 1, ...,n

vi j ←U(vimin,vi

max) for i = 1, ...,nP j ← X jif f (X j) > f (GN( j)) then GN( j) ← X jif f (X j) > f (G∗) then G∗← X j

}while(Stop is false){

for each particle X j ∈ S do {for i = 1, ...,n do {

vi j ← vi j +U(0,ϕ1)(pi j− xi j)+U(0,ϕ2)(gi j− xi j)xi j ← xi j + vi j }

if f (X j) > f (GN( j)) then GN( j) ← X jif f (X j) > f (P j) then P j ← X jif f (X j) > f (G∗) then G∗← X j

}}return G∗

Fig. 1 Pseudo code of the standard PSO.

PSO has successfully been applied to problems in the continuous domain. It hasfew parameters that require adjustment, which makes the development process rel-atively easy and fast. Implementation is also easy due to its simple but robust mech-anism. PSO has also been applied to dynamic problems. Eberhart and Shi [13] testPSO on nonlinear optimization problems where the optimal points change duringthe search. They show the ability of PSO to track changing objectives. Carlisleand Dozier [5] modify the memory property (P vector maintenance strategy) of

Page 9: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 9

the swarm for dynamically changing environments. When a change in the problemenvironment is detected, all memory positions (P) are reevaluated and set to eitherthe old memory or to the current particle position, whichever is better. Their resultsshow that PSO can successfully track a time dependent objective function.

4.2 The Optimization Procedure

In order to solve Problem ALOC(t,H) using PSO, each particle j in swarm S isrepresented by three vectors: X jt = {(xi jt ,yi jt) : i ∈ ANt}, ∆X jt = {(∆xi jt ,∆yi jt) :i∈ ANt}, and X∗

jt = {(x∗i jt ,y∗i jt) : i∈ ANt}. Vector X jt represents the current position

of particle j in the solution space at time t, vector X∗jt is the position of particle j

with the best fitness found, and ∆X jt is the velocity vector that defines the directionand magnitude that the particle will travel in the solution space if not disturbed. Theparticle velocities are updated in each iteration as follows:

∆xi jt ← ω∆xi jt +U(0,ϕ1)(x∗i jt − xi jt)+U(0,ϕ2)(x∗it − xi jt) ∀i ∈ ANt

∆yi jt ← ω∆yi jt +U(0,ϕ1)(y∗i jt − yi jt)+U(0,ϕ2)(y∗it − yi jt) ∀i ∈ ANt(6)

where (x∗it ,y∗it) denotes the location of agent node i according to the best solution

found so far (X∗t ) during the search at time t. In other words, the PSO uses a global

neighborhood to update the particle velocities. The PSO employs a dynamic inertiacoefficient ω . In this chapter, ω is initially set to 1.5 and decreased geometricallyby a coefficient of 0.98 at each iteration. Although the common practice is to letthe inertia coefficient decrease monotonically, from the preliminary experimenta-tion it was found beneficial to occasionally reset it to its initial value. This improvesthe ability to escape local optima by “exciting” the particles every now and then,helping them swarm to other regions. The inertia coefficient is reset to its origi-nal value of 1.5 with a probability of 0.02, for each particle at each iteration step.With a relatively high inertia coefficient, the current direction and magnitude ofthe particle’s motion are weighted heavily. As the iterations advance and the inertiacoefficient is decreased, changing the direction and magnitude of the particle veloc-ities toward X∗

jt and X∗t becomes easier. The swarm particle velocities are limited

within [−Dmax,Dmax]. After updating particle velocity ∆X jt , the new position ofeach particle j ∈ S is calculated as follows:

xi jt ← xi jt +∆xi jt ∀i ∈ ANtyi jt ← yi jt +∆yi jt ∀i ∈ ANt

(7)

Once new position vector X jt is determined for particle j, the objective functionsare evaluated for the new position, and X∗

jt and X∗t are updated accordingly. The first

step in the evaluation of X jt is to form capacitated network Gt(Nt ,Et). Then, O1t canbe calculated. If O1t(Xt j) = 1, then all user nodes are connected and O2t is evalu-ated. To do so, K clusters of user nodes are determined using a clustering algorithmbased on the Kruskal Spanning Tree Algorithm (see pages 515-516 of [1]). Then, the

Page 10: Improving Network Connectivity in Ad Hoc Networks Using

10 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

maximum flows between each node cluster pair are computed and the minimum ofthem is used as O2t . There can be cases where two different disconnected networkshave the same value of O1t (i.e., O1t(X jt) < 1 and O1t(X jt) = O1t(X∗

jt)). In suchcases, a tertiary criterion is used to break ties between two disconnected networkswith the same value of O1t as follows. First a depth-first search is used to identify alldisconnected partitions of the network such that user nodes in a network partitionare connected, but they are not connected to the nodes in other network partitions.Then, the midpoint between the closest nodes of two network partitions is calculatedfor each partition pair. These midpoints are called attraction points since deployingthe agent nodes close to the attraction point between two disconnected partitionsmay connect them. Finally, the distances between agents and attraction points arecalculated and the minimum of these distances is used as the tie breaker betweentwo disconnected networks with the same O1t . This tertiary criterion is expressed asfollows:

O3t = mini∈ANtj∈At

{√

(xit − x jt)2 +(yit − y jt)

2} (8)

where At is the set of attraction points at time t. The particle evaluation and updateprocedure of the PSO is given in Fig. 2.

Procedure EvaluateUpdateParticle()Evaluate O1t(X jt)if O1t(X jt) < 1 and O1t(X jt) > O1t(X∗

jt) then X∗jt ← X jt

if O1t(X jt) < 1 and O1t(X jt) = O1t(X∗jt) then{

Evaluate O3t(X jt)if O3t(X jt) < O3t(X∗

jt) then X∗jt ← X jt

}if O1t(X jt) = 1 then{

Evaluate O2t(X jt)if O2t(X jt) > O2t(X∗

jt) then X∗jt ← X jt

}if O1t(X∗

jt)+O2t(X∗jt) > O1t(X∗

t )+O2t(X∗t ) then X∗

t ← X∗jt

Fig. 2 Solution evaluation procedure of the PSO algorithm.

At the beginning of a time step t, the inputs to the PSO algorithm are: (i) the bestdeployment decision from the previous interval (i.e., X∗

t−1 = {(x∗i(t−1),y∗i(t−1)) : ∀i ∈

ANt−1}), and (ii) the predicted user node locations at time t + H. The deploymentdecisions of the agents at time (t−1) become their starting locations at time t. Eachparticle j is initialized as described in procedure InitializeSwarm() given in Fig. 3.

Page 11: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 11

Procedure InitializeSwarm()for each particle X j ∈ S do {

xi jt ← x∗i(t−1) +U(−H×Dmax,HDmax) ∀i ∈ ANt

yi jt ← y∗i(t−1) +U(−H×Dmax,HDmax) ∀i ∈ ANt

∆xi jt ←U(−Dmax,Dmax) ∀i ∈ ANt∆yi jt ←U(−Dmax,Dmax) ∀i ∈ ANt

}

Fig. 3 Particle initialization procedure of the PSO algorithm.

4.3 Semi-Intelligent Agent Node Behavior

The agent location optimizer requires agent nodes to be an integral part of theMANET in order to improve the objective functions. Since the main objective isto improve the experience of user nodes, agent nodes are not included in O1t andO2t . This means that an isolated agent node, which is an agent node with a nodedegree of zero or one, will have no effect on the objective functions. Note that tomaximize O1t and O2t agent nodes must have two or more arcs. In dynamic settings,however, agent nodes can become isolated due to sudden changes in the directionsand velocities of user nodes. The PSO algorithm may not guide an isolated agent tobetter locations since the objective functions are insensitive to small changes in thepositions of isolated agents. If an agent becomes disconnected from the network, ithas to be able to move independently and rejoin the MANET again to be properlyutilized. A semi-intelligent behavior of agent nodes is adopted as described below.

Assume that for position X jt , particle j has an agent node i which is isolated attime t. Velocity ∆xi jt of this agent node is reset as follows:

∆xi jt ← xAi jt − xi jt

∆yi jt ← yAi jt − yi jt(9)

xAi jt and yAi jt are the x and y coordinates of the attraction point with respect to theagent node i in X jt . The attraction point for an isolated agent i depends on whetherthe network is connected or not. If the network is connected, then the attraction pointis the last geometric center of the network and if the network is disconnected thenit is the closest At that is used in the calculation of Ot3. By resetting the velocityof isolated agents, they are stimulated to rejoin the rest of the network. Consideringthis semi-intelligent behavior the overall pseudo procedure of the PSO algorithmis given in Fig. 4. In the pseudo code, cmax represents the maximum number ofthe PSO iterations during a time period. Inertia constant ω is randomly reset to itsoriginal value by a particle with a probability of 0.02.

Page 12: Improving Network Connectivity in Ad Hoc Networks Using

12 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

Procedure PSO()InitializeSwarm()c← 1;ω ← 1.5while (c < cmax){

c← c+1ω ← 0.98ωfor each particle j ∈ S do {

Update ∆X jt using (6)Calculate new particle position X jt using (7)EvaluateUpdateParticle()Reset the velocity of isolated agents using (9)if U(0,1) < 0.02 then ω ← 1.5

}}Return X∗

t

Fig. 4 Overall procedure of the PSO algorithm.

5 Computational Experiments

The proposed PSO algorithm is tested using both dynamic and static scenarios. Forthe dynamic scenarios, the movements of user nodes are simulated using a randommobility model over a mission of T time periods. The details of this mobility modelare given in section 5.1. To evaluate the performance of the MANET managementsystem and the PSO algorithm in dynamic scenarios, two performance metrics areused based on the objective functions of the problem as follows:

P1 =

T∑

t=1(O1t )

T

P2 =

T∑

t=1min

i, j∈UNt : j>i{MaxFlow(Gt ,i, j):MaxFlow(Gt ,i, j)>0}

T

(10)

Performance metrics P1 and P2 are indicators of the algorithm performance overthe entire simulation time span T . P1 is the average user connectivity ratio and P2is the average all-pair minimum bandwidth in bits per second during the simulationtime span. In dynamic scenarios, the performance of the PSO algorithm and theproposed MANET management system are tested as described in the proceduregiven in Fig. 5. Note that Problem ALOC(t,H) is solved for the predicted locationsof user nodes, and performance metrics P1 and P2 are evaluated using the actuallocations of user nodes. Similarly, the clusters of user nodes are also determinedin each time period based on the predicted locations of user nodes. A minimumspanning tree-based clustering algorithm (see [1] pages 515-516 for details) is usedto identify K clusters of user nodes. First, the minimum spanning tree of user nodesis determined in the full mesh network of user nodes, where the rectilinear distancesbetween user nodes are used as the arc weights, and then K disconnected clusters ofuser nodes are obtained by deleting (K-1) arcs of the minimum spanning tree one

Page 13: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 13

by one in decreasing order of their distances. The maximum flows between the pairsof user nodes (or user clusters) are calculated by an implementation of the highest-label push-relabel algorithm [14] available from BOOST C++ libraries, which is apeer-reviewed, freely available software library collection [3]. The PSO code wasimplemented in the C programming language and all runs were performed on LinuxPCs with Dual 3.0 GHz Intel Xeon E5450 Quad-Core Processors and 32 GB RAM.

for t = 1, . . . ,3 do {Using the mobiliy model, generate locations (xit ,yit) ∀i ∈UNt

}for t = 3, . . . ,T do {

Predict (xi(t+H), yi(t+H)) ∀i ∈UNtDetermine K clusters,C1t , ...,CKt , based on the predicted user locationsSolve Problem ALOC(t,H) to determine (x∗i(t+H),y

∗i(t+H)) ∀i ∈ ANt

Deploy mobile agent i to (xi(t+1),yi(t+1)) ∀i ∈ ANtSimulate actual locations (xi(t+1),yi(t+1)) ∀i ∈UNtCreate network G(t+1)Evaluate G(t+1)

}Calculate P1 and P2

Fig. 5 Procedure for testing dynamic problems.

5.1 Mobility Simulation Environment

To test the performance of the PSO algorithm under dynamic scenarios, a mobilitysimulation model was created to randomly generate the movements of user nodes.In the simulation model, each user node i is assigned to a random starting point(xi0,yi0) and to a random destination point (xiT ,yiT ), and each follows a path withrandom perturbations to its destination. Let vit be the unit vector representing thedirection of the motion of user node i at time t. At each time period, each usernode i travels a random distance U(dmin,dmax) in the direction of vector vit which iscalculated as follows:

vit ←

(αvvi(t−1) +(1−αv)

(xiT ,yiT )−(xit ,yit )|(xiT ,yiT )−(xit ,yit )|

)[cos(θ) sin(θ)−sin(θ) cos(θ)

]if U(0,1) < p,

αvvi(t−1) +(1−αv)(xiT ,yiT )−(xit ,yit )|(xiT ,yiT )−(xit ,yit )| otherwise.

where αv is a weight factor for the current motion direction, θ represents the ran-dom changes in the direction of the motion, and p determines how frequently thedirection is perturbed. The initial directions of user nodes are also randomly deter-

Page 14: Improving Network Connectivity in Ad Hoc Networks Using

14 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

mined. This motion simulation model is a version of the Random Waypoint Model[4], which is frequently used in the literature as a benchmark mobility model toevaluate MANET management protocols. By changing parameters dmin, dmax, αv,θ , and p, very complex user motions can be achieved. The simulation parameters forthe test problems are: dmin = 0.01, dmax = 0.05, αv = 0.95, θ = U(−π/4,π/4), andp = 0.1 This motion scenario models the case where users search for their destina-tions or make their way around forbidden areas or obstacles, which is a reasonablerepresentation of a search/rescue or a military operation.

Although the proposed MANET management system and the PSO algorithmcan handle cases where the number of user and agent nodes change during thesimulation, it is assumed that the number of agent and user nodes is constant dur-ing the simulation. The simulation area is a two-dimensional rectangular area withlower-left corner coordinates of (0,0) and upper-right corner coordinates of (5,5).The simulation dimensions are set so that the wireless transmission ranges of allMANET nodes are one unit distance (Rit = 1.0). Without loss of generality, nor-malized transmission ranges and data rates are used in the simulation. Using theEuclidian distance di jt between two nodes i and j at time t, the link capacity ui jtin terms of data rate in bits per second (bps) is approximated with a continuousfunction as follows:

ui jt = 104(

1+ e10·(di jt−0.5))−1

(11)

Static test problem data specifies the locations of user nodes, which are randomlyselected within the simulation area.

5.2 The Effect of Number of Agents, Future Location Prediction,and Clustering

To study the effect of the input parameters of the proposed MANET system, twotest problem groups were used. Five 10-user and five 20-user dynamic test problemswere randomly generated with T = 100 as described in the test problem simulationenvironment. Each random problem was solved five times using the PSO algorithmwith different random number seeds for the MANET system input parameter valuesof the number of agents na = {1,2,3}, the number of prediction horizons H ={0,1,2,3,4,5,6}, and the number of clusters K = {4,6}. For problems with 10 usernodes, node clustering was not used (i.e., K = 10). In other words, 25 replicationswere performed for each combination of na, H, and K (a total of 1050 runs forthe 20-user group and 525 for the 10-user group). The swarm size was 40 in allruns and the PSO algorithm was run for cmax = 50 iterations during each time stepof the simulation. In real-world cases, parameter cmax depends on how frequentlythe problem is solved and deployment decisions are propagated to agent nodes. AnANOVA model was used for each problem group to study the effect of na, H, andK on the performance of the proposed MANET management system.

Page 15: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 15

Figures 6 and 7 present the main effect plots for the 10-user and 20-user prob-lem groups, respectively. As expected, both network connectivity (P1) and minimumbandwidth (P2) significantly improve with the increasing number of agents. As seenin the main effect plots, location prediction has a significant effect on the perfor-mance of the network (ANOVA p-values of significance P1: 0.0 for both problemgroups; P2: 0.065 for 10-node and 0.020 for 20-node problems). Based on theseresults, predicting future locations of user nodes is particularly important for im-proving overall network connectivity. Network connectivity performance metric P1significantly improves from H = 0 (no prediction) to H = 1 (prediction for the nexttime period). For the test problems studied, H=3 or 4 provides the best results. Itshould be noted that although several hundred runs were performed for the ANOVA,the results of this experiment should not be generalized. H is a parameter that shouldbe selected by network managers based on empirical data and experience. Variousmobility models or prediction techniques may yield different results. Nonetheless,the results of this experiment demonstrate that incorporating a user location predic-tion model into the proposed MANET management system may improve overallnetwork performance in dynamic problem scenarios.

Another interesting result of the experiment with dynamic problems is that thenumber of user node clusters K has no statistically significant effect on either P1 orP2 (p-values of 0.3 and 0.14, respectively). The main justification for using clustersof user nodes instead of individual nodes in evaluating the weakest connection ofa network is computational tractability, particularly for dynamically solving largeproblems. Using a cluster of user nodes makes the evaluation of Ot2 independentof the number of user nodes. Therefore, very large networks might be efficientlyevaluated in limited time periods.

1 2 3

500

1000

1500

(c) Effect of na on P2

na

P2

0 1 2 3 4 5 6

500

1000

1500

(d) Effect of H on P2

H

P2

1 2 30.6

0.7

0.8

(a) Effect of na on P1

na

P1

0 1 2 3 4 5 60.6

0.7

0.8

(b) Effect of H on P1

H

P1

Fig. 6 Main effect plots for 10-user problems.

Page 16: Improving Network Connectivity in Ad Hoc Networks Using

16 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

1 2 31000

1500

2000

2500

(d) Effect of na on P2

na

P2

0 1 2 3 4 5 61000

1500

2000

2500

(e) Effect of H on P2

H

P2

4 61000

1500

2000

2500

(f) Effect of K on P2

K

P2

1 2 30.98

0.985

0.99

0.995

1

(a) Effect of na on P1

na

P1

0 1 2 3 4 5 60.98

0.985

0.99

0.995

1

(b) Effect of H on P1

H

P1

4 60.98

0.985

0.99

0.995

1

(c) Effect of K on P1

K

P1

Fig. 7 Main effect plots for 20-user problems.

5.3 Comparative Performance of the PSO Algorithm

In this study, the performance of the PSO algorithm is compared with respect toa MIP formulation in several static test problems. The agent deployment problem,Problem ALOC(t,H), is a very difficult non-linear MIP problem to solve to opti-mality. An approximate MIP formulation of the static problem was developed byonly considering O2t as given below (Problem ALOC). To do so, the nonlinear arcdistance versus capacity relationship and the Euclidean arc distances were modeledusing eight piecewise linear approximations. Although the MIP formulation is com-putationally intractable for real-world sized problems, the main objective of thiscomparison is to provide a benchmark for the performance of the PSO algorithm.

Because Problem ALOC is for static cases, time index t is omitted in the decisionvariables and problem parameters. In addition, the upper bound (Dmax) constraint onthe distance that agent nodes can travel is irrelevant for static cases. Problem ALOCis a multi-commodity network flow problem where variable fi jst represents the flowfrom the source node s to the sink node t on arc (i, j). Node set N includes both usernodes (UN) and agent nodes (AN). Arc set E includes two types of arcs, user nodearcs (i.e., {(i, j) : min(Ri,R j) ≥ di j ∀i, j ∈UN, i 6= j}) and agent node arcs (i.e.,{(i, j) : ∀i ∈ N,∀ j ∈ AN, i 6= j}). Because the locations of user nodes are known (let(xi, yi) represent the location of user node i for all i ∈UN), the capacities of the usernode arcs are constant in Problem ALOC due to constraints (24) and (25). On theother hand, the capacities of agent node arcs depend on the locations of agent nodes.

Page 17: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 17

The objective function of Problem ALOC is to maximize the minimum of themaximum flows between the user node pairs. Given the locations of the user nodes(xi, yi) ∀i ∈UN, the decision variables of Problem ALOC include the locations ofagent nodes (i.e, (xi,yi) ∀i ∈ AN). Constraints (13)-(15) are the node-flow balanceconstraints to calculate the maximum flow Ust from the source node s and to thesink node t for ∀s, t ∈ UN and s < t. Constraints (16)-(20) are used to calculatethe squared-Euclidian distances sdi j of agent arcs (i, j) for i ∈ N, j ∈ AN, i < j. Inconstraint (20), squared-distances (dx

i j)2 and (dy

i j)2 along the x and y axes, respec-

tively, are approximated by piecewise linear functions while solving the problem inCPLEX. Constraints (21) and (22) determine the capacity ui j of each agent arc (i, j)based on (11), which is also approximated by piece-wise linear functions. Constraint(23) ensures that the flow variables do not exceed the arc capacities.

Problem ALOC:

Mazimize z = U

st.

U ≤ Ust ∀s, t ∈UN,s < t (12)

∑{ j:(i, j)∈E}

fi jst − ∑{ j:( j,i)∈E}

f jist = 0 ∀i ∈ N,∀s, t ∈UN, i 6= s, i 6= t,s < t(13)

∑{ j:(s, j)∈E}

fs jst − ∑j:( j,s)∈E}

f jsst = Ust ∀s, t ∈UN,s < t (14)

∑{ j:(t, j)∈E}

ft jst − ∑{ j:( j,t)∈E}

f jtst = −Ust ∀s, t ∈UN,s < t (15)

dxi j ≥ xi− x j ∀i ∈ N, j ∈ AN, i < j (16)

dxi j ≥ x j− xi ∀i ∈ N, j ∈ AN, i < j (17)

dyi j ≥ yi− y j ∀i ∈ N, j ∈ AN, i < j (18)

dyi j ≥ y j− yi ∀i ∈ N, j ∈ AN, i < j (19)

(dxi j)

2 +(dyi j)

2 ≤ sdi j ∀i ∈ N, j ∈ AN, i < j (20)

ui j−104(

1+ e10(√

sdi j−0.5))−1

≤ 0 ∀i ∈ N, j ∈ AN, i < j (21)

u ji ≤ ui j ∀i ∈ N, j ∈ AN, i < j (22)fi jst ≤ ui j ∀(i, j) ∈ E (23)

xi = xi ∀i ∈UN (24)yi = yi ∀i ∈UN (25)

ui j,xi,y j, fi jst ≥ 0

Problem ALOC was solved by CPLEX v11 with a limit of eight hours CPU time.CPLEX was not able to find feasible solutions for problems with more than ten usernodes and five agents within the allowed CPU time limit. Fig. 8 shows the compar-isons on static cases of ten randomly generated 5-user and 10-node problems withthree and five agents. In these problems, the locations of users were randomly gen-

Page 18: Improving Network Connectivity in Ad Hoc Networks Using

18 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

erated in a way that connecting all users were possible. In all problems, both userand agent nodes had a communication range of one unit distance. For each probleminstance, the PSO was run for ten random replications with a swarm size of 40 forcmax=1000 iterations. Therefore, the box-plots in Fig. 8 include 100 data points forthe PSO and ten data points for CPLEX. The majority of 5- and 10- node problemswith three agents were solved to optimality within the CPU time limit. These staticproblems with three agents demonstrate that the PSO performed as well as the MIPformulation. In some replications of these problems, the PSO finds slightly bettersolutions than the MIP formulation. These differences can be attributed to the linearapproximation in the MIP formulation. As seen in Fig. 8, the PSO algorithm per-form significantly better than the MIP formulation in the problems with five agents.Increasing the number of agents from three to five significantly increases the searchspace of the problem and these problems could not be solved to optimality withinthe CPU time limit. The solutions found by the PSO are superior to the best solu-tions found by CPLEX over eight hours of CPU time. The CPU time requirement ofthe PSO depended on the problem. In random 5-node problem with three agents, forexample, 1000 PSO iterations require CPU times ranging from 1.3 to 80.0 secondswith an average of 31.9 seconds. For random 10-node problems with five agents, theminimum, maximum, and average CPU times are 21.9, 855.2, and 316.5 seconds,respectively. In these problems, a significant percent of the computational effortis due to calculation of maximum flows. A more efficient approach to calculatingall-pairs maximum flow (e.g., the all-pairs minimum value cut algorithm [1]) mayprovide significant computational savings.

6 Conclusions

In this chapter, a new model is proposed to conceptualize an autonomous topologyoptimization for mobile ad hoc networks. The proposed approach relocates mobileagents to help maintain a suitable level of communication service in the network.The representation of wireless ad hoc network communications as network flowsand optimization using a maximum flow model is a novel approach. This represen-tation is very responsive to small changes in topology when evaluating network con-nectivity and performance. Also, it can be used with any signal attenuation modelwhen calculating the data flow rates.

The dynamic nature of the problem is a challenge, but it also enables the opti-mizer to gain additional information by leveraging the information obtained duringthe optimization at previous time steps. The usefulness of predicting user locationsto improve network connectivity is demonstrated. A particle swarm algorithm isdeveloped to solve the modeled dynamic optimization problem. Computational ex-periments show that the particle swarm algorithm is very promising and well suitedto this problem.

The proposed approach, while developed for dynamic topology optimization,easily adapts to a static scenario by increasing the agent velocity constraints. The

Page 19: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 19

static scenario is useful when users want to improve an existing system of sensors orcommunication hubs already positioned in the field, or when designing a new staticsystem. The proposed approach could also be used for “what-if” purposes beforelaunching an actual network in the field. The simulation is useful to plan for themost efficient number of mobile agents to deploy under a certain scenario, and toconsider cost / benefit tradeoffs.

0 2000 4000 6000 8000 10000 12000 14000 16000 18000

5

5

5

5

10

10

10

10

3

3

5

5

3

3

5

5

CPLEX

PSO

CPLEX

PSO

CPLEX

PSO

CPLEX

PSO

bits per second

nanu

Fig. 8 Comparison of the PSO and MIP on ten random problems of each size. (nu = the numberof users, na = the number of agents.)

References

1. Ahuja, RK, Magnanti, TL, and Orlin, JB: (1993) Network Flows, Theory, Algorithms, andApplications. Prentice-Hall, Inc., Upper Saddle River, New Jersey

2. Ashbrook, D, Starner, T (2002) Learning significant locations and predicting user movementwith GPS. Proceedings of the 6th International Symposium on Wearable Computers (ISWC2002): 101-108

3. BOOST.org, Boost C++ libraries, 2006, Accessed in 2006; Available at:http://www.boost.org.

Page 20: Improving Network Connectivity in Ad Hoc Networks Using

20 Abdullah Konak, Orhan Dengiz, and Alice E. Smith

4. Broch, J, Maltz, DA, Johnson, DB, Hu, YC, and Jetcheva, J (1998) A performance compari-son of multi-hop wireless ad hoc network routing protocols. 4th Annual ACM/IEEE Interna-tional Conference on Mobile Computing and Networking 85-97

5. Carlisle, A, Dozier, G (2002) Tracking changing extrema with adaptive particle swarm opti-mizer. Proceedings of the 5th Biannual World Automation Congress 13: 265-270

6. Chadrashekar, K, Dekhordi, MR, Baras, JS (2004) Providing Full Connectivity in Large Ad-Hoc Networks by Dynamic Placement of Aerial Platforms. The Center for Satellite and Hy-brid Communication Networks, Technical Report, University of Maryland

7. Choudhury, RR, Paul, K, Bandyopadhyay, S (2002) An agent-based connection managementprotocol for ad hoc wireless networks. Journal of Network and Systems Management 10:483-504

8. Clerc, M, Kennedy, J (2002) The particle swarm - explosion, stability, and convergence in amultidimensional complex space. IEEE Transactions on Evolutionary Computation 6: 58-73

9. Creixell, W, Sezaki, K (2004) Mobility prediction algorithm for mobile ad hoc network usingpedestrian trajectory data. Proceedings of the IEEE Region 10 Conference-(TENCON 2004)2:668-671

10. Davis, JA, Fagg, AH, Levine, BN (2001) Wearable computers as packet transport mecha-nisms in highly-partitioned ad-hoc networks. Proceedings Fifth International Symposium onWearable Computers 141-148

11. Dorigo, M, Maniezzo, V, Colorni, A (1996) Ant system: optimization by a colony of cooper-ating agents. IEEE Transactions on Systems, Man and Cybernetics, Part B (Cybernetics) 26:29-41

12. Eberhart, RC, Kennedy, J (1995) A new optimizer using particle swarm theory. Sixth Inter-national Symposium on Micro Machine and Human Science :3943

13. Eberhart, RC, Shi, Y (2001) Tracking and optimizing dynamic systems with particle swarms.Proceedings of the 2001 Congress on Evolutionary Computation 1: 94-100

14. Goldberg, AV, Tarjan, RE (1988) A new approach to the maximum-flow problem. Journal ofthe ACM (JACM) 35:921-940

15. Goyal, D, Caffery, J (2002) Partitioning avoidance in mobile ad hoc networks using net-work survivability concepts. Seventh IEEE Symposium on Computers and Communications(ISCC’02) 553-558

16. Hauert, S, Winkler, L, Zufferey, J-C, Floreano D. (2008) Ant-based swarming with position-less micro air vehicles for communication relay. Swarm Intelligence 2: 167-188

17. Huang, R, Zaruba, GV (2007) Location tracking in mobile ad hoc networks using particlefilters. Journal of Discrete Algorithms 5: 455-470

18. Kaplan, E, Hegarty, C (2006) Understanding GPS: Principles and Applications Second Edi-tion. Artech House, Norwood, MA, USA

19. Karumanchi, G, Muralidharan, S, Prakash, R (1999) Information dissemination in partition-able mobile ad hoc networks. Proceedings of the 18th IEEE Symposium on Reliable Dis-tributed Systems 4-13

20. Kennedy, J, Mendes, R (2006) Neighborhood topologies in fully informed and best-of-neighborhood particle swarms. IEEE Transactions on Systems, Man and Cybernetics, PartC (Applications and Reviews) 36: 515-519

21. Kim, IK, Jang, SH, Lee, JS (2007) QLP-LBS: quantization and location prediction-basedLBS for reduction of location update costs. Lecture Notes in Computer Science, Frontiers ofHigh Performance Computing and Networking ISPA 2007 Workshops 4743/2007:69-76

22. Kim, T-H, Tipper, D, Krishnamurthy, P, et al. (2009) Improving the Topological Resilience ofMobile Ad Hoc Networks. 7th International Workshop on the Design of Reliable Communi-cation Networks 191-197

23. Li, Q, Rus, D (2003) Communication in disconnected ad hoc networks using message relay.Journal of Parallel and Distributed Computing 63: 75-86

24. Mitrovic, D (1999) Short term prediction of vehicle movements by neural networks. Pro-ceedings of the 3rd International Conference on Knowledge-Based Intelligent InformationEngineering Systems 187-190

Page 21: Improving Network Connectivity in Ad Hoc Networks Using

Title Suppressed Due to Excessive Length 21

25. Ou, CH, Ssu, KF, Jiau, HC (2004) Connecting network partitions with location-assisted for-warding nodes in mobile ad hoc environments. The 10th Pacific Rim International Sympo-sium on Dependable Computing 239-247

26. Ozcan, E, Mohan, CK (1999) Particle swarm optimization: surfing the waves. Proceedings ofthe 1999 Congress on Evolutionary Computation-CEC99 Vol. 3: 1939-1944

27. Shi, Y, Eberhart, RC (2001) Fuzzy adaptive particle swarm optimization. Proceedings of the2001 Congress on Evolutionary Computation 1: 101-106

28. Zhu, H, Swindlehurst, AL, Liu, KJR (2006) Smart deployment/movement of unmanned airvehicle to improve connectivity in MANET. 2006 IEEE Wireless Communications and Net-working Conference 252-257

29. Su, W, Lee, S-J, Gerla, M (2001) Mobility prediction and routing in ad hoc wireless networks.International Journal of Network Management 11: 3-30

30. Tang, J, Xue, G, Zhang, W (2004) Reliable routing in mobile ad hoc networks based onmobility prediction. Proceedings of the IEEE International Conference on Mobile Ad-hocand Sensor Systems 466-474

31. Wang, N-C, Chang, S-W (2005) A reliable on-demand routing protocol for mobile ad hocnetworks with mobility prediction. Computer Communications 29: 123-135

32. Wang, KH, Li, B (2002) Efficient and guaranteed service coverage in partitionable mobilead-hoc networks. Proceedings of IEEE INFOCOM 2: 1089-1098

33. Wang, KH, Li, B (2002) Group mobility and partition prediction in wireless ad-hoc networks.Proceedings of 2002 IEEE International Conference on Communications 2: 1017-1021

34. Zhao, W, Ammar, M, Zegura, E (2004) A message ferrying approach for data delivery insparse mobile ad hoc networks. Proceedings of the 5th ACM International Symposium onMobile Ad Hoc Networking and Computing 187-198