Abstract
Aligning sequencing reads on graph representations of genomes is an important ingredient of pan-genomics. Such approaches typically find a set of local anchors that indicate plausible matches between substrings of a read to subpaths of the graph. These anchor matches are then combined to form a (semi-local) alignment of the complete read on a subpath. Co-linear chaining is an algorithmically rigorous approach to combine the anchors. It is a well-known approach for the case of two sequences as inputs. Here we extend the approach so that one of the inputs can be a directed acyclic graph (DAGs), e.g. a splicing graph in transcriptomics or a variant graph in pan-genomics.
This extension to DAGs turns out to have a tight connection to the minimum path cover problem, asking us to find a minimum-cardinality set of paths that cover all the nodes of a DAG. We study the case when the size k of a minimum path cover is small, which is often the case in practice. First, we propose an algorithm for finding a minimum path cover of a DAG (V, E) in \(O(k|E|\log |V|)\) time, improving all known time-bounds when k is small and the DAG is not too dense. Second, we introduce a general technique for extending dynamic programming (DP) algorithms from sequences to DAGs. This is enabled by our minimum path cover algorithm, and works by mimicking the DP algorithm for sequences on each path of the minimum path cover. This technique generally produces algorithms that are slower than their counterparts on sequences only by a factor k. Our technique can be applied, for example, to the classical longest increasing subsequence and longest common subsequence problems, extended to labeled DAGs. Finally, we apply this technique to the co-linear chaining problem, which is a generalization of both of these two problems. We also implemented the new co-linear chaining approach. Experiments on splicing graphs show that the new method is efficient also in practice.
A. Tomescu and V. Mäkinen—Shared last author contribution.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Abouelhoda, M.: A chaining algorithm for mapping cdna sequences to multiple genomic sequences. In: Ziviani, N., Baeza-Yates, R. (eds.) SPIRE 2007. LNCS, vol. 4726, pp. 1–13. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-75530-2_1
Ahuja, R.K., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms, and Applications. Prentice-Hall Inc, Upper Saddle River (1993)
Amir, A., Lewenstein, M., Lewenstein, N.: Pattern matching in hypertext. J. Algorithms 35(1), 82–99 (2000)
Belazzougui, D.: Linear time construction of compressed text indices in compact space. In: Proceedings of the Symposium on Theory of Computing STOC 2014, pp. 148–193. ACM (2014)
Belazzougui, D., Cunial, F., Kärkkäinen, J., Mäkinen, V.: Versatile succinct representations of the bidirectional Burrows-wheeler transform. In: Bodlaender, H.L., Italiano, G.F. (eds.) ESA 2013. LNCS, vol. 8125, pp. 133–144. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40450-4_12
Chen, Y., Chen, Y.: An efficient algorithm for answering graph reachability queries. In: 2008 IEEE 24th International Conference on Data Engineering, pp. 893–902, April 2008
Chen, Y., Chen, Y.: On the graph decomposition. In: 2014 IEEE Fourth International Conference on Big Data and Cloud Computing, pp. 777–784, Dec 2014
Church, D.M., Schneider, V.A., Steinberg, K.M., Schatz, M.C., Quinlan, A.R., Chin, C.-S., Kitts, P.A., Aken, B., Marth, G.T., Hoffman, M.M., et al.: Extending reference assembly models. Genome Biol. 16(1), 13 (2015)
Cohen, E., Halperin, E., Kaplan, H., Zwick, U.: Reachability and distance queries via 2-hop labels. SIAM J. Comput. 32(5), 1338–1355 (2003)
Eppstein, D., Galil, Z., Giancarlo, R., Italiano, G.F.: Sparse dynamic programming I: linear cost functions. J. ACM 39(3), 519–545 (1992)
Felsner, S., Raghavan, V., Spinrad, J.: Recognition algorithms for orders of small width and graphs of small Dilworth number. Order 20(4), 351–364 (2003)
Fulkerson, D.R.: Note on Dilworth’s decomposition theorem for partially ordered sets. Proc. Am. Math. Soc. 7(4), 701–702 (1956)
Gabow, H.N., Bentley, J.L., Tarjan, R.E.: Scaling and related techniques for geometry problems. In: Proceedings of the Sixteenth Annual ACM Symposium on Theory of Computing, STOC 1984, pp. 135–143. ACM, New York (1984)
Haussler, D., Smuga-Otto, M., Paten, B., Novak, A.M., Nikitin, S., Zueva, M., Miagkov, D.: A flow procedure for the linearization of genome sequence graphs. In: Sahinalp, S.C. (ed.) RECOMB 2017. LNCS, vol. 10229, pp. 34–49. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-56970-3_3
Heber, S., Alekseyev, M., Sze, S.-H., Tang, H., Pevzner, P.A.: Splicing graphs and EST assembly problem. Bioinformatics 18(Suppl. 1), S181–S188 (2002)
Hopcroft, J.E., Karp, R.M.: An \(n^{5/2}\) algorithm for maximum matchings in Bipartite graphs. SIAM J. Comput. 2(4), 225–231 (1973)
Jagadish, H.V.: A compression technique to materialize transitive closure. ACM Trans. Database Syst. 15(4), 558–598 (1990)
Kuosmanen, A., Norri, T., Mäkinen, V.: Evaluating approaches to find exon chains based on long reads. Brief. Bioinform. bbw137 (2017)
Kuosmanen, A., Paavilainen, T., Gagie, T., Chikhi, R., Tomescu, A.I., Mäkinen, V.: Using minimum path cover to boost dynamic programming on dags: co-linear chaining extended. CoRR, abs/1705.08754 (2018)
Limasset, A., Cazaux, B., Rivals, E., Peterlongo, P.: Read mapping on de Bruijn graphs. BMC Bioinform. 17(1), 237 (2016)
Mäkinen, V., Belazzougui, D., Cunial, F., Tomescu, A.I.: Genome-Scale Algorithm Design. Cambridge University Press, Cambridge (2015)
Mäkinen, V., Salmela, L., Ylinen, J.: Normalized N50 assembly metric using gap-restricted co-linear chaining. BMC Bioinform. 13, 255 (2012)
Myers, G., Miller, W.: Chaining multiple-alignment fragments in sub-quadratic time. In: Clarkson, K.L. (ed.) Proceedings of the Sixth Annual ACM-SIAM Symposium on Discrete Algorithms, 22–24 January 1995, pp. 38–47. ACM/SIAM, San Francisco (1995)
Navarro, G.: Improved approximate pattern matching on hypertext. Theor. Comput. Sci. 237(1–2), 455–463 (2000)
Novak, A.M., Garrison, E., Paten, B.: A graph extension of the positional Burrows-Wheeler transform and its applications. In: Frith, M., Storm Pedersen, C.N. (eds.) WABI 2016. LNCS, vol. 9838, pp. 246–256. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-43681-4_20
Ntafos, S.C., Hakimi, S.L.: On path cover problems in digraphs and applications to program testing. IEEE Trans. Softw. Eng. 5(5), 520–529 (1979)
Orlin, J.B.: Max flows in \(O(nm)\) time, or better. In: Proceedings of the 45th Annual ACM Symposium on the Theory of Computing, STOC 2013, pp. 765–774. ACM, New York (2013)
Park, K., Kim, D.K.: String matching in hypertext. In: Galil, Z., Ukkonen, E. (eds.) CPM 1995. LNCS, vol. 937, pp. 318–329. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-60044-2_51
Patro, R., Duggal, G., Love, M.I., Irizarry, R.A., Kingsford, C.: Salmon provides fast and bias-aware quantification of transcript expression. Nat. Methods 14(4), 417–419 (2017)
Rizzi, R., Tomescu, A.I., Mäkinen, V.: On the complexity of minimum path cover with subpath constraints for multi-assembly. BMC Bioinform. 15(S–9), S5 (2014)
Schnorr, C.-P.: An algorithm for transitive closure with linear expected time. SIAM J. Comput. 7(2), 127–133 (1978)
Shibuya, T., Kurochkin, I.: Match chaining algorithms for cDNA mapping. In: Benson, G., Page, R.D.M. (eds.) WABI 2003. LNCS, vol. 2812, pp. 462–475. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39763-2_33
Sirén, J.: Indexing variation graphs. In: 2017 Proceedings of the Ninteenth Workshop on Algorithm Engineering and Experiments (ALENEX), pp. 13–27. SIAM (2017)
Sirén, J., Välimäki, N., Mäkinen, V.: Indexing graphs for path queries with applications in genome research. IEEE/ACM Trans. Comput. Biol. Bioinf. 11(2), 375–388 (2014)
Tomescu, A.I., Gagie, T., Popa, A., Rizzi, R., Kuosmanen, A., Mäkinen, V.: Explaining a weighted dag with few paths for solving genome-guided multi-assembly. IEEE/ACM Trans. Comput. Biol. Bioinf. 12(6), 1345–1354 (2015)
Uricaru, R., Michotey, C., Chiapello, H., Rivals, E.: YOC, a new strategy for pairwise alignment of collinear genomes. BMC Bioinform. 16(1), 111 (2015)
Vazirani, V.V.: Approximation Algorithms. Springer, Heidelberg (2001)
Vyverman, M., De Baets, B., Fack, V., Dawyndt, P.: A long fragment aligner called ALFALFA. BMC Bioinform. 16(1), 159 (2015)
Vyverman, M., De Smedt, D., Lin, Y.-C., Sterck, L., De Baets, B., Fack, V., Dawyndt, P.: Fast and Accurate cDNA mapping and splice site identification. In: Proceedings of the International Conference on Bioinformatics Models, Methods and Algorithms (BIOSTEC 2014), pp. 233–238 (2014)
Wandelt, S., Leser, U.: RRCA: ultra-fast multiple in-species genome alignments. In: Dediu, A.-H., Martín-Vide, C., Truthe, B. (eds.) AlCoB 2014. LNCS, vol. 8542, pp. 247–261. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-07953-0_20
Acknowledgements
We thank the anonymous reviewers for comments that improved the presentation of this paper. We thank Gonzalo Navarro for pointing out the connection to pattern matching on hypertexts. This work was funded in part by the Academy of Finland (grant 274977 to AIT and grants 284598 and 309048 to AK and to VM), and by Futurice Oy (to TP).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Kuosmanen, A., Paavilainen, T., Gagie, T., Chikhi, R., Tomescu, A., Mäkinen, V. (2018). Using Minimum Path Cover to Boost Dynamic Programming on DAGs: Co-linear Chaining Extended. In: Raphael, B. (eds) Research in Computational Molecular Biology. RECOMB 2018. Lecture Notes in Computer Science(), vol 10812. Springer, Cham. https://doi.org/10.1007/978-3-319-89929-9_7
Download citation
DOI: https://doi.org/10.1007/978-3-319-89929-9_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-89928-2
Online ISBN: 978-3-319-89929-9
eBook Packages: Computer ScienceComputer Science (R0)