Generalized Functional Pruning Optimal Partitioning (GFPOP) for Constrained Changepoint Detection in Genomic Data

Toby Dylan Hocking, Guillem Rigaill, Paul Fearnhead, Guillaume Bourque

Research output: Contribution to journalArticlepeer-review

3 Scopus citations


We describe a new algorithm and R package for peak detection in genomic data sets using constrained changepoint models. These detect changes from background to peak regions by imposing the constraint that the mean should alternately increase then de-crease. An existing algorithm for this problem exists, and gives state-of-the-art accuracy results, but it is computationally expensive when the number of changes is large. We propose a dynamic programming algorithm that jointly estimates the number of peaks and their locations by minimizing a cost function which consists of a data fitting term and a penalty for each changepoint. Empirically this algorithm has a cost that is O(N log(N)) for analyzing data of length N. We also propose a sequential search algorithm that finds the best solution with K segments in O(log(K)N log(N)) time, which is much faster than the previous O(KN log(N)) algorithm. We show that our disk-based implementation in the PeakSegDisk R package can be used to quickly compute constrained optimal models with many changepoints, which are needed to analyze typical genomic data sets that have tens of millions of observations.

Original languageEnglish (US)
JournalJournal of Statistical Software
Issue number10
StatePublished - 2022
Externally publishedYes


  • Dynamic programming
  • Genomic data
  • Optimal changepoint detection
  • Peak detection
  • R

ASJC Scopus subject areas

  • Software
  • Statistics and Probability
  • Statistics, Probability and Uncertainty


Dive into the research topics of 'Generalized Functional Pruning Optimal Partitioning (GFPOP) for Constrained Changepoint Detection in Genomic Data'. Together they form a unique fingerprint.

Cite this