topology reconfiguration for systems of networked autonomous

106
TOPOLOGY RECONFIGURATION FOR SYSTEMS OF NETWORKED AUTONOMOUS VEHICLES WITH NETWORK CONNECTIVITY CONSTRAINTS By LEENHAPAT NAVARAVONG A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2013

Upload: doannga

Post on 17-Jan-2017

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Topology reconfiguration for systems of networked autonomous

TOPOLOGY RECONFIGURATION FOR SYSTEMS OF NETWORKED AUTONOMOUSVEHICLES WITH NETWORK CONNECTIVITY CONSTRAINTS

By

LEENHAPAT NAVARAVONG

A DISSERTATION PRESENTED TO THE GRADUATE SCHOOLOF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT

OF THE REQUIREMENTS FOR THE DEGREE OFDOCTOR OF PHILOSOPHY

UNIVERSITY OF FLORIDA

2013

Page 2: Topology reconfiguration for systems of networked autonomous

c© 2013 Leenhapat Navaravong

2

Page 3: Topology reconfiguration for systems of networked autonomous

To my beloved parents, Dr. Sompong Navaravong and Dr. Leen Navaravong

3

Page 4: Topology reconfiguration for systems of networked autonomous

ACKNOWLEDGMENTS

I would like to express my sincerest gratitude to my academic advisor, Prof. John

M. Shea, for his invaluable guidance and continuous support throughout my graduate

studies at the University of Florida. I really appreciate his help and encouragement,

which put me on the right track towards my Ph.D. I have greatly benefitted from his

wisdom, expertise, and enthusiasm. Without his excellent advice, patience, and support,

this doctoral dissertation would not be possible.

I would like to thank Prof. Tan F. Wong for his help and guidance when I was

working in the WING Testbed group.

I would like to thank all of my committee members, Prof. Warren E. Dixon, Prof.

Cole Smith, and Prof. Prabir Barooah, for their academic suggestions and comments on

my work, which have helped to improve this dissertation.

I also extend my appreciation to my best seniors from the WING laboratory, Dr.

Byonghyok Choi and Dr. Chan Wong Wong. Both of them have always treated me as

their own brother. They always gave me valuable suggestions, fruitful discussions and

generous support during my graduate studies at the University of Florida. I would like to

thank another senior from the WING laboratory, Dr. Debdeep Chatterjee, for his useful

advice about coursework and his support during my Masters study.

I thank all of my WING labmates, including Xing Fang, Chen Zhang, Ke Tang, Bing

Gao, Sien Wu, Kareem Graham, Eric Graves, Gokul Bhat, Manish Bansal, Ravi Teja,

Shravan Bhat, Vivek Vijaya Kumar, Sudhamshu, Priyanka Sinha, David Green, Benjamin

Lander, and Tim Tang, in no particular order. All of them made my days in the WING

laboratory more enjoyable.

Last but not least, I would like to thank my parents, Dr. Sompong Navaravong, and

Dr. Leen Navaravong, for their love, support, and sacrifice. They have always been

my role models of hard work and a constant source of inspiration and encouragement

throughout my life.

4

Page 5: Topology reconfiguration for systems of networked autonomous

TABLE OF CONTENTS

page

ACKNOWLEDGMENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

CHAPTER

1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.1 Overview of Research from Controls Community . . . . . . . . . . . . . . 131.2 Networking Approaches to Formation Control . . . . . . . . . . . . . . . . 171.3 Organization of Dissertation . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2 PHYSICAL- AND NETWORK-TOPOLOGY CONTROL FOR SYSTEMS OFNETWORKED AUTONOMOUS VEHICLES . . . . . . . . . . . . . . . . . . . . 24

2.1 Anonymous Network Topology Reconfiguration Algorithms . . . . . . . . 262.1.1 Basic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.1.2 Simultaneous Transition (ST) Algorithm . . . . . . . . . . . . . . . 30

2.2 Relabeling Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.2.1 Branch Relabeling (BR) Algorithm . . . . . . . . . . . . . . . . . . 312.2.2 Neighbor Relabeling (NR) Algorithm . . . . . . . . . . . . . . . . . 33

2.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

3 GRAPH MATCHING-BASED TOPOLOGY RECONFIGURATION ALGORITHMFOR SYSTEMS OF NETWORKED AUTONOMOUS VEHICLES . . . . . . . . 42

3.1 Initial Tree Selection (ITS) Algorithm . . . . . . . . . . . . . . . . . . . . . 433.2 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

4 OPTIMIZING NETWORK TOPOLOGY TO REDUCE AGGREGATE TRAFFICIN A SYSTEM OF NETWORKED AUTONOMOUS VEHICLES UNDER ANENERGY CONSTRAINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

4.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584.2 Network Topology Reconfiguration Algorithms . . . . . . . . . . . . . . . . 614.3 Network Topology Optimization Algorithms . . . . . . . . . . . . . . . . . 65

4.3.1 Network Tree Selection (NTS) Algorithm . . . . . . . . . . . . . . . 654.3.1.1 Optimal Algorithm . . . . . . . . . . . . . . . . . . . . . . 654.3.1.2 Simulated Annealing (SA) Algorithm . . . . . . . . . . . . 68

4.3.2 Network Topology Reconfiguration Optimization (NTRO) Algorithm 684.3.2.1 Optimal Algorithm . . . . . . . . . . . . . . . . . . . . . . 70

5

Page 6: Topology reconfiguration for systems of networked autonomous

4.3.2.2 Simulated Annealing (SA) Algorithm . . . . . . . . . . . . 734.4 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

5 ROUTING APPROACHES TO OPTIMIZE THE PHYSICAL TOPOLOGY OFA SYSTEM OF NETWORKED AUTONOMOUS VEHICLES TO REDUCE AGGREGATETRAFFIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.2 Advanced Network Topology Reconfiguration Algorithm . . . . . . . . . . 835.3 Physical Topology Reconfiguration Optimization (PTRO) Algorithms . . . 89

5.3.1 Optimal Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 925.3.2 Simulated Annealing (SA) Algorithm . . . . . . . . . . . . . . . . . 93

5.4 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6 CONCLUSIONS AND FUTURE WORK . . . . . . . . . . . . . . . . . . . . . . 97

6.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

BIOGRAPHICAL SKETCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

6

Page 7: Topology reconfiguration for systems of networked autonomous

LIST OF FIGURES

Figure page

1-1 An example of the artificial potential field generated for a disk-shaped workspacewith destination at the origin and an obstacle located at [1, 1]T . . . . . . . . . . 13

1-2 Network topology reconfiguration. . . . . . . . . . . . . . . . . . . . . . . . . . 20

1-3 Conversion from linear configuration to star configuration. . . . . . . . . . . . . 21

1-4 Aggregate flow minimization by topology reconfiguration. . . . . . . . . . . . . 22

2-1 Network topology 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2-2 Basic algorithm example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2-3 Simultaneous transition algorithm example. . . . . . . . . . . . . . . . . . . . . 31

2-4 Network topology 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2-5 Branch Relabeling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2-6 Neighbor Relabeling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2-7 Desired topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2-8 Average total hop over 100 random initial topologies for each link number. . . . 37

2-9 Average total time over 100 random initial topologies for each link number. . . . 38

2-10 Average of the minimum total hop among the number of root considerationover 100 random initial topologies. . . . . . . . . . . . . . . . . . . . . . . . . . 39

3-1 Network topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

3-2 Initial network topology. Numbers outside (inside) parentheses represent thenode’s label in the initial topology (role to which that node is assigned in thefinal formation). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

3-3 Initial tree selection algorithm example. . . . . . . . . . . . . . . . . . . . . . . 50

3-4 Average required total number of hops required to achieve desired networktopology for different methods of selecting the initial network tree Gti from theinitial network Gi , with relabeling algorithms. . . . . . . . . . . . . . . . . . . . . 53

3-5 Average running time required to achieve desired network topology for differentmethods of selecting the initial network tree Gti from the initial network Gi , withrelabeling algorithms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

4-1 Network topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

7

Page 8: Topology reconfiguration for systems of networked autonomous

4-2 Labeling network topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

4-3 Network reconfiguration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4-4 Minimum achievable aggregate traffic for network tree selection algorithms asa function of network size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4-5 Minimum achievable aggregate traffic for combined algorithms as a functionof network size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

5-1 Physical topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

5-2 Network topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

5-3 Labeling network tree topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

5-4 Network reconfiguration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

5-5 Minimum achievable aggregate traffic for combined algorithms as a functionof network size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

8

Page 9: Topology reconfiguration for systems of networked autonomous

Abstract of Dissertation Presented to the Graduate Schoolof the University of Florida in Partial Fulfillment of theRequirements for the Degree of Doctor of Philosophy

TOPOLOGY RECONFIGURATION FOR SYSTEMS OF NETWORKED AUTONOMOUSVEHICLES WITH NETWORK CONNECTIVITY CONSTRAINTS

By

Leenhapat Navaravong

May 2013

Chair: John M. SheaMajor: Electrical and Computer Engineering

Future systems of networked autonomous vehicles, such as unmanned aerial

or ground vehicles, may rely on peer-to-peer, wireless communication to coordinate

their actions. The physical formation of the network may need to be reconfigured at

times based on the specified missions. However, reconfiguring the physical formation

also impacts the link connectivity and, hence, the connectivity of the network. If the

network is partitioned, then the autonomous vehicles can no longer coordinate their

movements, and the mission may fail. In this dissertation, we develop techniques to

transform the formation of a system of autonomous vehicles while preserving network

connectivity. Several different approaches to address this problem are presented, with a

focus on a method that utilizes ideas from routing packets in networks. We also discuss

the problem of formation selection and give an example of formation optimization in

which communication costs are minimized under constraints on preserving network

connectivity and on the amount of movement required.

In this dissertation, we first consider the problem of how to transform the network

topology of a system of autonomous vehicles from an initial topology to a desired

topology while maintaining network connectivity throughout the topology transformation

process. We propose algorithms based on the concepts of prefix labeling and routing

from the computer networking community to solve this problem when the final network

topology is a tree. We present simulation results to evaluate the performance of our

9

Page 10: Topology reconfiguration for systems of networked autonomous

algorithms in terms of the amount of movement and time required to achieve the desired

network topology. The algorithms we develop can be used to generate navigation

functions that can be used by control systems to achieve a desired physical topology.

Next, we consider a key unsolved subproblem, which is how the nodes in the initial

network topology should be mapped onto the nodes in the final network topology before

the network topology is reconfigured, while taking into account the needs to preserve

network connectivity. We develop algorithms to solve this problem based on optimal and

suboptimal graph-matching algorithms. We then apply these techniques with previously

developed techniques to plan node movement to reconfigure the network topology while

preserving network connectivity at all times. The performance of these techniques is

evaluated via simulation.

Afterward, we consider the problem of optimizing the network topology of a system

of networked autonomous vehicles to minimize the aggregate network traffic required to

support a given set of data flows under constraints on the total amount of movement by

the autonomous vehicles. We propose a solution to this problem consisting of two steps.

First, we develop algorithms to select a network tree topology from an arbitrary initial

connected network topology. Second, we develop optimization algorithms to reconfigure

the network tree topology found in the first step while preserving the connectivity to

minimize the aggregate traffic under constraints on the total number of hops that the

autonomous vehicles may move. Simulation results are presented to evaluate the

performance of the algorithms.

Finally, we apply networking concepts and optimization strategies to determine a

feasible physical formation that reduces aggregate data traffic under constraints on the

total amount of movement by the autonomous vehicles. We develop techniques that

provide waypoints for use by physical control algorithms, under which the network

connectivity will be ensured at all times if movement is on linear paths between

10

Page 11: Topology reconfiguration for systems of networked autonomous

the waypoints. Simulation results are presented to demonstrate that our proposed

techniques can significantly reduce aggregate network traffic.

11

Page 12: Topology reconfiguration for systems of networked autonomous

CHAPTER 1INTRODUCTION

Systems of autonomous vehicles under cooperative control, such as aerial,

underwater, surface, or space vehicles, provide versatile platforms for commercial and

military applications. For instance, [1] provides a list of “some of the main applications

for cooperative control of multivehicle systems”. This list includes:

• Military Systems: Formation Flight, Cooperative Classification and Surveillance,Cooperative Attack and Rendezvous, and Mixed Initiative Systems;

• Mobile Sensor Networks: Environmental Sampling and Distributed ApertureObserving; and

• Transportation Systems: Intelligent Highways and Air Traffic Control.

These types of tasks usually require that the vehicles coordinate their actions, and thus

the vehicles must be able to exchange information over some form of communications

network, such as an ad hoc wireless network [2–4]. Thus, in many applications,

maintaining network connectivity during formation control will be an important issue.

For most applications, communications will be over a wireless network, in which the

communications links between autonomous vehicles are dependent on the propagation

of electromagnetic signals between the autonomous vehicles. Because electromagnetic

power density decreases with distance, the network topology is highly dependent on the

physical formation of the system. Thus, formation control techniques must be designed

that can maintain network connectivity while achieving the desired formation goals.

In this chapter, we discuss the problem of formation control with network connectivity

(FC+NC) constraints or goals, hereafter referred to as FC+NC problems. We first

provide an overview of the prior research on this topic, which has primarily come from

the controls community. Then we provide an overview of our work, which applies ideas

from routing in computer networks and poses formation control problems to minimize

communication costs. Finally, we provide an outline of this dissertation.

12

Page 13: Topology reconfiguration for systems of networked autonomous

−5

0

5 −5

0

5

0

0.5

1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Destination(minimum)

Obstacle(maximum)

Figure 1-1.

An example of the artificial potential field generated for a disk-shapedworkspace with destination at the origin and an obstacle located at [1, 1]T .

1.1 Overview of Research from Controls Community

Overviews of techniques for formation control (without necessarily including network

considerations) are given in [1, 5, 6]. Some of the main approaches to formation control

are given in [5] as leader-follower, virtual structure, and behavior-based. Another list of

approaches is given in [1] as optimization based, potential-field solutions, string-stability

based, and swarming. One of the most widely used approaches in formation control is to

use artificial potential fields to guide the movement of the autonomous vehicles [1, 7, 8].

Attractive potential fields are centered at the goal locations, and repulsive potential fields

are generated around obstacles. Driven by the negative gradient of the potential field,

each autonomous vehicle will converge to a minimum of the potential field, which is

typically the desired final position. An example of the generated artificial potential field is

shown in Figure 1-1, in which the destination is assigned a minimum potential value and

the obstacle is assigned a maximum potential value.

In Section III of [5], Chen and Wang discuss the research (up to 2005) on the

impact of network connectivity on the analysis of the stability and controllability of

13

Page 14: Topology reconfiguration for systems of networked autonomous

formations of autonomous vehicles. The papers cited in that section represent some of

the earliest work on FC+NC problems. Much of the work in this area, as well as later

work on FC+NC problems, utilizes tools from graph theory, and in particular, algebraic

graph theory. Because of the importance of this approach to FC+NC problems, we give

an overview of this topic here based on [5] and its references.

The network connecting the autonomous vehicles can be represented by a

time-varying graph G(t). For simplicity, we consider the case where the graph is

undirected and suppress the time dependence. Thus, G = (V, E), where V is the

set of vertices (representing the autonomous vehicles) and E is the set of edges

connecting the vertices in V. An edge (x , y) ∈ E is an unordered pair that specifies

that a communication link exists between x and y ; x and y are said to be adjacent or

neighbors, and this relation is denoted by x ∼ y .

The relation between the physical positions of the autonomous vehicles and the

network connectivity depends on the nature of the communication links connecting

the autonomous vehicles. Most of the work on FC+NC problems assumes that the

communication links follow a homogeneous protocol model, in which two autonomous

vehicles can communicate if they are within a specified maximum communication range

and cannot communicate if they are outside of that range. We assume the use of this

homogeneous protocol model in this dissertation. This model may accurately model

communications in many systems of unmanned aerial vehicles (UAVs) working above

obstructions; however, shadowing and multipath fading make this model inaccurate in

many scenarios involving ground vehicles or operations in urban environments.

The edge connection information can be collected into a matrix called the adjacency

matrix, A(G), which is defined by

Aij(G) =

1, i ∼ j

0, otherwise.

14

Page 15: Topology reconfiguration for systems of networked autonomous

The connectivity of the graph G can be determined from A(G) by computing eigenvalues

of the graph Laplacian, L(G). Let ∆(G) be a diagonal matrix, in which the (i , i) entry

is the number of neighbors of vertex i (also known as the degree or valency of vertex

i ); the (i , i) entry is the sum of the elements in the i th row or column of A(G). Then

L(G) = ∆(G) − A(G). In some works, such as [9, 10], L(G) is defined differently, where

L(G) = I − ∆−1(G)A(G).

The Laplacian is symmetric and positive semidefinite. Let λi(L) be the i th smallest

eigenvalue. Then λ1(L) = 0, and the multiplicity of the eigenvalue zero is equal to the

number of connected components in the graph (i.e., the number of connected subgraphs

that do not share connections with each other). Thus, for a network to be connected,

there must be only one zero eigenvalue. The second smallest eigenvalue, λ2(L), is

called the Fiedler value [11–14] and gives a quantitative measure of how connected

the graph is. The associated eigenvector can be used to determine a set of links that if

removed will cause the network to partition [11].

In the early work on FC+NC problems, the network graph was assumed fixed,

and the impact of the network on the stability or controllability under particular control

strategies was evaluated. For instance (again see [5, 15]), consider systems that can be

modeled using first order dynamics, where the dynamics of agent i are given by

xi = ui ,

where xi is the state of agent i , and the control law at agent i averages the values from

its neighbors,

ui = − 1

∆ii

∑j∼i

(xi − xj).

Then the controllability of the system of autonomous vehicles is determined by

the interconnection graph. Moreover, the algebraic representation of the graph’s

interconnections can be used to give a simple form for the whole system’s dynamics

15

Page 16: Topology reconfiguration for systems of networked autonomous

as

x = −∆−1/2L∆−1/2x .

Perhaps surprisingly, connectivity can decrease controllability, and a complete graph

with this update law can be shown to be uncontrollable [15]. On the other hand, results

using algebraic graph theory indicate that formation stability may be easily achievable for

the complete graph [9].

Although the earliest work that identified connectivity as a control objective

was published in 1999, most of the work on formation control with connectivity

constraints or goals has been published in 2005 and later (cf. [6, 12, 16–27]). Much

of the control-theory work on FC+NC problems focuses on formation control with

maintenance of existing communication links (cf. [1, 22, 23, 28]). This can be achieved

in formation control systems using the artificial potential field approach by treating

network connectivity as an artificial obstacle [28].

Another branch of work on FC+NC problems focuses on the design of controllers

to enhance some measure of network connectivity or to maintain network connectivity

(which is less restrictive than maintaining link connectivity) during formation control. The

Introduction of [6] gives a good overview of this work. Here, we give a brief overview of

how algebraic graph theory is used in these works.

As previously discussed, the Fiedler value, λ2(L) gives an indication of the

connectivity of a network. Thus, optimization techniques can be used to maximize λ2(L).

However, “the Fiedler value is a nondifferentiable function of the Laplacian matrix” [6],

which makes it difficult to use in control strategies. However, several approaches have

been developed, as discussed in [6]. One alternative to using the Fiedler value as a

measure of network connectivity is to use a sum of powers of the adjacency matrix,

SK(G) =

K∑k=0

A(G)k .

16

Page 17: Topology reconfiguration for systems of networked autonomous

The i , j th entry of SK is the number of paths of length ≤ K between every pair of

nodes in the graph. Thus, if G is connected, every entry of Sn−1(G) will be non-zero,

and Sn−1(G) will be positive definite, where n is the total number of agents in the

system. This sum-of-powers of the adjacency matrix can then be used to develop

optimization-based controllers for connectivity maintenance, which are generally

centralized. Changes in the topology can be accommodated through a controller that

utilizes global techniques, such as gossip and auctions, to guarantee that link breakages

will not disconnect the network [19].

These works develop an important principle that make these problems more

accessible to network researchers: the overall FC+NC problem can be decomposed

such that network connectivity control is performed in the discrete space over the

network graph, while motion control is performed in the continuous space using

conventional control techniques, such as potential fields. Thus, networking researchers

can contribute to the problems of formation control without having to become experts in

motion control. This approach is demonstrated in the next section.

1.2 Networking Approaches to Formation Control

The approaches described in Section 1.1 have several limitations. The approaches

presented in [5] are primarily focused on the impact of a given network connectivity

graph on the control algorithm. Those described in [1] are mostly focused on maintaining

network connectivity during formation control. The approaches in [6] are designed to

optimize connectivity or only allow limited reconfiguration of the formation. In these

previous works, the absolute or relative poses of the agents are pre-specified. Thus,

additional work on FC+NC problems is needed to address the following FC+NC

problems:

1. Techniques are needed to reconfigure a systems of autonomous vehicles fromarbitrary initial connected formations to arbitrary final connected formations, withno break in connectivity during the reconfiguration.

17

Page 18: Topology reconfiguration for systems of networked autonomous

2. Many systems may use autonomous vehicles that have identical capabilities.Such systems should use anonymous formation reconfiguration, in which theautonomous vehicles are identical and can take any position in the final topology1 .

3. Techniques are needed that allow optimization of a final, connected formation tooptimize measures such as communication costs or task-specific utility functions,while maintaining network connectivity and obeying constraints on the amounts ofmovement.

In Chapter 2 and Chapter 3, we propose a networking-based approach that can

be used to address all three problems listed above. In this section, we present an

overview of the work in Chapter 2 and Chapter 3 and explain how it can be used to

simultaneously address problems 1 and 2. In this section, we give an example that

illustrates how these techniques can be used to address problem 3; our example

application minimizes communication costs under constraints on the amount of

movement.

The key idea from Chapter 2 and Chapter 3 is that autonomous vehicles can be

treated as packets that are then routed through the network2 . An example of this

approach is shown in Figure 1-2. There are several issues that have to be solved in

implementing this concept. The first is that autonomous vehicles can only be moved

if they will not cause the network to partition and if they can be moved along paths

that preserve their connectivity to the network. The second is that we wish to perform

anonymous formation reconfiguration. That is, we do not wish to specify which nodes

in the initial topology will take which positions in the final topology; rather, we only care

that there is an autonomous vehicle in each position specified in the final topology.

To address these issues, we first invoke the separation principle described in [6]: the

1 Semi-anonymous techniques should be created for general heterogeneousnetworks in which some autonomous vehicles are identical.

2 Our approach to reconfiguring the network topology can be considered to be pathplanning. Considerations like vehicle dynamics and collision avoidance need to behandled by the physical control algorithms.

18

Page 19: Topology reconfiguration for systems of networked autonomous

problems of network topology control and physical position are treated separately.

Utilizing the navigation function of the controller developed in [28], the desired physical

formation can be achieved once the network topology is a superset of the network

topology in the desired physical formation. Thus, in this dissertation, we assume that the

goal is to specify topology changes as sequences of node positions specified by vertices

in the initial topology graph and that there are physical position-control techniques that

can move autonomous vehicles to positions that correspond to the edges and vertices of

the initial topology.

In general, we can divide formation reconfiguration problems into two classes based

on how the final formation is determined:

1. For some applications, the formation to be achieved is specified by the application.For instance, for landing UAVs on a small runway, a linear formation may berequired, while monitoring a fixed area may require a grid formation.

2. In other applications, the formation may be selected during operations to optimizeperformance of the system. For example, the formation of UAVs may be adaptedbased on the positions of mobile ground vehicles being tracked or may be adaptedto minimize the communication costs needed to exchange information.

In each of these classes of formation control problems, networking constraints

may play an important role. For example, in a search operation, a grid formation may

be desired. However, if the vehicles’ separation is too large, then network connectivity

may break. Thus, another autonomous vehicle may be used to help maintain network

connectivity across the system. An example of this scenario is illustrated in Figure 1-3,

in which a group of UAVs takes off from a launch area, causing them to initially be in a

linear formation. To conduct a grid search while maintaining network connectivity, the

formation is transformed to a star formation, with the center UAV acting as a network

router. When the final formation is known, then the network topology reconfiguration

approach in Chapter 2 and Chapter 3 can be coupled with the physical formation control

approach in [28] to achieve the desired formation while maintaining network connectivity.

19

Page 20: Topology reconfiguration for systems of networked autonomous

(c) Robot 0111 and 0211 send message including its prefix label and

Robot 01 and 02 send requesting message to a root (mobile robot 0).(d) Root assigns the destination for mobile robot 0111, 0211 and send

a message including destination prefix label to each of them.

(e) Mobile robot 0111 and 0211 start moving to the destination by

first moving toward mobile robot 011 and 021 respectively.(f) Mobile robot 0111 and 0211 are now able to communicate with

requesting mobile robot 01 and 02.

(g) Requesting mobile robot 01 and 02 relabel mobile robot 0111 and

0211 to be 012 and 022.

(h) Achieving the desired network topology.

0

01 02

021011011

0111

021

0211

0

01 02

021011 0111 0211

M.RelabelM.Relabel

0

01 02

021011 012 022

0

021

0111 0211

012 022

M.Prefix

M.Prefix

M.Prefix

M.Req

M.Req

M.Prefix

M.Prefix

M.Prefix011

0201

0

01 02

021011

0111 0211

012 022

0

0

M.Dest

M.Dest

M.Dest

M.Dest

M.Dest

M.Dest

(b) Desired network topology(a) Initial network topology

0

01 02

021011

0111 0211

022012

0

01 02

021011

0

011

01

011

0111 02

021

02

021

02110111

Figure 1-2.

Network topology reconfiguration.

20

Page 21: Topology reconfiguration for systems of networked autonomous

(a) UAV with linear network configuration due to consecutive launch.

(b) Converting UAV with linear configuration to a star configuration to

achieve the desired task.

01101 01110 01111

0

01 02

0304

Figure 1-3.

Conversion from linear configuration to star configuration.

Examples of formation optimization are given in Chapter 4 and Chapter 5. In the

scenario considered, the flow of traffic among the autonomous vehicles is nonuniform:

some pairs of autonomous vehicles have much higher traffic flows than other pairs

of autonomous vehicles. This situation may arise during processes such as sensor

fusion or data dissemination in peer-to-peer networks. Generally, messages sent from

one autonomous vehicle to another autonomous vehicle in the network will have to be

relayed by intermediate autonomous vehicles. We call the total amount of transmission

and retransmission the aggregate traffic. Clearly, the aggregate traffic will be highly

dependent on the network topology, and thus the network topology can be optimized

to minimize the aggregate traffic. For example, consider the system of UAVs shown

in Figure 1-4(a). The UAVs with labels 011 and 02 are exchanging messages, but

because of the network topology, their traffic has to be relayed by every other node in

the network. As shown in Figure 1-4, node 011 can be repositioned to be a neighbor of

21

Page 22: Topology reconfiguration for systems of networked autonomous

0

01 02

011

M

M M

M

M M0

01 02

011

0

01 02

021

0

01 02

021

M

M

(b) Mobile robot 011 move close to mobile robot 02.(a) Mobile robot 011 always communicates with mobile robot 02 then

the same message will be reproduced at all intermediate node between

them.

(c) Mobile robot 011 is relabeled as 021. (d) The aggregate data flow is now reduced since mobile robot with

original prefix 011 is now just one hop away from mobile robot 02.

Figure 1-4.

Aggregate flow minimization by topology reconfiguration.

node 02. Upon achieving its new position in the network topology, node 011 is relabeled

as node 021, and the aggregate traffic is minimized – see Figure 1-4(c) and (d).

1.3 Organization of Dissertation

The rest of the dissertation is organized as follows. In Chapter 2, we propose

algorithms to solve the problem of how to transition the networked autonomous vehicle’s

system from one topology to another topology with a different network configuration

while maintaining the network connectivity. We then evaluate the performance in

terms of the amount of movement and time required to achieve the desired network

configuration. In Chapter 3, we develop graph-matching based algorithms to solve

the problem of how the nodes in the initial network topology should be mapped onto

22

Page 23: Topology reconfiguration for systems of networked autonomous

the nodes in the desired network topology to minimize the amount of movement of

the autonomous vehicles before we reconfigure the network. We also evaluate the

performance of our developed algorithms via simulation. In Chapter 4, we propose

algorithms to solve the problem of optimizing the network topology to minimize the

total traffic in a network required to support a given set of data flows under constraints

on the total amount of movement possible of the autonomous vehicles. We present

simulation results to evaluate the performance of our algorithms. In Chapter 5, we

develop optimization algorithms to solve the problem of optimizing the physical formation

of a system of networked autonomous vehicles to reduce aggregate data traffic under

constraints on the total amount of movement by the autonomous vehicles. We present

simulation results to demonstrate that our proposed techniques can significantly reduce

aggregate network traffic. Finally, the conclusions are drawn and the future direction of

this work are given in Chapter 6.

23

Page 24: Topology reconfiguration for systems of networked autonomous

CHAPTER 2PHYSICAL- AND NETWORK-TOPOLOGY CONTROL FOR SYSTEMS OF

NETWORKED AUTONOMOUS VEHICLES

In this chapter and Chapter 3, we consider the problem of how to transition the

autonomous vehicles from one topology to another topology with a different network

configuration while maintaining network connectivity. At the highest level, we partition

this problem into two sub-problems:

I. how to transition the group of autonomous vehicles from one network topology toanother while preserving network connectivity, and

II. how to move the group of autonomous vehicles to achieve the desired physicalformation once I. is completed.

Previous work on formation control addresses related problems. In [29] and [30],

a centralized navigation function based on potential fields is used to control a group

of autonomous vehicles to achieve a desired physical formation and orientation, with

obstacle and collision avoidance. However, in [29, 30] it is assumed that all autonomous

vehicles can communicate with each other at all times, and thus no effort is made to

ensure network connectivity while achieving the desired physical formation.

In this dissertation, we consider formation control in which network connectivity

must be preserved at all times. We use a protocol model to determine the mapping

between the physical formation and the network topology. In this model, a communications

link exists whenever two nodes are within a specified maximum communication

distance. Such a scenario is a reasonably accurate model for coded communication

over an exponential path-loss channel with additive white Gaussian noise at the

receiver. For this model, previous work in the controls community has solved the

problem of reconfiguring the physical formation of the network while maintaining network

connectivity when: [14, 28, 31–33, 38, 39]

• the mapping between nodes in the initial formation and those in the final formationis given, and

24

Page 25: Topology reconfiguration for systems of networked autonomous

• the initial network topology is a superset of the desired network topology.

If the nodes are identical, then in many applications, any node in the initial topology

may be assigned to take any position in the specified final formation. We call this the

anonymous reconfiguration problem, and use the term roles to refer to the nodes in the

final formation. To do anonymous reconfiguration efficiently, we need techniques to

(1) find a good mapping of the nodes in the initial topology to the roles in the finalformation, and

(2) reconfigure the initial network topology so that it is a superset of the desirednetwork topology.

Both of these are still open research problems.

Because the best choice of initial mapping will depend on how the nodes will be

repositioned, we focus on problem (2) first in this chapter and then propose techniques

to solve problem (1) in Chapter 3. In this chapter, we propose a solution to problem (2)

for the special case where the specified final network topology is constrained to be a

tree. By forming a tree from the initial network topology, prefix routing and labeling [34]

can then be used to “route” each autonomous vehicle through the initial network to

achieve the desired network tree topology, while the network connectivity of a system is

always preserved.

In this chapter, we develop algorithms to transform an arbitrary connected

network topology into a desired network topology by moving nodes in the network

and performing other tasks, such as relabeling nodes. Our algorithms are based on

the concepts of prefix labeling and prefix routing from [34–36]. We believe our work

is unique in the field of formation control in that it is only concerned with achieving a

desired topology (while maintaining network connectivity) and not in placing particular

autonomous vehicles into particular locations in the topology. We evaluate the

performance of our algorithm in terms of the amount of movement and time required

to achieve the desired topology.

25

Page 26: Topology reconfiguration for systems of networked autonomous

2.1 Anonymous Network Topology Reconfiguration Algorithms

We consider a system of networked autonomous vehicles that communicate over

wireless links. For the purposes of adapting the network topology, we can represent the

network as a simple graph G = (V, E), where the vertices V represent the autonomous

vehicles, and an edge e ∈ E between vertices u and v indicates that u and v can

communicate over a wireless link, In this chapter, we assume that all of the autonomous

vehicles are identical. Let Gi denote the initial network topology, and let Gtf denote

the desired final topology. The vertices in G represent specific vehicles in the initial

formation, and we refer to these as nodes. On the other hand, the vertices in Gtf

represent desired positions for the vehicles. Since the vehicles are assumed to be

identical, we consider anonymous topology reconfiguration, in which it is acceptable

for the desired positions of the vehicles to be filled by any of the vehicles in Gi . Thus,

we refer to the vertices in Gtf as roles, and the roles will be filled by the nodes from Gi .

We assume that Gtf is distributed to all of the nodes in Gi before our algorithms begin.

We consider the case that Gtf is a tree [37], and we label Gtf as a prefix tree, which is

commonly called a trie.

Our key observation is that we can reorganize the network topology by “routing”

autonomous vehicles through the existing topology as needed. We first select an initial

prefix tree, Gti , from the initial graph topology Gi that includes all the vertices in Gi . The

problem of how to select a good mapping between the nodes in the initial topology Gi

and the desired final formation Gtf is itself a challenging problem, and the solution of this

problem will depend on how the nodes in the topology will move to achieve the desired

formation once the initial mapping is selected. Thus, in this chapter we focus on the

problem of how to move the nodes to reorganize the formation given a specific mapping

from the nodes in the initial formation to the roles in the desired formation. As previously

mentioned, an approach to optimize this mapping is given in Chapter 3.

26

Page 27: Topology reconfiguration for systems of networked autonomous

01

0

011 021

0111

01111

02

0211

011111

012

02111

A Initial network topology.

01

0

011 021

0111

01111

02

0211

01112 0211202111

B Desired network topology.

Figure 2-1.

Network topology 1.

In this chapter, we assume that the mapping between the nodes in the initial

formation and the roles in the final formation is performed by first selecting a node in

Gi to map to the role of the root node in Gtf . The root node then assigns prefix labels to

each node in Gi in breadth-first fashion. Whenever prefix labeling is done, each node

only maintains an edge e ∈ Ei that corresponds to a prefix tree to form Gti . The prefix

label assigned to each node serves as its network address. Nodes that are chosen to

change position in the topology use maximum prefix matching logic [34–36] to route

themselves through the network. In this section, we use the initial trie topology and

desired trie topology shown in Figure 2-1, as examples to explain our basic approach.

All the nodes are assumed to know the desired network topology.

2.1.1 Basic Algorithm

We begin by identifying nodes in Gti that do not match the topology of Gtf . A node

that is missing children is called a requesting node. A node that does not match a role

in Gtf (i.e., whose label does not exist in the desired network topology) is called an extra

node. Each requesting node will send the root a message, M.Req, that includes a list of

the addresses of all its missing children. A copy of this message will also be stored at all

nodes who are located along the path to the root. At the same time, each extra node will

also send a message, M.Label, including its own label to the root.

27

Page 28: Topology reconfiguration for systems of networked autonomous

After the root obtains all the messages from these nodes, the root will then send a

message, M.Move, to each extra node, one-by-one, starting from an extra node who has

the longest label (i.e., the extra node that is deepest in the trie) to indicate to that node

that it should move up toward the root. This extra node will check for cached M.Req

messages in the nodes located along the way to the root. Whenever it first discovers

a cached message, it searches through this cache for the missing node destination

address. If there exists more than one missing node destination, an extra node will

decide to move to the closest missing node by comparing the prefix label of the missing

node destination with the node address of the node to which the extra node is currently

connected.

Whenever this extra node reaches the requesting node that is its parent in Gtf , the

requesting node will check the destination address of the extra node and then send a

message, M.RCM, to the root. This message will tell the root that it has received an

extra node, and the next extra node can now be moved. This message also tells all

the nodes along the path to the root to delete this missing node destination address

from their cache. At the same time, the extra node will move and be relabeled to take

the role of the formerly missing node in the desired topology. When the root obtains

M.RCM, it will initiate the process again by sending another M.Move to the next deepest

extra node. This process will continue until the desired network topology is achieved.

An example to illustrate this algorithm is shown in Figure 2-2. The gray-shaded nodes

represent extra nodes, and the nodes with dashed lines represent missing nodes.

There are two reasons for first moving an extra node with the longest prefix label.

First, we must maintain network connectivity throughout the topology transformation

process. If an extra node is a parent of other extra nodes, the other extra nodes will be

orphaned and thus may lose network connectivity if the parent node moves first. The

second reason is more subtle and is related to how our algorithm assigns extra nodes to

fill in missing vertices in Gtf . The problem is that if nodes that are closer to the root are

28

Page 29: Topology reconfiguration for systems of networked autonomous

01

0

011 021

0111

01111

02

0211

011111

012

0211101112 02112

M.Req

M.Req

M.Req

M.Label

M.Label

M.Label

M.Label

M.Label

M.Label

M.Req

M.Req

M.Req

A Requesting nodes and extra nodes send mes-sages to the root.

01

0

011 021

0111

01111

02

0211

011111

012

0211101112 02112

M.Move

M.Move

M.Move

M.Move

M.Move

B Root send message to 011111.

01

0

011 021

0111

01111

011111

02

0211

012

0211101112 02112

M.RCM

M.RCM

M.RCM

C 011111 reaches 0111 and 0111 then sendsmessage to the root.

01

0

011 021

0111

01111

02

0211

012

0211101112 02112

D 011111 is relabeled as 01112 and for-warded to the destination.

Figure 2-2.

Basic algorithm example.

moved first, then the overall amount of movement by nodes may increase. This is best

illustrated by an example. Consider again the Gti and Gtf shown in Figure 2-1, but now

assume that the root sends M.Move to extra node 012 first. Referring to Figure 2-2A,

node 012 will find a cached message from requesting node 0111 at node 01 and thus

will travel down the tree to become node 01112. Then node 011111 will have to travel all

the way up to the root before finding the M.Req from 0211, after which it will route down

the 02 branch to become node 02112. The total number of levels in the tree that the two

nodes must move is 9, compared to 5 when the extra node that is deepest in the tree is

moved first.

29

Page 30: Topology reconfiguration for systems of networked autonomous

2.1.2 Simultaneous Transition (ST) Algorithm

The time required to transition to the final topology can be reduced by allowing

some extra nodes to move simultaneously. We modify the basic algorithm as follows

to allow simultaneous movement. The requesting nodes and extra nodes send M.Req

and M.Label to the root as they do in the basic algorithm. M.Req will include both the

requesting node destination address and the missing child node address. The root

assigns each missing node a destination according to Algorithm 1, and informs each

such node of its destination address by sending it an M.Dest message, which includes

the requesting node address.

An extra node that is a leaf node can move whenever it receives a message

M.Dest, but other nodes have to wait for their children to move up the tree before the

parent can move. The extra node who reaches the destination first will be immediately

relabeled and forwarded by the requesting node to fulfill the desired network trie. If more

than one extra node reaches the destination requesting node at the same time, the

requesting node will check the hop number of each extra node by comparing the extra

node’s label with the shared prefix. Then the requesting node will assign those nodes

to its subtree to minimize the number of hops each node must travel. That is, nodes

that have already traveled the largest number of hops will be assigned as children of the

requesting node, whereas extra nodes that have traveled few hops will be assigned as

the leaf nodes of the deepest part of the subtree. An example that illustrates ST is given

in Figure 2-3.

2.2 Relabeling Algorithms

The performance of the basic and ST algorithms are highly dependent on the

way that the initial trie is created from the initial connected graph topology, including

both which edges in Gi are removed and how the prefix labels are assigned. Thus, the

performance can be improved if we modify these algorithms to consider other labelings

of the trie and other ways to create a trie by deleting edges from Gi . Both of these can

30

Page 31: Topology reconfiguration for systems of networked autonomous

01

0

011 021

0111

01111

02

0211

011111

012

0211101112 02112

M.Dest

M.Dest

M.Dest

M.Dest

M.Dest

M.Dest

M.Dest

A Root sends a message including destinationaddress to 012 and 011111.

01

0

011 021

0111

01111

02

0211

0211101112 02112

B Nodes 012 and 011111 arrive at the desireddestination and are relabeled as 02112 and01112 respectively to complete the desirednetwork topology.

Figure 2-3.

Simultaneous transition algorithm example.

Algorithm 1: Destination Assignment Algorithm

Input: Initial network tree, Gti = (Vti , Eti ); Desired final network tree, Gtf = (Vtf , Etf );AllExtraNodes = GetExtraNode(Gti ,G

tf );

AllMissingNodes = GetMissingNode(Gti ,Gtf );

foreach u ∈ AllExtraNodes doforeach v ∈ AllMissingNodes do

DistanceMatrix(u, v ) = GetHopDistance(u, v );/* Storing distance for all pairs of the extra nodes in Gti and the missing nodes in

Gtf in the matrix used for Hungarian method */

endendExtraNodeAndMissingNodePair = GetHungarianAssignment(DistanceMatrix);/* Using Hungarian method to obtain optimal pairs of the extra nodes in Gti and the missing

nodes in Gtf that minimizes the required total amount of movement */

foreach pair ∈ ExtraNodeAndMissingNodePair doExtraNode = GetExtraNode(pair);MissingNode = GetMissingNode(pair);RequestingNode = GetRequestingNode(MissingNode,Gti ,G

tf );

ExtraNode.DestinationAddress = GetPrefixLabel(RequestingNode);ExtraNode.MissingNodeAddress = GetPrefixLabel(MissingNode);

end

be considered ways of relabeling the nodes in Gti . In the discussion below, we use

the initial and final topologies in Figure 2-4 as examples to illustrate our relabeling

approaches.

2.2.1 Branch Relabeling (BR) Algorithm

In this section, we consider swapping the prefix labels of all the nodes in two or

more branches to reduce the total amount of node movement required to achieve the

31

Page 32: Topology reconfiguration for systems of networked autonomous

02

0

03

021

031

01

032

A Initial network topology.

02

0

01

021011 022012

B Desired network topology.

Figure 2-4.

Network topology 2.

desired network topology. Before branch relabeling (BR), Gi is transformed into a tree

Gti , which is prefix-labeled in the usual way. Then each leaf node will send a message

including its label to the root. The root will then have the knowledge of all the node prefix

labels in the network. Starting from the root, nodes can then consider swapping the

prefix label associated with two branches of descendants.

In this work, we only apply branch labeling at the root, as that is most likely to

have the largest impact on the amount of movement required to achieve the desired

topology. The root evaluates the amount of movement that is required to perform the

topology transformation for each possible branch labeling, and selects the minimum

such labeling. The total number of hops for a given branch labeling can be easily found

from the destination assigned to each extra node by Algorithm 1. After BR is done, the

ST algorithm is used to transform the network topology.

An example that illustrates the BR algorithm is shown in Figure 2-5. In this example,

the prefix tree topology with initial prefix labeling is shown in Figure 2-5A. With this

initial prefix labeling, there are three extra nodes: 03, 031, and 032, and there are three

missing nodes: 011, 012, and 022. These extra nodes have to be repositioned to take

place of the missing nodes, and this can be done by using simultaneous transition

32

Page 33: Topology reconfiguration for systems of networked autonomous

02

0

03

021

031

01

032

A Before performing BR (5 hops required).

02

0

01

021

011

03

012

B After performing BR (1 hops required).

Figure 2-5.

Branch Relabeling.

algorithm given in Section 2.1.2 to achieve the desired network topology shown in

Figure 2-4B. This requires a total of 5 hops to reposition all these extra nodes to achieve

the desired network topology shown in Figure 2-4B. On the other hand, if BR algorithm

is used in this scenario, it will swap the prefix labeling of the nodes in the left-most

branch with those in the right-most branch of the initial prefix tree topology shown

in Figure 2-5A. This results in the prefix tree shown in Figure 2-5B. With this prefix

labeling, there is only one extra node: 03, and one missing node: 022. Hence, only one

hop is required to reposition the extra node to achieve the desired network topology

shown in Figure 2-4B.

2.2.2 Neighbor Relabeling (NR) Algorithm

Reducing Gi to a tree according to the breadth-first approach described in 2.1

eliminates some connections that could reduce the number of nodes that have to be

moved. In this section, we propose a technique to reduce the amount of node movement

by taking advantage of those additional links in Gi . We present a neighbor relabeling

(NR) algorithm to achieve this goal. First an initial labeling is done, starting from the

root. All the nodes first check if they are an extra node. All extra nodes will reset their

label to null. Then all nodes that are missing children in Gtf will check if any of the extra

33

Page 34: Topology reconfiguration for systems of networked autonomous

nodes are their neighbors in Gi . If so, the node that is missing a child will relabel the

neighboring extra node by sending it a message, M.Relabel. The node that is relabeled

will then repeat the same process. This process continues until no more relabeling is

possible or until a timer expires. All remaining extra nodes will then be labeled by their

neighbors to form Gti . ST will then be applied immediately after NR is done to achieve

the desired network trie.

An example of NR is illustrated in Figure 2-6. In this example, we start with the

initial network topology with prefix labeling assigned by the root shown in Figure 2-4A.

Three extra nodes are initially identified as extra noes: 03, 031, and 032; these nodes

set their prefix label to null. The requesting nodes are 01 and 02, who are missing

nodes 011, 012, and 022 respectively. After the extra nodes set their prefix labels to

null, the requesting nodes check if they have neighbors that are extra nodes. The

requesting node 02 finds two extra nodes connecting to it, and it sends a message

M.Relabel to relabel the prefix label of one of the two extra nodes to relabel it as its

missing node 022. However, there is no extra node as neighbor for the requesting node

01. Finally, the remaining extra nodes are relabeled by their neighbor nodes, and each

node disables some of their links to turn the initial network topology into a prefix tree.

Finally, the simultaneous transition algorithm is used to reposition the remaining extra

nodes to achieve the desired network topology.

For dense networks (in which the number of edges is high), NR may offer

advantages over BR because NR can take advantage of the many network connections.

To offer the greatest benefit across initial network topologies, NR and BR can be

combined, as follows. First, network connections among all nodes are utilized by NR.

After this is done, BR algorithm will be performed. The performances of these algorithms

are illustrated in the next section.

34

Page 35: Topology reconfiguration for systems of networked autonomous

02

0

021

01

M.Relabel

A Relabeling an extra node to be 022 by node02.

02

0

022

021

01

M.RelabelM.Relabel

B The remaining extra nodes are relabeled.

02

0

022

021

0221

01

023

C Trie network topology.

Figure 2-6.

Neighbor Relabeling.

2.3 Simulation Results

In this section, we evaluate the performance of the proposed network topology

control algorithms. We consider a network of seven nodes, where the initial topology is

generated at random with different density of network connections, which we quantify in

terms of the total number of network links. We consider transforming the network into

the four different final tree topologies of varying depth shown in Figure 2-7.

We evaluate the performance of the relabeling algorithms by considering the

average total amount of movement (number of hops) and the total time required to

35

Page 36: Topology reconfiguration for systems of networked autonomous

05

0

02 0401 0603

A Topology A.

0

031011 021

01 0302

B Topology B.

0

01 02

021011

02110111

C Topology C.

0

01

0111

1

0111

11

011

0111

111

0111

D Topology D.

Figure 2-7.

Desired topology.

achieve the desired formation. In this chapter, we assume that the time required for a

single hop is the same for every node in the network. We compare the performances of

the different algorithms for different amounts of connectivity in the initial graph, which is

measured in terms of the total number of communication links (|Ei |, the number of edges

in Gi ). For each value of |Ei |, 100 random topologies Gi were instantiated. For each Gi ,

the root of Gti is randomly selected and the prefix labels are assigned accordingly.

The results in Figure 2-8 show the total amount of required movement as a function

of the number of links in the network. It can be seen from Figure 2-8 that the relabeling

36

Page 37: Topology reconfiguration for systems of networked autonomous

6 8 10 12 14 16 18 20 22 24 260

2

4

6

8

10

12

14

16

18

Total link number

AV

G t

ota

l m

ove

me

nt

(nu

mb

er

of

ho

ps)

A: (depth = 1)

B: (depth = 2)

C: (depth = 3)

D: (depth = 6)

No relabel

Branch

Neighbor

N+B

Figure 2-8.

Average total hop over 100 random initial topologies for each link number.

algorithms can reduce the amount of movement required, except for the case of the

desired network shown in Figure 2-7A. Since the network of Figure 2-7A has depth

of one, the only missing nodes will be the root’s child nodes, and the root labels all

of its neighbors as child nodes when forming Gti . Thus, there are no opportunities for

relabeling. For the other final network topologies, we observe that the BR algorithm

outperforms the NR algorithm when the network is very sparse, and vice versa. This

is because when the network is sparse, there will be fewer redundant links that the NR

algorithm can utilize.

It can also be seen that the density of the network affects the amount of movement

required to achieve the desired topology. For instance, in the case of no relabeling,

when the network is sparse, the desired topology in Figure 2-7A requires more node

movement than the topology shown in Figure 2-7B and Figure 2-7C because the root

37

Page 38: Topology reconfiguration for systems of networked autonomous

6 8 10 12 14 16 18 20 22 24 260

1

2

3

4

5

6

7

Total link number

AV

G t

ota

l tim

e

A: (depth = 1)

B: (depth = 2)

C: (depth = 3)

D: (depth = 6)

No relabel

Branch

Neighbor

N+B

Figure 2-9.

Average total time over 100 random initial topologies for each link number.

may have fewer child nodes and there will be more extra nodes that have to come up

to the root to fulfill the place of the root’s missing child nodes. When the network is

very dense, the root will be able to assign all the nodes in the network as its children

to form the initial network. Hence, the initial topology will already be in the form of the

desired topology given in Figure 2-7A. Thus for a dense network, topology A requires no

node movement. As expected, the combined BR and NR algorithms provides the best

performance.

Next, we consider the average total time required to form the desired topologies

given in Figure 2-7. We use the ST algorithm, for which the amount of time required to

transform the topology is not always monotonic with the amount of movement required.

For example, if the Gi is sparse, the initial network is likely to be similar to a “narrow”

tree that is deep with few child nodes at each level. If topology A is desired, there will

38

Page 39: Topology reconfiguration for systems of networked autonomous

1 2 3 4 5 6 70

0.5

1

1.5

2

2.5

Number of roots considered

AV

G o

f m

in t

ota

l m

ove

me

nt

(nu

mb

er

of

ho

ps)

A: (depth = 1)

B: (depth = 2)

C: (depth = 3)

D: (depth = 6)

Figure 2-10.

Average of the minimum total hop among the number of root considerationover 100 random initial topologies.

be many extra nodes, and the total amount of movement will be more than if the desired

topology had more depth, such as in topologies B or C. However, for topology A, since

the missing nodes are the root’s child nodes, which are only one level below the root,

the furthest any extra node has to move is up to the root. Thus, as seen in Figure 2-9,

the average time to transform the topology is smaller for topology A than for the other

topologies.

Finally, we consider the effect of the choice of root node (which node in Gi that

is chosen to be the root of Gti ) on the performance of the topology reconfiguration

algorithm. For each topology considered, we consider the performance if we select

multiple roots at random and choose the root that results in the minimum amount of

movement, where a combination of the BR and NR algorithms are used.

39

Page 40: Topology reconfiguration for systems of networked autonomous

The average number of hops that nodes must move for 100 random initial

topologies is shown in Figure 2-10. As the number of roots considered increases, the

required amount of movement significantly decreases for all final topologies. Thus, the

choice of root significantly affects the amount of movement to reconfigure the network,

which motivates our study of this issue in Chapter 3.

2.4 Summary

In this chapter, we developed a new approach to reconfigure the network topology

of a system of networked autonomous vehicles. We develop new algorithms to “route”

nodes through the network by using prefix labeling and routing. We developed several

approaches to enhance the performance of the topology reconfiguration algorithm.

The results show that the simultaneous transition algorithm with the addition of

both relabeling algorithms, branch and neighbor relabeling, achieves a significant

improvement in terms of total movement and time required to form the desired network

tree. Finally, appropriate root selection from a set of nodes is possible to achieve better

performance in terms of the total number of hops required to achieve the desired

network trie configuration.

40

Page 41: Topology reconfiguration for systems of networked autonomous

41

Page 42: Topology reconfiguration for systems of networked autonomous

CHAPTER 3GRAPH MATCHING-BASED TOPOLOGY RECONFIGURATION ALGORITHM FOR

SYSTEMS OF NETWORKED AUTONOMOUS VEHICLES

As discussed in Chapter 2, to do anonymous reconfiguration efficiently, we need

techniques to

(1) find a good mapping of the nodes in the initial topology to the roles in the finalformation, and

(2) reconfigure the initial network topology so that it is a superset of the desirednetwork topology.

In Chapter 2, we propose a solution to problem (2) for the special case where the

specified final network topology is constrained to be a tree. By forming a tree from the

initial network topology, prefix routing and labeling [34] can then be used to “route” each

autonomous vehicle through the initial network to achieve the desired network tree

topology, while the network connectivity of a system is always preserved.

In this chapter, we propose techniques to solve problem (1). We wish to choose a

mapping between the nodes in the initial network topology and the roles in the specified

final network topology, such that the total amount of movement required to reposition the

nodes in the initial network to achieve the desired network topology is minimized. In the

case that the graphs are isomorphic, this is a graph-matching problem, which is known

to be NP-hard, and the optimal solution is provided by Ullmann’s algorithm [40].

When the graphs are not isomorphic, then we can find an approximate solution by

solving a weighted graph-matching problem, for which suboptimal solutions are possible

using algorithms that have reasonable computational complexity. In particular, we

apply an approach based on spectral graph theory to this problem. We then apply the

relabeling algorithms proposed in Chapter 2 to further reduce the total amount of node’s

movement required to reconfigure the initial network tree to achieve the desired network

tree topology. We evaluate the performance of the proposed algorithms in terms of

42

Page 43: Topology reconfiguration for systems of networked autonomous

complexity and the required amount of movement to achieve the desired final topology,

which is evaluated through simulation.

3.1 Initial Tree Selection (ITS) Algorithm

We model the network topology of a system of autonomous vehicles by an ordinary

undirected graph G = (V, E), where V is a set of N = |V | vertices, which represent the

vehicles, and E ⊂ V2 = V × V is a set of edges that represent the communications links

between pairs of vehicles. The initial network topology of a system is represented by

Gi = (Vi , Ei). The desired network topology is represented by Gtf = (V tf , E tf ). We consider

the case where Gtf is a tree. We wish to choose a mapping Φ : V ti → V tf from the nodes

in Gti to the roles (vertices) in Gtf that minimizes the amount of movement (in terms of

number of edges that a nodes must traverse) that will be required to move the nodes

into the desired final topology. We utilize the approach in Chapter 2 to reconfigure the

topology around a tree that is a subgraph of the initial graph while maintaining network

connectivity. Let TS denote the set of trees that are subgraphs of the initial graph. Then

the best mapping between the nodes in the initial graph and the roles in the final graph

is given by

Φ = arg minφ:Vti →V

tf ,

G∈TS(Gi )

∑u∈Vi

dhopG→Gtf(u,φ(u)), (3–1)

where dhopG→Gtf (u, ) is a distance function which give the required amount of movement, in

terms of number of edges that must be traversed, to reposition node u from its position

in G to role v in Gtf .

The selection of Φ is similar to a graph matching problem, which is known to be

NP-hard [41, 42]. If there is a subtree Gti ⊂ Gi that is isomorphic to Gtf ; i.e., there exist

one-to-one correspondence ΦVti →Vtf such that (u, v) ∈ E ti ⇐⇒ (ΦVti →Vtf (u), ΦVti →Vtf (v)) ∈

E tf , then no movement will be required. In this case, Ullmann’s algorithm [40] can

be directly used to obtain Φ. However, if there does not exist a subtree of Gi that is

isomorphic to Gtf , Ullmann’s algorithm will absolutely fail to give Gti . In addition, the

43

Page 44: Topology reconfiguration for systems of networked autonomous

complexity of Ullmann’s algorithm is O(NN). This motivates us to consider techniques

that can provide approximate solutions to (3–1) at lower complexity and that can provide

solutions when there is no subtree of Gi that is isomorphic to Gf . In these cases, the

distance computations in (3–1) depend on the choice of tree in T(Gi), and (3–1) does

not directly map onto a graph matching problem. Thus we propose a heuristic solution to

choosing Gti that can be solved as an approximate weighted graph-matching problem.

For the approximate weighted graph-matching approach, we propose to choose Φ

that minimizes a cost function based on the differences between the desired final graph

topology and the initial graph topology,

J(Φ) =∑

(u,v)∈V2i

{wi(u, v)− w tf [Φ (u) , Φ (v)]

}2. (3–2)

Here wi() and w tf () are weighting functions that take as input an edge (specified by

the vertices it connects) and that specify the importance of edges in the initial and final

graphs, respectively. This is the same form as in [43], in which a fast algorithm (that has

complexity O(N3)) is developed. The key is to reformulate (3–2) by replacing Φ with a

permutation matrix P, yielding [43]

J(P) = ‖PAiPT − Af‖, (3–3)

where Ai and Af are weighted adjacency matrices for Gi and Gtf . Note that if Φ

corresponds to a one-to-one isomorphism between Gi and Gtf , then J(P) = 0 and

PAiPT = Af . However, finding the optimal solution to (3–2) for other cases requires

exponential complexity.

By relaxing the domain of P from the set of permutation matrices to the set of

orthogonal matrices, (3–3) can be solved approximately using the graph spectra.

Let the eigendecompositions of Ai and Af be Ai = UiΛiUTi and Af = UfΛfU

Tf .

Furthermore, let Ui and Uf be matrices for which each element is the absolute value

of the corresponding element in Ui and Uf , respectively. Letting Π denote the set of

44

Page 45: Topology reconfiguration for systems of networked autonomous

permutation matrices, the approximate solution to (3–3) is given by [43]

arg maxP∈Π

tr(

PTUfUT

i

), (3–4)

which can be solved by the Hungarian method in O(N3) time.

There are several problems that must be addressed in order to apply Umeyama’s

method [43] to find a good solution for (3–1). The choice of weight functions in (3–2)

(which determine the weighted adjacency matrices in (3–3)) greatly affect the solution

for Φ. In addition, the Φ may result in a graph Gi that does not preserve all of the edges

in Gtf , and depending on which edges in Gtf are missing, different amounts of movement

will be required in (3–1).

Consider the example network topology illustrated in Figure 3-2, based on Gi and

Gtf shown in Figure 3-1. The number in parenthesis on each node in Gi in Figure 3-2

represents the role in Gtf to which that node is mapped. We observe that in order to find

a mapping Φ that minimizes the amount of node movement required in (3–1), unequal

priorities should be assigned to the edges in Gtf . For instance, an edge in Gtf that is

closer to the root node and has many descendants should have a greater priority to be

in Gi than edges that are further down the tree and have fewer descendants. We achieve

this through the weighting functions wi and w tf .

We first define the weighting function w tf of the edges in Gtf , except for the edges

attached to leaf nodes in Gtf , as

w tf (u, v) = |cv | · [maxdepth(cv)− (depth(v)− 1)], (3–5)

where

• u, v ∈ V tf denote a parent node and child node, respectively, in V tf ,

• cv denotes a set of the children of node v in Gtf ,

• maxdepth(cv) denotes a function of the set cv of the descendants of node v thatprovides the maximum depth of the nodes in cv , and

45

Page 46: Topology reconfiguration for systems of networked autonomous

• depth(v) denote a function of the node v ∈ V tf that provides the depth of nodev ∈ V tf .

Edges attached to leaf nodes in Gtf will be assigned a weight of 1.

After the edges in Gtf are all completely assigned the weight, the weight of edges in

Gi is assigned according to the weighting function

wi(u, v) = max(u,v)∈Etf

w tf (u, v), (3–6)

Hence, the weights of all edges in Gi are assigned the maximum weight of the edges in

Gtf .

Next, starting from the permutation Φ given from (3–4), we build the initial tree

Gti ⊂ Gi . The process starts from the node in vi ∈ Vi that maps onto the root node in

Gtf . Gti is grown in breadth-first fashion and works in parallel on Gti and Gtf , where we

try to grow edges for Gti in Gi wherever possible. The root node vf first checks if it has

children v cf ∈ V tf in Gtf . If it does, vi will also check if it has neighbor nodes v ni ∈ Vi in Gi .

If it does, vi will first select a neighbor node v ni with ΦVi→Vtf (vni ) = v cf to form the edge

(vi , vni ) ∈ Ei for Gti which corresponds to the edge (vf , v

cf ) ∈ E tf . However, a v ni that

satisfies ΦVi→Vtf (vni ) = v cf may not exist, in which case one of the unassigned neighbors

v ni will be assigned to form the edge (vi , vni ) ∈ Ei for Gti which corresponds to the edge

(vf , vcf ) ∈ E tf based on

min(v cf ,vni )

dGtf (vcf , ΦVi→Vtf (v

ni )). (3–7)

Here dGtf (u, v) is a function of the distance in terms of hop between node u ∈ V tf and

v ∈ V tf in Gtf . The distance between two nodes in Gtf could be found by applying the

breadth-first search algorithm [44].

The algorithm will proceed to map the neighbors v ni to all of the children of the root,

v cf in the same way, and then will proceed to mapping the nodes at consecutively deeper

levels of the tree. If it is no longer possible to keep forming edges for Gti in Gi and there

still exists a remaining node v ri ∈ Vi in Gi that is disconnected from the existing Gti , v ri

46

Page 47: Topology reconfiguration for systems of networked autonomous

2

1

5

4

3

6

7

A Initial network topology.

2

1

4

3

5 6 7

B Desired network topology.

Figure 3-1.

Network topology.

will be connected to one of the nodes v ti ∈ V ti in the existing Gti by forming the edge

(v ri , v ti ) ∈ Ei in Gi one edge at a time. The edge (v ri , v ti ) ∈ Ei will be form for existing Gti

one edge at a time by connecting v ri with v ti in existing Gti based on

min(v ri ,v ti )∈Ei

dGtf (ΦVi→Vtf (vri ), ΦVi→Vtf (v

ti )). (3–8)

The pseudocode of the Initial Tree Selection (ITS) algorithm can logically be

partitioned into two parts, which are illustrated in Algorithm 1 and 2, where part I is

about initially forming Gti based on (3–7), and part II is about forming the completed Gti

after obtaining Gti from part I by connecting v ri to an existing Gti based on (3–8).

An example of how Gti is formed is illustrated in Figure 3-3 based on Gi and Gtf

shown in Figure 3-1, and also the node’s mapping between Vi and V tf , shown in

Figure 3-2. In this example, v ji ∈ Vi and v jf ∈ V tf the denote j th nodes in Gi and Gtf ,

respectively. The algorithm starts at the root node v 1f ∈ V tf and the corresponding role to

which that node is mapped, v 3i ∈ Vi .

In this example, node v 1f has two children, v 2

f and v 3f . Node v 3

i has three unmarked

neighbor nodes v 2i , v 5

i , and v 6i , whose mapping in Gtf are v 2

f , v 4f , and v 5

f respectively

as shown in Figure 3-3A. These nodes should be used to form edges in Gti that will

47

Page 48: Topology reconfiguration for systems of networked autonomous

Algorithm 1: Initial Tree Selection Algorithm (Part I)

Input: Initial network, Gi = (Vi , Ei ); Desired final network tree, Gtf = (Vtf , Etf ); Node’s mapping obtained fromthe inexact graph matching algorithm, Φ

Output: Initial network tree, Gti = (Vti , Eti );Vti = ∅;Eti = ∅;DesiredTreeRootNode = GetRootNode(Gtf );InitialGraphRootNode = Φ−1(DesiredTreeRootNode);DesiredTreeQ = DesiredTreeRootNode;InitialGraphQ = InitialGraphRootNode;MarkNode(DesiredTreeRootNode);MarkNode(InitialGraphRootNode);Vti = InitialGraphRootNode;while (InitialGraphQ 6= ∅)&&(DesiredTreeQ 6= ∅) do

DesiredTreeQTemp = ∅; InitialGraphQTemp = ∅;QueueLength = GetQueueLength(DesiredTreeQ);for i = 1 : QueueLength do

DesiredTreeChildNodes = GetUnmarkedChildNodes(DesiredTreeQ[i],Gtf );InitialGraphNeighborNodes = GetUnmarkedNeighborNodes(InitialGraphQ[i],Gi );while (DesiredTreeChildNodes 6= ∅)&&(InitialGraphNeighborNodes 6= ∅) do

MinimumDistance =∞;foreach u ∈ DesiredTreeChildNodes do

foreach v ∈ InitialGraphNeighborNodes doDistance = GetDistance(u, Φ[v ],Gtf );if Distance < MinimumDistance then

MinimumDistance = Distance;BestPair = [u, v ];

endend

end[u, v ] = BestPair;foreach vi ∈ Vi do

if Φ[vi ] ≡ u thenΦ[vi ] = Φ[v ];

endendΦ[v ] = u;Union(Vti , v ); Union(Eti , (InitialGraphQ[i ], v));MarkNode(u); MarkNode(v );EnqueueNode(DesiredTreeQTemp,u); EnqueueNode(InitialGraphQTemp,v );DesiredTreeChildNodes = (DesiredTreeChildNodes\u);InitialGraphNeighborNodes = (InitialGraphNeighborNodes\v );

endendDesiredTreeQ = DesiredTreeQTemp;InitialGraphQ = InitialGraphQTemp;

end

correspond to the edges (v 1f , v 2

f ) and (v 1f , v 3

f ) in Gtf . Using (3–7), node v 2i will be used to

form an edge (v 3i , v 2

i ) in Gti , corresponding to (v 1f , v 2

f ) in Gtf , since ΦVi→Vtf (v2i ) = v 2

f and

dGtf (ΦVi→Vtf (v2i ), v 2

f ) is equal to zero. This is shown in Figure 3-3B.

Continuing to build out the tree from the root, node v 6i is used to form the edge

(v 3i , v 6

i ) in Gti , corresponding to the edge (v 1f , v 3

f ) in Gtf , since dGtf (ΦVi→Vtf (v6i ), v 3

f ) = 3

is the next minimum of (3–7). The edge (v 3i , v 6

i ) ∈ Ei now corresponds to the edge

48

Page 49: Topology reconfiguration for systems of networked autonomous

Algorithm 1: Initial Tree Selection Algorithm (Part II)

Input: Initial network, Gi = (Vi , Ei ); Desired final network tree, Gtf = (Vtf , Etf ); Initial network tree (obtained frompart I), Gti ;

Output: Initial network tree, Gti = (Vti , Eti );UnMarkedNode = GetUnMarkedNode(Vi );while UnMarkedNode 6= ∅ do

MinimumDistance =∞;foreach u ∈ UnMarkedNode do

MarkedNeighborNodes = GetMarkedNeighborNodes(u,Gi );foreach v ∈ MarkedNeighborNodes do

Distance = GetDistance(Φ(u), Φ(v),Gtf );if Distance < MinimumDistance then

MinimumDistance = Distance;BestPair = [u, v ];

endend

end[u, v ] = BestPair;Union(Vti , u); Union(Eti , (u, v));MarkNode(u);UnMarkedNode = (UnMarkedNode\u);

end

2 (2)

1 (7)

5 (4)

4 (3)

3 (1)

6 (5)

7 (6)

A Gi with the node’s mapping betweennodes in Gi and Gtf .

2 (2)

1 (7)

5 (4)

4 (3)

3 (1)

6 (5)

7 (6)

B Only some edges of Gtf are preserved inGi .

Figure 3-2.

Initial network topology. Numbers outside (inside) parentheses represent thenode’s label in the initial topology (role to which that node is assigned in thefinal formation).

(v 1f , v 3

f ) ∈ E tf in Gtf . However, nodes v 6i and v 4

i were originally mapped to nodes v 5f and

v 3f , respectively. Hence, we swap the mapping of nodes v 6

i and v 4i : ΦVi→Vtf (v

6i ) = v 3

f and

ΦVi→Vtf (v4i ) = v 5

f , as illustrated in Figure 3-3C and Figure 3-3D.

Since there are no more edges under node v 1f in Gtf to form the corresponding edge

for the initial network tree Gti ⊂ Gi , the node v 2f , which is located at the next depth of the

49

Page 50: Topology reconfiguration for systems of networked autonomous

2 (2)

1 (7)

5 (4)

4 (3)

3 (1)

6 (5)

7 (6)

A Gi with node’s mappingbetween nodes in Gi andGtf .

2 (2)

1 (7)

5 (4)

4 (3)

3 (1)

6 (5)

7 (6)

B The edge betweennodes 3 and 2 in Gi isformed for Gti corre-sponding to the edgebetween node 1 and 2 inGtf .

2 (2)

1 (7)

5 (4)

4 (3)

3 (1)

6 (5)

7 (6)

C The edge betweennodes 3 and 6 in Gi isformed for Gti .

2 (2)

1 (7)

5 (4)

4 (5)

3 (1)

6 (3)

7 (6)

D The mappings of thenodes, 6 and 4, in Giare swapped so that theedge between nodes 3and 6 in Gi is now cor-responding to the edgebetween the nodes, 1and 3, in Gtf .

2 (2)

1 (7)

5 (4)

4 (5)

3 (1)

6 (3)

7 (6)

E The edge betweenthe nodes, 2 and 5, inGi is formed for Gti thatcorresponds to the edgebetween the nodes, 2and 4, in Gtf .

2 (2)

1 (7)

5 (4)

4 (5)

3 (1)

6 (3)

7 (6)

F The edge between thenodes, 2 and 1, in Gi isformed for Gti .

2 (2)

1 (5)

5 (4)

4 (7)

3 (1)

6 (3)

7 (6)

G The mappings of thenodes, 1 and node 4, inGi , are swapped so thatthe edge between thenodes, 2 and 1, in Gi isnow corresponding to theedge between the nodes,2 and 5, in Gtf .

2 (2)

1 (5)

5 (4)

4 (7)

3 (1)

6 (3)

7 (6)

H The edge betweenthe nodes, 6 and 7, inGi is formed for Gti thatcorresponds to the edgebetween the nodes, 3and 6, in Gtf .

2 (2)

1 (5)

5 (4)

4 (7)

3 (1)

6 (3)

7 (6)

I Building the corre-sponding edge of Gtf forGti is no longer possible.The edge between thenodes, 4 and 7, in Gi isformed for Gti .

2 (2)

1 (5)

5 (4)

4 (7)

3 (1)

6 (3)

7 (6)

J Initial network tree Gtiis achieved.

Figure 3-3.

Initial tree selection algorithm example.

50

Page 51: Topology reconfiguration for systems of networked autonomous

desired final network tree Gtf , is considered and it is mapped to the node v 2i ∈ Vi in the

initial network Gi . The node v 2f has two children, v 4

f and v 5f , in Gtf , and the mapped node

v 2i has two unmarked neighbor nodes, v 1

i and v 5i , in Gi whose mapping are the nodes,

v 7f and v 4

f , in Gtf respectively. Proceeding as before, we consider forming edges in Gti

that correspond to (v 2f , v 4

f ) and (v 2f , v 5

f ) in Gtf . Based on (3–7), the nodes v 5i and v 1

i are

used to form the edges (v 2i , v 5

i ) and (v 2i , v 1

i ), which correspond to (v 2f , v 4

f ) and (v 2f , v 5

f ),

respectively.

The algorithm then performs the necessary swaps in the mapping and proceeds to

the remaining levels, as illustrated in Figure 3-3G and Figure 3-3H. However, after the

creation of the edge (v 6i , v 7

i ) in Gti , which corresponds to (v 3f , v 6

f ) in Gtf , it is no longer

possible to form any corresponding edge e ∈ E tf of the desired final network tree Gtf for

the initial network tree Gti ⊂ Gi . However, there is still a remaining node v 4i ∈ Vi in the

initial network Gi that is disconnected from the initial network tree Gti . To complete Gti the

node v 4i considers forming the edge between itself to one of the nodes in the existing

Gti . Using (3–8), the best edge will be formed from v 4i to v 7

i , as illustrated in Figure 3-3I.

Finally, the initial network tree Gti is achieved. The initial network tree Gti ⊂ Gi and its

mapping are shown in Figure 3-3J.

Complexity of ITS Algorithm. The worst-case complexity occurs when Gtf has

depth one, which means that all nodes except the root node in Gtf are the children of

the root node, and also when all the nodes in Gi except the mapped root node are

connected to the mapped root node. This algorithm will try to match one of edges in

Gtf to one of the edges attached to the mapped root node in Gi one edge at a time until

all edges in both Gi and Gtf are uniquely matched. Each time the algorithm compares

all the edges in Gtf to all the edges attached to the mapped root node in Gi and decides

to match one pair of edges from both Gi and Gtf based on (3–7). Since the number of

nodes connecting to root node in Gtf and the number of nodes connecting to the mapped

root node in Gi are N − 1, where N is the total number nodes in Gi , then the number

51

Page 52: Topology reconfiguration for systems of networked autonomous

of edges to be considered for matching in each topology is equal to N − 1. Hence, the

worst case running time T (N) for this algorithm is given by

T (N) =

N−1∑i=1

(N − i)2 <N−1∑i=1

(N)2 < N3, (3–9)

Hence, the complexity of ITS algorithm is given by O(N3).

3.2 Simulation Results

In this section, we first evaluate the performance of the ITS algorithm proposed in

Section 3.1 by comparing the total amount of movement required, in terms of number

of edges (hops) that nodes must travel, to reconfigure the network topology starting

from Gti obtained from ITS with other methods to obtain Gti . From each initial topology,

the topology reconfiguration algorithm proposed in Chapter 2 is used to reconfigure

Gti , where the Hungarian algorithm [45] is used to provide the optimal assignment in

matching the repositioning node in Gti with the destination in Gtf to minimize the total

amount of movement required to transform the selected Gti into Gtf .

We considered randomly generated networks with sizes ranging from 3 to 15

nodes. For each network size, we randomly generated 200 pairs of Gi and Gtf . For each

pair of Gi and Gtf , we generate Gti ⊂ Gi according to the ITS algorithm or one of the

comparison methods. Then we apply the network topology reconfiguration algorithm

based on Hungarian method to reconfigure Gti to achieve Gtf . We average the total

amount of nodes movement obtained across the 200 pairs of Gi and Gtf , and the results

are illustrated in Figure 3-4.

We first compare the performance of ITS algorithm with the method of choosing

Gti ⊂ Gi proposed in Chapter 2 by randomly choosing any node in Gi to be a root

node and growing Gti in breadth-first manner starting from that root node. We use the

abbreviation BFS to refer to this method in the figures. We observed that ITS algorithm

significantly outperforms BFS method, especially when the network size is large. Since

the BFS method obtains Gti based on random selection, most of the time the Gti obtained

52

Page 53: Topology reconfiguration for systems of networked autonomous

3 4 5 6 7 8 9 10 11 12 13 14 150

5

10

15

20

25

30

35

40

45

50

Number of nodes

AV

G tota

l m

ovem

ent (n

um

ber

of hops)

BFS

BFS + NR + BR

ITS

ITS + NR + BR

Ullmann + ITS

Ullmann + ITS + NR + BR

Figure 3-4.

Average required total number of hops required to achieve desired networktopology for different methods of selecting the initial network tree Gti from theinitial network Gi , with relabeling algorithms.

from this method is dissimilar to Gtf and thus usually requires that more nodes in Gti be

repositioned to achieve Gtf . Thus, the total amount of node movement may be high.

We also considered combining Ullmann’s algorithm with the ITS algorithm by

first applying Ullmann algorithm to obtain Gti from Gi that is isomorphic to Gtf if there

exists such an isomorphism. If there is no subgraph that is isomorphic to Gtf in Gi , we

then apply the ITS algorithm to obtain Gti that is close to Gtf . The results of combining

Ullmann’s algorithm with the ITS algorithms are also shown in Figure 3-4. Note that

for this approach, we only obtained the results for the networks 10 or fewer nodes

because of the high computational complexity of Ulmann’s algorithm. We observed that

the combined algorithms can further reduce the total amount of movement required to

reposition the nodes in Gti to achieve Gtf in comparison to using ITS alone. However, the

53

Page 54: Topology reconfiguration for systems of networked autonomous

relatively small additional advantage of the combined Ulmann’s and ITS algorithm may

not justify the additional O(NN) complexity over using the polynomial complexity ITS

algorithm.

Also shown in Figure 3-4 are results for combining the various algorithms previously

discussed with the the relabeling algorithms proposed in Chapter 2. In Chapter 2, we

proposed two relabeling algorithms, neighbor relabeling (NR) and branch relabeling

(BR) algorithms to relabel the prefix labeling of Gti to make its prefix labeling better

match that of Gtf (in terms of reducing the number of nodes that need to be moved to

transform Gti into Gtf ). However, BR algorithm proposed in Chapter 2 uses an exhaustive

search to obtain the optimal relabeling pattern that minimizes the total amount of node’s

movement required to transform Gti into Gtf , which has very high complexity. Thus, we

instead apply the simulated annealing algorithm [46], which is metaheuristic searching

algorithm that can be used to obtain an approximate solution that is close to the optimal

solution. The following parameters are used for BR algorithm based on simulated

annealing algorithm: initial temperature Ti = 1, final temperature Tf = 0.01, cooling rate

α = 0.97, Boltzmann constant Kc = 0.1, and neighborhood radius ε = 1. We apply both

relabeling algorithms, NR and BR algorithms, to Gti obtained from 3 different methods,

including BFS, ITS, and combining Ullmann with ITS, and the results are presented in

Figure 3-4. We observed that relabeling algorithms can further improve the total amount

of node’s movement to reconfigure Gti obtained from these three different methods.

To better illustrate the relative complexity of the algorithms, the results in Figure 3-5

show the average running time in seconds for each algorithm. Note that the y -axis is in

log scale because of the huge range in results, which is attributable to the exponential

complexity of Ullmmann’s algorithm. For all of the algorithms, the average running time

increases as the network size increases. The average running time of BFS method is

less than that of the ITS method, but the average running time of combining BFS with

NR and BR is comparable to ITS with NR and BR because the NR and BR algorithms

54

Page 55: Topology reconfiguration for systems of networked autonomous

4 6 8 10 12 14

10−3

10−2

10−1

100

101

Number of nodes

AV

G tota

l ru

nnin

g tim

e (

seconds)

BFS

BFS + NR + BR

Spectral

Spectral + NR + BR

Ullmann + Spectral

Ullmann + Spectral + NR + BR

Figure 3-5.

Average running time required to achieve desired network topology fordifferent methods of selecting the initial network tree Gti from the initialnetwork Gi , with relabeling algorithms.

dominate the complexity. The average running time of combining Ullmann’s algorithm

with ITS is low when the network size is small because whenever the Ullmann algorithm

can find the subgraph in the initial tree Gti that is isomorphic to the desired tree Gtf , it

is not necessary to run the ITS algorithm (including the Hungarian algorithm to match

extra nodes with missing nodes). However, as the network size increases to eight or

more nodes, the average running time of Ullmann’s algorithm exceeds the complexity

of the other algorithms and eventually makes this approach impractical because of its

exponential complexity.

3.3 Summary

In this paper, we developed algorithms to efficiently perform anonymous reconfiguration

of the network topology of a system of networked autonomous vehicles. We partition the

55

Page 56: Topology reconfiguration for systems of networked autonomous

problem into mapping the initial network topology onto the desired network tree topology,

selecting a corresponding initial tree topology, and then routing the nodes through the

network topology using the tree-based algorithms described in Chapter 2. The problem

of determining a mapping from the nodes in the initial topology to the roles in the final

topology is achieved by mapping onto a weighted graph matching problem, for which

an approximate solution can be found using graph spectra at relatively low complexity.

Weighting functions are provided that provide unequal weight across the graph to

minimize the amount of movement that will be required to transform between the initial

and final topologies. Then a breadth-first search is used to form an initial tree topology

that matches the desired tree topology before the tree-based topology reconfiguration

algorithms proposed in Chapter 2 are applied. The results show that the algorithms

developed in this chapter can significantly reduce the total amount of node movement

required to reconfigure the system from an arbitrary initial network topology to a desired

network tree topology.

56

Page 57: Topology reconfiguration for systems of networked autonomous

CHAPTER 4OPTIMIZING NETWORK TOPOLOGY TO REDUCE AGGREGATE TRAFFIC IN A

SYSTEM OF NETWORKED AUTONOMOUS VEHICLES UNDER AN ENERGYCONSTRAINT

In this chapter, we consider reconfiguring the formation of a system of autonomous

vehicles to reduce the total amount of traffic generated in sending information across

the network. The total amount of traffic will depend both on the information flows to

be transmitted, as well as the topology of the network. The latter consideration is

because of the need for intermediate nodes to relay information between a source and

destination. Thus, the aggregate data traffic, which includes all of the data transmissions

from sources and relays will generally be much larger than the total traffic flow from the

sources. In this chapter, we focus on data traffic only and do not consider the impact of

control traffic. For convenience, we use the term aggregate traffic in place of aggregate

data traffic from here on. In this chapter, we consider traffic at the network layer and do

not consider the impact of the interaction among flows at the link layer.

Since the autonomous vehicles are mobile, the aggregate traffic can be reduced by

reconfiguring the network topology to move some of the communicating autonomous

vehicles closer together. We consider networks in which the network connectivity must

be maintained at all times, and any movement scheme must take this into account.

In Chapter 2 and Chapter 3, we presented techniques that allow the formation of a

system of vehicles to be reconfigured while preserving network connectivity based

on “routing” the vehicles through a tree topology. In those chapters, we consider the

problem of anonymous formation reconfiguration, in which each vehicle may take any

role in the final formation. The final formation is specified ahead of time. By contrast, in

this chapter, we consider a scenario in which some subset of the vehicles have unique

traffic flows, and hence these vehicles cannot be treated anonymously. However, we still

leverage the idea of routing the vehicles through a tree topology to ensure that network

connectivity is preserved during the formation reconfiguration.

57

Page 58: Topology reconfiguration for systems of networked autonomous

We also assume that the autonomous vehicles may have finite energy that limits the

extent of their movement or may be otherwise constrained in their movement because

of their other duties, such as sensing. Thus, we consider the problem of optimizing

the network topology to minimize the aggregate traffic in a network to support a given

set of data flows, under constraints on the total amount of movement allowed by the

autonomous vehicles. In the case that the autonomous vehicles do not have any energy

constraints and the shape of the final network topology (a graph consisting of sets

of edges and vertices, but not the assignment of autonomous vehicles to vertices) is

already defined, this problem falls in the class of resource allocation problems known as

quadratic assignment problems [47, 48]. Unfortunately, even for this simpler subclass

of problems, the problem is NP-Hard, and thus there are no known solutions that run in

polynomial time.

In this chapter, we propose suboptimal strategies to reconfigure the network to

reduce traffic by again partitioning the problem into two steps, as was done in Chapter 2

and Chapter 3. In the first step, the initial graph is reduced to a tree topology in such

a way that the increase in traffic from eliminating some links is minimized. Then we

propose techniques to optimize the tree formation to reduce network traffic under the

movement constraints. The performance of the algorithms are compared and evaluated

using simulation.

4.1 Problem Formulation

We consider a system of networked autonomous vehicles that communicate over

wireless links with limited communication distance. We represent the induced network

topology as a simple graph G = (V, E), where vertices V represent the autonomous

vehicles, and an edge e ∈ E between vertices u and v indicates that u and v can

communicate over a wireless link. Let F = {f(u,v) : (u, v) ∈ G2} be the set of data flows,

where f(u,v) denote the amount of traffic from source u to destination v and G2 denotes

the Cartesian product of G with itself. Then the aggregate traffic over network topology G

58

Page 59: Topology reconfiguration for systems of networked autonomous

is

∑(u,v)∈G2

f(u,v)dhopG (u, v), (4–1)

where the distance function dhopG (u, v) is the number of edges in the shortest path

between vertices u and v in G.

In this chapter, we consider the problem of repositioning autonomous vehicles to

transform their network topology while maintaining network connectivity and working

under a constraint on the total amount of movement allowed. To do this, we utilize

previous work on reconfiguring networked autonomous vehicles that are in a tree

topology given in Chapter 2 and Chapter 3 while maintaining network connectivity. In

this chapter, we allow the network to start from an arbitrary connected network topology.

Thus, we decompose the present problem into two sub-problems (the optimal solution

to the two sub-problems may not be optimal for the combined problem). First, we select

a tree topology from the initial connected network Gi by selecting a network tree Gt ⊂ Gi

such that its aggregate traffic (4–1) is minimum. Note that since some links in Gi are

eliminated in forming Gt , the aggregate traffic of Gt will be greater than or equal to the

aggregate traffic of Gi . Let T(Gi) be the set of all tree topologies that are subsets of Gi

and contain all vertices of Gi . Then the problem of choosing the network tree topology Gt

that minimizes the aggregate traffic can be formulated as:

Gtmin = arg minG∈T(Gi )

∑(u,v)∈G2

fuvdhopG (u, v).

(4–2)

After we obtain Gtmin from (4–2), a root node is chosen in Gtmin and prefix labeling

is applied starting at the root to give initial prefix tree Gti or trie. The distance between

two nodes in the trie can be simply determined from their prefix labels. We first find

the largest prefix that is common to the labels of both nodes. This is the prefix label

of a common parent of both nodes in the tree. Then the shortest path between two

nodes is up to the common parent and then back down to the other node. Hence the

59

Page 60: Topology reconfiguration for systems of networked autonomous

total distance is sum of the distances from each of them to their common parent. Let

Λu denote the prefix label assigned to node u. Let L(Λu) denote the length of the prefix

label of node u, and L(Λu, Λv) denote the maximum length prefix in common to the prefix

labels of nodes u and v . Then

dhopGt (u, v) = [L(Λu)− L(Λu, Λv)] + [L(Λv)− L(Λu, Λv)]. (4–3)

Secondly, we consider optimizing the aggregate traffic by repositioning the

autonomous vehicles while preserving network connectivity and under the constraint

that an autonomous vehicles system has finite energy. As can be seen from (4–1),

the larger the distance between two nodes that share a data flow, the greater the

aggregate traffic in the network, since the same message will be relayed at every

intermediate node between them. To minimize the aggregate traffic in the absence of

any energy constraints, any final connected graph topology Gtf is possible. Let C(G)

be the connectivity function, which takes on the value 1 when the final topology is

connected and 0 otherwise. Then we wish to find Gtf that satisfies

Gtf = arg minG

∑(u,v)∈G2

fuvdhopG (u, v)

(4–4)

subject to

C(G) = 1.

Now, if we constrain that an autonomous vehicles system has limited energy, then

some final graph topologies may no longer be possible. Moreover, the constraint that the

network be connected at all times will also limit which final topologies are possible in this

scenario. For instance, if a node is to move up the tree, then all of its children must have

sufficient energy to at least move up to connect with that node’s parent. Let hT denote

the total number of vertices in the graph that all nodes may move before the total energy

budget is expended. Let F(Gti ,Gtf , hT ) be a feasibility function, which takes on the value

60

Page 61: Topology reconfiguration for systems of networked autonomous

B

A

D E

C

F

A Initial network topology.

B

A

D E

C

F

B Desired network topology.

Figure 4-1.

Network topology.

1 when the final topology is feasible under the energy constraint and 0 otherwise. Then

the aggregate traffic minimization under the energy and network connectivity constraints

can be formulated as:

Gtf = arg minG

∑(u,v)∈G2

fuvdhopG (u, v)

(4–5)

subject to

C(G) = 1

F(Gti ,G, hT ) = 1.

We determine F(Gti ,G, hT ) based on transforming the topology using a prefix-routing

approach that is based on that in Chapter 2 and Chapter 3, as described in the next

section.

4.2 Network Topology Reconfiguration Algorithms

Before addressing techniques to solve both (4–2) and (4–5), we describe how the

network topology control method given in Chapter 2 and Chapter 3 can be utilized in this

application, in which nodes are not identical. In this section, we assume that both the

initial topology Gti and the final topology Gtf are known. We begin by choosing a node

61

Page 62: Topology reconfiguration for systems of networked autonomous

01

0

011 021

02

0111

A Initial network topology.

01

0

011 021

02

0111

B Desired network topology.

Figure 4-2.

Labeling network topology.

in the initial topology to serve as the root of the tree. In this chapter, we assume that

the root is chosen at random. As an alternative, the root may also be chosen according

to some criteria; the design of root-selection algorithms is an area for future work.

As mentioned in Section 4.1, the root then assigns unique prefix labels to each of its

children, which assign unique prefix labels to their children, etc., until the entire tree has

prefix labels. In prefix labels, the label of a vertex’s parent node is a prefix of that node’s

label. The initial tree topology Gti becomes a prefix tree, or trie [37, 44, 49]. The prefix

label assigned to each node serves as its network address.

We explain the prefix-routing approach to network topology control using the

example topologies shown in Figure 4-1. Node A has been selected to be the root.

Prefix labels are then assigned to all nodes in the initial network starting from a root,

as shown in Figure 4-2A. After prefix label assignment is done for the initial network

tree, each node sends a message including its own prefix label and identity to the root.

After the root obtains all messages from each node, it will have a knowledge of the initial

network graph. The root will then label all the nodes in the desired network tree with the

prefix label assigned to the same node in the initial tree. The desired network tree after

label assignment is completed is shown in Figure 4-2B.

62

Page 63: Topology reconfiguration for systems of networked autonomous

The root searches for nodes that need to move between the initial and final

topologies, starting from the top to the bottom of the tree, in a breadth-first manner.

The nodes that must move are those whose prefix label does not correspond to the

position where it is located in the desired tree. The label for a node should always be of

the form

Λ = Λparent � l , (4–6)

where Λ denote the prefix label of parent’s children, � is the concatenate operator, and

l is the unique suffix. Nodes that do not have the correct prefix label must move from

their position in the initial topology, and hence are called moving nodes. Nodes that have

the correct prefix label and that have not been previously assigned to be a moving node

(see more below) are nonmoving nodes.

For the example network, all of the nodes that are one edge away from the root

have the correct prefix label and thus are nonmoving nodes. Next, the root considers all

nodes that are two edges away (it’s children’s descendants). As shown in Figure 4-2B,

the node with label 021 has a correct prefix label, but the node with label 011 does not

have a correct prefix label. Thus, node 011 will be a moving node. If a parent moves, it

will cause network connectivity to break for its children, so all of the descendants of a

moving node must also be moving nodes. For instance, since 011 is a moving node, its

child 0111 must also be a moving node. So, even though 0111 initially has a prefix label

that matches its parent in Figure Figure 4-2B, it is still a moving node.

For each moving node, the root records two labels. (1) Its anchor-node label is the

label of the non-moving node that will be the moving node’s destination. (2) Its desired

label is the new label of the moving node upon arrival at the destination in the desired

topology. When the root has already considered all nodes in the desired tree, the root

will send a message M.Dest including both labels to each moving node. A moving node

then first moves to the node whose prefix label is the anchor-node label. When a moving

node arrives at a non-moving node, the non-moving node first checks the moving node’s

63

Page 64: Topology reconfiguration for systems of networked autonomous

anchor-node label to see if it matches the non-moving node’s prefix label. If it does, the

non-moving node will serve as the anchor node for that moving node, and it then uses

the desired label of that moving node to forward the moving node to the right position in

the desired graph. The moving node will be relabeled to match the desired label once it

reaches its final position, which will make its prefix label correspond to its position in the

desired network topology.

The desired label of a moving node can be simply determined from its parent in the

desired topology as given in Figure 4-2B. If its parent is a moving node, its parent must

already be assigned the desired label by the root, and the moving node’s desired label

is determined from the desired label of its parent. If its parent is a nonmoving node, the

desired label is determined from its parent prefix label.

When the moving nodes 011 and 0111 receive M.Dest message from the root

including both the anchor-node and desired labels, they will move through the initial

network toward anchor node 02 by using maximum prefix matching logic [34–36]. When

moving nodes 011 and 0111 are able to connect to the anchor node 02, anchor node

02 will look at their anchor labels to check if 02 is their anchor node. Once node 02

determines that it is the anchor node for 011 and 0111, node 02 will check the desired

label of both of the nodes. The desired labels are 022 and 0221, respectively, and 02

will use these labels to forward nodes 011 and 0111 to the right positions in the desired

topology. After both nodes arrive at the desired position, their labels will be changed to

the desired labels, which will make their prefix labels correspond to their position in the

desired network topology.

Consider now how nodes should be move from their positions in the initial topology

to their positions in the desired topology without breaking network connectivity.

Generally, if there are multiple moving nodes in the initial topology, whenever they

receive a message from a root, they can start moving simultaneously. However, a

moving node that is not a leaf node has to wait for its descendants to move up to it

64

Page 65: Topology reconfiguration for systems of networked autonomous

before it can start moving. Otherwise, the node’s descendants will be disconnected from

the network. For example, consider again nodes 011 and 0111 in Figure 4-2A. Node

011 cannot move first, since that would break network connectivity to node 0111; in

general, a parent node cannot move – all of its children must move first to make it a leaf

node. Thus, node 0111 first has to move up to node 011 until it is able to connect to

node 01. Then both nodes 011 and 0111 can continue moving up to the root, passing by

node 01, until they are able to connect with node 02. Once node 011 connects with 02

(at the time it reaches the root), it will be immediately relabeled as 022 to make the label

of the node 011 conform to the prefix tree. Then node 0111 will move toward node 02

until it is able to connect to node 011, which has already been relabeled as 022 . Finally,

node 0111 will be relabeled as 0221 to achieve the desired topology. An example of this

method is shown in Figure 4-3, and the pseudocode of a label assignment algorithm to

be executed at the root is given in Algorithm 1.

4.3 Network Topology Optimization Algorithms

In this section, we present techniques to solve both (4–2) and (4–5). We first

present methods to select the optimal network tree topology Gt in terms of aggregate

flow from Gi based on solving (4–2). We then provide approaches to reconfigure the

network to minimize the aggregate flow based on solving (4–5).

4.3.1 Network Tree Selection (NTS) Algorithm

4.3.1.1 Optimal Algorithm

To search for an optimal network tree topology from an initial network Gi , Char’s

algorithm [50] is used to enumerate all trees Gt ⊂ Gi . Char’s algorithm associates

each subgraph G ′c = {V ′c, E ′c} of Gi by vertex sequence c = {c1, c2, ..., cn−1}, where

ci denote a vertex adjacent to vertex i and n denote the number of vertices in Gi .

Each c can be translated into a subgraph G ′c, where V ′c = {1, 2, 3, ..., n}, and E ′c =

{(1, c1), (2, c2), ..., (n − 1, cn−1)}.

65

Page 66: Topology reconfiguration for systems of networked autonomous

M.Dest

M.Dest

M.Dest

01

0

011 021

02

0111

A The root node, 0, sends messageM.Dest including the anchor-node anddesired labels to the moving nodes, 011and 0111.

01

0,

011,

0111

021

02

B Nodes 011 and 0111 use prefix routingto move through the tree until they are ableto connect to their designated anchor node,02.

01

0,

0111

022 021

02

C Node 011 is forwarded to an appropri-ate position in the desired topology andrelabeled as 022.

01

0

022 021

02,

0111

D Node 0111 moves toward the anchornode 02, which allows it to connect to node022.

01

0

022 021

02

0221

E Node 0111 is relabeled as 0221 toachieve the desired prefix tree topology.

Figure 4-3.

Network reconfiguration.

66

Page 67: Topology reconfiguration for systems of networked autonomous

Algorithm 1: Label Assignment

Input: Gtf = {V, Ef }/* desired graph with corresponding prefix label from Gti */

Output: Gtf with moving indicators and anchor-node and desired labelsroot=GetRoot(V);root.moving = false;Q = {root};Qtmp = ∅;ConsideredNodes = Q;while |ConsideredNodes| < |V| do

foreach v∈Q doC = GetChildren(v);if C 6= ∅ then

Qtmp = Qtmp ∪ C;ConsideredNodes = ConsideredNodes ∪ C;if v.moving == false then

foreach c ∈ C doif ParentLabel(c)== Label(v) then

c.moving = false;else

c.moving = true;end

endforeach c ∈ C do

if c.moving == true thenc.anchorlabel = v .label ;c.desiredlabel = GetUniqueDesiredLabel();

endend

elseforeach c ∈ C do

c.moving = true;c.anchorlabel = v .anchorlabel ;c.desiredlabel = GetUniqueDesiredLabel();

endend

endendQ = Qtmp;

end

Char’s algorithm searches through all subgraphs G ′c ⊂ Gi including both tree and

non-tree subgraph of Gi for all spanning tree Gt ⊂ Gi . Hence, the optimal tree can be

founded by calculating the aggregate flow for all trees Gt obtained from Char’s algorithm.

To calculate the aggregate flow for each Gt , we apply breadth-first search algorithm to

obtain all pair shortest path [44], dhopGt (u, v) : ∀u, v ∈ Vi .

The complexity of this algorithm to search for a tree that minimizes aggregate flow

is O(m + n + n2t) where m is the number of edge in Gi , n is the total number of vertices

in Gi , and t is the number of both tree and non-tree subgraphs in Gi generated by Char’s

algorithm. This is because the complexity of Char’s algorithm is O(m+ n+ nt), O(n+m)

67

Page 68: Topology reconfiguration for systems of networked autonomous

is the complexity of breadth-first search to obtain an initial tree sequence from Gi , and

the complexity of the aggregate flow calculation for each tree generated by Char’s

algorithm is O(n2).

4.3.1.2 Simulated Annealing (SA) Algorithm

The complexity of Char’s algorithm depends on the number of generated tree and

non-tree subgraphs in Gi which could be very high when Gi is large. This motivates us to

search for an optimization method that give a suboptimal solution with lower complexity.

Since Char’s algorithm associates each subgraph G ′c ⊂ Gi with a vertex sequence c,

simulated annealing [46] can be applied to search for the global solution with lower

complexity. Simulated annealing starts with an arbitrary initial tree sequence c and

searches through its neighbor for a tree that gives a better solution in terms of aggregate

flow and decides to move to the neighborhood probabilistically. Here, the neighborhood

of sequence c is defined by

Nε(c) = {cN : |cN | −∑i

|c[i ] ∩ cN [i ]| ≤ ε, |cN | = |c|}, (4–7)

where ε denotes a neighborhood radius. This process is done iteratively starting from a

predetermined initial temperature Ki until it reaches the predetermined final temperature

Kf . The complexity of simulated annealing mainly depends on the number of iterations,

which is determined by the choice of Ki , Kf , and the cooling rate α. The complexity is

O(n +m + n2 logα(Kf /Ki)) [46].

4.3.2 Network Topology Reconfiguration Optimization (NTRO) Algorithm

After selecting a network tree Gtmin to minimize aggregate flow, we can then consider

repositioning a node in Gtmin to form a new tree that minimizes aggregate flow by solving

(4–5). We apply the prefix-labeling-based network reconfiguration approach from

Section 4.2 to reconfigure the network around a selected root to minimize the aggregate

flow. The root first labels each node in Gtmin to obtain an initial prefix tree Gti or trie. The

root is now able to control the network topology and wishes to select a final topology that

68

Page 69: Topology reconfiguration for systems of networked autonomous

minimizes the aggregate traffic, under a constraint on the total amount of movement of

the nodes. The distance that a node must move to transition from the initial to the final

topology is

dhopGti→G

tf

(v) = dhopGti(v , av) + dhopGtf

(v , av)− 2, (4–8)

where v is the moving node and av is the anchor node of v .

For instance in the example of Figure 4-1 and Figure 4-2, node D must move to

within one hop of its new parent, which is C or 02. Thus, node D moves up to the root,

at which point it is within one hop of 02 and can thus be relabeled 022 to achieve the

desired position by only moving two hops.

With the additional constraint that the topology reconfiguration occurs around

the root and using the constraints on the total amount of movement of all nodes, the

optimization problem can be formulated as

Gtf = arg minG

∑(u,v)∈G2

fuvdhopG (u, v)

(4–9)

subject to

C(G) = 1∑v∈Vi

dhopGti→G

(v) ≤ hT

dhopGti→G

(vroot) = 0.

Here dhopGti→G

(v) denotes the distance, in terms of number of edges in the graph, that a

node v must move to transition from Gti to G.

Before presenting algorithms to solve this problem, we first consider the necessary

scope of the search by evaluating which nodes may need be moved between Gti and

Gtf . The nodes are partitioned into active nodes, which have a data flow to or from

other nodes, and passive nodes, which do not have a data flow to or from other nodes.

However, passive nodes may still act as relays for other nodes’ data flows. Since there is

69

Page 70: Topology reconfiguration for systems of networked autonomous

a constraint on the total amount of node movement, it is best not to move passive nodes

unless that is required to allow active nodes to move. All active nodes are considered for

repositioning and are placed in the active moving node set, AM . However a node cannot

move while it still has children. Hence, it is necessary to also move a passive node who

is a child of a node in AM , and such nodes are members of the passive moving node

set, PM . This node classification algorithm is formalized in Algorithm 2.

Algorithm 2: Moving Node Selection

Input: The initial graph, Gti = {V, Ei}Output: The active moving set, AM and the passive moving set, PMCheckFlow (v) ∆

=⋃u∈V\v (fuv > 0 ∪ fvu > 0);

AM = ∅;PM = ∅;foreach v ∈ V do

if (CheckFlow(v) == true) thenAM = AM ∪ v ;C = GetChildren(v);if C 6= ∅ then

foreach c ∈ C doif CheckFlow(c) == false then

PM = PM ∪ c ;end

endend

endend

Finally, after the root obtains both AM and PM , a subgraph G ′ ⊂ Gti is formed by

removing all vertices in AM and PM , along with all associated edges. All the nodes from

both sets can move and will become descendants of at least one node in G ′ according to

the algorithms described below.

4.3.2.1 Optimal Algorithm

For a root to achieve an optimal achievable topology, it essentially has to consider

all possible tree topologies and select the final topology based on the achievable tree

that gives the minimum aggregate data traffic. We provide details about how the optimal

solution can be found, subject to the constraint that the topology is reorganized around a

pre-selected root.

70

Page 71: Topology reconfiguration for systems of networked autonomous

As described before, the root first obtains AM and PM , as well as the subgraph

G ′ of non-moving nodes. The root uses a brute-force solution to consider all nodes in

both AM and PM and to evaluate the aggregate data for all achievable tree topologies

Gt such that G ′ ⊂ Gt : (∀Gt). This can be done by applying the concept of Prufer code

sequences [51, 52] to obtain all achievable tree topologies. Each labeled tree with n

nodes can be encoded into code sequence p of length n − 2 called a Prufer sequence,

where each element in p is obtained from the set of the n node labels. There are nn−2

possible spanning trees with n labeled nodes and they all can be encoded into nn−2 code

sequences.

To search for all achievable tree topologies Gt such that G ′ ⊂ Gt : (∀Gt), we first

contract the subgraph G ′ to a single node V′. Next, we generate a set P containing all

possible Prufer sequences from a set of nodes including AM , PM , and V′. For each

p ∈ P, it can be decoded to obtain a unique tree Gtp. Nevertheless there may exist more

than one possible unique tree for each Prufer sequence p since a graph Gtp obtained

from decoding p always contains a node V′ and it has to be extracted as G ′ to achieve at

least one unique graph Gt ⊃ G ′.

To obtain all unique trees from each Gtp, we first consider an edge set EpV′ = {e =

{V′, v} : v ∈ (AM ∪ PM), e ∈ Ep} containing the edge that is incident to V′ in Gtp, and

therefore each v will denote a root of each subtree Gtsub ⊂ Gtp and each Gtsub is connected

to V′ in Gtp by its associated edge e ∈ EpV′. Hence, |Ep

V′ | denotes the number of subtrees

Gtsub ⊂ Gtp connected to V′ in Gtp. These subtrees have to be attached to at least one

node of the subgraph G ′ obtained from extracting a node V′ to form a unique spanning

tree by connecting a root of each Gtsub to any node v ∈ V ′, where V ′ denotes the set of

nodes of G ′. Hence, there are |V ′||Ep

V′ | possible ways to attach all subtrees Gtsub to G ′ and

hence each Prufer sequence p gives |V ′||Ep

V′ | unique tree topologies.

The branch-and-bound approach is used based on a depth-first tree search

across all possible unique tree topologies to reduce the complexity of the brute-force

71

Page 72: Topology reconfiguration for systems of networked autonomous

Algorithm 1: Optimal Algorithm with Branch-and-Bound for |Vi \ V ′| = 2

Input:Non-moving node subgraph, G′ = {V ′, E ′}; initial tree, Gti = {Vi , Ei}

RemainingFlows(G) ∆=

∑u∈(Vi\VG)

∑v∈Vi (fuv + fvu)

Tmin = AggregateTraffic(Gti );Gtf = Gti ;P = GetAllPruferSequence(Gti ,G

′);foreach p ∈ P do

Gtp = PruferDecoding(p,V ′);Gtsub = GetAllSubTree(Gtp);foreach v ∈ V ′ do

G′1 = AttachSubTree(Gtsub[1], v ,G′);T = AggregateTraffic(G′1);if |Gtsub| = 2 then

BL = T + RemainingFlows(G′1);foreach v ∈ V ′ do

if (∑v∈G′1

dhopGti→G′1

(v) ≤ hT )&&(BL < Tmin) then

G′2 = AttachSubTree(Gtsub[2], v ,G′1);T = AggregateTraffic(G′2);if (

∑v∈G′2

dhopGti→G′2

(v) ≤ hT )&&(T < Tmin) then

Tmin = T ;Gtf = G′2;

endelse

break;end

endelse

if (∑v∈G′1

dhopGti→G′1

(v) ≤ hT )&&(T < Tmin) then

Tmin = T ;Gtf = G′1;

endend

endend

combinatorial search [53]. This method associates each partial and complete solution

with a node in the solution tree. The levels of this tree are indexed, where the root is

defined to be at level -1. The children of the root at level 0 represent all possible Gtp

obtained from all possible Prufer sequences. At level 1 are all possible locations in G ′

for the first subtree. At level n are all possible locations in G ′ for the nth subtree given all

the previous locations of subtrees 1, 2, ... , n − 1, which are determined by the nth node’s

parent. A complete solution Gtcomplete for a particular Gtp is represented by the leaves.

The search first starts from selecting one Prufer sequence and decoding it to

obtain Gtp and then by trying one allocation of all subtrees to G ′. The search proceeds in

72

Page 73: Topology reconfiguration for systems of networked autonomous

depth-first manner. At each node the minimum aggregate traffic can be lower bounded

by the aggregate traffic from the subtrees that have already been assigned positions

plus the sum of the remaining data flows. One possible solution to the minimum

aggregate traffic is obtained once the depth-first search has reached a leaf node,

and this will be used as an upper bound on the best minimum aggregate traffic over

all nodes. Then as the search proceeds down other branches, a branch will be pruned

whenever the lower bound for that branch exceeds the upper bound on the optimal

solution, which is given by the best solution found so far, or whenever the required total

amount of movement at particular branch already exceeds hT . Whenever the search

reaches a leaf of the tree, the aggregate traffic will be checked and compared with the

best solution found. If this value is better than the best solution, it will then be recorded

as a new best feasible complete solution and this complete solution Gcomplete will also

be recorded as the best possible solution found. The optimal solution is found when all

nodes have been considered or pruned. The branch-and-bound approach is most easily

implemented using recursion, since it uses depth-first search, and we omit the detailed

algorithm here. To give an idea of how this algorithm works, we give a nonrecursive form

of the algorithm for |Vi \ V ′| = 2 in Algorithm 1.

If all nodes are moving nodes, there exist nn−2 possible unique tree topologies.

Hence, the complexity of this algorithm is O(nn) since the optimal algorithm to encode

and decode a Prufer sequence of a labeled tree is O(n) [52].

4.3.2.2 Simulated Annealing (SA) Algorithm

The complexity of searching for the optimal solution can still be very high even

though branch-and-bound is used to reduce the number of solutions that must be

evaluated. Again, simulated annealing can be applied to solve (4–9). The initial topology

Gti is first encoded into Prufer code p by considering G ′ as a single node V′. From

there, simulated annealing starts searching for other feasible solutions by considering

the neighborhood of p and decoding it to achieve one possible unique tree and finally

73

Page 74: Topology reconfiguration for systems of networked autonomous

Algorithm 2: Simulated Annealing Algorithm

Input:Non-moving node subgraph, G′ = {V ′, E ′}; initial tree, Gti = {Vi , Ei}; Initial Temperature, Ki ; Fi-nal Temperature, Kf ; Boltzmann constant, Kc ; Cooling Rate, α; Neighborhood radius, εK = Ki ;Tmin = AggregateTraffic(Gti );Gtf = Gti ;Tcurrent = AggregateTraffic(Gti );pcurrent = PruferEncoding(Gti ,G

′);while K > Kf do

pnext = GetNeighborhood(pcurrent , ε);Gtpnext = PruferDecoding(pnext ,V ′);Gtsub = GetAllSubTree(Gtpnext );G′′ = G′;achiveable = true;foreach Gt ∈ Gtsub do

v = GetRandomNode(V ′);G′′ = AttachSubTree(Gt , v ,G′′);if (

∑v∈G′′ d

hop

Gti→G′′

(v) > hT ) then

Tnext = inf;achiveable = false;break;

endendif achiveable == true then

Tnext = AggregateTraffic(G′′);endif Tnext < Tmin then

Tmin = Tnext ;Gtf = G′′;

end

if (e−Tnext−Tcurrent

KcK > RandomNumber([0, 1])) thenpcurrent = pnext ;Tcurrent = Tnext ;

endK = αK ;

end

deciding whether to move to the neighborhood probabilistically. The neighborhood is

given by

Nε(p) = {pN : |pN | −∑i

|p[i ] ∩ pN [i ]| ≤ ε, |pN | = |p|} (4–10)

The complexity of this algorithm is again highly dependent on the initial and final

temperature Ki , Kf as well as the cooling rate α. Hence the complexity of this algorithm

is O(logα(Kf /Ki)n2). The simulated annealing algorithm is given in Algorithm 2.

4.4 Simulation Results

We simulated the performance of the proposed algorithms for randomly selected

graph topologies with three to fifteen nodes. For a network with n nodes, we selected

74

Page 75: Topology reconfiguration for systems of networked autonomous

3 4 5 6 7 8 9 10 11 12 13 14 151

1.5

2

2.5

3

3.5

4

Number of nodes

Aggre

gate

Data

Tra

ffic

(M

Byte

s)

Initial

BFS

NTS − SA

NTS − Optimal

Figure 4-4.

Minimum achievable aggregate traffic for network tree selection algorithmsas a function of network size.

the number of pairs of nodes that share a flow at random uniformly from 1 to d(n2

)/2e,

and a total of 1 Mbps is randomly distributed among all these data flows. For each

size network, we randomly generate 150 different combinations of initial network

topologies and flow allocations. We present results for the optimal algorithms and for

the simulated annealing algorithms. For the optimal algorithms, the computational

complexity limited our searches to networks with 7 nodes or fewer. For the simulated

annealing algorithms, we used the following parameters: initial temperature Ki = 1,

final temperature Kf = 0.01, cooling rate α = 0.97, Boltzmann constant Kc = 0.1, and

neighborhood radius ε = 1.

We first investigate the performance, in terms of aggregate traffic, of the network

tree selection algorithms. We compare the performance of simulated annealing to that

75

Page 76: Topology reconfiguration for systems of networked autonomous

of the true optimal solution, as well as a tree that is selected randomly in a breadth-first

fashion. The results are illustrated in Figure 4-4. Also included in this graph are the

aggregate traffic of the initial network, as well as aggregate traffic from selecting a tree

at random in a breadth-first fashion.

The aggregate flow of the initial network is smaller than for any of the network tree

selection methods, since there are more alternative paths for each traffic flow, especially

when the initial network is dense. It can be observed that when the network size

grows larger, the simple tree selection method by using breadth-first search gives the

worst performance. It also can be seen that the network tree selection with simulated

annealing offers significantly better performance than the breadth-first tree selection

technique and that the aggregate traffic from simulated annealing is close to optimal,

while requiring much lower complexity.

In Figure 4-5, we consider the aggregate traffic after selecting the network tree and

then optimizing the topology by repositioning nodes to reduce aggregate traffic. The

results for simulated annealing and the solution that is optimal to each sub-problem

are illustrated in Figure 4-5, along with the aggregate traffic for the initial network.

The results are shown for two values of the constraint on the total amount of node

movement, hT = n and hT = 3n, where n denotes the number of nodes in the network.

It can first be observed that both the optimal and simulated annealing combined

algorithms can improve the aggregate traffic significantly by reconfiguring a tree

obtained from the network tree selection algorithm. When the network size is small,

both algorithms provide similar performance, since there are a limited number of feasible

candidate tree topologies and the nodes in the small network are already close to each

other. Thus, it is difficult to reduce the aggregate traffic for a small network. As the

network size grows larger, the total amount of energy of a system that is available for

repositioning plays an important role in the final aggregate traffic. However, large hT

also translates into more feasible network tree topologies, which can slow the execution

76

Page 77: Topology reconfiguration for systems of networked autonomous

3 4 5 6 7 8 9 10 11 12 13 14 15

1

1.5

2

2.5

3

3.5

Number of nodes

Aggre

gate

Data

Tra

ffic

(M

Byte

s)

Initial

NTS + NTRO − SA (hT = nodesize)

NTS + NTRO − Optimal (hT= nodesize)

NTS + NTRO − SA (hT = 3×nodesize)

NTS + NTRO − Optimal (hT= 3×nodesize)

Figure 4-5.

Minimum achievable aggregate traffic for combined algorithms as a functionof network size.

of the optimization algorithm. It can also be observed that the combined algorithm with

simulated annealing provides performance close to the optimal algorithm but with lower

complexity.

4.5 Summary

In this chapter, we developed approaches to reconfigure the topology of a group

of networked autonomous vehicles with the goal of reducing aggregate traffic, while

maintaining network connectivity and limiting the total amount of movement based on

an energy constraint. We partitioned this problem into two sub-problems. First, we

select from the initial connected graph a tree topology that minimizes aggregate traffic.

Second, we reposition the autonomous vehicles in the tree to reduce aggregate traffic

while maintaining network connectivity and limiting the total amount of movement to be

77

Page 78: Topology reconfiguration for systems of networked autonomous

less than a given constraint. We investigate the complexity and performance for these

algorithms. The results show that the combination of network tree selection and network

topology reconfiguration optimization algorithms can reduce aggregate data traffic.

78

Page 79: Topology reconfiguration for systems of networked autonomous

CHAPTER 5ROUTING APPROACHES TO OPTIMIZE THE PHYSICAL TOPOLOGY OF A SYSTEMOF NETWORKED AUTONOMOUS VEHICLES TO REDUCE AGGREGATE TRAFFIC

In this chapter, we aim to develop techniques that can guide the reconfiguration

of the physical formation of a system of networked autonomous vehicles to minimize

aggregate network traffic, under constraints on network connectivity and total autonomous

vehicle’s movement. In this scenario, the network topology can be determined and

controlled through the physical formation of the networked autonomous vehicles. We

consider the protocol model for communications, in which two autonomous vehicles can

communicate if they are within a certain communication range. This model is accurate

for most systems communicating over a channel that suffers from exponential path loss

and white Gaussian noise. Thus, the aggregate traffic can be reduced by reconfiguring

the physical formation of the autonomous vehicles so that sources and destinations are

closer to each other in the network topology.

Our approach to reconfiguring the formation while preserving network connectivity

utilizes the tree-based routing approach developed in Chapter 2 and Chapter 3. In

Chapter 4, we developed algorithms to reconfigure a network topology to reduce

aggregate network traffic. However, this work did not take into account the limitations

and advantages that come when the network topology is induced from a physical

formation.

Our approach provides a series of waypoints through which the autonomous

vehicles can move to achieve a new topology while preserving network connectivity,

under a constraint on the total amount of autonomous vehicle’s movement. The new

approach utilizes constraints on movement based on physical distance, and the full

network topology that is induced by the final physical topology is used to determine the

total aggregate network traffic after optimization. Simulation results are presented to

demonstrate the effectiveness of the proposed algorithms.

79

Page 80: Topology reconfiguration for systems of networked autonomous

B

C

F

A

D

E

A Nodes are randomly deployed over a workspace.

c

c

c

c

cc

c

cc

cc

c

B

C

F

A

D

ER

B Links are formed between autonomous vehiclesthat are located within each other sensing range R.

B

C

F

A

D

E

1

1

0.8 0.8

0.3

0.4 0.4

0.7

1

0.8

C Graph representation of physical topology withedges between autonomous vehicles that sharea communications link. Edge weights correspondto physical distances for a system of networkedautonomous vehicles with communication linksdetermined by the protocol model

Figure 5-1.

Physical topology.

80

Page 81: Topology reconfiguration for systems of networked autonomous

5.1 Problem Formulation

In this chapter, we consider a system of networked autonomous vehicles in

a n-dimensional space, where communication is over wireless links with limited

communication distance. Let qu ∈ Rn denote the position of the autonomous vehicle

u in a n dimensional space. Autonomous vehicles are able to communicate with each

other if they are no more than distance R apart. (Here R can be considered to be the

communication radius of the nodes.) We abstract some essential information about

the physical formation into a simple graph G = (V, E), where vertices V represent

the autonomous vehicles, and edges E = {(u, v) ∈ V × V|duv ≤ R}, represent

communications links between each autonomous vehicle u and v , where duv = ‖qu − qv‖

denote the distance between autonomous vehicles u and v that are located at position

qi and qj respectively. For convenience, we refer to this as a graph of the physical topol-

ogy. An example of how the graph of a physical topology is determined is shown in

Figure 5-1. This example shows how the physical topology of a system of networked

autonomous vehicles is determined from the physical formation of a system. There

are 6 nodes randomly distributed over a two-dimensional space. Each node will form a

communication link between each other if it is located within each other communication

range to form the physical topology of a system.

Now consider the aggregate traffic in G, where this traffic is evaluated as the

data traffic measured at the network layer. The set of data flows is given by F =

{f(u,v) : (u, v) ∈ G2}, where f(u,v) denotes the amount of traffic from source u to

destination v and G2 denotes the Cartesian product of G with itself. Then the aggregate

traffic over network topology G is

∑(u,v)∈G2

f(u,v)dhopG (u, v), (5–1)

where the distance function dhopG (u, v) is the number of edges in the shortest path

between vertices u and v in G.

81

Page 82: Topology reconfiguration for systems of networked autonomous

In this chapter, we consider the problem of repositioning the autonomous vehicles

in the formation to minimize the aggregate network traffic while maintaining network

connectivity, under a constraint on the total amount of movement of the autonomous

vehicles. We then decompose this problem into two sub-problems, where the optimal

solution to the two sub-problems may not be optimal for the combined problem. First,

a network tree topology is obtained from an arbitrary initial physical topology Gi by

selecting a tree Gt ⊂ Gi such that its aggregate traffic (5–1) is minimum. The set of all

tree topologies that are subsets of Gi and contains all vertices of Gi is given by T(Gi).

Then we can formulate the problem of selecting the network tree topology Gt that

minimizes the aggregate traffic as:

Gtmin = arg minG∈T(Gi )

∑(u,v)∈G2

fuvdhopG (u, v).

(5–2)

A selected root will label each node in Gtmin to obtain initial prefix tree Gti after

Gtmin is obtained from (5–2). Secondly, we attempt to optimize the aggregate traffic by

repositioning the autonomous vehicles while maintaining network connectivity under the

constraint that a system of networked autonomous vehicles has finite energy. We let

C(G) be the connectivity function, which takes on the value 1 when G is connected and

0 otherwise. Let ET represent the total physical distance in Gti that all nodes may move

before the total energy budget is expended. Let F(Gti ,Gtf ,ET ) be a feasibility function,

which takes on the value 1 when the final tree topology Gtf can be achieved without

breaking network connectivity under the energy constraint and 0 otherwise. To reduce

the aggregate traffic in a system, we wish to find Gtf that minimizes the aggregate traffic.

Then we can formulate the aggregate traffic minimization under the energy and network

connectivity constraints as:

82

Page 83: Topology reconfiguration for systems of networked autonomous

Gtf = arg minG

∑(u,v)∈G2

fuvdhopG (u, v)

(5–3)

subject to

C(G) = 1

F(Gti ,G,ET ) = 1.

F(Gti ,G,ET ) can be determined based on transforming the topology using an approach

that is based on that in Chapter 4, as described in the next section.

The aggregate traffic can be further improved by considering the physical topology

of a system. After Gtf is obtained by solving (4–5), nodes that are physically separated

by a distance of no more than R will form a communication link to obtain final physical

topology Gf . Thus, the aggregate traffic of Gf is given by

∑(u,v)∈G2

f(u,v)dhopGf (u, v), (5–4)

where dhopGf (u, v) denotes the number edges in the shortest path between vertices u and

v in Gf .

5.2 Advanced Network Topology Reconfiguration Algorithm

The initial prefix tree Gti can be obtained by utilizing the Network Tree Selection

(NTS) Algorithm proposed in Chapter 4 to solve (5–2). In this section we describe

how the network topology of a system of networked autonomous vehicles can be

reconfigured from the initial tree while maintaining the network connectivity. In this

section, we represent a novel method to reconfigure the network tree topology based

on the network topology reconfiguration algorithm in Chapter 4. First, a node in the

initial topology is randomly chosen to serve as the root of the tree. After the root is

selected, it then assigns unique prefix labels to each of its children until the entire tree

has prefix labels. The prefix label assigned to each node serves as its network address.

83

Page 84: Topology reconfiguration for systems of networked autonomous

B

C

F

A

D

E

A Initial network topology.

B

A

D E

C

F

B Desired network topology.

Figure 5-2.

Network topology.

The initial tree topology Gi becomes a prefix tree, or trie [37, 44]. Example topologies

are given in Figure 5-2, where the initial network topology shown in Figure 5-2A is

obtained from the physical topology shown in Figure 5-1C by selecting a tree topology

using the NTS algorithm. For this example, node A is selected to be the root, and prefix

labels are assigned to all nodes in the initial network tree. Similarly, each node in a

desired network tree is labeled with a prefix label assigned to the same node in the initial

network tree. The prefix tree topologies are shown in Figure 5-3.

The searching for nodes that need to move between the initial and final topologies

can be done in both depth-first and breadth-first manner from the top to the bottom of

the desired tree topology starting from the root. The nodes that must move are those

whose prefix labels do not correspond to the positions where they are located in the

desired tree. All nodes in the topology are first classified into two categories, as in

Chapter 4. First, moving nodes are those nodes that do not have the correct prefix label

and must move from their position in the initial topology. Second, nonmoving nodes

are those nodes that have the correct prefix label and that have not been previously

84

Page 85: Topology reconfiguration for systems of networked autonomous

01

02

0111

0

011

021

A Initial network topology.

01

0

011 021

02

0111

B Desired network topology.

Figure 5-3.

Labeling network tree topology.

assigned to be moving nodes. For instance, in Figure 5-3 all of the nodes except for 011

and 0111 are nonmoving nodes.

In this chapter, the root considers three labels for each moving node. (1) Its anchor-

node label is the label of the non-moving node who is the first parent of the moving

node in Gti . (2) Its destination-node label is the label of the node in Gti that will be the

moving node’s destination. (3) Its desired label is the new label of the moving node upon

arrival at the destination in the desired topology. The root will send a message M.Dest

including all these three labels to each moving node when the root has considered all

nodes in the desired tree. After each moving node obtains a message M.Dest, it starts

moving to the node whose prefix label is the destination-node label using maximum

prefix matching logic [35]. Note that each moving node will move toward a node whose

prefix label is its anchor-node label until it reaches the node whose prefix label is its

destination-node label.

When a moving node arrives at a destination node, it will maintain the network

connectivity with the neighboring node that is a moving node’s next node on the path to

85

Page 86: Topology reconfiguration for systems of networked autonomous

the anchor node until it is able to connect with its parent node in the final tree topology

Gtf . Moving nodes can also not depend on network connections to other parts of the

network that are not on its path to the anchor node, as the nodes in these other parts

of the network may also be moving nodes whose movement would cause the moving

node to lose network connectivity. To overcome this issue, a moving node will not make

network connections with other nodes in the network that are not on its path to the

anchor node until it arrives at its destination node and confirms that the destination node

has achieved its position in the final tree topology, Gtf . To verify whether its neighbor

is its parent in Gtf , each moving node checks the desired label of its neighbor to see

if it matches the prefix label of its parent in the desired topology. The prefix label of a

moving node’s parent in the desired tree topology can be simply determined from the

moving node’s desired label. For a non-moving node, the desired label will be the same

as its initial prefix label.

After all the moving nodes arrive at their destinations and are able to connect with

their parents in the desired graph, their prefix label will be relabeled as their desired

label to achieve the desired prefix tree. Also note that moving nodes that are leaf nodes

can start moving simultaneously. To preserve network connectivity, a moving node that

is not a leaf node in the initial topology has to wait for its descendants to move up to it

before it can start moving. Otherwise, the node’s descendants will be disconnected from

the network. An example of this approach is shown in Figure 5-4. In this example, the

root node sends message M.Dest to each of moving nodes 011 and 0111, as shown

in Figure 5-4A. After both moving nodes receive this message, moving node 0111 is

first moving toward its destination node 01 since it is a leaf node while moving node

011 has to wait until moving node 0111 reaches it to preserve the network connectivity,

as shown in Figure 5-4B. Next, both moving nodes can move together toward their

destination, and both moving nodes now arrive at node 01 which is the destination

node of a moving node 0111 as shown in Figure 5-4C. Moving node 0111 will maintain

86

Page 87: Topology reconfiguration for systems of networked autonomous

network connectivity with the root node, which is its next neighbor node along the path

to its anchor node 02. Moving node 011 now moves toward its destination node, 0, and

finally arrives at its destination as shown in Figure 5-4D. Now moving node 0111 will

connect with moving node 011, which is its parent in the final tree topology shown in

Figure 5-3B, and moving node 011 will also connect with its parent in the same final tree

topology. Finally, moving node 011 and 0111 will relabel their own initial prefix label to

022 and 0221, respectively, as shown in Figure 5-4E.

The destination-node label is an addition to the messages sent in our previous

work on Chapter 4 that can reduce the amount of movement required to achieve the

desired network topology. The introduction of the destination-node label is based on

the observation that a node achieves communication with another node whenever it

reaches any of that node’s one-hop neighbors. In Chapter 4, the moving nodes 011 and

0111 in Figure 5-4 move toward their anchor-node 02, as shown in Figure 5-4A through

Figure 5-4D. However, since moving node 0111 does not know its destination-node’s

label, it continues to move to its anchor node 02 to achieve communication with moving

node 011. In the algorithm proposed here, node 0111 does not need to move after it

achieves the position shown in Figure 5-4D because its desired parent node (011) is

in the desired position relative to node 02, and it has achieved communication with its

desired parent node.

It is easy to determine the desired label for each moving node since it can be

simply determined from its parent in the desired topology, as shown in Figure 5-3B.

For example, if its parent is a moving node, its parent must already be assigned the

desired label by the root, and the moving node’s desired label is determined from

the desired label of its parent. Nevertheless, if its parent is a non-moving node, the

desired label is determined from its parent’s prefix label. The desired label assignment

approach in Chapter 4 is used in this chapter. Thus, we provide the pseudocode for the

destination-node and anchor-node label assignment executed at the root in Algorithm 1.

87

Page 88: Topology reconfiguration for systems of networked autonomous

Algorithm 1: Anchor-Node and Destination-Node Label Assignment Algorithm

Input: initial tree, Gti = {Vi , Ei} desired tree, Gtf = {Vf , Ef }

CheckNeighborhood(u.nodelabel,v .nodelabel,Gt ) ∆= {

true : (〈u, v〉 ∈ E) ∪ (u = v)

false : (〈u, v〉 /∈ E) ∩ (u 6= v)

Stack = ∅;Root = GetRootNode(Gti );Root.moving = false;Stack.push(Root);Root.visited = true;while Stack 6= ∅ do

v = Stack.GetTopNode;u = GetUnvisitedChildNode(v ,Gtf );if u 6= ∅ then

Stack.Push(u);u.visited = true;if v .moving == false then

v .destination-nodelabel = v .nodelabel;if u.ParentLabel == v .nodelabel then

u.moving = false;else

u.moving = true;u.anchornode = v ;

endelse

u.moving = true;u.anchornode = v .anchornode;

endif u.moving == true then

u.destination-nodelabel = u.nodelabel;while (CheckNeighborhood(u.destination-nodelabel,u.anchor-nodelabel,Gti ) == false do

if (CheckNeighborhood(u.destination-nodelabel,v .destination-nodelabel,Gti ) == true) thenbreak;

endu.destination-nodelabel = MoveOneHopCloserToAnchorNode(u.destination-nodelabel,u.anchor-nodelabel,Gti );

endif CheckNeighborhood(u.destination-nodelabel,v .destination-nodelabel,Gti ) == false then

Stack1 = Stack;u1 = GetTopNode(Stack1);v1 = GetSecondTopNode(Stack1);while v1 6= u.anchornode do

while CheckNeighborhood(v1.destination-nodelabel,u1.destination-nodelabel,Gti ) == false dov1.destination-nodelabel = MoveOneHopCloserToAnchorNode(v1.destination-nodelabel,v1.anchor-nodelabel,Gti );

endC = GetChildren(v1,Gtf );if |C| > 1 then

Stack2 = ∅;PushNode(v1,Stack2);V = u1;while Stack2 6= ∅ do

u2 = Stack2.GetTopNode;v2 = GetVisitedChildNode(u2,Gtf \ V);if v2 6= ∅ then

Pushnode(v2,Stack2);V = V ∪ v2;while CheckNeighborhood(v2.destination-nodelabel,u2.destination-nodelabel,Gti ) == false do

v2.destination-nodelabel = MoveOneHopCloserToAnchorNode(v2.destination-nodelabel,v2.anchor-nodelabel,Gti );

endelse

Stack2.Pop;end

endendStack1.Pop;u1 = Stack1.GetTopNode;v1 = Stack1.GetSecondTopNode;

endend

endelse

Stack.Pop;end

end

88

Page 89: Topology reconfiguration for systems of networked autonomous

M.Dest

M.Dest

M.Dest

01

02

0111

0

011

021

A The root node, 0, sends mes-sage M.Dest to the movingnodes, 011 and 0111.

01

02

0

011,

0111

021

B Node 0111 move toward itsdestination node 01.

01,

011,

0111

02

0

021

C Node 0111 reaches its desti-nation node 01 while node 011moves toward its destinationnode 0.

01,

0111

02

0,

011

021

D Node 011 reaches its destina-tion node 0. It is able to connectwith its anchor-node 02 and thedesired tree topology is achieved.

01

02

0

021

0221

022

E Node 011 and 0111 relabeltheir own prefix label as 022 and0221 respectively to achieve thedesired prefix tree topology.

Figure 5-4.

Network reconfiguration.

5.3 Physical Topology Reconfiguration Optimization (PTRO) Algorithms

To minimize the aggregate traffic, we first select a network tree topology that has

minimum aggregate traffic from the initial connected network Gi by applying the Network

Tree Selection (NTS) Algorithms from Chapter 4 to solve (5–2) to obtain Gtmin ⊂ Gi . In

Chapter 4 two approaches are presented for NTS, the optimal and simulated annealing

algorithms.

89

Page 90: Topology reconfiguration for systems of networked autonomous

After the NTS algorithm is used to obtain Gtmin, the root will label each node in

Gtmin to obtain the initial prefix tree Gti . We can not directly apply the Network Topol-

ogy Reconfiguration Optimization (NTRO) Algorithm proposed in Chapter 4 to solve

(5–3) to obtain the network tree topology that gives minimum aggregate traffic. This is

because the NTRO Algorithm does not consider the physical topology of the system

and assumes that the distance between neighboring vertices in Gti is uniform. In order

to solve (5–3) with the constraint on the limited amount of movement possible when the

distance between the neighbors in the initial prefix tree Gti is not uniform, we develop an

algorithm based on the NTRO Algorithm called the Physical Topology Reconfiguration

Optimization (PTRO) Algorithm. PTRO Algorithm is different from NTRO Algorithm

in that the PTRO Algorithm is used to reconfigure the physical topology of a system

of networked autonomous vehicles that take into account the constraint on the total

physical movement instead of the total amount of movement in terms of the number

of edges of the graph over which the autonomous vehicles must travel to achieve the

desired configuration. The details of the PTRO algorithm are provided below.

After we select a network tree Gtmin by using the NTS algorithm, we search for a

solution to (5–3) that repositions the nodes in Gtmin to minimize the aggregate traffic.

In this chapter, the NTR algorithm provided in Section 5.2 is used to reconfigure the

network around a selected root to minimize the aggregate traffic. The root first labels

each node in Gtmin to obtain an initial prefix tree Gti . The root is now able to control the

topology of the network and wishes to choose a final topology that gives minimum

aggregate traffic, under a constraint on the total amount of movement of the nodes.

Since there are constraints on the total amount of movement of all nodes and the

topology reconfiguration occurs around the root, the optimization problem can be

formulated as

90

Page 91: Topology reconfiguration for systems of networked autonomous

Gtf = arg minG

∑(u,v)∈G2

fuvdhopG (u, v)

(5–5)

subject to

C(G) = 1∑v∈Vi

dGti→G

(v) ≤ ET

dGti→G

(vroot) = 0.

Here dGti→G

(v) denotes the distance that a node v must move to transition from Gti to

G, which is given by

dGti→G

(v) = dGti (v , vdest). (5–6)

Here vdest denotes the node whose label is the destination label of the node v , which

can be obtained from the advanced network topology reconfiguration algorithm given in

Section 5.2. dGti (v , vdest) denote the shortest distance between node v and vdest in Gti .

A node classification method is given in Section 4.3.2 to determine which nodes

may need to be moved between Gti and Gtf . The nodes are partitioned into active nodes,

which have a data flow to or from other nodes, and passive nodes, which do not have

a data flow to or from other nodes but which may still act as relays for other node’ data

flows. All active nodes are placed in the active moving node set, AM and are considered

for repositioning. Furthermore, it is best not to move passive nodes except as is required

to allow active nodes to move, since there is a constraint on the total amount of node

movement. However, it is necessary to also move a passive node who is a child of a

node in AM since a node cannot move while it still has children, and such nodes are

placed in the passive moving node set, PM .

91

Page 92: Topology reconfiguration for systems of networked autonomous

Finally, a subgraph G ′ ⊂ Gti is formed by removing all vertices in AM and PM , along

with all associated edges after the root obtains both AM and PM . All the nodes from both

sets can move and will become descendants of at least one node in G ′ according to the

algorithms described below.

5.3.1 Optimal Algorithm

We develop an optimal algorithm based on that given in Chapter 4. The basic

approach is to consider all possible tree topologies and select the final tree topology

that is achievable and gives the minimum aggregate traffic. Prufer code sequences [52]

are used to obtain all achievable tree topologies. Each labeled tree with n nodes can

be represented by a code sequence p of length n − 2 called a Prufer sequence. In

Chapter 4, the achievability of the selected tree topology is verified by checking the total

amount of movement required to reposition all the nodes in Gti in terms of the number

of edges that nodes have to traverse in Gti to achieve the desired tree topology. Since

we consider the physical topology of a system in this chapter, we developed an optimal

algorithm to obtain the final tree topology that gives minimum aggregate traffic based

on the optimal algorithm in Chapter 4, except that the achievability of the tree topology

is verified by obtaining the amount of movement required to reposition all nodes in Gti

in terms of the physical distance that the node has to traverse through Gti , and this

can be obtained by running breadth-first search algorithm over all vertices in Gti . Since

our developed algorithm is based on that in Chapter 4 except that breadth-first search

algorithm is run over all vertices in Gti to obtain all pair shortest paths in Gti that will be

used to obtain the total amount of node’s movement. In Chapter 4, we find the total

amount of movement of the nodes in terms of the number of hops (i.e., vertices that

must be traversed) by the moving nodes. The number of hops can be calculated using

prefix labels, as given in (4–3). The complexity of running breadth-first search algorithm

over all vertices is O(n2), and thus the complexity of this optimal algorithm is the same

92

Page 93: Topology reconfiguration for systems of networked autonomous

as that given in Chapter 4, which is given by O(nn), where n denote the number of

nodes in Gi .

5.3.2 Simulated Annealing (SA) Algorithm

Since the complexity of searching for the optimal solution is very high, we consider

developing an algorithm that has lower complexity but can find a solution close to the

optimal solution of (5–5). As in Chapter 4, we use a simulated annealing algorithm to

find an approximate solution to (5–5). The initial topology Gti is encoded into a Prufer

code sequence p. From there, the algorithm starts searching for other possible solutions

by considering the neighborhood of p and decoding it to obtain a feasible tree topology

Gt ⊃ G ′ and deciding whether to move to the neighborhood by probability based on

achievability and aggregate traffic that tree can achieve. The achievability is verified by

the physical distance that each node has to traverse through the initial prefix tree Gti to

achieve the desired tree topology.

The complexity of this algorithm is given by O(logα(Kf /Ki)n2 + n2), where n denotes

the number of vertices in Gti . This complexity is obtained because our algorithm is based

on a simulated annealing algorithm given in Chapter 4, which has the complexity of

O(logα(Kf /Ki)n2), and our algorithm initially runs breadth-first search algorithm for all

vertices in Gti in order to obtain all pair shortest path on the initial tree Gti that will be

used to verify the network tree’s achievability which leads to complexity of O(n2) .

To further improve the aggregate traffic of the system, the final physical topology Gf

is formed by letting nodes who are located within the communications range, R, form a

communications link after Gff that has minimum aggregate traffic is obtained from PTRO

algorithms.

5.4 Simulation Results

In this section, we present results for the combined algorithms that include the

NTS and PTRO algorithms with both the optimal and simulated annealing variants.

The performance of the combined algorithms was simulated for randomly selected

93

Page 94: Topology reconfiguration for systems of networked autonomous

connected graph topologies with three to fifteen nodes. For a network with n nodes, the

number of pairs of nodes that share a flow was selected randomly from 1 to d(n2

)/2e,

and a total data flow of 1 Mbps is randomly distributed among all these data flows. 150

different combinations of initial connected network topologies and flow allocations are

randomly generated for each network size. We randomly generated each connected

network topology by randomly placing each node over a two-dimensional square region

with a length of√n meter. The sensing range for each node is set to be 1 meter. For

the combined optimal algorithm, we limited our searches to networks with 7 nodes or

fewer because of a very high computational complexity of the optimal algorithm. For the

combined algorithm with simulated annealing, the following parameters were used: initial

temperature Ki = 1, final temperature Kf = 0.01, cooling rate α = 0.97, Boltzmann

constant Kc = 0.1, and neighborhood radius ε = 1.

The performance is investigated for both combined algorithms in terms of aggregate

traffic under two values of the constraint on the total amount of node movement,

ET = n × R/3 and ET = n × R. For both combined algorithms, the NTS algorithm

was first used to select a tree topology that gives minimum aggregate traffic, and then

the PTRO algorithm was subsequently used to reposition nodes in the tree topology

obtained from the NTS algorithm to reduce aggregate traffic under the different values

of ET . The physical topology is then formed by letting nodes that are within distance R

of each other form communications links after the desired network topology that has

minimum aggregate traffic form is achieved.

It can be observed from Figure 5-5 that the aggregate traffic is improved significantly

by using the combined optimization algorithms. The optimal and simulated annealing

variants provide similar performance when the network size is small since the nodes

in the small network are already closer to each other and there are limited number of

candidate topologies for the root to be considered. Hence, it is difficult to reduce the

aggregate traffic in a small network. We observe that the total amount of energy of

94

Page 95: Topology reconfiguration for systems of networked autonomous

3 4 5 6 7 8 9 10 11 12 13 14 15

1

1.5

2

2.5

3

Number of nodes

Aggre

gate

Data

Tra

ffic

(M

Byte

s)

Initial

NTS + PTRO − SA (ET = nodesize × radius/3)

NTS + PTRO − Optimal (ET= nodesize × radius/3)

NTS + PTRO − SA (ET = nodesize × radius)

NTS + PTRO − Optimal (ET= nodesize × radius)

Figure 5-5.

Minimum achievable aggregate traffic for combined algorithms as a functionof network size.

a system ET that is available for repositioning nodes plays a crucial role in the final

aggregate traffic as the network size grows larger since large ET translates into more

feasible network tree topologies. However, large ET can also slow down the execution

of the algorithms, especially for the optimal algorithms. It can also be observed that the

combined algorithm with simulated annealing provides similar performance to that of the

combined optimal algorithm but with lower complexity.

5.5 Summary

In this chapter, we considered the problem of optimizing the physical formation of

a system of networked autonomous vehicles to minimize the aggregate network traffic

under constraints on connectivity and total movement of the autonomous vehicles.

We use the concept of prefix trees and prefix routing to simplify the problem to moving

nodes along a tree structure in such a way that network connectivity is ensured when

95

Page 96: Topology reconfiguration for systems of networked autonomous

the autonomous vehicles can move linearly between the positions of autonomous

vehicles. Then we apply optimization techniques to search for a final tree configuration

that is achievable under the given constraints. The performance and complexity of

optimal and simulated annealing variants of the proposed algorithms are compared, and

simulation results show that the formation reconfiguration algorithms can significantly

reduce the aggregate network traffic.

96

Page 97: Topology reconfiguration for systems of networked autonomous

CHAPTER 6CONCLUSIONS AND FUTURE WORK

6.1 Conclusion

In this dissertation, we consider problems of formation control with network

connectivity (FC+NC) constraints or goals, with a special focus on the use of networking

techniques in formation reconfiguration with networking constraints. Solutions to FC+NC

problems may often be decomposed into parts that address network connectivity

maintenance and parts that control the physical positions. Network connectivity can be

treated using graphs. We presented our work on using the concepts of prefix routing to

reconfigure the network topology.

In Chapter 2, we developed a novel approach to route nodes through the network

while maintaining network connectivity by using the concepts of prefix routing to

reconfigure the network topology. In this chapter, an initial tree is built from a randomly

selected root node in the initial graph, and techniques are developed to move the nodes

from the initial tree formation to a desired tree formation. Since the initial tree is selected

randomly, we developed two techniques to provide better matches between the initial

and final topologies. These are the branch and neighbor relabeling algorithms, which

can reduce the amount of movement required to reconfigure the network formation.

The simulation results confirm that the network topology reconfiguration algorithm

together with the relabeling algorithms can further improve the performance in terms

of total movement and time required to achieve the desired network configuration. The

simulation results also confirm that selecting the appropriate root in the initial graph can

improve the performance significantly in terms of total number of movement required to

form the desired network configuration.

In Chapter 3, we developed a novel graph matching-based technique to further

improve the performance of the network topology reconfiguration algorithms proposed

in Chapter 2 in terms of the amount of node movement. We developed algorithms to

97

Page 98: Topology reconfiguration for systems of networked autonomous

obtain the initial network tree topology from an arbitrary initial network that minimizes the

amount of movement required to reposition the nodes to achieve the desired network

tree topology. The simulation results showed that the algorithms we developed can

essentially improve the amount of node movement required to reconfigure an arbitrary

initial network to achieve the desired network tree topology.

In Chapter 4, we developed approaches to reduce the aggregate traffic in a

system by reconfiguring the network topology under constraints on the total amount

of movement of the networked autonomous vehicles while preserving the network

connectivity. We developed the network tree selection algorithm to select an initial

network tree with low aggregate traffic from an arbitrary initial connected network

topology. We then developed the network topology reconfiguration optimization

algorithm to reposition the autonomous vehicles in the tree obtained from network

tree selection algorithm to reduce the aggregate traffic while maintaining the network

connectivity under constraints on the total amount of movement of the autonomous

vehicles in terms of the number of edges in the graph that they traverse. We also

provided a comparison of our algorithms in terms of performance and complexity. The

simulation results showed that the combination of network tree selection and network

topology reconfiguration optimization algorithms can improve the aggregate traffic.

In Chapter 5, we proposed techniques to optimize the physical formation of a

system of networked autonomous vehicles to reduce the aggregate traffic under

constraints on the total amount of movement of the autonomous vehicles and network

connectivity. We developed formation reconfiguration algorithms based on that in

Chapter 4 to obtain a final tree configuration that achieves the minimum aggregate

traffic under constraints on the total amount of movement of autonomous vehicles.

The performance and complexity of our developed algorithms were also investigated.

Simulation results were presented to demonstrate the performance of our developed

algorithm in terms of how much they can improve the aggregate traffic from that in the

98

Page 99: Topology reconfiguration for systems of networked autonomous

initial formation. Simulations results showed that formation reconfiguration algorithms

can significantly improve the aggregate traffic.

To conclude, the topology reconfiguration techniques that we developed based

on prefix routing have several nice features in comparison to previously proposed

techniques. They can achieve arbitrary transformation of the network topology, are

perfectly designed for anonymous reconfiguration, and are easily used in systems where

the final topology is to be optimized under constraints on connectivity and movement.

99

Page 100: Topology reconfiguration for systems of networked autonomous

6.2 Future Work

One area of future work will focus on providing performance improvements (for

instance, minimizing the required movement) in the process of transforming from

one connected initial topology to another connected initial topology. Path-planning

techniques are needed that allow mobile vehicles to travel through the physical space

to places where there is no current autonomous vehicle but that maintain network

connectivity. This will require a coupling a more sophisticated graph-based algorithms

with a physical-position control algorithm to move the autonomous vehicles in an

efficient way.

Another area in which future work is needed is to incorporate more realism into the

physical and communications models, including taking into account the dynamics of the

autonomous vehicles and the effects of those on communications, and incorporating

more realistic channel models. For instance, it is desirable to extend this work to include

more realistic physical-layer models, such as those with fading and/or shadowing, which

may cause intermittent connectivity. In addition, the ability to utilize power control for

topology control [54–56] to reduce the amount of movement required or to overcome

fading or shadowing is another approach the should be investigated [57, 58].

100

Page 101: Topology reconfiguration for systems of networked autonomous

REFERENCES

[1] R. M. Murray, “Recent research in cooperative control of multivehicle systems,” J.Dynamic Systems, Measurement, and Control, vol. 129, p. 571, 2007.

[2] J. A. Freebersyser and B. Leiner, “Ad hoc networking.” Boston, MA,USA: Addison-Wesley Longman Publishing Co., Inc., 2001, ch. A DoDperspective on mobile Ad hoc networks, pp. 29–51. [Online]. Available:http://dl.acm.org/citation.cfm?id=374547.374549

[3] F. Giulietti, L. Pollini, and M. Innocenti, “Autonomous formation flight,” IEEE ControlSyst. Mag., vol. 20, pp. 34–44, 2000.

[4] V. Kompella, J. Pasquale, and G. Polyzos, “Multicast routing for multimediacommunication,” IEEE/ACM Transactions on Networking (TON), vol. 1, 1993.

[5] Y. Q. Chen and Z. Wang, “Formation control: a review and a new consideration,”in Proc. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, Aug. 2005, pp.3181–3186.

[6] M. Zavlanos, M. Egerstedt, and G. Pappas, “Graph-theoretic connectivity controlof mobile robot networks,” Proc. of the IEEE, vol. 99, no. 9, pp. 1525–1540, Sept.2011.

[7] M. Zavlanos and G. Pappas, “Potential fields for maintaining connectivity of mobilenetworks,” IEEE Trans. Robotics, vol. 23, no. 4, pp. 812–816, Aug. 2007.

[8] N. Leonard and E. Fiorelli, “Virtual leaders, artificial potentials and coordinatedcontrol of groups,” in Decision and Control, 2001. Proceedings of the 40th IEEEConference on, vol. 3, 2001, pp. 2968 –2973 vol.3.

[9] J. A. Fax and R. M. Murray, “Graph Laplacians and stabilization ofvehicle formations,” CDS Technical Report 01-007. California Institute ofTechnology. Submitted to 2002 IFAC World Congress. [Online]. Available:http://resolver.caltech.edu/CaltechCDSTR:2001.01-007

[10] J. Fax and R. Murray, “Information flow and cooperative control of vehicle formations,”IEEE Trans. Autom. Control, vol. 49, no. 9, pp. 1465–1476, Sept. 2004.

[11] M. Fiedler, “Algebraic connectivity of graphs,” Czechoslovak Math. J., vol. 23, no. 98,pp. 298–305, 1973.

[12] S. Boyd, “Convex optimization of graph Laplacian eigenvalues,” in Proc. Int.Congress of Mathematicians, vol. 3, 2006, pp. 1311–1319.

[13] M. Fiedler, “Absolute algebraic connectivity of trees,” Linear and Multilinear Algebra,vol. 26, no. 1-2, pp. 85–106, 1990.

101

Page 102: Topology reconfiguration for systems of networked autonomous

[14] M. Mesbahi and M. Egerstedt, Graph theoretic methods in multiagent networks.Princeton Univ Pr, 2010.

[15] H. Tanner, “On the controllability of nearest neighbor interconnections,” in Proc.IEEE Conf. on Decision and Control, vol. 3, Dec. 2004, pp. 2467–2472.

[16] A. Ghosh and S. Boyd, “Growing well-connected graphs,” in Proc. IEEE Conf. onDecision and Control, Dec. 2006, pp. 6605–6611.

[17] Y. Wan, S. Roy, X. Wang, A. Saberi, T. Yang, M. Xue, and B. Malek, “On the structureof graph edge designs that optimize the algebraic connectivity,” in Proc. IEEE Conf.on Decision and Control, Dec. 2008, pp. 805–810.

[18] M. De Gennaro and A. Jadbabaie, “Decentralized control of connectivity formulti-agent systems,” in Proc. IEEE Conf. on Decision and Control (CDC), Dec.2006, pp. 3628–3633.

[19] M. Zavlanos and G. Pappas, “Distributed connectivity control of mobile networks,”IEEE Trans. Robotics, vol. 24, no. 6, pp. 1416–1428, Dec. 2008.

[20] G. Notarstefano, K. Savla, F. Bullo, and A. Jadbabaie, “Maintaining limited-rangeconnectivity among second-order agents,” in Proc. Am. Control Conf., June 2006, p.6 pp.

[21] K. Srivastava and M. Spong, “Multi-agent coordination under connectivityconstraints,” in Proc. Am. Control Conf., June 2008, pp. 2648–2653.

[22] D. Dimarogonas and K. Kyriakopoulos, “Connectedness preserving distributedswarm aggregation for multiple kinematic robots,” IEEE Trans. Robotics, vol. 24,no. 5, pp. 1213–1223, Oct. 2008.

[23] F. Knorn, R. Stanojevic, M. Corless, and R. Shorten, “A framework for decentralisedfeedback connectivity control with application to sensor networks,” Int. J. Control,vol. 83, no. 11, pp. 2411–2411, Nov. 2009.

[24] P. Yang, R. Freeman, G. Gordon, K. Lynch, S. Srinivasa, and R. Sukthankar,“Decentralized estimation and control of graph connectivity in mobile sensornetworks,” in Am. Control Conf., June 2008, pp. 2678–2683.

[25] M. Zavlanos, A. Jadbabaie, and G. Pappas, “Flocking while preserving networkconnectivity,” in Proc. IEEE Conf. Decision and Control, Dec. 2007, pp. 2919–2924.

[26] A. Cornejo and N. Lynch, “Connectivity service for mobile ad-hoc networks,” in Proc.IEEE Int. Conf. on Self-Adaptive and Self-Organizing Syst., Oct. 2008, pp. 292–297.

[27] Z. Yao and K. Gupta, “Backbone-based connectivity control for mobile networks,” inProc. IEEE Int. Conf. on Robotics and Automation, May 2009, pp. 1133–1139.

102

Page 103: Topology reconfiguration for systems of networked autonomous

[28] Z. Kan, A. Dani, J. M. Shea, and W. E. Dixon, “Ensuring network connectivity duringformation control using a decentralized navigation function,” in Proc. IEEE MilitaryCommun. Conf., San Jose, California, Nov. 2010, pp. 531–536.

[29] H. G. Tanner and A. Kumar, “Towards decentralization of multi-robot navigationfunctions,” in Robotics and Automation, 2005. ICRA 2005. Proceedings of the 2005IEEE International Conference on, Apr. 2005, pp. 4132–4137.

[30] A. De Gennaro, M.C.; Jadbabaie, “Formation control for a cooperative multi-agentsystem using decentralized navigation functions,” in Am. Control Conf., 2006,Minneapolis, MN, Jun. 2006, p. 6 pp.

[31] M. Meng Ji; Egerstedt, “Distributed coordination control of multiagent systems whilepreserving connectedness,” in IEEE Trans. Robotics, Aug. 2007, pp. 693–703.

[32] M. Hsieh and V. Kumar, “Pattern generation with multiple robots,” in Robotics andAutomation, 2006. ICRA 2006. Proceedings 2006 IEEE International Conferenceon, Orlando, FL, May. 2006, pp. 2442–2447.

[33] Z. Kan, A. P. Dani, J. M. Shea, and W. E. Dixon, “Network connectivity preservingformation stabilization and obstacle avoidance via a decentralized controller,” vol. 57,no. 7, pp. 1827–1832, 2012.

[34] J. J. Garcia-Luna-Aceves and D. Sampath, “Efficient multicast routing in MANETsusing prefix labels,” in Proc. IEEE Int. Conf. Computer Commun. and Networks(ICCCN), San Francisco, CA, Aug. 2009, pp. 1–8.

[35] D. Sampath and J. J. Garcia-Luna-Aceves, “PROSE:scalable routing in MANETsusing prefix labels and distributed hashing,” in Proc. IEEE Conf. on Sensor Mesh,and Ad Hoc. Commun. (SECON), Rome, Italy, Jun. 2009, pp. 1–9.

[36] J. J. Garcia-Luna-Aceves and D. Sampath, “Scalable integrated routing using prefixlabels and distributed hash tables for MANETs,” in Proc. IEEE Int. Conf. on MobileAd Hoc and Sensor Syst. (MASS), Macau SAR, P.R.C., Oct. 2009, pp. 188–198.

[37] A. Drozdek, Data Structures and Algorithms in C++, 2nd ed. Brooks/Cole, 2001.

[38] M. Ji and M. Egerstedt, “Distributed coordination control of multiagent systems whilepreserving connectedness,” IEEE Trans. Robotics, vol. 23, no. 4, pp. 693–703, Aug.2007.

[39] D. Dimarogonas and K. Johansson, “Bounded control of network connectivity inmulti-agent systems,” Control Theory Applications, IET, vol. 4, no. 8, pp. 1330–1338, august 2010.

[40] J. R. Ullmann, “An algorithm for subgraph isomorphism,” J. ACM, vol. 23, no. 1, pp.31–42, Jan. 1976. [Online]. Available: http://doi.acm.org/10.1145/321921.321925

103

Page 104: Topology reconfiguration for systems of networked autonomous

[41] D. Conte, P. Foggia, C. Sansone, and M. Vento, “Thirty years of graph matching inpattern recognition,” IJPRAI, pp. 265–298, 2004.

[42] E. Bengoetxea, “Inexact graph matching using estimation of distribution algorithms,”Ph.D. dissertation, Ecole Nationale Superieure des Telecommunications, Paris,France, Dec 2002.

[43] S. Umeyama, “An eigendecomposition approach to weighted graph matchingproblems,” Pattern Analysis and Machine Intelligence, IEEE Transactions on,vol. 10, no. 5, pp. 695 –703, sep 1988.

[44] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithms,2nd ed. McGraw-Hill, 2001.

[45] R. Burkard, M. Dell’Amico, and S. Martello, Assignment Problems. Philadelphia,PA, USA: Society for Industrial and Applied Mathematics, 2009.

[46] S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi, “Optimization by simulated annealing,”Science, vol. 220, pp. 671–680, 1983.

[47] C. W. Commander and P. M. Pardalos, “A survey of the quadratic assignmentproblem, with applications,” The Morehead Electronic Journal of ApplicableMathematics, 2005.

[48] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theoryof NP-Completeness. W.H. Freeman, 1979.

[49] E. Horowitz, S. Shani, and D. P. Metha, Fundamentals of Data Structures in C++.Summit, New Jersey: Silicon Press, 2007.

[50] R. Jayakumar, K. Thulasiraman, and M. Swamy, “Complexity of computation of aspanning tree enumeration algorithm,” Circuits and Systems, IEEE Transactions on,vol. 31, no. 10, pp. 853 – 860, oct 1984.

[51] H.-C. Chen and Y.-L. Wang, “An efficient algorithm for generating Prufer codesfrom labelled trees,” Theory of Computing Systems / Mathematical Systems Theory,vol. 33, pp. 97–105, 2000.

[52] X. Wang, L. Wang, and Y. Wu, “An optimal algorithm for Prufer codes,” J. SoftwareEng. and Appl., vol. 2., pp. 111–115, 2009.

[53] A. H. Land and A. G. Doig, “An automatic method of solving discrete programmingproblems,” Econometrica, vol. 28, pp. 490–520, 1960.

[54] R. Ramanathan and R. Rosales-Hain, “Topology control of multihop wirelessnetworks using transmit power adjustment,” in Proc. IEEE INFOCOM, vol. 2, 2000,pp. 404 –413 vol.2.

104

Page 105: Topology reconfiguration for systems of networked autonomous

[55] B. Chen, K. Jamieson, H. Balakrishnan, and R. Morris, “SPAN: An energy-efficientcoordination algorithm for topology maintenance in ad hoc wireless networks,” inProc. IEEE/ACM MOBICOM, 2001.

[56] P. Santi, “Topology control in wireless ad hoc and sensor networks,” ACM Comput.Surv., vol. 37, pp. 164–194, June 2005.

[57] S. Subramanian, J. Shea, and W. Dixon, “Power control for cellular communicationswith channel uncertainties,” in Proc. 2009 American Control Conference (ACC),June 2009, pp. 1569–1574.

[58] ——, “Prediction-based power control for distributed cellular communicationnetworks with time-varying channel uncertainties,” in Proc. IEEE Conf. on Decisionand Control, Dec. 2009, pp. 1998–2003.

[59] L. Navaravong, J. M. Shea, and W. E. Dixon, “Physical- and network-topologycontrol for systems of mobile robots,” in Proc. IEEE/AFCEA Military Commun.Conf. (MILCOM), Baltimore, MD, 2011, pp. 1079–1084. [Online]. Available:http://wireless.ece.ufl.edu/jshea/pubs/BomMILCOM2011.pdf

[60] L. Navaravong, J. M. Shea, E. L. Pasiliao, G. L. Barnette, and W. E.Dixon, “Optimizing network topology to reduce aggregate traffic in systems ofmobile agents,” in Models, Algorithms, and Technologies for Network Analysis, ser.Springer Proceedings in Mathematics & Statistics, B. Goldengorin, V. A. Kalyagin,and P. M. Pardalos, Eds., vol. 32. Springer New York, 2013, pp. 129–149. [Online].Available: http://dx.doi.org/10.1007/978-1-4614-5574-5 8

[61] L. Navaravong, J. M. Shea, E. L. P. Jr, and W. E. Dixon, “Optimizing networktopology to reduce aggregate traffic in a system of mobile robots under an energyconstraint,” in Proc. 2012 IEEE Communications Conf., Ottawa, Canada, Jun. 2012,pp. 16–20.

[62] L. Navaravong, Z. Kan, J. M. Shea, and W. E. Dixon, “Formation reconfiguration formobile robots with network connectivity constraints,” IEEE Network, vol. 26, no. 4,July 2012.

105

Page 106: Topology reconfiguration for systems of networked autonomous

BIOGRAPHICAL SKETCH

Leenhapat Navaravong was born on October 11, 1985, in Bangkok, Thailand.

He received his bachelor’s degree in telecommunications engineering with first-class

honours from Shinawatra International University, Pathumthani, Thailand, in 2007,

and his master’s degree in electrical and computer engineering from the University of

Florida, Gainesville, USA, in May 2010. In May 2013, he received his Ph.D. degree in

electrical and computer engineering from the University of Florida, Gainesville, USA.

While pursuing his graduate degrees at the University of Florida, he worked as

a research and teaching assistant in the Wireless Information Networking Group

(WING) Laboratory in the Department of Electrical and Computer Engineering under

the supervision of Prof. John M. Shea. He also worked as a research intern with the Air

Force Research Laboratory (AFRL), Eglin Air Force Base, and the University of Florida

Research and Engineering Education Facility (UF-REEF) in Shalimar, Florida in the

summers of 2011 and 2012.

His research interests are wireless communications and networking with applications

to systems of autonomous vehicles.

106