Deep Ritz

PDEs via Variationsprinzip mit neuronalen Netzen. ← Start

Worum geht’s?

Statt Residuen zu minimieren, minimiert Deep Ritz das Energie-/Ritz-Funktional. Beispiel Poisson (Dirichlet):

$$ \mathcal{E}(u)=\int_\Omega \tfrac12\|\nabla u\|^2 - f\,u\,dx. $$

Gesucht wird ein NN-Ansatz \(u_\theta\), der \(\mathcal{E}\) (MC-ersetzt) klein macht.

Verlust (MC-Schätzer)

$$ \mathcal{L}(\theta)= \frac{1}{N_\Omega}\!\sum_{x_i\in\Omega}\!\Big(\tfrac12\|\nabla u_\theta(x_i)\|^2-f(x_i)u_\theta(x_i)\Big) \;+\; \lambda_D\,\frac{1}{N_{\partial\Omega}}\!\sum_{y_j\in\partial\Omega}\!\big(u_\theta(y_j)-g(y_j)\big)^2. $$

Neumann: Dirichlet-Term durch Fluss-Term \(\big(\partial_n u_\theta - h\big)^2\) ersetzen.

Randbedingungen

  • Penalty: einfache Implementierung, aber Wahl von \(\lambda\) heikel.
  • Hard constraint: \(u_\theta=\Phi\,\hat u_\theta\), \(\Phi|_{\partial\Omega}=0\) ⇒ Rand exakt, kein \(\lambda\).

Training & Tipps

  • Punkte in \(\Omega\) und auf \(\partial\Omega\) balanciert samplen; Auto-Diff für \(\nabla u_\theta\).
  • Adam/SGD; Batch-Größe glättet MC-Rauschen (größer = stabiler = teurer).
  • Aktivierungen mit Glattheit (z. B. \(\tanh\), SIREN) helfen für \(\nabla u\).
  • Validierung gegen FEM/Referenz; harte Randbedingungen oft stabiler.

Quellen

  • E, W.; Yu, B.: The Deep Ritz Method: A Deep Learning-Based Numerical Algorithm for Solving Variational Problems, Communications in Mathematics and Statistics 6(1), 2018, 1–12. DOI

Code

Repository: git.numexp.org/ferdinandkruppa/deep-ritz

Clone

git clone https://git.numexp.org/ferdinandkruppa/deep-ritz.git