1 EXCURSIONS IN MODERN MATHEMATICS SIXTH EDITION Peter Tannenbaum 2 CHAPTER 7 THE MATHEMATICS OF NETWORKS The Cost of Being Connected The Mathematics of Networks Outline/learning Objectives 3 To identify and use a graph to model minimum network problems. To classify which graphs are trees. To implement Kruskal’s algorithm to find a minimal spanning tree. To understand Torricelli’s 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. 4 THE MATHEMATICS OF NETWORKS 7.1 Trees Trees 5 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. Trees 6 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. Trees 7 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. Trees 8 Family Tree Trees 9 Sorting quadrilaterals Trees 10 C2H6 (ethane) Trees 11 Possible outcomes A rooted tree that happens to also be a binary tree. Trees 12 Expression Tree (4 + 6) * 8 – 4/2 Trees 13 Trees 14 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. Trees 15 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. Trees 16 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. Trees 17 Notice that a disconnected graph (not a network) can have N vertices and N – 1 edges. 18 THE MATHEMATICS OF NETWORKS 7.2 Spanning Trees Spanning Trees 19 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. Spanning Trees 20 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. Spanning Trees 21 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 Spanning Trees 22 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). Spanning Trees 23 How many spanning trees are in this figure? Spanning Trees 24 How many spanning trees in this figure? Spanning Trees 25 Can you create a minimum spanning tree? 26 THE MATHEMATICS OF NETWORKS 7.3 Kruskal’s Algorithm Kruskal’s Algorithm 27 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 Kruskal’s algorithm. Kruskal’s Algorithm 28 Kruskal’s Algorithm Almost exactly like the cheapest-link algorithm. Choose the cheapest link that doesn’t close the circuit. Traces the Minimum Spanning Tree. (MST) It always gives the optimal solution and is efficient. Kruskal’s Algorithm 29 What is the minimum spanning tree (MST) of the network shown in (b)? Kruskal’s Algorithm 30 We will use Kruskal’s 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). Kruskal’s Algorithm 31 Kruskal’s 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. Kruskal’s Algorithm 32 Kruskal’s 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 can’t have that!) The link DG, on the other hand, is just fine, so we mark in red and make ti part of the MST. Kruskal’s Algorithm 33 Kruskal’s 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. Kruskal’s Algorithm 34 Kruskal’s 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. Kruskal’s Algorithm 35 Kruskal’s 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. Kruskal’s Algorithm 36 Find the minimum spanning tree for the below figure. Kruskal’s Algorithm 37 Find the minimum spanning tree for the below figure: 38 THE MATHEMATICS OF NETWORKS 7.4 The Shortest Network Connecting Three Points The Shortest Network Connecting Three Points 39 What is the cheapest underground fiber-optic cable network connecting the three towns? The Shortest Network Connecting Three Points 40 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). The Shortest Network Connecting Three Points 41 The search for the shortest network often starts with a look at the minimum spanning tree. The MST can always be found using Kruskal’s algorithm and it gives us a ceiling on the length of the shortest network. The Shortest Network Connecting Three Points 42 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. The Shortest Network Connecting Three Points 43 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. The Shortest Network Connecting Three Points 44 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. The Shortest Network Connecting Three Points 45 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. The Shortest Network Connecting Three Points 46 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. The Shortest Network Connecting Three Points 47 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. The Shortest Network Connecting Three Points 48 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. The Shortest Network Connecting Three Points 49 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. The Shortest Network Connecting Three Points 50 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). The Shortest Network Connecting Three Points 51 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). The Shortest Network Connecting Three Points 52 Finding the Steiner Point: Torricelli’s Construction •Suppose A, B, and C form a triangle such that all three angles of the triangle are less than 120 (a). The Shortest Network Connecting Three Points 53 Finding the Steiner Point: Torricelli’s 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). The Shortest Network Connecting Three Points 54 Finding the Steiner Point: Torricelli’s Construction •Step 2. Circumscribe a circle around equilateral triangle BCX (c). The Shortest Network Connecting Three Points 55 Finding the Steiner Point: Torricelli’s 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! The Shortest Network Connecting Three Points 56 Why does this work? 57 THE MATHEMATICS OF NETWORKS 7.5 Shortest Networks for Four or More Points Shortest Networks for Four or More Points 58 When it comes to finding shortest networks, things get really interesting when we have to connect four points. Shortest Networks for Four or More Points 59 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). Shortest Networks for Four or More Points 60 If we don’t 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. Shortest Networks for Four or More Points 61 If interior junction points are allowed, somewhat shorter networks are possible. An improvement is the network (c) with and Xjunction located at O, the center of the square. The length is approximately 1414 miles. Shortest Networks for Four or More Points 62 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). Shortest Networks for Four or More Points 63 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. Shortest Networks for Four or More Points 64 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. Shortest Networks for Four or More Points 65 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.] The Mathematics of Networks Conclusion 66 Discussed the problem of creating an optimal network. Found out that Kruskal’s algorithm is a simple algorithm for finding MSTs. By allowing interior junction points, solve the shortest network connecting the points.
© Copyright 2026 Paperzz