ePrints@IIScePrints@IISc Home | About | Browse | Latest Additions | Advanced Search | Contact | Help

Faster Algorithms for Minimum Cycle Basis in Directed Graphs

Hariharan, Ramesh and Kavitha, Telikepalli and Mehlhorn, Kurt (2008) Faster Algorithms for Minimum Cycle Basis in Directed Graphs. In: SIAM JOURNAL ON COMPUTING, 38 (4). pp. 1430-1447.

[img] PDF
full.pdf - Published Version
Restricted to Registered users only

Download (249kB) | Request a copy
Official URL: http://scitation.aip.org/getabs/servlet/GetabsServ...

Abstract

We consider the problem of computing a minimum cycle basis in a directed graph. The input to this problem is a directed graph $G$ whose edges have nonnegative weights. A cycle in this graph is actually a cycle in the underlying undirected graph with edges traversable in both directions. A $\{-1,0,1\}$ edge incidence vector is associated with each cycle: edges traversed by the cycle in the right direction get 1 and edges traversed in the opposite direction get $-1$. The vector space over $\mathbb{Q}$ generated by these vectors is the cycle space of $G$. A set of cycles is called a cycle basis of $G$ if it forms a basis for this vector space. We seek a cycle basis where the sum of weights of the cycles is minimum. The current fastest algorithm for computing a minimum cycle basis in a directed graph with $m$ edges and $n$ vertices runs in $\tilde{O}(m^{\omega+1}n)$ time, where $\omega < 2.376$ is the exponent of matrix multiplication. We present an $O(m^3n+m^2n^2\log n)$ algorithm. We obtain our algorithm by using fast matrix multiplication over rings and an efficient extension of Dijkstra's algorithm to compute a shortest cycle in $G$ whose dot product with a function on its edge set is nonzero. We also present a simple $O(m^2n+mn^2\log n)$ Monte Carlo algorithm. The problem of computing a minimum cycle basis in an undirected graph has been well studied. In this problem a $\{0,1\}$ edge incidence vector is associated with each cycle and the vector space over $\mathbb{Z}_2$ generated by these vectors is the cycle space of the graph. The fastest known algorithm for computing a minimum cycle basis in an undirected graph runs in $O(m^2n + mn^2\log n)$ time and our randomized algorithm for directed graphs matches this running time.

Item Type: Journal Article
Publication: SIAM JOURNAL ON COMPUTING
Publisher: Society for Industrial and Applied Mathematics
Additional Information: Copyright of this article belongs to Society for Industrial and Applied Mathematics.
Keywords: cycle basis;fast matrix multiplication;randomization; shortest paths.
Department/Centre: Division of Electrical Sciences > Computer Science & Automation
Date Deposited: 11 Sep 2009 09:41
Last Modified: 19 Sep 2010 05:00
URI: http://eprints.iisc.ac.in/id/eprint/18119

Actions (login required)

View Item View Item