Accurate and efficient numerical solutions for elliptic obstacle problems
 Philku Lee^{1}Email author,
 Tai Wan Kim^{2} and
 Seongjai Kim^{3}
https://doi.org/10.1186/s136600171309z
© The Author(s) 2017
Received: 5 November 2016
Accepted: 25 January 2017
Published: 3 February 2017
Abstract
Elliptic obstacle problems are formulated to find either superharmonic solutions or minimal surfaces that lie on or over the obstacles, by incorporating inequality constraints. In order to solve such problems effectively using finite difference (FD) methods, the article investigates simple iterative algorithms based on the successive overrelaxation (SOR) method. It introduces subgrid FD methods to reduce the accuracy deterioration occurring near the free boundary when the mesh grid does not match with the free boundary. For nonlinear obstacle problems, a method of gradientweighting is introduced to solve the problem more conveniently and efficiently. The iterative algorithm is analyzed for convergence for both linear and nonlinear obstacle problems. An effective strategy is also suggested to find the optimal relaxation parameter. It has been numerically verified that the resulting obstacle SOR iteration with the optimal parameter converges about one order faster than stateoftheart methods and the subgrid FD methods reduce numerical errors by one order of magnitude, for most cases. Various numerical examples are given to verify the claim.
Keywords
1 Introduction

Accuracy improvement through subgrid finite differencing of the free boundary: It can be verified either numerically or theoretically that the numerical solution easily involve a large error near the free boundary (the edges of obstacles), particularly when the grid mesh does not match with the obstacle edges. We suggest a postprocessing algorithm which can reduce the error (by about a digit) by detecting accurate free boundary in subgrid level and introducing nonuniform finite difference (FD) method. The main goal of the subgrid FD algorithm is to produce a numerical solution of a higher accuracy \(u_{h}\), which guarantees \(u_{h}(\mathbf{x})\ge \varphi (\mathbf{x})\) for all points \(\mathbf{x}\in \varOmega \).

Obstacle SOR: The iterative algorithm for solving the linear system of the obstacle problem is implemented based on one of simplest iterative algorithms, the successive overrelaxation (SOR) method. Convergence of the obstacle SOR method is analyzed and compared with modern sophisticated methods. We also suggest an effective way to set the optimal relaxation parameter ω. Our simple obstacle SOR method with the optimal parameter performs better than stateoftheart methods in both accuracy and efficiency.

Effective numerical methods for nonlinear problems: For the nonlinear obstacle problem (1.1), a method of gradientweighting is introduced to solve the problem more conveniently and efficiently. In particular, the suggested numerical schemes for the gradientweighting problem produce an algebraic system of a symmetric and diagonally dominant Mmatrix of which the main diagonal entries are all the same positive constant. Thus the resulting system is easy to implement and presumably converges fast; as one can see from Section 5, the obstacle SOR algorithm for nonlinear problems converges in a similar number of iterations as for linear problems.
The article is organized as follows. The next section presents a brief review for stateoftheart methods for elliptic obstacle problems focusing the one in [14]. Also, accuracy deterioration of the numerical solution (underestimation) is discussed by exemplifying an obstacle problem in 1D where the mesh grid does not match with edges of the free boundary. In Section 3, the SOR is applied for both linear and nonlinear problems and analyzed for convergence; the limits of iterates are proved to satisfy discrete obstacle problems. A method of gradientweighting and secondorder FD schemes are introduced for nonlinear problems. An effective strategy is suggested to find the optimal relaxation parameter. Section 4 introduces subgrid FD schemes near the free boundary in order to reduce accuracy deterioration of the numerical solution. In Section 5, various numerical examples are included to verify the claims we just made. Section 6 concludes the article summarizing our experiments and findings.
2 Preliminaries
As preliminaries, we first present a brief review for stateoftheart methods for elliptic obstacle problems and certain accuracy issues related to the free boundary.
2.1 Stateoftheart methods for elliptic obstacle problems
This subsection summarizes stateoftheart methods for elliptic obstacle problems focusing on the primaldual method incorporating \(L^{1}\) like penalty term (PDL1P) studied by Zosso et al. [14]. Primaldual splitting methods have a great deal of attention, particularly in the context of total variation (TV) minimization and \(L^{1}\)type problems in image processing [15–19].
2.2 Accuracy issues
The above example has motivated the authors to develop an effective numerical algorithm for elliptic obstacle problems in 2D which detects the neighboring set of the free boundary, determines the subgrid proportions (r’s), and updates the solution for an improved accuracy using subgrid FD schemes. Here the main goal is to try to guarantee \(u(\mathbf{x})\ge \varphi (\mathbf{x})\) for all \(\mathbf{x}\in \varOmega \) (whether x is a grid point or not). Since it is often the case that the free boundary is determined only after solving the problem, the algorithm must be a postprocess. Details are presented in Section 4.
3 Obstacle relaxation methods
This section introduces and analyzes effective relaxation methods for solving (1.3) and its nonlinear problem as shown in (3.10) below.
3.1 The linear obstacle problem
Now, consider the following Jacobi iteration for simplicity. Given an initialization \(u^{0}\), find \(u^{n}\) iteratively as follows.
Algorithm \(\mathcal{L}_{J}\)
Note that Algorithm \(\mathcal{L}_{J}\)produces a solution u of which the function value at a point is a simple average of four neighboring values, satisfying the constraint \(u\ge\varphi\).
Theorem 1
Proof
One can easily prove that the algebraic system obtained from (3.3) is irreducibly diagonally dominant and symmetric positive definite. Since its offdiagonal entries are all nonpositive, the matrix must be a Stieltjes matrix and therefore an Mmatrix [23]. Thus relaxation methods of regular splittings (such as the Jacobi, the GaussSeidel (GS), and the successive overrelaxation (SOR) iterations) are all convergent and their limits are the same as û and therefore satisfy (3.5). In this article, variants of Algorithm \(\mathcal{L}_{J}\)for the GS and the SOR would be denoted, respectively, by \(\mathcal{L}_{\mathrm{GS}}\) and \(\mathcal{L}_{\mathrm{SOR}}\) \((\omega)\), where ω is an overrelaxation parameter for the SOR, \(1<\omega<2\). For example, \(\mathcal{L}_{\mathrm{SOR}}\) \((\omega)\) is formulated as
Algorithm \(\mathcal{L}_{\mathrm{SOR}}\) \((\omega)\)
Note that the right side of (3.9)(a) involves updated values wherever available. When \(\omega=1\), Algorithm \(\mathcal{L}_{\mathrm{SOR}}\) \((\omega)\) becomes Algorithm \(\mathcal{L}_{\mathrm{GS}}\); that is, \(\mathcal{L}_{\mathrm{SOR}}\) \((1)=\mathcal{L}_{\mathrm{GS}}\).
3.2 The nonlinear obstacle problem
Given FD schemes for \(\mathcal{M}(u)\) as in (3.18), the nonlinear obstacle problem (3.12) can be solved iteratively by the Jacobi iteration.
Algorithm \(\mathcal{N}_{J}\)
The superscript \((n1)\) on the coefficients \(a_{pq,D}\), \(D=W, E, S, N\), indicate that they are obtained using the last iterate \(u^{n1}\). Algorithm \(\mathcal{N}_{J}\)produces a solution u of which the function value at a point is a weighted average of four neighboring values, satisfying the constraint \(u\ge\varphi\). One can prove the following corollary, using the same arguments introduced in the proof of Theorem 1.
Corollary 1
Variants of Algorithm \(\mathcal{N}_{J}\)for the GS and the SOR can be formulated similarly as for the linear obstacle problem; they would be denoted respectively by \(\mathcal{N}_{\mathrm{GS}}\) and \(\mathcal{N}_{\mathrm{SOR}}\) \((\omega)\). In practice, such symmetric coercive optimization problems, the SOR methods are much more efficient than the Jacobi and GaussSeidel methods. We will exploit \(\mathcal{L}_{\mathrm{SOR}}\) \((\omega)\) and \(\mathcal{N}_{\mathrm{SOR}}\) \((\omega)\) for numerical comparisons with stateoftheart methods, by setting the relaxation parameter ω optimal.
3.3 The optimal relaxation parameter ω̂
4 Subgrid FD schemes for the free boundary: a postprocess
This section describes subgrid FD schemes for the free boundary, focusing on the linear obstacle problem; the arguments to be presented can be applied the same way for nonlinear problems. Again, we assume for simplicity that \(h=h_{x}=h_{y}\).
Let û be the numerical solution of an obstacle problem. Then it would satisfy the discrete obstacle problem (3.5), particularly \(\widehat{u}_{pq}\ge\varphi_{pq}\) at all (interior) grid points \(\mathbf{x}_{pq}\in \varOmega _{h}^{0}\). However, when the mesh grid is not matching with the free boundary, the obstacle constraint \(\widehat{u}\ge \varphi \) may not be satisfied at all points \(\mathbf{x}\in \varOmega \). This implies that when the mesh is not fine enough, the numerical solution can be underestimated near the free boundary, as shown in Figure 1 in Section 2.2. Note that the error introduced by nonmatching grids is in \(\mathcal{O}(h)\), while the numerical truncation error is in \(\mathcal{O}(h^{2})\) for secondorder FD schemes. That is, the underestimation is in \(\mathcal{O}(h)\), which can be much larger than the truncation error. The strategy below can be considered as a postprocessing algorithm designed in order to reduce the underestimation without introducing a mesh refinement. The postprocessing algorithm consists of three steps: (a) finding the numerical contact set and the neighboring set, (b) subgrid determination of the free boundary, and (c) nonuniform FD schemes on the neighboring set.
4.1 The contact set and the neighboring set
As defined in Section 2.2, an interior grid point is a neighboring point when it is not in the contact set but one of its adjacent grid points is in the contact set. Thus the neighboring points can be found more effectively as follows. Visit each point in the contact set; if any one of its four adjacent points is not in the contact set, then the noncontacting point is a neighboring point. The set of all neighboring points is the neighboring set \(N_{h}\).
4.2 Subgrid determination of the free boundary

The last evaluation of φ (and saving) is necessary for the nonuniform FD schemes on the neighboring set, which will be discussed in Section 4.3. The quantity \(B_{E}\) will be used as the Dirichlet value on the free boundary.

For other directions D (=W, S, or N), one can define corresponding difference functions \(F_{D}\) as shown in (4.2)(4.4) for \(D=E\). Then \(r_{D}\) can be obtained by applying (4.7) with \(F_{E}\) being replaced with \(F_{D}\). When the adjacent point \(\mathbf{x}_{D}(1)\) is not a contact point, you may simply set \(r_{D}=1\). Thus each neighboring point produces an array of four values \([r_{W},r_{E},r_{S},r_{N}]\) and free boundary values for the directions D where \(r_{D}<1\).

Assuming that (4.6) has a unique solution and the obstacle is given as a smooth function, the maximum error for the detection of the free boundary using (4.7) iswhere h is mesh size. It has been numerically verified that the choice \((k_{0},k_{1})=(10,4)\) is enough for an accurate detection of the free boundary, for which the upper bound of the error becomes \(h/160=0.00625 h\).$$ \biggl(\frac{1}{k_{0}}\cdot\frac {1}{2^{k_{1}}} \biggr) h, $$(4.8)
4.3 Nonuniform FD schemes on the neighboring set
Thus, the postprocessing algorithm of the obstacle SOR (3.9), \(\mathcal{L}_{\mathrm{SOR}}(\omega)\), can be formulated by replacing the two terms in the right side of (3.2) with the right sides of (4.9) and (4.10), and computing \(u_{\mathrm{GS},pq}\) in (3.9.a) correspondingly at all neighboring points.
5 Numerical experiments
5.1 Linear obstacle problems
The number of iterations and CPU for the linear problem of the nonsmooth obstacle \(\pmb{\varphi _{1}}\) ( 5.3 )
\(\boldsymbol{(\varepsilon =10^{6})}\)  PDL1P  Obstacle SOR  

Resolution  Iter  CPU  Iter  CPU 
32 × 32  1,284  0.13  84  0.005 
64 × 64  1,744  0.71  148  0.03 
128 × 128  2,111  3.58  268  0.22 
256 × 256  2,097  14.09  525  1.70 
\(\pmb{L^{\infty}}\) errors, the number of iterations, and the CPU for linear obstacle problem with \(\pmb{\varphi _{2}}\) ( 5.4 )
\(\boldsymbol{(\varepsilon =10^{6})}\)  PDL1P  Obstacle SOR  

Resolution  \(\boldsymbol{L^{\infty}}\) error  Iter (CPU)  \(\boldsymbol{L^{\infty}}\) error  Iter (CPU) 
32 × 32  8.91⋅10^{−3}  715 (0.09)  8.69⋅10^{−3}  62 (0.02) 
64 × 64  3.01⋅10^{−3}  1,340 (0.60)  3.05⋅10^{−3}  122 (0.04) 
128 × 128  7.66⋅10^{−4}  1,971 (3.51)  7.64⋅10^{−4}  244 (0.22) 
256 × 256  1.86⋅10^{−4}  2,072 (14.85)  1.88⋅10^{−4}  489 (1.63) 
The number of iterations and the CPU time for the elasticplastic torsion problem ( 5.7 )
\(\boldsymbol{(\varepsilon =10^{6})}\)  PDL1P  Obstacle SOR  

Resolution  Iter  CPU  Iter  CPU 
32 × 32  887  0.13  47  0.02 
64 × 64  1,287  0.68  98  0.04 
128 × 128  1,609  3.43  193  0.22 
256 × 256  1,866  17.27  368  1.58 
5.2 Nonlinear obstacle problems
The obstacle SOR is implemented for nonlinear obstacle problems as described in Section 3.2.
The performance of the obstacle SOR applied for nonlinear obstacle problems with \(\pmb{\varphi =\varphi _{i}}\) , \(\pmb{i=1,2,3}\)
\(\boldsymbol{(\varepsilon =10^{6})}\)  \(\boldsymbol{\varphi _{1}}\)  \(\boldsymbol{\varphi _{2}}\)  \(\boldsymbol{\varphi _{3}}\)  

Resolution  Iter  CPU  Iter  CPU  Iter  CPU 
32 × 32  79  0.02  62  0.04  47  0.04 
64 × 64  133  0.16  121  0.17  98  0.16 
128 × 128  257  1.25  239  1.16  192  1.09 
256 × 256  513  10.19  477  9.20  368  8.24 
5.3 Postprocessing algorithm
In Figure 5, one have seen that the error, the difference between the numerical solution and the analytic solution, shows its highest values near the free boundary. The larger error is due to the result of mismatch between the mesh grid and the obstacle edges. In order to eliminate the error effectively, we apply the subgrid FD schemes in Section 4 as a postprocessing (PP) algorithm. For the examples presented in this subsection, the numerical solutions are solved as follows: (a) the problem is solved with \(\varepsilon =10^{5}\) (preprocessing), (b) the free boundary is estimated with \((k_{0},k_{1})=(10,4)\) and subgrid FD schemes are applied at neighboring grid points as in Section 4, and (c) another round of iterations is applied to satisfy the tolerance \(\varepsilon =10^{7}\).
CPU time and iteration comparisons for the suggested postprocess, applied to the linear problem with \(\pmb{\varphi =\varphi _{2}}\)
\(\boldsymbol{(\varepsilon =10^{7})}\)  PDL1P  Obstacle SOR  Obstacle SOR+PP  

Resolution  Iter  CPU  Iter  CPU  Iter  CPU 
25 × 25  814  0.07  56  0.02  92  0.07 
50 × 50  1,486  0.40  108  0.03  147  0.10 
100 × 100  2,092  2.26  213  0.13  299  0.26 
200 × 200  2482  10.47  416  0.84  570  1.34 
\(\pmb{L^{\infty}}\) and \(\pmb{L^{2}}\) error comparisons for the suggested postprocess, applied to the linear problem with \(\pmb{\varphi =\varphi _{2}}\)
\(\boldsymbol{(\varepsilon=10^{7})}\)  PDL1P  Obstacle SOR  Obstacle SOR+PP  

Resolution  \(\boldsymbol{L^{\infty}}\) error  \(\boldsymbol{L^{2}}\) error  \(\boldsymbol{L^{\infty}}\) error  \(\boldsymbol{L^{2}}\) error  \(\boldsymbol{L^{\infty}}\) error  \(\boldsymbol{L^{2}}\) error 
25 × 25  1.94⋅10^{−2}  4.35⋅10^{−3}  1.94⋅10^{−2}  4.38⋅10^{−3}  8.44⋅10^{−4}  2.80⋅10^{−4} 
50 × 50  4.38⋅10^{−3}  8.10⋅10^{−4}  4.39⋅10^{−3}  8.41⋅10^{−4}  2.01⋅10^{−4}  6.93⋅10^{−5} 
100 × 100  1.25⋅10^{−3}  2.73⋅10^{−4}  1.25⋅10^{−3}  2.87⋅10^{−4}  5.16⋅10^{−5}  1.79⋅10^{−5} 
200 × 200  5.45⋅10^{−4}  7.29⋅10^{−5}  5.46⋅10^{−4}  7.76⋅10^{−5}  1.40⋅10^{−5}  4.74⋅10^{−6} 
5.4 Parameter choices
6 Conclusions
Although various numerical algorithms have been suggested for solving elliptic obstacle problems effectively, most of the algorithms presented in the literature are yet to be improved for both accuracy and efficiency. In this article, the authors have studied obstacle relaxation methods in order to get secondorder finite difference (FD) solutions of obstacle problems more accurately and more efficiently. The suggested iterative algorithm is based on one of the simplest relaxation methods, the successive overrelaxation (SOR). The iterative algorithm is incorporated with subgrid FD methods to reduce accuracy deterioration occurring near the free boundary when the mesh grid does not match with the free boundary. For nonlinear obstacle problems, a method of gradientweighting has been introduced to solve the problem more conveniently and efficiently. The iterative algorithm has been analyzed for convergence for both linear and nonlinear obstacle problems. An effective strategy is also presented to find the optimal relaxation parameter. The resulting obstacle SOR has converged about one order faster than stateoftheart methods and the subgrid FD methods could reduce the numerical errors by one order of magnitude.
Declarations
Acknowledgements
S. Kim’s work is supported in part by NSF grant DMS1228337. Tai Wan (the second author) is a high school student who has spent many hours working on mathematical analysis and computational algorithms. S. Kim much appreciates his efforts for the project. Constructive comments by two anonymous reviewers improved the clarity of the paper and are much appreciated.
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Authors’ Affiliations
References
 Bartels, S: The obstacle problem. In: Numerical Methods for Nonlinear Partial Differential Equations. Springer Series in Computational Mathematics, vol. 47, pp. 127152. Springer, Berlin (2015) Google Scholar
 Caffarelli, L: The obstacle problem revisited. J. Fourier Anal. Appl. 4(45), 383402 (1998) MathSciNetView ArticleMATHGoogle Scholar
 Cha, Y, Lee, GY, Kim, S: Image zooming by curvature interpolation and iterative refinement. SIAM J. Imaging Sci. 7(2), 12841308 (2014) MathSciNetView ArticleMATHGoogle Scholar
 Kim, H, Cha, Y, Kim, S: Curvature interpolation method for image zooming. IEEE Trans. Image Process. 20(7), 18951903 (2011) MathSciNetView ArticleGoogle Scholar
 Kim, H, Willers, J, Kim, S: Digital elevation modeling via curvature interpolation for LiDAR data. Electron. J. Differ. Equ. 23, 4757 (2016) MathSciNetMATHGoogle Scholar
 Petrosyan, A, Shahgholian, H, Uraltseva, N: Regularity of Free Boundaries in ObstacleType Problems. Graduate Studies in Mathematics. Am. Math. Soc., Providence (2012) View ArticleMATHGoogle Scholar
 Rodrigues, JF: Obstacle Problems in Mathematical Physics. Notas de Matematica, vol. 114. Elsevier Science, Amsterdam (1987) MATHGoogle Scholar
 Arakelyan, A, Barkhudaryan, R, Poghosyan, M: Numerical solution of the twophase obstacle problem by finite difference method. Armen. J. Math. 7(2), 164182 (2015) MathSciNetMATHGoogle Scholar
 Brugnano, L, Casulli, V: Iterative solution of piecewise linear systems. SIAM J. Sci. Comput. 30(1), 463472 (2008) MathSciNetView ArticleMATHGoogle Scholar
 Brugnano, L, Sestini, A: Iterative solution of piecewise linear systems for the numerical solution of obstacle problems. arXiv:0912.3222 (2009)
 Hoppe, RHW, Kornhuber, R: Adaptive multilevel methods for obstacle problems. SIAM J. Numer. Anal. 31(2), 301323 (1994) MathSciNetView ArticleMATHGoogle Scholar
 Gräser, C, Kornhuber, R: Multigrid methods for obstacle problems. J. Comput. Math. 27(1), 144 (2009) MathSciNetMATHGoogle Scholar
 Tran, G, Schaeffer, H, Feldman, WM, Osher, SJ: An \({L}^{1}\) penalty method for general obstacle problems. SIAM J. Appl. Math. 75(4), 14241444 (2015) MathSciNetView ArticleMATHGoogle Scholar
 Zosso, D, Osting, B, Xia, M, Osher, SJ: A fast primaldual method for the obstacle problem. CAM Report 1548, Department of Mathematics, Computational Applied Mathematics, University of California, Los Angeles, CA (2015, to appear in J. Sci. Comput.) Google Scholar
 Chambolle, A, Pock, T: A firstorder primaldual algorithm for convex problems with applications to imaging. J. Math. Imaging Vis. 40(1), 120145 (2011) MathSciNetView ArticleMATHGoogle Scholar
 Esser, E, Zhang, X, Chan, TF: A general framework for a class of first order primaldual algorithms for convex optimization in imaging science. SIAM J. Imaging Sci. 3(4), 10151046 (2010) MathSciNetView ArticleMATHGoogle Scholar
 Sochen, N, Kimmel, R, Malladi, R: A general framework for low level vision. IEEE Trans. Image Process. 7(3), 310318 (1998) MathSciNetView ArticleMATHGoogle Scholar
 Zhu, M, Chan, T: An efficient primaldual hybrid gradient algorithm for total variation image restoration. CAM Report 0834, Department of Mathematics, Computational Applied Mathematics, University of California, Los Angeles, CA (2008) Google Scholar
 Zhu, M, Wright, SJ, Chan, TF: Dualitybased algorithms for totalvariationregularized image restoration. Comput. Optim. Appl. 47(3), 377400 (2010) MathSciNetView ArticleMATHGoogle Scholar
 Lions, PL, Mercier, B: Splitting algorithms for the sum of two nonlinear operators. SIAM J. Numer. Anal. 16(6), 964979 (1979) MathSciNetView ArticleMATHGoogle Scholar
 Majava, K, Tai, XC: A level set method for solving free boundary problems associated with obstacles. Int. J. Numer. Anal. Model. 1(2), 157171 (2004) MathSciNetMATHGoogle Scholar
 Wang, F, Cheng, X: An algorithm for solving the double obstacle problems. Appl. Math. Comput. 201(12), 221228 (2008) MathSciNetMATHGoogle Scholar
 Varga, R: Matrix Iterative Analysis. PrenticeHall, Englewood Cliffs (1962) Google Scholar