# Applications of Minimum Spanning Tree Problem

Minimum Spanning Tree (MST) problem: Given connected graph G with positive edge weights, find a min weight set of edges that connects all of the vertices.

MST is fundamental problem with diverse applications.

**Network design.**

*– telephone, electrical, hydraulic, TV cable, computer, road*

The standard application is to a problem like phone network design. You have a business with several offices; you want to lease phone lines to connect them up with each other; and the phone company charges different amounts of money to connect different pairs of cities. You want a set of lines that connects all your offices with a minimum total cost. It should be a spanning tree, since if a network isn’t a tree you can always remove some edges and save money.

**Approximation algorithms for NP-hard problems.**

*– traveling salesperson problem, Steiner tree*

A less obvious application is that the minimum spanning tree can be used to approximately solve the traveling salesman problem. A convenient formal way of defining this problem is to find the shortest path that visits each point at least once.

Note that if you have a path visiting all points exactly once, it’s a special kind of tree. For instance in the example above, twelve of sixteen spanning trees are actually paths. If you have a path visiting some vertices more than once, you can always drop some edges to get a tree. So in general the MST weight is less than the TSP weight, because it’s a minimization over a strictly larger set.

On the other hand, if you draw a path tracing around the minimum spanning tree, you trace each edge twice and visit all points, so the TSP weight is less than twice the MST weight. Therefore this tour is within a factor of two of optimal.

**Indirect applications.**

– max bottleneck paths

– LDPC codes for error correction

– image registration with Renyi entropy

– learning salient features for real-time face verification

– reducing data storage in sequencing amino acids in a protein

– model locality of particle interactions in turbulent fluid flows

– autoconfig protocol for Ethernet bridging to avoid cycles in a network

**Cluster analysis**

k clustering problem can be viewed as finding an MST and deleting the k-1 most

expensive edges.

**Sources:**

http://www.cs.princeton.edu/courses/archive/spr07/cos226/lectures/mst.pdf

http://www.ics.uci.edu/~eppstein/161/960206.html

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: **DSA Self Paced**. Become industry ready at a student-friendly price.

## Recommended Posts:

- Problem Solving for Minimum Spanning Trees (Kruskal’s and Prim’s)
- Kruskal's Minimum Spanning Tree using STL in C++
- Minimum Product Spanning Tree
- Find the weight of the minimum spanning tree
- Minimum spanning tree cost of given Graphs
- Boruvka's algorithm for Minimum Spanning Tree
- Minimum Bottleneck Spanning Tree(MBST)
- Reverse Delete Algorithm for Minimum Spanning Tree
- Prim’s Minimum Spanning Tree (MST) | Greedy Algo-5
- Kruskal’s Minimum Spanning Tree Algorithm | Greedy Algo-2
- Find the minimum spanning tree with alternating colored edges
- Minimum Spanning Tree using Priority Queue and Array List
- Types of Spanning Tree Protocol (STP)
- Spanning Tree With Maximum Degree (Using Kruskal's Algorithm)
- Maximum Possible Edge Disjoint Spanning Tree From a Complete Graph
- Applications of tree data structure
- Karger’s algorithm for Minimum Cut | Set 2 (Analysis and Applications)
- Steiner Tree Problem
- Tree Isomorphism Problem
- Custom Tree Problem