This repository provides the official Python implementation of our ICLR 2025 manuscript: 📄 "Predicting the Energy Landscape of Stochastic Dynamical Systems via Physics-informed Self-supervised Learning".
PESLA introduces a novel framework for learning and predicting the energy landscape of stochastic dynamical systems, leveraging physics-informed self-supervised learning techniques.
To get started, ensure the following dependencies are installed:
# platform: linux-64 (Ubuntu 11.4.0)
numpy==1.22.4
python==3.10.12
scikit-learn==1.3.0
scipy==1.11.2
torch==2.0.1+cu118
torchdiffeq==0.2.3
fast_pagerank==1.0.0
1️⃣ Prepare Datasets:
Download or simulate the datasets for the system of interest. Below are some examples:
- 2D Prinz Potential (Deeptime)
- Ecological Evolution (Defining Coarse-Grainability in a Model of Structured Microbial Ecosystems)
- Protein Folding (How Fast-Folding Proteins Fold)
2️⃣ Run the model:
-
Specify the dataset by modifying the
system
field inconfig.yaml
-
Execute the following command:
python main.py
.
├── README.md
├── asset
│ └── image.png
├── config.yaml
├── data
│ ├── __init__.py
│ └── dataset.py
├── main.py
├── model
│ ├── __init__.py
│ ├── ae.py
│ ├── codebook.py
│ ├── dynamics.py
│ ├── model_4well.py
│ ├── model_homeodomain.py
│ └── model_sswm.py
└── utils.py
@misc{li2025landscape,
title={Predicting the Energy Landscape of Stochastic Dynamical System via Physics-informed Self-supervised Learning},
author={Ruikun Li and Huandong Wang and Qingmin Liao and Yong Li},
year={2025},
eprint={2502.16828},
archivePrefix={arXiv},
primaryClass={cs.CE},
url={https://arxiv.org/abs/2502.16828},
}
Released under the MIT License.