PyDaddy: A Python package for discovering stochastic dynamical equations from timeseries data

  • 2022-05-05 14:44:24
  • Arshed Nabeel, Ashwin Karichannavar, Shuaib Palathingal, Jitesh Jhawar, Danny Raj M, Vishwesha Guttal
  • 19

Abstract

Most real-world ecological dynamics, ranging from ecosystem dynamics tocollective animal movement, are inherently stochastic in nature. Stochasticdifferential equations (SDEs) are a popular modelling framework to modeldynamics with intrinsic randomness. Here, we focus on the inverse question: Ifone has empirically measured time-series data from some system of interest, isit possible to discover the SDE model that best describes the data. Here, wepresent PyDaddy (PYthon library for DAta Driven DYnamics), a toolbox toconstruct and analyze interpretable SDE models based on time-series data. Wecombine traditional approaches for data-driven SDE reconstruction with anequation learning approach, to derive symbolic equations governing thestochastic dynamics. The toolkit is presented as an open-source Python library,and consists of tools to construct and analyze SDEs. Functionality is includedfor visual examination of the stochastic structure of the data, guidedextraction of the functional form of the SDE, and diagnosis and debugging ofthe underlying assumptions and the extracted model. Using simulated time-seriesdatasets, exhibiting a wide range of dynamics, we show that PyDaddy is able tocorrectly identify underlying SDE models. We demonstrate the applicability ofthe toolkit to real-world data using a previously published movement data of afish school. Starting from the time-series of the observed polarization of theschool, pyDaddy readily discovers the SDE model governing the dynamics of grouppolarization. The model recovered by PyDaddy is consistent with the previousstudy. In summary, stochastic and noise-induced effects are central to thedynamics of many biological systems. In this context, we present an easy-to-usepackage to reconstruct SDEs from timeseries data.

 

Quick Read (beta)

loading the full paper ...