Title: Excursions in Modern Mathematics Sixth Edition
1Excursions in Modern MathematicsSixth Edition
2Chapter 7The Mathematics of Networks
- The Cost of Being Connected
3The Mathematics of NetworksOutline/learning
Objectives
- To identify and use a graph to model minimum
network problems. - To classify which graphs are trees.
- To implement Kruskals algorithm to find a
minimal spanning tree. - To understand Torricellis construction for
finding a Steiner point. - To recognize when the shortest network connecting
three points uses a Steiner point. - To understand basic properties of the shortest
network connecting a set of (more than three)
points.
4The Mathematics of Networks
5Trees
- What is a Network?
- Network is any connected graph (or tree).
- Nodes or Terminals are the vertices.
- Links are the edges.
- The theme of this chapter is finding optimal
networks that connect a set of points.
6Trees
- Tree
- A network with no circuits.
- Spanning Tree
- A subgraph that connects all the vertices of the
network and has no circuits. - Minimum Spanning Tree (MST)
- Among all spanning trees of a weighted network,
one with the least total weight.
7Trees
- Interesting notes about trees
- One of the most useful structures in discrete
mathematics. - Invaluable to computer scientists.
- Computer programmers depend on trees when
creating, sorting, and searching programs.
8Trees
9Trees
10Trees
11Trees
A rooted tree that happens to also be a binary
tree.
12Trees
- Expression Tree (4 6) 8 4/2
13Trees
14Trees
- Property 1
- In a tree, there is one and only one path joining
any two vertices. - If there is one and only one path joining any two
vertices of a graph, then the graph must be a
tree.
15Trees
- Property 2
- In a tree, every edge is a bridge.
- If every edge of a graph is a bridge, then the
graph must be a tree.
16Trees
- Property 3
- A tree with N vertices has N 1 edges.
- If a network has N vertices and N 1 edges, then
it must be a tree.
17Trees
Notice that a disconnected graph (not a network)
can have N vertices and N 1 edges.
18The Mathematics of Networks
19Spanning Trees
- Property 4
- If a network has N vertices and M edges, then M ?
N 1. R M (N 1) as the redundancy of the
network. - If M N 1, the network is a tree if M ? N
1, the network has circuits and is not a tree.
(In other words, a tree is a network with zero
redundancy and a network with positive redundancy
is not a tree.
20Spanning Trees
The network in (a) has N 8 vertices and M 8
edges. The redundancy of the network is R 1,
so to find a spanning tree we will have to
discard one edge.
21Spanning Trees
Five of these edges are bridges of the network,
and they will have to be part of any spanning
tree. The other three edges (BC, CG, and GB)
form a circuit of length 3, and
22Spanning Trees
if we exclude any of the three edges we will have
a spanning tree. Thus, the network has three
different spanning trees (b), (c), and (d).
23Spanning Trees
- How many spanning trees are in this figure?
24Spanning Trees
- How many spanning trees in this figure?
25Spanning Trees
- Can you create a minimum spanning tree?
26The Mathematics of Networks
27Kruskals Algorithm
- There are several well-known algorithms for
finding minimum spanning trees. In this section
we will discuss one of the the nicest of these,
called Kruskals algorithm.
28Kruskals Algorithm
- Kruskals Algorithm
- Almost exactly like the cheapest-link algorithm.
- Choose the cheapest link that doesnt close the
circuit. - Traces the Minimum Spanning Tree. (MST)
- It always gives the optimal solution and is
efficient.
29Kruskals Algorithm
What is the minimum spanning tree (MST) of the
network shown in (b)?
30Kruskals Algorithm
We will use Kruskals algorithm to find the MST
of the network. Step 1. Among all the possible
links, we choose the cheapest one, in this case
GF (at a cost of 42 million). This link is
going to be a part of the MST, and we mark it in
red as shown in (a).
31Kruskals Algorithm
Kruskals algorithm Step 2. The next cheapest
link available is BD at 45 million. We choose
it for the MST and mark it in red. Step 3. The
cheapest link available is AD at 49 million.
Again, we choose it for the MST and mark it in
red.
32Kruskals Algorithm
Kruskals algorithm Step 4. For the next
cheapest link there is a tie between AB and DG,
both at 51 million. But we can rule out AB it
would create a circuit in the MST, and we cant
have that!) The link DG, on the other hand, is
just fine, so we mark in red and make ti part of
the MST.
33Kruskals Algorithm
Kruskals algorithm Step 5. The next cheapest
link available is CD at 53 million. No problems
here, so again, we mark it in red and make it
part of the MST. Step 6. The next cheapest link
available is BC at 55 million, but this link
would create a circuit, so we cross it out.
34Kruskals Algorithm
Kruskals algorithm Step 6 (cont.). The next
possible choice is CF at 56 million, but once
again, this choice creates a circuit so we must
cross it out. The next possible choice is CE at
59 million, and this is one we do choose. We
mark it in red and make it part of the MST.
35Kruskals Algorithm
Kruskals algorithm Step Wait a second we
are finished! We can tell we are done six links
is exactly what is needed for an MST on seven
vertices (N 1). Figure (c) shows the MST in
red. The total cost of the network is 299
million.
36Kruskals Algorithm
- Find the minimum spanning tree for the below
figure.
37Kruskals Algorithm
- Find the minimum spanning tree for the below
figure
38The Mathematics of Networks
- 7.4 The Shortest Network Connecting Three Points
39The Shortest Network Connecting Three Points
- What is the cheapest underground fiber-optic
cable network connecting the three towns?
40The Shortest Network Connecting Three Points
- Here, cheapest means shortest, so the name of
the game to design a network that is as short as
possible. We shall call such a network the
shortest network (SN).
41The Shortest Network Connecting Three Points
- The search for the shortest network often starts
with a look at the minimum spanning tree. The
MST can always be found using Kruskals algorithm
and it gives us a ceiling on the length of the
shortest network.
42The Shortest Network Connecting Three Points
- In this example the MST consists of two (any two)
of the three sides of the equilateral triangle
(a), and its length is 1000 miles.
43The Shortest Network Connecting Three Points
- It is not hard to find a network connecting the
three towns shorter than the MST. The T- network
(b) is clearly shorter. The length of the
segment CJ is approximately 433 miles. The
length of this network is 933 miles.
44The Shortest Network Connecting Three Points
- We can do better. The Y- network shown in (c) is
even shorter than the T- network. In this
network there is a Y- junction at S, with three
equal branches connecting S to each of A, B, and
C.
45The Shortest Network Connecting Three Points
- This network is approximately 866 miles long. A
key feature is the way the three branches come
together at the junction point S, forming equal
120? angles.
46The Shortest Network Connecting Three Points
- Before we move on, we need to discuss briefly the
notion of a junction point on a network. ( A
junction point in a network is any point where
two or more segments of the network come together.
47The Shortest Network Connecting Three Points
- The MST in (a) has a junction point at A, then
network in (b), has a junction point at J, and
the shortest network in (c) has a junction point
at S.
48The Shortest Network Connecting Three Points
- There are three important terms that we will use
in connection with junction points - In a network connecting a set of vertices, a
junction point is said to be native junction
point if it is located at one of the vertices. - A nonnative junction point located somewhere
other than at one of the original vertices is
called an interior junction point of the network.
49The Shortest Network Connecting Three Points
- An interior junction point consisting of three
line segments coming together forming equal 120?
angles (a perfect Y- junction if you will) is
called a Steiner point of the network.
50The Shortest Network Connecting Three Points
- The Shortest Network Connecting Three Points
- If one of the angles of the triangle is 120? or
more, the shortest network linking the three
vertices consists of the two shortest sides of
the triangle (a).
51The Shortest Network Connecting Three Points
- The Shortest Network Connecting Three Points
- If all three angles of the triangle are less than
120? , the shortest network is obtained by
finding a Steiner point S inside the triangle and
joining S to each of the vertices (b).
52The Shortest Network Connecting Three Points
- Finding the Steiner Point Torricellis
Construction - Suppose A, B, and C form a triangle such that all
three angles of the triangle are less than 120?
(a).
53The Shortest Network Connecting Three Points
- Finding the Steiner Point Torricellis
Construction - Step 1. Choose any of the three sides of the
triangle (say BC) and construct an equilateral
triangle BCX, so that X and A are on opposite
sides of BC (b).
54The Shortest Network Connecting Three Points
- Finding the Steiner Point Torricellis
Construction - Step 2. Circumscribe a circle around equilateral
triangle BCX (c).
55The Shortest Network Connecting Three Points
- Finding the Steiner Point Torricellis
Construction - Step 3. Join X to A with a straight line (d).
The point of intersection of the line segment XA
with the circle is the Steiner point!
56The Shortest Network Connecting Three Points
57The Mathematics of Networks
- 7.5 Shortest Networks for Four or More Points
58Shortest Networks for Four or More Points
- When it comes to finding shortest networks,
things get really interesting when we have to
connect four points.
59Shortest Networks for Four or More Points
- What does the optimal network connecting these
four cities (A, B, C, and D) look like? Suppose
the cities sit on the vertices of a square 500
miles on each side as shown in (a).
60Shortest Networks for Four or More Points
- If we dont want to create any interior junction
points in the network, then the answer is a
minimum spanning tree, such as in (b). The
length of the MST is 1500 miles.
61Shortest Networks for Four or More Points
- If interior junction points are allowed, somewhat
shorter networks are possible. An improvement is
the network (c) with and X-junction located at O,
the center of the square. The length is
approximately 1414 miles.
62Shortest Networks for Four or More Points
- We can shorten the network even more if we place
not one but two interior junction points inside
the square. There are two different networks
possible with two Steiner points inside the
square as in (d) and (e).
63Shortest Networks for Four or More Points
- These two networks are essentially equal (one is
a rotated version of the other) and clearly have
the same length approximately 1366 miles. It is
impossible to shorten these any further.
64Shortest Networks for Four or More Points
- The only possible interior junction points in a
shortest network are Steiner points. For
convenience, we will call this the interior
junction rule for shortest networks.
65Shortest Networks for Four or More Points
- The Shortest Network Rule
- A minimum spanning tree (no interior junction
points) or - A Steiner tree. A Steiner tree is a network with
no circuits (a tree) such that all interior
junction points are Steiner points.
66The Mathematics of Networks
Conclusion
- Discussed the problem of creating an optimal
network. - Found out that Kruskals algorithm is a simple
algorithm for finding MSTs. - By allowing interior junction points, solve the
shortest network connecting the points. -