You are on page 1of 33

Planning Wireless Network using Graph Theory

Made By: πoneers

Mohamed Alaa Elden Atfat


Mahmoud Mohamed Abdul-Hamid
Mostafa Khaled Khalifa
Mostafa Amr Mohamed
Mostafa Magdy Ibrahim
Mostafa Mohamed Rabie
Yousef Tamer Salah-Eldin
Yousef Essam Abobakr

Presented to:
Prof. Samah El-Shafiey El-Tantawy
2 VANET Planning with Graph Theory

Abstract
Today, autonomous vehicles industry is a main field of research and development. This trend
is going to increase due to high demand. But high ambitions come with hard challenge. All these
vehicles need to get connected together in a harmonious system. Decentralized Ad-hoc 1 networks
wireless communication is the key. Wireless Ad-hoc networks witnessed rapid development through
the past few years, and it is expected that this development is ongoing due to their prevalence in different
domains and applications. There are many issues and challenges that this technology faces during its
implementations. To illustrate how Vehicular Mobile Ad hoc Networks can be visualized and
simulated, it is needed to create a suitable mathematical model based on formalized notions and
concepts of Graph Theory to model the network proximity of the devices. It is needed to simplify such
network and reduce its redundant connections and test the effect of these modifications on the efficiency
of the network in terms of its variables. Based on these formulations, a suitable simulation environment
is to be created to test these several methods and variables related to the network and its efficiency.

I) Introduction
Many wireless networks are implemented in the centralized manner where the communication
is established through centralized access point routing devices. This limitation of centralized services
and a managing central point can be vulnerable to various situations which may interrupt the persistent
communication between the network devices (e.g.: Emergency situations and natural disasters which
are bound to happen). This is an infrastructure model that for some reason when failure occurs in the
connection with the central point, no device can connect to the internet. For this reason, a decentralized
model (Ad-hoc model) for wireless communications have found many interests and applications. In
addition, centralized systems are impractical in case of constantly changing congestion.
Many kinds of interconnected devices find the need of decentralized connections important. In
particular, the kind of devices that have no need for a centralized routing system which themselves can
act as routers and networking devices. Moving further to applications that involve dynamic mobile
“non-static” devices. This creates another kind of model for decentralized Ad-hoc systems which are
Mobile Ad-hoc NETworks “aka: MANET”. Many systems can utilize these kinds of devices, such as
smart devices and vehicles. As a subcategory of MANET systems, Vehicular Ad-hoc NETwork “aka:
VANET” models, in which vehicles shape the main interconnected devices of the network, can be
introduced. This model can be thought of as a sub-category of the MANET model, but it introduces
many challenges and many unique features enough to make it a separate category of its own.
Myriad systems find the need of VANET. Such systems can be:
1. Traffic management systems and sensor networks.
2. Vehicles used in commercial distributions and advertisement purposes can be grouped into
interconnected communities, amazon delivery drones are examples.
3. Self-driving cars, Tesla is example.
4. Emergency handling services where the use of central devices can be interrupted in case of
destructive emergencies.
5. Military applications.
6. Factories and automated storage, amazon warehouse is example.

1
Ad-hoc: It comes from Latin which literally means “For this situation”. In English, it is used to describe
something that has been formed for a special and immediate purpose, without previous planning.
VANET Planning with Graph Theory 3

The system needs to be efficient on multiple grounds:


1. Connectivity: This criterion is concerned with the cost associated with transmitting the data
from device A to device B in the network. Devices A and B may be connected by intermediate
devices.
The cost includes the latency between receiving and transmitting the data and the economic
cost of operating the connection. If the distance increase between two connected devices, more
power will be required as power varies quadratically with distance.
2. Routing: Where it is needed to establish the system to route the signals efficiently whether this
efficiency is achieved through the maintaining the stability of the network or maintaining low
energy consumption.
This brings many necessary questions:
- How can ad-hoc networks be modelled mathematically? Usually, an ad-hoc network is
modelled as graph “A collection of nodes and edges” and graph theory properties are applied
on this model and extended further for optimization purposes?
- How can mobility be integrated in an ad-hoc environment? Since it is more interesting to study
our devices in motion, it is needed to integrate mobility into the used model.
A MANET environment needs to achieve stability. Stability is achieved in infrastructure networks since
there are central static dependencies in such a network. With the existence of dependencies, which are
devices where the connections are most dependent on “In the case of infrastructure networks, they are
the central access points”, the network is always guaranteed to be stable. But since ad-hoc networks
have no central points, there are no clear dependencies in the network. In other words, the stability of a
network is a function of its dependencies. It is needed to find a way to optimize the network in terms of
the stability.
It is also needed to track the state of the energy consumption of a MANET based system and how to
optimize it. In an intuitive manner, energy consumption needed to connect two nodes together is
dependent on the distance between the two nodes.
It is obvious that there are certain connections in an ad-hoc network that may complicate the routing of
a signal efficiently and may even affect the stability and increase the energy consumption needlessly.
This process of removing these unneeded connections is called the Topology Control of the network.
Another question is brought here:
- How can controlling the connections of a network be integrated in this model to achieve
efficiency in terms of the different discussed parameters?
There are many other different parameters upon which the connections can be controlled such as the
need to maintain the security of the network which is another interesting challenge faced in ad hoc
networks.
In next sections, we are going to discuss the process of modelling of ad hoc networks. In Section (II), a
literature review is done to shed some light on the different related works on this matter and different
approaches and methods of modelling are discussed. In Section (III), the used and elected suitable
mathematical model will be discussed by setting some important mathematical background of Graph
Theory and showing how this model is incorporated and how certain parameters are studied on this
model. In Section (IV), the suggested model is used to create a suitable simulation environment. This
environment is used to experiment our suggested model and algorithms and test how they may achieve
efficiency in terms of the different parameters.
4 VANET Planning with Graph Theory

II) Literature Review and Related Works


Historical Review
The life cycle of mobile ad hoc network classified into first, second and third generation.
Present ad hoc networks are considered the third generation. The first generation of ad hoc network can
be traced back to 1970’s. In 1970’s, these are called Packet Radio Network (PRNET)
The Defense Advanced Research Project Agency (DARPA) initiated research of using packet- switched
radio communication to provide reliable communication between computers and urbanized PRNET.
Basically, PRNET uses the combination of Areal Location of Hazardous Atmospheres (ALOHA) and
Carrier Sense Multiple Access (CSMA) for multiple access and distance vector routing.
The PRNET then evolved into the Survivable Adaptive Radio Network (SURAN) in the early 1980’s.
SURAN provides some benefits by improving the radio performance (making them smaller, cheaper
and power thrifty). This SURAN also provides resilience to electronic attacks.
Around the same time, United State Department of Defense (DOD) continued funding for programs
such Globe Mobile Information System (GloMo) and Near-Term Digital Radio (NTDR). GloMo make
use of CSMA/CA and TDMA molds and provides self-organizing and self-healing network (i.e.: ATM
over wireless, Satellite Communication Network). The NTDR makes use of clustering and link state
routing and organized an ad hoc network. NTDR is worn by US Army. This is the only “real” ad hoc
network in use.
By the growing interest in the ad hoc networks, various other great development took place in 1990’s.
The functioning group of MANET is born in Internet Engineering Task Force (IETF) who worked to
standardized routing protocols for MANET and gave rise to the development of various mobile devices
like PDA’s, palmtops, notebooks …. etc. Meanwhile the Development of Standard IEEE 802.11 (i.e.:
WLAN’s) benefited the ad hoc network. Some other standards are also developed that provide benefits
to the MANET like Bluetooth and HIPERLAN.
Simulation Target and Criteria
In the past thirty years, simulations and research were done to measure myriad aspects of VANET
connection system. furthermore, research was done to investigate the best efficient algorithms on
multiple grounds to get all the vehicles connected.
Primarily, four criteria were used to judge an algorithm which include: connectivity, stability,
congestion, and energy consumption.
1. Connectivity: It is the probability at any time that all vehicles following an algorithm are
connected whatever their configuration. There should be no isolated vehicles.
The closer the probability to 1 the more efficient the algorithm used.
2. Stability & congestion:
- Stability: The stability of a network is a function of the dependencies which are the devices
on which the connections depend for routing.
- Congestion: It is the maximum number of connections a single node must handle to deliver
a data packet.
3. Energy consumption: The average energy taken by the vehicles to connect to each other.
One criterion can affect the others positively or negatively. stability and energy consumption can have
inverse effects, since the least delay (the distance covered by the routed signal) could be achieved by
connection in a straight line, however that could consume more energy compared to sending the data
packets to one or more intermediate node to act as bridges. Congestion also varies directly with
VANET Planning with Graph Theory 5

connectivity. To get a large network connected it is more likely to have nodes handling large number
of connections.
The aim of algorithms and research today is to find a sweat spot between all those criteria to achieve
the highest efficiency possible.
Edges, which indicate a connection, between two nodes can be assigned based on different conditions.
This is called, formally, proximities.
Basic algorithm, but inefficient, is the flooding algorithm. It is similar to brute force technique in other
contexts. In this algorithm, the transmitter sends the data packet to all its neighbors which in turn send
it to all their neighbors and so on till data reach the receiver. This algorithm has multiple flaws.
Congestion is at its highest, which can cause practical limitations. In reality, connection devices have
limited number of connecting channels. Thus, after reaching the limit of a certain node, it can hinder
the network performance.
More efficient algorithms choose proximities like Unit Disk Graph (UDG) in which two nodes are
connected only if they within the connection radius of each other’s.
Depending on the proximity model used, it is also needed to control the connections in the network,
another approach is needed which typically uses graph spanner methods such as: K-Nearest Neighbors
Graph (K-NNG) in which two nodes connect if they belong to the nearest K neighbor set. There are
many others like Minimum Spanning Tree (MST), Relative Neighborhood Graphs (RNG), and Gabriel
Graphs.
After determining the topology of the graph by the proximity, shortest path algorithms are used
to determine the geodesic between any two nodes to maintain the stability of the connection and network
congestion. One of the best-known algorithms are Dijkstra algorithm.

Fig.1: A heap structure illustrating Dijkstra Algorithm

Controlling of Connections in Ad-hoc Networks


In normal circumstances, a Unit Disk Graph model is used. Extending this model further in [5], it is
proposed that a virtual backbone of the network can be created by creating a connected dominating set.
A dominating set “DS” of a graph G, is a set V’ such that V’ ⊂ V(G). I.E.: It contains some of the
vertices of G. The vertices of a DS are chosen such that, the vertices of G are either elements of this set
or adjacent to vertices which are elements of this set. The vertices of the graph which are elements of
the set are called dominators and the vertices which do not belong to the set are called dominatees. A
DS is connected if it can be used to induce a connected subgraph of G. For the sake of simplicity, the
nodes in these networks are assumed to be static. This algorithm can be extended with further research
by considering the mobility of the nodes. For the purposes of relaying signal efficiently, minimize power
consumption and simplify the connectivity, it is needed to find the minimum number of nodes possible
6 VANET Planning with Graph Theory

to create a connected dominating


set. In this case we need to create
a minimum connected
dominating set “MCDS”.
Dominators are elected by
creating a maximum independent
set of the graph. An independent
set of a graph G is a set which
contains vertices of G such that,
every pair of vertices has no edge Fig.2: (a) UDG model (b) Backbone model with MCDS algorithm
between them. It is desired to find
a maximum independent set “MIS”. An MIS of a graph G is a set which contains the maximum possible
number of vertices of G that can create an independent set. The algorithm creates an MCDS in two
phases. The first creates an MIS of the graph and the second uses this MIS to create an MCDS.
In this MCDS algorithm, where the minimum number of dominators are to be chosen, this imposes
another important question: Given the transmission range of n number of nodes, which are distributed
randomly in a large area A, is r, what is the minimum number of nodes to ensure the connectivity of the
network? In the light of this, the theory of random geometric graphs is used. By calculating the
probability, the average node density in the area can be estimated through maximizing the probability
of the link existence.
The theoretical analysis matches well with the simulation results. By creating a simulation based on
these mathematical models and by using the proposed MCDS algorithm and comparing it to other
algorithms, certain criteria were measured to test performance including the normalized MCDS size
(The average number of nodes of the MCDS formed by the algorithm) and the normalized
communication costs (A criterion that measures the performance of the techniques used by the
algorithm most specifically the routed messages used in the creation of the MIS). The simulation
environment aims to test the connectivity of the network based on the random geometric graph model.
The simulation results shows that the results of the algorithm match well with the optimized metrics of
the network. The algorithm proved to be fully localized and have significant improvement over the
mentioned criteria. The results show that the approximate algorithm is very accurate, and it also shows
that the algorithm is better than other distributed algorithms over several factors.
Introducing Node Mobility to our network through VANETs
There are several proposed applications for VANETs. These applications include but are not
limited to, propagation of travel alerts, maintenance of traffic status and generally in user defined
applications. In vehicular communication networks, each node makes bidirectional connectivity with
other nodes. In a vehicular communication system. For each node in a VANET system, there are some
unique features, such as high mobility of the nodes “The system in general is characterized by the
dynamic network structure”, low processing speed and low memory. This in turn, is what makes
VANET systems more like a separate category of MANET systems instead of being a sub-category of
MANETs. In [6-7-8], it was attempted to propose a model for VANET systems based on the concept
of an evolving graph. The concept of an evolving graph cannot be applied directly to VANETs, where
it was previously used to model MANETs and its connectivity issues. The objective of using evolving
graphs is to create a link reliable network, where the whole network can be guaranteed to always be
connected. In light of the theory of evolving graphs, a CRP “Consistent Routing Protocol” is proposed.
First, an evolving graph is defined to be a normal graph with extended features, each edge is
associated with a time interval which determines the period of existence of the edge. The link reliability
can be defined as the probability of existence of an edge at a certain instant.
VANET Planning with Graph Theory 7

In [6], it was proposed to create a VANET based reliable graph “VbRG” that utilizes the theory of
evolving graph and concentrates on the reliability of the links. CRP is aimed at achieving a reliable
route between source and destination. For this purpose, a source node is elected, which predicts a
reliable path between the neighboring nodes. Accordingly, it is clear how VANET is different from
other Mobile Ad-hoc systems, where the communication link between the nodes can break frequently.
There are many parameters that affect the reliability of a link which are: network density variation,
velocity of vehicles, congestion in wireless channels, …. etc. VbRG enables a way to connect vehicles
to each other. Because of the nature of the evolving graph where the edge existence changes with time,
the usual concept of path is needed to be generalized. This brings the concept of a journey. In turn, the
usual Dijkstra algorithm used to compute the shortest path between two nodes needs to be modified.
This brings a new version of the Dijkstra algorithm – the RG-Dijkstra algorithm. The analysis of the
network is based on a set of assumptions. It is assumed that the vehicles move with constant velocities.
The source node updates the value of the link reliability between different links periodically. The
analysis results of the proposed RG-Dijkstra and CRP show that the most reliable journey is found by
the algorithm. The analysis results show that CRP improves over other protocols.
Probabilistic Connectivity Models
In [9], connectivity analyses were done based on probabilistic measures. One of the applications
of the graph theory in VANETs is to analyze the connectivity probability of the network, which is a key
aspect in planning vehicular networks, in [9] two different graph-based methods for VANETs
connectivity analysis were discussed, and it was shown that they capture the same behavior as estimated
using probabilistic models. Tools from graph theory were used in simulating and estimating the
instantaneous connectivity probability of directed highway VANETs resulting when different
communication ranges are employed by different vehicles.
The two graph-based algorithms discussed are the Laplacian-eigenvalues and the Adjacency exponent
approaches, and it was shown that the major difference between the two approaches is that the
Laplacian-based method determines whether all vehicles are connected altogether as a single mesh
while the adjacency exponent approach determines whether there exists a path between the two end
vehicles. [9] establishes the concept of connectivity probability, it is the probability that the network
forms a single connected component. This probability can be determined directly or by finding the
probability of network clustering first.
Due to mobility, network topology changes with time, which, in turn, changes the connectivity
continuously. Most of previous studies have relied on the instantaneous connectivity analysis. We used
to study the average behavior of the network under certain conditions. The average network behaviour
is studied through averaging the network connectivity of each considered realization over large number
of network realizations under the same conditions. These conditions include node density,
communication range, and spatial distribution of nodes.
Enhancing VANET Connectivity through a Realistic Model for RSU Deployment on Highway
In [10], some basic keywords and basic terminology are coined:
- On-board unit (OBU) is a device which exists in the vehicle which form mobile node. OBU is
responsible for providing information collected from sensors deployed in the vehicle. Also,
OBU is responsible for communicating with the other vehicles. this operation is called vehicle
to vehicle communications (V2V) .
- V2V is responsible for exchanging information about speed and position of neighboring
vehicles. V2V plays a great role in helping to avoid accidents and the problem of traffic jams.
- The roadside units (RSUs) are towers existing on the side of roads. They are considered as an
access point or router. They receive and send data from and to (OBU) in vehicles. Although the
8 VANET Planning with Graph Theory

data are sourced and destined from the moving vehicle nodes, the RSUs play a vital role, acting
as intermediary units between the vehicle nodes, in ensuring entire communication process.

-
Fig.3: RSUs as a network connectivity enhancement asset

The aim in [10] is to increase the connectivity of VANET through using minimal number of RSUs
efficiently with the best location on the highway.
There are many models to enhance connectivity in VANET system such as:
1- Deploying RSUs as nodes which are set uniformly on the road.
2- The RSU deployed in traffic lights according to high density of the area.
3- Mathematically modelling the network of the road to find optimal locations to deploy the RSUs.
Proposed model for RSUs deployment for a given segment of highway:
1- Compute traffic measures for various times of the day .
2- Initialize the RSUs positions.
3- Follow this basic algorithm:
Distribute vehicles in the given segment to rebuild the highway state to create a virtual snapshot The
V2V network is modelled as a graph. If the resulted graph is not connected “The graph can be divided
into two isolated partitions”, then locate gaps in the road and distribute RSUs within each gap.
When taking into consideration the increasing of performance depending on real data and experiment,
and to evaluate the performance of the proposed system, real life data were conducted in San Diego,
California in March of 2019 .

Fig.4: Connectivity versus node density depicted as a function of time


VANET Planning with Graph Theory 9

III) Mathematical Modelling


A- Graph Theory – Basic Introduction and terminology
There are many objects, whether purely mathematical or engineering elements, that can be
abstracted with the concept of a graph. Geometric elements such as points and connector line segments
“which are usually characterized by Euclidean length” can be abstracted by a graph. Graphs find their
applications in computer science-related concepts such as the abstraction of the file system as a tree –
a type of graph. In this research, ad hoc networks are abstracted as graphs that utilize certain algorithms
to achieve efficient operations. For all these purposes, formalizing the concept of a graph as an abstract
mathematical object is needed.
Def.: Graph: A graph G is an ordered pair of two sets (𝑉, 𝐸), typically written as 𝐺 = (𝑉, 𝐸). The set
V, typically written as 𝑉(𝐺), is a finite nonempty set of objects called Vertices (s. Vertex). The set E,
typically written as E(G), is a set of elements which are finite 2-element subsets of V, called Edges.
Vertices can be sometimes referred to as nodes or points, while edges can sometimes be referred to as
links or lines. According to this definition, it can also be referred to graphs as simple undirected
graphs.
Usually, graphs are represented and visualized by diagrams where nodes are represented by geometric
points and edges are represented by connector line segments connecting these points. In Fig. 1, a graph
is illustrated which contains 6 nodes and 8 edges.
Two nodes are said to be adjacent “neighbors” if they have an
edge connecting both of them. In Fig.5, we can see that A and B
are two adjacent nodes. An edge is said to be incident on a node
if the edge is connected to this node.
The degree of a vertex v “𝑑𝑒𝑔(𝑣)” is the number of edges
incident on this vertex. A vertex whose degree is equal to zero is
referred to as an isolated vertex. Fig.5: A typical illustration of a graph

The order of a graph G where 𝐺 = (𝑉, 𝐸), is the cardinality of V


and the size of G is the cardinality of E. A graph is trivial if its order
is one “It has only one vertex”.
Edges can be assigned numbers, which are referred to as the weight
or the cost of the edge. A graph with weights assigned to its edges is
called a weighted graph. The weight of the graph is defined to be
the accumulative sum of the weights of its edges. For illustration, in
Fig.6: An example of a weighted graph.
Fig.6, a weighted graph is shown and accordingly the graph in Fig.6
has a weight of 13.

A graph H is a subgraph of G if 𝑉(𝐻) ⊆ 𝑉(𝐺) and 𝐸(𝐻) ⊆ 𝐸(𝐺).


I.E.: H is a part taken out of G.
If H has the same vertex set as G, then H is a spanning subgraph of
G (as in Fig.7).
Fig.7: A spanning graph of a graph G
The normal definition used for graphs here is also used to refer to what contains the same vertices as G
can be called simple undirected graphs. They are undirected since
edges have no sense of direction (i.e.: The edges are said to be incident on two nodes, but the edge is
not directed from a node to another). To extend this definition and to make the edges hold a direction,
Digraphs can used.
10 VANET Planning with Graph Theory

Def.: A Digraph DG (aka.: Directed Graphs) are defined in a similar manner to a normal undirected
graph. A digraph DG is defined as an ordered pair of two sets (V, E). V (also written as 𝑉(𝐷𝐺)) is the
traditional set of vertices of the graph DG, while the set E is a set of ordered pairs (𝑣 , 𝑣 ) where 𝑣 , 𝑣
∈ 𝑉(𝐷𝐺). Here, E is not a set of two element subsets, because there is no order in sets.
This definition extends the concepts of edges to hold directions. An edge directed towards a certain
node, is called an in-edge of the node, while an edge directed away from the node is called an out-
edge of the node. The concept of a degree is extended then to hold this information. The indegree of a
node is the number of in-edges incident on the node, while the outdegree of a node is the number of
out-edges incident on the node. If an edge is directed from 𝑣 𝑡𝑜 𝑣 , it is said that 𝑣 is a predecessor
of 𝑣 , and 𝑣 is a successor of 𝑣 .

Connectivity:
Def.: A walk is a sequence of adjacent vertices (v0, v1, v2, ……, vk). The length of the walk is the number
of edges incident to these nodes which is equal to k.
A walk, as its name suggests, is a concept which abstracts moving around or routing from a certain
point to reach another point in the graph. In Fig.5, to move from A to F, we can follow:
(𝐴 – 𝐷 – 𝐸 – 𝐹) or (𝐴 – 𝐵 – 𝐶 – 𝐸 – 𝐶 – 𝐹).
Def.: A path is a walk where all the vertices are different. In this context, the walk (𝐴 – 𝐷 – 𝐸 – 𝐹) is
considered a path, but (𝐴 – 𝐵 – 𝐶 – 𝐸 – 𝐶 – 𝐹) is not.
Two vertices are connected if they have a path between them. A graph G is connected if every pair of
vertices in 𝑉(𝐺) are connected, and accordingly the graph in Fig.5 is an example of a connected graph.
When the concept of the connectivity of a graph is used with weighted graphs a popular problem arises
which is the Shortest Path problem. The shortest path between two nodes is the minimum weight
path (the path of the least accumulative sum of weights) between the two nodes. This problem is an
important problem in this research, since it is related one of the main concerning parameters in ad-hoc
networks which is the delay. In 1956, Edsger W. Dijkstra proposed an algorithm to solve the shortest
path problem.
Dijkstra’s Algorithm to solve the Shortest Path problem:
Dijkstra’s Algorithm can be used to compute the
shortest path from a source node to every other node
in the graph. It starts by assuming all nodes are
unvisited and by initializing the shortest paths from
the source node to every other node of the graph to
infinity and initializing the shortest path from a
node to itself with zero.
We desire to find the shortest paths from source
node A to any other node in Fig.8
Fig.8: A weighted graph to illustrate Dijkstra’s Algorithm
1- We start by visiting an unvisited node N
and compute the weight of the path W from its adjacent unvisited nodes through the shortest
path from A to N.
The first unvisited node which is encountered is A itself so the weights of the paths from its
unvisited neighbors B and D through the shortest paths from A to A “which is zero” are
computed.
2- We compare W to the previously computed value of the shortest paths. If W is less than the
previously computed value of the shortest path, we update the shortest path from A.
VANET Planning with Graph Theory 11

Since we initialized the shortest paths from A to B and from A to D


with infinity, the value of the shortest paths will be updated with 6
and 1 respectively.
3- We record/update the adjacent vertex from which this shortest path
was computed if the shortest path is updated.
Since the newly computed shortest paths were found through A, the
shortest path from A to B and from A to D is marked to be through
A.
4- We add N to the list of visited nodes. So, A now is removed from
the list of unvisited nodes and marked as visited.
Fig.9: The final form of the tracing table showing the
These steps are then iterated until all the nodes are visited. shortest paths from node A to all other nodes in Fig.8

These steps are usually visualized and traced by creating a table (as shown in Fig.9) which records the
values of the currently computed shortest paths from every node to A, and the adjacent vertex “Previous
Vertex” through which this shortest path was taken.
Trees:
If a walk starts and ends with the same node, it is referred to as a closed walk. A closed walk where
every vertex in the walk is different is called a cycle. A graph is acyclic if there is no cycle in the graph,
otherwise the graph is cyclic.
Def.: A tree can be defined as an acyclic connected graph. In a tree, nodes with degree of 1 are called
leaves.
Fig.10(a) is an example of a tree while
Fig.10(b) is not an example of a tree
because it contains a cycle (𝐵 − 𝐶 − 𝐺 −
𝐹 − 𝐵). In Fig.10(a), it can be seen that
nodes F, G and E are leaves.
Trees have an interesting property that
every pair of nodes on the tree has only
one path connecting them. (1)
One of the most interesting problems Fig.10
related to trees is to find a spanning tree.
Def.: A spanning tree T of a graph G is a spanning subgraph of G that is a tree.
Indeed, for a simple graph G, there are many different ways to create a spanning tree from a given graph
but mostly we are concerned with the spanning tree with the minimum weight. This is a known problem
called the Minimum Spanning Tree Problem (MST). This problem will be thoroughly discussed later
in section.
Trees find many applications in data structure objects and algorithms, particularly in this research, they
are used as a means of topology control of mobile ad hoc networks, which will be thoroughly discussed
later.
Adjacency Matrix:
Graphs can be represented in linear algebra by using types of matrices called the Adjacency Matrix.
12 VANET Planning with Graph Theory

Def.: The Adjacency Matrix 𝐴 × of a graph 𝐺 where |𝑉(𝐺)| = 𝑛, is a matrix which has the vertices
of 𝐺 as both rows and columns of the matrix. To represent the presence of an edge incident on nodes 𝑣
and 𝑣 , entry 𝑎 is equal to 1, otherwise it is equal to zero.

In this sense, 𝐴 is a binary matrix. Adjacency matrices have some interesting properties.
If we take powers of the matrix 𝐴 of a graph 𝐺, the number of walks between the nodes can be
determined.

Theorem: Assume 𝐴 is the adjacency matrix of a graph A. Assume 𝑃 = 𝐴 .


Then the value of 𝑝 represents the number of k-length walks between vertices vi and vj.

There is another fact that can be deduced from this theorem: The degrees of the nodes can be obtained
from the main diagonal of 𝐴 .. For a vertex 𝑣 ∈ 𝑉(𝐺), and assuming B = 𝐴 ., then deg(vi) = 𝑏 .
The proof of this theorem can be found in [12].
B- Proximity Model based on Graph Theory for Ad hoc networks
After having a basic introduction to the important concepts of graph theory, it is needed to utilize these
abstractions in the modelling of ad hoc networks.
In ad hoc networks, there is no centralized infrastructure so, the only criterion that matters in what
establishes the connection is if the devices are able to connect or not, since the presence of an
infrastructure is not required. For two devices to be connected directly such that messages require single
hop routes, the two devices need to be in the transmission range of each other, otherwise no direct
connection can be established between them.
This concept can be abstracted through Graph Theory by representing the devices as nodes of a graph
and the direct connection between them is represented as an edge incident on the two nodes. The
presence of the edge between two nodes depends on the transmission range of the two nodes, so
commonly, the transmission range of a certain node is represented by a circle centered at the node.
Assuming the transmission range of all the nodes are the same and equal to ro, this circle is called the
Unit Disk.
An edge in the graph is present if a node is inside the
unit disk of another node. This proximity model of the
ad hoc network is then called the Unit Disk Graph
Model (UDG).
The Euclidean distance between any two directly
connected devices, is represented by weights that are
assigned on the edges of the UDG, so usual graph
algorithms like Dijkstra’s Algorithm and the MST
algorithm, that will be discussed later, can be used on
Fig.11: Unit Disk Graphs to model MANETs
the UDG since it is a weighted graph.
Mobility Model
There is no certain mathematical mobility model used to model the motion of usual devices. The
mobility of nodes is assumed randomized with no certain model that determines the direction or the
velocity of the nodes, but still constrained to the directions of the pre-described roads in which the
devices move.
VANET Planning with Graph Theory 13

To integrate mobility in our proximity graph model, one can think that the UDG is constantly changing
by updating the weights of the edges and keeping track of the distances between the nodes and their
changes to update the edges and the UDG accordingly.
Stability of a network
Routing is said to be stable if it is guaranteed to be routed without error or rerouting. It is assumed that
the stability is heavily affected by the delay of the routing (The distance covered by the routed signal).
A connection is unstable then if the connections usually use paths with long distances for routing. We
define the Average Path Length of a certain topology to be the sum of the weights of the edges divided
by the number of weights in the graph. A topology with high average path length is said to have a high
dependency, since high values for the average path length are usually associated with long paths routing
so the centrality of this network is low. In this case, the connection is more likely to be unstable. In
other words, high values of average path lengths is associated with expected lower stability of the
network and vice versa.
Energy Model
In this research, a simplified energy model to describe the needed energy consumption is used. It is
assumed for relaying messages efficiently from a node to another, the message should reach the
recipient with a determined constant intensity Io. According to the inverse square law, the intensity is
inversely proportional to the square of distance travelled by a wave. To ensure that the intensity of the
signal received by a recipient node is always constant and equal to Io, the sender node should relay the
signal with a power P such that:

𝑃 ∝ 𝑟 (2)
where r is the distance between the two nodes, assuming they both lie in the transmission range of each
other. Accordingly, the energy consumption due to routing a message can be calculated and optimized.
This model does not consider the energy requirements of individual nodes or the physical interactions
of the waves leading to interference. The analysis of the energy consumption taking into consideration
these two points is another interesting topic that can be extended in further research.
C- Topology Control Mechanisms of UDG
Since there is no existent infrastructure in ad hoc networks, there are several challenges faced, which
are maintaining the connectivity of the network and routing the messages efficiently through regulating
the energy consumption and minimizing the delay. To address these issues, topology control is needed.
Topology Control is a process that involves the filtering of unneeded connections in the network to
focus on a certain measure. The measure upon which topology control is focused may differ. There are
different types of Topology control mechanisms according to which measure the network is aimed at.
In this research, we are primarily focusing on the Topology Control of Routing.
Maintaining routing efficiently happens by choosing a certain topology which is a part of the original
network through electing certain nodes in the network which are responsible for routing the messages
from the now “child node” to any other destination “child” node.
This approach may seem more like “centralizing” the network since there is usually no central point in
an ad hoc network. The key point to this approach is the “central point(s)” chosen through topology
control algorithms are not fixed and, due to the dynamic nature of a Mobile Ad hoc network, are subject
to constant change as the nodes move apart. So, nodes which at a certain moment took part in the control
of routing may be later child nodes and vice versa.
14 VANET Planning with Graph Theory

Three types of Topology Control Mechanisms are discussed in this paper:


- Minimum Connecting Dominating Sets
- Minimum Spanning Trees (MST)
- Gabriel Graphs (GG)
It is of our concern to compare the efficiency of each method in terms of minimizing the delay and
energy consumption.
Minimum Connecting Dominating Sets (MCDS):
A Dominating Set (DS) of a graph 𝐺 = (𝑉, 𝐸) is a set such that
𝐷𝑆 ⊆ 𝑉(𝐺), where the vertices of G are either in DS or adjacent
to vertices that are in DS.
A Connected Dominating Set (CDS) of a graph G, is a set which
induces a connected graph. It is usually required to find the set of
minimum cardinality which satisfies this condition. In this case,
the set is called a minimum connected dominating set (MCDS)
of the graph. Choosing an MCDS aims at electing a virtual
backbone of the network which is responsible for routing in the
UDG. The vertices of the MCDS are called dominators, while the
vertices of the graph which are not in the MCDS are called Fig.12: Nodes 3, 4, and 6 are elected in (b) as the
backbone of the graph in (a)
dominatees. Unfortunately, the problem of finding an MCDS of
a connected graph is not a simple problem and that’s because it is
NP-complete2.
For this reason, the algorithm proposed in this research is a heuristic
algorithm. It utilizes the degrees of the nodes to choose the
components of the backbone and hence, we call this algorithm the
d-MCDS algorithm “The d stands for degree based”.
d-MCDS algorithm:
The algorithm first assumes that all the nodes of the graph are
uncovered. The algorithm executes as follows:
1- Choose the node with the maximum degree to be a
dominator.
2- Mark the dominator node and the adjacent nodes as covered
nodes.
3- Update the degrees of the nodes of the graph such that the
degree of the node is updated as the number of adjacent
uncovered nodes.
These steps are iterated until all nodes become covered.
Analysis of the d-MCDS algorithm:
This algorithm has an advantage since the backbone can be tracked
as the topology changes and modify the dominators if a dominator Fig.13: A flowchart of the d-MCDS Algorithm

2 NP-complete Problems: NP stands for nondeterministic polynomial-time. They are a class of problems whose decision form

“verifying if a given solution is an optimal solution” can be solved in polynomial time, but their selection form “finding an
optimal solution” have no known solution in polynomial time. Usually, these problems have heuristic algorithms which
execute in polynomial time and can be used to get close to the optimal solution.
VANET Planning with Graph Theory 15

is disconnected from other several nodes. In other words, instead of executing the algorithm once again
to create the topology from scratch at every change, maintenance can be integrated to modify the
topology.
Minimum Spanning Trees (MST):
In Section (III.A), the concept of trees was introduced and
the problem of finding an MST was introduced. It is needed
to propose an optimized algorithm that computes the
solution. In this research, the proposed algorithm is
Kruskal’s Algorithm.
Kruskal’s Algorithm to find MST:
Given a connected graph G, it is needed to find an MST of Fig.14: The MST of the graph reduces the number of
G. The algorithm is executed by growing a subgraph H of edges to simplify the route between any two nodes
G through adding edges one by one.
The algorithm executes as follows:
1- Sort the edges of G in an ascending order according to
the edge weights.
2- Add the edge of minimum weight to the subgraph H.
3- If after adding the edge to the subgraph H, H becomes
cyclic “There is at least one cycle formed inside H”,
Remove the edge from H.
4- Else keep the edge in H and mark this edge as visited
Steps 2-4 are iterated on all unvisited edges until the subgraph H
spans G “All the nodes of G are added in H”
Analysis of Kruskal’s Algorithm:
The worst-case complexity of the Kruskal’s algorithm is
𝑂(𝐸𝑙𝑜𝑔𝑉) expressed in Big-O Notation, where E is the size of
the graph and V is its order.
This tells us that Kruskal’s Algorithm is efficient on large
graphs.
MSTs and MCDS both have a common feature which is, the
formed subgraph is a tree, which can facilitate routing where the
process of finding a path between two nodes can be achieved
through trees directly according to (1). Fig.15: A flowchart of the Kruskal’s Algorithm

Gabriel Graph (GG):


Gabriel graphs in a straightforward manner have an additional
modification on UDG where an edge exists between two nodes in the
graph, if the circle whose diameter is the edge centered at the midpoint
between the two nodes, has no node of the graph inside of it other than the
two original end nodes. It is a simple, yet effective algorithm since it is
most likely to eliminate by this method, edges with large weights, which
Fig.16: The condition of
can be efficient in optimizing certain parameters. existence of an edge in a GG
16 VANET Planning with Graph Theory

Maintaining Connectivity:
The problem of maintaining the connectivity of the UDG as time passes is related to the number of
existing nodes on a given area with a certain transmission range.
In [5], the issue of the connectivity was calculated based on probabilistic measures. It uses the nearest
neighbor method to solve this problem and guarantee that there is no isolated node in the network with
a very high probability.
The equation that relates the probability of maintaining constant connectivity as a function of the
number of nodes and the transmission range can be deduced as follows:

𝑃 = (1 − 𝑒 ) (3)
Where P is the probability of maintaining a connected network, n is the number of nodes in the network,
A is the area on which the network exists and ro is the transmission range of the nodes.
Equation (3) can be used to calculate the minimum number of nodes needed to maintain connectivity
with a high probability “nearly 𝑃 = 0.99” given the area of the network and the transmission range.
D- Test Criteria
It is needed to test the topology control algorithms mentioned above on a VANET system. This feat can
be achieved by taking snapshots separated by constant periods from the mobile environment. It is
required to compare the different topology control algorithms in terms of the stability (which is mainly
affected by the delay which is proportional to the Euclidean distance of the path taken by the routed
message) and in terms of energy consumption. These data are needed to be compared to each other and
the optimal stability and energy consumption. The minimum delay and the minimum energy
consumption are to be computed using Dijkstra’s Algorithm of the Shortest path problem. In case of
the satbility, the weights of the edges are to be the Euclidean length, while in case of the energy
consumption and according to (2), the weights of the edges are to be the square of the Euclidean
Lengths.
The following Block Diagram illustrates the main objectives of the testing environment:

Fig.17: Block flow diagram illustrating the main objectives of the model
VANET Planning with Graph Theory 17

IV) Simulation and Experimental Work


Three topology control centralization methods were suggested. In this paper, it is required to find the
best among them according to multiple parameters.
The three topology controls are:
1. Minimum Spanning Tree (MST)
2. Minimum Connected Dominating Set (MCDS)
3. Gabriel Graph (GG)
It is needed to find the best among them in different scenarios according to:
1. Energy consumption: how much energy on average each connection would consume.
2. Congestion: How many connections on average each car has to handle at any given moment.
3. Signal path: How many hops on average a signal has to take from the sender to the receiver.
Each parameter tests an aspect of the network. Energy consumption measures the economic aspect of
the network. It measures how hungry is the network to energy. To sustain the connectivity of the
established connections, and according to the energy model discussed in the mathematical modelling
process, the energy needed to sustain the connection between two nodes is directly proportional to the
squares of their Euclidean distances. The average energy consumption on a certain topology is indicated
by averaging the squares of the weights of the existent edges in a network over the number of the edges.
It determines the types of vehicles that can participate in network. For example, small battery vehicles
can’t participate in energy consuming network.
Congestion measures the technological requirements of the network. If the network requires every
vehicle to handle a high number of connections, then this topology isn’t suitable for simple devices and
requires more sophisticated transmitting devices.
Signal path parameter determines the dependency of each any two nodes on the rest of the network.
Two nodes are dependent if they have intermediate nodes that handle the connection. The more the
number of intermediate nodes the more dependent is the two end nodes. This parameter can be used as
an indication of the stability of the network.
To begin with, a platform was needed to handle the simulation, but it should have:
1. The ability and ease to handle multiple dimensional arrays
2. The ability and enough libraries to deal with graphs of nodes and edges
3. The ability to deal with multiple plots at the same time
Data Utilized in the Simulation:
Several data are required to run the simulation:
Several types of data will be used to create our simulation, it consists of:
1- An image for a map.
2- The number of cars moving on the map.
3- Transmission range of each car in the map.
1- Image of the map:
Different maps are chosen to test every topology against different scenarios. This helps to obtain results
that matches the reality and to observe the environments that suites each topology.
18 VANET Planning with Graph Theory

At first, images of actual streets in Cairo were taken from Google Maps. Then, these images were passed
on multiple levels of image processing to obtain a graph that matches the map. A graph matches the
map if and only if its edges coincide on the streets of the map. Four steps were done to transfer the
image of the map to a graph.

Fig.18: (A) The original map before processing


(B) The map after binarization (the roads in white pixels) (C) Flipping the binarized map
(D) Skeletonizing the roads (Reducing their thicknesses) (E) Transforming the skeleton into a road network graph
(F) The road network graph on the original graph

1. The image was binarized according to its luminosity, this step was done from Fig.(18-A) to
Fig.(18-B). the result was that streets are in white while everything else is in black.
2. The image’s white pixels were eroded outward, this step was done from Fig.(18-B) to Fig.(18-
C). This was to fill the black dots inside the streets and also to get any white detached pixels
back to the streets. The result was clear image of streets being white without any tiny white
clusters.
3. Skeleton is then obtained from the white streets. This step is shown from Fig.(18-C) to Fig.(18-
D). This step was done to prepare for forming the graph.
4. Graph is formed from the skeleton. This step is shown from Fig.(18-D) to Fig.(18-E). At this
step, white segments are exchanged with edges and intersection of segments was exchanged
with nodes.
In fig.(18-F), the initial photo is then compared to the final graph to judge the output graph. This graph
represents the streets upon which the moving nodes (which represents the actual cars) would move.
Three different maps, with specific characteristics for each one, are used:
1. Tahrir square: This map has a mix of straight and curved wide streets. It represents an example
of well-planned streets, shown in Table(1-A)
2. El-Dokki: This map contains narrow streets mixed with narrow rings. It represents an example
of a map which has some poorly designed streets which are common among Cairo. Shown in
Table(1-B)
3. Nasr City: This map represents narrow, close and unplanned streets which are the norm in slums
that are spread across Cairo, shown in Table(1-C)
VANET Planning with Graph Theory 19

2- Number of nodes per trial:


This data will be chosen according to real data from google maps which shows the traffic in our three
studied locations at different times on Sunday (1/5/2022) and Monday (2/5/2022). It is assumed that the
degree of traffic jam is on a scale from 0 to 5 so if the studied location has the degree of 5 that means
that it will have the maximum number of nodes in the simulation and if it has a degree of 1 it will have
one-fifth of the maximum number of nodes. Applying these different maps aims to simulate real life
settings. (That will be shown in the next table).
Note: the number below each map represents the degree of the traffic jam
Table(1): Traffic Data for different timestamps for 3 maps

Location Date 8:00 AM 12:00 PM 6:00 PM 10:00 PM

Sunday
(1/5/2022)
(A)
(1) (3) (4) (2)
El-Tahrir
Square

Monday
(2/5/2022)

(2) (4) (5) (3)

(B)

El-Dokki Sunday
(1/5/2022)

(2) (4) (5) (3)


20 VANET Planning with Graph Theory

Monday
(2/5/2022)

(2) (3) (3) (4)

Sunday
(1/5/2022)

(C) (2) (3) (3)


(3)
Nasr City

Monday
(2/5/2022)

(2) (3) (4) (4)

3- Transmission Range:
The connection between moving vehicles (V2V) depends on the transmission range of the
OBUs (on-board units) which is a specific feature for the type of OBU so it will be used as input data
which will be essential information to create the connection between moving vehicles. In the simulation,
we will assume the transmission range R based on equation (3) in the mathematical modeling report.
Topology Control Algorithms Implementation Details:
1- Minimum Connected Dominating Sets (MCDS):
In MCDS, there are two types of nodes: Covered Nodes, and Uncovered nodes.
In order to implement some efficient logic to classify these nodes, A simple but effective trick was used
based on digraphs. Although, digraphs are not used in this research to create and simulate our networks,
digraphs were just used as a means for implementing the d-MCDS algorithm.
VANET Planning with Graph Theory 21

Digraphs are used in the d-MCDS algorithm to track the states of the nodes. In the algorithm, we define
the pDegree of a node at a certain state to be the number of uncovered neighboring nodes at this state.
To classify the nodes at a certain state using digraphs, covered nodes have no in-edges. Accordingly,
the neighboring uncovered nodes of a certain node are determined by the number of successors of the
node, since covered nodes have no in-edges. In other words, covered nodes have an in-degree of zero,
and the number of uncovered neighboring nodes of a certain node at a certain state is the outdegree of
the node. The pDegree is then determined by the outdegree of the nodes.
The following steps are iterated: It is required at each state to determine the covered node with the
maximum pDegree to be elected as a dominator. In the next state, the new dominator and the newly
covered nodes are covered by removing their in-edges.
These steps are iterated until the outdegrees of all the nodes in the digraph are zeros.
2- Gabriel Graphs (GG):
Gabriel Graphs have simple and straightforward implementation. The elements of the original edge set
of the UDG are iterated, to find the coordinates of the midpoint of the edge. It needed to know if there
are nodes that are present in the circle whose diameter is the edge weight and centered at the edge
midpoint. A node can only exist in this circle when they are neighbors to the end nodes of this edge.
We then iterate on the neighboring of the two end nodes of the edge and calculate the distance from
each of these nodes to the midpoint of the edge. This distance is compared to the radius of the circle
and accordingly, it is determined whether this node is present in the circle or not. This algorithm has a
worst-case complexity of 𝑂(𝐸𝑉) where E is the number of edges of the UDG, and V is the number of
vertices of the UDG.
Simulation Design
At this point we have two graphs:
- The graph of the map which represents the street
- The graph of the moving cars and the network to be analyzed
The cars (moving nodes) were given random starting point and ending point in the map graph.
1. The shortest path between the starting point and ending point was found by Dijkstra’s
algorithm. The random endpoints are chosen to be at the edges of the map.
2. Nodes that reach their end points are destroyed and taken out of the graph.
3. All cars were given the same transmission range and were all moving with speeds proportional
to the length of the edge on which they move.
4. The measured distances between the moving cars are compared to transmission range. If two
node are in the range of each other, an edge is assigned between them. This was done based on
the UDG model.
5. The topology control is then applied on all edges at each specific frame to remove the excess
edges according to topology.
6. Then results are measured by the end of each frame.
7. The simulation will end after 75% of the cars reach their destination. This is done since at that
point, the simulation will no longer be guaranteed to hold realism.
8. The simulation is run 12 times, 4 per map. In the first run, UDG is applied without any topology
and acts as reference. After that, three topologies are run one after the other.
9. In each run results were obtained plotted separately.
22 VANET Planning with Graph Theory

Results Calculation Methods


1. Energy consumed is proportional to the square of the distance between the two connecting
nodes, as demonstrated in the suggested energy model. So, to test this parameter, weights are
assigned to the edges depending on the Euclidean lengths between them. After each frame, each
weight is squared. Then, all the squared weights were summed. At that point we have, we have
the sum of squared distances at a given frame 𝑆 . 𝑆 is then added to the sum of all frames
distance squared 𝑆. Finally, 𝑆 is divided by the total number of frames at any given frame to
obtain the 𝑅 averaged over the number of present edges. The data is then plotted on a graph.
This approach is done to obtain the average energy consumed.
2. Congestion parameter is measured by counting the number of nodes that have connections from
1 to 40 each frame. Then the number of nodes having same degrees are averaged over all the
frames. The data is then plotted on bar chart.
3. Dependency, in fact, has limit. In the best-case scenario, the dependency (the number of
intermediate nodes) should be equal to Dijkstra’s path length when applied to UDG. So, it is
needed to compare each topology dependency relative to the ideal case. In each frame. Two
matrices that have dimensions of 𝑛 × 𝑛 were created. In the first matrix 1, each cell holds the
length of the path between node i and j calculated after applying the topology. In the second
matrix 2, each cell holds the length of the path between node i and j calculated without applying
any topology. Then each cell in matrix 1 was divided by the corresponding cell in matrix 2.
After that, the ratio of all cells to their corresponding are added and divided by the number of
paths. The result is the average path length ratio in the ideal case due to each topology.
4. The connectivity was measured once after applying the UDG to ensure that the network is
connected enough to conduct the other three tests. Connectivity wasn’t measured for each
topology because each topology is supposed to maintain the same conductivity.

Fig.19: Connectivity analysis on different maps


VANET Planning with Graph Theory 23

(a) Map 1 with the UDG


before applying any topology
control methods

(b) Map 1 after applying MST

(c) Map 1 after applying


MCDS

(d) Map 1 after applying GG


24 VANET Planning with Graph Theory

Power consumption Congestion Stability

Before
applying
any
topology
control
methods

(a) (b) (c)

MST

(d) (e) (f)

MCDS

(g) (h) (i)

GG

(j) (k) (l)

Table(2): Simulation Results and Parameters Testing on El-Tahrir Square Map


VANET Planning with Graph Theory 25

(a) Map 2 with the UDG


before applying any topology
control methods

(b) Map 2 after applying MST

(c) Map 2 after applying


MCDS

(d) Map 2 after applying GG


26 VANET Planning with Graph Theory

Power consumption Congestion Stability

Before
applying
any
topology
control
methods

(a) (b) (c)

MST

(d) (e) (f)

MCDS

(g) (h) (i)

GG

(j) (k) (l)


Table(3): Simulation Results and Parameters Testing on El-Dokki Map
VANET Planning with Graph Theory 27

(a) Map 3 with the UDG


before applying any topology
control methods

(b) Map 3 after applying MST

(c) Map 3 after applying


MCDS

(d) Map 3 after applying GG


28 VANET Planning with Graph Theory

Power consumption Congestion Stability

Before
applying
any
topology
control
methods

(a) (b) (c)

MST

(d) (e) (f)

MCDS

(g) (h) (i)

GG

(j) (k) (l)


Table (4): Simulation Results and Parameters Testing on Nasr City Map
VANET Planning with Graph Theory 29

Results Evaluation
- Degrees vs Number of nodes (Congestion):
1. It is evident from the Table(2-3-4)-Fig.(b) that the distribution of nodes among their degrees of the
UDG graph in all of the three maps resembles normal distribution graph, which is expected since nodes
starting points and end points are chosen randomly.
2. MST shows positively skewed normal distribution in all the three maps with a tight standard
deviation. So, on average the nodes would have low range of low degrees.
3. Due to the nature of dominating sets and as expected from the way the d-MCDS algorithm is applied,
there are a large number of dominatees “they are nodes with degree of 1” and on the other side nodes
with large degrees “since the algorithm is degree based”, in some cases as shown in the results, the
degree of the dominators may even surpass 27 or even 30. This leads to high congestion at the backbone
nodes.
4. GG shows positively skewed normal distribution with a moderate standard deviation in all the three
maps. So, on average the nodes can have a wide range of low degrees.
- Average 𝑅 over the number of present edges vs frames:
1. MST have average 𝑅 over the number of present edges at steady state that is below the 1/3 of the
maximum UDG value. It also appears that the energy consumption per edge is stable after reaching the
steady state. It is clear in all maps except for the last map.
2. MCDS has average 𝑅 over the number of present edges that is higher than the UDG. Also, it has a
narrow range of variation with respect to the maximum. It also has unpredictable trend, which means
that the trend is dependent on the map.

3. GG has average 𝑅 over the number of present edges that is below the ½ of the maximum UDG value
most of the time. It also shows a decreasing trend as the simulation goes on. It has a moderate range of
variation with respect to the maximum.
- Average Path Lengths Ratio (The ratio of the average path length of the applied topologies to
the average path length of the original UDG):
1. The result of this test with UDG always yield 1. It is predictable because we use the shortest path in
UDG as our reference.
2. MST shows an aggressively varying ratio. It has values that range between 3 and 7 in all the three
maps.
3. MCDS has a varying ratio but in narrow range. It ranges between 1.35 and 1.8 in all the three maps.
4. GG has a moderately varying ratio. It ranges between 1.4 and 2.6 in all the three maps.
Connectivity:
The connectivity of the UDG is always greater than 0.7 at steady state in all the three maps. This
was chosen in order for the simulation to be realistic and connectivity sustaining.
30 VANET Planning with Graph Theory

Analysis
From the previous results, graphs, and observations, the three topology controls are read to be
compared.
- Energy Consumption:
According to Tables(2-3-4)-Fig.(d-g-j) and the observations, MST is most efficient topology in that
discipline, followed by GG and MCDS comes at last. MST consumes on average less than 1/3 of the
energy consumed by the MCDS and 5/6 of GG.
MCDS relies more on centralizing the network since it is more degree based than weight based. In other
words, the topology is unconcerned with the weights of the edges. The result is graph that has the same
connectivity as the UDG but with the shortest edges more likely to be eliminated.
GG relies on the positions of the nodes to remove unneeded connections in the UDG which, in a similar
manner to MCDS, is unconcerned with the edge weight, but it is still relatively better than MCDS since
it at least depends on the positions of the nodes and accordingly, indirectly, relaying on the distance
between the nodes.
MST is optimized for removing the highest weight edges in the graph. When having a cycle, the MST
starts by adding the lowest weight edges avoiding forming a cycle in the network. This helps in filtering
long range connections which have a huge load on energy consumption. GG does something nearly
similar as edges with large weights since they are more likely to be removed but also normal weight
edges can still be included. This is not the case in MCDS since it is more likely for small weight edges
to be removed as the topology is more concerned with the degrees of the nodes than the edges.
- Congestion:
There is no certain topology that can excel here since each topology control has its own advantages and
disadvantages.
MST has most of its nodes concentrated below a degree of 5. This topology can be advantageous in
cases when the devices in the network are homogenous and has limited number of connecting channels.
Practical examples are myriad:
1. A group of drones communicating automatically.
2. A bunch of mobile phones that want to connect without infrastructure.
3. Wild-fire sensors transferring data to a control unit.
MST can achieve low degree at high number of nodes since the topology is less concerned with the
node degrees and the connections are elected independent on the degrees of the nodes. Instead, the
topology chooses the minimum weight edges which can proved to be contrasting with the node degree
effect on the topology.
On the other hand: MCDS proved to give contrasting congestion results where most of its nodes
“dominatees” have a degree of one, but the dominator elements are at very high degrees. This makes
this topology the best choice for routing centralization “giving a pseudo-infrastructure feature to an ad-
hoc network”. This topology is especially advantageous in case of heterogenous network devices, where
there exists a set of multichannel devices and set of uni-channel devices.
GG gave intermediate congestion results between MST and MCDS. It allows for a wide range of
degrees, as most of its nodes fall below 15 degrees (but much more than MST). This topology is perfect
for application in places where it is unknown the types of the devices that could participate. This
property is achieved since Gabriel Graphs are neither degree based nor weight based placing it at a
medium point between the two former topology controls
VANET Planning with Graph Theory 31

- Dependency:
Dependency can be used as an indication of the stability of a network. The higher the dependency (in
other words, higher average paths ratio), the more likely it is for the connection to get rerouted and
controlled by nodes that aren’t beneficiary for the signal. So, to achieve higher stability, a low average
paths ratio is a good indication for this criterion. The lowest achievable value is 1.
According to the data obtained from the graphs in Tables(2-3-4)-Fig.(f-i-l), MCDS is the most stable
topology among the three because it has the lowest average paths ratio, followed by GG and the least
stable topology is MST. From the results, MCDS is from 5.18 to 1.7 times more stable than MST. GG
is from 3.88 to 1.15 more stable than MST.
The reason of the high stability of MCDS is that all the paths are routed through a certain elected
backbone where minor weight connections are removed from the network. GG achieves a relatively
high stability since not all large weight edges are removed
From the previous analysis, it can be concluded that a certain topology excels in the performance at
a certain parameter but for another parameter, another topology can achieve better results.

Conclusion and Future Work


In this paper, we managed to model VANET techniques and apply them on moving objects (A
mobility driven environment) and give the network a sense of mobility on real life situations and
settings. These kinds of systems have many applications in real life problems. In this paper, we
applied some topology control centralization driven algorithms which are: Minimum Spanning Tree
(MST), Minimum connecting dominating set (MCDS), and Gabriel Graphs (GG). We tested these
algorithms and compared their performance in terms of the network parameters (Energy consumption,
congestion, and signal path). These results were analyzed, and basic conclusions were drawn on the
applied topology control methods. It was noticed that MST achieves the best in terms of the energy
consumption while MCDS managed to excel in terms of stability. The work in this paper can be
extended further to study other challenges that are faced in ad-hoc networks generally. One of these
challenges is the security of the system. Several modifications can be on the topology control
algorithms, where the d-MCDS algorithm can be extended to include modification-driven logic that is
directed towards modifying a mobile network rather than applying the topology creation algorithm at
every frame.
From another perspective, progress in VANET and (V2V) has become a huge business which
has a fierce competition between the Automotive industry pioneers like General Motors, BMW,
Honda, Toyota, Audi and Volvo.[14] The dependency of VANET on handling massive amount of
traffic data made it necessary mention the importance of cloud computing in reaching an efficient
V2V communication. Cloud computing also has its own computation among some of the top
Companies in the world such as Amazon, Google, and Microsoft. VANET has two types of
applications Safety and non-safety. Safety applications like tracking of stolen vehicles and tracking of
known criminals. Non-safety applications like parking spot locations and environment evaluator.
What has been mentioned made us realize the role which VANET plays in the market.
32 VANET Planning with Graph Theory

Through this paper’s vision and through looking for the market’s goal and gap, other features can be
added to the simulation environment:
(1) The simulation should be developed to become the main tool for any researcher in V2V and
for reaching that our simulation must have many options such dealing with current real data
automatically.
(2) This model can be modified to cover the (V2X) communication which means (Vehicle to
Everything) that means that vehicles can communicate with all types of smart devices not only
Vehicles.
(3) The paper can be developed to be directed to fill the market gap in V2V communication
References:
1. Wattenhofer, R. (2004). Wireless Networking: Graph Theory unplugged. Graph-Theoretic
Concepts in Computer Science, 20–32. https://doi.org/10.1007/978-3-540-30559-0_2
2. Lee, M., & Atkison, T. (2021). VANET applications: Past, present, and future. Vehicular
Communications, 28, 100310. https://doi.org/10.1016/j.vehcom.2020.100310
3. Abendroth, Benedikt & Hutchinson, Michael & McKnight, Lee. (2015). Emergency Ad-hoc
Networking Innovation and Policy.
4. M A, Rajan & Chandra, M. & Reddy, Lokanatha C & Hiremath, Prakash. (2008). Concepts of
Graph Theory Relevant to Ad-hoc Networks. Int. J. of Computers III. 3. 465-469.
5. Gao, B., Yang, Y., & Ma, H. (2005). A new distributed approximation algorithm for
constructing minimum connected dominating set in Wireless ad Hoc Networks. International
Journal of Communication Systems, 18(8), 743–762. https://doi.org/10.1002/dac.726
6. Vigilia, A. N., & Suseela, J. S. (2018). A consistent routing protocol based on graph theory for
efficient vehicle to vehicle communication. International Journal of Computer Sciences and
Engineering, 6(12), 899–907. https://doi.org/10.26438/ijcse/v6i12.899907
7. Eiza, M. H., & Ni, Q. (2013). An evolving graph-based reliable routing scheme for Vanets.
IEEE Transactions on Vehicular Technology, 62(4), 1493–1504.
https://doi.org/10.1109/tvt.2013.2244625
8. Monteiro, Julian. (2022). The use of evolving graph combinatorial model in routing protocols
for dynamic networks.
9. Elaraby, S., & Abuelenin, S. M. (2021). Connectivity analysis of directed highway vehicular
ad hoc networks using graph theory. International Journal of Communication Systems, 34(5).
https://doi.org/10.1002/dac.4745
10. Mousa, R. J., Huszák, Á., & Salman, M. A. (2021). Enhancing VANET connectivity through
a realistic model for RSU deployment on highway. Journal of Physics: Conference Series,
1804(1), 012104. https://doi.org/10.1088/1742-6596/1804/1/012104
11. D. Satyanarayana. (February 2009) “Delaunay Triangulation based Spanners for MANET”
PhD thesis. Indian Institute of Technology Guwahati, Department of Computer Science and
Engineering
12. Chartrand, G., Zhang, P., & Chartrand, G. (2012). A first course in graph theory. Dover
Publications,Inc.
13. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms.
The MIT Press.
14. Shrestha, R., Bajracharya, R., & Nam, S. Y. (2018). Challenges of future VANET and
cloud-based approaches. Wireless Communications and Mobile Computing, 2018, 1–15.
https://doi.org/10.1155/2018/5603518
VANET Planning with Graph Theory 33

Appendix:
- Software and Simulation Technology
The software environment used in in the testing, implementation and simulating VANETs was done
using MATLAB scripting language. MATLAB was chosen as it is a scripting language mainly directed
to be used with mathematical objects. It’s no surprise to know that MATLAB stands for MATrix
LABoratory. It has a large community that works on its development. It has many built-in APIs and
classes for graph theory objects as well as built-in functions that can be used to plot the graphs of edges
and nodes with the required specifications. The code and functions created in this research are portable
in MATLAB versions starting from MATLAB R2018a.
- GITHUB Repository for the simulation code
https://github.com/Yousef-Essam/VANET-planning-with-Graph-theory
- To run the simulation, run the Main_simulation.m file in MATLAB. By default, the used map is map1
(El-Tahrir Square Map). No topology control is applied by default. Only the UDG is shown.
- To change the used map, change the value of the variable "map" (The allowed values are 1:11).
- To apply a certain topology, change the value of the variable "topology" (0 => The UDG without
applying any topologies, 1 => MST, 2 => MCDS, 3 => GG).
Inside this repository, there are 4 folders to be found:
1. "AssetFunctions" which contains complementary functions used to implement the different
algorithms used in the simulation.
2. "TopologyControl" which contains the Topology Control Algorithms Functions.
3. "Maps" which contains the different maps to be tested.
4. "Skel2Graph3D" which is an open-source toolbox used in the image processing of the maps.
The following link contains a video of the simulation, illustrating the original network in motion with
the UDG proximity before applying the different Topology Controls and the network after applying the
Topology Controls:
https://drive.google.com/drive/folders/159imx7TkYncj8pJPu9K4y5x8OF_wHvIB?usp=sharing
It is worth noting that Skel2Graph3D is the only non-vanilla code used in the simulation (i.e.: It
is the only code not written from scratch in MATLAB). The rest of the coding is done from
scratch by πoneers members.

You might also like