Вы находитесь на странице: 1из 13

MTODO DE LA MXIMA PENDIENTE

I.

Introduccin Uno de los mtodos ms antiguos para minimizar una funcin de varias variables es el mtodo de la mxima pendiente, tambin llamado mtodo del gradiente o mtodo del descenso. El mtodo de la Mxima Pendiente converge a la solucin generalmente slo de manera lineal, pero es de naturaleza global, esto es, a partir de casi cada valor inicial se produce convergencia, aunque estos valores iniciales sean deficientes. En consecuencia, con l se logran aproximaciones iniciales suficientemente exactas para las tcnicas que tienen como base el mtodo de Newton, del mismo modo que el mtodo de la biseccin se utiliza en una sola ecuacin. El mtodo de la Mxima Pendiente determina un mnimo local para una funcin de varias variables de la forma g: lRn lR. El mtodo es de gran utilidad independientemente de su aplicacin como primer mtodo para resolver los sistemas no lineales. La conexin entre el problema de minimizar una funcin de lRn en lR y la resolucin de un sistema de ecuaciones no lineales reside en el hecho de que un sistema lineal de la forma: ( ( ) )

( tiene una solucin en por: ( tiene valor mnimo cero. ( )

) justo cuando la funcin g definida

, (

)-

En el mtodo de la Mxima Pendiente para encontrar un mnimo local de una funcin cualquiera g de lRn en lR puede describirse de manera intuitiva como sigue: Evaluar
( )

la
( ) ( )

funcin
( )

g ).

en

una

aproximacin

inicial

Determinar una direccin que, desde valor deg.

( )

, se origine una disminucin del

Desplace una cantidad apropiada hacia esta direccin y llame al nuevo vector ( ) . Repetir los tres pasos anteriores sustituyendo
( )

por

( )

Antes de describir cmo seleccionar la direccin correcta y la distancia apropiada que se recorre en dicha direccin, es preciso repasar algunos resultados del clculo infinitesimal. Teorema 1.Teorema de la valores extremos Este teorema establece que una funcin diferenciable de una sola variable puede tener un mnimo relativo slo cuando su derivada sea cero. Para extender este resultado a las funciones de varias variables se necesita la siguiente definicin. Definicin 1. Si g: lRn lR, se define el gradiente de g en ( ) , que se denota con ( ) y se define por medio de: ( ) ( ( ) ( ) ( ))

El gradiente de una funcin de varias variables es el anlogo a la derivada de una funcin de varias variables en el sentido de que una funcin de varias variables diferenciable puede tener un mnimo local en un punto x slo cuando su gradiente en x es el vector cero. El gradiente tiene otra propiedad muy importante en relacin con la minimizacin de las funciones de varias variables. Supngase que ( ) es un vector unitario de lRn; es decir:

Definicin 2.La derivada direccional de g en x en la direccin de v est definida por:

( )

, (

( )-

( )

La derivada direccional de g en x en la direccin de v mide la variacin de los valores de la funcin g con respecto a los cambios de su variable en la direccin de v.

Cuando g es una funcin de dos variables Figura 1

Un resultado estndar del clculo infinitesimal de las funciones de varias variable se establece que si la funcin g es diferenciable, la direccin en la que se obtiene la derivada direccional de mayor tamao se obtiene cuando v es paralelo al gradiente ( ), siempre y cuando ( ) . En consecuencia, la direccin de la mxima disminucin de los valoresde g desde x es la direccin dada por ( ). Puesto que el objetivo es reducir ( ) a su valor mnimo de cero, dada la aproximacin inicial ( ) , se toma:
( ) ( )

( )

(**)

para alguna constante

El problema, entonces, se reduce a escoger un valor de

de manera que (

( )

sea significativamente menor que ( ( ) ). Si se quiere determinar una eleccin apropiada del valor de , considerense la funcin de una sola variable ( ) El valor de (
( )

( )

))

que minimiza h es el valor que se requiere en la ecuacin (**).

Para obtener directamente un valor mnimo de h se requiere derivar h, y luego resolver un problema de clculo de races para determinar los puntos crticos de h. Este procedimiento es generalmente demasiado costoso en trminos de clculos necesarios. Por ello se seleccionan tres puntos que, se espera, estn cerca de donde ( )alcanza su valor mnimo. A continuacin, se construye el polinomio de segundo grado ( )que interpola h en , y . - tal que ( )sea el mnimo de ( ) en , Tomamos un valor en , y usando ( )como aproximacin del valor mnimo de ( ). Entonces es el valor que se utiliza para determinar la nueva iteracin en la bsqueda del valor mnimo de g:
( ) ( )

( )

Como ya se dispone de ( ( ) ), para reducir el esfuerzo computacional en lo posibleel primer punto que se escoge es . A continuacin, se toma un punto tal que ( ) ( ) . (Dado que no es el mnimo de h, dicho nmero si existe). Finalmente se decide que sea igual a .

- es el nico El punto donde se alcanza el valor mnimo de ( ) en , puntocrtico de P o el punto extremo derecho del intervalo porque, por ( ) ( ) suposicin, ( ) ( ) .Dado que ( ) es un polinomio de segundo grado dichopunto crtico se puede determinar fcilmente.
II.

Algoritmo matemtico del mtodo Para aproximar una solucin p al problema de minimizacin ( ) Dada una aproximacin inicial x: Entrada: nmero de n variables; aproximacin inicial tolerancia TOL; nmero mximo de iteraciones N. ( ) , ( )

Salida: solucin aproximada

) o un mensaje de falla.

Paso 1. Tome k = 1. Paso 2. Mientras ( ), haga los pasos 3-15. ( ); (Nota: Paso 3. Tome ( ( ) )) ( ); (Nota: ( ( ) )) Paso 4. Si , entonces SALIDA (Gradiente cero); ); SALIDA( (Procedimiento terminado, pude tener un mnimo.) PARAR. Paso 5. Tome z = z/z0; (convierta a z en un vector unidad.) ; ; ( ). Paso 6. Mientras ( ), hago los pasos 7 y8. ; (

Paso 7. Tome Paso 8. Si

, entonces SALIDA (Mejora poco probable); ); SALIDA( (Procedimiento terminado, pude tener un mnimo.) PARAR. Paso 9. Tome ( ). ) ); ( ) . ;

Paso 10. Tome ( ) (

(Nota: La formula de las diferencias divididas hacia delante de Newton sirve para encontrar el cuadrtico ( ) ( ) que interpola ( )en , y ).

Paso 11. Tome

( (

); (el punto crtico de P ocurre ).

Paso 12. Obtenga

de *

+ tal que

Paso 13.Tome x = x z | Paso 14. Si | , entonces ); SALIDA ( (Procedimiento terminado exitosamente) PARAR Paso 15. Tome k = k + 1 Paso 16. SALIDA (Nmero mximo de iteraciones excedido ). (Procedimiento terminado sin xito). PARAR

III.

Ejemplo Sea el sistema no lineal de ecuaciones siguiente: ( ( ( ) ) ) ( ( ) )

Mediante el mtodo de la Mxima Pendiente calclese la aproximacin de la solucin, comenzando en el punto inicial ( ) ( ). Solucin: ( Sea entonces: ( ) ) , ( ), ( ), ( );

( )

( ) ( )

( ) ( )

( ) ( )

( ) ( )

( ) ( )

( ) ( )

( )

( ) ( ) ( )

( )

( )

( )

( ))

Con ( Sea

( ) ( )

) , tenemos: y (
( )

( Para , tenemos arbitraria, hacemos

( )

( ( ( ) ) , de modo que: (
( )

). (
( )

. De manera

) . As, )

Como

, aceptamos

y hacemos (
( )

Ahora construimos el polinomio de interpolacin de Newton con diferencias divididas hacia adelante: ( ) que interpola ( en , , , , , , , y
( )

( )

))

( )

como sigue:

Por tanto: ( ) Tenemos ( ( ) que ) ( ) cuando es menor que ( y ( ) Como y , hacemos: )

( )

La siguiente tabla contiene el resto de los resultados. Una solucin real del sistema no lineal es (0.5, 0, -0.5235988) t.

k 2 3 4 5 6 7 0.137860 0.266959 0.272734 0.308689 0.314308 0.324267 -0.205453 0.00551102 -0.00811751 -0.0204026 -0.0147046 -0.00852549 -0.522059 -0.558494 -0.522006 -0.533112 -0.520923 -0.528431

g( 1.27406 1.06813 0.468309 0.381087 0.318837 0.287024

IV.

Aplicacin Este mtodo puede utilizarse para hallar los mximos picos, los cuales pueden ser usados en varias ramas. En estadstica es utilizado para hallar el rendimiento de diferentes situaciones como el de una poblacin, hallando su mxima pendiente por la varianza que presente.

V.

Algoritmo computacional

Inicio

f(x), N, n, X, TOL

k=1

g1 = g(x (k))

z=

g(x (k))

z0 =

Si z0 =0

g1

z = z/z0

1= 0 3= 1 g3=g(x- 3z)
2 2 2 2 1 3

W g3 g1

3= 3/2

g3=g(x- 3z)

Si 3 < TOL/2

g1

2= 3/2

g2=g(x- 2z)

h1= ( g2-g1)/ 2

h2= (g3-g2)/ (3- 2)


2 4 3

h3= ( h2-h1)/ 3

Encontrar el polinomio cuadrtico

0= 0.5 (2- h1)/ h3 g0=g(x- 0z) g=g(x- z) = mn { g0, g3} x = x-z

Si |g-g1|>TOL

k=k+1

Nmero mximo de iteraciones (N) excedidas

Fin

VI.

Conclusiones y recomendaciones El mtodo de la mxima pendiente es un mtodo que converge slo linealmente a la solucin. Este mtodo casi siempre convergir incluso con aproximaciones inciales deficientes. El mtodo de la mxima pendiente es de convergencia lenta, se necesitar ms iteraciones para aproximarnos cada vez ms. Se recomienda tener mucho cuidado en el clculo de cada iteracin, ya que un mal clculo podra hacernos repetir todo el procedimiento. El mtodo de la mxima pendiente admite muchas variaciones, algunas de las cuales incluyen tcnicas ms complejas para determinar el valor de . Tenemos que tener conocimientos con el mtodo de Interpolacin de Newton, o algn otro que nosotros tengamos conocimiento para la construccin del polinomio cuadrtico, que necesitamos en el mtodo de la mxima pendiente.

VII.

Anexo

Programa en Matlab

function [x,varargout]= maxPendiente(a,b,varargin) n=length(a); x=zeros(n,1); mmax=40; eps=1e-6; if nargin>2 mmax=varargin{1}; end if nargin>3 eps=varargin{2}; end if (nargin>4) x=varargin{3}; end res=zeros(1,mmax); r=b-a*x; res(1)=dot(r,r); aux=norm(b); for m=1:mmax p=a*r; xi=res(m)/dot(r,p); x=x+xi*r; r=r-xi*p; res(m+1)=dot(r,r); % guardamos los residuos if (sqrt(res(m+1))<eps*aux); break end end res=res(1:m+1); if (m==mmax) && nargout<=3 disp('numero maximo de iteraciones sobrepasado') end if nargout>1 varargout{1}=m; end if nargout>2 varargout{2}=sqrt(res(:)); end if (nargout>3) if m==mmax varargout{3}=0; else varargout{3}=1; end end return

Вам также может понравиться