Using Minimum Path Cover to Boost Dynamic Programming on DAGs: Co-linear Chaining Extended

  • Anna Kuosmanen
  • Topi Paavilainen
  • Travis Gagie
  • Rayan Chikhi
  • Alexandru Tomescu
  • Veli Mäkinen
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10812)


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 (VE) 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.



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).


  1. 1.
    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). Scholar
  2. 2.
    Ahuja, R.K., Magnanti, T.L., Orlin, J.B.: Network Flows: Theory, Algorithms, and Applications. Prentice-Hall Inc, Upper Saddle River (1993)zbMATHGoogle Scholar
  3. 3.
    Amir, A., Lewenstein, M., Lewenstein, N.: Pattern matching in hypertext. J. Algorithms 35(1), 82–99 (2000)MathSciNetCrossRefGoogle Scholar
  4. 4.
    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)Google Scholar
  5. 5.
    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). Scholar
  6. 6.
    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 2008Google Scholar
  7. 7.
    Chen, Y., Chen, Y.: On the graph decomposition. In: 2014 IEEE Fourth International Conference on Big Data and Cloud Computing, pp. 777–784, Dec 2014Google Scholar
  8. 8.
    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)CrossRefGoogle Scholar
  9. 9.
    Cohen, E., Halperin, E., Kaplan, H., Zwick, U.: Reachability and distance queries via 2-hop labels. SIAM J. Comput. 32(5), 1338–1355 (2003)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Eppstein, D., Galil, Z., Giancarlo, R., Italiano, G.F.: Sparse dynamic programming I: linear cost functions. J. ACM 39(3), 519–545 (1992)MathSciNetCrossRefGoogle Scholar
  11. 11.
    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)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Fulkerson, D.R.: Note on Dilworth’s decomposition theorem for partially ordered sets. Proc. Am. Math. Soc. 7(4), 701–702 (1956)MathSciNetzbMATHGoogle Scholar
  13. 13.
    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)Google Scholar
  14. 14.
    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). Scholar
  15. 15.
    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)CrossRefGoogle Scholar
  16. 16.
    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)MathSciNetCrossRefGoogle Scholar
  17. 17.
    Jagadish, H.V.: A compression technique to materialize transitive closure. ACM Trans. Database Syst. 15(4), 558–598 (1990)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Kuosmanen, A., Norri, T., Mäkinen, V.: Evaluating approaches to find exon chains based on long reads. Brief. Bioinform. bbw137 (2017)Google Scholar
  19. 19.
    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)Google Scholar
  20. 20.
    Limasset, A., Cazaux, B., Rivals, E., Peterlongo, P.: Read mapping on de Bruijn graphs. BMC Bioinform. 17(1), 237 (2016)CrossRefGoogle Scholar
  21. 21.
    Mäkinen, V., Belazzougui, D., Cunial, F., Tomescu, A.I.: Genome-Scale Algorithm Design. Cambridge University Press, Cambridge (2015)CrossRefGoogle Scholar
  22. 22.
    Mäkinen, V., Salmela, L., Ylinen, J.: Normalized N50 assembly metric using gap-restricted co-linear chaining. BMC Bioinform. 13, 255 (2012)CrossRefGoogle Scholar
  23. 23.
    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)Google Scholar
  24. 24.
    Navarro, G.: Improved approximate pattern matching on hypertext. Theor. Comput. Sci. 237(1–2), 455–463 (2000)MathSciNetCrossRefGoogle Scholar
  25. 25.
    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). Scholar
  26. 26.
    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)MathSciNetCrossRefGoogle Scholar
  27. 27.
    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)Google Scholar
  28. 28.
    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). Scholar
  29. 29.
    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)CrossRefGoogle Scholar
  30. 30.
    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)CrossRefGoogle Scholar
  31. 31.
    Schnorr, C.-P.: An algorithm for transitive closure with linear expected time. SIAM J. Comput. 7(2), 127–133 (1978)MathSciNetCrossRefGoogle Scholar
  32. 32.
    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). Scholar
  33. 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)Google Scholar
  34. 34.
    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)CrossRefGoogle Scholar
  35. 35.
    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)CrossRefGoogle Scholar
  36. 36.
    Uricaru, R., Michotey, C., Chiapello, H., Rivals, E.: YOC, a new strategy for pairwise alignment of collinear genomes. BMC Bioinform. 16(1), 111 (2015)CrossRefGoogle Scholar
  37. 37.
    Vazirani, V.V.: Approximation Algorithms. Springer, Heidelberg (2001)zbMATHGoogle Scholar
  38. 38.
    Vyverman, M., De Baets, B., Fack, V., Dawyndt, P.: A long fragment aligner called ALFALFA. BMC Bioinform. 16(1), 159 (2015)CrossRefGoogle Scholar
  39. 39.
    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)Google Scholar
  40. 40.
    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). Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Anna Kuosmanen
    • 1
  • Topi Paavilainen
    • 1
  • Travis Gagie
    • 2
  • Rayan Chikhi
    • 3
  • Alexandru Tomescu
    • 1
  • Veli Mäkinen
    • 1
  1. 1.Helsinki Institute for Information Technology HIIT, Department of Computer ScienceUniversity of HelsinkiHelsinkiFinland
  2. 2.Diego Portales UniversitySantiagoChile
  3. 3.CNRS, CRIStALUniversity of Lille 1Villeneuve-d’AscqFrance

Personalised recommendations