Professional Documents
Culture Documents
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
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.
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 .
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
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.
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
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
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
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.
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
Sunday
(1/5/2022)
(A)
(1) (3) (4) (2)
El-Tahrir
Square
Monday
(2/5/2022)
(B)
El-Dokki Sunday
(1/5/2022)
Monday
(2/5/2022)
Sunday
(1/5/2022)
Monday
(2/5/2022)
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
Before
applying
any
topology
control
methods
MST
MCDS
GG
Before
applying
any
topology
control
methods
MST
MCDS
GG
Before
applying
any
topology
control
methods
MST
MCDS
GG
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.
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.