Professional Documents
Culture Documents
MTODOS NUMRICOS
Alumnos:.. Plasencia Nuez, Cristian. Razuri Deza, Silvana Ruiz Huancas, Henry. Segura Agreda, Fernando Villanueva Ajito, Naomi
Curso: Metodos Numericos Escuela: Ingeniera Industrial Docente: Ing. Segundo Ramirez
MTODOS NUMRICOS
INTRODUCCION
La Programacin no Lineal (PNL) es una parte de la Investigacin Operativa cuya misin es proporcionar una serie de resultados y tcnicas tendentes a la determinacin de puntos ptimos para una funcin (funcin objetivo) en un determinado conjunto (conjunto de oportunidades), donde tanto la funcin objetivo, como las que intervienen en las restricciones que determinan el conjunto de oportunidades pueden ser no lineales. Evidentemente, la estructura del problema puede ser muy variada, segn las funciones que en l intervengan (a diferencia de la Programacin Lineal (PL) donde la forma especial del conjunto de oportunidades y de la funcin objetivo permite obtener resultados generales sobre las posibles soluciones y facilitan los tratamientos algortmicos de los problemas). Ello ocasiona una mayor dificultad en la obtencin de resultados, que se refleja tambin en la dificultad de la obtencin numrica de las soluciones. En este sentido, hay que distinguir entre las diversas caracterizaciones de ptimo, que slo se emplean como tcnicas de resolucin en problemas sencillos, y los mtodos numricos iterativos, cuyo funcionamiento se basa en estas caracterizaciones, para la resolucin de problemas ms generales.
El tema que abordamos est compuesto por los siguientes epgrafes: en la seccin 1, aparte de esta introduccin, definimos el problema general de Programacin no Lineal que estudiamos, y daremos las definiciones y resultados bsicos que se emplearn a lo largo de todo el tema. Asimismo, se recuerda el estudio de los problemas irrestrictos (PI) y de los problemas con restricciones de igualdad (PRI). La seccin 2 se dedica a establecer y dar los conceptos bsicos de los problemas con restricciones de desigualdad (PRD), mientras que la seccin 3 estudia la resolucin de estos problemas a travs de la definicin de punto estacionario, y algunas de sus variaciones para casos especiales. Con la utilizacin del llamado punto minimax, se aborda en la seccin 4 el concepto de dualidad en Programacin Matemtica.
El problema general de Programacin no Lineal que estudiaremos a lo largo de todo el tema toma la siguiente forma:
Ingeniera Industrial
Pgina 2
MTODOS NUMRICOS
As pues, en algunos casos, el objetivo de la PNL consiste en encontrar las variables de decisin factibles para el problema para las cuales la funcin objetivo tome el mayor valor posible. En otros casos, el objetivo ser encontrar el mnimo de la funcin. OPTIMIZACIN NO RESTRINGIDA DE UNA VARIABLE Se comenzar por explicar cmo se pueden resolver algunos tipos de problemas como los que se acaban de describir, considerando el caso ms sencillo, la optimizacin no restringida con una sola variable x(n=1) en donde la funcin diferenciable f(x) que debe maximizarse es cncava. As, la condicin necesaria y suficiente para que unas solucin particular x=x* sea ptima ( un mximo global) es : en x=x*
como se muestra en la figura siguiente. Si en esta ecuacin se puede despejar de modo directo , el problema lleg a su fin; pero si f(x) no es una funcin sencilla y su derivada no es una funcin lineal o cuadrtica, tal vez sea imposible resolver la ecuacin analtica. De ser as, el procedimiento de bsqueda en una dimensin proporciona una forma sencilla de obtener una solucin numrica.
f(x)
x*
Ingeniera Industrial
Pgina 3
MTODOS NUMRICOS
SOLUCIN DE PNL CON UNA VARIABLE En esta seccin, explicaremos cmo resolver un PNL: max (o min) f(x) x [a, b] (1)
[Si b = , entonces la regin factible para el PNL es x a , y si a= -, entonces la regin factible para (1) es xb] Para encontrar la solucin optima a (1), se encuentran los mximos locales (o mnimos). Un punto que es un mximo local o mnimo local para (1) se llama un extremo local. Entonces la solucin ptima para (1) es el mximo local (o mnimo) que tiene el valor ms grande (o ms pequeo de f(x). Por supuesto, si a= - o b= , entonces es posible que (1) no tenga solucin ptima.
Hay tres tipos de puntos para los que (1) puede tener un mximo local o mnimo (estos puntos por lo comn se llaman candidatos extremos): Caso 1 Puntos donde a < x <b y f(x) = 0 *llamado un punto estacionario de f(x)] Caso 2 Puntos donde f(x) no existe Caso 3 Puntos finales a y b del intervalo [a, b]
Ingeniera Industrial
Pgina 4
MTODOS NUMRICOS
Caso 1 Puntos donde a < x < b y f(x)=0
Suponga que a < x < b , y f(x0) existe. Si x0 es un mximo local o un mnimo local, entonces f(x0)=0. Para ver esto , considere las figuras a y b. De la figura a, se ve que si f(x0)=0 entonces hay puntos x1 y x2 cerca de x0 donde f(x1) < f(x0) y f(x2)>f(x0). As, si f(x0)>0, x0 no puede ser un mximo local o un mnimo local. De manera similar en la figura b se muestra que si f(x0)<0, entonces x0 no puede ser un mximo local o un mnimo local. Sin embargo, de las figuras c y d, se ve que f(x 0)=0, entonces x0 podra ser un mximo local o un mnimo local. Por desgracia, en la figura e se observa f(x0) puede ser igual a cero sin que x0 sea un mximo local o un mnimo local. De la figura c, se observa que si f(x0) cambia de positiva a negativa conforme pasa por x0, entonces x0 es un mximo local. As, si f(x0)<0, x0 es un mximo local . D e manera similar, de la figura d, se ve que si f(x0) cambia de negativa a positiva a medida que se pasa por x0, x0 es un mnimo local. As, si f(x0)>0, x0 es un mnimo local.
Ingeniera Industrial
Pgina 5
MTODOS NUMRICOS
Ingeniera Industrial
Pgina 6
MTODOS NUMRICOS
TEOREMA 1 Si f(x0) = 0 y f(x0) <0, entonces x0 es un mximo local. Si f(x0) = 0 y f(x0)>0, entonces x0 es un mnimo local. Qu pasa si f(x0) = 0 y f(x0) = 0 ( este caso se muestra en la figura e) .En este caso se determina x0 es un mximo local o un mnimo local mediante la aplicacin del teorema 2.
TEOREMA 2 Si f(x0) = 0, y 1. Si la primera derivada no nula (no cero) en x0 es una derivada de orden impar [ f (3)(x0),f(5)(x0),etctera], entonces x0 no es un mximo local o mnimo local. 2. Si la primera derivada no nula en x0 es positiva y de orden par, entonces x0 es un mximo local. 3. Si la primera derivada no nula en x0 es negativa y de orden par, entonces x0 es un mximo local.
CASO 2 Puntos donde f(x) no existe Si f(x) no tiene una derivada en x0, x0 podra ser un mximo local, un mnimo local o ninguno. En este caso, se determina si x0 es un mximo local o un mnimo local al comprobar los valores de f(x) en los puntos x1 <x0 y x2>x0 cerca de x0. Los cuatro casos posibles que pueden ocurrir se resumen en la tabla 1.
Ingeniera Industrial
Pgina 7
MTODOS NUMRICOS
Ingeniera Industrial
Pgina 8
MTODOS NUMRICOS
TABLA 1:
Cmo determinar si un punto donde f(x) no existe es un mximo local o un mnimo local. Relacin entre f(x0), f(x1) y f(x2) f(x0)>f(x1) ; f(x0)<f(x2) f(x0)<f(x1) ; f(x0)>f(x2) f(x0)f(x1); f(x0)f(x2) f(x0)f(x1); f(x0)f(x2) X0 No es un extremo local No es un extremo local Mximo local Mnimo local Figura a b c d
CASO 3 Puntos finales a y b de [a,b] De la siguiente figura, se ve que : Si f(a) > 0 , entonces a es un mnimo local. Si f(a)>0 , entonces a es un mximo local. Si f(b)>0 , entonces b es un mximo local. Si f(b)<0 , entonces b es un mnimo local.
Ingeniera Industrial
Pgina 9
MTODOS NUMRICOS
Ingeniera Industrial
Pgina 10
MTODOS NUMRICOS
EJEMPLO 1: Un monopolista maximiza su ganancia
A un monopolista le cuesta $5/unidad producir un producto. Si produce x unidades del producto, entonces cada uno se puede vender en 10 x dlares (0x10). Para maximizar la ganancia, cunto debe producir el monopolista? Solucin Sea P(x) la ganancia del monopolista si produce x unidades. Entonces : P(x) = x(10-x) 5x = 5x x2 ( 0x10) As, el monopolista quiere resolver el siguiente problema de PNL : max P(x) 0x10 Ahora se clasifican los candidatos extremos: Caso 1 P(x) = 5 2x , as que P(2.5)=0. Debido a que P(x) = -2 , x=2.5 es un mximo local que produce una ganancia de P(2.5)=6.25. Caso 2 P(x) existe para los puntos en *0,10+, as que no hay candidatos de caso 2 . Caso 3 a=0 tiene P(0)= 5 >0, de modo que a=0 es un mnimo local ; b=10 tiene P(10)=-15 <0, entonces b=10 es un mnimo local. As, x= 2.5 es el nico mximo local. Esto significa que las ganancias del monopolista se maximizan al elegir x= 2.5. Observe que P(x) =-2 para todos los valores de x. Esto muestra que P(x) es una funcin cncava. Cualquier mximo local para P(x) debe ser la solucin ptima para el PNL. As, el teorema 1 implica que una vez determinado que x=2.5 es un mximo local, se sabe que es la solucin ptima para el PNL.
EJEMPLO 2 : Determinacin del mximo global cuando el punto final es un mximo. Sea f(x) = 2 (x-1)2 para 0x<3 f(x) = -3 + (x-4)2 para 3x6 Encuente max f(x) donde 0x6 Ingeniera Industrial Pgina 11
MTODOS NUMRICOS
SOLUCIN
Caso 1 Para 0x<3, f(x)= -2(x-1) y f(x) = -2. Para 3<x6, f(x) = 2(x-4) y f(x) =2. As, f (1) =f (4)=0. Debido a que f (1)<0 , x=1 es un mximo local. Debido a que f (4)>0, x=4 es un mnimo local. Caso 2 De la figura que presentaremos a continuacin, se ve que f(x) no tiene derivada en x=3 ( para x ligeramente menor que 3, f(x) esta cerca de -4, y para x un poco mayor que 3, f(x= est cerca de -2). Debido a que f(2.9) = -1.61, f(3) = -2 , y f(3.1)=-2.19, x=3 no es un extremo local. Caso 3 Debido a que f(0)=2 >0, x=0 es un mnimo local. Debido a que f(6) = 4 > 0, x=6 es un mximo local. Por la tanto, en [0,6], f(x) tiene un mximo local para x=1 y x=6. Debido a que f(1) = 2 y f(6)=1, se encuentra que la solucin ptima para el PNL ocurre para x=1.
Ingeniera Industrial
Pgina 12
MTODOS NUMRICOS
ALGORITMOS SIN RESTRICCIN En esta seccin se presentarn dos algoritmos para el problema 110 restringido: el algoritmo de bsqueda directa y el algoritmo de gradiente. 1. Mtodo de bsqueda directa Los mtodos de bsqueda directa se aplican principalmente a funciones estrictamente unimodales de una variable. Aunque puede parecer trivial el caso, la seccin 21.1.2 muestra que la optimizacin de funciones de una variable juega un papel clave en el desarrollo de los algoritmos de varias variables, ms generales. La idea de los mtodos de bsqueda directa es identificar el intervalo de Incertidumbre que comprenda al punto de solucin ptima. El procedimiento localiza el ptimo estrechando en forma progresiva el intervalo de incertidumbre hasta cualquier grado de exactitud que se desee. En esta seccin se presentan dos algoritmos estrechamente relacionados: los mtodos de bsqueda dictomo y de seccin dorada (o urea). Ambos buscan la maximizacin de una funcin unimodal f(x) en el intervalo a x b, que se sabe que incluye el punto ptimo x*. Los dos mtodos comienzan con I0 = (a, b) que representa el intervalo inicial de incertidumbre. Paso general i. Sea Ii-1 = (xL, xR) el intervalo actual de incertidumbre (en la iteracin 0, xL = a y xR = b). A continuacin se definen x1 y x2 tales que XL < X1 < X2 < XR El siguiente intervalo de incertidumbre, Ii , se define como sigue: 1. Si f(x1) > f(x2), entonces xL < x* < x2. Se definen xR = x2 e Ii = (xL , x2) (vase la figura 21.2[a]).
Ingeniera Industrial
Pgina 13
MTODOS NUMRICOS
2. Si f(x1) < f(x2), entonces x1 < x* < x2. Se definen xL = x1 e Ii = (x1 , xR) (vase la figura 21.2[b]). 3. Si f(x1) = f(x2), entonces x1 < x* < x2. Se definen xL = x1, xR = x2 e Ii = (x1 , x2).
La manera en que se determinan x1 y x2 garantiza que Ii < Ii-1, como se demostrar en breve. El algoritmo termina en la iteracin k si Ik , donde es un grado de exactitud definido por el usuario. La diferencia entre los mtodos dictomo y de seccin dorada estriba en la forma en que se calculan x1 y x2. La tabla siguiente presenta las frmulas.
Mtodo Dictomo
Ingeniera Industrial
Pgina 14
MTODOS NUMRICOS
En el mtodo dictomo los valores x1 y x2 se encuentran simtricos respecto del punto medio del actual intervalo de incertidumbre. Esto significa que Ii =0.5 (Ii-1 + ) La aplicacin repetida del algoritmo garantiza que la longitud del intervalo de incertidumbre se acercar al nivel de exactitud deseado, . En el mtodo de la seccin dorada la idea es de mayor involucramiento. Se puede apreciar que cada iteracin del mtodo dictomo requiere calcular los dos valores f(x1) y f(x2), pero termina por descartar alguno de ellos. Lo que propone el mtodo de la seccin dorada es ahorrar clculos mediante el reuso del valor descartado en la iteracin inmediata siguiente. Para definir 0 < < 1,
Cuando el intervalo de incertidumbre Ii en la iteracin i es igual a (xL, x2) o a (x1, xR). Considerando el caso en que Ii (xL, x2), lo cual significa que x1 est incluido en Ii. En la iteracin i+1, seleccione x2 igual a x1 de la iteracin i, lo cual lleva a la siguiente ecuacin: x2 (iteracin i+1) = x1 (iteracin i) Sustituyendo, se encuentra que: xL + *x2 (iteracin i) xL] = xR (xR xL) o lo que es igual: xL + [xL + (xR - xL) - xL] = xR - (xR - xL) que finalmente se simplifica a:
La ecuacin da positiva
. Como
.6 8.
El diseo de los clculos del mtodo de la seccin dorada, garantiza una reduccin a en los intervalos de incertidumbre sucesivos; esto es: Ii + 1 = Ii
Ingeniera Industrial Pgina 15
MTODOS NUMRICOS
Comparado con el mtodo dictomo, el mtodo de la seccin dorada converge ms rpidamente hacia el nivel deseado de exactitud. Adicionalmente, cada iteracin en el mtodo de la seccin dorada requiere la mitad de los clculos, en virtud de que recicla siempre un conjunto de los clculos correspondientes a la iteracin inmediata anterior. Ejemplo 21.1-1 Maximizar {
El mximo valor de (x) ocurre en x = 2. La siguiente tabla muestra los clculos para las iteraciones 1 y 2, usando el mtodo dictomo y el de la seccin dorada. Supondremos que = 0.1.
Al continuar de la misma forma, el intervalo de incertidumbre terminar por estrecharse hasta la tolerancia deseada.
Ingeniera Industrial
Pgina 16
MTODOS NUMRICOS
2. Mtodos que Utilizan Derivadas
Estos mtodos se diferencian de los del grupo anterior porque utilizan la informacin de la derivada de la funcin para dirigir la bsqueda. Generalmente convergen en un menor nmero de iteraciones. Requieren que la funcin sea diferenciable, y adems es necesario calcular la derivada de la funcin ya sea en forma analtica o numrica. En este grupo se pueden incluir el mtodo de Newton, de la biseccin, de la secante y bsqueda cbica como los ms convencionales. A continuacin se describe el mtodo de Newton.
2
Mtodo de Newton: Se basa en aproximar a la funcin f(x) en el punto , a una funcin cuadrtica q(x), y luego buscar el mnimo de q(x). La aproximacin cuadrtica se obtiene mediante una expansin de Taylor que incluye el trmino de segundo orden q(x)=f( ) + f( )(x) + f ( )(x- ) . Si es un punto suficientemente prximo a un ptimo, todo punto x que verifica la condicin necesaria de ptimo local no condicionado q(x)=0, verifica tambin la condicin suficiente de ptimo local no condicionado. Luego, es elegido como el punto que minimiza la funcin q(x). Es decir, que verifica q(x)=f( )+f( )(x- )=0. De aqu se obtiene (haciendo =x):
- f( )/f(
).
| < o f( ) < donde es un escalar prefijado.
Nota: El procedimiento puede ser aplicado a funciones diferenciables dos veces, y adems es necesario que f( )0. Puede demostrarse que este mtodo converge si el punto inicial es suficientemente prximo a un ptimo.
Ingeniera Industrial
Pgina 17
MTODOS NUMRICOS
k 1 2 3 4 5
De la tabla se adopta el punto x*=1,5874 como un mnimo local. El valor de la funcin objetivo en este punto es f(x*)=15,1191.
Ingeniera Industrial
Pgina 18
1. A un monopolista le cuesta $8/unidad producir un producto. Si produce x unidades del producto, entonces cada uno se puede vender en 12-x dlares . Para maximizar la ganancia, Cunto debe producir el monopolista? Solucin: Sea la ganancia del monopolista si produce x unidades. Entonces: [ [ ] [8 ] ] [ ]
. . Ahora se clasifican los candidatos extremos: Caso 1: , as que mximo local que produce una ganancia de Caso 2: . Debido a que . es un
existe para los puntos en [0,12], as que no hay candidatos de caso 2. , de modo que a=0 es un mnimo local; b=12 tiene , entonces b=12 es un mnimo local.
As, x=2 es el nico mximo local. Esto significa que las ganancias del monopolista se maximizan al elegir x=2. Observe que para todos los valores de x. Esto muestra que es una funcin cncava. Cualquier mximo local para debe ser la solucin ptima para el PNL. As, el teorema 1 implica que una vez determinado que x=2 es un mximo local, se sabe que es solucin ptima para el PNL. 2. A una compaa le cuesta S/.100 en costos variables producir un acondicionador de aire, ms un costo fijo de S/.5 000 si se producen acondicionadores de aire. Si la compaa gasta x soles en publicidad, entonces puede vender acondicionadores de aire a S/.3000 cada uno. Cunto puede maximizar su ganancia la compaa? Si el costo fijo de producir acondicionadores de aire fuera S/.20 000, qu debe hacer la compaa?
Ingeniera Industrial Pgina 19
MTODOS NUMRICOS
Solucin: Sea
Adems , . lo cual indica que un mximo local, produciendo una ganancia de S/.17 277.21 Caso 2: Caso 3: El intervalo no es de la forma [ no hay candidatos para este caso. ] pues es
3. El costo por da de mantener en funcionamiento un hospital es . soles, donde x= pacientes atendidos por da. Qu tamao de hospital minimiza el costo por paciente de mantener en operacin al hospital? Solucin: Sea
Ingeniera Industrial
Pgina 20
MTODOS NUMRICOS
As es el nico mnimo local. Esto significa que el tamao mnimo de hospital que minimiza el costo por paciente es de 10 000 paciente, generando un costo de 40 soles. 4. Use la bsqueda de seccin urea para determinar (longitud final de un intervalo de 0.6) la solucin ptima para: . . Solucin: En primer lugar encontraremos el nmero de iteraciones (k) de bsqueda de la seccin urea para obtener una longitud del intervalo final de incertidumbre de 0.8: Donde
Iteracin 1 .6 8[ .6 8[ . 8 . ] ] . Iteracin 2 . 8 .6 8 . . 8 .6 8 . 6 Iteracin 3 . 8 . 6 . 8 . Iteracin 4 . 8 . . 8 . . . 8 . . . 8 8 . 68 .886
.6 y r=0.618
8 . 8
. 8 . 8 . 6 . 6
.886 .
6 .6 8 . .6 8 . . 8 .
6 6 .
. . 8
8 8 .
. .
. 8 .886
. .6 8 . .6 8 . . . 8 . 8 . . 8 8 .88 . . .
8 . .8 (Como se desea)
. . . 8 .
Ingeniera Industrial
Pgina 21
MTODOS NUMRICOS
Iteracin 1 . . . . . . . . 6 6
6. Determine el mximo de la siguiente funcin por bsqueda dictoma. Suponga que . { Solucin: Iteracin 1 . . . Iteracin 2 . . . . . .
Ingeniera Industrial
. . .
. . .
. .
. . . 8 .
. 8 . . 8
. . .
Pgina 22
MTODOS NUMRICOS
Iteracin 3 . 8 . . . . . Iteracin 4 . 8 . . . . . Iteracin 5 . 8 . . . . . Iteracin 6 .8 . . . . 6 . .8 .8 8 . . . 6 . . . . 6 8 8 . . Iteracin 8 . . . . . . . 6 . 8 8 . . 6 . . . 6 6 . . 6 6 6 6 . . . Iteracin 7 . 8 . . . . . . . 8 . . 6 . 8 8 .6 .8
. . 8 . 8 . 8 . . 8 . 8 . . 8 . . . .8 6 8 8 .8 . . . 6 .8 . . 6 6 . 6 .6 6 . . . 8 68 . . . 8 8 6. . . . . . 8 . 8 . . . 6.
6 6 .
. . 6 . 6
. . .
.8 8 8 .
Ingeniera Industrial
Pgina 23
MTODOS NUMRICOS
Iteracin 9 . . . . .
. . . . 6 6 . . . 6 . . . 86 86 86 .8 . 8
6 6
. .
. 8 . . 86
. . 86
8 8
. .
. . . . .
. . 86
. .
. 86 86
86 . . . .
. . . 6
. . 8
8 8
.8 .
. 8 . Iteracin 13 . . 8 . . 8 . . . 8 . . . Iteracin 14 . . . . . . 6 . . 8 8 . . . . 8
. . . .
. . 8
.8 .
6 8
. . . .
. . 6
6 6
.8
6 .
Ingeniera Industrial
Pgina 24
MTODOS NUMRICOS
Iteracin 15 . . . . . . Iteracin 16 . . . . . . Iteracin 17 . . . . . . . . . . . . . (clculos realizados en hoja de clculo) Iteracin 31 . . . . . . . . . . . . . . . . =0.05 . . . . . 6 .8 . 8
. 6 6 . . . .
6 . . . .
. . .
. .
.8 .
. . . . .
. .
.8 .
.8 8
Ingeniera Industrial
Pgina 25