[IEEE 2009 International Conference on Computational Intelligence and Security - Beijing, China...

4
A new method for simultaneous extraction of all roots of algebraic polynomial Zhang Ying Railway Traffic Department Hunan Railway Professional Technology College Zhuzhou 412001, China [email protected] Zeng Zhe-zhao College of Electrical and Information Engineering Changsha University of Science and Technology Changsha 410004, China [email protected] Abstract— In this paper, we present a new algorithm of multi- point iterative method for simultaneous determination of all roots of polynomial. Its convergence was researched. The computation is carried out by simple steepest descent rule with adaptive variable step-size. The specific examples illustrated that the proposed method can find simultaneously the roots of polynomials at a very rapid convergence and very high accuracy with less computation. Keywords-neural network;roots of polynomial; algorithm; convergence I. INTRODUCTION Finding fast and accurately the roots of polynomials is an important problem in various areas of control and communication systems engineering, signal processing and in many other areas of science and technology [1-3]. Over the last decades, there exist a large number of different methods for finding all polynomial roots either iteratively or simultaneously. Most of them yield accurate results only for small degree or can treat only special polynomials, e.g., polynomials with real roots [4]. So far, some better modified methods of finding roots of polynomials cover mainly the Jenkins/Traub method [5], the Markus/Frenzel method [4], the Laguerre method [6], the Routh method [7], the Truong, Jeng and Reed method [8], the Fedorenko method [9], the Halley method[10], and some modified Newton’s methods[11-13], etc. Furthermore, Gyurhan H. Nedzhibov and Milko G. Petkov proposed a family of iterative methods for simultaneous extraction of all roots of algebraic polynomial [14]. Unlike all other known third order or higher order simultaneous methods, the method is not required to compute first or higher derivatives of the function to carry out iterations. In this paper, we proposed a new algorithm of multi- point iterative method for simultaneous determination of all roots of polynomial equation. The approach can find simultaneously roots of polynomial with less computation, higher accuracy and rapider convergence. II. THE ALGORITHM FINDING SIMULTANEOUSLY ROOTS OF POLYNOMIAL A. The algorithm description with simple real roots We start by defining our typical polynomial of degree n as 0 1 1 1 ) ( a x a x a x a x f n n n n + + + + = " ) ( ) )( ( 1 1 p x p x p x a n n n = " (1) Here we are given the coefficients, i a ( 0 n a ), and wish to find the zeros: i p . Usually, in science and engineering applications, the coefficients will all be real, and then the zeros will either be real or else occur in conjugate-complex pairs. Let us suppose that 0 2 2 0 1 , , n x x x " are distinct, reasonably close initial approximations of the simple real roots n p p p " , , 2 1 respectively. The main essence of the algorithm proposed is to make the function f satisfy 0 ) ( = x f by training the weight variable x . The algorithm is as follows: Given an arbitrary initial approximation of real weight vector T n x x x ] , , , [ 0 0 2 0 1 0 " = x , an error function can be obtained: ) ( ) ( k k k f f x x 0 E = = (2) Define an objective function J as 2 2 1 k J E = (3) To minimize the J , the weight vector k x is recursively calculated via using a simple gradient descent rule with variable step-size: k k k k d dJ x η x x * . 1 = + (4) Where k η is variable step-size and usually 1 η 0 < < k , and that 2009 International Conference on Computational Intelligence and Security 978-0-7695-3931-7/09 $26.00 © 2009 IEEE DOI 10.1109/CIS.2009.77 197

Transcript of [IEEE 2009 International Conference on Computational Intelligence and Security - Beijing, China...

A new method for simultaneous extraction of all roots of algebraic polynomial

Zhang Ying Railway Traffic Department

Hunan Railway Professional Technology College Zhuzhou 412001, China

[email protected]

Zeng Zhe-zhao College of Electrical and Information Engineering Changsha University of Science and Technology

Changsha 410004, China [email protected]

Abstract— In this paper, we present a new algorithm of multi-point iterative method for simultaneous determination of all roots of polynomial. Its convergence was researched. The computation is carried out by simple steepest descent rule with adaptive variable step-size. The specific examples illustrated that the proposed method can find simultaneously the roots of polynomials at a very rapid convergence and very high accuracy with less computation.

Keywords-neural network;roots of polynomial; algorithm; convergence

I. INTRODUCTION Finding fast and accurately the roots of polynomials is an

important problem in various areas of control and communication systems engineering, signal processing and in many other areas of science and technology [1-3]. Over the last decades, there exist a large number of different methods for finding all polynomial roots either iteratively or simultaneously. Most of them yield accurate results only for small degree or can treat only special polynomials, e.g., polynomials with real roots [4].

So far, some better modified methods of finding roots of polynomials cover mainly the Jenkins/Traub method [5], the Markus/Frenzel method [4], the Laguerre method [6], the Routh method [7], the Truong, Jeng and Reed method [8], the Fedorenko method [9], the Halley method[10], and some modified Newton’s methods[11-13], etc. Furthermore, Gyurhan H. Nedzhibov and Milko G. Petkov proposed a family of iterative methods for simultaneous extraction of all roots of algebraic polynomial [14]. Unlike all other known third order or higher order simultaneous methods, the method is not required to compute first or higher derivatives of the function to carry out iterations.

In this paper, we proposed a new algorithm of multi-point iterative method for simultaneous determination of all roots of polynomial equation. The approach can find simultaneously roots of polynomial with less computation, higher accuracy and rapider convergence.

II. THE ALGORITHM FINDING SIMULTANEOUSLY ROOTS OF POLYNOMIAL

A. The algorithm description with simple real roots We start by defining our typical polynomial of degree n

as

011

1)( axaxaxaxf nn

nn ++++= −

)())(( 11 pxpxpxa nnn −−−= − (1)

Here we are given the coefficients, ia ( 0≠na ), and wish

to find the zeros: ip . Usually, in science and engineering applications, the coefficients will all be real, and then the zeros will either be real or else occur in conjugate-complex pairs. Let us suppose that 02

201 ,, nxxx are distinct, reasonably

close initial approximations of the simple real roots nppp ,, 21 respectively. The main essence of the

algorithm proposed is to make the function f satisfy 0)( =xf by training the weight variable x . The algorithm

is as follows: Given an arbitrary initial approximation of real weight vector T

nxxx ],,,[ 002

01

0 =x , an error function can be obtained:

)()( kkk ff xx0E −=−= (2) Define an objective function J as

2

21 kJ E= (3)

To minimize the J , the weight vector kx is recursively calculated via using a simple gradient descent rule with variable step-size:

kkkk

ddJx

ηxx *.1 −=+ (4)

Where kη is variable step-size and usually 1η0 << k , and that

2009 International Conference on Computational Intelligence and Security

978-0-7695-3931-7/09 $26.00 © 2009 IEEE

DOI 10.1109/CIS.2009.77

197

kkk

ddJx

ηx *.−=Δ (5)

Here, T]0,,0,0[=0 and T]1,,1,1[=1 .

Differentiating (3) with respect to kx , it can be obtained that

)(*.)(*.)(

*. kkk

k

k

k

kk fd

dfdf

dddJ

ddJ xE

xx

xE

Ex′−== (6)

Substituting (6) into (4), we have )(*.*.1 kkkkk f xEηxx ′+=+ (7)

Here )(*.*. kkkk f xEηx ′=Δ (8)

The notation *. denotes arithmetic operator of array multiply.

B. Research of the algorithm convergence In order to ensure the absolute convergence of the

algorithm proposed, it is important to select a proper variable step-size vector kη . In the section, we present and prove the theorem about convergence of the algorithm. It is as follows: Theorem 1: If )(xf is a polynomial of degree 1≥n , and )(xf ′ is the derivative of )(xf , then only when

2).^(/.20 kk f xη ′<< , the algorithm is convergent,

where kη is variable step-size. Where the notation 2.^ denotes arithmetic operator of array power.

Proof: Define a Lyapunov function vector:

2.^21 kk EV = (9)

Then

2.^212.^

21 1 kkk EEV −=Δ + (10)

Since

kk

kkkkk

dd x

xEEEEE Δ+=Δ+=+ *.1 (11)

and

k

kkk

kkk

dd

ddJ

xEEη

xηx *.*.*. −−=−=Δ (12)

According to (10), (11) and (12), we have

⎭⎬⎫

⎩⎨⎧ +−

=

Δ+Δ=Δ

2.^)(*.2).^(21)(

*.2).^(*.2.^)(

)](21)([*).(

k

k

dkdkk

kd

kd

kkk

xEηη

Ex

E

EEEV

(13)

Known from the (2) that: )( kk

k

fdd x

xE ′−= , substituting it

into (13) gives:

⎭⎬⎫

⎩⎨⎧ ′+−

′=Δ

2).^(*.2.^21

*.2.^*.2).^(

kkk

kkk

f

f

xηη

ExV (14)

Since 0Ex ≥′ 2.^*.2).^( kkf (15)

if the algorithm is convergent, i.e. 0<Δ kV , then it is easy to see from (14) that

0xηη <′+− 2).^(*.2.^21 kkk f (16)

Also since 0>kη , we have

2).^(/.20 kk f xη ′<< (17)

C. Evaluation of the optimal learning rate It is important to determine the magnitude of the variable

step-size kη during the training of adaptive algorithm. Theorem 1 indicates the theory criterion determining the magnitude of the variable step-size kη . If the kη is too large, the algorithm may produce oscillation and is not convergent at all. If it is too small, the algorithm may be slowly convergent with more computation. Since the kη depends on the )( kf x′ , hence it varies with the

derivative evaluation )( kf x′ at kx . In order to make the algorithm be convergent, according to experience, the optimal learning rate should usually be

⎪⎩

⎪⎨⎧

>′′−≤′

=1)(,2).^(/).6.10.1(1)(,5.0

kk

kkopt ff

fxxx

η (18)

D. Modified algorithm In order to accelerate the convergence of the algorithm

proposed, the algorithm proposed (7) was improved as follows: We know from the formula (4) [14]:

)]()()[()(2

1kkkk

kkk

uxfxfxfxfxx

−−′−=+ (19)

This formula is known as the Newton-Secant method with third order. Where )(/)( kkk xfxfu ′= . Since

)(*.*.)(/).(ˆ

kkkk

kkkkkk

fff

xEηxxxxuxx

′+=

′−=−= (20)

and

198

)ˆ()ˆ(ˆ kkk ff xx0E −=−= (21) According to formula (19), we have modified algorithm as follows

)ˆ/().(*.2.^*.1 kkkkkkk f EExEηxx −′−=+ (22)

Algorithm steps: To find a solution to 0)( =xf given one initial

approximation vector Tnxxx ],,,[ 00

201

0 =x

INPUT: 0x ; tolerance Tol ; maximum number of iterations N ; let 0=k ; OUTPUT: approximate solution vector 1+kx or message of failure. Step 1: While Nk ≤ do Steps 2-6

Step 2: set )( kk f xE −= ;2

21 kJ E=

Step 3: compute )( kf x′ and

⎪⎩

⎪⎨⎧

>′′−≤′

=1)(,2).^(/).6.10.1(1)(,5.0

kk

kkopt ff

fxxx

η

Step 4:Estimate: )(*.*.ˆ kkkkk f xEηxx ′+= ;

)ˆ(ˆ kk f xE −= Update weight vector:

)ˆ/().(*.2.^*.1 kkkkkkk f EExEηxx −′−=+ ; Step 5: If TolJ ≤ then OUTPUT ( 1+kx ); (The procedure was successful.) STOP Step 6: Set 1+= kk xx ; 1+= kk Go back to step 2 Step 7: OUTPUT (‘the method failed after N iterations,

=n ’ k ); (The procedure was unsuccessful.)

STOP

III. NUMERICAL EXAMPLES

We have done numerical experiments with different functions and initial approximations. All programs were realized in MATLAB6.5. We compare the observed iterative methods on the following criterions: numerical of iterations and absolute error. Example 1: Consider the algebraic polynomial [14]:

)9)(7)(5)(1)(5()( −−−++= xxxxxxf The table 1 shows the results of the method proposed and

the method [14], where T]9,7,5,1,5[ −−=p .

Example 2: Consider the algebraic polynomial [14]

1)2045cos(2045

23

23

−−−++−−+=

xxxxxxf

The table 2 shows the results of the method proposed and the method [14], where T]2,2,5[ −−=p .

TABLE I. THE RESULTS OF THE EXAMPLE 1

methods 0x k kx Err

Algorithm proposed

[-5.5,-1.4,4.6, 6.6,9.4] 4 [-5,-1,5,7,9] 3.5e-14

[-5.7,-1.8,4.1, 6.2,9.8] 5 [-5,-1,5,7,9] 8.9e-15

Methods in reference

[14]

[-5.5,-1.4, 4.6, 6.6,9.4]

Formula (8) Formula (9)

Formula (10)

3 [-5,-1,5,7,9] 0.000 3 [-5,-1,5,7,9] 2.8e-14 3 [-5,-1,5,7,9] 6.7e-14

[-5.7,-1.8,4.1, 6.2,9.8]

Formula (8) Formula (9)

Formula (10)

3 [-5,-1,5,7,9] 7.4e-09 4 [-5,-1,5,7,9] 0.000 4 [-5,-1,5,7,9] 0.000

MD [14]

[-5.5,-1.4,4.6, 6.6,9.4] 4 [-5,-1,5,7,9] 3.1e-10

[-5.7,-1.8,4.1, 6.2,9.8] 5 [-5,-1,5,7,9] 7.3e-13

EA[14]

[-5.5,-1.4,4.6, 6.6,9.4] 3 [-5,-1,5,7,9] 0.000

[-5.7,-1.8,4.1, 6.2,9.8] 4 [-5,-1,5,7,9] 0.000

* Err = px −kmax

TABLE II. THE RESULTS OF THE EXAMPLE 1

methods 0x k kx Err

Algorithm proposed

[-5.1, -1.9, 1.9] 5 [-5,-2,2] 0.000 exact

[-5.3, -1.7, 1.9] 10 [-5,-2,2] 0.000 exact

Methods in reference

[14]

[-5.1, -1.9, 2.1]

Formula (8) Formula (9)

Formula (10)

4 [-5,-2,2] 1.8e-08 4 [-5,-2,2] 2.0e-13 5 [-5,-2,2] 8.4e-02

[-5.3, -1.7,2.4] Formula (8) Formula (9)

Formula (10)

3 [-5,-2,2] 2.0e-06 3 [-5,-2,2] 4.4e-11 3 [-5,-2,2] 4.9e-04

MD [14] [-5.1, -1.9, 2.1] 6 [-5,-2,2] 2.7e-05 [-5.3, -1.7, 1.9] 5 [-5,-2,2] 2.3e-07

EA[14] [-5.1, -1.9, 2.1] 4 [-5,-2,2] 5.9e+02 [-5.3, -1.7, 1.9] 8 [-5,-2,2] 2.0e+02

* Err= px −kmax

IV. CONCLUSIONS We have suggested a new method of iterative method for

simultaneous extraction of all roots of polynomial. We can see from the table 1 to table 2 that all the results in two examples have very high accuracy with less computation.

199

The results in table 2 illustrate that the method proposed have much higher accuracy than the all methods in reference [14]. In summary, the method proposed will play a very important role in the many fields of science and engineering practice.

REFERENCES

[1] Richard L. Burden, J. Douglas Faires. Numerical ANALYSIS (Seventh Edition).Thomson Learning, Inc. Aug. 2001,pp47-103

[2] Zeng Zhe-zhao, Wen Hui. Numerical Computation (First Edition). Beijing: Qinghua University Press,China, Sept. 2005,pp88-108

[3] Xu Changfa, Wang Minmin and Wang Ninghao. An accelerated iteration solution to nonlinear equation in large scope. J. Huazhong Univ. of Sci. & Tech.(Nature Science Edition), 34(4):122-124, 2006

[4] Markus Lang and Bernhard-Christian Frenzel. Polynomial root finding. IEEE Signal Processing Letters, 1(10):141-143, Oct. 1994

[5] Jenkins, M. A. and J. F. Traub. Algorithm 493 zeros of a real polynomial. ACM Trans. Math. Software, vol.1, p.178, June 1975

[6] H.J. Orchard. The Laguerre method for finding the zeros of polynomials. IEEE Trans. On circuits and Systems, 36(11):1377-1381, Nov. 1989

[7] T.N. Lucas. Finding roots of polynomials by using the Routh array. IEEE Electronics Letters, 32(16):1519-1521, Aug. 1996

[8] T.K. Truong, J.H. Jeng, and I.S. Reed. Fast algorithm for computing the roots of error locator polynomials up to degree 11 in Reed-Solomon decoders. IEEE Trans. Commun., vol.49, pp.779-783, May 2001

[9] Sergei V. Fedorenko, Peter V. Trifonov. Finding roots of polynomials over finite fields. IEEE Trans. Commun. 50(11):1709-1711, Nov. 2002

[10] Cui Xiang-zhao, Yang Da-di and Long Yao. The fast Halley algorithm for finding all zeros of a polynomial. Chinese Journal of engineering mathematics, 23(3):511-517, June 2006

[11] Ehrlich L.W. A modified Newton method for polynomials. Comm ACM, 10: 107-108, 1967

[12] Huang Qing-long. An improvement on a modified Newton method. Numerical mathematics: A Journal of Chinese Universities, 11(4):313-319, Dec. 2002

[13] Huang Qing-long, Wu Jiancheng. On a modified Newton method for simultaneous finding polynomial zeros. Journal on Numerical methods and computer applications(Beijing, China), 28(4):292-298, Dec. 2006

[14] Gyurhan H. Nedzhibov and Milko G. Petkov. A family of iterative methods for simultaneous extraction of all roots of algebraic polynomial. Applied Mathematics and Computation, 162(2005)427-433.

200