Abstract

We propose an approach to enhance the performance of a diagonal variant of secant method for solving large-scale systems of nonlinear equations. In this approach, we consider diagonal secant method using data from two preceding steps rather than a single step derived using weak secant equation to improve the updated approximate Jacobian in diagonal form. The numerical results verify that the proposed approach is a clear enhancement in numerical performance.

1. Introduction

Solving systems of nonlinear equations is becoming more essential in the analysis of complex problems in many research areas. The problem considered is to find the solution of nonlinear equations: 𝐹(π‘₯)=0,(1.1) where 𝐹=βˆΆπ‘…π‘›β†’π‘…π‘› is continuously differentiable in an open neighborhood Ξ¦βŠ‚π‘…π‘› of a solution π‘₯βˆ—=(π‘₯βˆ—1,…,π‘₯βˆ—π‘›) of the system (1.1). We assume that there exists π‘₯βˆ— with 𝐹(π‘₯βˆ—)=0 and πΉξ…ž(π‘₯βˆ—)β‰ 0, where πΉξ…ž(π‘₯π‘˜) is the Jacobian of 𝐹 at π‘₯π‘˜ for which it is assumed to be locally Lipschitz continuous at π‘₯βˆ—. The prominent method for finding the solution to (1.1) is the Newton's method which generates a sequence of iterates {π‘₯π‘˜} from a given initial guess π‘₯0 via π‘₯π‘˜+1=π‘₯π‘˜βˆ’ξ€·πΉξ…žξ€·π‘₯π‘˜ξ€Έξ€Έβˆ’1𝐹π‘₯π‘˜ξ€Έ,(1.2) where π‘˜=0,1,2…. However, Newton’s method requires the computation of the matrix entailing the first-order derivatives of the systems. In practice, computations of some functions derivatives are quite costly, and sometimes they are not available or could not be done precisely. In this case, Newton's method cannot be used directly.

It is imperative to mention that some efforts have been already carried out in order to eliminate the well-known shortcomings of Newton's method for solving systems of nonlinear equations, particularly large-scale systems. These so-called revised Newton-type methods include Chord-Newton method, inexact Newton's method, quasi-Newton's method, and so forth (e.g., see [1–4]). On the other hand, most of these variants of Newton's method still have some shortcomings as Newton's counterpart. For example, Broyden's method [5] and Chord's Newton's method need to store an 𝑛×𝑛 matrix, and their floating points operations are 𝑂(𝑛2).

To deal with these disadvantages, a diagonally Newton's method has been suggested by Leong et al. [6] by approximating the Jacobian matrix into nonsingular diagonal matrix and updated in every iteration. Incorporating this updating strategy, Leong et al. [6], based upon the weak secant equation of Denis and Wolkonicz [7], showed that their algorithm is appreciably cheaper than Newton's method and some of its variants. It is worth to report that, they employ a standard one-step two-point approach in Jacobian approximation, which is commonly used by most Newton-like methods. In contrast, this paper presents a new diagonal-updating Newton's method by extending the procedure of [6] and employs a two-step multipoint scheme to increase the accuracy of the approximation of the Jacobian. We organize the rest of this paper as follows. In the next section, we present the details of our method. Some numerical results are reported in Section 3. Finally, conclusions are made in Section 4.

2. Two-Step Diagonal Approximation

Here, we define our new diagonal variant of Newton's method which generates a sequence of points {π‘₯π‘˜} via π‘₯π‘˜+1=π‘₯π‘˜βˆ’π‘„π‘˜βˆ’1𝐹π‘₯π‘˜ξ€Έ,(2.1) where π‘„π‘˜ is a diagonal approximation of the Jacobian matrix updated in each iteration. Our plan is to build a matrix π‘„π‘˜ through diagonal updating scheme such that π‘„π‘˜ is a good approximation of the Jacobian in some senses. For this purpose, we make use of an interpolating curve in the variable space to develop a weak secant equation which is derived initially by Dennis and Wolkowicz [7]. This is made possible by considering some of the most successful two-step methods (see [8–11] for more detail). Through integrating this two-step information, we can present an improved weak secant equation as follows: ξ€·π‘ π‘˜βˆ’π›Όπ‘˜π‘ π‘˜βˆ’1ξ€Έπ‘‡π‘„π‘˜+1ξ€·π‘ π‘˜βˆ’π›Όπ‘˜π‘ π‘˜βˆ’1ξ€Έ=ξ€·π‘ π‘˜βˆ’π›Όπ‘˜π‘ π‘˜βˆ’1ξ€Έπ‘‡ξ€·π‘¦π‘˜βˆ’π›Όπ‘˜π‘¦π‘˜βˆ’1ξ€Έ.(2.2) By letting πœŒπ‘˜=π‘ π‘˜βˆ’π›Όπ‘˜π‘ π‘˜βˆ’1 and πœ‡π‘˜=π‘¦π‘˜βˆ’π›Όπ‘˜π‘¦π‘˜βˆ’1 in (2.2), we have πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜=πœŒπ‘‡π‘˜πœ‡π‘˜.(2.3) Since we used information from the last two steps instead of one previous step in (2.2) and (2.3), consequently we require to build an interpolating quadratic curves π‘₯(𝜈) and 𝑦(𝜈), where π‘₯(𝜈) interpolates the last two preceding iterates π‘₯π‘˜βˆ’1 and π‘₯π‘˜, and 𝑦(𝜈) interpolates the last two preceding function evaluation πΉπ‘˜βˆ’1 and πΉπ‘˜ (which are assumed to be available).

Using the approach introduced in [8], we can determine the value of π›Όπ‘˜ in (2.2) by computing the values of 𝜈0, 𝜈1, and 𝜈2. If 𝜈2=0, {πœˆπ‘—}2𝑗=0 can be computed as follows: βˆ’πœˆ1=𝜈2βˆ’πœˆ1=β€–β€–π‘₯(𝜈2)βˆ’π‘₯(𝜈1)β€–β€–π‘„π‘˜=β€–β€–π‘₯π‘˜+1βˆ’π‘₯π‘˜β€–β€–π‘„π‘˜=β€–β€–π‘ π‘˜β€–β€–π‘„π‘˜=ξ€·π‘ π‘‡π‘˜π‘„π‘˜π‘ π‘˜ξ€Έ1/2,(2.4)βˆ’πœˆ0=𝜈2βˆ’πœˆ0=β€–β€–π‘₯(𝜈2)βˆ’π‘₯(𝜈0)β€–β€–π‘„π‘˜=β€–β€–π‘₯π‘˜+1βˆ’π‘₯π‘˜βˆ’1β€–β€–π‘„π‘˜=β€–β€–π‘ π‘˜+π‘ π‘˜βˆ’1β€–β€–π‘„π‘˜=ξ‚€ξ€·π‘ π‘˜+π‘ π‘˜βˆ’1ξ€Έπ‘‡π‘„π‘˜ξ€·π‘ π‘˜+π‘ π‘˜βˆ’11/2.(2.5)

Let us define 𝛽 by πœˆπ›½=2βˆ’πœˆ0𝜈1βˆ’πœˆ0,(2.6) then πœŒπ‘˜ and πœ‡π‘˜ are give as πœŒπ‘˜=π‘ π‘˜βˆ’π›½2𝑠1+2π›½π‘˜βˆ’1,πœ‡(2.7)π‘˜=π‘¦π‘˜βˆ’π›½2𝑦1+2π›½π‘˜βˆ’1,(2.8) that is, 𝛼 in (2.4) is given by 𝛼=𝛽2/(1+2𝛽).

Assume that π‘„π‘˜ is a nonsingular diagonal matrix, the updated version of π‘„π‘˜, that is, π‘„π‘˜+1 is then defined by π‘„π‘˜+1=π‘„π‘˜+Ξ›π‘˜,(2.9) where Ξ›π‘˜ is the deviation between π‘„π‘˜ and π‘„π‘˜+1 which is also a diagonal matrix. To preserve accurate Jacobian approximation, we update π‘„π‘˜+1 in such a way that the following condition is satisfied: πœŒπ‘‡π‘˜ξ€·π‘„π‘˜+1ξ€ΈπœŒπ‘˜=πœŒπ‘‡π‘˜πœ‡π‘˜.(2.10) We proceed by controlling the growth error of Ξ›π‘˜ through minimizing its size under the Frobenius norm, such that (2.10) holds. Consequently we consider the following problem: minΞ›(𝑖)βˆˆπ‘…12𝑛𝑖=1ξ‚€Ξ›π‘˜(𝑖)2s.t𝑛𝑖=1Ξ›π‘˜(𝑖)ξ‚€πœŒπ‘˜(𝑖)2=πœŒπ‘‡π‘˜πœ‡π‘˜βˆ’πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜,(2.11) where Ξ›π‘˜(𝑖); 𝑖=1,2,…,𝑛 are the diagonal elements of Ξ›π‘˜ and πœŒπ‘˜(𝑖); 𝑖=1,2,…,𝑛 are the components of vector πœŒπ‘˜.

In view of the fact that, the objective function in (2.11) is convex, and the feasible set is also convex, then (2.11) has an unique solution. Hence its Lagrangian function can be expressed as follows: πΏξ€·Ξ›π‘˜ξ€Έ=1,πœ†2𝑛𝑖=1ξ‚€Ξ›π‘˜(𝑖)2+πœ†π‘›ξ“π‘–=1Ξ›π‘˜(𝑖)ξ‚€πœŒπ‘˜(𝑖)2βˆ’πœŒπ‘‡π‘˜πœ‡π‘˜+πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜ξƒͺ,(2.12) where πœ† is the Lagrangian multiplier associated with the constraint.

Taking the partial derivative of (2.12) with respect to each component of Ξ›π‘˜ then set them equal to zero, multiply the relation by (πœŒπ‘˜(𝑖))2 and sum them all together, yieldsΞ›π‘˜(𝑖)ξ‚€πœŒ=βˆ’πœ†π‘˜(𝑖)2,(2.13)𝑛𝑖=1Ξ›π‘˜(𝑖)ξ‚€πœŒπ‘˜(𝑖)2=βˆ’πœ†π‘›ξ“π‘–=1ξ‚€πœŒπ‘˜(𝑖)4,foreach𝑖=1,2,…,𝑛.(2.14) Using (2.14) and the constraint, we obtain after some simplifications πœŒπœ†=βˆ’π‘‡π‘˜πœ‡π‘˜βˆ’πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜βˆ‘π‘›π‘–=1ξ‚€πœŒπ‘˜(𝑖)4.(2.15) Next, by substituting (2.15) into (2.13) and performing some little algebra, we obtainΞ›π‘˜(𝑖)=πœŒπ‘‡π‘˜πœ‡π‘˜βˆ’πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜βˆ‘π‘›π‘–=1ξ‚€πœŒπ‘˜(𝑖)4ξ‚€πœŒπ‘˜(𝑖)2,βˆ€π‘–=1,2,…,𝑛.(2.16) Letting π»π‘˜=diag((πœŒπ‘˜(1))2,(πœŒπ‘˜(2))2,…,(πœŒπ‘˜(𝑛))2) and βˆ‘π‘›π‘–=1(πœŒπ‘˜(𝑖))4=Tr(𝐻2π‘˜), where Tr is the trace operation, we can finally present the updating formula for 𝑄 as follows. π‘„π‘˜+1=π‘„π‘˜+ξ€·πœŒπ‘‡π‘˜πœ‡π‘˜βˆ’πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜ξ€Έξ€·π»Tr2π‘˜ξ€Έπ»π‘˜,(2.17)β€–β‹…β€– denotes the Euclidean norm of a vector.

To safeguard on the possibly of generating undefined π‘„π‘˜+1, we propose to use our updating scheme for π‘„π‘˜+1:π‘„π‘˜+1=⎧βŽͺ⎨βŽͺβŽ©π‘„π‘˜+ξ€·πœŒπ‘‡π‘˜πœ‡π‘˜βˆ’πœŒπ‘‡π‘˜π‘„π‘˜πœŒπ‘˜ξ€Έξ€·π»Tr2π‘˜ξ€Έπ»π‘˜;β€–β€–πœŒπ‘˜β€–β€–>10βˆ’4,π‘„π‘˜;otherwise.(2.18) Now, we can describe the algorithm for our proposed method as follows:

Algorithm 2.1 (2-MFDN). Step 1. Choose an initial guess π‘₯0 and 𝑄0=𝐼, let π‘˜βˆΆ=0.Step 2 (Compute 𝐹(π‘₯π‘˜)). If ‖𝐹(π‘₯π‘˜)β€–β‰€πœ–1 stop, where πœ–1=10βˆ’4.Step 3. If π‘˜βˆΆ=0 define π‘₯1=π‘₯0βˆ’π‘„0βˆ’1𝐹(π‘₯0). Else if π‘˜βˆΆ=1 set πœŒπ‘˜=π‘ π‘˜ and πœ‡π‘˜=π‘¦π‘˜ and go to 5.Step 4. If π‘˜β‰₯2 compute 𝜈1, 𝜈0, and 𝛽 via (2.4)–(2.6), respectively and find πœŒπ‘˜ and πœ‡π‘˜ using (2.7) and (2.8), respectively. If πœŒπ‘‡π‘˜πœ‡π‘˜β‰€10βˆ’4β€–πœŒπ‘˜β€–2β€–πœ‡π‘˜β€–2 set πœŒπ‘˜=π‘ π‘˜ and πœ‡π‘˜=π‘¦π‘˜.Step 5. Let π‘₯π‘˜+1=π‘₯π‘˜βˆ’π‘„π‘˜βˆ’1𝐹(π‘₯π‘˜) and update π‘„π‘˜+1 as defined by (2.17).Step 6. Check if β€–πœŒπ‘˜β€–2β‰₯πœ–1,if yes retain π‘„π‘˜+1, that is, computed by Step 5. Else set, π‘„π‘˜+1=π‘„π‘˜.Step 7. Set π‘˜βˆΆ=π‘˜+1 and go to 2.

3. Numerical Results

In this section, we analyze the performance of 2-MFDN method compared to four Newton-Like methods. The codes are written in MATLAB 7.0 with a double-precision computer, the stopping criterion used is β€–β€–πœŒπ‘˜β€–β€–+‖‖𝐹π‘₯π‘˜ξ€Έβ€–β€–β‰€10βˆ’4.(3.1) The methods that we considered are(i)Newton's method (NM). (ii)Chord (fixed) Newton-method (FN).(iii)The Broyden method (BM).(iv)MFDN stands for the method proposed by Leong et al. [6].

The identity matrix has been chosen as an initial approximate Jacobian. Six (2.4) different dimensions are performed on the benchmark problems, that is, 25, 50, 100, 500, 1000, and 250000.

The symbol β€œβˆ’β€ is used to indicate a failure due to:(i)the number of iteration is at least 500 but no point of π‘₯π‘˜ that satisfies (3.1) is obtained; (ii)CPU time in second reaches 500; (iii)insufficient memory to initiate the run.

In the following, we illustrate some details on the benchmarks test problems.

Problem 1. Trigonometric system of Shin et al. [12]: 𝑓𝑖π‘₯(π‘₯)=cosπ‘–ξ€Έβˆ’1,𝑖=1,2,…,𝑛,π‘₯0=(0.87,0.87,…,0.87).(3.2)

Problem 2. Artificial function: 𝑓𝑖π‘₯(π‘₯)=ln𝑖π‘₯cosξ‚΅ξ‚΅1βˆ’1+𝑇π‘₯ξ€Έ2ξ‚βˆ’1ξ‚€ξ€·π‘₯ξ‚Άξ‚Άexpξ‚΅ξ‚΅1βˆ’1+𝑇π‘₯ξ€Έ2ξ‚βˆ’1π‘₯ξ‚Άξ‚Ά,𝑖=1,2,…,𝑛,0=(2.5,2.5,…,2.5).(3.3)

Problem 3. Artificial function: 𝑓1(π‘₯)=cosπ‘₯1βˆ’9+3π‘₯1+8expπ‘₯2,𝑓𝑖(π‘₯)=cosπ‘₯π‘–βˆ’9+3π‘₯𝑖+8expπ‘₯π‘–βˆ’1,𝑖=2,…,𝑛,(5,5,…,5).(3.4)

Problem 4. Trigonometric function of Spedicato [13]: 𝑓𝑖(π‘₯)=π‘›βˆ’π‘›ξ“π‘—=1cosπ‘₯𝑗+𝑖1βˆ’cosπ‘₯π‘–ξ€Έβˆ’sinπ‘₯𝑖,𝑖=1,…,𝑛,π‘₯0=ξ‚€1𝑛,1𝑛1,…,𝑛.(3.5)

Problem 5. Spares system of Shin et al. [12]: 𝑓𝑖(π‘₯)=π‘₯𝑖π‘₯𝑖+1βˆ’1,𝑓𝑛(π‘₯)=π‘₯𝑛π‘₯1π‘₯βˆ’1,𝑖=1,2,…,π‘›βˆ’1,0=(0.5,0.5,…,.5).(3.6)

Problem 6. Artificial function: 𝑓𝑖π‘₯(π‘₯)=π‘›π‘–ξ€Έβˆ’32+ξ€·π‘₯cosπ‘–ξ€Έβˆ’32βˆ’π‘₯π‘–βˆ’2ξ€·π‘₯exp𝑖π‘₯βˆ’3+log2𝑖π‘₯+1,𝑖=1,2,…,𝑛,0=(βˆ’3,βˆ’3,βˆ’3,…,βˆ’3).(3.7)

Problem 7 (see [14]). 𝑓1(π‘₯)=π‘₯1,𝑓𝑖(π‘₯)=cosπ‘₯𝑖+1+π‘₯π‘–βˆ’1,𝑖=2,3,…,𝑛,π‘₯0=(0.5,0.5,…,.5).(3.8)

From Table 1, it is noticeably that using the 2-step approach in building the diagonal updating scheme has significantly improved the performance of the one-step diagonal variant of Newton's method (MFDN). This observation is most significant when one considers CPU time and number of iterations, particularly as the systems dimensions increase. In addition, it is worth mentioning that, the result of 2-MFDN method in solving Problem 3 shows that the method could be a good solver even when the Jacobian is nearly singular.

The numerical results presented in this paper shows that 2-MFDN method is a good alternative to MFDN method especially for extremely large systems.

4. Conclusions

In this paper, a new variant of secant method for solving large-scale system of nonlinear equations has been developed (2-MFDN). The method employs a two-step, 3-point scheme to update the Jacobian approximation into a nonsingular diagonal matrix, unlike the single-step method. The anticipation behind this approach is enhanced by the Jacobian approximation. Our method requires very less computational cost and number of iterations as compared to the MFDN method of Leong et al. [6]. This is more noticeable as the dimension of the system increases. Therefore, from the numerical results presented, we can wind up that, our method (2-MFDN ) is a superior algorithm compared to NM, FN, BM, and MFDN methods in handling large-scale systems of nonlinear equations.