You are on page 1of 2

Programación y Métodos Numéricos Carlos Conde, Arturo Hidalgo y Alfredo López

ETSI Minas de la Universidad Politécnica de Madrid

EJERCICIO RESUELTO SOBRE MÉTODOS ITERATIVOS DE RESOLUCIÓN


DE SISTEMAS DE ECUACIONES LINEALES

Dado el sistema de ecuaciones lineales:


⎧ x + 2y = 3

⎩2 x + 5y = 7
Se pide:
a) Determinar si es resoluble por el método de gradiente
conjugado.
b) Obtener la funcional cuadrática asociada a este sistema.
c) Realizar dos iteraciones del método de gradiente conjugado a
partir del vector semilla x(0) = (2, 2)T.

Solución:
a) El sistema dado puede escribirse como Ax = b, con:

⎛1 2⎞ ⎛ 3⎞ ⎛ x⎞
A=⎜ ⎟ b=⎜ ⎟ x=⎜ ⎟
⎝2 5⎠ ⎝7⎠ ⎝ y⎠

Para que el método de gradiente conjugado pueda aplicarse es necesario que la


matriz A sea definida positiva, lo cual puede comprobarse viendo si todos sus valores
propios son reales y estrictamente positivos:

⎛1 − λ 2 ⎞ ⎧ λ1 = 5.82…
det ( Α − λ I ) = det ⎜ ⎟ = (1 − λ )( 5 − λ ) − 4 = 0 ⇒ ⎨λ = 0.17 …
⎝ 2 5−λ⎠ ⎩ 2

luego la matriz A es definida positiva.

b) La funcional cuadrática asociada es:

1 T 1 ⎡1 2⎤ ⎛ x ⎞ ⎛ x⎞
J ( x, y ) = x Ax - bT x + c = ( x y) ⎢ ⎥ ⎜ ⎟ − (3 7) ⎜ ⎟ + c =
2 2 ⎣2 5⎦ ⎝ y ⎠ ⎝ y⎠
1 2 5
= x + 2 xy + y 2 − 3 x + 7 y + c
2 2

c) La primera dirección de descenso es:

⎛ 3 ⎞ ⎡ 1 2 ⎤ ⎛ 2 ⎞ ⎛ −3 ⎞
d( ) = r ( ) = b − Ax( ) = ⎜ ⎟ − ⎢ ⎥⎜ ⎟ = ⎜ ⎟
0 0 0

⎝ 7 ⎠ ⎣ 2 5 ⎦ ⎝ 2 ⎠ ⎝ −7 ⎠

y el parámetro de descenso:

1
Programación y Métodos Numéricos Carlos Conde, Arturo Hidalgo y Alfredo López
ETSI Minas de la Universidad Politécnica de Madrid

⎛ 3⎞
( )d(
0)
T
d(
0) (3 7) ⎜ ⎟
ρ= = ⎝7⎠ =
58
= 0.1715976331
( d( ) ) A d( ) ⎛ 1 2 ⎞⎛ 3 ⎞ 338
T

(3 7) ⎜
0 0
⎟⎜ ⎟
⎝ 2 5 ⎠⎝ 7 ⎠

⎛ 2⎞ ⎛ −3 ⎞ ⎛ 1.485207101 ⎞
x( ) = x( ) + ρ d( ) = ⎜ ⎟ + 0.1715976331⎜ ⎟ = ⎜
1 0 0

⎝ 2⎠ ⎝ −7 ⎠ ⎝ 0.798816568 ⎠

⎛ −3 ⎞ ⎛ 1 2 ⎞ ⎛ −3 ⎞ ⎛ -0.082840237 ⎞
r ( ) = r ( ) − ρ Ad( ) = ⎜ ⎟ − 0.1715976331⎜ ⎟⎜ ⎟ = ⎜
1 0 0

⎝ −7 ⎠ ⎝ 2 5 ⎠ ⎝ −7 ⎠ ⎝ 0.035502957 ⎠

⎛ -0.082840237 ⎞
( )
r( )
1
T
r( )
1 ( -0.082840237 0.035502957 ) ⎜ ⎟
α= = ⎝ 0.035502957 ⎠ = 0.0001400511176
(r( ) ) ⎛ 3⎞
T
( 0)
(3 7) ⎜ ⎟
0
r
⎝7⎠

⎛ -0.082840237 ⎞ ⎛ -3 ⎞ ⎛ -0.08326039035 ⎞
d( ) = r ( ) + α d( ) = ⎜ ⎟ + 0.0001400511176 ⎜ ⎟ = ⎜
1 1 0

⎝ 0.035502957 ⎠ ⎝ -7 ⎠ ⎝ 0.03452259918 ⎠

⎛ -0.082840237 ⎞
(r ) r(1) T
(1) ( -0.082840237
0.035502957 ) ⎜ ⎟
ρ= = ⎝ 0.035502957 ⎠
=
(d( ) ) Ad( ) ⎛ 1 2 ⎞ ⎛ -0.08326039035 ⎞
T

( -0.08326039035 0.03452259918 ) ⎜
1 1
⎟⎜ ⎟
⎝ 2 5 ⎠ ⎝ 0.03452259918 ⎠

= 5.827586205

⎛ 1.485207101 ⎞ ⎛ -0.08326039035 ⎞ ⎛ 0.9999999988 ⎞


x( ) = x( ) + ρ d ( ) = ⎜ ⎟ + 5.827586205 ⎜ ⎟=⎜
2 1 1

⎝ 0.798816568 ⎠ ⎝ 0.03452259918 ⎠ ⎝ 0.9999999907 ⎠

NOTA: puede comprobarse fácilmente que la solución del sistema propuesto es (1,1)T
y esta debería haber sido la solución obtenida por el método de gradiente conjugado al
ser éste un método exacto en n iteraciones. La diferencia se debe exclusivamente a los
errores de redondeo.

You might also like