Algorithms for updating minimal spanning trees (original) (raw)
Related papers
Optimal algorithms for the vertex updating problem of a minimum spanning tree
Parallel Processing Symposium, 1992
The vertex updating problem for a minimum spanning tree (MST) is de ned as follows: Given a graph G = (V; E G ) and its MST T, update T when a new vertex z is introduced along with weighted edges that connect z with the vertices of G. We present a set of rules that, together with a valid tree-contraction schedule, are used to produce simple optimal parallel algorithms that run in O(lgn) parallel time using n= lgn EREW PRAMs where n = jV j. These rules can also be used to derive simple linear-time sequential algorithms for the same problem. The previously best known parallel result was a rather complicated algorithm that used n processors of the more powerful CREW PRAM model. Furthermore, we show how our solution can be used to solve the multiple vertex updating problem: Update a given MST when k new vertices are introduced simultaneously. This problem is solved in O(lg k lgn) parallel time using k n lg k lgn EREW PRAM processors.
Optimal algorithms for the single and multiple vertex updating problems of a minimum spanning tree
Algorithmica, 1996
The vertex updating problem for a minimum spanning tree (MST) is de ned as follows: Given a graph G = (V; E G ) and an MST T for G, nd a new MST for G to which a new vertex z has been added along with weighted edges that connect z with the vertices of G. We present a set of rules that produce simple optimal parallel algorithms that run in O(lg n) time using n= lg n EREW PRAM processors, where n = jV j. These algorithms employ any valid tree-contraction schedule that can be produced within the stated resource bounds. These rules can also be used to derive simple linear-time sequential algorithms for the same problem. The previously best known parallel result was a rather complicated algorithm that used n processors in the more powerful CREW PRAM model. Furthermore, we show how our solution can be used to solve the multiple vertex updating problem: Update a given MST when k new vertices are introduced simultaneously. This problem is solved in O(lg k lg n) parallel time using k n lg k lg n EREW PRAM processors. This is optimal for graphs having (kn) edges.
A Linear Time Algorithm for Finding Minimum Spanning Tree Replacement Edges
ArXiv, 2019
Given an undirected, weighted graph, the minimum spanning tree (MST) is a tree that connects all of the vertices of the graph with minimum sum of edge weights. In real world applications, network designers often seek to quickly find a replacement edge for each edge in the MST. For example, when a traffic accident closes a road in a transportation network, or a line goes down in a communication network, the replacement edge may reconnect the MST at lowest cost. In the paper, we consider the case of finding the lowest cost replacement edge for each edge of the MST. A previous algorithm by Tarjan takes O(malpha(m,n))O(m \alpha(m, n))O(malpha(m,n)) time, where alpha(m,n)\alpha(m, n)alpha(m,n) is the inverse Ackermann's function. Given the MST and sorted non-tree edges, our algorithm is the first that runs in O(m+n)O(m+n)O(m+n) time and O(m+n)O(m+n)O(m+n) space to find all replacement edges. Moreover, it is easy to implement and our experimental study demonstrates fast performance on several types of graphs. Additionally, since the most vital edg...
Reoptimization of the minimum spanning tree
Wiley Interdisciplinary Reviews: Computational Statistics, 2011
We implement a fast reoptimization algorithm for MIN SPANNING TREE under vertex insertions, initially proposed and analyzed in the work of Boria and Paschos [Boria N, Paschos VTh. Fast reoptimization for the minimum spanning tree problem. J Discrete Algor 2010, 8:296-310] and study its experimental approximation behavior in randomly generated graphs. The reoptimization setting can briefly be formulated as follows: given an instance of the problem for which we already know some optimal solution, and given some 'small' perturbations on this instance, is it possible to compute a new (optimal or at least near-optimal) solution for the modified instance without computation from scratch? We focus in this article on the most popular modification: vertex-insertion.
Optimal Parallel Algorithms for Multiple Updates of Minimum Spanning Trees
Algorithmica, 1993
Parallel updates of minimum spanning trees (MSTs) have been studied in the past. These updates allowed a single change in the underlying graph, such as a change in the cost of an edge or an insertion of a new vertex. Multiple update problems for MSTs are concerned with handling more than one such change. In the sequential case multiple update problems may be solved using repeated applications of an efficient algorithm for a single update. However, for efficiency reasons, parallel algorithms for multiple update problems must consider all changes to the underlying graph simultaneously. In this paper we describe parallel algorithms for updating an MST whenk new vertices are inserted or deleted in the underlying graph, when the costs ofk edges are changed, or whenk edge insertions and deletions are performed. For multiple vertex insertion update, our algorithm achieves time and processor bounds ofO(log n·logk) and nk/(logn·logk), respectively, on a CREW parallel random access machine. These bounds are optimal for dense graphs. A novel feature of this algorithm is a transformation of the previous MST andk new vertices to a bipartite graph which enables us to obtain the above-mentioned bounds.
Distributed computation of all node replacements of a minimum spanning tree
In many network applications the computation takes place on the minimum-cost spanning tree (M ST ) of the network G; unfortunately, a single link or node failure disconnects the tree. The All Node Replacements (ANR) problem is the problem of precomputing, for each node u in G, the new M ST should u fail. The simpler problem dealing with single edge failures is called All Edge Replacements (AER). Both problems have been extensively investigated for serial and parallel settings, and efficient solutions have been designed for those environments. The situation is surprisingly different in distributed settings. In fact, for either problem, no distributed solution exists to date which performs better than the brute-force repeated application of a M ST construction protocol. In other words, currently, the solution of either problems uses O(nm + n 2 log n) messages, where n is the number of nodes and m is the number of edges. In this paper we consider the problem of computing all the replacement minimum-cost spanning trees distributively, and we efficiently solve the problem. We design a solution protocol for the ANR problem and we prove that the total amount of data items communicated during the computation (the data complexity) is O(n 2 ). This communication can be achieved transmitting only O(n) long messages between neighbours, if the system so allows; otherwise O(n 2 ) standard messages suffice. Even in systems that do not allow long messages, the proposed protocol constitutes a significant improvement over the individual computation of the replacement trees. Indeed, for dense graphs, our protocol constructs all the n replacement M ST s of the minimum spanning tree T with the same number of messages required just to compute T .
Fast reoptimization for the minimum spanning tree problem
Journal of Discrete Algorithms, 2010
Minimum spanning tree is a classical polynomial problem very well known in operational research and in theoretical computer science. In this paper, we settle the reoptimization versions of this problem, which can be formulated as follows: given an instance of the problem for which we already know some optimal solution, and given some "small" perturbations on this initial instance, is it possible to compute a new (optimal or at least near-optimal) solution for the modified instance without ex nihilo computation? We focus on two kinds of modifications: node-insertions and node-deletions. For the former type of modifications, where k new nodes are inserted together with their incident edges, we first propose a fast strategy with complexity O(kn) which provides a max{2, 3 − (2/(k − 1))}-approximation ratio, in complete metric graphs. We then devise a more elaborated strategy that computes optimal solutions in any graph with complexity O(kn log n). When k nodes are deleted, we devise a strategy which in O(n) achieves approximation ratio bounded above by 2⌈|L max |/2⌉ in complete metric graphs, where L max is the longest deleted path and |L max | is the number of its edges. For any of the approximation strategies, we also provide lower bounds on their approximation ratios.