Implementation of the SINDy algorithm for discovering governing equations from data, applied to pendulum dynamics.
This project implements symbolic regression using SINDy to identify the pendulum equation
- Basic SINDy: LASSO regression with sklearn and PyTorch implementations
- Thresholding Algorithms: Sequential Thresholding (ST) and Patient Trend-Aware Thresholding (PTAT)
- SINDy-Autoencoder: Learning dynamics from Cartesian coordinates and video data
- Derivative Propagation: Custom neural network layers for time derivative computation
Open and run sindy.ipynb in Jupyter:
jupyter notebook sindy.ipynbExecute cells sequentially to:
- Simulate pendulum dynamics
- Train SINDy models with different thresholding methods
- Build and train SINDy-Autoencoders
- Evaluate learned equations and visualize results
