Randomized OBDD-Based Graph Algorithms
Implicit graph algorithms deal with the characteristic function χ E of the edge set E of a graph G = (V,E). Encoding the nodes by binary vectors, χ E can be represented by an Ordered Binary Decision Diagram (OBDD) which is a well known data structure for Boolean functions. OBDD-based graph algorithms solve graph optimization problems by mainly using functional operations and are a heuristic approach to cope with massive graphs. These algorithms heavily rely on a compact representation of the underlying Boolean functions which is why all previously known OBDD-based algorithms are deterministic since random functions are not compressible in general. Here, the first randomized OBDD-based algorithms are presented where random functions with limited independence are used to overcome the large representation size. On the theoretical part, the size of OBDDs representing k-wise independent random functions is investigated and a construction of almost k-wise independent random functions by means of a random OBDD generation is shown. On the algorithmic part, randomization often facilitates the design of simple algorithms which in the context of OBDD-based algorithms means a small number of functional operations and as few input variables of the used Boolean functions as possible. This paper presents a maximal matching algorithm with O(log3 ∣ V ∣ ) functional operations in expectation using functions with at most 3 log ∣ V ∣ variables which is both better than the best known algorithms w.r.t. functional operations and variables. The algorithm may be of independent interest. The experimental evaluation shows that this algorithm outperforms known OBDD-based algorithms for the maximal matching problem.
KeywordsBoolean Function Variable Order Interval Graph Maximal Match Binary Decision Diagram
Unable to display preview. Download preview PDF.
- 4.Awerbuch, B., Goldberg, A.V., Luby, M., Plotkin, S.A.: Network decomposition and locality in distributed computation. In: FOCS, pp. 364–369 (1989)Google Scholar
- 14.Coudert, O.: Doing two-level logic minimization 100 times faster. In: SODA, pp. 112–121 (1995)Google Scholar
- 15.Davis, T.A., Hu, Y.: The University of Florida Sparse Matrix Collection. ACM Trans. on Math. Soft. 38(1), 1:1–1:25 (2011)Google Scholar
- 16.Gentilini, R., Piazza, C., Policriti, A.: Computing strongly connected components in a linear number of symbolic steps. In: SODA, pp. 573–582 (2003)Google Scholar
- 27.Masek, W.: A fast algorithm for the string editing problem and decision graph complexity. Master’s thesis, MIT (1976)Google Scholar
- 31.Negruseri, C.S., Pasoi, M.B., Stanley, B., Stein, C., Strat, C.G.: Solving maximum flow problems on real world bipartite graphs. In: ALENEX, pp. 14–28 (2009)Google Scholar
- 37.Sawitzki, D.: Implicit simulation of FNC algorithms. Electronic Colloquium on Computational Complexity (ECCC) 14(028) (2007)Google Scholar
- 40.Wegener, I.: Branching programs and binary decision diagrams. In: SIAM Monographs on Discrete Mathematics and Applications (2000)Google Scholar