Notice: The reproducibility variables underlying each score are classified using an automated LLM-based pipeline, validated against a manually labeled dataset. LLM-based classification introduces uncertainty and potential bias; scores should be interpreted as estimates. Full accuracy metrics and methodology are described in Coakley et alK. L. Coakley, T. Snelleman, H. Hoos, and O. E. Gundersen, "The embrace of open science: An analysis of a decade of AI research and 56 800 conference papers," Under Review, 2026..

Integration Matters for Learning PDEs with Backward SDEs

Authors: Sungje Park, Stephen Tu

NeurIPS 2025 | Venue PDF | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental Furthermore, our empirical results show that our Heun-based BSDE method consistently outperforms EM-based variants and achieves competitive results with PINNs across multiple high-dimensional benchmarks. Our findings highlight the critical role of integration schemes in BSDE-based PDE solvers, an algorithmic detail that has received little attention thus far in the literature. We evaluate these methods on three PDE benchmark problems: (i) a Hamilton-Jacobi-Bellman (HJB) equation [4], (ii) a Black-Scholes-Barenblatt (BSB) equation [4], and (iii) a fully-coupled FBSDE from Bender & Zhang (BZ) [36]; the PDEs are detailed in Appendix G.1. In addition, we evaluate the methods on an optimal control pendulum swing-up problem to demonstrate application to a non-linear control problem (see Appendix G.6).
Researcher Affiliation Academia Sungje Park University of Southern California EMAIL Stephen Tu University of Southern California EMAIL
Pseudocode Yes Algorithm 1 Batched, Sub-sampling BSDE Algorithm (Simplified) [...] Algorithm 2 Full BSDE Loss Algorithm [...] Algorithm 3 Batched, Sub-sampling BSDE Loss Algorithm (Full description of Algorithm 1)
Open Source Code Yes Additionally, the code to reproduce our experiments is available at: https://github.com/sungje-park/heunbsde. [...] For the camera ready version of the paper, we have included a link to our github repository (https://github.com/ sungje-park/heunbsde). Our code on github is released under the Apache 2.0 License.
Open Datasets Yes We evaluate these methods on three PDE benchmark problems: (i) a Hamilton-Jacobi-Bellman (HJB) equation [4], (ii) a Black-Scholes-Barenblatt (BSB) equation [4], and (iii) a fully-coupled FBSDE from Bender & Zhang (BZ) [36]; the PDEs are detailed in Appendix G.1.
Dataset Splits Yes To evaluate model performance, the analytical solution (available for all PDEs under consideration) is compared with the model output along 5 forward SDE trajectories, using the relative L2 error (RL2) metric: [...] We use a trajectory batch size of 64, translating to 64 realizations of the underlying Brownian motions.
Hardware Specification Yes All models are trained on a single NVIDIA A100 GPU node in our internal cluster, using the jax library [54].
Software Dependencies No All models are trained on a single NVIDIA A100 GPU node in our internal cluster, using the jax library [54].
Experiment Setup Yes We use each algorithm to train an 8-layer neural network with 64 neurons per layer and swish activation [52] to model the solution u(x,t) of a PDE. The boundary condition is enforced by adding a boundary condition penalty Ex µ [(uθ(x,T) ϕ(x)2]+E[ uθ(x,T) ϕ(x) 2] involving both the zero-th and first-order values of ϕ [4], where the distribution µ is taken over each method s approximation of the distribution of XT . Additionally, following state-of-the-art PINN architectures practices [7], Fourier embeddings [53] with a 256 embedding dimension and skip connections on odd layers are used. We use a trajectory batch size of 64, translating to 64 realizations of the underlying Brownian motions. Additionally, we utilize a sub-sampling batch size of 1024 for the batched algorithm runs. We use the Adam optimizer with a multi-step learning rate schedule [4] of 10 3,10 4, and 10 5 at 50k, 75k, and 100k iterations, respectively. All models are trained on a single NVIDIA A100 GPU node in our internal cluster, using the jax library [54]. Unless otherwise noted, we set T = 1 and N = 50 (i.e., τ = 0.02).