[IEEE 2009 International Conference on Computational Intelligence and Security - Beijing, China...
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
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