Algoritmos mtemáticos sobre mtrices: Representciones especiles de mtrices, Algoritmo de Strssen, multiplicción y tringulción de mtrices Jose Aguilr
Mtriz Mtriz Un mtriz es un rreglo rectngulr de elementos (números reles) ordendos en fils y columns: = n n A 2 23 22 21 1 13 12 11 = mn m m m n A 3 2 1 3 33 32 31 ij es el elemento situdo en l i-ésim fil y en l j- ésim column. L mtriz tienemfils yncolumns. 5 2 1 4 2 5 5 8 1 3 x B = B es un mtriz de orden 2x5.
Mtriz Ls mtrices son de sum importnci en ls ciencis, como l ingenierí, l economí y otrs ciencis plicds. Son útiles pr representr dtos en form ordend, pr modelr problems y resolver sistems de ecuciones, etc. Cotizción del Oro (Londres, US$/oz.) 2-Mr-6 21-Mr-6 22-Mr-6 23-Mr-6 24-Mr-6 9: 553.1 554.1 551.1 551.7 554.2 1: 551.4 548.2 55.1 549.8 556.4 11: 554.2 549.7 55.3 547.9 56.2 12: 555. 55.3 55.7 547.6 559.7
Iguldd de mtrices Dos mtrices A y B del mismo orden son igules si todos sus elementos correspondientes son igules. mxn mxn [ ] [ b ] A = B = ij ij Mtrices especiles: Mtriz fil y mtriz column Ls mtrices fils son ls de orden 1xn y ls mtrices columns son ls de orden mx1 (vectores) [ ] A= 11 12 1 n A es un mtriz fil. B = b b 11 21 b m 1 B es un mtriz column.
Mtrices especiles: Mtriz digonl Mtriz digonl Es l mtriz cudrd A nxn = [ ij ] definid por: = n A λ λ λ λ 3 2 1 ij = λ i si i = j si i j λ i ЄR Mtrices especiles: Mtriz identidd Mtriz identidd Es un cso prticulr de l mtriz digonl, en l cul los elementos de l digonl principl son todos igules 1. = 1 1 1 1 I n
Mtriz cudrd Es quell que tiene el mismo número de fils que de columns, es decirm=n. En estos csos se dice que l mtriz cudrd es de ordenn, y nonxn. Los elementos ij con i = j, o se ii formn l llmd digonl principl de l mtriz cudrd, y los elementos ij coni+j=n+1 l digonl secundri. 11 21 31 n1 12 22 32 n2 13 23 33 n3 1n 2n 3n nn
Mtrices especiles: Mtriz Tringulr Es un mtriz cudrd que tiene nulos todos los elementos que están un mismo ldo de l digonl principl. Mtriz tringulr inferior: es un mtriz cudrd cuyos elementos situdos por encim de l digonl principl son todos igules cero. =, i < ij j Mtriz tringulr superior: es un mtriz cudrd cuyos elementos situdos por debjo de l digonl principl son todos igules cero. =, i > ij j
Mtriz trnspuest Dd un mtriz A mxn = [ ij ], llmremos mtriz trnspuest de A l mtriz que result de intercmbir en A ls fils por columns. Est mtriz estrá denotd por A t nxm = [ ji ]. 2 1 A = 5 3 1 1 t A Propieddes: 2 5 1 = 1 3 1 1 1) 2) 3) 4) ( t ) t A = A t t ( ka ) = ka, k t t ( A ± B ) = A t t t ( A. B ) = B. A ± R B t
Mtrices especiles: Mtriz simétric y Mtriz simétric y ntisimétric ntisimétric 5 1 2 Un mtriz cudrd A se llm simétric si A t = A y ntisimétric si A t = -A. 3 4 1 = 9 6 5 6 4 1 A = 6 2 3 6 7 4 2 7 1 B A es un mtriz simétric, pues A t = A. B es un mtriz ntisimétric, pues B t = -B.
Operciones con mtrices Trnsposición de mtrices Sum y diferenci de mtrices Producto de un mtriz por un número Propieddes simplifictivs Producto de mtrices Mtrices inversibles
Operciones con mtrices Sum y diferenci de mtrices L sum de dos mtrices A=(ij), B=(bij) de l mism dimensión, es otr mtriz S=(sij) de l mism dimensión que los sumndos y con término genérico sij=ij+bij. Por tnto, pr poder sumr dos mtrices ests hn de tener l mism dimensión. L sum de ls mtrices A y B se denot por A+B. Ejemplo Sin embrgo, no se pueden sumr. L diferenci de mtrices A y B se represent por A B, y se define como: A B = A + ( B)
Operciones con mtrices Propieddes de l sum de mtrices 1ª. A + (B + C) = (A + B) + C Propiedd Asocitiv 2ª. A + B = B + A Propiedd conmuttiv 3ª. A + = A ( es l mtriz nul) Mtriz Nul 4ª. L mtriz A, que se obtiene cmbindo de signo todos los elementos de A, recibe el nombre de mtriz opuest de A, y que A + ( A) =.
Operciones con mtrices Producto de un mtriz por un número El producto de un mtriz A = (ij) por un número rel k es otr mtriz B = (bij) de l mism dimensión que A y tl que cd elemento bij de B se obtiene multiplicndo ij por k, es decir, bij = k ij. Ejemplo: El producto de l mtriz A por el número rel k se design por k A. Al número rel k se le llm tmbién esclr, y este producto, producto de esclres por mtrices
Operciones con mtrices Propieddes del producto de un mtriz por un esclr 1ª. k (A + B) = k A + k B Propiedd distributiv 1ª 2ª. (k + h)a = k A + h A Propiedd distributiv 2ª 3ª. k [h A] = (k h) A Propiedd socitiv mixt. 4ª. 1 A = A 1 = A Elemento unidd
Operciones con mtrices Propieddes simplifictivs Si A + C = B + C A = B Si k A = k B A = B si k es distinto de Si k A = h A h = k si A es distinto de
Mtrices por bloques 11 12 13 14 21 22 23 24 31 32 33 34 41 42 43 44 b11 b12 b21 b22 b31 b32 b41 b42
Mtrices por bloques A 11 A 12 B 11 A 11 B 11 +A 12 B 21 A 21 A 22 B 21 A 21 B 11 +A 22 B 21
Algoritmo de Strssen y multiplicción de mtrices Jose Aguilr
Operciones con mtrices Producto de mtrices Dds dos mtrices A y B, su producto es otr mtriz P cuyos elementos se obtienen multiplicndo ls fils de A por ls columns de B. De Es evidente que el número de columns de A debe coincidir con el número de fils de B. Si A tiene dimensión m x n y B dimensión n x p, l mtriz P será de orden m x p: Ejemplo: no se pueden multiplicr
Producto de mtrices Sen A={ ik } un mtriz de dimensión mxn y B={b kj } un mtriz de dimensión nxs. El producto AB es l mtriz C={c ij } de dimensión mxs, donde l entrd c ij de C es el producto punto de l i-ésim fil de A y l j-ésim column deb. Ejemplo: Fil 2 Column 3 2 1 3 8 5 4 12 3 5 8. 6 4 4 = 71 7 8 4 5 2 1 74 (-3)(5)+(5)()+(8)(2)=1 2 84 68 1 1 16 4 16 36 Posición c 23
Producto de mtrices En generl, el elementoc ij está ddo por Por ejemplo, si A 3x4, B 4x7, C 7x3, los productos AB 3x7, BC 4x3 y CA 7x4 están s j m i b c n k kj ik ij 1,..., 1,..., ; 1 = = = = definidos, mientrs que no es posible multiplicr BA, AC y CB. Debe observrse que el producto de mtrices en generl no es conmuttiv, esto es, ún cundo los productos AB y BA están definidos, no es necesrimente cierto queab=ba, como muestr el siguiente ejemplo = 17 8 9 4 5 2 1. 4 3 2 1 = 16 13 4 3 4 3 2 1. 5 2 1
Producto de mtrices Propieddes del producto de mtrices A (B C) = (A B) C (Propiedd socitiv) El producto de mtrices en generl no es conmuttivo. Si A es un mtriz cudrd de orden n se tiene A I n = I n A = A. Dd un mtriz cudrd A de orden n, no siempre existe otr mtriz B tl que A B = B A = I n. Si existe dich mtriz B, se dice que es l mtriz invers de A y se represent por A 1. El producto de mtrices es distributivo respecto de l sum de mtrices, es decir: A (B + C) = A B + A C
Algoritmo secuencil Cso mtrices cudrds. for (i = ; i < n; i++) { for (j = ; i < n; j++) { c[i][j] = ; for (k = ; k < n; k++) { c[i][j] += [i][k] * b[k][j] } } } n 3 multiplicciones y n 3 sums O (n 3 )
Implementción recursiv L división en submtrices sugiere un estrtegi recursiv de divide y vencerás, que puede ser especilmente ventjoso en sistems de memori comprtid. L ventj de est estrtegi es que en cd pso de recursión, los dtos trnsmitidos son más pequeños y están más loclizdos.
Divide y vencers L técnic divide y vencerás (DV) consiste en: Descomponer el problem que hy que resolver en cierto numero de subproblems ms pequeños del mismo tipo. Resolver de form sucesiv e independiente todos estos subproblems. Combinr ls soluciones obtenids pr obtener l solución del problem originl.
Crcterístics de los problems resolubles utilizndo divide y vencerás El problem se puede descomponer en otros del mismo tipo que el originl y de tmño ms pequeño (formulción recursiv). Los subproblems pueden resolverse de mner independiente. Los subproblems son disjuntos, sin solpmiento. L solución finl se puede expresr como combinción de ls soluciones de los subproblems.
function DYC(x) Método generl divide y IF x es suficientemente simple ELSE RETURN lgoritmobsico(x) vencerás descomponer x en x[1],x[2],...,x[s] FOR i ::= 1 TO s ENDFOR y[i] ::= DYC(x[i]) combinr y[i] en un solución y x RETURN y ENDINF
Algoritmo de multiplicción de Strssen Cómo clculr el producto de dos mtrices de dos por dos usndo menos multiplicciones que con el método trdicionl Dds dos mtrices A = 11 12 y B = b 11 b 12 21 22 b 21 b 22 podemos poner
m 1 = ( 21 + 22 11 ) (b 22 - b 12 + b 11 ) m 2 = 11 b 11 m 3 = 12 b 21 m 4 = ( 11 21 ) (b 22 b 12 ) m 5 = ( 21 + 22 ) (b 12 b 11 ) m 6 = ( 12-21 + 11 22 ) b 22 m 7 = 22 ( b 11 + b 22 - b 12 b 21 ) Entonces el producto AB qued: m 2 + m 3 m 1 + m 2 + m 5 + m 6 m 1 + m 2 + m 4 m 7 m 1 + m 2 + m 4 + m 5 Este procedimiento requiere 7 multiplicciones pr cculr el producto de A y B(pero más sums que el método trdicionl!!).
Algoritmo de multiplicción de Strssen Si reemplzmos cd elemento de A y B por un mtriz de n x n, ls fórmuls nteriores nos dn un form de multiplicr dos 2n X 2n mtrices. A prtir de esto tenemos un método recursivo pr clculr el producto de mtrices con n potenci de 2. Este método se puede generlizr tmbién mtrices cuys dimensiones no sen de l form 2n
Tringulción Jose Aguilr
Sistem tringulr superior Los coeficientes por debjo de l digonl principl son ceros 2 1-1 1.5 1.5 1
Tringulción digonl superior Operciones elementles sobre ls fils Obtener ceros por debjo de l digonl principl ij
Índices k i j k: pivote debjo del cul se vn obtener los ceros de l mtriz tringulr i: fil trnsformr que tendrá un cero debjo del pivote en l digonl j: pr recorrer l fil i y hcer ls trnsformciones
Tringulción digonl superior 'tringulr superior Public Sub tpsup(x() As Double, ByVl n1 As Integer, ByVl n2 As Integer) For k = 1 To n1 1 Inici recorrido pivotes For i = k + 1 To n1 Inici recorrido fils m = x(i, k) / x(k, k) múltiplo For j = k To n1 Inici recorrido columns x(i, j) = x(i, j) - m * x(k, j)
Tringulción digonl inferior Operciones elementles sobre ls fils Obtener ceros por encim de l digonl principl ij
Tringulción digonl inferior 11 12 13 14 15 21 22 23 24 25 31 32 33 34 35 41 42 43 44 45 51 52 53 54 55
Tringulción digonl inferior j= 1..n índice columns 11 21 22 31 32 33 41 42 43 44 i = k-1..1 Índice fils 51 52 53 54 55 Pivotes: k=n1..2
Tringulción digonl inferior tringulr inferior Public Sub tpinf(x() As Double, ByVl n1 As Integer, ByVl n2 As Integer) For k = n1 To 2 Step -1 For i = k 1 to To 1 Step -1 m = x(i, k) / x(k, k) For j = 1 To n1 x(i, j) = x(i, j) - m * x(k, j)
Pr tres ecuciones y tres incógnits 2X 1 + X 2 - X 3 = 3 Ec. 1 X 1 + 2X 2 + X 3 = 6 Ec. 2 2X 1 - X 2 + X 3 = 5 Ec. 3
Pr trnsformr A en un mtriz tringulr superior: Eliminr x 1 de ls ecuciones 2 y 3, utilizndo l ecución 1 2X 1 + X 2 - X 3 = 3 X1 + (3/2)X2 + (3/2)X3 = 9/2 X1 + (-2)X2 + (2)X3 = 2 Ec. 1 Ec. 2 = Ec.2 - (1/2) Ec.1 Ec. 3 = Ec.3 (2/2)Ec.1
Trnsformr A en un mtriz tringulr superior Eliminr x 2 de l ecución 3 utilizndo l ecución 2: 2X 1 + X 2 - X 3 = 3 X1 + (3/2)X2 + (3/2)X3 = 9/2 Ec. 1 Ec. 2 X1 + X2 + (4)X3 = 8 Ec. 3 = Ec.3 - (-4/3)Ec.2
Sistem equivlente resultnte: 2X 1 + X 2 - X 3 = 3 Ec. 1 X1 + 1.5 X2 + 1.5 X3 = 4.5 X1 + X2 + 1 X3 = 2 Ec. 2 Ec. 3