Deep Penalty Methods: A Class of Deep Learning Algorithms for Solving High Dimensional Optimal Stopping Problems

ArXiv ID: 2405.11392 “View on arXiv”

Authors: Unknown

Abstract

We propose a deep learning algorithm for high dimensional optimal stopping problems. Our method is inspired by the penalty method for solving free boundary PDEs. Within our approach, the penalized PDE is approximated using the Deep BSDE framework proposed by \cite{“weinan2017deep”}, which leads us to coin the term “Deep Penalty Method (DPM)” to refer to our algorithm. We show that the error of the DPM can be bounded by the loss function and $O(\frac{“1”}λ)+O(λh) +O(\sqrt{“h”})$, where $h$ is the step size in time and $λ$ is the penalty parameter. This finding emphasizes the need for careful consideration when selecting the penalization parameter and suggests that the discretization error converges at a rate of order $\frac{“1”}{“2”}$. We validate the efficacy of the DPM through numerical tests conducted on a high-dimensional optimal stopping model in the area of American option pricing. The numerical tests confirm both the accuracy and the computational efficiency of our proposed algorithm.

Keywords: Deep Penalty Method (DPM), Optimal stopping, Deep BSDE, American option pricing, High dimensional PDE, Derivatives (Options)

Complexity vs Empirical Score

  • Math Complexity: 8.5/10
  • Empirical Rigor: 7.0/10
  • Quadrant: Holy Grail
  • Why: The paper presents advanced mathematical formulations including stochastic differential equations, PDE analysis, and error bounds, scoring high on math complexity. It provides empirical validation through numerical tests on American option pricing up to 100 dimensions, demonstrating practical computational efficiency, thus scoring moderately high on empirical rigor.
  flowchart TD
    Start["Research Goal:<br>Solve High-Dim Optimal Stopping Problems"] --> Method["Methodology:<br>Deep Penalty Method DPM"]
    Method --> Input["Inputs:<br>High-Dim American Option Model"]
    Input --> Process["Process:<br>Deep BSDE &amp; Penalized PDE Solver"]
    Process --> Analyze["Analysis:<br>Error Bound: 1/λ + λh + √h"]
    Analyze --> Outcome["Outcomes:<br>Accurate &amp; Computationally Efficient"]