scispace - formally typeset
Search or ask a question

Showing papers on "Spanning tree published in 1984"


Proceedings ArticleDOI
01 Dec 1984
TL;DR: Three techniques in computational geometry are explored: scaling solves a problem by viewing it at increasing levels of numerical precision; activation is a restricted type of update operation, useful in sweep algorithms; the Cartesian tree is a data structure for problems involving maximums and minimums.
Abstract: Three techniques in computational geometry are explored: Scaling solves a problem by viewing it at increasing levels of numerical precision; activation is a restricted type of update operation, useful in sweep algorithms; the Cartesian tree is a data structure for problems involving maximums and minimums. These techniques solve the minimum spanning tree problem in Rk1 and Rk

579 citations


Journal ArticleDOI
TL;DR: It is shown that the ascent procedure can be viewed as a generalization of both the Chu-Liu-Edmonds directed spanning tree algorithm and the Bilde-Krarup-Erlenkotter ascent algorithm for the plant location problem.
Abstract: The Steiner tree problem on a directed graph (STDG) is to find a directed subtree that connects a root node to every node in a designated node setV. We give a dual ascent procedure for obtaining lower bounds to the optimal solution value. The ascent information is also used in a heuristic procedure for obtaining feasible solutions to the STDG. Computational results indicate that the two procedures are very effective in solving a class of STDG's containing up to 60 nodes and 240 directed/120 undirected arcs. The directed spanning tree and uncapacitated plant location problems are special cases of the STDG. Using these relationships, we show that our ascent procedure can be viewed as a generalization ofboth the Chu-Liu-Edmonds directed spanning tree algorithm and the Bilde-Krarup-Erlenkotter ascent algorithm for the plant location problem. The former comparison yields a dual ascent interpretation of the steps of the directed spanning tree algorithm.

369 citations


Proceedings ArticleDOI
24 Oct 1984
TL;DR: In this article, the authors propose a new algorithm for finding the blocks (biconnected components) of an undirected graph, which runs in 0[n+m] time and space on a graph of n vertices and m edges.
Abstract: We propose a new algorithm for finding the blocks (biconnected components) of an undirected graph. A serial implementation runs in 0[n+m] time and space on a graph of n vertices and m edges. A parallel implmentation runs in 0[log n] time and 0[n+m] space using 0[n+m] processors on a concurrent-read, concurrent-write parallel RAM. An alternative implementation runs in 0[n/sup 2/p] time and 0[n/sup 2/] space using any number p ⩽ n/sup 2/log/sup 2/-n of processors, on a concurrent-read, exclusive-write parallel RAM. The latter algorithm has optimal speedup, assuming an adjacency matrix representation of the input. A general algorithmic technique which simplifies and improve computation of various functions on tress is introduced. This technique typically requires 0(log n) time using 0(n) space on an exclusive-read exclusive-write parallel RAM.

177 citations


Journal ArticleDOI
TL;DR: Algorithms and data structures developed to solve graph problems on parallel computers are surveyed and most algorithms use relatwely simple data structures, although a few algorithms using linked hsts, heaps, and trees are also discussed.
Abstract: Algorithms and data structures developed to solve graph problems on parallel computers are surveyed. The problems discussed relate to searching graphs and finding connected components, maximal chques, maximum cardinahty matchings, mimmum spanning trees, shortest paths, and travehng salesman tours. The algorithms are based on a number of models of parallel computation, including systohc arrays, assoclatwe processors, array processors, and mulhple CPU computers. The most popular model is a direct extension of the standard RAM model of sequential computation. It may not, however, be the best basis for the study of parallel algorithms. More emphasis has been focused recently on communications issues in the analysis of the complexity of parallel algorithms; thus parallel models are coming to be more complementary to implementable architectures. Most algorithms use relatwely simple data structures, such as the adjacency matrix and adjacency hsts, although a few algorithms using linked hsts, heaps, and trees are also discussed.

164 citations


Book
01 Sep 1984
TL;DR: In this article, the authors present a survey of algorithms on graphs and their applications in the literature, including the following: 1. Graph Algorithms and NP-Completeness, 2. Topological sorting and the Representation Problem, 3. Transitive Closure of Acyclic Digraphs, 4. General Path Problems and Matrix Multiplication, and 5. More NP-complete Problems.
Abstract: Vol. 2: Graph Algorithms and NP-Completeness.- IV. Algorithms on Graphs.- 1. Graphs and their Representation in a Computer.- 2. Topological Sorting and the Representation Problem.- 3. Transitive Closure of Acyclic Digraphs.- 4. Systematic Exploration of a Graph.- 5. A Close Look at Depth First Search.- 6. Strongly-Connected and Biconnected Components of Directed and Undirected Graphs.- 7. Least Cost Paths in Networks.- 7.1. Acyclic Networks.- 7.2. Non-negative Networks.- 7.3. General Networks.- 7.4. The All Pairs Problem.- 8. Minimum Spanning Trees.- 9. Maximum Network Flow and Applications.- 9.1 Algorithms for Maximum Network Flow.- 9.2 (0,1)-Networks, Bipartite Matching and Graph Connectivity.- 9.3 Weighted Network Flow and Weighted Bipartite Matching.- 10. Planar Graphs.- 11. Exercises.- 12. Bibliographic Notes.- V. Path Problems in Graphs and Matrix Multiplication.- 1. General Path Problems.- 2. Two Special Cases: Least Cost Paths and Transitive Closure.- 3. General Path Problems and Matrix Multiplication.- 4. Matrix Multiplication in a Ring.- 5. Boolean Matrix Multiplication and Transitive Closure.- 6. (Min,+)-Product of Matrices and Least Cost Paths.- 7. A Lower Bound on the Monotone Complexity of Matrix Multiplication.- 8. Exercises.- 9. Bibliographic Notes.- VI. NP-Completeness.- 1. Turing Machines and Random Access Machines.- 2. Problems, Languages and Optimization Problems.- 3. Reductions and NP-complete Problems.- 4. The Satisfiability Problem is NP-complete.- 5. More NP-complete Problems.- 6. Solving NP-complete Problems.- 6.1 Dynamic Programming.- 6.2 Branch and Bound.- 7. Approximation Algorithms.- 7.1 Approximation Algorithms for the Travelling Salesman Problem.- 7.2 Approximation Schemes.- 7.3 Full Approximation Schemes.- 8. The Landscape of Complexity Classes.- 9. Exercises.- 10. Bibliographic Notes.- IX. Algorithmic Paradigms.

157 citations


Journal ArticleDOI
TL;DR: An efficient procedure for generating fair cost allocations which, in some instances, coincide with the nucleolus is developed and it is shown that by employing Sterns' transfer scheme the authors can generate a sequence of cost vectors which converges to theucleolus.
Abstract: We develop two efficient procedures for generating cost allocation vectors in the core of a minimum cost spanning tree (m.c.s.t.) game. The first procedure requires O(n 2) elementary operations to obtain each additional point in the core, wheren is the number of users. The efficiency of the second procedure, which is a natural strengthening of the first procedure, stems from the special structure of minimum excess coalitions in the core of an m.c.s.t. game. This special structure is later used (i) to ease the computational difficulty in computing the nucleolus of an m.c.s.t. game, and (ii) to provide a geometric characterization for the nucleolus of an m.c.s.t. game. This geometric characterization implies that in an m.c.s.t. game the nucleolus is the unique point in the intersection of the core and the kernel. We further develop an efficient procedure for generating fair cost allocations which, in some instances, coincide with the nucleolus. Finally, we show that by employing Sterns' transfer scheme we can generate a sequence of cost vectors which converges to the nucleolus.

155 citations


Journal ArticleDOI
TL;DR: It is proved that the Euclidean degree-3 MST problem is also NP-complete, thus leaving open only the case for K = 4, and implementing the “shortcutting phase” of Christofides' algorithm optimally is NP-hard.

146 citations


Proceedings ArticleDOI
27 Aug 1984
TL;DR: One implication of the results is that finding a spanning tree in a complete network is easier than finding a minimum weight spanning Tree in such a network, which may require O(n)>(supscrpt>2
Abstract: Distributed algorithms for complete asynchronous networks of processors (i.e., networks where each pair of processors is connected by a communication line) are discussed. The main result is O(nlogn) lower and upper bounds on the number of messages required by any algorithm in a given class of distributed algorithms for such networks. This class includes algorithms for problems like finding a leader or constructing a spanning tree (as far as we know, all known algorithms for those problems may require O(n2) messages when applied to complete networks). O(n2) bounds for other problems, like constructing a maximal matching or a Hamiltonian circuit are also given. In proving the lower bound we are counting the edges which carry messages during the executions of the algorithms (ignoring the actually number of messages carried by each edge). Interestingly, this number is shown to be of the same order of magnitude of the total number of messages needed by these algorithms. In the upper bounds, the length of any message is at most log2[4mlog2n] bits, where m is the maximum identity of a node in the network. One implication of our results is that finding a spanning tree in a complete network is easier than finding a minimum weight spanning tree in such a network, which may require O(n2) messages.

129 citations


Journal ArticleDOI
TL;DR: A simple, computationally efficient method for generating a uniformly distributed sample over a set which approximates the convex hul of the data and test for uniformity by using Friedman-Rafsky's minimal spanning tree (MST) based test is provided.
Abstract: Testing for uniformity in multidimensional data is important in exploratory pattern analysis, statistical pattern recognition, and image processing. The goal of this paper is to determine whether the data follow the uniform distribution over some compact convex set in K-dimensional space, called the sampling window. We first provide a simple, computationally efficient method for generating a uniformly distributed sample over a set which approximates the convex hul of the data. We then test for uniformity by comparing this generated sample to the data by using Friedman-Rafsky's minimal spanning tree (MST) based test. Experiments with both simulated and real data indicate that this MST-based test is useful in deciding if data are uniform.

87 citations


Journal ArticleDOI
TL;DR: Consider a matroid where each element has a real-valued cost and a color, red or green; a base is sought that contains q red elements and has smallest possible cost and an algorithm for the problem on general matroids is presented, along with a number of variations.

87 citations


Proceedings ArticleDOI
24 Oct 1984
TL;DR: A communication protocol which uses k rooted spanning trees having the property that for every vertex v the paths from v to the root are edge-disjoint and a linear algorithm to find two such trees in a 2 edge-connected graph is described.
Abstract: Consider a network of asynchronous processors communicating by sending messages over unreliable lines. There are many advantages to restrict all communications to a spanning tree. To overcome the possible failure of k


Journal ArticleDOI
TL;DR: A parallel algorithm for depth-first searching of a directed acyclic graph (DAG) on a shared memory model of a SIMD computer is proposed, which uses two parallel tree traversal algorithms, one for the preorder traversal and the other for therpost order traversal of an ordered tree.
Abstract: A parallel algorithm for depth-first searching of a directed acyclic graph (DAG) on a shared memory model of a SIMD computer is proposed. The algorithm uses two parallel tree traversal algorithms, one for the preorder traversal and the other for therpostorder traversal of an ordered tree. Each of these traversal algorithms has a time complexity ofO(logn) whenO(n) processors are used,n being the number of vertices in the tree. The parallel depth-first search algorithm for a directed acyclic graphG withn vertices has a time complexity ofO((logn)2) whenO(n2.81/logn) processors are used.

Dissertation
01 Jan 1984
TL;DR: Two methods of state estimation, which have enhanced numerical stability, are examined in this thesis and the problem of minimisation of distributed leakages is solved efficiently using a state estimation technique.
Abstract: This thesis is concerned with the development of a computer-based, real-time monitoring scheme which is a prerequisite of any form of on-line control. A new concept, in the field of water distribution systems, of water system state estimation is introduced. Its function is to process redundant, noise-corrupted telemeasurements in order to supply a real-time data base with reliable estimates of the current state and structure of the network. The information provided by the estimator can then be used in a number of on-line programs. In view of the strong nonlinearity of the network equations, two methods of state estimation, which have enhanced numerical stability, are examined in this thesis. The first method uses an augmented matrix formulation of a classical least-squares problem, and the second is based on a least absolute value solution of an over determined set of equations. Two water systems, one of which is a realistic 34-node network, are used to evaluate the performance of the proposed methods .The problem of bad data processing and its extension to the validation of network topology and leakage detection is also examined. It is shown that the method based on least absolute values estimation provides a more immediate indication of erroneous measurements. In addition, this method demonstrates the useful feature of eliminating the effects of gross errors on the final state estimate. The important question of water system observability is then studied. Two original combinatorial methods are proposed to check topological observability. The first one is an indirect technique which searches for a maximum measurement-to-branch matching and then attempts to build a spanning tree of the network graph using only the branches with measurement assignment. The second method is a direct search for an observable spanning tree. A number of systems are used to test both techniques, including a 34-node water supply network and an IEEE 118-bus power system. The problem of minimisation of distributed leakages is solved efficiently using a state estimation technique. Comparison of the head profile achieved for the calculated optimal valve controls with the standard operating conditions for a 25-node network indicates a major reduction of the volume of leakages. In the final part of this thesis a software package, which simulates the real-time operation of a water distribution system, is described. The programs are designed in such a way that by replacing simulated measurements with live telemetry data they can be directly used for. water network monitoring and control.

Journal ArticleDOI
Rubin Johnson1
01 Dec 1984-Networks
TL;DR: The main theorems state that the size of the search structures may be measured by counting spanning trees or acyclic orientations when these strategies are used, and the complexity is discussed when applied to the all-terminal network reliability problem.
Abstract: Let G = (V, E) be an undirected graph with V = n perfectly reliable vertices and E = m edges that work with probability pe and fail with probability qe for all e /in E. The network reliability problem considered here is to calculate RK[G] = Prob [there exists a path of working edges between every pair of a set K of k vertices]. Backtrack algorithms for this problem are presented. The complexity of these algorithms is discussed when applied to the all-terminal network reliability problem where K = V. Strategies are presented which minimize the size of the search structures generated. The main theorems state that when these strategies are used, the size of the search structures may be measured by counting spanning trees or acyclic orientations.

Proceedings ArticleDOI
24 Oct 1984
TL;DR: An algorithm which finds the maximum value of every one of the given paths, and which uses only 5n + n log [(|A|+n)/n] comparisons, leads to a spanning tree verification algorithm using O(n+e) comparisons in a graph with n vertices and e edges.
Abstract: Given a rooted tree with values associated with the n vertices and a set A of directed paths (queries), we describe an algorithm which finds the maximum value of every one of the given paths, and which uses only 5n + n log [(|A|+n)/n] comparisons. This leads to a spanning tree verification algorithm using O(n+e) comparisons in a graph with n vertices and e edges. No implementation is offered.

Proceedings ArticleDOI
01 Dec 1984
TL;DR: The notion of a minimum spanning ellipsoid in any dimension is explained and the run-time of the algorithm O (n2) independent of dimension, where n is the number of points.
Abstract: The notion of a minimum spanning ellipsoid in any dimension is explained. Basic definitions and theorems provide the ideas for an algorithm to find the minimum spanning ellipsoid of a set of points, i.e., the ellipsoid of minimum volume containing the set. The run-time of the algorithm O (n2) independent of dimension, where n is the number of points.

Journal ArticleDOI
TL;DR: A detailed complexity analysis of Char's algorithm and methods to speed up the algorithm are discussed, and two heuristics for the selection of the initial spanning tree are suggested, resulting in a considerable reduction in the number of spanning non-tree subgraphs generated.
Abstract: In 1968, Char [4] presented an algorithm to enumerate all the spanning trees of an undirected graph G . This algorithm starts with a known initial spanning tree of G , and generates all the other spanning trees along with certain spanning non-tree subgraphs of G . In this paper a detailed complexity analysis of Char's algorithm and methods to speed up the algorithm are discussed. Two heuristics for the selection of the initial spanning tree are suggested. These heuristics result in a considerable reduction in the number of spanning non-tree subgraphs generated. A technique called path compression, aimed at reducing the actual number of comparisons, is described. Computational results on several randomly generated graphs are presented to illustrate the improvement achieved.

Journal ArticleDOI
TL;DR: Parallel Breadth-First Search (BFS) algorithms for ordered trees and graphs on a shared memory model of a Single Instruction-stream Multiple Data-stream computer are proposed.
Abstract: Parallel Breadth-First Search (BFS) algorithms for ordered trees and graphs on a shared memory model of a Single Instruction-stream Multiple Data-stream computer are proposed. The parallel BFS algorithm for trees computes the BFS rank of eachnode of an ordered tree consisting of n nodes in time of 0(β log n) when 0(n 1+1/β) processors are used, β being an integer greater than or equal to 2. The parallel BFS algorithm for graphs produces Breadth-First Spanning Trees (BFSTs) of a directedgraph G having n nodes in time 0(log d.log n) using 0(n 3) processors, where d is the diameter of G If G is a strongly connected graph or a connected undirected graph the BFS algorithm produces n BFSTs, each BFST having a different start node.

Journal ArticleDOI
TL;DR: This paper proves the following generalizations of well-known facts about graphs embedded in the plane about edges of G that are dual to those edges ofG in d.
Abstract: Let G be a connected graph with edge set E embedded in the surface ∑. Let G° denote the geometric dual of G. For a subset d of E, let τd denote the edges of G° that are dual to those edges of G in d. We prove the following generalizations of well-known facts about graphs embedded in the plane. (1) b is a boundary cycle in G if and only if τb is a cocycle in G°. (2) If T is a spanning tree of G, then τ(E/T) contains a spanning tree of G°. (3) Let T be any spanning tree of G and, for e ϵ E/T, let T(e) denote the fundamental cycle of e. Let U ∪ E/T. Then τU is a spanning tree of G° if and only if the set of face boundaries, less any one, together with the set {T(e); e ϵ E/(T ∪ U)} is a basis for the cycle space of G.

Journal ArticleDOI
TL;DR: In this article, the authors derived a simple formula for the number of spanning trees of the circulant graphs and some special cases of the Circulant Graphs are also taken into account.
Abstract: In this paper, we derive a simple formula for the number of spanning trees of the circulant graphs. Some special cases of the circulant graphs are also taken into account.

Journal ArticleDOI
TL;DR: It is proved that the maximum number of vertices of degree 1 of a spanning tree of G is bounded by 14n and 12(n - 2).

Book ChapterDOI
TL;DR: This chapter presents algorithmic aspects of perfect graphs and surveys a number of topics in algorithmic graph theory that involve classes of perfectGraphs, including algorithmic complexity analysis, which addresses the quantitative aspects of problem solving.
Abstract: Publisher Summary This chapter presents algorithmic aspects of perfect graphs and surveys a number of topics in algorithmic graph theory that involve classes of perfect graphs. Algorithmic complexity analysis deals with the quantitative aspects of problem solving. It addresses the issue of what can be computed within a practical or reasonable amount of time and space by measuring the resource requirements exactly or by obtaining upper and lower bounds for them. Various priorities can be established to guide the choice of candidates, and each priority will yield a slightly different algorithm. If candidates are stored in a queue, then single spanning tree (SST) gives a breadth-first search (BFS) of G. Storing candidates in a stack SST does a depth-first search (DFS). If the edges have costs associated with them, and if the candidate with minimum cost is always chosen, then SST produces a minimum cost-spanning tree (MST).


Journal ArticleDOI
TL;DR: Information obtained while generating the spanning tree is used directly to evaluate certain products arising in dynamic simulation without doing the explicit multiplication by the path matrix that is shown in analytical formalisms.

Proceedings ArticleDOI
01 Dec 1984
TL;DR: Algorithms for solving the geometric minimum spanning tree problem: Given a set of n points hi d-dimensional space, find a minimum spraining tree for the complete weighted graph G dcfined by these points are presented.
Abstract: Kenneth L. Clarkson Stanford University §1 I n t r o d u c t i o n We present algorithms for solving the geometric minimum spanning tree problem: Given a set of n points hi d-dimensional space, find a minimum spraining tree for the complete weighted graph G dcfined by these points. The graph G has n vertices, each vertex identified with a point, with the weight of an edge given by the distance between the two points deffining tha t edge. This problem has many applications, including wire routing, statistical pa t tern classification, and heuristics for the traveling salesman problem. It is in fact a ftunily of problems, depending on the dimension and on the distance measure used to determine the edge weights. Three khlds of algorithms will be described: *For the planar case (d = 2), with the Ll (Manhattan} metric used for the distance between points, an algorithm will bc described having nearly linear expected time, for independently indcntically distr ibuted random points with an (unknown) underlying distribution from an extremely broad class. The "nearly linear" time mentioned above mcans that the algorithm requires linear expected tinm for all stcps except the last. That step requlrcs that disjoint sets be maintained [Tar], with n unions ea, d m = O(n) Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission. © 1984 ACM 0-89791-133-4184/004/0342 $00.75 thxds, requiring O(n~(m, n)} time in the worst case, where a (m, n) grows extremely slowly. ,For the Li distance measure, a class of approximation algorithms will be presented having a runifing time of O (n(c~(m, n)--I-load1 (1/£) log e)), where w$ = O(n), to find a spanning tree with weight less than 1 + e of the minimum spanning tree weight. Herc 6 is the ratio of the distance between the faxthest pair of input points to the distance between the closest pair. The space required is OCn(logC1/e ) + log6)}. The constant factor in the bound depends on d. ,A class of approximation algorithms will be described for d = 3 and the L2, or Euclidean, distance. These algorithms require O(n(log n+(1/e) log 6)) time, with a space bound of O (n log 6). For the plazmx Manhat tan case, algorithms requiring O(nlogn) time in the worst case have been known for some time [SH][LWl. These Mgorithms require t h e construction of the Voronoi diagrasn for the Ll metric, arid do not generalize to fast algorithms for d > 2. Yao [Yao] has described a reduction from the geometric minimum spazming tree problem to the geographic neighbor problem, and Guibas mid Stolfi [GS] have recently found an O(nlogn) algorithm for the Li pla. nar case, using this reduction. The algorithms we will describe use neither of these approaches, nor the "spiral search" teclmique described by Bentley, Weide, and Yao [BWY] that has an O(nloglogn) expectedtime bound mtdcr much more restrictive conditions. (This bound was recently improved to the nc'axly linear time O(nlog* n), with the general mildmunt spanning tree algorithm of Fredman said Taxjan [FT], and to O(no~(rn, n)) expected time, using a bucket sorting algorithm [C2].) The complexity bounds given assume that thc floor, logarithm, and bitwisc exclusiveor fmlctions axe available at unit cost. For the general L1 case, quite recently Bentley, Gabow, said Tarjmt [BGT] have found algorithms requiring

Journal ArticleDOI
TL;DR: It is shown that an array of n + 1 cells can be used for a graph with n vertices to find the connected components, a spanning tree, or, when used in conjunction with a systolic priority queue, a minimum spanning tree.
Abstract: In this paper we present a design, suited to VLSI implementation, for a one-dimensional array to solve graph connectivity problems. The computational model is relatively primitive in that only the two end cells of the array can interact with the external environment and only adjacent cells in the array are allowed to communicate. However, we show that an array of n + 1 cells can be used for a graph with n vertices to find the connected components, a spanning tree, or, when used in conjunction with a systolic priority queue, a minimum spanning tree. The area, time, and I/O requirements compare favorably with other models proposed for this problem in the case of sparse graphs.


Journal ArticleDOI
TL;DR: Given integers a, b, c, d, a polynomial algorithm for the query “is ab ≥ cd?” is presented and the result is applied to yield a Polynomial algorithms for the minimal cost reliability ratio spanning tree problem.

Journal ArticleDOI
TL;DR: This paper introduces a new class of network design problems implementing an integrated teleconferencing environment consisting of a video space showing images of the participants, an audio space providing their voices, and a graphics space providing reference and discussion material for the conference.
Abstract: This paper introduces a new class of network design problems implementing an integrated teleconferencing environment consisting of a video space showing images of the participants, an audio space providing their voices, and a graphics space providing reference and discussion material for the conference. These various spaces provide services of differing quality and type. The problem posed is to design topologically optimal networks that are least costly and that will have the flexibility to carry conferences of differing service quality and type. The actual networks studied in this paper consist of the design of a private network for a single conference among N identical, but arbitrarily located, sites. Network designs will be minimum link-cost or constrained minimum link-cost optimal, where the first is minimal over all possible network topologies and the second is constrained to consider only those topologies that have the minimum number of links. For terrestrial systems, one of the interesting results is that classical network topologies such as rings and minimum spanning trees are optimal for some conference types. However, no topology is optimal for all types, and some topologies use their capacity very poorly when used for a type for which they were not optimized. Unlike terrestrial networks, satellite networks may be easily configured to have all of their capacity available for all conference types.