Sorting Noisy Data with Partial Information

Total Page:16

File Type:pdf, Size:1020Kb

Sorting Noisy Data with Partial Information Sorting Noisy Data with Partial Information Konstantin Makarychev Yury Makarychev∗ Aravindan Microsoft Research TTIC Vijayaraghavan CMU ABSTRACT of the vertices, which minimizes the number of backward In this paper, we propose two semi-random models for the edges (according to the ordering). Minimum Feedback Arc Set Problem and present approxi- Definition 1.1 Given a directed graph G(V,E) and a ver- mation algorithms for them. In the first model, which we call tex ordering π : V 1,...,n , we say that an edge (arc) the Random Edge Flipping model, an instance is generated (u, v) E is a forward→ { edge w.r.t} π if π(u) < π(v); other- as follows. We start with an arbitrary acyclic directed graph wise, we∈ say that the edge is a backward edge w.r.t. π. and then randomly flip its edges (the adversary may later un-flip some of them). In the second model, which we call Definition 1.2 The Minimum Feedback Arc Set problem is the Random Backward Edge model, again we start with an as follows. Given a directed graph G =(V,E), find a vertex arbitrary acyclic graph but now add new random backward ordering π : V 1,...,n that minimizes the number of edges (the adversary may delete some of them). For the first backward edges w.r.t.→ { π. The} value of the problem equals the model, we give an approximation algorithm that finds a so- number of backward edges w.r.t. the optimal ordering. lution of cost (1 + δ) opt-cost +n polylog n, where opt-cost is the cost of the optimal solution. For the second model, The history of the problem dates back to as early as we give an approximation algorithm that finds a solution of 1957, when Unger [Ung57] considered it in his paper on cost O(planted-cost)+n polylog n, where planted-cost is the asynchronous logical feedback networks. The interest in cost of the planted solution. FAS stems from its numerous applications in simplifying Additionally, we present an approximation algorithm for the analysis of feedback systems (removing feedback loops) semi-random instances of Minimum Directed Balanced Cut. [Ung57, SR61], finding inconsistencies and cyclic dependen- cies [You63], and ranking based on pairwise information [KS63, ACN08]. It is the complementary problem of the Categories and Subject Descriptors Maximum Acyclic Subgraph [BS90, CMM07, GMR08], which F.2 [Theory of Computation]: Analysis of Algorithms asks to find the largest acyclic graph (w.r.t. the number of edges) in a given digraph. Keywords The problem has been extensively studied in the litera- ture. Karp [Kar72] showed that the problem is NP-hard Minimum Feedback Arc Set, semi-random model, average- in 1972, and Kann [Kan92] showed that the problem is case analysis, approximation algorithm APX-hard in 1992. Furthermore, Guruswami, Manokaran, and Raghavendra [GMR08] showed that there is no con- 1. INTRODUCTION stant factor approximation for FAS, assuming the Unique Games Conjecture. In their seminal paper, Leighton and The Minimum Feedback Arc Set (FAS) problem is one Rao [LR99] gave the first polylogarithmic approximation al- of the most basic optimization problems in the context of gorithm for the problem with approximation factor O(log2 n). directed graphs. The problem asks to find the minimum set This result was later improved by Seymour [Sey95], who of edges (arcs) whose removal makes a given graph a directed used a clever divide and conquer approach to get an approxi- acyclic graph (DAG). As any directed acyclic graph can be mation factor of O(log n log log n). His technique was gener- topologically sorted, this is equivalent to finding an ordering alized by Even, Naor, Rao, and Schieber to a more general family of ordering problems by the method of spreading- ∗Supported in part by NSF CAREER grant CCF-1150062. metrics [ENRS00]. Several researchers studied the special case of tournaments, directed graphs in which every pair of vertices is connected by a directed edge [ACN08, CFR06, Permission to make digital or hard copies of all or part of this work for KMS07]; Kenyon-Mathieu and Schudy gave a polynomial- personal or classroom use is granted without fee provided that copies are time approximation scheme (PTAS) for FAS in tournaments not made or distributed for profit or commercial advantage and that copies [KMS07]. To summarize, despite our best efforts we only bear this notice and the full citation on the first page. To copy otherwise, to know polylogarithmic approximation algorithms for the prob- republish, to post on servers or to redistribute to lists, requires prior specific lem, and, assuming the Unique Games Conjecture, we can- permission and/or a fee. ITCS'13, January 9–12, 2012, Berkeley, California, USA. not get a constant factor approximation for worst-case in- Copyright 2013 ACM 978-1-4503-1859-4/13/01 ...$15.00. stances. However, our primary interest in such optimization prob- pages, based on the user feedback1. It is natural to assume lems comes from many different applications they arise in. that there is a true underlying order among these web pages, The instances that we encounter in the real world are not and our goal is to find it. The pairwise comparisons that we worst-case instances. Besides, instances that are produced see are likely to be noisy perturbations of the true ordering. in hardness reductions are often contrived, and we are un- Note that it is unrealistic to expect that we have compar- likely to encounter them in practice. Also it may be too isons for all pairs of web pages. hard, if not impossible, to design an algorithm that gives This motivates the following formal definition for our first a good approximation guarantee for every instance of FAS. semi-random model: This motivates the study of the average-case complexity of Definition 1.3 (Random Edge Flipping Model) the problem. We are given a set of vertices V of size n, and a parameter Question 1 Can we design algorithms with better provable ε. A semi-random instance of the Random Edge Flipping approximation guarantees for realistic average-case models model is generated as follows. for the Minimum Feedback Arc Set problem? 1. Adversary chooses a directed acyclic graph on V , i.e. Braverman and Mossel [BM08] studied the problem of she chooses a set of edges E so that G(V,E) is acyclic. sorting in the presence of random noise. The problem corre- 2. Every edge in E is flipped (its direction is reversed) sponds to FAS on tournaments with random noise. In their with probability ε independently at random. The set of random model, the instance is generated as follows. There flipped edges is denoted by E . is a planted (complete) ordering of the vertices. An edge is R added between every pair of vertices: the edge is directed to 3. The adversary chooses a subset of edges in ER (pos- 1 respect the ordering with probability 2 + ε and it is directed sibly empty) and un-flips them (restores the original 1 against the ordering with probability 2 ε. Braverman and direction). Mossel show that with high probability,− we can find the op- Our second semi-random model for FAS is called the Ran- timal ordering, and the optimal ordering is at most O(n) far dom Backward Edge model. Informally speaking, the in- from the planted ordering (in ` distance). This result re- 1 stance consists of an adversarial directed acyclic graph and quires that we have complete (but noisy) information; that a set of random backward edges, i.e. random edges directed is, the digraph must be a tournament. The result does not opposite to the ordering. The planted solution to FAS con- apply to more general instances of FAS. sists of these random backward edges. Our goal is to find a In this paper, we propose and study two new semi-random solution whose cost is comparable to the cost of the planted models for FAS, which we believe capture many properties of solution. real world instances. We develop new algorithms for semi- random instances of FAS which give (1 + δ) and constant Definition 1.4 (Random Backward Edge Model) We factor approximations in these two models (see below for are given a set of vertices V of size n, and a parameter ε. A the precise statements). In the process, we also develop a semi-random instance of the Random Backward Edge model constant factor approximations for a natural semi-random is generated as follows. model for Minimum Directed Balanced Cut. Our models are geared towards the two chief applications 1. The adversary chooses an ordering π of V . of FAS: noisy topological sorting and breaking cyclic de- 2. Nature adds a random set of backward edges to G: for pendencies. In both of these semi-random models, a semi- every pair (u, v) with π(u) >π(v), nature adds an edge random instance can be seen as an acyclic digraph (a FAS (u, v) to G with probability ε. The choices for all edges instance with cost 0), augmented with random noise. are independent. The set of random edges is denoted 1.1 Semi-random Models by ER. We now describe the two semi-random models for FAS 3. The adversary adds an arbitrary set of forward edges that we study in this paper. w.r.t. π. She also removes some set (possibly empty) Our first semi-random model is called the Random Edge of backward edges added by nature. Flipping model. It models the problem of topological sort- (Note that this model is stronger than a model where the ing in the presence of a noisy oracle.
Recommended publications
  • An Efficient Implementation of Sugiyama's Algorithm for Layered
    Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 9, no. 3, pp. 305–325 (2005) An Efficient Implementation of Sugiyama’s Algorithm for Layered Graph Drawing Markus Eiglsperger Z¨uhlke Engineering AG 8952 Schlieren, Switzerland Martin Siebenhaller WSI f¨urInformatik, Universit¨at T¨ubingen Sand 13, 72076 T¨ubingen, Germany [email protected] Michael Kaufmann WSI f¨urInformatik, Universit¨at T¨ubingen Sand 13, 72076 T¨ubingen, Germany [email protected] Abstract Sugiyama’s algorithm for layered graph drawing is very popular and commonly used in practical software. The extensive use of dummy vertices to break long edges between non-adjacent layers often leads to unsatis- fying performance. The worst-case running-time of Sugiyama’s approach is O(|V ||E| log |E|) requiring O(|V ||E|) memory, which makes it unusable for the visualization of large graphs. By a conceptually simple new tech- nique we are able to keep the number of dummy vertices and edges linear in the size of the graph without increasing the number of crossings. We reduce the worst-case time complexity of Sugiyama’s approach by an order of magnitude to O((|V | + |E|) log |E|) requiring O(|V | + |E|) space. Article Type Communicated by Submitted Revised Regular paper E. R. Gansner and J. Pach November 2004 July 2005 This work has partially been supported by the DFG-grant Ka512/8-2. It has been performed when the first author was with the Universit¨atT¨ubingen. Eiglsperger et al., Implementing Sugiyama’s Alg., JGAA, 9(3) 305–325 (2005)306 1 Introduction Most approaches for drawing directed graphs used in practice follow the frame- work developed by Sugiyama et al.
    [Show full text]
  • Sorting Heuristics for the Feedback Arc Set Problem
    Sorting Heuristics for the Feedback Arc Set Problem Franz J. Brandenburg and Kathrin Hanauer Department of Informatics and Mathematics, University of Passau fbrandenb;[email protected] Technical Report, Number MIP-1104 Department of Informatics and Mathematics University of Passau, Germany February 2011 Sorting Heuristics for the Feedback Arc Set Problem? Franz J. Brandenburg and Kathrin Hanauer University of Passau, Germany fbrandenb,[email protected] Abstract. The feedback arc set problem plays a prominent role in the four-phase framework to draw directed graphs, also known as the Sugiyama algorithm. It is equivalent to the linear arrangement problem where the vertices of a graph are ordered from left to right and the backward arcs form the feedback arc set. In this paper we extend classical sorting algorithms to heuristics for the feedback arc set problem. Established algorithms are considered from this point of view, where the directed arcs between vertices serve as binary comparators. We analyze these algorithms and afterwards design hybrid algorithms by their composition in order to gain further improvements. These algorithms primarily differ in the use of insertion sort and sifting and they are very similar in their performance, which varies by about 0:1%. The differences mainly lie in their run time and their convergence to a local minimum. Our studies extend related work by new algorithms and our experiments are conducted on much larger graphs. Overall we can conclude that sifting performs better than insertion sort. 1 Introduction The feedback arc set problem (FAS) asks for a minimum sized subset of arcs of a directed graph whose removal or reversal makes the graph acyclic.
    [Show full text]
  • Vertex Ordering Problems in Directed Graph Streams∗
    Vertex Ordering Problems in Directed Graph Streams∗ Amit Chakrabartiy Prantar Ghoshz Andrew McGregorx Sofya Vorotnikova{ Abstract constant-pass algorithms for directed reachability [12]. We consider directed graph algorithms in a streaming setting, This is rather unfortunate given that many of the mas- focusing on problems concerning orderings of the vertices. sive graphs often mentioned in the context of motivating This includes such fundamental problems as topological work on graph streaming are directed, e.g., hyperlinks, sorting and acyclicity testing. We also study the related citations, and Twitter \follows" all correspond to di- problems of finding a minimum feedback arc set (edges rected edges. whose removal yields an acyclic graph), and finding a sink In this paper we consider the complexity of a variety vertex. We are interested in both adversarially-ordered and of fundamental problems related to vertex ordering in randomly-ordered streams. For arbitrary input graphs with directed graphs. For example, one basic problem that 1 edges ordered adversarially, we show that most of these motivated much of this work is as follows: given a problems have high space complexity, precluding sublinear- stream consisting of edges of an acyclic graph in an space solutions. Some lower bounds also apply when the arbitrary order, how much memory is required to return stream is randomly ordered: e.g., in our most technical result a topological ordering of the graph? In the offline we show that testing acyclicity in the p-pass random-order setting, this can be computed in O(m + n) time using model requires roughly n1+1=p space.
    [Show full text]
  • Algorithms (Decrease-And-Conquer)
    Algorithms (Decrease-and-Conquer) Pramod Ganapathi Department of Computer Science State University of New York at Stony Brook August 22, 2021 1 Contents Concepts 1. Decrease by constant Topological sorting 2. Decrease by constant factor Lighter ball Josephus problem 3. Variable size decrease Selection problem ............................................................... Problems Stooge sort 2 Contributors Ayush Sharma 3 Decrease-and-conquer Problem(n) [Step 1. Decrease] Subproblem(n0) [Step 2. Conquer] Subsolution [Step 3. Combine] Solution 4 Types of decrease-and-conquer Decrease by constant. n0 = n − c for some constant c Decrease by constant factor. n0 = n/c for some constant c Variable size decrease. n0 = n − c for some variable c 5 Decrease by constant Size of instance is reduced by the same constant in each iteration of the algorithm Decrease by 1 is common Examples: Array sum Array search Find maximum/minimum element Integer product Exponentiation Topological sorting 6 Decrease by constant factor Size of instance is reduced by the same constant factor in each iteration of the algorithm Decrease by factor 2 is common Examples: Binary search Search/insert/delete in balanced search tree Fake coin problem Josephus problem 7 Variable size decrease Size of instance is reduced by a variable in each iteration of the algorithm Examples: Selection problem Quicksort Search/insert/delete in binary search tree Interpolation search 8 Decrease by Constant HOME 9 Topological sorting Problem Topological sorting of vertices of a directed acyclic graph is an ordering of the vertices v1, v2, . , vn in such a way that there is an edge directed towards vertex vj from vertex vi, then vi comes before vj.
    [Show full text]
  • Topological Sort (An Application of DFS)
    Topological Sort (an application of DFS) CSC263 Tutorial 9 Topological sort • We have a set of tasks and a set of dependencies (precedence constraints) of form “task A must be done before task B” • Topological sort : An ordering of the tasks that conforms with the given dependencies • Goal : Find a topological sort of the tasks or decide that there is no such ordering Examples • Scheduling : When scheduling task graphs in distributed systems, usually we first need to sort the tasks topologically ...and then assign them to resources (the most efficient scheduling is an NP-complete problem) • Or during compilation to order modules/libraries d c a g f b e Examples • Resolving dependencies : apt-get uses topological sorting to obtain the admissible sequence in which a set of Debian packages can be installed/removed Topological sort more formally • Suppose that in a directed graph G = (V, E) vertices V represent tasks, and each edge ( u, v)∊E means that task u must be done before task v • What is an ordering of vertices 1, ..., | V| such that for every edge ( u, v), u appears before v in the ordering? • Such an ordering is called a topological sort of G • Note: there can be multiple topological sorts of G Topological sort more formally • Is it possible to execute all the tasks in G in an order that respects all the precedence requirements given by the graph edges? • The answer is " yes " if and only if the directed graph G has no cycle ! (otherwise we have a deadlock ) • Such a G is called a Directed Acyclic Graph, or just a DAG Algorithm for
    [Show full text]
  • 6.006 Course Notes
    6.006 Course Notes Wanlin Li Fall 2018 1 September 6 • Computation • Definition. Problem: matching inputs to correct outputs • Definition. Algorithm: procedure/function matching each input to single out- put, correct if matches problem • Want program to be able to handle infinite space of inputs, arbitrarily large size of input • Want finite and efficient program, need recursive code • Efficiency determined by asymptotic growth Θ() • O(f(n)) is all functions below order of growth of f(n) • Ω(f(n)) is all functions above order of growth of f(n) • Θ(f(n)) is tight bound • Definition. Log-linear: Θ(n log n) Θ(nc) • Definition. Exponential: b • Algorithm generally considered efficient if runs in polynomial time • Model of computation: computer has memory (RAM - random access memory) and CPU for performing computation; what operations are allowed in constant time • CPU has registers to access and process memory address, needs log n bits to handle size n input • Memory chunked into “words” of size at least log n 1 6.006 Wanlin Li 32 10 • E.g. 32 bit machine can handle 2 ∼ 4 GB, 64 bit machine can handle 10 GB • Model of computaiton in word-RAM • Ways to solve algorithms problem: design new algorithm or reduce to already known algorithm (particularly search in data structure, sort, shortest path) • Classification of algorithms based on graph on function calls • Class examples and design paradigms: brute force (completely disconnected), decrease and conquer (path), divide and conquer (tree with branches), dynamic programming (directed acyclic graph), greedy (choose which paths on directed acyclic graph to take) • Computation doesn’t have to be a tree, just has to be directed acyclic graph 2 September 11 • Example.
    [Show full text]
  • An Exact Method for the Minimum Feedback Arc Set Problem
    AN EXACT METHOD FOR THE MINIMUM FEEDBACK ARC SET PROBLEM ALI BAHAREV, HERMANN SCHICHL, ARNOLD NEUMAIER, TOBIAS ACHTERBERG Abstract. Given a directed graph G, a feedback arc set of G is a subset of its edges containing at least one edge of every cycle in G. Finding a feedback arc set of minimum cardinality is the minimum feedback arc set problem. The minimum set cover formulation of the minimum feedback arc set problem is appropriate as long as all the simple cycles in G can be enumerated. Unfortunately, even sparse graphs can have W(2n) simple cycles, and such graphs appear in practice. An exact method is proposed for sparse graphs that enumerates simple cycles in a lazy fashion, and extends an incomplete cycle matrix iteratively. In all cases encountered so far, only a tractable number of cycles has to be enumerated until a minimum feedback arc set is found. Numerical results are given on a test set containing computationally challenging sparse graphs, relevant for industrial applications. Key words. minimum feedback arc set, maximum acyclic subgraph, minimum feedback vertex set, linear ordering problem, tearing 1. Introduction. A directed graph G is a pair (V;E) of finite sets, the vertices V and the edges E V V. It is a simple graph if it has no multiple edges or self-loops (edges of ⊆ × the form (v;v)). Let G = (V;E) denote a simple directed graph, and let n = V denote the j j number of vertices (nodes), and m = E denote the number of edges. A subgraph H of the j j graph G is said to be induced if, for every pair of vertices u and v of H, (u;v) is an edge of H if and only if (u;v) is an edge of G.
    [Show full text]
  • Verified Textbook Algorithms
    Verified Textbook Algorithms A Biased Survey Tobias Nipkow[0000−0003−0730−515X] and Manuel Eberl[0000−0002−4263−6571] and Maximilian P. L. Haslbeck[0000−0003−4306−869X] Technische Universität München Abstract. This article surveys the state of the art of verifying standard textbook algorithms. We focus largely on the classic text by Cormen et al. Both correctness and running time complexity are considered. 1 Introduction Correctness proofs of algorithms are one of the main motivations for computer- based theorem proving. This survey focuses on the verification (which for us always means machine-checked) of textbook algorithms. Their often tricky na- ture means that for the most part they are verified with interactive theorem provers (ITPs). We explicitly cover running time analyses of algorithms, but for reasons of space only those analyses employing ITPs. The rich area of automatic resource analysis (e.g. the work by Jan Hoffmann et al. [103,104]) is out of scope. The following theorem provers appear in our survey and are listed here in alphabetic order: ACL2 [111], Agda [31], Coq [25], HOL4 [181], Isabelle/HOL [151,150], KeY [7], KIV [63], Minlog [21], Mizar [17], Nqthm [34], PVS [157], Why3 [75] (which is primarily automatic). We always indicate which ITP was used in a particular verification, unless it was Isabelle/HOL (which we abbreviate to Isabelle from now on), which remains implicit. Some references to Isabelle formalizations lead into the Archive of Formal Proofs (AFP) [1], an online library of Isabelle proofs. There are a number of algorithm verification frameworks built on top of individual theorem provers.
    [Show full text]
  • Visvesvaraya Technological University a Project Report
    ` VISVESVARAYA TECHNOLOGICAL UNIVERSITY “Jnana Sangama”, Belagavi – 590 018 A PROJECT REPORT ON “PREDICTIVE SCHEDULING OF SORTING ALGORITHMS” Submitted in partial fulfillment for the award of the degree of BACHELOR OF ENGINEERING IN COMPUTER SCIENCE AND ENGINEERING BY RANJIT KUMAR SHA (1NH13CS092) SANDIP SHAH (1NH13CS101) SAURABH RAI (1NH13CS104) GAURAV KUMAR (1NH13CS718) Under the guidance of Ms. Sridevi (Senior Assistant Professor, Dept. of CSE, NHCE) DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING NEW HORIZON COLLEGE OF ENGINEERING (ISO-9001:2000 certified, Accredited by NAAC ‘A’, Permanently affiliated to VTU) Outer Ring Road, Panathur Post, Near Marathalli, Bangalore – 560103 ` NEW HORIZON COLLEGE OF ENGINEERING (ISO-9001:2000 certified, Accredited by NAAC ‘A’ Permanently affiliated to VTU) Outer Ring Road, Panathur Post, Near Marathalli, Bangalore-560 103 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CERTIFICATE Certified that the project work entitled “PREDICTIVE SCHEDULING OF SORTING ALGORITHMS” carried out by RANJIT KUMAR SHA (1NH13CS092), SANDIP SHAH (1NH13CS101), SAURABH RAI (1NH13CS104) and GAURAV KUMAR (1NH13CS718) bonafide students of NEW HORIZON COLLEGE OF ENGINEERING in partial fulfillment for the award of Bachelor of Engineering in Computer Science and Engineering of the Visvesvaraya Technological University, Belagavi during the year 2016-2017. It is certified that all corrections/suggestions indicated for Internal Assessment have been incorporated in the report deposited in the department library. The project report has been approved as it satisfies the academic requirements in respect of Project work prescribed for the Degree. Name & Signature of Guide Name Signature of HOD Signature of Principal (Ms. Sridevi) (Dr. Prashanth C.S.R.) (Dr. Manjunatha) External Viva Name of Examiner Signature with date 1.
    [Show full text]
  • CS 61B Final Exam Guerrilla Section Spring 2018 May 5, 2018
    CS 61B Final Exam Guerrilla Section Spring 2018 May 5, 2018 Instructions Form a small group. Start on the first problem. Check off with a helper or discuss your solution process with another group once everyone understands how to solve the first problem and then repeat for the second problem . You may not move to the next problem until you check off or discuss with another group and everyone understands why the solution is what it is. You may use any course resources at your disposal: the purpose of this review session is to have everyone learning together as a group. 1 The Tortoise or the Hare 1.1 Given an undirected graph G = (V; E) and an edge e = (s; t) in G, describe an O(jV j + jEj) time algorithm to determine whether G has a cycle containing e. Remove e from the graph. Then, run DFS or BFS starting at s to find t. If a path already exists from s to t, then adding e would create a cycle. 1.2 Given a connected, undirected, and weighted graph, describe an algorithm to con- struct a set with as few edges as possible such that if those edges were removed, there would be no cycles in the remaining graph. Additionally, choose edges such that the sum of the weights of the edges you remove is minimized. This algorithm must be as fast as possible. 1. Negate all edges. 2. Form an MST via Kruskal's or Prim's algorithm. 3. Return the set of all edges not in the MST (undo negation).
    [Show full text]
  • Arxiv:1105.2397V1 [Cs.DS] 12 May 2011 [email protected]
    A Incremental Cycle Detection, Topological Ordering, and Strong Component Maintenance BERNHARD HAEUPLER, Massachusetts Institute of Technology TELIKEPALLI KAVITHA, Tata Institute of Fundamental Research ROGERS MATHEW, Indian Institute of Science SIDDHARTHA SEN, Princeton University ROBERT E. TARJAN, Princeton University & HP Laboratories We present two on-line algorithms for maintaining a topological order of a directed n-vertex acyclic graph as arcs are added, and detecting a cycle when one is created. Our first algorithm handles m arc additions in O(m3=2) time. For sparse graphs (m=n = O(1)), this bound improves the best previous bound by a logarithmic factor, and is tight to within a constant factor among algorithms satisfying a natural locality property. Our second algorithm handles an arbitrary sequence of arc additions in O(n5=2) time. For sufficiently dense graphs, this bound improves the best previous boundp by a polynomial factor. Our bound may be far from tight: we show that the algorithm can take Ω(n22 2 lg n) time by relating its performance to a generalization of the k-levels problem of combinatorial geometry. A completely different algorithm running in Θ(n2 log n) time was given recently by Bender, Fineman, and Gilbert. We extend both of our algorithms to the maintenance of strong components, without affecting the asymptotic time bounds. Categories and Subject Descriptors: F.2.2 [Analysis of Algorithms and Problem Complexity]: Nonnumerical Algorithms and Problems—Computations on discrete structures; G.2.2 [Discrete Mathematics]: Graph Theory—Graph algorithms; E.1 [Data]: Data Structures—Graphs and networks General Terms: Algorithms, Theory Additional Key Words and Phrases: Dynamic algorithms, directed graphs, topological order, cycle detection, strong compo- nents, halving intersection, arrangement ACM Reference Format: Haeupler, B., Kavitha, T., Mathew, R., Sen, S., and Tarjan, R.
    [Show full text]
  • A Low Complexity Topological Sorting Algorithm for Directed Acyclic Graph
    International Journal of Machine Learning and Computing, Vol. 4, No. 2, April 2014 A Low Complexity Topological Sorting Algorithm for Directed Acyclic Graph Renkun Liu then return error (graph has at Abstract—In a Directed Acyclic Graph (DAG), vertex A and least one cycle) vertex B are connected by a directed edge AB which shows that else return L (a topologically A comes before B in the ordering. In this way, we can find a sorted order) sorting algorithm totally different from Kahn or DFS algorithms, the directed edge already tells us the order of the Because we need to check every vertex and every edge for nodes, so that it can simply be sorted by re-ordering the nodes the “start nodes”, then sorting will check everything over according to the edges from a Direction Matrix. No vertex is again, so the complexity is O(E+V). specifically chosen, which makes the complexity to be O*E. An alternative algorithm for topological sorting is based on Then we can get an algorithm that has much lower complexity than Kahn and DFS. At last, the implement of the algorithm by Depth-First Search (DFS) [2]. For this algorithm, edges point matlab script will be shown in the appendix part. in the opposite direction as the previous algorithm. The algorithm loops through each node of the graph, in an Index Terms—DAG, algorithm, complexity, matlab. arbitrary order, initiating a depth-first search that terminates when it hits any node that has already been visited since the beginning of the topological sort: I.
    [Show full text]