Chapter 8. Topics in Graph Theory - PowerPoint PPT Presentation

1 / 105
About This Presentation
Title:

Chapter 8. Topics in Graph Theory

Description:

Chapter 8. Topics in Graph Theory Weiqi Luo ( ) School of Software Sun Yat-Sen University Email weiqi.luo_at_yahoo.com Office A309 – PowerPoint PPT presentation

Number of Views:261
Avg rating:3.0/5.0
Slides: 106
Provided by: HFJ
Category:

less

Transcript and Presenter's Notes

Title: Chapter 8. Topics in Graph Theory


1
Chapter 8. Topics in Graph Theory
  • Weiqi Luo (???)
  • School of Software
  • Sun Yat-Sen University
  • Emailweiqi.luo_at_yahoo.com OfficeA309

2
Chapter eight Topics in Graph Theory
  • 8.1. Graphs
  • 8.2. Euler Paths and Circuits
  • 8.3. Hamiltonian Paths and Circuits
  • 8.4. Transport Networks
  • 8.5. Matching Problems
  • 8.6. Coloring Graphs

3
8.1 Graphs
  • Graph
  • A graph G(V, E, ?) consists of a finite set
    V of objects called vertices, a finite set E of
    objects called edges, and a function ? that
    assigns to each edge a subset v, w, where v and
    w are vertices (and may be the same).
  • End points
  • If ?(e)v, w, then vertices v and w are
    called the end points of e.

4
8.1 Graphs
  • Example 1 2
  • Let V1,2,3,4 and Ee1,e2,e3,e4,e5. Let
    ? be defined by ?(e1) ?(e5)1,2,
    ?(e2)4,3, ?(e3)1,3, ?(e4)2,4 .
  • Then G(V,E,?) is a graph.

Isomorphic Graphs
5
8.1 Graphs
  • Degree
  • The degree of a vertex is the number of edges
    having that vertex as an end point.
  • Loop
  • An edge is referred to as a loop if the edge
    is from a vertex to itself.
  • Note a loop contributes 2 to the degree of a
    vertex, since that vertex serves as both end
    points of the loop.
  • Isolated
  • A vertex with degree 0 is called an isolated
    vertex.

6
8.1 Graphs
  • Example 3

A 2 B4 C 1 D 3 E 2
a 4 b2 c 3 d 1 e 0
All edges with degree 2
7
8.1 Graphs
  • Path in a Graph
  • A path ? in a graph G consists of a pair (V?,
    E?) of sequences a vertex sequence V? v1, v2,
    , vk and an edge sequence E ? e1, e2,,ek-1 for
    which
  • Each successive pair vi, vi1 of vertices is
    adjacent in G, and edge ei has vi and vi1 as end
    points for i1, , k-1
  • No edge occurs more than once in the edge
    sequence.

8
8.1 Graphs
  • Circuit (cycle)
  • A circuit is a path that begins and ends at
    the same vertex.
  • Simple
  • A path is called simple if no vertex appears
    more than once in the vertex sequence, except
    possibly if v1vk. In this case, the path is
    called a simple circuit.

9
8.1 Graphs
  • Connected, Disconnected Components
  • A graph is called connected if there is a
    path from any vertex to any other vertex in the
    graph. Otherwise, the graph is disconnected. If
    the graph is disconnected, the various connected
    pieces are called the components of the graph.

Connected
Disconnected Two components
10
8.1 Graphs
  • Some important special families of graphs will
    be useful in our discussions.
  • Un (discrete graph) denote the graph with n
    vertices and no edges.
  • Ln (linear graph) denote the graph with n
    vertices and with edges vi,vj for 1 i ltn

11
8.1 Graphs
  • Kn (complete graph) denote the graph with n
    vertices and with an edge vi, vj for all i and
    j.
  • Regular
  • If each vertex of a graph has the same degree
    as every other vertex, the graph is called
    regular.
  • e.g. Kn and Fig. 8.6

12
8.1 Graphs
  • Subgraph
  • Support that G(V, E, ?) is a graph. Choose a
    subset E1 of the edges in E and a subset V1 of
    the vertices in V, so that V1 contains (at least)
    all the end points of edges in E1. Then H(V1,E1,
    ?1) is also a graph where ?1 is ? restricted to
    edges in E1. Such a graph H is called a subgraph
    of G.

13
8.1 Graphs
  • The subgraph Ge
  • Deleting one edge and no vertices

ea,b
14
8.1 Graphs
  • Example 8

G
15
8.1 Graphs
  • Example 9 (Quotient graph GR)
  • Let G be the graph (without multiple edges)
    of the following figure, and let R be the
    equivalence relation on V defined by the
    partition.
  • a, m, i, b, f, j, c,
    g, k, d, h, l

GR
16
8.1 Graphs
  • Example 9
  • If S is also an equivalence relation on V
    defined by the partition.
  • i, j, k, l, a, m,f, b, c, d, g,
    h

GS
17
8.1 Graphs
  • The Quotient graph Ge
  • If e is an edge between vertex v and w in a
    graph GV,E, ?, then we consider the
    equivalence relation whose partition consists of
    v, w and vi, for each vi ? v, vi ? w.
    (merging v and w and leaving others alone)

ei, j
18
8.1 Graphs
  • Homework
  • Ex. 6, Ex. 16, Ex. 20, Ex. 22, Ex. 23, Ex. 29

19
8.2 Euler Paths and Circuits
  • Seven Bridges of Königsberg (from Wikipedia)

Question Is it possible to walk through the
city that would cross each bridge once and only
once?
Vertex Land
Edge Bridge
20
8.2 Euler Paths and Circuits
  • Euler path
  • A path in a graph G is called an Euler path if
    it includes every edge exactly once.
  • Euler circuit
  • An Euler circuit is an Euler path that is a
    circuit.
  • About Leonhard Euler
  • http//en.wikipedia.org/wiki/Leonhard_Euler

21
8.2 Euler Paths and Circuits
  • Example 1

22
8.2 Euler Paths and Circuits
  • Example 2

E
D
B
C
A
An Euler Path E, D, B, A, C
An Euler circuit 5, 3, 2, 1, 3, 4, 5
23
8.2 Euler Paths and Circuits
  • Example 2

Q An Euler Circuit?
Q An Euler Path?
A No
A No
24
8.2 Euler Paths and Circuits
  • Example 3

Vertex Room or Outside Edge door
Q Is it possible to begin in a room or outside
and take a walk that goes through each door
exactly once?
25
8.2 Euler Paths and Circuits
  • Two Questions
  • Is it possible to determine whether an Euler path
    or Euler circuit exists without actually finding
    it?
  • Theorem 1 (Euler circuit)
  • Theorem 2 (Euler path)
  • If exists Euler circuit, how to find it
    effectively?
  • Fleurys algorithm

26
8.2 Euler Paths and Circuits
  • Theorem 1
  • (a) If a graph G has a vertex of odd degree,
    there can be no Euler circuit in G


3

3
2
2
2n
2n
1
1
2n1
2n1
V of odd degree
V of odd degree
End at v
Begin at v
27
8.2 Euler Paths and Circuits
  • Theorem 1
  • (b) If G is a connected graph and every vertex
    has even degree, then there is an Euler circuit
    in G.
  • The Strategy of this proof (b)
  • Support there is a largest (smallest) object
    and construct a larger (smaller) object of the
    same type thereby creating a contradiction.

28
8.2 Euler Paths and Circuits
  • Proof (b)
  • Basic Step V1, 2 is true (why?)
  • Induction Step V1,2k is true ? Vk1 is
    true
  • Assume G is connected and has more than one
    vertex, then there exists a simple path having
    the longest possible length (why?). Let its
    vertex sequence ?0 v1 v2,,vs.
  • Since vs has even degree and ?0 uses
    only one edge that has vs as a vertex, there must
    be an edge e not in ?0 that also has vs as a
    vertex.
  • If the other vertex of e is not in ?0,
    then we can construct a simple path longer than
    ?0(why?), which is a contradiction.
  • Thus e has some vi as its other vertex,
    and therefore we have a simple circuit vi vi1,
    vs, vi in G.

29
8.2 Euler Paths and Circuits
  • Choose the longest circuit ? in G, and delete all
    edges in ? (but no vertices).
  • Assuming there is no Euler circuits in
    G, then ? cannot contain all edges of G (why?).
  • Let G1 be the graph formed form G by
    deleting all edges in ? (but no vertices). Since
    ? is a circuit, deleting its edges will reduce
    the degree of every vertex by 0 or 2, so G1 is
    also a graph with all vertices of even degree.
    Choose any connected component in G1 and call
    this graph G2 (G2 may be G1).
  • Then G2 has also a circuit ? (why?).

30
8.2 Euler Paths and Circuits
  • Consider ? and ? in G
  • case 1 if ? and ? have vertices in
    common, e.g. v, then we can construct a circuit
    in G that is longer than ? by combing ? and ? at
    v (contradiction!)
  • Case 2 If there is no common vertex in ?
    and ?. Then VG2 lt VG, then G2 has a Euler
    Circuit (why? ) , then G becomes not connected
    (why?) , which is a contradiction.
  • Therefore, the assumption is wrong, namely, G has
    Euler circuit.

31
8.2 Euler Paths and Circuits
  • Theorem 2
  • (a) If a graph G has more than two vertices of
    odd degree, then there can be no Euler path in G
  • Proof Let v1, v2, v3 be vertices of odd
    degree. Any possible Euler path must leave (or
    arrive at) each of v1, v2, v3 with no way to
    return (or leave) since each of these vertices
    has odd degree. One vertex of these three
    vertices may be the beginning of the Euler path
    and another the end, but this leaves the third
    vertex at one end of an untraveled edge. Thus
    there is no Euler path.

32
8.2 Euler Paths and Circuits
  • Theorem 2
  • (b) If G is connected and has exactly two
    vertices of odd degree, there is an Euler path in
    G. Any Euler path in G must begin at one vertex
    of odd degree and end at the other.
  • Proof Let u and v be the two vertices of odd
    degree. Adding the edge u, v to G produces a
    connected graph G all of whose vertices have
    even degree. By Theorem 1(b), there is an Euler
    circuit ? in G. Omitting u, v from ?
    produces an Euler path that begins at u (or v)
    and ends at v (or u).

33
8.2 Euler Paths and Circuits
  • Example 4

Each of the four vertices has degree 3. No Euler
path and Euler circuit.
There has exactly two vertices of odd degree.
There is no Euler circuit, but there must be an
Euler path.
Every vertex has even degree, thus the graph must
have an Euler circuit.
34
8.2 Euler Paths and Circuits
  • Bridge
  • An edge is a bridge in a connected graph G if
    deleting it would create a disconnected graph.

r is a bridge
s is a bridge
t is a bridge
35
8.2 Euler Paths and Circuits
  • Algorithm FLEURYS ALGORITHM
  • Let GV,E,? be a connected graph with each
    vertex of even degree.
  • Step 1 Select an edge e1 that is not a bridge in
    G. Let its vertices be v1, v2. Let ? be specified
    by V? v1, v2 and E? e1. Remove e1 from E and
    let G1 be the resulting subgraph of G.
  • Step 2 Suppose that V? v1, v2 vk and E? e1 e2
    ek-1 have been constructed so far, and that all
    of these edges and any resulting isolated
    vertices have been removed from V and E to form
    Gk-1.
  • Since vk has even degree, and ek-1 ends
    there, there must be an edge ek in Gk-1 that also
    has vk as a vertex. If there is more than one
    such edge, select one that is not a bridge for
    Gk-1. Denote the vertex of ek other than vk by
    vk1, Extend V? v1, v2 vk vk1 and E? e1 e2
    ek-1 ek.
  • Step 3 repeat Step 2 until no edges remain in E

36
8.2 Euler Paths and Circuits
  • Example 6
  • Use Fleurys algorithm to construct an Euler
    circuit for the following graph.

37
8.2 Euler Paths and Circuits
  • Homework
  • Ex. 6, Ex. 12, Ex. 14, Ex. 15, Ex. 21, Ex. 25

38
8.3 Hamiltonian Paths and Circuits
  • Hamiltonian path
  • A Hamiltonian path is a path that contains
    each vertex exactly once.
  • Hamiltonian circuit
  • A Hamiltonian circuit is a circuit that
    contains each vertex exactly once except for the
    first vertex.

39
8.3 Hamiltonian Paths and Circuits
  • Loop and Multiple edges

Loops and multiple edges are of no use in finding
Hamiltonian circuits, since loops Could not be
used, and only one edge can be used between any
two vertices. Thus we support that any graph in
this section has no loops or multiple edges.
40
8.3 Hamiltonian Paths and Circuits
  • An Example for Hamiltonian circuit

41
8.3 Hamiltonian Paths and Circuits
  • Example 1

Has Hamiltonian path But no Hamiltonian circuit
Has Hamiltonian path Hamiltonian circuit
No Hamiltonian Path
42
8.3 Hamiltonian Paths and Circuits
  • Example 2
  • Any complete graph Kn has Hamiltonian
    circuits? In fact, starting at any vertex, you
    can visit the other vertices sequentially in any
    desired order.

Q How about K2?
n should be larger than 2
43
8.3 Hamiltonian Paths and Circuits
  • Two Questions
  • Is it possible to determine whether a Hamiltonian
    path or circuit exists?
  • has not been completely answered
  • If there must be a Hamiltonian path or circuit,
    it there an efficient way to find it?
  • is still unanswered.

44
8.3 Hamiltonian Paths and Circuits
  • Theorem 1
  • Let G be a connected graph with n vertices,
    ngt2, and no loops or multiple edges.
  • G has a Hamiltonian circuit if for any two
    vertices u and v of G that are not adjacent, the
    degree of u plus the degree of v is greater than
    or equal to n.
  • Corollary 1
  • G has a Hamiltonian circuit if each vertex
    has degree greater than or equal to n/2.

45
8.3 Hamiltonian Paths and Circuits
  • Theorem 2
  • Let the number of edges of G be m. Then G has
    a Hamiltonian circuit if m (n2-3n6)/2, where n
    is the number of vertices
  • Proof Support u v are non-adjacent
    vertices in G. Let deg(x) for the degree of x.
    Let H be the graph produced by eliminating u and
    v from G along with any edges that have u or v as
    end points. Then H has n-2 vertices and m-
    deg(u) deg(v) edges.
  • The maximum number of edges that H could
    possibly have is
  • And then we have m deg(u)-deg(v) lt
    ½(n2-5n6 )
  • thus deg(u) deg(v) gt n (Theorem 1 holds)

46
8.3 Hamiltonian Paths and Circuits
  • Example 3

A
V 8
B
H
For any pair of nonadjacent vertices u and
v deg(u) deg(v) 4 lt 8
C
G
D
F
Therefore, the conditions given in Theorem 1 2
are sufficient, but not necessary, for the
conclusion.
E
A Hamiltonian Circuit
47
8.3 Hamiltonian Paths and Circuits
  • Traveling salesperson problem
  • Find a Hamiltonian circuit (or path) for
    which the total sum of weights in the path is a
    minimum.
  • For example, the vertices might represent
    cities, the edges, lines of transportation, and
    the weight of an edge, the cost of traveling
    along the edge.

48
8.3 Hamiltonian Paths and Circuits
  • Homework
  • Ex. 8, Ex. 13, Ex. 18, Ex.20, Ex. 21

49
8.4 Transport Networks
  • Transport network
  • A transport network (or network) is a
    connected diagraph N with the following
    properties
  • There is a unique node, the source, that has
    in-degree 0, labeled the source node 1
  • There is a unique node, the sink, that has
    out-degree 0. labeled as the sink node n if N has
    n nodes
  • The graph N is labeled. The label, Cij, on edge
    (i, j) is a nonnegative number called the
    capacity of the edge.

Here, if (i, j) in N, then (j, i) is not
50
8.4 Transport Networks
  • Flows
  • A flow in a network N is a function that
    assigns to each edge (i, j) of N nonnegative
    number Fij that does not exceed Cij.
  • Fij denotes the amount of material
    passing through the edge (i,j) when the flow is
    F.
  • we also require that for each node k must
    equal to the sum of the Fkj on edges leaving node
    k (conservation of flow).

(Cij, Fij )
Value of the flow (value(F)) The sum of the
flows leaving the source or entering the sink
value(F)5 in this example
51
8.4 Transport Networks
  • Example 2

lt
value(F) 44 62 8
value(F) 64 64 10
In the first figure, there is a mistake for using
the edge from node 3 to 2.
Maximum flows problem how to determine the
maximum value of a flow though the network and
to describe a flow that has the maximum value
52
8.4 Transport Networks
  • Virtual flow

Symmetric Closure
If there is a virtual flow of 2 units through
edge (2,3), then we can increase the flows
though edge (1,2) and (3,4) by 2 units.
Virtual Path ? 1? 2 ? 3 ?4
53
8.4 Transport Networks
  • Let N be a network and let G be the
    symmetric closure of N. Choose a path in G and an
    edge (i, j) in this path.
  • case 1
  • (i, j) is in N, then we say this edge has
    positive excess capacity if eijCij-Fijgt0.
  • case 2
  • (i, j) is not in N, i.e. virtual flow, we
    say (i, j) has excess capacity eij Fji if
    Fjigt0.
  • Then increasing flow through edge (i, j) will
    have the effect of reducing Fji , note (j, i) in
    N.

54
8.4 Transport Networks
  • Labeling algorithm
  • Step 1 Let N1 be the set of all nodes
    connected to the source by an edge with positive
    excess capacity. Label each j in N1 with Ej, 1
    where Ej is the excess capacity e1j of edge (1,
    j). The 1 in the label indicates that j is
    connected to the source, node 1.

4, 1
N1 2, 4
5, 1
55
8.4 Transport Networks
  • Step 2 Let node j in N1 be the node with
    smallest node number and let N2(j) be the set of
    all unlabeled nodes, other than the source, that
    are joined to node j and have positive excess
    capacity. Suppose that node k is in N2(j) and
    (j, k) is the edge with positive excess capacity.
    Label node k with Ek, j where Ek is the minimum
    of Ej and the excess capacity ejk of edge (j,k).
    When all the nodes in N2(j) are labeled in this
    way, repeat this process for the other nodes in
    N1. Let N2Uj in N1 N2(j).

4, 1
2, 2
j 2
N2 3, 5
5, 1
3, 2
56
8.4 Transport Networks
  • Step 3 Repeat Step 2, labeling all
    previously unlabeled nodes N3 that can be reached
    form a node in N2 by an edge having positive
    excess capacity. Continue this process forming
    sets N4, N5,, until after a finite number of
    steps either
  • (i) the sink has not been labeled and no
    other nodes can be labeled. It can happen that
    no nodes have been labeled
  • (ii) the sink has been labeled.

4, 1
2, 2
3, 3
5, 1
3, 2
57
8.4 Transport Networks
  • For case (i)
  • the algorithm terminates and the total flow
    then is a maximum flow
  • For case (ii)
  • the sink has been labeled with En, m,
    where En is the amount of extra flow that can be
    made to reach the sink though a path ?.
  • Examine ? in reverse order.
  • If edge (i. j) in N, decrease the excess
    capacity eij by the same amount, and increase eji
    (virtual edge) by En.
  • Return to Step 1.

58
8.4 Transport Networks
  • Case (ii)

? 1 ? 2 ? 3 ? 6
Update eij eji in ?
4, 1
2, 2
3, 3
5, 1
3, 2
59
8.4 Transport Networks
  • Case (ii)

? 1 ? 2 ? 3 ? 6
4, 1
2, 2
3, 3
5, 1
3, 2
60
8.4 Transport Networks
  • Repeat Step 1
  • consider node 1
  • Note E2 is now only 2 (e122)

4, 1
2, 1
61
8.4 Transport Networks
  • Repeat Step 2
  • consider node 2
  • Node 2 can no longer be used to label node
    3, since e230

4, 1
2, 2
2, 1
62
8.4 Transport Networks
  • Repeat Step 2
  • consider node 5

4, 1
2, 2
2, 5
2, 1
63
8.4 Transport Networks
  • Repeat Step 2
  • consider node 5
  • Case (ii) occurs

4, 1
2, 2
2, 5
2, 1
64
8.4 Transport Networks
  • Case (ii)

? 1 ? 2 ? 5 ? 6
Update eij eji in ?
4, 1
2, 2
2, 5
2, 1
65
8.4 Transport Networks
  • Repeat Step 1

4, 1
66
8.4 Transport Networks
  • Repeat Step 2

4, 1
3, 4
67
8.4 Transport Networks
  • Case (ii)

? 1 ? 4 ? 5 ? 6
Update eij eji in ?
4, 1
3, 4
2, 5
68
8.4 Transport Networks
  • Case (ii)

? 1 ? 4 ? 5 ? 6
4, 1
3, 4
2, 5
69
8.4 Transport Networks
  • Repeat Step 1

2, 1
70
8.4 Transport Networks
  • Step 2

1, 4
2, 1
71
8.4 Transport Networks
  • Step 3
  • label node 2 using virtual edge (5, 2)
  • case (i) occurs

1, 4
2, 1
1, 5
72
8.4 Transport Networks
  • Case (i)

2
4
2
0
3
5
3
73
8.4 Transport Networks
  • Cut
  • A cut in a network N as a set K of edges
    having the property that every path from the
    source to the sink contains at least one edge
    from K.
  • Therefore, a cut can cut a network into
    two pieces, one containing source and one
    containing the sink.
  • If the edges of a cut were removed,
    noting flow from the source to the sink.
  • Capacity of a cut
  • The capacity of a cut K, c(K) is the sum of
    the capacities of all edges in K.

74
8.4 Transport Networks
  • Example 4

3
4
2
2
3
5
3
75
8.4 Transport Networks
  • If F is any flow and K is any cut, then
  • value(F) c(K)
  • since all parts of F must pass though the
    edges of K.
  • If some flow F and some cut K, value(F)c(K),
    then the flow F uses the full capacity of all
    edges in K.
  • Then F would be a flow with maximum value,
    since no flow can have value bigger then c(K).
  • Similarly, K must be a minimum capacity cut,
    since every cut must have capacity at least equal
    to value(F).

76
8.4 Transport Networks
  • Theorem 1 The Max Flow Min Cut Theorem
  • A maximum flow F in a network has value equal
    to the capacity of a minimum cut of the network.
  • Proof
  • Suppose the labeling algorithm has been run
    and stop at case (i). Then the sink has not been
    labeled. Divide the nodes into two sets,
  • M1 the source and all nodes that have
    been labeled)
  • M2 all unlabeled nodes except the
    source.
  • Let K consist of all edges of N that connect
    a node in M1 with a node in M2

77
8.4 Transport Networks
  • Suppose (i, j) is an edge in K, so that i
    in M1, j in M2. The final flow F produced by the
    algorithm must result in (i,j) carrying its full
    capacity otherwise, we could use node i and the
    excess capacity to label j.
  • Therefore, the value of the final flow of
    the algorithm is equal to the capacity c(K), and
    so F is a maximum flow.


Cut K
78
8.4 Transport Networks
  • Example

1, 4
2, 1
1, 5
Ke23, e56 and both edges have their full
capacities, 5 and 4, respectively
79
8.4 Transport Networks
  • Example 5

Cut Ke56, e36 with c(K) 7 value(F)
80
8.4 Transport Networks
  • Homework
  • Ex, 4, Ex. 8, Ex. 13, Ex. 18

81
8.5 Matching Problems
  • Network with multiple sources sinks

82
8.5 Matching Problems
  • Example 1

Set the new added edges with the sum of all
capacities leaving sources o N
N
Then the labeling algorithm can be used in the
resulting network N to find a maximal flow for
the original one N
83
8.5 Matching Problems
  • Matching Problem
  • Let A and B be two finite sets, and R be a
    relation from A to B. A matching function M is a
    one-to-one function from a subset of A to a
    subset of B.
  • We say a is matched with b if M(a)b.
  • A matching function M is compatible with R if
    M ? R, namely, if M(a)b, then a R b.
  • Maximal matching
  • Given any relation R from A to B, a matching
    M that is compatible with R is called maximal if
    its domain is as large as possible and is
    complete if its domain is A.

84
8.5 Matching Problems
  • Example 3
  • Let A be a set of girls and B a set of boys
    attending a school dance. Define R by a R b if
    and only if a knows b. A matching function M is
    defined from A to B by M(a)b if a and b dance
    the third dance together. M is compatible with R
    if each girl knows her partner for the third
    dance.

85
8.5 Matching Problems
  • Example 4
  • Let As1,s2,s3,s4,s5 be a set of students
    working on a research project and
    Bb1,b2,b3,b4,b5 be a set of reference books on
    reserve in the library for the project. Define R
    by si R bk if and only if student si wants to
    sign out book bk. A matching of students to books
    would be compatible with R if each student is
    matched with a book that he or she wants to sign
    out.

86
8.5 Matching Problems
  • Example 5

M(s1)b2, M(s2)b1, M(s3)b3, M(s4)b4
87
8.5 Matching Problems
  • Find a maximal matching

1
x
y
88
8.5 Matching Problems
  • A simplified version

(1,0 )
(1,0 )
(1,0 )
1,4
6
(1,0 )
1
(1,0 )
(1,0 )
(1,0 )
89
8.5 Matching Problems
  • A simplified version

(1,0 )
(1,0 )
(1,0 )
6
(1,0 )
1
(1,0 )
(1,0 )
(1,0 )
90
8.5 Matching Problems
  • A simplified version

(0,1 )
(0,1 )
(0,1 )
6
(1,0 )
1
(1,0 )
(1,0 )
(1,0 )
91
8.5 Matching Problems
  • A simplified version

Virtual Flow
1,4
1,3
(0,1 )
(0,1 )
(0,1 )
6
(1,0 )
1
1,5
(1,0 )
(1,0 )
(1,0 )
1,2
1,1
92
8.5 Matching Problems
  • A simplified version

(0,1 )
(0,1 )
(0,1 )
6
(1,0 )
1
(1,0 )
(1,0 )
(1,0 )
93
8.5 Matching Problems
  • A simplified version

(1,0 )
(0,1 )
(0,1 )
6
(0,1 )
1
(0,1 )
(0,1 )
(0,1 )
94
8.5 Matching Problems
  • A simplified version

(1,0 )
(0,1 )
(0,1 )
6
(0,1 )
1
(0,1 )
(0,1 )
(0,1 )
M(2)5, M(3)4
95
8.5 Matching Problems
  • Theorem 1 (Halls Marriage Theorem)
  • Let R be a relation from A to B. Then there
    exists a complete matching M if and only if for
    each
  • X?A, XR(X)
  • We omit the proof of the result.

96
8.5 Matching Problems
  • Example 6
  • Let MR be the matrix of a marriage
    suitability relation between five men and five
    woman. Can each man marry a suitable woman?

Way one Use the enlarged network to find
a maximum flow
Way two Use the Theorem 1
Let S be any subset of the men and E be the set
of edges that begin in S, then E2S. Each
edge in E must terminate in a node of R(S). But
we know the number of edges terminating at
elements of R(S) is exactly 2R(S). Thus, 2S
2R(S) , and so S R(S). By theorem 1,
there is a complete match.
97
8.5 Matching Problems
  • Homework
  • Ex. 7, Ex. 13, Ex. 16

98
8.6 Coloring Graphs
  • Coloring of the graph G
  • Suppose that G(V,E,?) is a graph with no
    multiple edges, and Cc1,c2,,cn is any set of
    n colors. Any function f V?C is called a
    coloring of the graph G using n colors. For each
    vertex v, f(v) is the color of v.
  • Proper coloring
  • A coloring is proper if any two adjacent
    vertices v and w have different colors.
  • Chromatic number of G ( ? (G) )
  • The smallest number of colors needed to
    produce a proper coloring of a graph G is called
    the chromatic number of G

99
8.6 Coloring Graphs
  • Example 1

Solution 1 (3 colors)
Solution 2 (4 colors)
Q using two of fewer colors?
Impossible in this example.
? (G)3
100
8.6 Coloring Graphs
  • The chromatic number of Kn

?(K3)3
?(K4)4
?(K5)5
101
8.6 Coloring Graphs
  • Planar graph
  • The graph can be drawn in a plane so that no
    edges cross except at vertices.
  • For example

102
8.6 Coloring Graphs
  • Some examples of Planar graph

103
8.6 Coloring Graphs
  • Example for a non-planar graph

104
8.6 Coloring Graphs
  • Four color theorem
  • Refer to
  • http//en.wikipedia.org/wiki/Four_color_theore
    m

105
8.6 Coloring Graphs
  • Homework
  • Ex. 2, Ex. 4, Ex. 8
Write a Comment
User Comments (0)
About PowerShow.com