Numerical Accuracy of the Predictor-Corrector Method to Solve Fuzzy Differential Equations Based on the Stochastic Arithmetic

In this work, a reliable scheme is proposed to solve fuzzy differential equation based on the predictor-corrector methods (PC-methods) under generalized H-differentiability. For this purpose, the stochastic arithmetic(SA) and the CESTAC* method are applied to validate the results. Also, the numerical accuracy of the method is proved and an algorithm is given based on the new arithmetic. In order to implement C++ codes, the CADNA† library is used. In this case, the optimal number of nodes and optimal step size are found. The examples illustrate the efficiency and importance of using the SA in place of the floating-point arithmetic(FPA).


Introduction
Solving fuzzy differential equations (FDE) in both initial and boundary conditions are important topics in fuzzy mathematics and its applications [1]. In recent years different numerical and analytical approaches were proposed to find the fuzzy solution of a given FDE such as [2][3][4][5][6][7][8][9][10][11][12]. In all of these works, in order to implement the computer programs, a mathematical package like Matlab, Mathematica,...is considered and the results are found based on the common computer arithmetic which is the FPA. In this case, a fixed step size is chosen, then in the fixed nodes, the approximate solution is obtained. Also, in all examples, the exact solution is given and compared with the approximate solution to check the accuracy of the results and the convergence of the method. Since the FPA is not able to rely and validate the results and detect the instabilities during the run of the program, the packages which are worked on this arithmetic are not able to determine a satisfactory result from the computational point of view. In other words, because of the accumulation of errors due to the round-off error propagation, the final results obtained from a numerical algorithm may be inaccurate and the FPA is not able to detect the accuracy of results. Also, in this arithmetic, it is not possible to find the optimal step size in difference schemes like PC-methods and it is necessary to consider a tolerance of accuracy like eps in the termination criterion, which is not proper to stop the computations. Hence, an arbitrary step size is chosen and the results are found without validating them. It is important computationally to validate the results and control the variations of the step size in iterative and approximate methods and find the optimal results to ensure that based on the machine accuracy, the final solution, the number of iterations and the step size are optimized. Hence, a reliable and efficient method for evaluating the round-off error is necessary if one wants to correct step size control. For these reasons, the FPA must be substituted by other arithmetic which is able to optimize and validate the results. This new arithmetic is called the SA proposed by La Porte and Vignes [13]. They introduced the CESTAC method which is a method to implement the SA in a code written by Fortran or C++ on the Linux operating system [14][15][16]. This method enables one to estimate the number of the exact significant digits of any computed result. The CESTAC method is based on a probabilistic approach of the round-off error propagation which replaces the FPA by a random arithmetic [15,[17][18][19][20][21][22][23][24][25].
In [26][27][28][29], the authors applied the CADNA library to solve a FDE by using the fuzzy Runge-Kutta method as a single-step scheme and the finite differences method to solve fuzzy boundary value problem. By using this library, the optimal step size is computed, and the optimal approximate solution of the FDE in the nodal points is found. In this work, a procedure is presented for solving fuzzy differential equations under generalized H-differentiability based on the PC-methods. Also, based on the idea proposed by Bede [6] and Bede and Gal [30], which describes that a FDE under the H-differentiability and gH-differentiability is equivalent to a system of crisp ordinary differential equations (ODEs) under certain conditions, the solution of FDE is found. Furthermore, by using the CESTAC method and the CADNA library, the optimal step size of the fuzzy multi-step methods is computed and the accuracy of results is dynamically controlled and estimated. This paper is organized as follows. In Section 2, the basic definitions of fuzzy sets theory is presented. In Section 3, the main idea is explained. In this section, a theorem is proved to show the accuracy of the fuzzy multi-step methods. The CESTAC method and its fuzzy case in companion with an algorithm which is implemented by the CADNA library are given in Section 4. In Section 5, two sample FDEs with initial fuzzy conditions are solved by means of the CADNA library based on the proposed algorithm to illustrate the importance of using the SA in validating the results of the algorithm and finding the optimal step size.

Definition 2.1 ([34]):
Given the definition domain U, the mapping X : U −→ [0, 1], is called a fuzzy set. X(u) is denoted as the membership function, whose values are located in a closed interval [0, 1]. If only the point values 0 and 1 are suitable, the fuzzy set X degenerates into a classical one, which means that the classical set is a special form of the fuzzy sets.

Definition 2.2 ([34]):
Given a fuzzy set X, for any r ∈ [0, 1], the classical set [X] r = {u : u ∈ U, X(u) ≥ r} is defined as the r-cut set, where r is the cut level. Usually, the r-cut sets are considered as intervals of confidence, since in the case of convex fuzzy sets, they are closed fuzzy intervals associated with a gradation of confidence between [0, 1]. For a fuzzy interval X, its r−cuts are closed intervals in R and we denote them by [X] r = [x − (r), x + (r)]. Two widely used of fuzzy intervals are triangular and trapezoidal fuzzy numbers. Let us denote by F(R) the set of all fuzzy numbers, however, fuzzy numbers are generalized closed intervals.
Also, support of X is supp(X) = {u ∈ U : X(u) > 0}. For two fuzzy sets X and Y, the addition X ⊕ Y and the scalar multiplication α X, α ∈ R are defined as having the level cuts Also, the product and division of two fuzzy numbers X, Z ∈ F(R) are defined as:

Definition 2.4 ([1]):
which is called the Hausdorff distance between two fuzzy numbers u 1 , u 2 ∈ F(R) with the following properties:

Definition 2.5 ([1,3]):
A function X : R −→ F(R) is called a fuzzy function. If for arbitrary fixed t 0 ∈ R and ε > 0, a δ > 0 such that exists, X is said to be continuous.

Definition 2.7 ([1,35-37]):
The fuzzy initial value problem (FIVP)is defined using a fuzzy differential equation and a fuzzy initial value as follows: whereg is a fuzzy continuous mapping fromg :

Theorem 2.8 ([1]): Let us considerx
(2) The functions g − (t, x)(r), and g + (t, x)(r) are equi-continuous, i.e. for any ε > 0 there exists δ > 0 such that for any (t, x), (t 1 , x(t))] r is named uniformly bounded on any bounded set, if exist l > 0 such that Then, the fuzzy initial value problem (FIVP) and the corresponding crisp system of initial value problems(IVPs) are equivalent.

Main Idea
Let the FIVP (3). A l-step method for solving Equation (3) has a fuzzy difference equation with the following general form: where * denotes the fuzzy summation, and v i+1 is the approximation of the solution at the mesh point t i+1 , l is an integer greater than 1 and i = l − 1, l, . . . , N − 1, h = T/N, t j = jh, j = 0, 1, . . . , l, the values a 0 , a 1 , . . . , a l−1 and b 0 , b 1 , . . . , b l are constants, and the starting values are specified. When b l = 0, the method (4) is called an explicit method, otherwise, it is called an implicit method. The starting values in method (4) must be specified, generally by assuming v 0 = α and generating the remaining values by a single-step method such as fourth order Runge-Kutta method.
By using of the interpolating polynomial bases on Newton backward-difference formula, we have get where the constants with variable substitution t = t i + sh, and dt = h ds [8,38]. In the following, we have got some of the fuzzy predictor-corrector(FPC) methods with their initial values [3][4][5]8,39].
The FPC 3-step method is obtained as follows: The improved fuzzy predictor-corrector 3-step method(FIPC) is considered as follows: The fuzzy Milne-Simpson's predictor-corrector 4-step method(FMPC) is obtained as follows: The local truncation errors of the explicit k-step (or implicit (k − 1)-step) method, based on the crisp case mentioned in [40][41][42], can be written as: wherex(t i ) is the exact solution of the Equation (3) at the point t i andṽ i (h) is the approximate solution with step size h at this point. So,γ k are known constants dependent on k and independent of h.
Bede [6] defined the Characterization Theorem that provides certain conditions under which a FDE is equivalent to a system of ODEs with respect to H-differentiability. Thereafter, Bede and Gal [30] proposed another version of this theorem for solving FDEs under gH-differentiability. Both of these characterization theorems are employed to transfer the FDEs under fuzzy differentiability to systems of ODEs. Based on Definition 2.6, gH (i)differentiable, gH (ii) -differentiable and Theorem 2.8 [6,7], each of Equations (5), (6) and (7), under certain conditions, can be replaced by two equivalent systems of IVPs.

Definition 3.3 ([26]):
For two distinct fuzzy numbersỹ andz in F(R), the notation Cỹ ,z means the common proximity betweenỹ andz, which is defined as, Remark 3.1: By defuzzification, Equation (11) can be written as follows where the notation C y,z is the estimate number of common significant digits between two distinct real numbers y and z [15,17,22].
The following theorem is proved to show the accuracy of the fuzzy explicit k-step method (or implicit (k − 1)-step method) by considering the common proximity of each corresponding components of the computed solution and the exact solution for a given FIVP.
Proof: From Equation (8), since for h enough small, then by considering − 1 2 as abounded function which can be denoted by Based on Definition (3.3) and properties of distance D, from Equation (13), we get Similarly from Equation (10), By Definition (3.3) and properties of distance D, from Equation (15), we obtain According to Equations (14) and (16) In Equation (12) Therefore, it means that, when the fuzzy multi-step methods are used in order to estimatex(t i ) then, for h small enough, the common proximity between two successive fuzzy valuesṽ i (h) andṽ i (θ h) are almost equal to the common proximity betweenx(t i ) andṽ i (h). Therefore, if the fuzzy CES-TAC method is used then, the computations of the sequenceṽ i (h)'s are stopped when for an In Equation (14), if k = 4 and θ = 1 2 then, Also, if k = 3 and θ = 1 3 then,

CESTAC Method
In many numerical iterative and approximate recursive schemes, the absolute error is applied to show the accuracy of the method. In order to apply the absolute error, the existence of the exact solution is necessary. In the iterative algorithms which are constructed based on the common FPA, the termination criterion depends on a tolerance parameter like epsilon (eps) as follows: where ψ is the exact solution and Z m is the m-th computed result obtained from the iterative algorithm. This criterion may not be acceptable. If eps is chosen very large, the iterations are stopped before getting access to a suitable approximation. If eps is chosen very small then, unnecessary iterations are done without improving the accuracy of the results. So, it can not be determined the optimal iteration m by applying a tolerance in the stopping criterion. Also, if one applies the criterion |Z m − Z m+1 | < eps, in place of the condition (17), it is not any guarantee to confirm Z m is an approximation of ψ without knowing the exact solution. This is because of the nature of the FPA. Therefore, it needs to be suggested another way which is independent of this tolerance. For this purpose, we must replace the FPA by a new arithmetic so that it is able to omit the tolerance epsilon in the termination criterion. This new environment is the stochastic arithmetic. The details of this arithmetic can be found in [13,[15][16][17][18][19][20][21]25,45]. In order to use this arithmetic in a discrete case, the CESTAC method should be applied [15,36,45]. This method is able to validate the results and detect any instability step by step during the run of a code. The algorithm of this method is based on the concept of common significant digits. In this case, the following termination criterion is substituted which is independent of the value epsilon.
where the symbol @.0 is denoted as the informatical zero which means the corresponding value (difference between two sequential results) has not any significant digits and hence in the point of computational view we can say Z m ∼ = Z m+1 . Equation (18) means when the difference between two sequential results is an informatical zero, the computations must be stopped and any calculations after m-th iteration is redundant. In order to implement the CESTAC method, the CADNA library was designated by Chesnueax [22,46]. This library is able to perform the discrete stochastic arithmetic and the CESTAC method automatically on any C++ or Fortran code. So, in order to apply it, the main code must be written in one of these programming languages.
The CESTAC method was developed by La Porte and Vignes [13]. This method is able to detect numerical instabilities which occur during the run and estimate accuracy of the computed results. During the run, as soon as the number of the significant digits of any result becomes zero, an informatical zero is detected and the result is printed by the notation @.0.
The basic idea of the CESTAC method is to replace the usual FPA with a random arithmetic. Consequently, each result appears as a random variable. This approach leads toward two concepts: stochastic numbers and stochastic arithmetic.
The applying of the CESTAC method in a scientific program has the following advantages: (1) The accuracy of any numerical result is estimated, during the running of a program.
(2) The numerical instabilities are detected and the branching are checked.
(3) Unnecessary iterations are eliminated, which the FPA is not able to distinguish them.
In some cases, the termination criterion of iterative methods is not suitable so that the implementation of the algorithm is continued without improvement in the accuracy of the result. In the SA, instead of the termination criterion, a criterion that directly reflects the mathematical condition, is replaced, that must be satisfied by the solution. (4) It is able to find the optimal step of the iterative methods, which after this step, the accuracy of the result does not increase or maybe decrease, because of the rounding error accumulation. (5) It is an effective and powerful tool that helps to achieve the validation of scientific programs and gives them a reliability.
Let F be a set of real values which are reproduced by computer and the arbitrary value ψ is demonstrated as ∈ F. In the personal computer, with the binary FPA, ρ mantissa bits and the rounding error term is shown by where 2 −θ ρ is the missing segment of mantissa which is obtained from round-off error, ε is the sign of ψ, E is the binary power of the outcome. If ρ is a random parameter on [−1, 1] which is distributed uniformly and is applied to perturb on the last mantissa bit of then, the random result of can be calculated where mean (μ) and standard deviation (σ ) are applied to guarantee the precision of results [13,45,[47][48][49].
In PC, for θ = 24, 53 the results can be obtained by single or double precision respectively. By M times performing the process for i , i = 1, . . . , M the distribution of them is in the quasi Gaussian form. Therefore, the mean of them is equal with the exact value of ψ and the values of μ and σ can be estimated by these M samples. The following algorithm of the CESTAC method is presented where τ δ is the value of T distribution with M−1 degree of freedom and confidence interval 1 − δ.
In the sequel, Algorithm 4.1 is developed in fuzzy case.

Fuzzy CESTAC Method
Letỹ be a fuzzy number in F(R). Then,ỹ is represented asw in the computer. It can be shown that:w where, ε is the sign of y ± (r), and 2 −P z ± (r) is the lost part of the mantissa due to roundoff error for r ∈ [0, 1] and E is the binary exponent of the results. In single precision case, P = 24 and in double precision case P = 53. In the fuzzy CESTAC method, z ± (r), 0 ≤ r ≤ 1 is considered as a fuzzy random variable uniformly distributed on [−1, 1]. In order to find samples for the obtained random variables, we perturb the last mantissa bit of the values w ± (r), 0 ≤ r ≤ 1. The algorithm of the fuzzy CESTAC method is as follows where τ β is the value of T distribution with N − 1 degree of freedom and confidence interval 1 − β. If M = 3 and β = 0.05 then τ β = 4.303.
(2) Computew ave = 1 Now, the following algorithm is introduced which is performed in the CADNA library based on the fuzzy CESTAC method to solve a given FIVP by applying one of the mentioned multi-step methods. In this case, D(ṽ i (h),ṽ i (θ h)) = @.0 is chosen as the termination criterion which means the Hausdorff distance between two sequential results is an informatical zero. In this algorithm,ṽ i (h) andṽ i (θh) are the approximate values ofx(t i ) in two successive iterations obtained from the fuzzy multi-step methods, respectively. By implementing Algorithm 4.2, the optimal step size and optimal values of the computed results are obtained with their accuracy and therefore the results are validated.     Table 6. Comparison of the common significant digits (C) in the FMPC-4step method, h opt = 0.1 27 for Example 5.1.   In [1,9,10,50], a fuzzy initial value problem (FIVP) was converted to a system of ordinary differential equations, then by applying the Characterization Theorem the solution of this system presents a fuzzy solution for the FIVP. In the next section, it is considered this scheme to solve the examples based on Algorithm 4.3 using the CADNA library to validate the results.

Numerical Examples
In this section, two examples are solved based on the proposed algorithm by means of the CADNA library in the stochastic arithmetic. The first example is based on gH i and the second example is based on gH ii . The programs have been written in C + + and executed on a Linux machine using CADNA library based on Algorithm 4.3. In the tables, FPC, FIPC and FMPC methods are the multi-step schemes mentioned in Equations (5), (6) and (7) respectively.

Example 5.1:
Consider the fuzzy initial value problem [4].  Based on Algorithm 4.3, the optimal step sizes of these methods are shown in Table 1. Also, for θ = 1/3, t = 0.1, the results of Algorithm 4.3 are shown in Tables 2, 3 and 4, respectively. The Hausdorff distance between the approximate solutionsṽ i (h) andṽ i (θ h) in two successive iterations with the Hausdorff distance between the exact solutionx(t i ) and the approximate solutionṽ i (h) of Equation (21) at t = 0.1 are compared. In the tables, ṽ i (θ h)) and the optimal step size for each method is shown. Moreover, Table 5 shows the results of this algorithm for t = 0.5 in the FIPC-3step method. Also, Table 6 shows the estimate number of common significant digits for end-points of r-cuts, r = 0(0.1)1, between two sequential results are compared with the computed significant digits common to the approximate and the exact values for the FIPC-4step method.
Example 5.2: Let the following fuzzy stiff equation:   The h opt for each multi-step method is determined in Table 7 based on Algorithm 4.3. The fuzzy stiff differential equations are characterized as those whose exact solution has a term of the form e˜c t wherec is a small negative fuzzy number. This is usually only a part of the solution which is called transient solution. The transient portion of a stiff equation will rapidly decrease to zero as t increases. In Equation (22)c is nearly −25. The results of multistep methods in the case θ = 1/2 at t = 0.1 are shown in Tables 8, 9 and 10. Also, Table 11 illustrates the result of the proposed algorithm with t = 0.5 and Table 12 determines the common significant digits of the end-points for different r-cuts in the FIPC-3step method.

Conclusion
In this paper, the use of the fuzzy CESTAC method and the CADNA library were discussed which allows us to find the optimal step (h opt ) of the fuzzy multi-step methods as the PC methods under gH-differentiability and validate the results in solving a fuzzy differential equation with initial conditions. As we observed in the tables, by using the optimal termination criterion in Algorithm 1 which uses the computational zero, to stop correctly the iterative process, to save computer time, because many useless iterations are not performed, and on the other hand, furnished by the fuzzy multi-step methods, to estimate the accuracy of the optimal iteration. Consequently, it is suggested due to the numerical problems of the FPA, the SA is replaced to implement the algorithms of solving the FDEs with a reliable scheme.