Abstract
In this paper, a numerical method on a Shishkin mesh to solve the singularly perturbed reaction-diffusion problem with Robin boundary conditions is considered. Especially, for the Robin boundary conditions, a high precision discrete scheme is developed. Then, we first transform the Shishkin mesh transition parameter selection problem into a nonlinear unconstrained optimization problem which is solved by using the basic particle swarm optimization (PSO) algorithm. The experimental results show that the accuracy of numerical solution to singularly perturbed problem on the boundary layers is improved by using the PSO algorithm to optimize Shishkin mesh parameters. It further verifies the feasibility and effectiveness of the proposed method.
Keywords
Introduction
It is well known that singularly perturbed two-points boundary value problems are used to describe the transport processes involving fluid motion, heat transfer, astrophysics, oceanography, meteorology, pollutant and sediment transport, and chemical reactor et al. [1]. Such problems contain one or more perturbation parameters, which can reflect the physical character of the equations. The solution of these problems has a multi-scale character. It has two components, one changes slowly and the other changes quickly. Many standard numerical methods applied to these problems, such as (1) below, may yield inaccurate results. Therefore, in order to obtain a reliable numerical solution, one important approach is the use of suitable layer-adapted meshes that are very fine where layers appear in the solution. In recently years, there has been tremendous interest in developing layer-adapted mesh method to solve the following linear reaction-diffusion problem with Dirichlet boundary conditions
However, limited work has been done in numerical methods for the singularly perturbed reaction-diffusion equations with Robin boundary conditions. Thus, in this paper, we consider the following singularly perturbed reaction-diffusion problems
It is also assumed that the coefficients of the conditions (3) satisfy α
k
, β
k
≥ 0, α
k
+ β
k
> 0 for k = 1, 2 with
In conclusion, the Shishkin mesh method is very popular in solving the above singularly perturbed reaction-diffusion equations. This type of mesh contains a grid transition point τ which has some different definitions in some recent papers. In [7], Natesan and Bawa defined τ as follows:
As far as we know, in practical computation, most of the authors haven’t given a method to determine the grid parameter σ0 defined in (5). Therefore, one work of this paper is motivated by the needs for a numerical method to obtain the best mesh transition point. More specifically, we may transform the choice of mesh parameter problem into an unconstrained nonlinear optimization problem. For the complicated nonlinear optimization problem, the traditional optimization methods may not obtain the global optimization efficiently.
Particle swarm optimization (PSO) algorithm is a population-based heuristic global optimization method proposed by Kennedy and Eberhart [13] in 1995. It was first intended for simulating social behaviour, as a stylized representation of the movement of organisms in a bird flock or fish school. PSO can be used to solve multi-objective, non-differentiable problems, and so on. It is very efficient in a lot of research fields such as parameter estimation [15], controller design [14], neural networks [16], image processing [17], signal processing [18]. Very recently, the application of PSO algorithm in the field of numerical analysis has a lot of successful examples: Saidi et al. [19] used PSO algorithm to solve the Schrödinger equation. Lee [20] applied PSO algorithm to the solution of Blasius equation. Pérez et al. [21] presented a discrete PSO algorithm for solving a non-linear Diophantine systems of equations. Babaei [22] introduced a PSO to solve the nonlinear differential equations. Ouyang et al. designed a parallel hybrid PSO algorithm with CUDA for lD heat conduction equation [23], Many others also used evolutionary algorithm to solve differential equations [24, 25].
Another work of this paper is to design a higher accuracy finite difference scheme to discrete the derivative boundary conditions in (3). As far as we know, the derivative boundary conditions in (3) are much more difficult to handle than Dirichlet conditions. We have found that, when the first-order accurate scheme of the derivative boundary conditions is employed, it effects the accuracy of the overall numerical solution even if a second order numerical approach is given at the interior grid points. Recently, some researches [8–12] considered some differential equations with Neumann boundary conditions, and developed a class of higher accuracy difference schemes to approximate the derivative boundary conditions. In this work, we will use some techniques developed in [10–12] to study the difference scheme for the Robin boundary conditions (3).
In general, a novel method for the solution of the above problem (2)–(3) based on PSO is introduced. Specifically, based on the finite difference scheme and Shishkin mesh, we first use the double mesh principle to estimate the errors, which is given in (16). Then, we will utilize the basic PSO algorithm to get two suitable mesh transition points. Furthermore, we can obtain the best Shishkin mesh and the corresponding numerical results for the problem (2)–(3).
The remainder of this paper is organized as follows. Section 2 reviews the Proposed methodology for solving problem. Section 3 describes the development and main steps of PSO algorithm. Section 4 presents the experimental results and analysis of PSO and differential evolution (DE), genetic algorithm (GA), and other traditional algorithms. Section 5 concludes this paper.
The construction of Shishkin mesh
In this section, we first define τ1 and τ2 as
For i = 1, 2, ⋯ , N, let h
i
= x
i
- xi-1 be the local mesh size and set
Given a mesh function
Then, at the interior points, the approximation solution
Next, we design a new method to discrete the derivative boundary conditions (3). First, by using the Taylor series expand at the boundary points, we can obtain the following difference scheme [10, 12]
Assume that the Equation (2) is satisfied at point x = x0, then from (2) and (8), we can obtain
Substituting Equations (10), (11) and (12) into (8), yield
From the first equation of (3) and (13), and neglecting the truncation error, we have
Similarly, we can obtain the difference scheme at point x = x
n
In general, the analytic solution of problem (2)–(3) is not available, especially for a nonlinear problem. So, we estimate the error of the numerical solution by comparing it to the numerical solution calculated on a finer mesh. In addition, for each ɛ and N, the solution of (7) is a binary function about variable θ1 and θ2. Thus, let
Here, it is very essential to determine the suitable parameters θ1, θ2 to make the value of
In order to illustrate the complication of the above error function (16), we briefly give a numerical example.
Let ɛ = 10-10, N = 64, then we use the above difference scheme (7), (14) and (15) to solve the Example 2.1. Obviously, the binary function (16) is not a explicit formula. When θ1, θ2 ∈ [0, 10000], the error function

The error function -E ɛ (θ1, θ2).

The error functions -E ɛ (θ1, 6000) and -E ɛ (θ1, 7000).
PSO algorithm is simple yet powerful evolutionary algorithm for complicated global optimization introduced by Kennedy and Eberhart [13]. It is first developed as a new intelligence algorithm with the principle of individual improving, individual competition and population cooperation which is built upon the imitation of animal social behavior such as a bird flock [26]. It combines the local search methods so as to enhance the advantages and conquer the disadvantages of the basic algorithms and eventually obtains the global optimal solution.
A standard PSO algorithm maintains a swarm of particle and each individual is composed of three d-dimensional vectors, where d is the dimensionality of the search space [27]. The important operations of PSO algorithm are two iterative formulas on velocity and position updating in every individual. Particularly, let the velocity and the position on the ith individual in the objective space be denoted as V
i
= [vi,1, vi,2, ⋯ , vi,d]
T
and X
i
= [xi,1, xi,2, ⋯ , xi,d]
T
severally. Each historical optimal position of individual p
best
is presented as P
i
= [pi,1, pi,2, ⋯ , pi,d]
T
, and the global optimal position g
best
is formulated by using P
g
= [pg,1, pg,2, ⋯ , pg,d]
T
in the whole population. A mathematical model of the PSO algorithm for updating the particles’s position in each movement can be written as
The main steps of the PSO are described as follows:
Problem prescription and error evaluation method
In this section, in order to validate the necessity and good performance the proposed method, the following test example is adapted.
Here, we use Equations (7), (14) and (15) to solve this problem. For two given parameters θ1 and θ2, let
To facilitate the experiments, we use Matlab2012a to program a m-file for implementing the algorithms on a PC with a 32-bit windows 8 operating system, a 4GB RAM, and a 3.10 GHz-core (TM) i5-based processor.
In order to illustrate the efficient of the PSO algorithm, we also calculate the numerical results by using differential evolution (DE) algorithm, Nelder-Mead Simplex algorithm (NMS) [28] and genetic algorithm (GA) [29, 30]. The parameter settings of each stochastic algorithm are as follows: for PSO and DE algorithm, the maximum number of generation is set to 50, the population size is also set to 50; for PSO algorithm, two accelerating factors are set to 0.5 and 0.5, respectively. Inertia weight factor is set to 0.45; for DE algorithm, crossover factor is 0.5,cross-over probability is 0.1; the range of parameters θ
i
(i = 1, 2) is [-10-10, 1010].
Experimental results and analyses
Comparison of calculation accuracy by PSO algorithm and NMS
It is well know that many traditional optimization algorithms need the gradient information of the objective function. It is difficult to use these methods to solve above problem (16). As far as we know, the Nelder-Mead simplex (NMS) algorithm proposed by Nelder and Mead [28] is a commonly applied numerical method used to find the minimum or maximum of an objective function in a multidimensional space. It is applied to nonlinear optimization problems for which derivatives may not be known. Thus, in the experiment, we fist use NMS algorithm to solve above problem (16). First, we set the grid initial values equal to (i, i) , i = 1, 2, 3, 4, then, for different values of ɛ and N, Table 1 lists the numerical results and the corresponding grid parameters θ1 and θ2. It is shown that NMS method gives some local optimal solutions by choosing different initial values. Specifically, when the grid initial values equal to (1, 1), (2, 2) and (3, 3), respectively, the problem (16) has almost the same local optimal solution. Meanwhile, when we choose grid initial value (4, 4), the numerical results can reach the global optimal solution. Compared with NMS, PSO algorithm can obtain the global optimal solution without choosing grid initial value, see Tables 2–5 below (in all the tables, M denotes method).
Numerical results calculated by using NMS method with different initial values
Numerical results calculated by using NMS method with different initial values
Numerical results calculated by using different algorithms with ɛ = 10-8, N = 32
Numerical results calculated by using different algorithms with ɛ = 10-8, N = 64
Numerical results calculated by using different algorithms with ɛ = 10-10, N = 32
Numerical results calculated by using different algorithms with ɛ = 10-10, N = 64
Therefore, we can see that: the traditional mathematical optimization methods such as NMS method can’t be suitable for solving the above nonlinear optimization problem (17). Because those traditional mathematical optimization methods must choose a suitable initial value, and it is easy to fall into a local optimal solution.
Here, we make a comparison of PSO algorithm with differential evolution (DE) algorithm and GA. In order to validate the effectiveness of experimental data, we perform thirty experiments by using PSO, DE and GA. algorithms to calculate this problem, respectively.
When ɛ = 10-8 and N = 32, 64, Tables 2–3 list the max, min, average and variance of computed errors
Figure 3 represents the absolute error curve obtained by the PSO algorithms and NMS method for N = 64, ɛ = 10-8. Moreover, the Figs. 4–5 give the absolute error curve on the two boundary intervals. Figures 3–5 show curve graphs of the absolute error obtained by the PSO algorithm and NMS method. As can be seen from Figs. 3–5, we use the PSO to optimize the grid the transition parameters, then obtain the numerical results which are significantly higher than the those of NMS method in terms of accuracy, especially in improving the accuracy of the boundary layer with more obvious effects.

The errors comparison of PSO algorithm and NMS algorithm with ɛ = 10-8, N = 64.

Blow-up of layer in Fig. 3 on [0, 0.03].

Blow-up of layer in Fig. 3 on [0.97, 1].
It is also shown from Figs. 6–7 that PSO is faster than DE and GA in terms of convergence speed.

Fitness of PSO, DE and GA algorithms for generation with ɛ = 10-8, and N = 64.

Fitness of PSO, DE and GA algorithms for generation with ɛ = 10-10, and N = 64.
For the Robin boundary conditions, we compare the accuracy of our presented difference scheme (14)–(15) with that of the traditional difference scheme. At first, the construction of the traditional difference scheme is given as follow:
To approximate the first of Robin boundary conditions (3), the following center difference scheme is used
In addition, by applying the difference scheme (7) at the point x = x0, we get
To eliminate the U-1 term from Equations (21)–(22), yield
Similarly, for the point x = x
n
, we have
Here, the accuracy of difference scheme (23)–(24) is only second-order.
Next, to illustrate the advantage of our presented difference scheme (14)–(15), we use the traditional difference scheme (23)–(24) to discrete the Robin boundary conditions, and also utilize PSO algorithm to solve the objective function (17). To compare our new difference scheme i.e., our method (OM) (14)–(15) with the traditional method (TM) (23)–(24), Tables 6–9 summarize the numerical results of 30 independent runs. It is clear that our presented new difference scheme is better than the traditional difference scheme in terms of performance, which just confirms the theoretical result.
Numerical results calculated by using different difference scheme with ɛ = 10-2, N = 32
Numerical results calculated by using different difference scheme with ɛ = 10-2, N = 64
Numerical results calculated by using different difference scheme with ɛ = 10-4, N = 32
Numerical results calculated by using different algorithms with ɛ = 10-4, N = 64
In most of the cases, the Shishkin mesh method is frequently used to solve the singularly perturbed problem. However, for the Shishkin mesh transition points, almost all of authors are arbitrary selection parameters. Thus, the mainly advent of this paper has provided a new approach to obtain the Shishkin mesh transition points. This work can be viewed as a preliminary step-up in finding a challenging numerical method to obtain the Shishkin mesh transition points.Specially, we first transform the Shishkin mesh transition parameter selection problem into a nonlinea unconstrained optimization problem which is solved by using the basic particle swarm optimization (PSO) algorithm. Then, for the Robin boundary conditions, a high precision discrete scheme is developed. It is noted that the method used in this paper can be extend to other type of singularly perturbed problems.
Footnotes
Acknowledgements
This work is supported by National Science Foundation of China (11461011, 61662090, 11561009), and Natural Science Foundation of Guangxi Education Department in China (ZD2014080), and Guangxi Natural Science Foundation (2016GXNSFAA380240). the High-level Innovative Talents Cultivation Program of Guizhou Province (No. [2017]3), the Natural Science Foundation of Guizhou Provincial Education Department (No. KY[2016]018), the Science and Technology Research Foundation of Hunan Province (13C333), the open fund of Key Laboratory of Guangxi High Schools for Complex System & Computational Intelligence (No. 15CI03D).
