Académique Documents
Professionnel Documents
Culture Documents
uk+1 = uk + d o uk+1 = uk + d+ ,
2 Algoritmo Libre de Derivadas donde (0, 1), d = k F (uk ), y d+ =
k F (uk ), satisfacen alguna de las siguientes de-
En esta seccion describimos el Algoritmo NDF- sigualdades:
SANE y su version precondicionada. Luego da-
mos algunos detalles de la implementacion de f (uk + d ) f (uk ) + k 2 kd k2 (5)
NDF-SANE.
o
Sea F : Rn 7 Rn una funcion continua-
mente diferenciable en Rn . Se define la funcion f (uk + d+ ) f (uk ) + k 2 kd+ k2 , (6)
Las condiciones (5) y (6) conforman una (v) En la practica, los parametros asociados con
busqueda lineal no-monotona necesaria para ga- la estrategia de busqueda lineal se escogen
rantizar la convergencia de NDF-SANE. para reducir el numero de backtrackings
En el Algoritmo 2.1 se describe el metodo tanto como sea posible, garantizando las
NDF-SANE. Aqu se muestra como se generan propiedades de convergencia del metodo.
los iterados uk+1 y cuando termina el proceso. Por ejemplo, el parametro > 0 se escoge
como un numero muy pequeno ( 104 ),
Algoritmo 2.1 (Algoritmo NDF-SANE).
y k se escoge lo suficientemente grande
Paso 0. Escoger u0 Rn , {k }, 0 < < 1, cuando k = 0 y se va reduciendo lenta-
0 < min < max < , y 0 < min < mente asegurando que se cumpla (4) (por
max < 1. Asignar k := 0. ejemplo, k = 104 (1 102 )). Finalmente,
Paso 1. Si F (uk ) = 0 parar el proceso; 0 < min < max son parametros clasicos
Paso 2. escoger k tal que |k | [min , max ]; en los procesos de busquedas lineales (por
Paso 3. asignar d := k F (uk ); ejemplo, min = 0.1 y max = 0.5).
Paso 4. asignar := 1;
Paso 5. si f (uk + d) f (uk ) + k 2 kdk2 , Los siguientes resultados de convergencia
definir dk = d, e ir al Paso 8; se encuentran en La Cruz [9, Captulo 3].
Paso 6. si f (uk d) f (uk ) + k 2 kdk2 ,
definir dk = d, e ir al Paso 8; Teorema 2.1. Asumamos que 0 es acotado,
Paso 7. (Proceso de Backtracking) F es continuamente diferenciable sobre un con-
escoger new [min , max ], asignar junto abierto O que contiene a 0 , y {uk } es la
:= new , e ir al Paso 5; sucesion generada por el Algoritmo 2.1. Enton-
Paso 8. definir k = , uk+1 = uk + k dk , ces todos los puntos lmites u de {uk } satisfacen
asignar k := k + 1, e ir al Paso 1.
F (u )T F 0 (u )F (u ) = 0.
Comentarios.
Corolario 2.1. Asumamos que 0 es acotado,
(i) El Algoritmo 2.1 esta bien definido. En F es continuamente diferenciable sobre un con-
efecto, por la continuidad de f y dado que junto abierto O que contiene a 0 , y {uk } es la
k > 0, las condiciones de los Pasos 5 o 6 sucesion generada por el Algoritmo 2.1. Supon-
se satisfacen con finitas reducciones de . gamos que u es un punto lmite de {uk } tal que
para todo v Rn , v 6= 0,
(ii) La sucesion {uk } generada por el Algo-
ritmo 2.1 esta contenida en el conjunto ce- v T F 0 (u )v 6= 0.
rrado
Entonces, F (u ) = 0.
0 = {u Rn : 0 f (u) f (u0 ) + } . Definicion 2.1. Si F 0 (u) es definida positiva para
todo u Rn decimos que el mapeo F es
(iii) En el Algoritmo 2.1 no es necesario almace- estrictamente monotono. Si F es estrictamente
nar el Jacobiano de F o una aproximacion monotono o F es estrictamente monotono, de-
del mismo. cimos que el mapeo F es estricto. Si un mapeo
es estricto y admite una solucion, esta es unica
(iv) Se observa que no es necesario la reso-
(ver [14], Captulo 5).
lucion de un sistema de ecuaciones linea-
les en cada iteracion para generar una di- Corolario 2.2. Asumamos que 0 es acotado,
reccion de busqueda, que es lo tpico en los F es continuamente diferenciable sobre un con-
metodos tipo Newton o Casi-Newton. Esta junto abierto O que contiene a 0 , y {uk } es la
caracterstica de NDF-SANE puede ser de sucesion generada por el Algoritmo 2.1. Si el ma-
gran utilidad en la resolucion de sistemas peo F is estricto, entonces {uk } converge a la
de gran escala. solucion de F (u) = 0.
Teorema 2.2. Asumamos que 0 es acotado, Comentarios.
F es continuamente diferenciable sobre un con-
junto abierto O que contiene a 0 , y {uk } es la (i) Con la incorporacion de la matriz M en el
sucesion generada por el Algoritmo 2.1. Supon- Algoritmo 2.2 se pretende que la direccion
gamos que existe un punto lmite u de {uk } tal de NDF-SANE se aproxime a la direccion
que F (u ) = 0. Entonces las siguientes condi- de Newton d = F 0 (uk )1 F (uk ).
ciones se cumplen: (ii) En la practica para determinar la direccion
(i) La sucesion {F (uk )} converge a 0. d = k M 1 F (uk ), no se calcula la in-
Ademas, todo punto lmite de {uk } es versa de M . Simplemente d se obtiene re-
solucion de F (u) = 0. solviendo el sistema de ecuaciones lineales
M d = k F (uk ).
(ii) Si existe > 0 tal que F (u) 6= 0 siempre
que 0 < ku u k , entonces la sucesion 2.2 Implementacion
{uk } converge a u .
Implementamos los Algoritmo 2.1 y 2.2 con los
siguientes parametros:
2.1 Version Precondicionada
k = (1 102 )k , donde
A continuacion presentamos la version pre-
condicionada de NDF-SANE que denominamos kF (u0 )k2 , kF (u0 )k2 1,
=
PNDF-SANE. 104 , kF (u0 )k2 > 1.
La diferencia entre los algoritmos NDF-
SANE y PNDF-SANE es que en PNDF-SANE 0 = 1
se definen las direcciones de busqueda como
d = k M 1 F (uk ), donde M es una matriz min = 1010
simetrica definida positiva (SDP) de orden n.
max = 1010
Para revisar las propiedades de convergencia de
PNDF-SANE se recomienda [10]. = 104
min = 0.1
Algoritmo 2.2 (Algoritmo PNDF-SANE).
max = 0.5
Paso 0. Escoger u0 Rn , {k }, 0 < < 1,
0 < min < max < , 0 < min < El coeficiente espectral normalmente se de-
max < 1, y una matriz SDP M de orden fine a traves de la formula:
n. Asignar k := 0.
t 1
Paso 1. Si F (uk ) = 0 parar el proceso; sk yk
Paso 2. escoger k tal que |k | [min , max ]; k = para k 1, (7)
stk sk
Paso 3. asignar d := k M 1 F (uk );
Paso 4. asignar := 1; donde sk = uk uk1 y yk = F (uk ) F (uk1 ).
Paso 5. si f (uk + d) f (uk ) + k 2 kdk2 , Esta expresion no es muy eficiente para calcular
definir dk = d, e ir al Paso 8; al coeficiente espectral. De (7) y de las definicio-
Paso 6. si f (uk d) f (uk ) + k 2 kdk2 , nes de sk , yk , y uk , podemos escribir:
definir dk = d, e ir al Paso 8;
Paso 7. (Proceso de Backtracking) stk yk F (uk1 )T F (uk ) f (uk1 )
escoger new [min , max ], asignar = ,
stk sk k1 k1 f (uk1 )
:= new , e ir al Paso 5;
Paso 8. definir k = , uk+1 = uk + k dk , donde los signos o + se toman respectiva-
asignar k := k + 1, e ir al Paso 1. mente si la direccion es dk1 = k1 F (uk1 )
o si es dk1 = k1 F (uk1 ). Por tanto, el coefi- en un Computador Pentium IV de 3.0 GHz con
ciente espectral se puede definir como: epsilon de maquina 2 1016 .
1 Para la funcion fsolve del Toolbox de op-
F (uk1 )T F (uk ) f (uk1 ) timizacion de MATLAB empleamos la opcion:
k = . (8)
k1 k1 f (uk1 )
options=optimset(LargeScale,on,...
En el calculo de k utilizando la ecuacion MaxFunEvals,10000,MaxIter,2000,...
(8) se realiza un producto interno; en cambio, en TolFun,1.0d-8,TolX,1.0d-8).
la ecuacion (7) se necesitan dos productos inter-
La funcion fsolve, con la opcion
nos. Por ello, la obtencion de k a traves de (8)
LargeScale seleccionada con optimset,
es mas eficiente. En consecuencia, calculamos el
usa un algoritmo de gran-escala. Este algoritmo
coeficiente espectral empleando (8).
es un metodo de regiones de confianza, basado
Ahora, si |k | 6 [min , max ] reemplaza-
en el metodo de Newton de puntos interiores-
mos el coeficiente espectral por
reflexivo descrito en [5], [4]. En cada iteracion de
Newton se utiliza el metodo gradiente conjugado
1 si kF (uk )k > 1,
1 precondicionado para obtener una solucion
k = kF (uk )k si 105 kF (uk )k 1,
5 aproximada de un sistema de ecuaciones lineales
10 si kF (uk )k < 105 . de gran-escala.
Para escoger new en los Algoritmos 2.1 y Para PNDF-SANE usamos la factorizacion
2.2, utilizamos el siguiente procedimiento des- LU incompleta de A como estrategia de precon-
crito en [11]: dado > 0, tomamos new > 0 dicionamiento, es decir, la matriz precondiciona-
como dora es M = U 1 L1 donde las matrices L y U
se obtienen con el comando de MATLAB
min si c < min ,
new = max si c > max , [L, U ] = luinc(A, 1.0d-6).
c de lo contrario, En el estudio numerico consideramos dos
ecuaciones en derivadas parciales (1) de gran im-
donde
2 fc portancia en el campo de la fsica (electroma-
c = , gnetismo y transporte): Ecuacion de Poisson y
fc + (2 1)f (uk )
y Ecuacion de Conveccion-Difusion. A continua-
cion describimos una familia particular de ecua-
fc = max{f (uk + d), f (uk d)}. ciones de Poisson y otra familia de ecuaciones de
Conveccion-Difusion.
Empleamos el criterio de parada
Problemas de Poisson
kF (uk )k kF (u0 )k, (9)
v3
donde 0 < << 1. 2 v + = g(x, y) (10)
1 + x + y2
IT EF BL T e?
-60 247 349 50 5.438 1.40e-3
-50 195 295 49 4.453 1.40e-3
-40 162 253 44 3.844 1.40e-3
-30 141 234 45 3.547 1.40e-3
-20 122 216 46 3.281 1.40e-3
-10 109 173 31 2.703 1.40e-3
0 107 161 26 2.500 1.40e-3
10 101 140 18 2.125 1.40e-3
20 99 133 16 2.016 1.40e-3 Figura 1. Comportamiento de NDF-SANE y
30 106 138 15 2.125 1.40e-3
PNDF-SANE para el problema de Conveccion-
40 111 129 9 2.000 1.40e-3
50 111 129 9 1.984 1.40e-3 Difusion con = 60.
60 110 126 8 1.953 1.40e-3
4 Comentarios Finales