16
1 A Survey: Graph Theory in Computer Science and Applications Balaji N, Megha N and Chinmayee K S Department of Information Science & Engineering Department of Electronics & Communication Engineering Sahyadri College of Engineering & Management, Adyar, Mangaluru - 575 007, Karnataka, India. Bangalore College of Engineering & Technology, Bangalore, India. Email: [email protected], [email protected] and [email protected] Abstract—The field of mathematics plays a vital role in various field. One of the important areas in mathematics is graph theory, which is used in structural models. This structural arrangements of various objects or technologies lead to new inventions and modifications in the existing environment for enhancement in those fields. The field graph theory started its journey from the problem of Koneisberg bridge in 1735. This paper gives an overview of the applications of graph theory in heterogeneous fields to some extent but mainly focuses on the computer science applications that uses graph theoretical concepts. Various papers based on graph theory have been studied related to scheduling concepts, computer science and its applications later an overview has been presented here. Keywords: Bi-Partite Graph, Ad-hoc Net- work, Geometric Spanner, Median Graph, Voronoi Graph. I. I NTRODUCTION Graph theoretical ideas are highly utilized by computer science and applications, espe- cially in research areas of computer science such as Data Mining, Image Segmentation, Clustering, Image Capturing, Networking etc., For example a data structure can be de- signed in the form of tree which in turn uti- lized vertices and edges. Similarly modeling of network topologies can be done using graph concepts. In the same way that the most impor- tant concept called Graph Coloring is utilized in resource allocation, scheduling. Also paths, walks and circuits in graph theory are used in tremendous applications say Travelling Salesman Problem (TSP), database design concepts, resource networking. This leads to the development of new algorithms and new theorems that can be used in various useful applications. This paper has been divided into two sections. First section gives the historical background of graph theory and some appli- cations in scheduling. Second section empha- sizes how graph theory is utilized in various computer science and its applications. II. BACKGROUND This section gives the historical background of graph theory and some applications in IJTRD | Sep-Oct 2017 Available [email protected] Page 193 International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333 www.ijtrd.com

A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

1

A Survey: Graph Theory in ComputerScience and Applications

Balaji N, Megha N and Chinmayee K S

Department of Information Science & EngineeringDepartment of Electronics & Communication Engineering

Sahyadri College of Engineering & Management, Adyar, Mangaluru - 575 007,Karnataka, India.

Bangalore College of Engineering & Technology, Bangalore, India.Email: [email protected], [email protected] and [email protected]

Abstract—The field of mathematics plays avital role in various field. One of the importantareas in mathematics is graph theory, whichis used in structural models. This structuralarrangements of various objects or technologieslead to new inventions and modifications in theexisting environment for enhancement in thosefields. The field graph theory started its journeyfrom the problem of Koneisberg bridge in 1735.This paper gives an overview of the applicationsof graph theory in heterogeneous fields to someextent but mainly focuses on the computerscience applications that uses graph theoreticalconcepts. Various papers based on graph theoryhave been studied related to scheduling concepts,computer science and its applications later anoverview has been presented here.

Keywords: Bi-Partite Graph, Ad-hoc Net-work, Geometric Spanner, Median Graph,Voronoi Graph.

I. INTRODUCTION

Graph theoretical ideas are highly utilizedby computer science and applications, espe-cially in research areas of computer science

such as Data Mining, Image Segmentation,Clustering, Image Capturing, Networking

etc., For example a data structure can be de-signed in the form of tree which in turn uti-lized vertices and edges. Similarly modelingof network topologies can be done using graphconcepts. In the same way that the most impor-tant concept called Graph Coloring is utilizedin resource allocation, scheduling. Also paths,walks and circuits in graph theory are usedin tremendous applications say Travelling

Salesman Problem (TSP), database designconcepts, resource networking. This leads tothe development of new algorithms and newtheorems that can be used in various usefulapplications. This paper has been divided intotwo sections. First section gives the historicalbackground of graph theory and some appli-cations in scheduling. Second section empha-sizes how graph theory is utilized in variouscomputer science and its applications.

II. BACKGROUND

This section gives the historical backgroundof graph theory and some applications in

IJTRD | Sep-Oct 2017Available [email protected] Page 193

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 2: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

scheduling.

A. History of Graph Theory

The origin of Graph Theory started withthe Koneisberg bridge problem in 1735.This problem is leads to the concept of anEulerian Graph. Euler studied the problem ofKoneisberg bridge and constructed a structureto solve the problem called Eulerian Graph. In1840, A.F Mobius gave the idea of Complete

graph and bi−partite graph and Kuratowski

proved that, they are planar by means ofrecreational problems. The concept of tree(A Connected Graph without cycles [7]) wasimplemented by Gustav Kirchhoff in 1845,and he employed graph theoretical ideas in thecalculation of currents in electrical networks orcircuits.

In 1852 Thomas Gutherie found the famousfour color problem. Then, in 1856 Thomas.P. Kirkman and William.R.Hamilton studiedcycles on poly − hydra and invented theseconcept called Hamiltonian graph by study-ing trips that visited certain sites exactly once.In 1913 H.Dudeney mentioned a puzzle prob-lem that means., even though the four-colorproblem was invented it was solved only aftera century by Kenneth Appel and Wolfgang

Haken. This time is considered as the birth ofGraph Theory.Caley studied particular analytical forms

from differential calculus to study about trees.This had many implications in theoreticalchemistry. This leads to the invention of Enu-merative graph theory. Any how the termGraph was introduced by Sylvester in 1878,where he drew an analog between QuanticInvariants and Co-variants of algebra andmolecular diagrams. In 1941 Ramsey worked

on colorations which leads to the identificationof another branch of graph theory. In 1969the four − color problem was solved usingcomputers by Heinrich. The study of asymp-totic graph connectivity gave to random graphtheory [7].

B. Applications of Graph Theory

Graph theoretical concepts are widely usedto study and model various application in dif-ferent areas. They include study of molecules,construction of bonds in chemistry and thestudy of atoms.Similarly, graph theory is used in sociologyfor example to measure actors prestige or toexplore diffusion mechanism.

Graph theory is used in biology and con-servation effort where a vertex represents re-gion where certain species exists and the edgerepresent migration path or movement be-tween the regions. This information is im-portant when looking at breeding patterns ortracking the spread of disease, parasites and tostudy the impact of migration that affect otherspecies.

Graph theoretical concepts are widely usedin Operations Research (OR). For example,the travelling salesman problem (TSP), theshortest spanning tree in a weighted graph,obtaining an optimal match of jobs and men,and locating the shortest path between twovertices in a graph. It is also used in model-ing transport networks, activity networks andtheory of games.

The network activity is used to solve largenumber of combinatorial problems. The mostpopular and successful application of networkin Operations Research (OR) is the planningand scheduling of large complicated projects.

2

IJTRD | Sep-Oct 2017Available [email protected] Page 194

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 3: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

The best well known problems or exaples arePERT (Project Evaluation Review Technique)and CPM (Critical path Method).

Next, Game theory is applied to the prob-lems in engineering, economics and war sci-ence to find optimal way to perform certaintasks in competitive environments. To repre-sent the method of finite game, a directedgraph (di-graph) is required. Here, the vertexrepresents the position and the edge representsthe move.

1) Graphs in Chemistry:: Graphs are used inthe field of chemistry to model chemical com-pounds. In computational biochemistry somesequence of cell samples have to be excludedto resolve the conflicts between two sequences.This is modeled in the form of graph where thevertex represents the sequence in the sampleand an edge will be drawn between two ver-tices, if and only if there is a conflict betweenthe corresponding sequences.

The aim is to remove possible vertices (se-quences) to eliminate all conflicts. In brief,graph theory has its unique impact in variousfields and it is growing large now a days. Thesubsequent section analyses the application ofgraph theory especially in computer science.

subsubsectionAlgorithms and Graph The-ory: The major role of graph theory in com-puter science and applications is the develop-ment of graph algorithms. Different algorithmsare used to solve problems that are modeled inthe form of graphs. These algorithms are usedto solve theoretical concepts which inturn usedto solve the corresponding computer scienceapplications problems. Some of the algorithmsare listed below:

• Shortest path algorithm in a conenectednetwork,

• Finding a minimum spanning tree (MST),• Finding graph planarity,• Algorithm to find the connectedness,• Algorithm to find adjacency and incidence

properties,• Algorithm to find Hamiltonian,Eularian cycles and

• Algorithm for searching an element in adata structure such as DFS, BFS etc., andwe have many more advanced techniquesor strategies in Graph Theory.

Various computer languages are used tosupport the graph theory concepts. The maingoal of such languages is to enable the user toformulate operations on graphs in a compactand natural manner. Some of the graph theo-retical languages are mentioned below:

• SPANTREE - to find a Spanning Tree inthe given graph,

• GTPL - Graph Theoretic Language,• GASP - Graph Algorithm Software Pack-

age,• HINT and GRASPE - extension of LISP,• IGTS - extension of FORTRAN,• GEA - Graphic Extended ALGOL (Exten-

sion of ALGOL),• AMBIT - To manipulate directed-graphs,• GIRL - Graph Information Retrieval Lan-

guage and• FGRAAL - FORTRAN extended graph al-

gorithmic language [7].

2) Use of Graph Enumeration Techniques::Graph enumeration technique is used to iden-tify the computerized chemical identification.The list of all distinct chemical structureswill be generated based on the given chem-ical formula and the valence rules for anynew substance. To identify the chemical com-pounds automatically, a computer language

3

IJTRD | Sep-Oct 2017Available [email protected] Page 195

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 4: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

called DENDRAL has been developed [7].3) Graph Theory in Operations Research (OR)::

Graph theory is a very natural and power-ful tool in combinatorial operations research.Some important OR problems that can besolved using graphs are listed here.

• A network called transport networkwhere a graph G is used to model thetransportation of commodity from oneplace to another. The objective is to maxi-mize the flow or minimize the cost withinthe prescribed flow.

The graph theoretic approach is found moreefficient for these types of problems thoughthey have more constraints [7].

4) Graph Coloring:: Graph coloring is one ofthe most important concepts in graph theoryand is used in many real time applicationsof computer science. Various coloring methodsare available and can be used on requirementbasis. The proper coloring of a graph is thecoloring of the vertices and edges with mini-mal number of colors such that no two verticesshould have the same color. The minimumnumber of colors is called as the Chromatic

number and the graph is called properly col-ored graph [7].

Figure-1 and 2 shows that the graph G iscolored with minimal number of colors like 3and 4 for a instance of example.

5) Graph Coloring Techniques in Scheduling::Here some scheduling problems that uses vari-ants of graph coloring methodologies such asprecoloring, listcoloring, multicoloring, mini-mum sum coloring are given in brief.

• Job Scheduling: Here the jobs are as-sumed as the vertex of the graph G andthere is an edge between two jobs if theycannot be executed simultaneously. There

Fig. 1: Proper Vertex Coloring with Chromaticnumber - 3

Fig. 2: Proper Edge Coloring with Chromaticnumber - 4

is a one-to-one correspondence betweenthe feasible scheduling of the jobs and thecoloring of the graph [4].

• Aircraft Scheduling: Assuming that thereare k- aircrafts and they have to be as-signed n- flights. The ith - flight shouldbe during the time interval (ai, bi). If twoflights overlap, then the same air-craft can-not be assigned to both the flights. Thisproblem is modeled as a graph as follows.The vertices of the graph G corresponds tothe flight. Two vertices will be connected,if the corresponding time interval over-laps. Therefore, the graph is an Interval

4

IJTRD | Sep-Oct 2017Available [email protected] Page 196

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 5: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

Graph that can be colored optimally inpolynomial time [4].

• Bi-Processor Tasks: Assume that there areset of processors and the set of tasks. Eachtask has to be executed on two processorssimultaneously and these two processorsmust be Pre-assigned to the tasks and aprocessor cannot work on two jobs simul-taneously. This type of tasks will arisewhen scheduling of file transfer betweenprocessors or in case of mutual diagnostictesting of processors. This can be modeledby considering a graph G whose vertexcorresponds to the process and if there isany task that has to be assign colors tothe edges in such a way that every colorappears at most once at a vertex.If there are no multiple edges in the graphG that means no two tasks require thesame two processors then the edge color-ing technique can be adopted. We have de-veloped an algorithm for multiple edgedwhich give one-to-one approximate solu-tion [4]. The figure-3 shows that the tasksnamely task1, task2, task3 and task4

are allocated to the processors (P1, P5),(P1, P6), (P2, P4) and (P3, P7) respectively.

Fig. 3: Tasks Allocated to Processors

• Pre-Coloring Extension: In certainscheduling problems, the assignment ofjobs are already decided. In such casespre-coloring technique can be adopted.Here some vertices of the graph will havepre-assigned color and the pre-coloringproblem has to be solved by extendingthe coloring of the vertices for the wholegraph using minimum number of colors[4].

• List Coloring: In list coloring problem,each vertex v in graph G has list of avail-able colors and we have to find a coloringwhere the color of each vertex v is takenfrom the list of available colors. This listcoloring can be used to model situationswhere a job can be processed only incertain time slots or it can be processedonly by certain machines [4].

• Minimum Sum Coloring: In minimumsum coloring, the sum of the colors as-signed to the vertices is minimal in thegraph. The minimum sum coloring tech-nique can be applied to the schedulingtheory of minimizing the sum of com-pletion times of the jobs. The multi-colorversion of the problem can be used tomodel jobs with arbitrary lengths. Here,the finish time of a vertex is the largestcolor assigned to it and the sum of col-oring is the sum of the finish time of thevertices. That is the sum of the finish timesin a multi-coloring is equal to the sumof completion times in the correspondingschedule [4].

• Time Table Scheduling: Allocation ofclasses and subjects to the professors isone of the major issues if the constraintsare complex. Graph theory plays an im-

5

IJTRD | Sep-Oct 2017Available [email protected] Page 197

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 6: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

portant role in this problem. For m-professors with n-subjects such that theavailable number of p-periods timetablehas to be prepared. This is done as follows.A bi-partite graph (or bi-graph is a graphwhose vertices can be divided into twodisjoint sets U and V such that every edgeconnects a vertex in U to one in V ; thatis, U and V are independent sets [7].)G, where the vertices are the number ofprofessors say m1, m2, m3, m4„„, mk andn be the number of subjects say n1, n2,n3, n4„„, nm such that the vertices areconnected by pi edges. It is presumed thatat any one period of each professor canteach at most one subject and that eachsubject can be taught by maximum oneprofessor.Consider the first period, the timetable forthis single period corresponds to a match-ing in the graph and conversely eachmatching corresponds to a possible as-signment of professors to subjects taughtduring that period.So, the solution for the time table prob-lem will be obtained by partitioning theedges of graph G into minimum numberof matching and also the edges have to becolored with minimum number of colors.This problem can also be solved by Vertex-Coloring algorithm.The Line Graph L(G) of G has equal num-ber of vertices and edges and two verticesin L(G) are connected by an edge if andonly if the corresponding edges of G havea vertex v in common.The line graph L(G) of G is a simple graphand a proper vertex coloring of L(G) givesa proper edge coloring of G with the same

number of colors. So, the problem can besolved by finding minimum proper vertexcoloring of L(G).For example, consider there are 4 profes-sors namely m1, m2, m3, m4„, and 5 sub-jects say n1, n2, n3, n4, n5 to be taught.The teaching requirement matrix P = [pij]

is given in the below table-1.P n1 n2 n3 n4 n5

m1 2 0 1 1 0m2 0 1 0 1 0m3 0 1 1 1 0m4 0 0 0 1 1

The bi-partite graph is constructed as fol-lows.

Fig. 4: Bi-partite Graph with 4-Professors and5-Subjects

Finally, we found that the proper coloringof the above mentioned graph can be doneby 4-colors using the vertex coloring algo-rithm which leads to the edge coloring ofthe bi-partite multi-graph G. Four colorsare interpreted to four periods.

— 1 2 3 4

m1 n1 n2 n3 n4

• One more varient of Time Tabling Prob-lem: College Course Timetabling Problem(CCTP) can be solved by graph coloring

6

IJTRD | Sep-Oct 2017Available [email protected] Page 198

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 7: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

algorithm. Based on the constraints, thealgorithm has been developed and it con-sists of three modules.

– Creation of Vertices and Edges of thegraph from the constraints,

– Finding the Coloration of the cre-ated graph with the specified numberof colors using Soft Computing Ap-proach and

– Preparation of final time table.

The Constraints are,

– Class room utilization,– Classes held for the same stream lab

as well as theory,– Room preferences,– Availability of Professor,– Number of slots,– Preference of practical classes by the

professors and etc,.

Here, a single vertex v is representedby the structure with the membersnamely the course_code, course_type, stream,semester, time_of_day, number_of_days, slot,room and vertex_number.The graph G is created by means of a2D − matrix n ∗ n where n representsthe number of verteices, each vertexrepresents a Class and an edge will bedrawn between two vertices that satisfyall the given constraints.

The two vertices have the same values forstream, semester and group, so they cannotoccur simultaneously. Therefore, an edgewill be drawn between v1 and v2.The algorithm is given below:Graph Construction Algorithm:

– Enter the course structure with thedetails.

– Enter the number of available rooms.– Allocate the rooms to the courses sat-

isfying different constraints in a fash-ion.

– Create a vertex v of the graph G.– Update the edges and adjacency ma-

trix using the current constraints.

Later we have used a Hybrid Soft Comput-ing Algorithm to color the graph.

– A heuristic search using Ant ColonyOptimization(ACO) to generate initialpopulation.

– An Evolutionary Algorithm with somemodification.

Combination of the above two is usedto represent the set of integers (chromo-somes) where the integer set is the colorof a node. The position of these integersis the node numbers to which a particularcolor is assigned. Then the we used aspecial mutation operator to improve thechromosome in the pool.An adjacency matrix is given as input tothe Memetic algorithm (the combination ofACO and modified MA) which has beendeveloped to color the graph. The bestcoloration is chosen as the output. Thenfrom the above coloration method the finaltime-table is prepared [2].

• Job Shop Scheduling Problem (JSS): Var-ious techniques are available to schedulejob shop problems. Number of machineshave to been utilized effectively to com-plete the task. In this paper we used theconstruction of Tabu-Search technique anddeveloped a new algorithm.

G =

M2 M3 M4

M1 M2 M3

M3 M1 M2

7

IJTRD | Sep-Oct 2017Available [email protected] Page 199

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 8: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

Fig. 5: Graph Constructed for JSS

• Standard Model: The job shop problem isgenerally denoted by n, m, G and Cmax,where n is the number of jobs, m is thetotal number of machines, G is the ma-trix that represents the processing orderof machine for different jobs and Cmax

represents the completion time of the lastoperation. The objective is minimize thevalue of Cmax.Let J is the set of jobs from 1 to n, M isthe set of machines from 1 to m and V

is the set of vertices from 0 to n+1. Here0 and n+1 represents the dummy nodeswhich denotes the start and finish time ofthe operation respectively.We have represented the JSP(Job Shop Prob-lem) in the form of a disjunctive graphD = (V,A, E), where A represents theConjunctive Areas Precedence of Operationsin job, E the Set of Disjunctive Edges with nodirection representing possible precedenceconstraints for the operation belonging todifferent machines.For example, consider there are 4-jobs and3-machines with 12-operations, the pro-cessing sequence is represented as (l, t)

where l is the machine number and t isthe execution time of operation machine

l.For an instance Job − 1 = (1, 2)(2, 3)(3, 4)

indicates that the execution time for job1 in machine 1 is 2-units, in machine 2is 3-units and in machine 3 is 4-unitsrespectively.The JSS is represented based on the aboveinformation as a Disjunctive Graph wherethe vertices are considered as tasks, Con-junctive Arcs directed line represents thePrecedence Constraints among tasks of thesame job.Disjunctive Arcs undirected line representsthe possible Precedence Constraints amongthe tasks belonging to different jobs beingperformed in the same machine. Two ad-ditional vertices represent start and end ofthe schedule [14].

III. VARIOUS APPLICATIONS OF GRAPH

THEORY IN COMPUTER SCIENCE

In this section, we emphasizes how graphtheory is utilized in various computer scienceand its applications. This section explores theapplications of graph exclusively in computerscience in detail. Various applications thatdeals with computers are using graph theoryconcepts and some applications are discussedhere.

A. Map Coloring and GSM Phone Networks

Groups Special Mobile (GSM) is a mobilephone network, where the geographical area ofthis network is divided into hexagonal regionsor cells. Each cell has a communication towerwhich connects with the mobile phones withinthe cell. All mobile phones are connected tothe GSM network by searching for cells inthe neighbors. Since GSM operate only in

8

IJTRD | Sep-Oct 2017Available [email protected] Page 200

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 9: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

four different frequency ranges, it is clear bythe concept of graph theory that only four-colors can be used to color the cellular regions.These four different colors are used for propercoloring of the regions. Therefore, the vertexcoloring algorithm may be used to assign atmost four different frequencies for any GSM

phone network.Given a map drawn on the plane or on

the surface of a sphere, the four- color theo-rem assets that it is always possible to colorthe regions of a map properly using atmostfour distinct colors such that no two adjacentregions are assigned the same color. Now, adual graph is constructed by putting a vertexinside, each region of the map and connecttwo distinct vertices by an edge if and only iftheir respective regions share a whole segmentof their boundaries in common. Then propercoloring of the dual graph gives proper coloringof the original map. Since coloring the regionsof a planar graph G is equivalent to coloringthe vertices of its dual graph and vice versa [7].By coloring the map regions using four-colortheorem, the four frequencies can be assignedto the regions accordingly [9].

B. Graph Algorithm in Computer Network Secu-rity

The vertex cover algorithm (given as an inputa simple graph G with n-vertices labeled as1, 2, , , , n, search for a vertex cover of sizeat most k. At each stage, if the vertex coverobtained has size at most k, then stop [7])is used to simulate the propagation of StealthWorms on large computer networks and de-sign optimal strategies to protect the networkagainst virus attacks in real time. Simulationwas carried out in large internet like virtual

network and showed that the topology routinghas big impact on worm propagation.

The importance of finding the worm prop-agation is to hinder them in real time. Themain idea is here to find a minimum vertexcover in the graph whose vertices are the rout-ing servers and the edges are the connectionsbetween the routing servers. Then an optimalsolution is found for worm propagation and anetwork defense strategy is defined [9].

Fig. 6: Vertex Set g = {2, 4, 5} covers all thevertices in G.

The sample computer network with cor-responding minimum vertex cover is shownabove.

In a graph G, a set of edges g is said tocover G, if every vertex in G is incident onatleast one edge in g. The set of edges thatcovers a graph G is said to be an edge coveringor a covering sub-graph or simply a coveringof G. For our kind information, a SpanningTree in a connected graph is a covering anda Hamiltonian Circuit is also a covering [7].

C. Graph Theory in Ad-hoc Networks

Here, we have discussed the role of graphtheory related to the issues in Mobile Ad-hocNetworks (MANETS). In Ad-hoc networks, theissues such as connectivity, scalability, routing,

9

IJTRD | Sep-Oct 2017Available [email protected] Page 201

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 10: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

modeling the network and simulation are to beconsidered. The issues such as node density,mobility among the nodes, link formation be-tween the nodes and packet routing have to besimulated. To simulate these concepts RandomGraph Theory concept is used.

The connectivity issues are analyzed by us-ing graph spanners, (A geometric spanner ora k-spanner graph or a k-spanner was initiallyintroduced as a weighted graph over a setof points as its vertices and every pair ofvertices has a path between them of weightat most k times the spatial distance betweenthese points for a fixed k [20]) proximity graphs,(A proximity graph is simply a graph in whichtwo vertices are connected by an edge if andonly if the vertices satisfy particular geometricrequirements), Sparsification and Spectral graphTheory. Various algorithms are also availableto analyze the congestion in MANET’s wherethese networks are modeled based on graphtheoretical ideas [13].

Fig. 7: The Facility Graph.

D. A Graph Model for Fault Tolerant ComputingSystems

This paper is based on graph theory whereit is used to model the fault tolerant system.Here, the computer is represented as S and

Fig. 8: The Graph G2.

the algorithm to be executed by S is knownas A, both S and A are represented by meansof graphs whose node represent computingfacilities. It is shown that the algorithm A isexecutable by S if A is isomorphic to a sub-graph of S.

Here, we have presented a graph modeland algorithms for computing systems forfault tolerant systems. These graphs show thecomputing facility of a particular computationand the inter-connection between among them.This model is applied directly to the minimumconfiguration or structure required to achievethe fault tolerance to a specified degree. Themodel is represented in the form of a FacilityGraph.

A Facility Graph is a graph G whose nodesrepresent the system facilities and edges rep-resent the access links between facilities [6].A facility here is said to be a hardware orsoftware components of any system that canfail independently.

Hardware facilities include control units,arithmetic processors, storage units and in-put/output equipments. Software facilities in-clude compilers, application programs, libraryroutines, operating systems etc,. Since eachfacility can access some other facilities, the

10

IJTRD | Sep-Oct 2017Available [email protected] Page 202

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 11: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

real time systems are represented as a FacilityGraph.

Figure-7 is a labeled directed Facility Graph,facility types are indicated by numbers inparentheses and the graph indicates the typesof facilities accessed by other facilities.

E. Graphical Representation of Algorithm

An algorithm will be defined in the formof a Facility Graph, whose node represents thefacilities required to execute the algorithm andedge represent the links required among thesefacilities. An algorithm A is executable by acomputing system S, if A is isomorphic to asub graph of S. This means that there is aone-to-one mapping from the nodes of A tothe nodes of S that preserves the node labelsand adjacency between the nodes. This impliesthat S contains all the facilities and connectionsbetween facilities required by A, so A can beembedded in S. If G1 and G2 represents asystem and A is an algorithm respectively, thenG2 is executable by G1. The representation ofG2 as follows,

The node x1 access the nodes x2 and x4,similarly, the node x5 with facility type t1

access the facility types t3, t1 and t2 of nodesx6, x2 and x4 respectively.

The isomorohism are as follows: (y1, y2) →(x1, x2) and (y1, y2) → (x3, x2)

A k-fault F in a system S is the removal ofany k-nodes {x1, x2, x3, x4„„} from S. All edgesconnected to these nodes are also removed andthe resultant graph will be denoted by SF laterit can be written F = {x1, x2, x3, x4„„}

The basic concepts related to fault-tolerancesystem is given below,

• A system S is fault-tolerant with respectto an algorithm A and fault F, if A isexecutable by SF.

• S is a fault-tolerant with respect to a setof algorithms {A1,A2,A3„„Ap} and a setof faults {F1, F2„„Fq}, if Ai is executableby SFj , ∀ i and j where 1 ≤ i ≤ p.

• If S is k- fault-tolerance with respect to A,then S is j -FT(Fault Tolerance) with respectto A, ∀ j where 0 ≤ j ≤ k.

• G1 is fault-tolerance with respect to G2

and it is not 2-FT because if the fault F= {x2, x4} is present, then G2 cannot beexecuted by GF

1.

The Optimal k- FT Single Loop System isdesigned by the following concepts:

• A Single Loop System Cn is a graphconsisting of n ≥ 3 nodes each of degree2.

• Let C be any optimal k- FT realization ofthe Single Loop System Cn, the degree ofevery node in C is atleast (k+ 2) [10].

• If m is the number of edges in any k- FTSingle Loop System, then

m ≥⌈(k+ 2)(n+ k)

2

⌉(1)

We have used Hamiltonian Circuits andHamiltonian Path strategy to design optimal k-FT systems. The central idea focused here isto stress the importance of the graph modelcalled Facility Graph to represent the comput-ing systems and the algorithms they execute.This model gives a precise definition of thebasic concept of a k- Fault Tolerant System [6].

F. Graph Theory in Symbol Recognition

Here, we have discussed the paper Sym-bol Recognition by Error Tolerant Sub-graph Matching between Region AdjacencyGraphs.

11

IJTRD | Sep-Oct 2017Available [email protected] Page 203

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 12: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

The region of an adjacency graph is one inwhich costs are associated with both nodes andarcs, implying that an update of these costsmust be included in the given algorithm asnode costs change due to the connecting tworegions Ri and Rj.

Fig. 9: Segmented Graph, Region Adjacencygraph and its Dual Graph.

The distorted image sub-graph is matchedwith the model graph. That is the image regionand the model region are modeled as the im-age sub-graph and the model graph. The costof adding a neighbour to the correspondence isthe cost of the string edit distance aligning thepolygonally approximated outer boundaries ofthe graphs consisting of the matched regionsand the neighbour region candidates. Thismethod is applicable to any region adjacencygraph representation [10].

G. Automatic Channel Allocation for Small Wire-less Local Area Networks Using Graph ColoringAlgorithm Approach

In this paper we focuses on channel alloca-tion issue in wireless LAN by means of mod-eling the network in the form of a graph andsolving it using graph coloring methodology.The graph model is constructed and called asan Interference Graph since the access points areinterfering with some other access points arein the same region. The graph is called as an

Interference Graph, which is constructed by theaccess points as nodes.

An undirected edge is connecting thesenodes if the nodes interfere with each otherwhen using the same channel. Now, the chan-nel allocation problem is converted into graphcoloring problem i.e., vertex coloring problem.A vertex coloring function f : v(G) → C, whereC is the set of colors corresponds to the chan-nels on the access points and these channelsare preferably non-overlapping edges.

A coloring algorithm is developed by us-ing DSATUR (Degree-of-Saturation) for coloringpurpose. The algorithm is a heuristic searchi.e it finds the vertices with largest numberof differently colored neighbors, in this sub-set contains only one vertex it is chosen forcoloring. If the subset contains more than onevertex then the coloring is done based onthe order of decreasing number of uncoloredneighbors. If more than one candidate vertexis available then the final selection is replacedby a deterministic selection function to selectthe vertex.

The Protocol operation is done by identify-ing the neighbors by means of listening themessages generated by the access points. TheProtocol operation finishes when a messageis re-broadcasted by the access points. Afterfinishing this, the Interference Graph is con-structed and the coloring algorithm is applied.The correspondence between the channels andthe graph is that as the channels listen themessages in regular intervals as the same waythe coloring algorithm should be kept runningat regular intervals.

12

IJTRD | Sep-Oct 2017Available [email protected] Page 204

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 13: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

H. Clustering of Web Documents Using GraphModel

Here we discussed an enhanced representa-tion of web documents by means of clusteringthem and we used Graph instead of Vectors.Here we have used the classical k-means [19]Clustering Algorithm which uses the max-imum common sub-graph distance measureinstead of usual distance measure and the con-cept of Median Graphs [16] instead of Centroidcalculations.

Fig. 10: The Median of 3-Vertices in a MedianGraph.

Since, the traditional clustering methods areworking purely on numeric feature vectors, theoriginal data needs to be converted to a vec-tor of numeric values by discarding possiblyuseful structural information. Otherwise, newcustomized algorithms have to be developedfor specific representation.

Modeling the web documents as graphs hastwo significant benefits.

• It keeps the inherent structure of the orig-inal documents, rather to arrive numericfeature vectors that contain term frequen-cies.

• There is no necessity to build new clus-tering algorithm completely from scratch,but the extension of classical algorithms

can be developed to deal with graphs thatuse numerical vectors.

The graph model of the web documents hasconstructed by the following method.

• Each word that appears in the web doc-ument except stop words, is a vertex inthe graph representing that document andthis is executed by a node labeling functionwhich gives label to each node. There-fore each vertex in the graph represents aunique word and is labeled with a uniqueterm which is not used to label any othernode in the graph.

• If any word say b followed by anotherword say a then there is a directed edgebetween these two words a and b, if thesetwo words are in a section say S, then theedge between a and b will be labeled asS.

• Some punctuation marks are not takeninto account for edge creation.

• Three sections are defined here namelytitle tag, Section link and Section text.

• The nodes and their corresponding inci-dent edges to the words such as the, end,of, a, for, to etc., called as Stop-words areremoved because these words donot playmuch important role.

• A Stemming check is performed for pluralforms.

• The most infrequent words are removedfrom each page by leaving maximumnodes say m for each and every graph,where m is the user defined parameter.

The example of the graph representation ofthe web document is given in figure-11, theedges are labeled based on the titles, links andtexts.

We compared the results obtained from the

13

IJTRD | Sep-Oct 2017Available [email protected] Page 205

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 14: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

Fig. 11: Web document – Graphrepresentation.

graphical method with the vector method andshowed that the clustering web documents asgraph model have given much improvement[1].

I. Modeling Sensor Networks as a Graph

The sensor networks have got variety ofapplications such as Tracking of mobile objects,collection of Environmental data, defense ap-plications, health care etc,. In this paper wehave converted a message pruning tree withminimum cost to track the moving objects inwireless sensor networks. The sensor networkis modeled as a graph to analyse the communi-cation efficiency. We have taken the concept ofVoronoi Graph to model the sensor network. AVoronoi diagram is a special kind of decomposi-tion of a metric space determined by distancesto a specified discrete set of objects in the space[19].

Because Voronoi Graph is constructed in aplane in the form of polygons with nodes asthe sensors and the polygon boundaries canbe considered as the sensing range of eachsensor. Consider the plane as the sensing field,

S be the set of sensors and the sensing field ispartitoned into a Voronoi graph.

Fig. 12: Voronoi Diagram with Regions.

Any object located in a polygon of theVoronai graph is closest to the sensor in thecorresponding polygon. The polygon can beconsidered as the sensing range of these sen-sors. Among these sensors one sensor will bethe cluster head for reporting function. Twosensors are considered as neighbours if theirsensing range share a common boundary inthe Voronai graph. When the objects cross theboundary of one sensor i.e., the sensing rangeof one sensor and enter into the sensing rangeof another sensor it should be reported to theneighboring sensor properly by the previoussensor.

The event rate between two neighboringsensors implies the strength of the detection.Since, it is assumed that the sensor’s transmis-sion range is large enough such that any twoneighbors can directly communicate with eachother. The network is represented as an undi-rected weighted graph G(VG, EG,WG), wherev be the sensors, the (u,v) be the neighboursand WG(u, v) the weighted edge of (u, v) ∈EG [2].

14

IJTRD | Sep-Oct 2017Available [email protected] Page 206

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 15: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

J. Graph Based and Structural Methods for Fin-gerprint Classification

Fingerprint classification is mainly used inForensic investigation department to catch thecriminals. This classification of fingerprintsuses databases for storage of fingerprints. Butthe database will become large and the storagecapacity will be more if it is stored as it is.In this paper we gives an overview regardinggraph based classification of fingerprints.

Various approaches are available for the clas-sification namely structural approaches, statis-tical approaches and graph based approaches.Here it is discussed only the graph basedapproaches. Previously, the work was done onthe basis of segmenting the fingerprint imagesinto regions containing ridges having homoge-neous orientations. But this type of structuralinformation is not useful in identifying thefingerprints based on other classes, since theyhave also the same structural arrangements.The graph based approach uses simple Rela-tional Graphs. This method serves as a guidefor segmentation. Relational Graph appears tobe more appropriate since the nodes naturallycorrespond to the regions extracted by thesegmentation algorithm. Each graph node canbe associated to a segmentation region and theedges join two nodes according to the adja-cency relationship of the respective regions. Tocompute relational graphs, the error correctinggraph matching is used. This method com-putes a measure of the dissimilarity betweenthe graph representing the input pattern tobe classified and a certain graph prototype.This similarity measure is called edit distance.This is done by deformation model which canbe done by substituting, inserting or deletingnodes or edges [5]. The main idea stressed

here is the graph based representation of thefingerprints is much useful for classificationpurpose than the other structural methods.

IV. CONCLUSION

The main aim of this paper is to presentthe importance of graph theoretical ideas invarious areas of compute science and its appli-cations for researchers that they can use graphtheoretical concepts for the research. A surveyis presented specially to project the idea ofGraph Theory. So, that the graph theory ofeach section of the paper is given importancethan the other sections. Researchers may getsome information related to graph theory andits applications in computer science field andcan get some ideas related to their field ofresearch.

REFERENCES

[1] Adam Schenker, Mark Last, horst Banke,Abrahamandel, ”Clustering of Web documents using a graphmodel”, Springer werlog, Septermber 2007.

[2] Anindya J.Pal, Samar S.Sarma, Biman Ray, “CCTP,Graph Coloring algorithms” – Soft computing Solu-tions IEEE, 2007.

[3] Bing Hong Liu, Wel Chieh Ke, Chin-Hsien Tsai,Ming-Jer Tsai, “Constructing a message pruning treewith minimum cost for tracking moving objects inwireless sensor networks”, IEEE Volume 57, Num-ber 6, July 2008.

[4] Daniel Marx, “Graph Coloring problems and theirapplications in scheduling”.

[5] Gian Luca Marcialis, Fabio Roli, Alessandra Serrau,“Graph Based and Structural Methods for Finger-print Classification, Springer verlag,Berlin Heidel-berg 2007.

[6] John.P.Hayes, “A graph Model for Fault TolerantComputing Systems”, IEEE September 1976.

[7] Narasingh Deo, “Graph theory with applications toengineering and computer science”, Prentice Hall ofIndia, 1990.

15

IJTRD | Sep-Oct 2017Available [email protected] Page 207

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com

Page 16: A Survey: Graph Theory in Computer Science and ApplicationsFinding graph planarity, Algorithm to find the connectedness, Algorithm to find adjacency and incidence properties, Algorithm

[8] Perri Mehonen, Janne Riihijarvi, Marina Petrova,“Automatic Channel allocation for small wirelessarea networks using graph coloring algorithm ap-proach”, IEEE 2004.

[9] Shariefuddin Pirzada and Ashay Dharwadker,“Journal of the Korean Society for Industrial andapplied Mathematics, Volume 11, No.4, 2007.

[10] Sven Dickinson, Pelillo, Ramin Zabih, “Introductionto the special section on graph algorithms in com-puter vision”, IEEE on pattern analysis, Vol 23 No.10, September 2001.

[11] V.P.Eswaramoorthy, “New algorithm for analyzingperformance of neighbourhood strategies in solvingjob shop scheduling problems”, Journal of Scientificand Industrial Research, August 2008.

[12] Zongheng Zhou, Samir Das, Himanshu Gupta,“Connected K-Coverage Problem in Sensor Net-works”.

[13] http://www.britinaca.com/bps/additionalcontent/18/33373769/concepts-of-graph-theory-relevant-to-Adhoc-Networks.

[14] http://www.dharwadker.org/vertex_cover/[15] http://www.icaen.uiowa.edu/ dip/LECTURE/Understanding6.html[16] wj:math.sfsu.edu/beck/teach[17] wikipedia.org/wiki/Median graph[18] http://en.wikipedia.org/wiki/Bipartite_graph[19] pedia.org/wiki/Voronoi_diagram[20] http://en.wikipedia.org/wiki/K-means_clustering[21] http://en.wikipedia.org/wiki/Geometric_spannerWiki

16

IJTRD | Sep-Oct 2017Available [email protected] Page 208

International Journal of Trend in Research and Development, Volume 4(5), ISSN: 2394-9333

www.ijtrd.com