Articulo de referencia

Método de Aberth

El método de Aberth , o método de Aberth-Ehrlich o método de Ehrlich-Aberth , llamado así por Oliver Aberth [ 1 ] y Louis W. Ehrlich, [ 2 ] es un algoritmo de búsqueda de raíces...

El método de Aberth , o método de Aberth-Ehrlich o método de Ehrlich-Aberth , llamado así por Oliver Aberth [ 1 ] y Louis W. Ehrlich, [ 2 ] es un algoritmo de búsqueda de raíces desarrollado en 1967 para la aproximación simultánea de todas las raíces de un polinomio univariado .

Este método converge cúbicamente, lo que supone una mejora respecto al método de Durand-Kerner , otro algoritmo para aproximar todas las raíces a la vez, que converge cuadráticamente. [ 1 ] [ 2 ] (Sin embargo, ambos algoritmos convergen linealmente en múltiples ceros . [ 3 ] )

Este método se utiliza en MPSolve , que es el software de referencia para aproximar todas las raíces de un polinomio con una precisión arbitraria.

Descripción

Dejarpag(incógnita)=pagnorteincógnitanorte+pagnorte1incógnitanorte1++pag1incógnita+pag0{\displaystyle p(x)=p_{n}x^{n}+p_{n-1}x^{n-1}+\cdots +p_{1}x+p_{0}}sea ​​un polinomio univariado de gradonorte{\displaystyle n}con coeficientes reales o complejos. Entonces existen números complejosz1,z2,,znorte{\displaystyle z_{1}^{*},\,z_{2}^{*},\dots,z_{n}^{*}}, las raíces depag(incógnita){\displaystyle p(x)}, que dan la factorización :

pag(incógnita)=pagnorte(incógnitaz1)(incógnitaz2)(incógnitaznorte).{\displaystyle p(x)=p_{n}\cdot (x-z_{1}^{*})\cdot (x-z_{2}^{*})\cdots (x-z_{n}^{*}).}

Aunque esos números son desconocidos, los límites superior e inferior de sus valores absolutos se pueden calcular a partir de los coeficientes del polinomio. Ahora se puede elegirnorte{\displaystyle n}números distintos en el plano complejo —distribuidos aleatoriamente o uniformemente— de tal manera que sus valores absolutos estén dentro de los mismos límites. (Además, si los ceros son simétricos, los puntos de partida no deben ser exactamente simétricos a lo largo del mismo eje, ya que esto puede impedir la convergencia). [ 1 ] Un conjunto de tales números se denomina aproximación inicial del conjunto de raíces depag(incógnita){\displaystyle p(x)}Esta aproximación se puede mejorar iterativamente utilizando el siguiente procedimiento.

Dejarz1,,znortedo{\displaystyle z_{1},\dots ,z_{n}\in \mathbb {C} }sean las aproximaciones actuales de los ceros depag(incógnita){\displaystyle p(x)}. Luego, números de compensaciónw1,,wnortedo{\displaystyle w_{1},\dots ,w_{n}\in \mathbb {C} }se calculan como

wk=pag(zk)pag(zk)1pag(zk)pag(zk)jk1zkzj,{\displaystyle w_{k}={\frac {\frac {p(z_{k})}{p'(z_{k})}}{1-{\frac {p(z_{k})}{p'(z_{k})}}\cdot \sum _{j\neq k}{\frac {1}{z_{k}-z_{j}}}}},}

dóndepag(zk){\displaystyle p'(z_{k})}es la derivada polinómica depag{\displaystyle p}evaluado en el puntozk{\displaystyle z_{k}}.

El siguiente conjunto de aproximaciones de raíces depag(incógnita){\displaystyle p(x)}es entoncesz1w1,,znortewnorte{\displaystyle z_{1}-w_{1},\dots,z_{n}-w_{n}}La calidad de la aproximación actual se puede medir mediante los valores del polinomio o mediante el tamaño de los desplazamientos.

Conceptually, this method uses an electrostatic analogy, modeling the approximated zeros as movable negative point charges, which converge toward the true zeros, represented by fixed positive point charges.[1] A direct application of Newton's method to each approximated zero will often cause multiple starting points to incorrectly converge to the same root. The Aberth method avoids this by also modeling the repulsive effect the movable charges have on each other. In this way, when a movable charge has converged on a zero, their charges will cancel out, so that other movable charges are no longer attracted to that location, encouraging them to converge to other "unoccupied" zeros. (Stieltjes also modeled the positions of zeros of polynomials as solutions to electrostatic problems.)

Inside the formula of the Aberth method one can find elements of Newton's method and the Durand–Kerner method. Details for an efficient implementation, esp. on the choice of good initial approximations, can be found in Bini (1996).[3]

The updates of the roots may be executed as a simultaneous Jacobi-like iteration where first all new approximations are computed from the old approximations or as a sequential Gauss–Seidel-like iteration that uses each new approximation from the time it is computed.

A very similar method is the Newton-Maehly method. It computes the zeros one after another, but instead of an explicit deflation it divides by the already acquired linear factors on the fly. The Aberth method is like the Newton-Maehly method for computing the last root while pretending you have already found the other ones.[4]

Derivation from Newton's method

The iteration formula is the univariate Newton iteration for the function

F(x)=p(x)j=1;jkn(xzj){\displaystyle F(x)={\frac {p(x)}{\prod _{j=1;\,j\neq k}^{n}(x-z_{j})}}}

If the values z1,,zn{\displaystyle z_{1},\dots,z_{n}} are already close to the roots of p(x){\displaystyle p(x)}, then the rational function F(x){\displaystyle F(x)} is almost linear with a dominant root close to zk{\displaystyle z_{k}} and poles at z1,,zk1,zk+1,,zn{\displaystyle z_{1},\dots,z_{k-1},z_{k+1},\dots,z_{n}} that direct the Newton iteration away from the roots of p(x) that are close to them. That is, the corresponding basins of attraction get rather small, while the root close to zk{\displaystyle z_{k}} has a wide region of attraction.

The Newton step F(x)F(x){\displaystyle {\tfrac {F(x)}{F'(x)}}} in the univariate case is the reciprocal value to the logarithmic derivative

F(x)F(x)=ddxln|F(x)|=ddx(ln|p(x)|j=1;jknln|xzj|)=p(x)p(x)j=1;jkn1xzj{\displaystyle {\begin{aligned}{\frac {F'(x)}{F(x)}}&={\frac {d}{dx}}\ln |F(x)|\\&={\frac {d}{dx}}{\big (}\ln |p(x)|-\sum _{j=1;\,j\neq k}^{n}\ln |x-z_{j}|{\big )}\\&={\frac {p'(x)}{p(x)}}-\sum _{j=1;\,j\neq k}^{n}{\frac {1}{x-z_{j}}}\end{aligned}}}

Thus, the new approximation is computed as

zk=zkF(zk)F(zk)=zk1p(zk)p(zk)j=1;jkn1zkzj,{\displaystyle z_{k}'=z_{k}-{\frac {F(z_{k})}{F'(z_{k})}}=z_{k}-{\frac {1}{{\frac {p'(z_{k})}{p(z_{k})}}-\sum _ {j=1;\,j\neq k}^{n}{\frac {1}{z_{k}-z_{j}}}}}\,,}

which is the update formula of the AberthEhrlich method.

Literature

  1. 1 2 3 4 Aberth, Oliver (1973). "Métodos iterativos para encontrar simultáneamente todos los ceros de un polinomio" . Math. Comp . 27 (122). Mathematics of Computation, Vol. 27, No. 122: 339– 344. doi : 10.2307/2005621 . JSTOR 2005621. Debido a la analogía obvia de la electrostática, este campo puede llamarse el campo de una carga unitaria más ... Para evitar esto, asignamos una carga unitaria menos en cada punto de muestreo. La idea aquí es que cuando un punto de muestreo z, está cerca de un cero simple, el campo de la carga menos en z, debería contrarrestar el de la carga más en el cero, impidiendo que un segundo punto de muestreo converja a este cero. 
  2. 1 2 Ehrlich, Louis W. (1967). "Un método de Newton modificado para polinomios" . Comm. ACM . 10 (2): 107– 108. doi : 10.1145/363067.363115 .
  3. 1 2 Bini, Dario Andrea (1996). "Cálculo numérico de ceros polinomiales mediante el método de Aberth". Numerical Algorithms . 13 (2): 179– 200. Bibcode : 1996NuAlg..13..179B . doi : 10.1007/BF02207694 . S2CID 23899456 . 
  4. ^ Bauer, Florida; Stoer, J. (1962). "Algoritmo 105: Newton Maehly" . Com. ACM . 5 (7): 387– 388. doi : 10.1145/368273.368423 .

Véase también

  • MPSolve: Un paquete para el cálculo numérico de raíces de polinomios. Uso gratuito con fines científicos.