Detecting structural breaks in time series via genetic algorithms
- 254 Downloads
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: http://www.imm.dtu.dk/~pafi/TSX/. It has also been implemented as package SBRect for the statistics language R.
KeywordsGenetic Algorithms Statistics Break points Experimentation Time series Range trees
Paul Fischer gratefully acknowledges support by DTU’s Corrit travel grant. Benjamin Doerr was supported through grant WI 3552/1-1 by the German Research Foundation (DFG) while visiting the Technical University of Denmark in 2012.
Compliance with ethical standards
Conflict of interest
The authors declare that they have no conflict of interest.
- de Berg M, van Krefeld M, Overmars M, Schwarzkopf O (2000) Computational Geometry: Algorithms and Applications, 2nd edn. SpringerGoogle Scholar
- De Grauwe P, Ji Y (2012) Mispricing of sovereign risk and multiple equilibria in the eurozone. Centre for European Policy Working Paper 361Google Scholar
- Fischer P, Hilbert A (2014) Fast detection of structural breaks. In: Proceedings of 21th International Conference on Computational Statistics 2014, pp 9–16Google Scholar
- Hillebrand E, Medeiros MC (2014) Nonlinearity, breaks, and long-range dependence in time-series models. J Bus Econ Stat (just-accepted):00–00Google Scholar
- Jansen T, Zarges C (2011) Analysis of evolutionary algorithms: From computational complexity analysis to algorithm engineering. In: Proceedings of the 11th ACM SIGEVO Workshop on Foundations of Genetic Algorithms (FOGA 2011), ACM Press, pp 1–14Google Scholar
- Jong K, Marchiori E, van der Vaart A, Ylstra B, Weiss M, Meijer G (2003) Chromosomal breakpoint detection in human cancer. In: Proceedings Applications of Evolutionary Computing, EvoWorkshop 2003: EvoBIO, EvoCOP, EvoIASP, EvoMUSART, EvoROB, and EvoSTIM, Essex, UK, April 14-16, 2003, pp 54–65. doi: 10.1007/3-540-36605-9_6
- Kanpur_Genetic_Algorithms_Laboratory (2005-2015) Kangal. Website, http://www.iitk.ac.in/kangal/codes.shtml
- Knuth D (1969) The Art of Computer Programming, vol II. Addison-WesleyGoogle Scholar
- Morales L, Gassie E (2011) Structural breaks and financial volatility: Lessons from bric countries. Leibniz-Institut für Agrarentwicklung in Mittel- und Osteuropa (IAMO), Halle (Saale), no. 13 in IAMO Forum 2011. http://hdl.handle.net/10419/50791
- Rapach DE, Wohar ME (eds) (2008) Frontiers of Economics and Globalization, vol 3, Forecasting in the Presence of Structural Breaks and Model Uncertainty. EmeraldGoogle Scholar