0% found this document useful (0 votes)
32 views

module 1-Discrete Structure (2)

The document provides an overview of graph theory, focusing on key concepts such as graph properties, connectivity (vertex and edge), planarity, Eulerian paths and cycles, and minimum spanning trees. It explains the importance of these concepts in practical applications like network design and optimization, detailing algorithms like Kruskal's and Prim's for finding minimum spanning trees. Understanding these properties is essential for analyzing connectivity and solving various optimization problems in different fields.

Uploaded by

Darlene Soberano
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views

module 1-Discrete Structure (2)

The document provides an overview of graph theory, focusing on key concepts such as graph properties, connectivity (vertex and edge), planarity, Eulerian paths and cycles, and minimum spanning trees. It explains the importance of these concepts in practical applications like network design and optimization, detailing algorithms like Kruskal's and Prim's for finding minimum spanning trees. Understanding these properties is essential for analyzing connectivity and solving various optimization problems in different fields.

Uploaded by

Darlene Soberano
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Graph Theory and Networks

In mathematics, graph theory is the study of graphs, which are


mathematical structures used to model pairwise relations between
objects. It is made up of vertices (nodes or points) which are connected by
edges (arcs, links or lines).

A. Graph properties

1. Connectivity
➢ the degree to which a graph is
"connected." It measures how
easily one can travel between
vertices (nodes) in a graph. There
are two main types of
connectivity:
➢ It is important in various
applications, such as network
design, communication, and
transportation systems. Highly
connected graphs are often more
resilient to failures.

a. Vertex Connectivity - The minimum number of vertices that


need to be removed to disconnect the graph. A graph is k-vertex-
connected if removing any k-1 vertices will not disconnect it.

The image above is a complete graph, specifically K6, where all six vertices
are connected to each other by edges. In graph theory, the vertex connectivity of
a graph is the minimum number of vertices that need to be removed to
disconnect the graph or reduce it to a single vertex.
For a complete graph Kn, the vertex connectivity is n−1. This is because, in a
complete graph, each vertex is connected to every other vertex. Therefore:

For K6, the vertex connectivity is 6−1=5.

This means that to disconnect the graph (or make it into a trivial graph
with a single vertex), you would need to remove at least 5 vertices. Removing
fewer than 5 vertices from K6 would still leave at least two vertices connected by
an edge.

b. Edge Connectivity - Similar to vertex connectivity, but considering


edges instead. A graph is k-edge-connected if removing any k-1
edges will not disconnect it.

The image above is a directed graph (digraph) with seven vertices labeled
a, b, c, d, e, f, and g. In graph theory, edge connectivity refers to the minimum
number of edges that need to be removed to disconnect the graph.

To determine the edge connectivity of this graph, we need to find the


smallest set of edges that, when removed, would make the graph disconnected
or isolate at least one vertex from the rest of the graph.

Steps in Determining Edge Connectivity

1. Examine all vertices and their connecting edges:


▪ Vertex a is connected to e and d.
▪ Vertex b is a central vertex connected to a, c, d, e, f and g.
▪ Vertex c is connected to b.
▪ Other vertices also have various connections forming a network.

2. Identify the Minimum Cut of Edges:


The minimum cut refers to the smallest number of edges that can
be removed to split the graph into two or more disconnected components.
3. Check for Edge Cuts
➢ If we remove the edge from a to b (or vice versa), a would still be
connected to the graph through other paths via vertices e and d.
➢ However, if we remove the edges (a,e), (a,d), and (e,b), we isolate
vertex a from the rest of the graph, indicating a possible edge
connectivity.
4. Determination - After examining various possible cuts, the smallest
number of edges that, when removed, would disconnect the graph is 2
(removing edges such as (a,b) and (c,g)) or a combination that disconnects
one component from another.

The edge connectivity of this graph is 2, meaning at least two edges must
be removed to disconnect the graph or isolate a vertex from the rest of the graph.
This is determined by finding the smallest "cut set" of edges that would separate
the graph into disconnected components.

2. Planarity

The study of planarity is crucial for designing circuit boards,


cartography, and visualizing networks without ambiguity.

➢ A graph is planar if it can be drawn on a plane in such a way that


no edges cross each other except at their endpoints. The properties
related to planarity are:

a. Planar Graph - A graph that can be drawn without any edge


intersections.
b. Planar Embedding - A specific drawing of a planar graph on a
plane without crossing edges.

2. Eulerian Paths and Cycles


➢ named after the Swiss mathematician Leonhard Euler
➢ a path in a graph that visits every edge exactly once.
➢ An Eulerian cycle is an Eulerian path that starts and ends at the
same vertex.
▪ For a graph to have an Eulerian path, it must have at most two
vertices with odd degrees (degree being the number of edges
connected to a vertex).

https://www.geeksforgeeks.org/eulerian-path-and-circuit/
▪ For a graph to have an Eulerian cycle, all vertices must have even
degrees.

https://www.geeksforgeeks.org/eulerian-path-and-circuit/

Eulerian paths and cycles have applications in network analysis,


transportation systems, and optimizing routes. Understanding these
graph properties is crucial for designing efficient networks, analyzing
connectivity in various systems, and solving optimization problems. They
form the basis for more advanced graph theory topics and have numerous
practical applications across different fields.
Minimum Spanning Trees
Kruskal's algorithm and Prim's algorithm.

Given a connected, weighted graph G, a minimum spanning tree (MST) is


a tree that includes all vertices of G while minimizing the sum of edge weights.

1. Kruskal's Algorithm
➢ a greedy algorithm that constructs a minimum spanning tree by
iteratively adding edges of increasing weight while ensuring that no
cycle is formed.

Algorithm Steps:

1. Sort all the edges of the graph in ascending order of their weights.
2. Initialize an empty set to store the edges of the MST.
3. Iterate through the sorted edges. For each edge, if adding it to the MST
doesn't create a cycle, add the edge to the MST.
4. Continue this process until the MST has V-1 edges (V is the number of
vertices in the graph) or all edges have been considered.

Example

Consider the graph with vertices A, B, C, D, and E, and the following


weighted edges

AB: 2
AC: 3
BC: 4
BD: 5
BE: 6
CD: 7
CE: 8
DE: 9

The minimum spanning tree obtained using Kruskal's algorithm could be:

AB: 2
AC: 3
BD: 5
BE: 6
2. Prim's Algorithm
➢ another greedy approach that starts with an arbitrary vertex and
incrementally grows the minimum spanning tree by adding the edge
with the minimum weight that connects a vertex in the tree to a
vertex outside the tree.

Algorithm Steps:

1. Choose an initial vertex and mark it as part of the MST.


2. Repeat the following steps until all vertices are in the MST: a. Find the
edge with the minimum weight that connects a vertex in the MST to a
vertex outside the MST. b. Add the chosen edge and the new vertex to the
MST.

Example

Using the same graph and weights as in the Kruskal's algorithm example,
if we start with vertex A, the minimum spanning tree obtained using Prim's
algorithm could be:

AB: 2
AC: 3
BC: 4
BD: 5

Both Kruskal's and Prim's algorithms efficiently find minimum spanning


trees in weighted graphs, providing solutions to optimization problems in various
fields like network design, transportation, and resource allocation. The choice
between these algorithms often depends on factors such as graph density and
the availability of edge sorting algorithms.

You might also like