Efficient Minimum Flow Decomposition via Integer Linear Programming

  • Fernando H.C. Dias
  • , Lucia Williams
  • , Brendan Mumey
  • , Alexandru I. Tomescu

Research output: Contribution to journalArticlepeer-review

4 Scopus citations

Abstract

Minimum flow decomposition (MFD) is an NP-hard problem asking to decompose a network flow into a minimum set of paths (together with associated weights). Variants of it are powerful models in multiassembly problems in Bioinformatics, such as RNA assembly. Owing to its hardness, practical multiassembly tools either use heuristics or solve simpler, polynomial time-solvable versions of the problem, which may yield solutions that are not minimal or do not perfectly decompose the flow. Here, we provide the first fast and exact solver for MFD on acyclic flow networks, based on Integer Linear Programming (ILP). Key to our approach is an encoding of all the exponentially many solution paths using only a quadratic number of variables. We also extend our ILP formulation to many practical variants, such as incorporating longer or paired-end reads, or minimizing flow errors. On both simulated and real-flow splicing graphs, our approach solves any instance in <13 seconds. We hope that our formulations can lie at the core of future practical RNA assembly tools. Our implementations are freely available on Github.

Original languageEnglish
Pages (from-to)1252-1267
Number of pages16
JournalJournal of Computational Biology
Volume29
Issue number11
DOIs
StatePublished - Nov 2022

Keywords

  • flow decomposition
  • integer linear programming
  • multiassembly and RNA assembly
  • network flow

Fingerprint

Dive into the research topics of 'Efficient Minimum Flow Decomposition via Integer Linear Programming'. Together they form a unique fingerprint.

Cite this