SearcharxivSearch

arXiv subjects

Ahammed Ullah

Publications and source records attributed to Ahammed Ullah.

4 recordsLinked to original sources

Succinct Graph Representations and Algorithmic Applications

We propose new graph representations that exploit dense local structure to improve time and space simultaneously. Given an undirected graph $G$, we define a dual clique cover (DCC) representation of $G$ to be the pair $(C, L)$, where $C$ is a collection of cliques that covers the edges of $G$ and $L$ is the incidence dual of $C$. We identify classes of polynomial-time constructible DCC representations that are compact and call them succinct DCC representations. We then develop representation-aware algorithms for several fundamental graph problems. We show that graph primitives such as connected components, breadth-first search forests, depth-first search forests, and maximal matchings can be computed in time proportional to the size of a DCC representation rather than the number of edges. Combined with our succinct DCC representations, these results give a class of algorithms that either match or improve the time and space bounds of their counterparts on standard graph representations. Furthermore, we design several algorithms for constructing succinct DCC representations and establish provable guarantees on their efficiency. We evaluate several graph algorithms on DCC representations against adjacency-list-based implementations on a large collection of real-world and synthetic graphs. All evaluated applications show substantial execution memory savings and total-time speedups; for example, the connected components algorithm achieves about $9\times$ execution memory savings on average, with a maximum of $35\times$, and about $6.5\times$ total-time speedups on average, with a maximum of $35\times$. We also evaluate several DCC construction algorithms and find that the succinctness property plays a key role in making DCC representations effective for algorithmic applications.

cs.DS

Weighted Matching in a Poly-Streaming Model

We introduce the poly-streaming model, a generalization of streaming models of computation in which $k$ processors process $k$ data streams containing a total of $N$ items. The algorithm is allowed $O\left(f(k)\cdot M_1\right)$ space, where $M_1$ is either $o\left(N\right)$ or the space bound for a sequential streaming algorithm. Processors may communicate as needed. Algorithms are assessed by the number of passes, per-item processing time, total runtime, space usage, communication cost, and solution quality. We design a single-pass algorithm in this model for approximating the maximum weight matching (MWM) problem. Given $k$ edge streams and a parameter $\varepsilon > 0$, the algorithm computes a $\left(2+\epsilon\right)$-approximate MWM. We analyze its performance in a shared-memory parallel setting: for any constant $\varepsilon > 0$, it runs in time $\widetilde{O}\left(L_{\max}+n\right)$, where $n$ is the number of vertices and $L_{\max}$ is the maximum stream length. It supports $O\left(1\right)$ per-edge processing time using $\widetilde{O}\left(k\cdot n\right)$ space. We further generalize the design to hierarchical architectures, in which $k$ processors are partitioned into $r$ groups, each with its own shared local memory. The total intergroup communication is $\widetilde{O}\left(r \cdot n\right)$ bits, while all other performance guarantees are preserved. We evaluate the algorithm on a shared-memory system using graphs with trillions of edges. It achieves substantial speedups as $k$ increases and produces matchings with weights significantly exceeding the theoretical guarantee. On our largest test graph, it reduces runtime by nearly two orders of magnitude and memory usage by five orders of magnitude compared to an offline algorithm.

cs.DS

A Framework for Computing Greedy Clique Cover

Structural parameters of graph (such as degeneracy and arboricity) had rarely been considered when designing algorithms for $\textit{(edge) clique cover}$ problems. Taking degeneracy of graph into account, we present a greedy framework and two fixed-parameter tractable algorithms for $\textit{clique cover}$ problems. We introduce a set theoretic concept and demonstrate its use in the computations of different objectives of $\textit{clique cover}$. Furthermore, we show efficacy of our algorithms in practice.

cs.DS

Computing Clique Cover with Structural Parameterization

An abundance of real-world problems manifest as covering edges and/or vertices of a graph with cliques that are optimized for some objectives. We consider different structural parameters of graph, and design fixed-parameter tractable algorithms for a number of clique cover problems. Using a set representation of graph, we introduce a framework for computing clique cover with different objectives. We demonstrate use of the framework for a variety of clique cover problems. Our results include a number of new algorithms with exponential to double exponential improvements in the running time.

cs.DS