Detecting structural breaks in time series via genetic algorithms

Benjamin Doerr, Paul Fischer, Astrid Hilbert, Carsten Witt

Research output: Contribution to journalJournal articleResearchpeer-review


Detecting structural breaks is an essential task for the statistical analysis of time series, for example, for fitting parametric models to it. In short, structural breaks are points in time at which the behaviour of the time series substantially changes. Typically, no solid background knowledge of the time series under consideration is available. Therefore, a black-box optimization approach is our method of choice for detecting structural breaks. We describe a genetic algorithm framework which easily adapts to a large number of statistical settings. To evaluate the usefulness of different crossover and mutation operations for this problem, we conduct extensive experiments to determine good choices for the parameters and operators of the genetic algorithm. One surprising observation is that use of uniform and one-point crossover together gave significantly better results than using either crossover operator alone. Moreover, we present a specific fitness function which exploits the sparse structure of the break points and which can be evaluated particularly efficiently. The experiments on artificial and real-world time series show that the resulting algorithm detects break points with high precision and is computationally very efficient. A reference implementation with the data used in this paper is available as an applet at the following address: It has also been implemented as package SBRect for the statistics language R.
Original languageEnglish
JournalSoft Computing
Issue number16
Pages (from-to)4707–4720 |
Publication statusPublished - 2016


  • Break points
  • Experimentation
  • Genetic Algorithms
  • Range trees
  • Statistics
  • Time series


Dive into the research topics of 'Detecting structural breaks in time series via genetic algorithms'. Together they form a unique fingerprint.

Cite this