160 likes | 173 Views
Learn about the concept of minimum spanning trees, their importance in various applications, and the algorithms used to find them. This article discusses Boruvka's Algorithm, Kruskal's Algorithm, Prim’s Algorithm, and a hybrid approach. It also covers approximation algorithms and their role in solving NP-hard problems.
E N D
Minimum Spanning Trees Kun-Mao Chao (趙坤茂) Department of Computer Science and Information Engineering National Taiwan University, Taiwan E-mail: kmchao@csie.ntu.edu.tw WWW: http://www.csie.ntu.edu.tw/~kmchao
Minimum Spanning Trees • A minimum spanning tree (MST) of a weighted graph G is a spanning tree of G whose edges sum to the minimum weight. • In other words, a minimum spanning tree is a tree formed from a subset of the edges in a given undirected graph, with two properties: • it spans the graph, i.e., it includes every vertex in the graph, and • it is a minimum, i.e., the total weight of all the edges is as low as possible.
Minimum Spanning Trees The minimum spanning tree problem is always included in algorithm textbooks since • it arises in many applications, • it is an important example where greedy algorithms always deliver an optimal solution, and • clever data structures are necessary to make it work efficiently.
Bor\r{u}vka's Algorithm (1926)
Kruskal's Algorithm (1956)
Prim’s Algorithm (1957)
A simple hybrid algorithm • Bor\r{u}vka's Algorithm: O(m log n) • Prim’s Algorithm: O(m + n log n) • Kruskal’s Algorithm: O(m log m) • A hybrid algorithm of Bor\r{u}vka's Algorithm and Prim’s Algorithm: • O(m loglog n). How? Hint: First apply the contraction step in Bor\r{u}vka's Algorithm for O(loglog n) time.
Approximation algorithms • Since Levin & Cook (1971) & Karp (1972), many important problems have been shown to be NP-hard. • Heuristic vs. approximation algorithms • Ensuring the worst-case quality • The error ratio • Relative and Absolute • A k-approximation: minimization: sol/opt<=k;maximization: opt/sol<=k • The ratio is always >1
Polynomial time approximation scheme • For any fixed k>0, it finds a (1+k)-approximation in polynomial time. • Usually (1/k) appears in the time complexity, e.q. O(n/k), O(n1/k). • If (1/k) not in the exponent, FPTAS
An example – Minimum tour (MT) • Starting at a node, find a tour of min distance traveling all nodes and back to the starting node. 6 8 2 15 10 5 3 10 2
A doubling tree algorithm • Find a minimum spanning tree • Output the Euler tour in the doubling tree of MST 6 6 8 8 2 2 15 15 10 10 5 5 3 3 10 10 2 2
The error ratio • MST<=MT • MST is the minimum cost of any spanning tree. • A tour must contain a spanning tree since it is connected. • It is a 2-approximation • Triangle inequality => 2-approximation for TSP (visiting each city only once) Why?(See the note.)
All exact science is dominated by the • idea of approximation. • -- Bertrand Russell(1872 - 1970)