# Analysis and Enumeration

## Algorithms for Biological Graphs

• Andrea Marino
Book

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

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

1. Front Matter
Pages 45-45
2. Andrea Marino
Pages 65-77
3. Andrea Marino
Pages 79-105
5. ### Further Analysis

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

### Introduction

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.

### Keywords

Bubbles Cycles and Paths Enumeration Algorithms Graphs Stories

#### Authors and affiliations

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

### Bibliographic information

• DOI https://doi.org/10.2991/978-94-6239-097-3
• 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
Electronics
IT & Software
Telecommunications
Engineering