This repository contains the lightweight research-code release for Continual-Learning Physics-Informed Neural Networks for Parameterized Partial Differential Equations.
CL-PINN treats parameterized PDE training as a sequence of parameter tasks. It combines active parameter selection, parameter-wise loss balancing, sparse experience replay, and an optional parameter subnetwork. The repository also contains the controlled external-baseline implementations used in the revised study.
| Paper name | Implementation name | Main mechanism |
|---|---|---|
| UNI | uniform |
Fixed approximately uniform parameter set |
| FIX | fixed |
Fixed user-specified parameter set |
| AG | active_greedy |
Greedy selection from the parameter grid |
| AC | active_cl |
Bayesian parameter selection and dynamic task weighting |
| ACR | active_cl_replay |
AC with fixed-capacity sparse replay |
| ACR2-arch | active_cl_replay_regularize |
ACR with the two-branch ParamFNN architecture |
The optional Adam parameter-branch decay and L-BFGS parameter-branch freezing
controls are configured independently. ACR2-finetune denotes a downstream
single-parameter residual-head adaptation procedure and is not part of the
base ACR2-arch training run.
cl_pinn/ CL-PINN source, experiment entry points, and tests
deepxde/ Read-only DeepXDE snapshot used by this release
external_baselines/ Controlled baseline implementations
results/ Small aggregate tables only
docs/ Data and reproducibility notes
tools/ Environment validation helpers
This is intentionally a lightweight code release. Raw checkpoints, training logs, per-run arrays, full reference datasets, paper-revision files, and local archives are not included. See docs/DATA.md and docs/REPRODUCIBILITY.md.
Python 3.10 is recommended. Install the PyTorch build appropriate for your CUDA or CPU environment first, then install this project:
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e ".[test,bayesian]"
export DDE_BACKEND=pytorchRun the unit tests:
export DDE_BACKEND=pytorch
python -m pytest -q cl_pinn/testsValidate the numerical environment on a CPU-only machine:
python tools/test_pinn_environment.py --allow-cpuOmit --allow-cpu for the full CUDA validation used on the experiment server.
The safe command-line runner exposes a minimal Burgers smoke configuration:
cl-pinn-run \
--case burgers \
--method active_cl_replay \
--seed 0 \
--output-dir runs/smoke/burgers_acr_seed0 \
--smokeReference data must be placed as described in docs/DATA.md.
Full paper configurations are exposed through
cl_pinn/experiments/reproduce_legacy.py; review the requested case, method,
budget, and output directory before launching a long run. New runs refuse to
overwrite a non-empty output directory.
The formal study used random seeds [0, 1, 2], FP32, and an Adam-to-L-BFGS
training schedule. Bayesian selection, sparse replay, ParamFNN architecture,
branch decay, branch freezing, and single-parameter fine-tuning are represented
by separate configuration controls. Aggregate result tables included here are
for traceability; they do not replace the raw per-run artifacts.
The vendored DeepXDE revision is recorded in
deepxde/VENDORED_VERSION.json. External
comparisons are described in
external_baselines/README.md.
This project builds on and vendors a read-only snapshot of DeepXDE. When using this repository, please also cite:
Lu, L., Meng, X., Mao, Z., and Karniadakis, G. E. (2021). DeepXDE: A deep learning library for solving differential equations. SIAM Review, 63(1), 208--228. https://doi.org/10.1137/19M1274067
No project-level open-source license is asserted in this release; absent a
separate license, all rights remain with the authors. The vendored DeepXDE
source remains under LGPL-2.1; see deepxde/LICENSE and
deepxde/VENDORED_VERSION.json.
@misc{chen2026continuallearningphysicsinformedneuralnetworks,
title={Continual-Learning Physics-Informed Neural Networks for Parameterized Partial Differential Equations},
author={Xujia Chen and Xinyue Hu and Letian Chen and Yi Liu and Wenhui Fan},
year={2026},
eprint={2608.04778},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2608.04778},
}