Analysis and Enumeration

Algorithms for Biological Graphs

  • Andrea┬áMarino

Part of the Atlantis Studies in Computing book series (ATLANTISCOMP, volume 6)

Table of contents

  1. Front Matter
    Pages i-xvii
  2. Andrea Marino
    Pages 1-9
  3. Enumeration Algorithm Techniques and Applications

    1. Front Matter
      Pages 11-11
    2. Andrea Marino
      Pages 13-35
    3. Andrea Marino
      Pages 37-44
  4. Three Examples of Enumeration Algorithms

  5. Further Analysis

    1. Front Matter
      Pages 107-107
    2. Andrea Marino
      Pages 139-140
  6. Back Matter
    Pages 141-151

About this book


In this work we plan to revise the main techniques for enumeration algorithms and to show four examples of enumeration algorithms that can be applied to efficiently deal with some biological problems modelled by using biological networks: enumerating central and peripheral nodes of a network, enumerating stories, enumerating paths or cycles, and enumerating bubbles. Notice that the corresponding computational problems we define are of more general interest and our results hold in the case of arbitrary graphs. Enumerating all the most and less central vertices in a network according to their eccentricity is an example of an enumeration problem whose solutions are polynomial and can be listed in polynomial time, very often in linear or almost linear time in practice. Enumerating stories, i.e. all maximal directed acyclic subgraphs of a graph G whose sources and targets belong to a predefined subset of the vertices, is on the other hand an example of an enumeration problem with an exponential number of solutions, that can be solved by using a non trivial brute-force approach. Given a metabolic network, each individual story should explain how some interesting metabolites are derived from some others through a chain of reactions, by keeping all alternative pathways between sources and targets. Enumerating cycles or paths in an undirected graph, such as a protein-protein interaction undirected network, is an example of an enumeration problem in which all the solutions can be listed through an optimal algorithm, i.e. the time required to list all the solutions is dominated by the time to read the graph plus the time required to print all of them. By extending this result to directed graphs, it would be possible to deal more efficiently with feedback loops and signed paths analysis in signed or interaction directed graphs, such as gene regulatory networks. Finally, enumerating mouths or bubbles with a source s in a directed graph, that is enumerating all the two vertex-disjoint directed paths between the source s and all the possible targets, is an example of an enumeration problem in which all the solutions can be listed through a linear delay algorithm, meaning that the delay between any two consecutive solutions is linear, by turning the problem into a constrained cycle enumeration problem. Such patterns, in a de Bruijn graph representation of the reads obtained by sequencing, are related to polymorphisms in DNA- or RNA-seq data.


Bubbles Cycles and Paths Enumeration Algorithms Graphs Stories

Authors and affiliations

  • Andrea┬áMarino
    • 1
  1. 1.Dipartimento di InformaticaMilanoItaly

Bibliographic information

  • DOI
  • Copyright Information Atlantis Press and the authors 2015
  • Publisher Name Atlantis Press, Paris
  • eBook Packages Mathematics and Statistics
  • Print ISBN 978-94-6239-096-6
  • Online ISBN 978-94-6239-097-3
  • Series Print ISSN 2212-8557
  • Series Online ISSN 2212-8565
  • Buy this book on publisher's site
Industry Sectors
IT & Software