Sparse identification of non-linear dynamics

Sparse identification of nonlinear dynamics (SINDy) is a data-driven algorithm for obtaining dynamical systems from data. Given a series of snapshots of a dynamical system and its corresponding time derivatives, SINDy performs a sparsity-promoting regression (such as LASSO and sparse Bayesian inference) on a library of nonlinear candidate functions of the snapshots against the derivatives to find the governing equations. This procedure relies on the assumption that most physical systems only have a few dominant terms which dictate the dynamics, given an appropriately selected coordinate system and quality training data. It has been applied to identify the dynamics of fluids, based on proper orthogonal decomposition, as well as other complex dynamical systems, such as biological networks.

Mathematical Overview

First, consider a dynamical system of the form

๐ฑห™=ddt๐ฑ(t)=๐Ÿ(๐ฑ(t)),

where ๐ฑ(t)โˆˆโ„n is a state vector (snapshot) of the system at time t and the function ๐Ÿ(๐ฑ(t)) defines the equations of motion and constraints of the system. The time derivative may be either prescribed or numerically approximated from the snapshots.

With ๐ฑ and ๐ฑห™ sampled at m equidistant points in time (t1,t2,โ‹ฏ,tm), these can be arranged into matrices of the form

๐—=[๐ฑ๐–ณ(๐ญ๐Ÿ)๐ฑ๐–ณ(๐ญ๐Ÿ)โ‹ฎ๐ฑ๐–ณ(๐ญ๐ฆ)]=[๐ฑ๐Ÿ(๐ญ๐Ÿ)๐ฑ๐Ÿ(๐ญ๐Ÿ)โ‹ฏ๐ฑ๐ง(๐ญ๐Ÿ)๐ฑ๐Ÿ(๐ญ๐Ÿ)๐ฑ๐Ÿ(๐ญ๐Ÿ)โ‹ฏ๐ฑ๐ง(๐ญ๐Ÿ)โ‹ฎโ‹ฎโ‹ฑโ‹ฎ๐ฑ๐Ÿ(๐ญ๐ฆ)๐ฑ๐Ÿ(๐ญ๐ฆ)โ‹ฏ๐ฑ๐ง(๐ญ๐ฆ)],

and similarly for ๐—ห™.

Next, a library ๐œฃ(๐—) of nonlinear candidate functions of the columns of ๐— is constructed, which may be constant, polynomial, or more exotic functions (like trigonometric and rational terms, and so on):

ย ย ย ๐œฃ(๐—)=[||||||๐Ÿ๐—๐—๐Ÿ๐—๐Ÿ‘โ‹ฏsinโก(๐—)cosโก(๐—)โ‹ฏ||||||]

The number of possible model structures from this library is combinatorially high. ๐Ÿ(๐ฑ(t)) is then substituted by ๐œฃ(๐—) and a vector of coefficients ๐œฉ=[๐ƒ๐Ÿ๐ƒ๐Ÿโ‹ฏ๐ƒ๐ง] determining the active terms in ๐Ÿ(๐ฑ(t)):

๐—ห™=๐œฃ(๐—)๐œฉ

Because only a few terms are expected to be active at each point in time, an assumption is made that ๐Ÿ(๐ฑ(t)) admits a sparse representation in ๐œฃ(๐—). This then becomes an optimization problem in finding a sparse ๐œฉ which optimally embeds ๐—ห™. In other words, a parsimonious model is obtained by performing least squares regression on the system (4) with sparsity-promoting (L1) regularization

๐ƒ๐ค=argโกmin๐ƒ'๐ค||๐—ห™kโˆ’๐œฃ(๐—)๐ƒ'๐ค||๐Ÿ+๐€||๐ƒ'๐ค||๐Ÿ,

where ฮป is a regularization parameter. Finally, the sparse set of ๐ƒ๐ค can be used to reconstruct the dynamical system:

xห™k=๐œฃ(๐ฑ)๐ƒ๐ค

References

  1. โ†‘ Brunton, Steven L.; Kutz, J. Nathan (2022-05-05). Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control. Higher Education from Cambridge University Press. doi:10.1017/9781009089517. ISBNย 9781009089517. Retrieved 2022-10-25.
  2. โ†‘ Huang, Yunfei.; etย al. (2022). "Sparse inference and active learning of stochastic differential equations from data". Scientific Reports. 12 (1) 21691. arXiv:2203.11010. Bibcode:2022NatSR..1221691H. doi:10.1038/s41598-022-25638-9. PMCย 9755218. PMIDย 36522347.
  3. โ†‘ Brunton, Steven L.; Proctor, Joshua L.; Kutz, J. Nathan (2016-04-12). "Discovering governing equations from data by sparse identification of nonlinear dynamical systems". Proceedings of the National Academy of Sciences. 113 (15): 3932โ€“3937. arXiv:1509.03580. Bibcode:2016PNAS..113.3932B. doi:10.1073/pnas.1517384113. ISSNย 0027-8424. PMCย 4839439. PMIDย 27035946.
  4. โ†‘ Mangan, Niall M.; Brunton, Steven L.; Proctor, Joshua L.; Kutz, J. Nathan (2016-05-26). "Inferring biological networks by sparse identification of nonlinear dynamics". arXiv:1605.08368 [math.DS].