0% found this document useful (0 votes)
14 views16 pages

Lecture 4

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)
14 views16 pages

Lecture 4

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/ 16

Hamilton Paths and Circuits

We have developed necessary and sufficient conditions for the


existence of paths and cycles that contain every edge of a graph
exactly once. Can we do the same for simple paths and cycles that
contain every vertex of the graph exactly once?

A simple path in a graph 𝐺𝐺 that passes through every vertex


exactly once is called a Hamilton path, and a simple cycle in a
graph 𝐺𝐺 that passes through every vertex exactly once is called a
Hamilton cycle.
Icosian puzzle, 1857, W.R. Hamilton

Wooden dodecahedron (a polyhedron with 12


Is there a cycle in
regular pentagons as faces) is given with 20
the graph
vertices are labeled with different cities in the
that passes
world. Can we start at a city and travel along the
through each
edges of the dodecahedron, visiting each of the
vertex exactly
other 19 cities exactly once, and go back at the
once?
first city?
There are no known simple necessary and sufficient conditions for
the existence of Hamilton cycles.
The problem of identifying the existence of Hamilton path/cycle in a
given graph is NP-complete.
However, many theorems are known that give sufficient conditions
for the existence of Hamilton cycles.
Also, certain properties can be used to show that a graph has no
Hamilton cycle.
- a graph with a vertex of degree one cannot have a Hamilton
cycle, because in a Hamilton cycle, each vertex is incident with
two edges in the cycle.
- if a vertex in the graph has degree two, then both edges that are
incident with this vertex must be part of any Hamilton cycle.
- when a Hamilton cycle is being constructed and this cycle has
passed through a vertex, then all remaining edges incident with
this vertex, other than the two used in the cycle, can be removed
from consideration.

Examples - Neither of the following graphs has a Hamilton cycle.

Because the degrees of the vertices a, b, d, e are all two, every


edge incident with these vertices must be part of any Hamilton
cycle. It is easy to see that no Hamilton cycle can exist because
any Hamilton cycle would have to contain four edges incident
with c, which is impossible.
𝐾𝐾𝑛𝑛 has a Hamilton cycle whenever 𝑛𝑛 ≥ 3.
We can form a Hamilton cycle in 𝐾𝐾𝑛𝑛 beginning at any vertex. This is
possible because there are edges in 𝐾𝐾𝑛𝑛 between any two vertices.

The following example shows that a graph can have many edges, but
2
no Hamiltonian cycle. The graph has 𝑛𝑛 vertices and 𝐶𝐶𝑛𝑛−1 + 1 edges:

𝐾𝐾𝑛𝑛−1
DIRAC’S THEOREM (1952)
If 𝐺𝐺 is a simple graph with 𝑛𝑛 vertices, 𝑛𝑛 ≥ 3, such that the degree
of every vertex in 𝐺𝐺 is at least 𝑛𝑛/2 , then 𝐺𝐺 has a Hamilton cycle.

ORE’S THEOREM (1960)


If 𝐺𝐺 is a simple graph with 𝑛𝑛 vertices, 𝑛𝑛 ≥ 3, such that
d u + d(v) ≥ 𝑛𝑛 for every pair of nonadjacent vertices u and v
in 𝐺𝐺, then 𝐺𝐺 has a Hamilton cycle.
Both Ore’s theorem and Dirac’s theorem provide sufficient
conditions only for a connected simple graph to have a Hamilton
cycle. For example, the graph 𝐶𝐶5 has a Hamilton cycle but does not
satisfy the hypotheses of either Ore’s theorem or Dirac’s theorem.
Applications of Hamilton Cycles
Traveling salesperson problem or TSP (also known as the traveling
salesman problem)

A traveling salesperson wants to visit each of 𝑛𝑛 cities exactly


once and return to his starting point. In which order should he
visit these cities to travel the minimum total distance?
Thus, given 𝑛𝑛 cities: 1,2, … 𝑛𝑛, and the distance between each
pair of cities is known, 𝑑𝑑𝑖𝑖,𝑗𝑗 ≥ 0 is the distance between the 𝑖𝑖-
th and 𝑗𝑗-th cities, 1 ≤ 𝑖𝑖 ≠ 𝑗𝑗 ≤ 𝑛𝑛.
We construct a graph, where vertices correspond to the cities,
there is an edge between every pair of vertices; and edges have
weights 𝑑𝑑𝑖𝑖,𝑗𝑗 is assigned to the edge (𝑖𝑖, 𝑗𝑗).

The traveling salesperson problem asks for the cycle of minimum


total weight in a weighted, complete, undirected graph that visits
each vertex exactly once and returns to its starting point. This is
equivalent to asking for a Hamilton cycle with minimum total
weight in the complete graph.
Graph Coloring
How to color the map of the world such that two regions with a
common border are assigned different colors (we assume that all
regions in a map are connected). One way to be sure that two adjacent
regions never have the same color is to use a different color for each
region. However, this is inefficient, and on maps with many regions it
would be hard to distinguish similar colors.
Find the smallest number of colors that can be used to color the map
such that two regions with a common border are assigned different
colors.
Each map in the plane can be represented by a graph: each region
of the map is represented by a vertex; edges connect two vertices
if the regions represented by these vertices have a common
border. Two regions that touch at only one point are not
considered adjacent.
The problem of coloring the regions of a map is equivalent to the
problem of coloring the vertices of the graph so that no two
adjacent vertices in this graph have the same color.
Vertex coloring
Definition
A vertex coloring of a simple graph is the assignment of a color to
each vertex of the graph so that no two adjacent vertices are
assigned the same color (proper coloring).

The chromatic number of a graph is the least number of colors


needed for a coloring of all the vertices of graph (so that no two
adjacent vertices are assigned the same color) . The chromatic
number of a graph 𝐺𝐺 is denoted by 𝜒𝜒(𝐺𝐺).
The problem of finding the chromatic number of a graph is NP-
complete.
In order to prove that 𝜒𝜒(𝐺𝐺) = 𝑘𝑘, we must first prove that 𝐺𝐺 can be colored
with 𝑘𝑘 colors, and then, that it is not possible to color with fewer colors.
Clearly, 𝜒𝜒(𝐺𝐺) = 1 if and only if all vertices of 𝐺𝐺 are isolated.
𝜒𝜒(𝐺𝐺) = 2 if and only if 𝐺𝐺 is a bipartite graph with at least 1 edge.
2 𝑖𝑖𝑖𝑖 𝑛𝑛 𝑖𝑖𝑖𝑖 𝑒𝑒𝑒𝑒𝑒𝑒𝑒𝑒
𝜒𝜒 𝐶𝐶𝑛𝑛 = � .
3 𝑖𝑖𝑖𝑖 𝑛𝑛 𝑖𝑖𝑖𝑖 𝑜𝑜𝑜𝑜𝑜𝑜
𝜒𝜒 𝐾𝐾𝑛𝑛 = 𝑛𝑛.

ω(𝐺𝐺) - is the greatest number 𝑘𝑘, such that 𝐺𝐺 has a complete subgraph
with 𝑘𝑘 vertices.
Δ(𝐺𝐺) – is the greatest degree in the graph 𝐺𝐺.
Theorem.
For arbitrary graph 𝐺𝐺
ω 𝐺𝐺 ≤ 𝜒𝜒 𝐺𝐺 ≤ Δ 𝐺𝐺 + 1.
Algorithm for the vertex coloring of a simple graph
Let 𝐺𝐺 be a graph with 𝑛𝑛 vertices: 𝑣𝑣1 , 𝑣𝑣2 , ⋯ , 𝑣𝑣𝑛𝑛 .
One by one color the vertices 𝑣𝑣1 , 𝑣𝑣2 , ⋯ , 𝑣𝑣𝑛𝑛 of the graph, assigning to
the vertex 𝑣𝑣𝑖𝑖 the color with smallest index which is not used for the
coloring of adjacent to 𝑣𝑣𝑖𝑖 vertices.
Example, a,b,c,d,e,f
1,2,c,d,e,f
1,2,2,d,e,f
1,2,2,3,e,f
1,2,2,3,3,1

The algorithm may use more colors than is needed.


Edge coloring
Definition
An edge coloring of a graph is an assignment of colors to edges so,
that edges incident with a common vertex are assigned different
colors. The chromatic index of a graph is the smallest number of
colors that can be used in an edge coloring of the graph. The
chromatic index of a graph G is denoted by 𝜒𝜒𝜒(𝐺𝐺).

The problem of finding the chromatic index of a graph is NP-


complete.
′ 2 𝑖𝑖𝑖𝑖 𝑛𝑛 𝑖𝑖𝑖𝑖 𝑒𝑒𝑒𝑒𝑒𝑒𝑒𝑒
𝜒𝜒 𝐶𝐶𝑛𝑛 =�
3 𝑖𝑖𝑖𝑖 𝑛𝑛 𝑖𝑖𝑖𝑖 𝑜𝑜𝑜𝑜𝑜𝑜
Theorem (Vizing)

′ 𝑛𝑛 − 1 𝑖𝑖𝑖𝑖 𝑛𝑛 𝑖𝑖𝑖𝑖 𝑒𝑒𝑒𝑒𝑒𝑒𝑒𝑒


𝜒𝜒 𝐾𝐾𝑛𝑛 =�
𝑛𝑛 𝑖𝑖𝑖𝑖 𝑛𝑛 𝑖𝑖𝑖𝑖 𝑜𝑜𝑜𝑜𝑜𝑜

Theorem (Vizing) Theorem (Konig)


For arbitrary graph 𝐺𝐺
𝜒𝜒′ 𝐺𝐺 = 𝛥𝛥(𝐺𝐺) for bipartite
∆ 𝐺𝐺 ≤ 𝜒𝜒 ′ 𝐺𝐺 ≤ ∆ 𝐺𝐺 + 1,
graphs.
where ∆ 𝐺𝐺 = max 𝑑𝑑(𝑣𝑣)
𝑣𝑣∈𝐺𝐺

You might also like