Application of Graph Theory in CS
Application of Graph Theory in CS
Abstract
The field of mathematics plays an essential role in different domains.
In various areas of graph theory is employed in several applications of
technology. Graphs are considered as an outstanding modeling tool
which is utilized to model several classes of relations amongst any
physical scenario. Several issues of the real world can be represented
by graphs. This paper explores varied ideas concerned in graph theory
Keywords: and their applications in computer science to demonstrate the
utilization of graph theory. These applications are given particularly
Graphs, Graph Theory, to project the thought of graph theory and to demonstrate its
Computer Science and objective and importance in computer science engineering.
Applications
Author correspondence:
Dakineni Durga Prasad,
Asst.prof,Dept.of CSE, Baba Institute of Tech. & Sciences, Visakhapatnam, AP, India.
Medisetti Snehadivya,
M.Tech 1-1,Dept.of CSE, Baba Institute of Tech. & Sciences, Visakhapatnam, AP, India.
Sanaka Kavitha
M.Tech 1-1,Dept.of CSE, Baba Institute of Tech. & Sciences, Visakhapatnam, AP, India.
1. Introduction
In mathematics, graph theory is a branch of discrete mathematics. Study of graphs is known as Graph
theories which are mathematical structure utilized to model pairwise relations between objects. There is a
huge utilization of graphs in mathematics and computer science to providing problem solutions because it
gives a sensitive approach prior to presenting formal definition [1] [2]. Two problem areas are considered to
analyze the applications of graph theory. They are classical problem and application problems.
The classical problem is defined with the help of the graph theory as connectivity, cuts, paths and flows,
coloring problems and theoretical aspects of drawing graphs [2]. The application problems are an emphasis
on experimental research and the implementation of the graph theory algorithms. Implementation point of
view is the main topic in graph drawing. Graph drawing plays an important role for automatic graph
generation in computer science technology applications such as database design, software engineering,
circuit designing, networks and data mining.
Graph theory history:
Graph theory is basis with an issue of Koinsber Bridge by L Euler Swiss mathematician in 1735. Konigsberg is
a small town located on the European continent. In the city, there is a big river and there are two deltas. The
issue of Koinsberg Bridge was studied by Euler and constructed a graph structure to resolve the issue known
as the Eulerian graph shown in figure 1.
Directed and Undirected graph: An undirected graph is graph G (Figure 2), which is connected together,
where all the edges are bidirectional. A Directed graph is graph G, which is connected, where all the edges
are a point in a direction.
Adjacency matrix: An adjacency matrix is a square matrix utilized to be a symbol of a finite graph. The
elements of the matrix with respective of graph identify whether the pair of vertices are adjacent or not.
Example of the adjacency matrix is shone in figure 2.
The Degree of a vertex: In an Undirected graph, number of edges that are an occurrence to the vertex or
node is called the degree of the vertex. In directed graph having in-degree and out-degree concept, the
number of edges occurrence to a vertex is called in-degree whereas a number of edges moving from the
vertex are called out-degree. The degree of a vertex is shown in figure2.
Figure 2: a) Directed graph with a number of vertices and edges, the degree of vertex and adjacency matrix.
b) Undirected graph with of vertices and edges, degree of vertex and adjacency matrix
Vertex coloring: An obligation of colors to the vertices of a graph G so that no two adjacent vertices of G have
the similar color is called vertex coloring of graph G.
Chromatic number: The minimum number of colors required to color a vertex of a graph G, is known as a
chromatic number of graph G.
Tree: A graph which is connected without any cycles is known as Tree
Bipartite/Bigraph graph: A bipartite graph is a set of vertices partitioned into two disjoint sets such that no
two graph vertices within the same set are adjacent. Bipartite graph example is shown in figure 3a.
and the study of atoms. Graph theory is utilized in biology and safeguarding of endeavors where a vertex
corresponds to regions where certain species exist and the edges compares to movement way. This
information is crucial when taking a gander at rearing examples or attaching the spread of disease, parasites
and to consider the effect of movement that influences different species. Graph theoretical ideas are broadly
utilized in operation research. For example, the traveling salesman problem, the shortest spanning tree in a
weighted graph, acquiring an ideal match of employment and men and finding the briefest way between two
vertices in a graph. It is likewise utilized in demonstrating transport networks, activity networks, and game
theory. To explain countless issues by using network activity. The most popular and successful applications
of networks in operation research is the planning and scheduling of large complicated projects [4]. The best
well-known problems are PERT (Project Evaluation Review Technique) and CPM (Critical Path Method). Next,
game theory is applied to the problems in engineering, economics, and war science to find an optimal way to
perform certain tasks in competitive environments. To represent the method of a finite game a digraph is
used. Here, the vertices represent the positions and the edges represent the moves. Various applications in
different areas are shown in figure4.
These two considerations are fulfilled by the graph theoretical concepts. The arbitrary relation among data
can also be represented by a graph and its matrices, operations performed on these metrics are further useful
for deriving relations and data association and are used in order to understand how these data may be stored
in memory.
The algorithms of graph theory is involved in are
a) Searching graphs by utilizing Breadth-first Search and Depth-first search
b) Shortest Path Algorithms
c) Minimum spanning tree algorithm
d) Detecting cycles in graphs
Computer Hardware:
Graph theory concepts are utilized in computer hardware to model the limitations of the physical layer [6].
1. Graph coloring is utilized to allocate a register
2. Adjacency matrix is used for representing of sequence of instructions
3. Processing parallel instructions
4. Allocation of process scheduling.
Operating System:
Many practical problems can be solved with the help of graph data structures in the field of an operating
system such as job scheduling, resource allocation problems. For example, graph coloring concept can be
applied in job scheduling problems of CPU, jobs are assumed as nodes of the graph and edge between two
jobs that cannot be executed simultaneously and there will be one to one relationship between the feasible
scheduling of graphs.
Data Mining:
Graph theory is the major application area of graph theory in data mining. Graph mining represents the
relational aspects of data. The theoretically based approaches to graph-based data mining. They are
subgraphs, subgraph isomorphism, graph invariants, mining measures and solution methods. For example,
automated text analysis and text mining [7] methods have received a great deal of attention because of the
remarkable increase of digital documents. Currently, we can store, organize and retrieve information in text
documents automatically without looking at printed documents. Automated text analysis and text mining are
becoming more and more in computer applications. Models are represented in the graph have the ability to
catch auxiliary data in writing however they don’t consider the semantic relations between words [8].
Web Designing:
Web designing can be represented as a graph. Where the web pages are symbolized as vertex and the
hyperlinks between then are symbolized as edges in the graph. This representation is acknowledged as a web
graph. It discovers the interesting information. Another application is web community. Where the vertices
represent classes of objects and each vertex representing one type of objects, and every vertex representing
a type of object is connected to each vertex representing a new type of objects. In graph theory, such a graph
is called a complete bipartite graph. Website development using graph representation having various
advantages such as searching and discovery of community, directed graph representation in website utility
of evaluation and link structure and discovering all connected component and provide easy detection.
Network Systems and security
Graph theory accepts a vital part in various territories. Graph theory assumes a critical part of the
investigation of these essential issues in Mobile ad-hoc networks (MANETs). MANETs dependably brings the
consideration of research group [9]. The Graph theory concepts identified to connectivity, scalability, routing
and topology controls in MANETs. The solutions of MANETs in Graph theory is graph spanners, the proximity
of graph. By utilizing graph spanners one can decide a few graph spanners, which are helpful in planning the
certain class of routing algorithms, the investigation of network clustering, partitioning, and network topology
control. One of the troubles in managing graph spanners in an ad-hoc network is how the algorithm can be
made distributed with less complexity? The concept of proximity is additionally defined by graph spanners. A
lot of work is done in devising algorithms to construct the graph spanners locally. The studies of proximity
graphs assume a vital role in topology control, availability of the network. Proximity represents the neighbor
relationship between nodes. Two hubs are joined by a connection in the event that they are regarded near
to some proximity measure. This positively influences the network connectivity. The measure decides the
sort of a graph that outcomes. The essential ones are Unit Distance Graph (UDG), Nearest Neighbor Graphs
(NNG), Minimum Spanning Trees (MST), Relative Neighborhood Graphs (RNG), Delaunay Triangulation (DT),
and Gabriel Graphs.
Information retrieval system:
A network is defined as systems of components that connect or manage each other. Networks can be
scientifically spoken to as graphs. Typically, the term ’graph’ alludes to diagrammatic portrayals of an
arrangement of vertices associated by edges. The network regularly alludes to interconnected frameworks of
things or specific sorts of the mathematical concepts of graphs. Graph theoretical approaches to deal with
recovery can be followed back by semantic information retrieval, which was trailed by a few variants of
conceptual information retrieval and knowledge-based information retrieval. Frequent variants of graph
formalisms have been utilized as a part of connectionist ways to deal with information retrieval. However as
of late, graph-theoretic applications have been utilized for different applications inside IP, for instance, IR
assessment estimations, and re-ranking [12].
Software Engineering:
The graph has many applications in software engineering. For example: during requirements specification,
data flow diagrams are used where vertices represent transformations and edges represent the data flow.
Amid the design stage, the graphical outline is utilized for depicting relations among modules; while amid
testing, the control flow of a program related with McCabe's multifaceted nature measure which utilizes
directed graphs for tending to the sequence of executed instructions and etc. Indeed, Even Software Process
Management has additionally utilization of network diagrams which involves graph algorithms.
In class-oriented model, graphs can be created based on abstract syntax tree [10]. Here the classes are
represented as vertices and relations between the classes as edges and type of relationship represents the
weight of the graph. After building a graph we can discover subgraphs of a graph, frequent subgraphs,
isomorphic graphs etc by utilizing graph mining algorithms.
Image processing:
Image analysis is the methodology by which information from images is extracted. Image analysis is mainly
preferred on digital image processing techniques. The image processing techniques can be improved using a
graph-theoretic approach. The graph-based methods for image processing are segmentation, filtering,
classification, and clustering [11] [12]. The applications of the graph in image processing are: to find edge
boundaries using graph search algorithms in segmentation.
1. To compute the alignment of the picture.
2. Discovering mathematical constraint such as entropy by using minimum spanning tree
3. Shortest path algorithm is utilized to compute the distance between the interior pixels.
Artificial Intelligence:
To develop a model to change word “motion issues” into an algorithmic shape keeping in mind the end goal
to be prepared by an intelligent tutoring system (ITS). The qualities of motion issues ought to be ordered first
and next, proposing a model for the classifications was passed out. With a specific end goal to tackle all
categories of the issues, graph theory including reverse and forward tying methods of artificial intelligence
were utilized. By embrace of graph theory into the motion problems and set forward some affirmation that
the model unravels roughly the greater part of the motion issues [13].
Conclusion:
The fundamental rationale of this paper is to present the significance of the graph theoretical thoughts in
various fields of computer applications for exploring that they can utilize graph theoretical concepts for the
examination. An outline is exhibited particularly to extend graph theory. Analysts may make them inspire
data to graph theory and its applications in the computer field and get a few contemplations identified with
their territory of research.
References
[1] B.Tosuni, "Graph Theory in Computer Science - An Overview", International Journal of Academic
Research and Reflection, Vol. 3, No. 4, 2015.
[2] R.P.Singh and Vandana. "Application of Graph Theory in Computer Science and Engineering",
International Journal of Computer Applications, Vol 104, No.1, October 2014.
[3] S.G. Shrinivas, S. Vetrivel and N.M. Elango," Applications of Graph Theory in Computer Science an
Overview", International Journal of Engineering Science and Technology, Vol. 2, issue. 9, pp. 4610-
4621, 2010.
[4] P. Pranav and P. Chirag, “Various Graphs and Their Applications in Real World”, International journal
of Engineering Research and Technology, Vol. 2, Issue 12, December 2013.
[5] S.Bordoloi, B. Kalita, "Designing Graph Database Models from Existing Relational Databases",
International Journal of Computer Applications, Vol 74, No.1 July 2013.
[6] R. Duran and R. Rico, “On Applying Graph Theory to ILP Analysis”, IEEE Latin American Transaction,
Vol. 4, No. 4, pp. 291-298, 2016.
[7] S. S. Sonawane and Dr. P. A. Kulkarni, "Graph based Representation and Analysis of Text Document: A
Survey of Techniques", International Journal of Computer Applications (IJCA) Volume 96 - No. 19, June
2014
[8] Do, Thi Ngoc Quynh, and Amedeo Napoli, A graph model for text analysis and text mining. Diss.
Master Thesis, Université de Lorraine, 2012.
[9] M. A. Rajan, M. Girish Chandra and Lokanatha C. Reddy, "Concepts of Graph Theory Relevant to Ad-
hoc Networks", Int. Journal of Computers, Communications & Control, Vol. 3, pp. 465-469, 2008
[10] M. A. Srinuvasu and D.D. Prasad," Class-Oriented Model Graph Design Based on Abstract Syntax Tree",
International journal of Computer Science and Communication, Vol 7, No 2, March-Sep 2016.
[11] S. Ahmed, "Applications of Graph Coloring in Modern Computer Science", International Journal of
Computer and Information Technology, Vol. 3, issue 2, pp.1-7, 2012.
[12] N. Bhandri and A. Sharma,"Graph Theory and its Applications in Diverse Domain: A Survey Paper",
International Journal of Contemporary Technology and Management, Vol.6, issue 7, pp.1-6, August
2017.
[13] V. V. Nabiyev and Ünal Çakiroğlu, "Application of Graph Theory in an Intelligent Tutoring System for
Solving Mathematical Word Problems", Eurasia Journal of Mathematics, Science & Technology
Education, Vol.12, issue 4, pp. 687-701, 2016.