Estás en > Matemáticas y Poesía > Matemáticas

MONOGRAFIAS VARIAS
 

METODO PARA EL CALCULO DE VALORES Y VECTORES PROPIOS DOMINANTES DE UNA MATRIZ - PARTE III

Continúa en PARTE IV


Viene de PARTE I PARTE II

Si P es la matriz de dimensión r x r que diagonaliza a S,tenemos (42) :
Cálculo de autovalores
Y en (39) podemos hacer (43) :
Cálculo de autovalores
Y la matriz W de dimensión n x r estará formada por los r vectores propios asociados a los r valores propios dominantes de A.

Para el cálculo de los valores propios de S deberá aplicarse alguna técnica de las ya conocidas (téngase en cuenta que el objetivo era obtener unos pocos valores y vectores propios de A, por lo que la dimensión de S es pequeña comparada con la de A), pero podemos dar una expresión general para sus vectores propios en función de los valores propios.

Siendo si un valor propio de S tenemos (44) :
Cálculo de autovalores
Tomando la coordenada xr = 1 resulta (45) :

Cálculo de autovalores
Finalmente, agrupando denominadores, podemos expresar la componente k-ésima del vector propio asociado al valor propio si en la forma (46) :
Cálculo de autovalores
Este segundo algoritmo es más rápido pero también más inestable, debido a que entre las operaciones a realizar está la de invertir matrices de Vandermonde cuyo determinante es nulo si se tiene Cálculo de autovalores[12]. Los algoritmos según los métodos de Lanczos y Arnoldi están también basados en iteraciones sobre subespacios de Krilov.

CONVERGENCIA

Esta claro que, en general, se trata de alcanzar la convergencia en un proceso iterativo de la forma (47) :
Cálculo de autovalores
por lo que podemos tomar como parámetro de convergencia el dado por (48) :
Cálculo de autovalores
o, mejor (49) :
Cálculo de autovalores
que es equivalente pero más ilustrativo.

Cuando el valor de Cálculo de autovalores sea menor que una tolerancia prefijada, se habrá conseguido la convergencia.

Una ventaja fundamental de utilizar la ecuación (49) como criterio de convergencia es la de evitar la resolución del problema de valores propios en cada iteración.

DESCRIPCION PRACTICA DEL METODO

Los pasos a seguir para una aplicación práctica inicial del método serían :

    1. Iniciar el proceso de iteración tomando un conjunto de R vectores linealmente independientes.

    2. Obtener la matriz Cálculo de autovalores, multiplicando la matriz problema por Cálculo de autovalores. Aplicar el factor de escala.

    3. Calcular las matrices Cálculo de autovaloresy, a partir de ellas, obtener la matriz Cálculo de autovalores

    4. Determinar el valor del factor de convergencia, de acuerdo con la ecuación (49).

    5. Si el valor del parámetro de convergencia es menor que la tolerancia establecida
      Cerrar el proceso

      En otro caso,

      Volver al paso 2.
En la práctica, el esquema expuesto, presenta dos deficiencias que requieren su mejora :

Por una parte, aun en el caso de condiciones de convergencia favorables Cálculo de autovalores,debido a los errores de redondeo, es difícil llegar a obtener una precisión superior a la sexta cifra decimal con una implementación directa del mismo.

Por otra, cuando las condiciones de convergencia no son favorables,Cálculo de autovalores , el esquema no aprovecha adecuadamente la información ofrecida por la evolución del factor de convergencia.

El primero de los problemas queda resuelto con la introducción de un paso intermedio que mejora significativamente la precisión alcanzada mediante la corrección, cada cierto número de iteraciones, del grupo de vectores de iteración, multiplicándolo por un factor matricial deducido de la ecuación (25).

La segunda cuestión puede solventarse pasando a extraer un número de valores propios para el que se tenga una velocidad de convergencia mas favorable.

Así pues, un esquema más efectivo sería :
    1. Iniciar el proceso de iteración tomando un conjunto de R vectores linealmente independientes.

    2. Obtener la matriz Cálculo de autovalores multiplicando la matriz problema por Cálculo de autovalores.

    3. Calcular las matrices Cálculo de autovalores y, a partir de ellas, obtener la matriz Cálculo de autovalores

    4. Determinar el valor del factor de convergencia, de acuerdo con la ecuación (49).

    5. Si el índice de iteración es múltiplo del parámetro de reiniciación,

      5.1. Corregir el grupo de vectores de iteración transformándolo mediante un factor matricial deducido de la ecuación (25) y tomar como siguiente grupo de iteración el resultado obtenido.

      5.2. Si a partir de un valor dado del índice de iteración, la velocidad de convergencia del proceso es menor que un límite dado,

        5.2.1. Pasar a extraer p-1 valores propios.

      En otro caso,

      5.3. Tomar como siguiente grupo de vectores de iteración el resultado de la iteración anterior.

    6. Aplicar el factor de escala.

    7. Si el valor del parámetro de convergencia es menor que la tolerancia establecida,

      Cerrar el proceso

      En otro caso,

      Volver al paso 2.
Mediante la implementación en Mathemática [16] de un algoritmo que desarrolla el segundo de los esquemas expuestos, puede obtenerse la representación gráfica de la evolución de Cálculo de autovalores y dos parámetros auxiliares (su valor mínimo y su media acumulada) en función del número de iteraciones, para el problema de la extracción de un conjunto p de valores propios de diversas matrices.

ALGORITMO

Comentario : Extracción de la matriz sigma que contiene los R valores propios de mayor módulo de una matriz arbitraria A, reiniciando cada q veces el grupo de vectores de iteración.

INICIAR ALGORITMO
    Solicitar la matriz problema, A, de dimensión n

    Solicitar el número de valores propios a extraer, R (con R << n)
INICIAR VARIABLES
    Parámetro de tolerancia, (Tol) ;

    Valor límite mínimo del índice de iteración para pasar a extraer p-1 valores propios, (VL);

    Parámetro de reiniciación, (q)

    Número de ciclos de iteración, (CL) ;

    número máximo de iteraciones, (MXI)

    Parámetro de convergencia, (X) ;

    Valor mínimo de X, (MN)

    Número de iteraciones que se mantiene un mínimo local de X, (CMX)

    Suma acumulada de X, (M) ; Valor medio de X, (MC)

    Matriz inicial de iteración, (M0), formada por R vectores linealmente independientes.

    Matriz auxiliar (Mi) para la extracción de la matriz Sigma que contiene los p valores propios dominantes, formada por R vectores linealmente independientes.

    Valor inicial de la matriz que contiene los p valores propios dominantes, (S)

    Listas para el almacenamiento de los valores de X, MC y MN con objeto de su representación gráfica frente al número de iteraciones, (TX), (TM), (TN)
Comentario : Los vectores que forman M0 y Mi, son tomados aleatoriamente.

INICIAR ITERACIÓN
    Almacenar en la variable (Esc) el máximo de los valores absolutos de los elementos de (M0), para aplicarlo como factor de escala para evitar desbordamientos,

    Aplicar A sobre M0 y almacenar el resultado en M1,

    Almacenar en una variable auxiliar, SInt, el valor actual de la matriz S,

    Obtener el valor de S por aplicación de la ecuación (27),

    Almacenar en X el valor dado por la ecuación (30)

    Actualizar los valores de M y MC,

    Si el valor actual de X es menor que MN,

      igualar MN a X, poner a 1 el contador CMX,

      En otro caso,
        Incrementar en 1 el contador CMX,

    Si el índice de iteración, I, es múltiplo de q,

    Reiniciar la matriz de iteración, poniendo M0 = M1*Traspuesta[Base de Jordan asociada a los valores propios de la matriz S, de acuerdo a la ecuación (25),

    Actualizar las listas para las gráficas de X, M y MN

    Si I es igual o mayor que VL y el valor absoluto de la diferencia entre la cota actual de MC y su valor en la (10*q)-ésima iteración anterior es menor o igual que 0.01,

      Pasar a extraer p-1 valores propios

      En otro caso,
        Continuar

      En otro caso,

        Reiniciar la matriz de iteración poniendo M0 = M1
    Reasignar a M0 el valor dado por Esc * M0.

    Si MN se ha mantenido mas de 125 iteraciones y el valor actual del parámetro de convergencia, X, es menor que tol,
      Calcular los valores propios de S y almacenarlos en la variable auxiliar, ESO

      Marcar que se ha alcanzado la convergencia exigida

      Salir del proceso de iteración.

      En otro caso,
        Incrementar I en una unidad

    Si el índice de iteración, I, es menor que MXI

      Volver a INICIAR ITERACION

      En otro caso
        Salir del proceso de iteración

CERRAR ITERACION
    Representar gráficamente, frente al índice de iteración, X, MC y MN

    Si se ha alcanzado la convergencia exigida
    Imprimir la variable ESO que contiene los valores propios deseados

    En otro caso

      Indicar que no se ha alcanzado la convergencia deseada

    (Opcionalmente) Calcular los valores propios de S e imprimirlos
CERRAR ALGORITMO.

Continuar leyendo en ... PARTE I - PARTE II - PARTE IV

OTROS CONTENIDOS EN EL SITIO MATEMÁTICAS Y POESÍA

La teoría sobre el cálculo de valores propios o autovalores de matrices, tiene plicaciones en diversas ramas de la ciencia. Así, disciplinas tales como la Química, la Economía, la Teoria de juegos y otros campos de la ciencia y las ingenierías hacen uso de sus resultados.

Valores propios dominantes
Método de cálculo para la determinación de valores propios dominantes en matrices reales.

El trabajo relativo al método para el cálculo de los autovalores dominantes de una matriz de gran dimensión está estructurado en cuatro capítulos.
Energías de enlace
Aplicaciones de la teoría sobre matrices sigma al cálculo de energías de enlace.

Valores propios en matrices simétricas
Localización de autovalores en matrices simétricas.

Teorema de Perrón Frobenius
Este teorema tiene aplicaciones en teoría de juegos y economía.

Valores propios en grafos
Las matrices de adyacencia asociadas a grafos pueden ser sigma reducibles.

EJERCICIOS Y PROBLEMAS RESUELTOS

MANUALES Y MONOGRAFIAS

Búsqueda personalizada