Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

44
Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul http://zitompul.wordpress.com

Transcript of Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

Page 1: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

Discrete Mathematics

6. GRAPHS

Lecture 10

Dr.-Ing. Erwin Sitompulhttp://zitompul.wordpress.com

Page 2: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/2Erwin Sitompul Discrete Mathematics

Homework 9

Graph G is given by the figure below.(a) List all possible paths from A to C.(b) List all possible circuits.(c) Write down at least 4 cut sets of the graph.(d) Draw the subgraph G1 = {B,C,X,Y}.(e) Draw the complement of subgraph G1.

Graph G

Page 3: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/3Erwin Sitompul Discrete Mathematics

Solution of Homework 9

(a) All possible paths from A to C.

Graph G

(A,X,Y,C) and (A,X,B,Y,C)

(b) All possible circuits.(B,X,Y,B)

(c) At least 4 cut sets of the graph.{(A,Z) }, {(A,X) },{(C,Y)}, {(A,Z),(A,X)}, {(B,X),(B,Y)}, {(B,X),(X,Y)}

Page 4: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/4Erwin Sitompul Discrete Mathematics

Solution of Homework 9

(d) Subgraph G1 = {B,C,X,Y}.

(e) Complement of subgraph G1.

Graph G

Page 5: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/5Erwin Sitompul Discrete Mathematics

Bipartite Graph If the vertices of graph G can be separated into two subsets

V1 and V2, such that every edge of G connects a vertex in V1 to a vertex in V2, then G is called a bipartite graph.

Bipartite graph is denoted as as G(V1,V2).

V1 V2

Page 6: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/6Erwin Sitompul Discrete Mathematics

Is this graph a bipartite graph?

Bipartite Graph

Yes, because the vertices can be divided into two subsets V1 = {a,b,d} and V2 = {c,e,f,g}.

Page 7: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/7Erwin Sitompul Discrete Mathematics

Isomorphic Graph Graphs that are actually identical but geometrically different

are called isomorphic. Two graphs G1 and G2 are isomorphic if there is a one-to-one

correspondence between vertices of the two graphs that preserves the adjacency relationship.

In other words, suppose the edge e is incident to vertex u and vertex v in G1, then the corresponding edge e’ must be incident to vertex u’ and vertex v’ in G2.

Two isomorphic graphs are identical graphs, different only in the naming of the vertices and edges or the geometrical representation only.

Page 8: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/8Erwin Sitompul Discrete Mathematics

Isomorphic Graph

3

4

1 2

d c

a b

v w

x y(a) (b) (c)

• Graph (a) and graph (b) are isomorphic• Graph (a) and graph (c) are not isomorphic

Page 9: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/9Erwin Sitompul Discrete Mathematics

Isomorphic Graph

2 isomorphic graphs

3 isomorphic graphs

Page 10: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/10Erwin Sitompul Discrete Mathematics

Isomorphic Graph From the definition of isomorphic graphs, it can be concluded

that if two graphs are isomorphic, then both of them: 1. Have the same number of vertices. 2. Have the same number of edges. 3. Have the same number of vertices of each degree. The 3 conditions listed above are necessary conditions, but

not sufficient conditions. Further visual inspection is required, as can be seen from the

example below. The 3 conditions are met but both graphs are not isomorphic.

x

u

v

w

y

(a) (b)

Page 11: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/11Erwin Sitompul Discrete Mathematics

A graph is called planar if it can be drawn in a plane without any edges crossing (where a crossing of edges is the intersection of the arcs representing them at a point other than their common vertices).

Such a drawing is called a planar representation of the graph. If there is any edges crossing, then the graph called non-

planar.

Planar graph, the crossing edges can be rearranged and the graph can be redrawn

without crossing

Planar Graph

Page 12: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/12Erwin Sitompul Discrete Mathematics

Example of non-planar graph

Planar Graph

Example of planar graph

Page 13: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/13Erwin Sitompul Discrete Mathematics

A planar graph which is drawn without any edges crossing is called a plane graph.

Graph (a), (b), (c) are planar graphsGraph (b), (c) are plane graphs

Plane Graph

(a) (c)(b)

Page 14: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/14Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit An Euler path in a graph is a path that contains every edge

of the graph exactly once. An Euler circuit in a graph is a circuit that contains every

edge of a graph exactly once. A graph that contains Euler path is also called semi-Eulerian

graph. A graph that contains Euler circuit is also called Eulerian

graph.

Page 15: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/15Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit

Example: Euler path in graph (a): 3, 1, 2, 3, 4, 1. Euler path in graph (b): 1, 2, 4, 6, 2, 3, 6, 5, 1, 3, 5. Euler circuit in graph (c): 1, 2, 3, 4, 7, 3, 5, 7, 6, 5, 2, 6, 1.

12

3 4

1 2

34

5 6

1

2 3

45

6 7(a) (b) (c)

Graph (a) and (b) are semi-Eulerian graph. Graph (c) is an Eulerian graph.

Page 16: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/16Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit

Graph (d) is an Eulerian graph. Graph (e) is neither semi-Eulerian nor Eulerian graph. Graph (f) is a semi-Eulerian graph.

b

e

d

c

f

ba

c d

1 2

3

4 5 e

(d)

(e) (f)

a

Example: Euler circuit in graph (d): a, c, f, e, c, b, d, e, a, d, f, b, a. Graph (e) contains neither Euler path nor Euler circuit. Graph (f) contains Euler path.

Page 17: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/17Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit

Theorem:An undirected graph G contains Euler path if and only if it is connected and has two vertices of odd degree or does not have any vertices of odd degree at all.

Theorem:An undirected graph G contains Euler circuit if and only if it is connected and each of its vertices has even degree. In other words: An undirected graph G is an Eulerian graph if

and only if the degree of every vertex is even.

Page 18: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/18Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit

Theorem:A directed graph G contains Euler circuit if and only if G is connected and for each vertex, the in-degree and out-degree are the same.

Theorem:A directed graph G contains Euler path if and only if G is connected and for each vertex, the in-degree and out-degree are the same, except two vertices, where the first vertex’s out-degree is one greater than the in-degree and the second vertex’s in-degree is one greater than the out-degree.

Page 19: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/19Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit

Example:(a) An Eulerian digraph: a, g, c, b, g, e, d, f, a.(b) A semi-Eulerian digraph: d, a, b, d, c, b.(c) A digraph, but neither Eulerian nor semi-Eulerian.

ab

c

de

fg

a b

cd

a b

cd

(a)(b) (c)

Page 20: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/20Erwin Sitompul Discrete Mathematics

Euler Path and Euler Circuit

Example:Is it possible to draw the graph below, by starting from any vertex, and without drawing any line twice?

Solution:Yes, possible.All the vertices in the undirected graph above are of even degree. Therefore, the Euler circuit can be drawn. The graph is an Eulerian graph.

Page 21: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/21Erwin Sitompul Discrete Mathematics

Bridges of Königsberg (Euler, 1736)

Can someone pass every bridge exactly once and come back the his/her original position?

Solution:No, impossible.The degrees d(A) = 5, d(B) = 3, d(C) = 3, d(D) = 3 4 vertices of odd degree. The Euler circuit cannot be drawn.

Page 22: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/22Erwin Sitompul Discrete Mathematics

Hamilton Path and Hamilton Circuit A Hamilton path in a graph is a path that passes every

vertex of the graph exactly once. A Hamilton circuit in a graph is a circuit that passes every

vertex of the graph exactly once, except one vertex which is the origin and (at the same time) the destination, is passed twice.

A graph that contains Hamilton path is also called semi-Hamiltonian graph .

A graph that contains Hamilton circuit is also called Hamiltonian graph.

Page 23: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/23Erwin Sitompul Discrete Mathematics

Hamilton Path and Hamilton Circuit

(a) (b) (c)

1 2

34

1 2

34

1 2

34

Example: Graph (a) contains Hamilton paths: i.e., 3, 2, 1, 4. Graph (b) contains Hamilton circuits: i.e., 1, 2, 3, 4, 1. Graph (c) does not contain either Hamiltonian path or

Hamiltonian circuit.

Page 24: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/24Erwin Sitompul Discrete Mathematics

Example:Find a Hamilton circuit in the following graph.

Hamilton Path and Hamilton Circuit

Page 25: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/25Erwin Sitompul Discrete Mathematics

Theorem:A sufficient condition for a graph G with the number of vertices n 3 to be a Hamiltonian graph is that the degree of each vertex v in G to be at least n/2, or d(v) n/2.

Hamilton Path and Hamilton Circuit

Page 26: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/26Erwin Sitompul Discrete Mathematics

Paths and Circuits

12

3 4

1 2

3

5 4

1

2 3

4

6 5(a) (b) (c)

Graph (a) contains Euler path only. Graph (b) contains Euler path and Hamilton circuit. Graph (c) contains Euler circuit and Hamilton circuit.

A graph can contain Euler circuit/path and Hamilton circuit/path simultaneously.

A graph can also only contain Euler circuit/path or Hamilton circuit/path.

Page 27: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/27Erwin Sitompul Discrete Mathematics

Applications of Graphs

Travelling salesman problem. Chinese postman problem. Graph coloring.

Page 28: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/28Erwin Sitompul Discrete Mathematics

Travelling Salesman Problem (TSP) For this problem, a number of cities and the distances

between them are given. Determine the shortest circuit that must be traveled by a

salesman if he departs from a city of origin and stop by in each city exactly once and goes back to the city of origin.

This is a problem of how to find a Hamilton circuit with the minimum weight (distance).

Page 29: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/29Erwin Sitompul Discrete Mathematics

Mr. Postman collects the letters for mailboxes which are distributed in n locations in a certain town.

The robot arm fastens n bolts of a car in an assembly line. Production process of n different products in one cycle.

Applications of TSP

Page 30: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/30Erwin Sitompul Discrete Mathematics

Applications of TSP

Example:Determine the shortest Hamilton circuit in the following graph.

a b

cd

12

8

15

1095

Solution:There are 3 Hamilton circuits in the given graph above.

a b

cd

12

8

15

10

a b

cd

12

15

95

a b

cd

81095

Page 31: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/31Erwin Sitompul Discrete Mathematics

Applications of TSP

P1 = (a, b, c, d, a) or (a, d, c, b, a) Total weight = 12 + 8 + 15 + 10 = 45

P2 = (a, b, d, c, a) or (a, c, d, b, a) Total weight = 12 + 9 + 15 + 5 = 41

P3 = (a, c, b, d, a) or (a, d, b, c, a) Total weight = 5 + 8 + 9 + 10 = 32

Shortest Hamilton circuit: P3

a b

cd

12

8

15

10

a b

cd

12

15

95

a b

cd

81095

Page 32: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/32Erwin Sitompul Discrete Mathematics

Chinese Postman Problem The problem was first discussed by Mei Gan in 1962. Problem: A postman will deliver the letters to the addresses

in a part of a city. How should he plan the route of his journey so that he can pass each street exactly once and go back to the place where he starts his journey?

This is a problem of how to find an Euler circuit in a graph.

Page 33: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/33Erwin Sitompul Discrete Mathematics

If the graph of the problem is an Eulerian graph, then the Euler circuit can easily be found.

If the graph of the problem is not an Eulerian graph, then some edges in the graph must be passed more than once.

So, the postman must find a circuit that passes every street at least once with the shortest distance possible.

Chinese Postman Problem becomes:A postman will deliver the letters to the addresses in a part of a city. How should he plan his route so that: The route has the shortest distance. The postman passes every street at least once. The postman goes back to his original position.

Chinese Postman Problem

Page 34: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/34Erwin Sitompul Discrete Mathematics

Example:Determine the best path that can be chosen by a postman so that he can pass every edge of the following graph at least once.

B C

EF

8

5

3A D8

2

1

6

44

2

Solution:The path that should be chosen by the postman is:A, B, C, D, E, F, C, E, B, F, A Weight = 2 + 8 + 1 + 2 + 5 + 4 + 4 + 8 + 3 + 6 = 43.

Chinese Postman Problem

Page 35: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/35Erwin Sitompul Discrete Mathematics

Graph Coloring A graph is colored in such a way that each vertex is given a

color while two adjacent vertices may not have the same color.

red blue

yellow

redblue

yellow

yellow

Page 36: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/36Erwin Sitompul Discrete Mathematics

Graph Coloring Chromatic Number: the minimum number of colors required

to color a graph. Symbol: (G), pronounced “k-eye”. A graph G with chromatic number k is denoted as (G) = k. The graph below has (G) = 3.

red blue

yellow

redblue

yellow

yellow

Page 37: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/37Erwin Sitompul Discrete Mathematics

Application of Graph Coloring Map Coloring A map consists of

a number of regions.

A map should be colored in such a way that two neighboring regions must have different colors.

Page 38: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/38Erwin Sitompul Discrete Mathematics

The regions are represented by the vertices, and the border between two neighboring regions is represented by an edge.

Coloring a region in a map means coloring the vertex in the corresponding graph.

Neighboring regions must have different colors The color of every incident vertices must be different.

Application of Graph Coloring

Page 39: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/39Erwin Sitompul Discrete Mathematics

2

3

1

45

67

8

2

3

1

45

67

8

Application of Graph Coloring

Map

2

3

1

4

67

8 5

Graph representation

Graph coloring, 8 different colors

Graph coloring, 4 different colors

2

3

1

4

67

8

red yellow

purple5

orange

whiteblack

blue

green

2

3

1

4

67

8

red yellow

purple5

red

yellowred

blue

yellow

Map and corresponding graph

representation

Page 40: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/40Erwin Sitompul Discrete Mathematics

Application of Graph Coloring Scheduling Suppose there are eight IE students batch 2009

(1, 2, …, 8) and five lectures available to be chosen (A, B, C, D, E).

The following table shows the matrix of five lectures and eight students.

Value 1 in a cell (i, j) means student i takes lecture j.

Value 0 means student i does not take lecture j.

Page 41: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/41Erwin Sitompul Discrete Mathematics

Application of Graph Coloring Problem: If in one day there may only be one exam, what is

the minimum number of days required to schedule the exams such that every student can take his/her exams without any time conflicts?

Solution:vertex lectureedge there is at least one student who takes both lectures (which are connected by the edge)

Page 42: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/42Erwin Sitompul Discrete Mathematics

A

B E

DC

red

red

red

blue

blue

A

B E

DC

Application of Graph Coloring

Graph of exam schedule problem

The result of graph coloring

The chromatic number is 2. The exams of lectures A,

E, and D can be conducted together in one day.

The exams of lectures B and C should be conducted in another day.

Page 43: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/43Erwin Sitompul Discrete Mathematics

Homework 10, No.1Take a look at the graphs (a), (b), and (c). Determine whether each graph is an Eulerian graph, semi-

Eulerian graph, Hamiltonian graph, or semi-Hamiltonian graph.

Give enough explanation to your answer.

Page 44: Discrete Mathematics 6. GRAPHS Lecture 10 Dr.-Ing. Erwin Sitompul .

10/44Erwin Sitompul Discrete Mathematics

Homework 10, No.2A department has six task forces. Every task force conducts a routine monthly meeting. The member of the six task forces are: TF1 = {Amir, Budi, Yanti} TF2 = {Budi, Hasan, Tommy} TF3 = {Amir, Tommy, Yanti} TF4 = {Hasan, Tommy, Yanti}TF5 = {Amir, Budi} TF6 = {Budi, Tommy, Yanti} (a) What is the minimum number of time slots that must be allocated so that everyone that belong to more than one task force can attend the meetings that he/she must join without any time conflict?(b) Draw the graph that represents this problem and explain what do a vertex and an edge represent.