SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
0.1       M´todo de Gauss-Seidel
           e
Los m´todos de Gauss y Cholesky hacen parte de los m´todos directos o
      e                                                 e
finitos. Al cabo de un n´ mero finito de operaciones, en ausencia de errores
                        u
de redondeo, se obtiene x∗ soluci´n del sistema Ax = b.
                                 o
El m´todo de Gauss-Seidel hace parte de los m´todos llamados indirectos o
      e                                                e
iterativos. En ellos se comienza con x = (x1 , x0 , ..., x0 ), una aproximaci´n
                                             0       0
                                                        2    n                   o
inicial de la soluci´n. A partir de x0 se construye una nueva aproximaci´n de
                    o                                                        o
la soluci´n, x1 = (x1 , x1 , ..., x1 ). A partir de x1 se construye x2 (aqu´ el su-
         o            1   2        n                                       ı
per´ındice indica la iteraci´n y no indica una potencia). As´ sucesivamente se
                             o                                   ı
construye una sucesi´n de vectores {xk }, con el objetivo, no siempre garan-
                       o
tizado, de que
                                       lim xk = x∗ .
                                  k→∞

Generalmente los m´todos indirectos son una buena opci´n cuando la matriz
                    e                                   o
es muy grande y dispersa o rala (sparse), es decir, cuando el n´ mero de
                                                                  u
                                                2
elementos no nulos es peque˜ o comparado con n , n´ mero total de elementos
                           n                       u
de A. En estos casos se debe utilizar una estructura de datos adecuada que
permita almacenar unicamente los elementos no nulos.
                   ´
En cada iteraci´n del m´todo de Gauss-Seidel, hay n subiteraciones. En la
                 o       e
primera subiteraci´n se modifica unicamente x1 . Las dem´s coordenadas x2 ,
                    o            ´                       a
x3 , ..., xn no se modifican. El c´lculo de x1 se hace de tal manera que se
                                 a
satisfaga la primera ecuaci´n.
                           o

                        b1 − (a12 x0 + a13 x0 + · · · + a1n x0 )
                                   2        3                n
                 x1 =
                  1                                              ,
                                         a11
                 x1
                  i   = x0 , i = 2, ..., n.
                         i

En la segunda subiteraci´n se modifica unicamente x2 . Las dem´s coorde-
                             o             ´                         a
nadas x1 , x3 , ..., xn no se modifican. El c´lculo de x2 se hace de tal manera
                                            a
que se satisfaga la segunda ecuaci´n.
                                    o

                        b2 − (a21 x1 + a23 x1 + · · · + a2n x1 )
                                   1         3               n
                 x2
                  2   =                                          ,
                                         a22
                 x2
                  i   = x1 , i = 1, 3, ..., n.
                         i

As´ sucesivamente, en la n-´sima subiteraci´n se modifica unicamente xn .
  ı                        e                  o              ´
Las dem´s coordenadas x1 , x2 , ..., xn−1 no se modifican. El c´lculo de xn se
        a                                                     a

                                         1
hace de tal manera que se satisfaga la n-´sima ecuaci´n.
                                         e           o
                                 n−1       n−1             n−1
                      bn − (an1 x1 + an3 x3 + · · · + ann xn )
               xn =
                n                                              ,
                                         ann
               xn
                i
                       n−1
                    = xi , i = 1, 2, ..., n − 1.

Ejemplo 0.1. Resolver
                                                  
                  10        2 −1 0      x1          26
               1                     x2
                           20 −2 3             −15 
                                              =     
               −2          1 30 0   x3        53 
                   1        2  3 20     x4          47

partiendo de x0 = (1, 2, 3, 4).

                26 − (2 × 2 + (−1) × 3 + 0 × 4)
         x1 =
          1                                     = 2.5,
                                10
         x1   = (2.5, 2, 3, 4).
                −15 − (1 × 2.5 + (−2) × 3 + 3 × 4)
         x2
          2   =                                     = −1.175,
                                  20
         x2   = (2.5, −1.175, 3, 4).
                53 − (−2 × 2.5 + 1 × (−1.175) + 0 × 4)
         x3
          3   =                                         = 1.9725,
                                    30
         x3   = (2.5, −1.175, 1.9725, 4).
                47 − (1 × 2.5 + 2 × (−1.175) + 3 × 1.9725)
         x4
          4   =                                            = 2.0466,
                                     20
         x4   = (2.5, −1.175, 1.9725, 2.0466).

Una vez que se ha hecho una iteraci´n completa (n subiteraciones), se utiliza
                                      o
el ultimo x obtenido como aproximaci´n inicial y se vuelve a empezar; se
    ´                                    o
calcula x1 de tal manera que se satisfaga la primera ecuaci´n, luego se calcula
                                                            o
x2 ... A continuaci´n est´n las iteraciones siguientes para el ejemplo anterior.
                   o     a

                       3.0323   −1.1750    1.9725   2.0466
                       3.0323   −1.0114    1.9725   2.0466
                       3.0323   −1.0114    2.0025   2.0466
                       3.0323   −1.0114    2.0025   1.9991


                                       2
3.0025   −1.0114     2.0025   1.9991
                     3.0025   −0.9997     2.0025   1.9991
                     3.0025   −0.9997     2.0002   1.9991
                     3.0025   −0.9997     2.0002   1.9998

                     3.0000   −0.9997     2.0002   1.9998
                     3.0000   −1.0000     2.0002   1.9998
                     3.0000   −1.0000     2.0000   1.9998
                     3.0000   −1.0000     2.0000   2.0000

                     3.0000   −1.0000     2.0000   2.0000
                     3.0000   −1.0000     2.0000   2.0000
                     3.0000   −1.0000     2.0000   2.0000
                     3.0000   −1.0000     2.0000   2.0000

Te´ricamente, el m´todo de Gauss-Seidel puede ser un proceso infinito. En
   o               e
la pr´ctica el proceso se acaba cuando de xk a xk+n los cambios son muy
     a
peque˜ os. Esto quiere decir que el x actual es casi la soluci´n x∗ .
      n                                                       o
Como el m´todo no siempre converge, entonces otra detenci´n del proceso,
            e                                               o
no deseada pero posible, est´ determinada cuando el n´ mero de iteraciones
                             a                         u
realizadas es igual a un n´ mero m´ximo de iteraciones previsto.
                          u       a
El siguiente ejemplo no es convergente, ni siquiera empezando de una aprox-
imaci´n inicial muy cercana a la soluci´n. La soluci´n exacta es x = (1, 1, 1).
      o                                o            o
Ejemplo 0.2. Resolver
                                      
                    −1  2 10    x1      11
                  11 −1 2   x2  =  12 
                      1 5 2     x3       8
partiendo de x0 = (1.0001, 1.0001, 1.0001).

                           1.0012 1.0001 1.0001
                           1.0012 1.0134 1.0001
                           1.0012 1.0134 0.9660

                          0.6863  1.0134 0.9660
                          0.6863 −2.5189 0.9660
                          0.6863 −2.5189 9.9541

                                      3
83.5031 −2.5189      9.9541
                      83.5031 926.4428     9.9541
                      83.5031 926.4428 −2353.8586

Algunos criterios garantizan la convergencia del m´todo de Gauss-Seidel.
                                                       e
Por ser condiciones suficientes para la convergencia son criterios demasiado
fuertes, es decir, la matriz A puede no cumplir estos requisitos y sin embargo
el m´todo puede ser convergente. En la pr´ctica, con frecuencia, es muy
     e                                        a
dispendioso poder aplicar estos criterios.
Una matriz cuadrada es de diagonal estrictamente dominante por filas
si en cada fila el valor absoluto del elemento diagonal es mayor que la suma
de los valores absolutos de los otros elementos de la fila,
                                        n
                           |aii | >                 |aij | , ∀i.
                                      j=1,j=i


Teorema 0.1. Si A es de diagonal estrictamente dominante por filas, en-
tonces el m´todo de Gauss-Seidel converge para cualquier x 0 inicial.
           e

Teorema 0.2. Si A es definida positiva, entonces el m´todo de Gauss-Seidel
                                                    e
                         0
converge para cualquier x inicial.

Te´ricamente el m´todo de Gauss-Seidel se deber´ detener cuando xk −
   o               e                             ıa
x∗ < ε. Sin embargo la condici´n anterior necesita conocer x∗ , que es pre-
                                o
cisamente lo que se est´ buscando. Entonces, de manera pr´ctica el m´todo
                       a                                 a           e
de GS se detiene cuando xk − xk+n < ε.
Dejando de lado los super´ındices, las f´rmulas del m´todo de Gauss-Seidel se
                                        o            e
pueden reescribir para facilitar el algoritmo y para mostrar que xk − x∗ y
 xk − xk+n est´n relacionadas.
               a
                                                n
                                 bi −                  aij xj
                                        j=1,j=i
                       xi ←                                     ,
                                            aii
                                            n
                                 bi −               aij xj + aii xi
                                         j=1
                       xi ←                                           ,
                                                    aii

                                            4
bi − Ai· x
                          xi ← x i +                .
                                             aii
Sean

                                 ri = bi − Ai· x,
                                       ri
                                 δi =     ·
                                      aii
El valor ri es simplemente el error, residuo o resto que se comete en la i-´sima
                                                                           e
ecuaci´n al utilizar el x actual. Si ri = 0, entonces la ecuaci´n i-´sima se
       o                                                          o    e
satisface perfectamente. El valor δi es la modificaci´n que sufre xi en una
                                                        o
iteraci´n.
       o
Sean r = (r1 , r2 , ..., rn ), δ = (δ1 , δ2 , ..., δn ). Entonces xk+n = xk + δ. Adem´s
                                                                                     a
 k
x es soluci´n si y solamente si r = 0, o sea, si y solamente δ = 0. Lo
             o
anterior justifica que el m´todo de GS se detenga cuando δ ≤ ε. La norma
                                 e
 δ puede ser la norma euclidiana o max |δi | o                 |δi |.
Si en el criterio de parada del algoritmo se desea enfatizar sobre los errores o
residuos, entonces se puede comparar δ con ε/ (a11 , ..., ann ) ; por ejemplo,
                                             ε
                                   δ ≤               ·
                                          max |aii |

El esquema del algoritmo para resolver un sistema de ecuaciones por el
m´todo de Gauss-Seidel es:
  e

                     datos: A, b, x0 , ε, maxit
                     x = x0
                     para k = 1, ...,maxit
                         nrmD← 0
                         para i = 1, ..., n
                             δi = (bi − prodEsc(Ai· , x))/aii
                             xi ← x i + δ i
                             nrmd←nrmD+δi
                         fin-para i
                         si nrmD ≤ ε ent x∗ ≈ x, salir
                     fin-para k




                                          5
0.2       Soluci´n por m´
                o       ınimos cuadrados
Consideremos ahora un sistema de ecuaciones Ax = b, no necesariamente
cuadrado, donde A es una matriz m × n cuyas columnas son linealmente
independientes. Esto implica que hay m´s filas que columnas, m ≥ n, y
                                           a
que adem´s el rango de A es n. Es muy probable que este sistema no tenga
          a
soluci´n, es decir, tal vez no existe x que cumpla exactamente las m igual-
      o
dades. Se desea que

                                      Ax     =   b,
                                   Ax − b    =   0,
                                  Ax − b     =   0,
                                 Ax − b 2    =   0,
                                 Ax − b 22   =   0.

Es Posible que lo deseado no se cumpla, entonces se quiere que el incumplim-
iento (el error) sea lo m´s peque˜ o posible. Se desea minimizar esa cantidad,
                         a       n
                                                 2
                                min    Ax − b    2   .                              (1)

El vector x que minimice Ax−b 2 se llama soluci´n por m´
                                2              o       ınimos cuadrados.
Como se ver´ m´s adelante, tal x existe y es unico (suponiendo que las
             a a                               ´
columnas de A son linealmente independientes).
Con el animo de hacer m´s clara la deducci´n, supongamos que A es una
       ´                  a               o
matriz 4 × 3. Sea f (x) = Ax − b 2 ,
                                 2

   f (x) =(a11 x1 + a12 x2 + a13 x3 − b1 )2 + (a21 x1 + a22 x2 + a23 x3 − b2 )2 +
          (a31 x1 + a32 x2 + a33 x3 − b3 )2 + (a41 x1 + a42 x2 + a43 x3 − b4 )2 .


0.2.1    Ecuaciones normales
Para obtener el m´ınimo de f se requiere que las tres derivadas parciales,
∂f /∂x1 , ∂f /∂x2 y ∂f /∂x3 , sean nulas.
                  ∂f
                      =2(a11 x1 + a12 x2 + a13 x3 − b1 )a11
                  ∂x1
                       + 2(a21 x1 + a22 x2 + a23 x3 − b2 )a21

                                         6
+ 2(a31 x1 + a32 x2 + a33 x3 − b3 )a31
                            + 2(a41 x1 + a42 x2 + a43 x3 − b4 )a41 .

Escribiendo de manera matricial,
         ∂f
             =2(A1· x − b1 )a11 + 2(A2· x − b2 )a21 + 2(A3· x − b3 )a31
         ∂x1
              + 2(A4· x − b4 )a41 .

Si B es una matriz y u un vector columna, entonces (Bu)i = Bi· u.

      ∂f
          = 2 ((Ax)1 − b1 )a11 + ((Ax)2 − b2 )a21 + ((Ax)3 − b3 )a31
      ∂x1
                +((Ax)4 − b4 a41 ,
                   4
            = 2         (Ax − b)i ai1 ,
                  i=1
                   4
            = 2         (A·1 )i (Ax − b)i ,
                  i=1
                   4
            = 2         (AT 1· )i (Ax − b)i ,
                  i=1
            = 2AT 1· (Ax − b),
            = 2 AT (Ax − b) 1

De manera semejante
                             ∂f
                                 = 2 AT (Ax − b)             2
                                                                 ,
                             ∂x2
                             ∂f
                                 = 2 AT (Ax − b)             3
                             ∂x3
Igualando a cero las tres derivadas parciales y quitando el 2 se tiene

                                AT (Ax − b)       1
                                                      = 0,
                                   T
                                A (Ax − b)        2
                                                      = 0,
                                AT (Ax − b)       3
                                                      = 0

                                              7
Es decir,
                           AT (Ax − b) = 0,
                                AT A x = A T b .                          (2)
Las ecuaciones (2) se llaman ecuaciones normales para la soluci´n (o seu-
                                                               o
dosoluci´n) de un sistema de ecuaciones por m´
        o                                    ınimos cuadrados.
La matriz AT A es sim´trica de tama˜ o n × n. En general, si A es una matriz
                      e             n
m × n de rango r, entonces A A tambi´n es de rango r (ver [Str86]). Como
                              T
                                       e
se supuso que el rango de A es n, entonces AT A es invertible. M´s a´ n, AT A
                                                                a u
es definida positiva.
Por ser AT A invertible, hay una unica soluci´n de (2), o sea, hay un solo
                                    ´           o
vector x que hace que las derivadas parciales sean nulas. En general, las
derivadas parciales nulas son simplemente una condici´n necesaria para obtener
                                                       o
el m´
    ınimo de una funci´n (tambi´n lo es para m´ximos o para puntos de silla),
                       o         e              a
pero en este caso, como AT A es definida positiva, f es convexa, y entonces
anular las derivadas parciales se convierte en condici´n necesaria y suficiente
                                                      o
para el m´ınimo.
En resumen, si las columnas de A son linealmente independientes, entonces
la soluci´n por m´
         o       ınimos cuadrados existe y es unica. Para obtener la soluci´n
                                              ´                            o
por m´ ınimos cuadrados se resuelven las ecuaciones normales.
Como AT A es definida positiva, (2) se puede resolver por el m´todo de
                                                               e
Cholesky. Si m ≥ n y al hacer la factorizaci´n de Cholesky resulta que
                                              o
AT A no es definida positiva, entonces las columnas de A son linealmente
dependientes.
Si el sistema Ax = b tiene soluci´n exacta, ´sta coincide con la soluci´n por
                                 o          e                          o
m´ınimos cuadrados.
Ejemplo 0.3. Resolver por m´
                           ınimos cuadrados:
                                                    
                    2   1    0             3.1
                −1 −2             x
                            3   1   8.9
                                x2 = 
                                                       
                                                       .
                −2     2    1            −3.1       
                                   x3
                    5   4 −2                 0.1
Las ecuaciones normales dan:
                                              
                   34    20 −15     x1         4.0
                 20     25 −12   x2  =  −20.5 
                  −15 −12    14     x3        23.4

                                     8
La soluci´n por m´
         o       ınimos cuadrados es:
                        x = (2.0252, −1.0132, 2.9728) .
El error, Ax − b, es:                   
                                 −0.0628
                                0.0196 
                                        
                                −0.0039  . 3
                                  0.0275
Ejemplo 0.4. Resolver por m´
                           ınimos cuadrados:
                                                         
                    2    1    3             3
                 −1 −2             x
                             0  1   9
                                 x2 = 
                                                            
                                                            .
                 −2     2 −6              −3             
                                    x3
                    5    4    6               0
Las ecuaciones normales dan:
                                          
                     34 20 48     x1         3
                    20 25 15   x2  =  −21 
                     48 15 81     x3        27
Al tratar de resolver este sistema de ecuaciones por el m´todo de Cholesky;
                                                         e
no se puede obtener la factorizaci´n de Cholesky, luego AT A no es definida
                                   o
positiva, es decir, las columnas de A son linealmente dependientes. Si se
aplica el m´todo de Gauss, se obtiene que AT A es singular y se concluye que
           e
las columnas de A son linealmente dependientes. 3
Ejemplo 0.5. Resolver por m´
                           ınimos cuadrados:
                                                     
                       2    1                3
                    −1 −2  x1          0             
                                    =                .
                    −2     2  x2       −6            
                       5    4                6
Las ecuaciones normales dan:
                            34 20        x1        48
                                              =
                            20 25        x2        15
La soluci´n por m´
         o       ınimos cuadrados es:
                                   x = (2, −1) .

                                        9
El error, Ax − b, es:                 
                                     0
                                    0 
                                    .
                                    0 
                                     0
En este caso, el sistema inicial ten´ soluci´n exacta y la soluci´n por m´
                                    ıa      o                    o       ınimos
cuadrados coincide con ella. 3

La implementaci´n eficiente de la soluci´n por m´
                 o                      o        ınimos cuadrados, v´ ecua-
                                                                    ıa
ciones normales, debe tener en cuenta algunos detalles. No es necesario
construir toda la matriz sim´trica AT A (n2 elementos). Basta con almacenar
                            e
en un arreglo de tama˜ o n(n + 1)/2 la parte triangular superior de AT A.
                      n
Este almacenamiento puede ser por filas, es decir, primero los n elementos de
la primera fila, enseguida los n − 1 elementos de la segunda fila a partir del
elemento diagonal, despu´s los n − 2 de la tercera fila a partir del elemento
                          e
diagonal y as´ sucesivamente hasta almacenar un solo elemento de la fila n. Si
             ı
se almacena la parte triangular superior de AT A por columnas, se almacena
primero un elemento de la primera columna, enseguida dos elementos de la
segunda columna y as´ sucesivamente. Cada una de las dos formas tiene sus
                       ı
ventajas y desventajas. La soluci´n por el m´todo de Cholesky debe tener
                                  o           e
en cuenta este tipo de estructura de almacenamiento de la informaci´n.o
Otros m´todos eficientes para resolver sistemas de ecuaciones por m´
       e                                                            ınimos
cuadrados utilizan matrices ortogonales de Givens o de Householder.




                                       10
function a = interFilas(a, i, j)
  t = a(i,:)
  a(i,:) = a(j,:)
  a(j,:) = t
endfunction
//----------------------------------------------------------
function x = sistTriSup(a, b)
  // solucion de un sistema triangular superior
  n = size(a,1)
  x = zeros(n,1)
  for i=n:-1:1
    x(i) = ( b(i) - a(i,i+1:n)*x(i+1:n) ) / a(i,i)
  end
endfunction
//----------------------------------------------------------
function [x, y] = interc(x, y)
  t = x
  x = y
  y = t
endfunction

//==========================================================
//==========================================================

// metodo de Gauss con pivoteo parcial
// no muy eficiente

a0 = [ 2 4 5 -10; 1 2 3 4; -10 8 5 4; -1 1 2 -2]
b = [-14 40 44 -1]’
eps = 1.0e-8;

n = size(a0,1)

a = [a0 b]

for k = 1:n-1
  [vmax , pos] = max( abs(a(k:n,k) ) )


                              11
if vmax <= eps
       printf(’n Matriz singular o casi singular.nn’)
       return
     end

     m = k-1 + pos
     if m > k
       a = interFilas(a, k, m)
     end

     for i = k+1:n
       coef = a(i,k)/a(k,k)
       a(i,:) = a(i,:) - coef*a(k,:)
     end

end
if abs( a(n,n) ) <= eps
  printf(’n Matriz singular o casi singular.nn’)
  return
end

x = sistTriSup(a(:,1:n), a(:,n+1) )

//==========================================================
//==========================================================

// metodo de Cholesky

//    resolver A x = b
//    A simetrica y definida positiva
//
//    factorizacion de Cholesky   A = U’ U,   U triangular superior inevertible
//
//    A x = b
//    U’ U x = b
//    sea y = U x
//    U’ y = b
//    resolver el sistema anterior para obtener   y

                                  12
// reoslver   U x = y   para obtener   x


a = [9 2 3; 2 8 -1; 3 -1 5]

b = [36 24 23]’
n = size(a, 1)

y = zeros(n,1);
x = zeros(n,1);

u = chol(a)

y(1) = b(1)/u(1,1)
for i=2:n
  y(i) = ( b(i) - u(1:i-1,i)’*y(1:i-1) )/u(i,i)
end

x(n) = y(n)/u(n,n)
for i=n-1:-1:1
  x(i) = ( y(i) - u(i,i+1:n)*x(i+1:n) )/u(i,i)
end

//==========================================================
//==========================================================

// metodo de Gauss-Seidel

a = [ 10 2 -1 0 ; 1 20 -2 3 ; -2 1 30 0 ; 1 2 3 20]
b = [26   -15 53    47 ]’

x0 = [0 0 0 0]’
n = size(a,1)


x = x0
maxit = 10
for k = 1:maxit

                                13
for i = 1:n
    res = b(i) - a(i,:)*x
    x(i) = x(i) + res/a(i,i)
  end
end




                               14

Más contenido relacionado

La actualidad más candente

1b ecuaciones%20 lineales%20y%20bernoulli
1b ecuaciones%20 lineales%20y%20bernoulli1b ecuaciones%20 lineales%20y%20bernoulli
1b ecuaciones%20 lineales%20y%20bernoulliJohn Giraldo
 
28. aplicaciones de la derivada
28. aplicaciones de la derivada28. aplicaciones de la derivada
28. aplicaciones de la derivadaGenaro SaBo
 
SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10
SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10
SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10Gerardo Mauricio Rojas Cruz
 
ECUACIONES DIFERENCIALES CON DERIVE
ECUACIONES DIFERENCIALES CON DERIVEECUACIONES DIFERENCIALES CON DERIVE
ECUACIONES DIFERENCIALES CON DERIVEJorge Paz
 
Estadistica inferencial formulas
Estadistica inferencial formulasEstadistica inferencial formulas
Estadistica inferencial formulasAmbiental Natural
 
La Integral Indefinida
La  Integral IndefinidaLa  Integral Indefinida
La Integral IndefinidaERICK CONDE
 
Metodo Tabular Integracion Por Partes
Metodo Tabular Integracion Por PartesMetodo Tabular Integracion Por Partes
Metodo Tabular Integracion Por PartesLISHAVELY
 
Ecuaciones de 1er orden
Ecuaciones de 1er ordenEcuaciones de 1er orden
Ecuaciones de 1er ordenVelmuz Buzz
 

La actualidad más candente (14)

1b ecuaciones%20 lineales%20y%20bernoulli
1b ecuaciones%20 lineales%20y%20bernoulli1b ecuaciones%20 lineales%20y%20bernoulli
1b ecuaciones%20 lineales%20y%20bernoulli
 
28. aplicaciones de la derivada
28. aplicaciones de la derivada28. aplicaciones de la derivada
28. aplicaciones de la derivada
 
SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10
SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10
SOLUCIÓN DE UNA ECUACIÓN DIFERENCIAL HOMOGÉNEA UTILIZANDO DERIVE 6.10
 
ECUACIONES DIFERENCIALES CON DERIVE
ECUACIONES DIFERENCIALES CON DERIVEECUACIONES DIFERENCIALES CON DERIVE
ECUACIONES DIFERENCIALES CON DERIVE
 
1 7 Ecuaciones Lineales
1 7 Ecuaciones Lineales1 7 Ecuaciones Lineales
1 7 Ecuaciones Lineales
 
Examen ecdi
Examen ecdiExamen ecdi
Examen ecdi
 
Cap1
Cap1Cap1
Cap1
 
Estadistica inferencial formulas
Estadistica inferencial formulasEstadistica inferencial formulas
Estadistica inferencial formulas
 
La Integral Indefinida
La  Integral IndefinidaLa  Integral Indefinida
La Integral Indefinida
 
ECUACIONES DIFERENCIALES CON DERIVE
ECUACIONES DIFERENCIALES CON DERIVE ECUACIONES DIFERENCIALES CON DERIVE
ECUACIONES DIFERENCIALES CON DERIVE
 
Metodo Tabular Integracion Por Partes
Metodo Tabular Integracion Por PartesMetodo Tabular Integracion Por Partes
Metodo Tabular Integracion Por Partes
 
Ecuaciones de 1er orden
Ecuaciones de 1er ordenEcuaciones de 1er orden
Ecuaciones de 1er orden
 
Cap7
Cap7Cap7
Cap7
 
Ejercicios 1º bchs
Ejercicios 1º bchsEjercicios 1º bchs
Ejercicios 1º bchs
 

Destacado

Método de gauss y gauss seidel
Método de gauss y gauss seidelMétodo de gauss y gauss seidel
Método de gauss y gauss seidelLilly Kwang
 
Método de gauss siedel
Método de gauss siedelMétodo de gauss siedel
Método de gauss siedelTensor
 
3.2.5.2 metodo de gauss seidel
3.2.5.2 metodo de gauss seidel3.2.5.2 metodo de gauss seidel
3.2.5.2 metodo de gauss seidelRoger Burgos
 
METODO JACOBI Y GAUSS SEIDEL
METODO JACOBI Y GAUSS SEIDELMETODO JACOBI Y GAUSS SEIDEL
METODO JACOBI Y GAUSS SEIDELCesar Mendoza
 
Metodo Gauss Seidel
Metodo Gauss SeidelMetodo Gauss Seidel
Metodo Gauss SeidelDiana Rocio
 
Metodos iterativos para solucion de sistemas de ecuaciones lineales lina
Metodos iterativos para solucion de sistemas de ecuaciones lineales linaMetodos iterativos para solucion de sistemas de ecuaciones lineales lina
Metodos iterativos para solucion de sistemas de ecuaciones lineales linalinagora1288
 
Métodos iterativos, gauss seidel con relajación
Métodos iterativos, gauss seidel con relajaciónMétodos iterativos, gauss seidel con relajación
Métodos iterativos, gauss seidel con relajaciónFredy
 
Métodos de eliminación gaussiana
Métodos de eliminación gaussianaMétodos de eliminación gaussiana
Métodos de eliminación gaussianawilmerleon67
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativoscyndy
 
Jacobi y Gauss Seidel
Jacobi y Gauss SeidelJacobi y Gauss Seidel
Jacobi y Gauss Seideljoselolozano
 
Metodos jacobi y gauss seidel
Metodos jacobi y gauss seidelMetodos jacobi y gauss seidel
Metodos jacobi y gauss seidelCesar Mendoza
 
Metodos numericos 5
Metodos numericos 5Metodos numericos 5
Metodos numericos 5monica
 
Solución de Sistemas Lineales Método de Gauss
Solución de Sistemas Lineales Método de GaussSolución de Sistemas Lineales Método de Gauss
Solución de Sistemas Lineales Método de Gaussinsutecvirtual
 
Solución de Sistemas de Ecuaciones Lineales Analisis numerico
    Solución de Sistemas de Ecuaciones Lineales   Analisis numerico    Solución de Sistemas de Ecuaciones Lineales   Analisis numerico
Solución de Sistemas de Ecuaciones Lineales Analisis numericolmpd124
 
Método de gauss seidel
Método de gauss seidelMétodo de gauss seidel
Método de gauss seidelmariacadena
 

Destacado (18)

Método de gauss y gauss seidel
Método de gauss y gauss seidelMétodo de gauss y gauss seidel
Método de gauss y gauss seidel
 
Ecu simul l1
Ecu simul l1Ecu simul l1
Ecu simul l1
 
Metodo de Gauss
Metodo de GaussMetodo de Gauss
Metodo de Gauss
 
Método de gauss siedel
Método de gauss siedelMétodo de gauss siedel
Método de gauss siedel
 
3.2.5.2 metodo de gauss seidel
3.2.5.2 metodo de gauss seidel3.2.5.2 metodo de gauss seidel
3.2.5.2 metodo de gauss seidel
 
METODO JACOBI Y GAUSS SEIDEL
METODO JACOBI Y GAUSS SEIDELMETODO JACOBI Y GAUSS SEIDEL
METODO JACOBI Y GAUSS SEIDEL
 
Metodo Gauss Seidel
Metodo Gauss SeidelMetodo Gauss Seidel
Metodo Gauss Seidel
 
Metodos iterativos para solucion de sistemas de ecuaciones lineales lina
Metodos iterativos para solucion de sistemas de ecuaciones lineales linaMetodos iterativos para solucion de sistemas de ecuaciones lineales lina
Metodos iterativos para solucion de sistemas de ecuaciones lineales lina
 
Método gauss seidel
Método gauss seidelMétodo gauss seidel
Método gauss seidel
 
Métodos iterativos, gauss seidel con relajación
Métodos iterativos, gauss seidel con relajaciónMétodos iterativos, gauss seidel con relajación
Métodos iterativos, gauss seidel con relajación
 
Métodos de eliminación gaussiana
Métodos de eliminación gaussianaMétodos de eliminación gaussiana
Métodos de eliminación gaussiana
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Jacobi y Gauss Seidel
Jacobi y Gauss SeidelJacobi y Gauss Seidel
Jacobi y Gauss Seidel
 
Metodos jacobi y gauss seidel
Metodos jacobi y gauss seidelMetodos jacobi y gauss seidel
Metodos jacobi y gauss seidel
 
Metodos numericos 5
Metodos numericos 5Metodos numericos 5
Metodos numericos 5
 
Solución de Sistemas Lineales Método de Gauss
Solución de Sistemas Lineales Método de GaussSolución de Sistemas Lineales Método de Gauss
Solución de Sistemas Lineales Método de Gauss
 
Solución de Sistemas de Ecuaciones Lineales Analisis numerico
    Solución de Sistemas de Ecuaciones Lineales   Analisis numerico    Solución de Sistemas de Ecuaciones Lineales   Analisis numerico
Solución de Sistemas de Ecuaciones Lineales Analisis numerico
 
Método de gauss seidel
Método de gauss seidelMétodo de gauss seidel
Método de gauss seidel
 

Similar a Metodo gauss seidel

Similar a Metodo gauss seidel (20)

Métodos de resolución de ecuaciones
Métodos de resolución de ecuacionesMétodos de resolución de ecuaciones
Métodos de resolución de ecuaciones
 
Polin ecuac sist_inec
Polin ecuac sist_inecPolin ecuac sist_inec
Polin ecuac sist_inec
 
Limites, ejercicios
Limites, ejerciciosLimites, ejercicios
Limites, ejercicios
 
Ecs cuadraticas parte1
Ecs cuadraticas parte1Ecs cuadraticas parte1
Ecs cuadraticas parte1
 
Slide share wileon
Slide share wileonSlide share wileon
Slide share wileon
 
Sol 1º examen 2º aval 11 12 4ºab
Sol 1º examen 2º aval 11 12 4ºabSol 1º examen 2º aval 11 12 4ºab
Sol 1º examen 2º aval 11 12 4ºab
 
Ecuaciones4ºb
Ecuaciones4ºbEcuaciones4ºb
Ecuaciones4ºb
 
Alea 0506 resumen-----simulacion
Alea 0506 resumen-----simulacionAlea 0506 resumen-----simulacion
Alea 0506 resumen-----simulacion
 
examen de calculo 1
examen de calculo 1examen de calculo 1
examen de calculo 1
 
Derivadas 02
Derivadas 02Derivadas 02
Derivadas 02
 
solucion-de-examen-de-ecuaciones-diferenciales-espol
 solucion-de-examen-de-ecuaciones-diferenciales-espol  solucion-de-examen-de-ecuaciones-diferenciales-espol
solucion-de-examen-de-ecuaciones-diferenciales-espol
 
Cano Nieto Mariana Montserrat
Cano Nieto Mariana MontserratCano Nieto Mariana Montserrat
Cano Nieto Mariana Montserrat
 
Ecuacion de cauchy euler
Ecuacion de cauchy euler Ecuacion de cauchy euler
Ecuacion de cauchy euler
 
Primer parcial solucionario
Primer parcial solucionarioPrimer parcial solucionario
Primer parcial solucionario
 
3011 desigualdades cuadraticas
3011 desigualdades cuadraticas3011 desigualdades cuadraticas
3011 desigualdades cuadraticas
 
Ecuaciones de primer grado con radicales
Ecuaciones de primer grado con radicalesEcuaciones de primer grado con radicales
Ecuaciones de primer grado con radicales
 
Calculo IV
Calculo IVCalculo IV
Calculo IV
 
Calculo 4
Calculo 4Calculo 4
Calculo 4
 
Limites1
Limites1Limites1
Limites1
 
Limites y Continuidad de Funciones
Limites y Continuidad de FuncionesLimites y Continuidad de Funciones
Limites y Continuidad de Funciones
 

Más de Cesar Mendoza

Roots of polynomials
Roots of polynomialsRoots of polynomials
Roots of polynomialsCesar Mendoza
 
System of linear equations
System of linear equationsSystem of linear equations
System of linear equationsCesar Mendoza
 
System of linear equations
System of linear equationsSystem of linear equations
System of linear equationsCesar Mendoza
 
Metodos jacobi y gauss seidel
Metodos jacobi y gauss seidelMetodos jacobi y gauss seidel
Metodos jacobi y gauss seidelCesar Mendoza
 
Metodos jacobi y gauss seidel
Metodos jacobi y gauss seidelMetodos jacobi y gauss seidel
Metodos jacobi y gauss seidelCesar Mendoza
 
Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01
Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01
Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01Cesar Mendoza
 
Métodos directos para solución de sistemas ecuaciones lineales (2)
Métodos directos para solución de sistemas ecuaciones lineales (2)Métodos directos para solución de sistemas ecuaciones lineales (2)
Métodos directos para solución de sistemas ecuaciones lineales (2)Cesar Mendoza
 
Métodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones linealesMétodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones linealesCesar Mendoza
 
Métodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones linealesMétodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones linealesCesar Mendoza
 

Más de Cesar Mendoza (12)

Roots of polynomials
Roots of polynomialsRoots of polynomials
Roots of polynomials
 
System of linear equations
System of linear equationsSystem of linear equations
System of linear equations
 
System of linear equations
System of linear equationsSystem of linear equations
System of linear equations
 
Metodos jacobi y gauss seidel
Metodos jacobi y gauss seidelMetodos jacobi y gauss seidel
Metodos jacobi y gauss seidel
 
Metodos jacobi y gauss seidel
Metodos jacobi y gauss seidelMetodos jacobi y gauss seidel
Metodos jacobi y gauss seidel
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01
Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01
Mtodositerativosgauss seidelconrelajacin-100720193455-phpapp01
 
Matrices
MatricesMatrices
Matrices
 
Métodos directos para solución de sistemas ecuaciones lineales (2)
Métodos directos para solución de sistemas ecuaciones lineales (2)Métodos directos para solución de sistemas ecuaciones lineales (2)
Métodos directos para solución de sistemas ecuaciones lineales (2)
 
Métodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones linealesMétodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones lineales
 
Métodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones linealesMétodos directos para solución de sistemas ecuaciones lineales
Métodos directos para solución de sistemas ecuaciones lineales
 

Metodo gauss seidel

  • 1. 0.1 M´todo de Gauss-Seidel e Los m´todos de Gauss y Cholesky hacen parte de los m´todos directos o e e finitos. Al cabo de un n´ mero finito de operaciones, en ausencia de errores u de redondeo, se obtiene x∗ soluci´n del sistema Ax = b. o El m´todo de Gauss-Seidel hace parte de los m´todos llamados indirectos o e e iterativos. En ellos se comienza con x = (x1 , x0 , ..., x0 ), una aproximaci´n 0 0 2 n o inicial de la soluci´n. A partir de x0 se construye una nueva aproximaci´n de o o la soluci´n, x1 = (x1 , x1 , ..., x1 ). A partir de x1 se construye x2 (aqu´ el su- o 1 2 n ı per´ındice indica la iteraci´n y no indica una potencia). As´ sucesivamente se o ı construye una sucesi´n de vectores {xk }, con el objetivo, no siempre garan- o tizado, de que lim xk = x∗ . k→∞ Generalmente los m´todos indirectos son una buena opci´n cuando la matriz e o es muy grande y dispersa o rala (sparse), es decir, cuando el n´ mero de u 2 elementos no nulos es peque˜ o comparado con n , n´ mero total de elementos n u de A. En estos casos se debe utilizar una estructura de datos adecuada que permita almacenar unicamente los elementos no nulos. ´ En cada iteraci´n del m´todo de Gauss-Seidel, hay n subiteraciones. En la o e primera subiteraci´n se modifica unicamente x1 . Las dem´s coordenadas x2 , o ´ a x3 , ..., xn no se modifican. El c´lculo de x1 se hace de tal manera que se a satisfaga la primera ecuaci´n. o b1 − (a12 x0 + a13 x0 + · · · + a1n x0 ) 2 3 n x1 = 1 , a11 x1 i = x0 , i = 2, ..., n. i En la segunda subiteraci´n se modifica unicamente x2 . Las dem´s coorde- o ´ a nadas x1 , x3 , ..., xn no se modifican. El c´lculo de x2 se hace de tal manera a que se satisfaga la segunda ecuaci´n. o b2 − (a21 x1 + a23 x1 + · · · + a2n x1 ) 1 3 n x2 2 = , a22 x2 i = x1 , i = 1, 3, ..., n. i As´ sucesivamente, en la n-´sima subiteraci´n se modifica unicamente xn . ı e o ´ Las dem´s coordenadas x1 , x2 , ..., xn−1 no se modifican. El c´lculo de xn se a a 1
  • 2. hace de tal manera que se satisfaga la n-´sima ecuaci´n. e o n−1 n−1 n−1 bn − (an1 x1 + an3 x3 + · · · + ann xn ) xn = n , ann xn i n−1 = xi , i = 1, 2, ..., n − 1. Ejemplo 0.1. Resolver      10 2 −1 0 x1 26  1   x2 20 −2 3     −15   =   −2 1 30 0   x3   53  1 2 3 20 x4 47 partiendo de x0 = (1, 2, 3, 4). 26 − (2 × 2 + (−1) × 3 + 0 × 4) x1 = 1 = 2.5, 10 x1 = (2.5, 2, 3, 4). −15 − (1 × 2.5 + (−2) × 3 + 3 × 4) x2 2 = = −1.175, 20 x2 = (2.5, −1.175, 3, 4). 53 − (−2 × 2.5 + 1 × (−1.175) + 0 × 4) x3 3 = = 1.9725, 30 x3 = (2.5, −1.175, 1.9725, 4). 47 − (1 × 2.5 + 2 × (−1.175) + 3 × 1.9725) x4 4 = = 2.0466, 20 x4 = (2.5, −1.175, 1.9725, 2.0466). Una vez que se ha hecho una iteraci´n completa (n subiteraciones), se utiliza o el ultimo x obtenido como aproximaci´n inicial y se vuelve a empezar; se ´ o calcula x1 de tal manera que se satisfaga la primera ecuaci´n, luego se calcula o x2 ... A continuaci´n est´n las iteraciones siguientes para el ejemplo anterior. o a 3.0323 −1.1750 1.9725 2.0466 3.0323 −1.0114 1.9725 2.0466 3.0323 −1.0114 2.0025 2.0466 3.0323 −1.0114 2.0025 1.9991 2
  • 3. 3.0025 −1.0114 2.0025 1.9991 3.0025 −0.9997 2.0025 1.9991 3.0025 −0.9997 2.0002 1.9991 3.0025 −0.9997 2.0002 1.9998 3.0000 −0.9997 2.0002 1.9998 3.0000 −1.0000 2.0002 1.9998 3.0000 −1.0000 2.0000 1.9998 3.0000 −1.0000 2.0000 2.0000 3.0000 −1.0000 2.0000 2.0000 3.0000 −1.0000 2.0000 2.0000 3.0000 −1.0000 2.0000 2.0000 3.0000 −1.0000 2.0000 2.0000 Te´ricamente, el m´todo de Gauss-Seidel puede ser un proceso infinito. En o e la pr´ctica el proceso se acaba cuando de xk a xk+n los cambios son muy a peque˜ os. Esto quiere decir que el x actual es casi la soluci´n x∗ . n o Como el m´todo no siempre converge, entonces otra detenci´n del proceso, e o no deseada pero posible, est´ determinada cuando el n´ mero de iteraciones a u realizadas es igual a un n´ mero m´ximo de iteraciones previsto. u a El siguiente ejemplo no es convergente, ni siquiera empezando de una aprox- imaci´n inicial muy cercana a la soluci´n. La soluci´n exacta es x = (1, 1, 1). o o o Ejemplo 0.2. Resolver      −1 2 10 x1 11  11 −1 2   x2  =  12  1 5 2 x3 8 partiendo de x0 = (1.0001, 1.0001, 1.0001). 1.0012 1.0001 1.0001 1.0012 1.0134 1.0001 1.0012 1.0134 0.9660 0.6863 1.0134 0.9660 0.6863 −2.5189 0.9660 0.6863 −2.5189 9.9541 3
  • 4. 83.5031 −2.5189 9.9541 83.5031 926.4428 9.9541 83.5031 926.4428 −2353.8586 Algunos criterios garantizan la convergencia del m´todo de Gauss-Seidel. e Por ser condiciones suficientes para la convergencia son criterios demasiado fuertes, es decir, la matriz A puede no cumplir estos requisitos y sin embargo el m´todo puede ser convergente. En la pr´ctica, con frecuencia, es muy e a dispendioso poder aplicar estos criterios. Una matriz cuadrada es de diagonal estrictamente dominante por filas si en cada fila el valor absoluto del elemento diagonal es mayor que la suma de los valores absolutos de los otros elementos de la fila, n |aii | > |aij | , ∀i. j=1,j=i Teorema 0.1. Si A es de diagonal estrictamente dominante por filas, en- tonces el m´todo de Gauss-Seidel converge para cualquier x 0 inicial. e Teorema 0.2. Si A es definida positiva, entonces el m´todo de Gauss-Seidel e 0 converge para cualquier x inicial. Te´ricamente el m´todo de Gauss-Seidel se deber´ detener cuando xk − o e ıa x∗ < ε. Sin embargo la condici´n anterior necesita conocer x∗ , que es pre- o cisamente lo que se est´ buscando. Entonces, de manera pr´ctica el m´todo a a e de GS se detiene cuando xk − xk+n < ε. Dejando de lado los super´ındices, las f´rmulas del m´todo de Gauss-Seidel se o e pueden reescribir para facilitar el algoritmo y para mostrar que xk − x∗ y xk − xk+n est´n relacionadas. a n bi − aij xj j=1,j=i xi ← , aii n bi − aij xj + aii xi j=1 xi ← , aii 4
  • 5. bi − Ai· x xi ← x i + . aii Sean ri = bi − Ai· x, ri δi = · aii El valor ri es simplemente el error, residuo o resto que se comete en la i-´sima e ecuaci´n al utilizar el x actual. Si ri = 0, entonces la ecuaci´n i-´sima se o o e satisface perfectamente. El valor δi es la modificaci´n que sufre xi en una o iteraci´n. o Sean r = (r1 , r2 , ..., rn ), δ = (δ1 , δ2 , ..., δn ). Entonces xk+n = xk + δ. Adem´s a k x es soluci´n si y solamente si r = 0, o sea, si y solamente δ = 0. Lo o anterior justifica que el m´todo de GS se detenga cuando δ ≤ ε. La norma e δ puede ser la norma euclidiana o max |δi | o |δi |. Si en el criterio de parada del algoritmo se desea enfatizar sobre los errores o residuos, entonces se puede comparar δ con ε/ (a11 , ..., ann ) ; por ejemplo, ε δ ≤ · max |aii | El esquema del algoritmo para resolver un sistema de ecuaciones por el m´todo de Gauss-Seidel es: e datos: A, b, x0 , ε, maxit x = x0 para k = 1, ...,maxit nrmD← 0 para i = 1, ..., n δi = (bi − prodEsc(Ai· , x))/aii xi ← x i + δ i nrmd←nrmD+δi fin-para i si nrmD ≤ ε ent x∗ ≈ x, salir fin-para k 5
  • 6. 0.2 Soluci´n por m´ o ınimos cuadrados Consideremos ahora un sistema de ecuaciones Ax = b, no necesariamente cuadrado, donde A es una matriz m × n cuyas columnas son linealmente independientes. Esto implica que hay m´s filas que columnas, m ≥ n, y a que adem´s el rango de A es n. Es muy probable que este sistema no tenga a soluci´n, es decir, tal vez no existe x que cumpla exactamente las m igual- o dades. Se desea que Ax = b, Ax − b = 0, Ax − b = 0, Ax − b 2 = 0, Ax − b 22 = 0. Es Posible que lo deseado no se cumpla, entonces se quiere que el incumplim- iento (el error) sea lo m´s peque˜ o posible. Se desea minimizar esa cantidad, a n 2 min Ax − b 2 . (1) El vector x que minimice Ax−b 2 se llama soluci´n por m´ 2 o ınimos cuadrados. Como se ver´ m´s adelante, tal x existe y es unico (suponiendo que las a a ´ columnas de A son linealmente independientes). Con el animo de hacer m´s clara la deducci´n, supongamos que A es una ´ a o matriz 4 × 3. Sea f (x) = Ax − b 2 , 2 f (x) =(a11 x1 + a12 x2 + a13 x3 − b1 )2 + (a21 x1 + a22 x2 + a23 x3 − b2 )2 + (a31 x1 + a32 x2 + a33 x3 − b3 )2 + (a41 x1 + a42 x2 + a43 x3 − b4 )2 . 0.2.1 Ecuaciones normales Para obtener el m´ınimo de f se requiere que las tres derivadas parciales, ∂f /∂x1 , ∂f /∂x2 y ∂f /∂x3 , sean nulas. ∂f =2(a11 x1 + a12 x2 + a13 x3 − b1 )a11 ∂x1 + 2(a21 x1 + a22 x2 + a23 x3 − b2 )a21 6
  • 7. + 2(a31 x1 + a32 x2 + a33 x3 − b3 )a31 + 2(a41 x1 + a42 x2 + a43 x3 − b4 )a41 . Escribiendo de manera matricial, ∂f =2(A1· x − b1 )a11 + 2(A2· x − b2 )a21 + 2(A3· x − b3 )a31 ∂x1 + 2(A4· x − b4 )a41 . Si B es una matriz y u un vector columna, entonces (Bu)i = Bi· u. ∂f = 2 ((Ax)1 − b1 )a11 + ((Ax)2 − b2 )a21 + ((Ax)3 − b3 )a31 ∂x1 +((Ax)4 − b4 a41 , 4 = 2 (Ax − b)i ai1 , i=1 4 = 2 (A·1 )i (Ax − b)i , i=1 4 = 2 (AT 1· )i (Ax − b)i , i=1 = 2AT 1· (Ax − b), = 2 AT (Ax − b) 1 De manera semejante ∂f = 2 AT (Ax − b) 2 , ∂x2 ∂f = 2 AT (Ax − b) 3 ∂x3 Igualando a cero las tres derivadas parciales y quitando el 2 se tiene AT (Ax − b) 1 = 0, T A (Ax − b) 2 = 0, AT (Ax − b) 3 = 0 7
  • 8. Es decir, AT (Ax − b) = 0, AT A x = A T b . (2) Las ecuaciones (2) se llaman ecuaciones normales para la soluci´n (o seu- o dosoluci´n) de un sistema de ecuaciones por m´ o ınimos cuadrados. La matriz AT A es sim´trica de tama˜ o n × n. En general, si A es una matriz e n m × n de rango r, entonces A A tambi´n es de rango r (ver [Str86]). Como T e se supuso que el rango de A es n, entonces AT A es invertible. M´s a´ n, AT A a u es definida positiva. Por ser AT A invertible, hay una unica soluci´n de (2), o sea, hay un solo ´ o vector x que hace que las derivadas parciales sean nulas. En general, las derivadas parciales nulas son simplemente una condici´n necesaria para obtener o el m´ ınimo de una funci´n (tambi´n lo es para m´ximos o para puntos de silla), o e a pero en este caso, como AT A es definida positiva, f es convexa, y entonces anular las derivadas parciales se convierte en condici´n necesaria y suficiente o para el m´ınimo. En resumen, si las columnas de A son linealmente independientes, entonces la soluci´n por m´ o ınimos cuadrados existe y es unica. Para obtener la soluci´n ´ o por m´ ınimos cuadrados se resuelven las ecuaciones normales. Como AT A es definida positiva, (2) se puede resolver por el m´todo de e Cholesky. Si m ≥ n y al hacer la factorizaci´n de Cholesky resulta que o AT A no es definida positiva, entonces las columnas de A son linealmente dependientes. Si el sistema Ax = b tiene soluci´n exacta, ´sta coincide con la soluci´n por o e o m´ınimos cuadrados. Ejemplo 0.3. Resolver por m´ ınimos cuadrados:     2 1 0   3.1  −1 −2 x  3   1   8.9  x2 =   .  −2 2 1   −3.1  x3 5 4 −2 0.1 Las ecuaciones normales dan:      34 20 −15 x1 4.0  20 25 −12   x2  =  −20.5  −15 −12 14 x3 23.4 8
  • 9. La soluci´n por m´ o ınimos cuadrados es: x = (2.0252, −1.0132, 2.9728) . El error, Ax − b, es:   −0.0628  0.0196     −0.0039  . 3 0.0275 Ejemplo 0.4. Resolver por m´ ınimos cuadrados:     2 1 3   3  −1 −2 x  0  1   9  x2 =   .  −2 2 −6   −3  x3 5 4 6 0 Las ecuaciones normales dan:      34 20 48 x1 3  20 25 15   x2  =  −21  48 15 81 x3 27 Al tratar de resolver este sistema de ecuaciones por el m´todo de Cholesky; e no se puede obtener la factorizaci´n de Cholesky, luego AT A no es definida o positiva, es decir, las columnas de A son linealmente dependientes. Si se aplica el m´todo de Gauss, se obtiene que AT A es singular y se concluye que e las columnas de A son linealmente dependientes. 3 Ejemplo 0.5. Resolver por m´ ınimos cuadrados:     2 1 3  −1 −2  x1  0    = .  −2 2  x2  −6  5 4 6 Las ecuaciones normales dan: 34 20 x1 48 = 20 25 x2 15 La soluci´n por m´ o ınimos cuadrados es: x = (2, −1) . 9
  • 10. El error, Ax − b, es:   0  0   .  0  0 En este caso, el sistema inicial ten´ soluci´n exacta y la soluci´n por m´ ıa o o ınimos cuadrados coincide con ella. 3 La implementaci´n eficiente de la soluci´n por m´ o o ınimos cuadrados, v´ ecua- ıa ciones normales, debe tener en cuenta algunos detalles. No es necesario construir toda la matriz sim´trica AT A (n2 elementos). Basta con almacenar e en un arreglo de tama˜ o n(n + 1)/2 la parte triangular superior de AT A. n Este almacenamiento puede ser por filas, es decir, primero los n elementos de la primera fila, enseguida los n − 1 elementos de la segunda fila a partir del elemento diagonal, despu´s los n − 2 de la tercera fila a partir del elemento e diagonal y as´ sucesivamente hasta almacenar un solo elemento de la fila n. Si ı se almacena la parte triangular superior de AT A por columnas, se almacena primero un elemento de la primera columna, enseguida dos elementos de la segunda columna y as´ sucesivamente. Cada una de las dos formas tiene sus ı ventajas y desventajas. La soluci´n por el m´todo de Cholesky debe tener o e en cuenta este tipo de estructura de almacenamiento de la informaci´n.o Otros m´todos eficientes para resolver sistemas de ecuaciones por m´ e ınimos cuadrados utilizan matrices ortogonales de Givens o de Householder. 10
  • 11. function a = interFilas(a, i, j) t = a(i,:) a(i,:) = a(j,:) a(j,:) = t endfunction //---------------------------------------------------------- function x = sistTriSup(a, b) // solucion de un sistema triangular superior n = size(a,1) x = zeros(n,1) for i=n:-1:1 x(i) = ( b(i) - a(i,i+1:n)*x(i+1:n) ) / a(i,i) end endfunction //---------------------------------------------------------- function [x, y] = interc(x, y) t = x x = y y = t endfunction //========================================================== //========================================================== // metodo de Gauss con pivoteo parcial // no muy eficiente a0 = [ 2 4 5 -10; 1 2 3 4; -10 8 5 4; -1 1 2 -2] b = [-14 40 44 -1]’ eps = 1.0e-8; n = size(a0,1) a = [a0 b] for k = 1:n-1 [vmax , pos] = max( abs(a(k:n,k) ) ) 11
  • 12. if vmax <= eps printf(’n Matriz singular o casi singular.nn’) return end m = k-1 + pos if m > k a = interFilas(a, k, m) end for i = k+1:n coef = a(i,k)/a(k,k) a(i,:) = a(i,:) - coef*a(k,:) end end if abs( a(n,n) ) <= eps printf(’n Matriz singular o casi singular.nn’) return end x = sistTriSup(a(:,1:n), a(:,n+1) ) //========================================================== //========================================================== // metodo de Cholesky // resolver A x = b // A simetrica y definida positiva // // factorizacion de Cholesky A = U’ U, U triangular superior inevertible // // A x = b // U’ U x = b // sea y = U x // U’ y = b // resolver el sistema anterior para obtener y 12
  • 13. // reoslver U x = y para obtener x a = [9 2 3; 2 8 -1; 3 -1 5] b = [36 24 23]’ n = size(a, 1) y = zeros(n,1); x = zeros(n,1); u = chol(a) y(1) = b(1)/u(1,1) for i=2:n y(i) = ( b(i) - u(1:i-1,i)’*y(1:i-1) )/u(i,i) end x(n) = y(n)/u(n,n) for i=n-1:-1:1 x(i) = ( y(i) - u(i,i+1:n)*x(i+1:n) )/u(i,i) end //========================================================== //========================================================== // metodo de Gauss-Seidel a = [ 10 2 -1 0 ; 1 20 -2 3 ; -2 1 30 0 ; 1 2 3 20] b = [26 -15 53 47 ]’ x0 = [0 0 0 0]’ n = size(a,1) x = x0 maxit = 10 for k = 1:maxit 13
  • 14. for i = 1:n res = b(i) - a(i,:)*x x(i) = x(i) + res/a(i,i) end end 14