Método de potencia inversa

En Análisis Numérico, el método de potencia inversa es un algoritmo iterativo para calcular los vectores propios de una matriz. El algoritmo permite estimar un autovector cuando ya se conoce una aproximación del autovalor correspondiente. Este método es conceptualmente similar al método de potencia y nació para calcular frecuencias de resonancia en el campo de la mecánica estructural. El método de potencias inversas comienza con una aproximación μ {\displaystyle \ mu } para el valor propio correspondiente al vector propio deseado y un vector b 0 {\displaystyle b_{0}} , elegido al azar o por una aproximación del vector propio. El algoritmo se describe por la iteración donde C k {\displaystyle C_{k}} son algunas constantes generalmente elegidas como C k = ‖ ( A − μ Me ) − 1 b k ‖ {\displaystyle C_{k} = \ / (A - \ mu i)^ {- 1} b_{K}\|} . Dado que los vectores propios se definen a menos de un escalar multiplicativo, la elección de C k {\displaystyle C_{k}} puede ser arbitraria en teoría; C k {\displaystyle C_{k}} se examinan a continuación. En cada iteración, el vector b k {\displaystyle b_ {K}} se multiplica por el inverso de la matriz ( A − μ Me ) − 1 {\displaystyle (A - \ mu i)^ {- 1}} y normalizado. Es exactamente la misma fórmula que el método de potenciales, excepto la sustitución de A {\displaystyle A} con ( A − μ Me ) − 1 {\displaystyle (A - \ mu i)^ {- 1}} . Más aproximación μ {\displaystyle \ mu } se elige cerca del valor propio, más rápido converge el algoritmo; sin embargo, las elecciones incorrectas de μ {\displaystyle \ mu } pueden conducir a una convergencia lenta o a otro vector propio que el deseado. En la práctica, este método se utiliza cuando se conoce una buena aproximación del valor propio, y por lo tanto solo se necesitan unas pocas iteraciones (muy a menudo incluso una).

La idea básica del método power es elegir un vector inicial b {\displaystyle B} (el vector propio aproximado o un vector aleatorio) y calcular iterativamente A b , A 2 b , A 3 b , . . . {\displaystyle Ab, A^{2}b, a^{3}b. } . excepto para un conjunto de mediciones cero, para cada vector inicial, el resultado convergerá a un vector propio correspondiente al valor propio dominante. El método de potencias inversas hace lo mismo con la matriz ( A − μ Me ) − 1 {\displaystyle (A - \ mu i)^ {- 1}} , por lo tanto converge al vector propio correspondiente al valor propio dominante de la matriz ( A − μ Me ) − 1 {\displaystyle (A - \ mu i)^ {- 1}} . Los valores propios de esta matriz son ( λ 1 − μ ) − 1 {\displaystyle (\lambda _{1} - \ mu)^ {- 1}} , … {\displaystyle \ ldots } , ( λ y − μ ) − 1 {\displaystyle (\lambda _{n} - \ mu)^ {- 1}} , donde λ Me {\displaystyle \ lambda _{i}} son los valores propios de A {\displaystyle A} . El mayor de estos valores corresponde al menor de ( λ 1 − μ ) {\displaystyle (\lambda _ {1} - \ mu)} , … {\displaystyle \ ldots } , ( λ y − μ ) {\displaystyle (\lambda _ {n} - \ mu)} . Los vectores propios de A {\displaystyle A} y de ( A − μ Me ) − 1 {\displaystyle (A - \ mu i)^ {- 1}} son los habituales, ya que conclusión: el método converge al vector propio de la matriz A {\displaystyle A} correspondiente al valor propio más cercano a μ {\displaystyle \ mu } . El método de las potencias converge linealmente al límite, más precisamente: D Me s t a y z a ( b Me d y a l y , b M y t o d o P o t y y z y k ) = O ( | λ s o t t o d o m Me y a y t y λ d o m Me y a y t y | k ) , {\displaystyle \ mathrm {Distance} (B^{\mathrm {ideal} }, b_{\mathrm {método~potencias} }^{k}) = O\left (\left / {\frac {\lambda _ {\mathrm {subdominante}}} {\lambda _{\mathrm {dominante}}}} \right / ^{k} \ right),}, entonces el método de potencia inversa tendrá resultados similares: D Me s t a y z a ( b Me d y a l y , b P o t y y z y Me y v y r s y k ) = O ( | μ − λ p Me u ′ v Me c Me y o a μ μ − λ s y c o y d o p Me u ′ v Me c Me y o a μ | k ) En particular, tomando μ = 0 {\displaystyle \ mu = 0} cabe señalar que ( A ) − k b {\displaystyle (A)^ {- k} b} converge al vector propio correspondiente al valor propio de A {\displaystyle A} con el valor absoluto más pequeño. Analizar la tasa de convergencia del método. Cabe señalar que si μ {\displaystyle \ mu } se elige bastante cerca de algún autovalor λ {\displaystyle \ lambda } por ejemplo μ − λ = ϵ {\displaystyle \ mu - \ lambda = \ epsilon } cada iteración mejorará la precisión de | ϵ | / | λ + ϵ − λ p Me u ′ v Me c Me y o a λ | {\displaystyle |\epsilon /| / \lambda +\epsilon \lambda _{\mathrm {más cercano~a~} \ lambda }|} tiempo (Se utiliza que para ϵ {\displaystyle \ epsilon } lo suficientemente pequeño, "más cerca μ {\displaystyle \ mu } " e "más cercano a λ {\displaystyle \ lambda } " son la misma cosa.) Para | ϵ | {\displaystyle / \ epsilon |} lo suficientemente pequeño, es aproximadamente igual a | ϵ | / | λ − λ p Me u ′ v Me c Me y o a λ | {\displaystyle |\epsilon /||\lambda - \lambda _{\mathrm {más cercano~a~} \ lambda} / } {\displaystyle \ mathrm {Distance} (b^{\mathrm {ideal} }, b_{\mathrm {Power~Inverse} }^{k})=O\left (\left|{\frac {\mu - \lambda _{\mathrm {more~close~to~} \mu }}{\mu - \lambda _{\mathrm {second~more~close~to~} \mu }}}\right|^{k}\right). } Esta es la fórmula clave para entender la convergencia del algoritmo. Así que si usted es capaz de encontrar μ {\displaystyle \ mu } tal que ϵ {\displaystyle \ epsilon } será lo suficientemente pequeño, entonces unas pocas interacciones serán suficientes. El algoritmo requiere resolver un sistema lineal o calcular la inversa de una matriz. Para matrices no estructuradas (no dispersas, por Toeplitz,. .) esto requiere O ( y 3 ) {\displaystyle O (n^{3})} operación.

El método está definido por la fórmula: hay, sin embargo, múltiples opciones para su implementación. Puede reescribir la fórmula de la siguiente manera: subrayando eso para encontrar la siguiente aproximación b k + 1 {\displaystyle b_{K+1}} puede resolver un sistema de ecuaciones lineales. Hay dos opciones: puede elegir un algoritmo que resuelva un sistema lineal, o puede calcular la inversa ( A − μ Me ) − 1 {\displaystyle (A - \ mu i)^ {- 1}} y luego aplicarlo al vector. Ambas soluciones tienen complejidad O ( y 3 ) {\displaystyle O (n^{3})} el número exacto depende del método elegido. La elección también depende del número de iteraciones. Ingenuamente, si en cada iteración se resuelve un sistema lineal, la complejidad será K ⋅ O ( y 3 ) {\displaystyle K \ cdot O (n^{3})} , donde K {\displaystyle K} es el número de iteraciones; del mismo modo, calcular la matriz inversa y aplicarla a cada iteración tiene complejidad K ⋅ O ( y 3 ) {\displaystyle K \ cdot O (n^{3})} . Se observa, sin embargo, que si la estimación del valor propio μ {\displaystyle \ mu } se mantiene constante, para ambos métodos puede reducir la complejidad a O ( y 3 ) + K ⋅ O ( y 2 ) {\displaystyle o (n^{3}) + K \ cdot O (n^{2})} . Calcular el inverso una vez almacenándolo para aplicarlo a cada iteración es complejo O ( y 3 ) + K ⋅ O ( y 2 ) {\displaystyle o (n^{3}) + K \ cdot O (n^{2})} . Almacenar una descomposición de ( A − μ Me ) {\displaystyle (A - \ mu i)} y el uso del método de sustitución para resolver el sistema de ecuaciones sigue siendo de complejidad O ( y 3 ) + K ⋅ O ( y 2 ) {\displaystyle o (n^{3}) + K \ cdot O (n^{2})} . Invertir la matriz típicamente tiene un costo inicial más alto, pero más bajo con cada iteración. Si es necesario hacer muchas iteraciones (o cuál, pero para muchos vectores propios), entonces puede ser sabio traer la primera matriz en la forma superior de Hessenberg (para matrices simétricas es la forma tridiagonal), que cuesta 10 3 y 3 + O ( y 2 ) {\displaystyle {\begin{matrix} {\frac {10} {3}}\end{matrix}} n^{3} + O (n^{2})} operaciones aritméticas utilizando una técnica basada en en la transformación del cabeza de familia, con una secuencia finita de similitudes ortogonales, como si se tratara de una descomposición QR en ambos lados En contraste, resolver el sistema de ecuaciones lineales tiene un costo inicial más bajo, pero requiere más operaciones en cada iteración. (Para descomposiciones QR, las rotaciones de cabeza de familia se multiplican solo a la izquierda, pero en el caso de la forma de Hessenberg se multiplica tanto a la derecha como a la izquierda). Siempre usando esta técnica, para matrices simétricas este procedimiento cuesta 4 3 y 3 + O ( y 2 ) {\displaystyle {\begin{matrix} {\frac {4} {3}}\end{matrix}} n^{3} + O (n^{2})} operación. Para matrices tridiagonales, la solución al sistema lineal para matrices cuesta O ( y ) {\displaystyle O (n)} operaciones, por lo que la complejidad crece a medida que O ( y 3 ) + K ⋅ O ( y ) {\displaystyle o (n^{3}) + K \ cdot O (n)} , donde K {\displaystyle K} es el número de aplicaciones, que es mejor que la inversión directa. Sin embargo, para unas pocas iteraciones tal transformación no es práctica. También las transformaciones en la forma de Hessenberg implican raíces cuadradas y divisiones, que no son universalmente soportadas por hardware. En los procesadores de propósito general (por ejemplo, fabricados por Intel), el tiempo de ejecución de la suma, multiplicación y división es aproximadamente el mismo. Sin embargo, en hardware integrado y/o de baja potencia (DSP, FPGA, ASIC), la división puede no ser compatible, por lo que debe evitarse. Opción C k = 2 y k {\displaystyle C_{k} = 2^{n_{K}}} , permite divisiones rápidas sin soporte de hardware explícito, ya que la división para una potencia de dos puede implementarse como un cambio de bits (para aritmética de punto fijo) o con resta de k {\displaystyle k} del exponente (para aritmética de coma flotante). Cuando se implementa el algoritmo con la representación de punto fijo, la elección de la C k {\displaystyle C_{k}} es especialmente importante. Valores pequeños conducirán a un rápido crecimiento de la norma de b k {\displaystyle b_ {K}} y luego desbordar; grandes valores de C k {\displaystyle C_{k}} causará el acercamiento de b k {\displaystyle b_ {K}} cero.

La aplicación principal del método es la situación en la que se tiene una aproximación de un valor propio y se tiene que encontrar la estimación del vector propio correspondiente. En tal situación, el método de potencias inversas es el algoritmo principal a usar. Típicamente este método se usa en combinación con el otro para aproximar los valores propios: el ejemplo estándar es el algoritmo de bisección para los valores propios; otro ejemplo es el método de quoziete de Rayleigh, que en realidad es el método de potencia inversa con el uso de la relación del Rayleigh al vector anterior como una aproximación del valor propio. Hay algunas situaciones en las que solo se pueden usar ciertos métodos, sin embargo, son algo marginales. Uno puede estimar fácilmente el valor propio dominante para cada matriz. Para cada norma inducida, es cierto que ‖ A ‖ ≥ | λ | , {\displaystyle \left\ / a \ right \ / \ geq / \ lambda |, } para cada valor propio λ {\displaystyle \ lambda } . Por lo tanto, tomando la norma de la matriz como una aproximación del valor propio, se puede ver que el método converge al vector propio dominante. En algunas aplicaciones en tiempo real, necesita encontrar vectores propios con una velocidad de millones de matrices por segundo. En tales aplicaciones, típicamente la estadística de la matriz se conoce a priori y uno puede tomar como un valor propio aproximado el valor promedio de este último para una matriz de muestra grande. Aún mejor, se puede calcular el promedio de las relaciones entre los valores propios y la traza o norma de la Matriz y estimar el valor propio promedio gracias al valor promedio de esta relación. Claramente, este método solo se puede usar discretamente y solo cuando una precisión muy alta no es crucial. Este enfoque de determinar un valor propio promedio se puede combinar con uno de los otros métodos para evitar errores excesivamente grandes.

Álgebra lineal numérica

Matriz

Coxeter group

En matemáticas, un grupo de Coxeter es un grupo abstracto que admite una descripción formal en términos de simetrías de espejo. De hecho, los grupos de Coxeter ...

Español de Gerschgorin

En matemáticas, los teoremas de Gershgorin son algunos teoremas sobre la localización de valores propios de una matriz en el campo complejo. Su nombre se debe a...

Teoría de grupos

Álgebras de Lie

Simetría

Teorema

Esta página se basa en el artículo de Wikipedia: Fuente, Autores, Licencia Creative Commons Reconocimiento-CompartirIgual.
This page is based on the Wikipedia article: Source, Authors, Creative Commons Attribution-ShareAlike License.
contactos
Política de privacidad , Descargos de responsabilidad