4. Álgebra En esta sección veremos como la descomposición de Cholesky nos ofrece una forma rápida y eficaz de ortonormalizar una base. Comprobaremos que el proceso es equivalente al algoritmo de ortogonalización de Gram-Schmidt. 4.1. Ortogonalización mediante la descomposición de Cholesky Veremos es procedimiento basándonos en un ejemplo numérico. Analizaremos el problema paso a paso. 4.1.1. La base no ortogonal y la matriz de su métrica a1 a Consideremos un conjunto de n funciones de base a = 2 definidas en un M a n cierto intervalo y pertenecientes a un espacio normado donde se ha definido un producto escalar s ij = ai a j entre cualquier par de funciones. Entonces se puede construir la matriz de la métrica S={sij} como a1 a1 a a S = aa T = 2 1 M a a n 1 a1 a2 a2 a2 M L L O an a2 L . an an a1 an a2 an M 4.1.2. El cambio de base Nos podemos preguntar si existe un cambio de base que transforme a la base a en otra b que sea ortonormal. La respuesta es afirmativa y existen infinitas posibilidades de transformación. Para acotar el problema supondremos que la matriz que codifica el cambio de base tiene estructura de matriz triangular inferior. Llamamos a esta matriz C. Puesto que un cambio de base siempre es reversible y tanto se puede transformar de la base a a la b como desde la base b a la base a, también existirá la inversa C-1, que será una matriz triangular inferior: 4-1 c11 C = c12 c 13 0 c 22 c 23 0 0 c 33 ⇔ C −1 (−1) c11 (−1) = c12 (−1) c13 0 ( −1) c 22 ( −1) c 23 0 0 . (−1) c 33 Así pues, las nuevas funciones de base se obtienen aplicando la transformación lineal siguiente: b = Ca. Multiplicando por C -1 a la izquierda de la ecuación anterior obtenemos: a = C -1b. 4.1.3. La nueva métrica En el contexto de la nueva base b, imponemos que la nueva matriz de la métrica sea la matriz identidad (conjunto ortonormalizado): I = bbT = (Ca )(Ca ) = Caa T C T = CSC T . T De aquí, aislando la matriz S, descubriremos cual es la naturaleza de la matriz C: C -1 C -T = S. 4.1.4. La relación con el proceso de descomposición de Cholesky Definiendo la matriz triangular superior T = C -T entonces ¤ TT = C -1 ¤ T -T = C, TTT = S y vemos que la matriz T proviene de la descomposición de Cholesky de S. Esta última ecuación se corresponde con la formulación de la descomposición de Cholesky dada en la sección anterior. 4.1.5. Un ejemplo numérico 1 Consideremos tres funciones de base a = x definidas en el intervalo [0,1]. x2 Definiendo el producto escalar de dos de estas funciones u i v como la integral 4-2 1 u v = ∫ u (x )v (x )dx , 0 entonces construimos la matriz de la métrica S={sij} de la base B: 1 s11 = 1 1 = ∫ dx = 1 0 1 s 21 = s12 = 1 x = ∫ x dx = 0 1 2 1 s 31 = s13 = 1 x 2 = ∫ x 2 dx = 0 1 y S = aa T = 21 1 3 1 2 1 3 1 4 1 3 1 4 1 5 , 1 s 22 = x x = ∫ x 2 dx = 0 1 3 , 1 3 1 s 32 = s 23 = x x 2 = ∫ x 3 dx = 0 1 1 1, s 33 = x 2 x 2 = ∫ x 4 dx = 5 4 0 . La descomposición de Cholesky de esta matriz S ya la realizamos en la lección anterior. La matriz triangular superior era 1 T = 0 0 1 2 1 2 3 1 6 5 1 3 1 2 3 0 y su inversa T −1 1 − 3 = 0 2 3 0 0 5 −6 5. 6 5 En relación al cambio de base, hemos dicho que C=T -T. Entonces 1 C = − 3 5 0 2 3 −6 5 0 0 6 5 y el nuevo conjunto de base ortonormalizado es el siguiente 1 b = Ca = − 3 5 0 2 3 −6 5 1 0 1 3 (2 x − 1) 0 x = 2 6 5 x 5 1 − 6 x + 6 x 2 ( ) Se puede comprobar (aplicando el producto escalar definido más arriba) como las nuevas funciones de base están realmente normalizadas y son ortogonales entre ellas. 4-3 4.2. Proceso de ortogonalización de Gram-Schmidt El proceso de ortonormalización de Gram-Schmidt es equivalente al que se acaba de describir en la sección anterior. Para comprobar esto, basta considerar la naturaleza del último producto matricial que se ha visto: 1 b = Ca = − 3 5 0 2 3 −6 5 1 0 1 3 (2 x − 1) 0 x = 2 6 5 x 5 1 − 6 x + 6 x 2 ( . ) Aquí vemos que • La primera función de base del conjunto b simplemente se multiplica por una constante (elemento 1-1 de la matriz C). En realidad esta constante la normaliza. En el ejemplo presentado arriba esta constante es la unidad debido a que la función a1 ya estaba normalizada inicialmente. • La segunda función se multiplica por una constante y se le suma la primera también multiplicada por un escalar. • La tercera función, b3, es la original a3 escalada y sumada a una combinación lineal de las dos anteriores. En general, una nueva función ortonormal a las anteriores se construye a partir de la original que ocupa la misma posición en la base ordenada: se la multiplica por un escalar y se le suma una combinación lineal adecuada de las anteriores funciones no ortogonalizadas. Este proceso se codifica a través del producto por una matriz triangular. La formulación alternativa equivalente es la siguiente: dado un conjunto de base ordenado, a = {a1 a2 L an } , un nuevo conjunto ortogonalizado b = {b1 b2 L bn } se puede obtener de la siguiente manera: b1 ' = a1 ∧ k −1 a k bi i =1 bi bi bk ≥ 2 ' = a k − ∑ bi En esta formulación, mediante el sumatorio se consigue eliminar del vector original ak todas las proyecciones que tiene sobre vectores bi‘ que ya se han definido anteriormente. Al final, si cada vector bk‘ se normaliza, obteniéndose el vector bk del conjunto ortonormalizado. El proceso de la descomposición de Cholesky realiza todas estas tareas de forma compacta y automáticamente. Se pueden establecer algunas asociaciones heurísticas: en la fórmula anterior, los productos escalares se asocian al cálculo de la matriz S, la suma para i=1 hasta k-1 esta ligada al hecho de que la matriz del cambio de base es triangular y, finalmente, el 4-4 proceso de normalización de cada vector b’ ya está codificado en la inversión de la matriz T. Ejercicio 1. Confeccionar un programa que, dada una matriz de Gram (de la métrica) de una base, mediante la descomposición de Cholesky obtenga el cambio de base que debe realizarse para obtener una nueva base ortonormalizada. 4-5