Académique Documents
Professionnel Documents
Culture Documents
Operaciones
Unidad 3 Programacin no lineal
3 Semestre Grupo S-301
Instituto Tecnolgico Superior de Panuco
Alumno:
Roque Oswaldo Cazares Garcia
Investigacin de Operaciones
X=>0,
Investigacin de Operaciones
Por supuesto, si son funciones lineales, entonces (1) ser un problema de programacin lineal y puede
resolverse mediante el algoritmo simplex
La figura 13.5 muestra lo que ocurre con este problema si los nicos cambios que se hacen al modelo de la
seccin 3.1 son que la segunda y tercera restricciones funcionales se sustituyen por la restriccin no lineal 9x{ +
5x2 < 216. Compare las figuras 13.5 y 3.3. La solucin ptima sigue siendo (a^ , x2) = (2,6). Todava se encuentra
sobre la frontera de la regin factible, pero no es una solucin factible en un vrtice (FEV). La solucin ptima
pudo haber sido una solucin FEV con una funcin objetivo diferente (verifique Z = 3xx + x2), pero que no
necesite serlo significa que ya no se puede aprovechar la gran simplificacin utilizada en programacin lineal
que permite limitar la bsqueda de una solucin ptima para las soluciones FEV
Investigacin de Operaciones
Ahora suponga que las restricciones lineales de la seccin 3.1 se conservan sin cambio, pero que la funcin
objetivo se hace no lineal. Por ejemplo, si
Investigacin de Operaciones
entonces la representacin grfica en la figura 13.6 indica que la solucin ptima es x x x2 = 5, que de nuevo se
encuentra en la frontera de la regin factible. (El valor ptimo de Z es Z = 857; as, la figura 13.6 muestra el
hecho de que el lugar geomtrico de todos los puntos para los que Z = 857 tiene en comn con la regin factible
slo este punto, mientras que el lugar geomtrico de los puntos con Z ms grande no toca la regin factible en
ningn punto.) Por otro lado, si
entonces la figura 13.7 ilustra que la solucin ptima es (* l5 x2 ) = (3,3), que se encuentra dentro de la frontera de
la regin factible. (Se puede comprobar que esta solucin es ptima si se usa clculo para derivarla como un
mximo global no restringido; como tambin satisface las restricciones, debe ser ptima para el problema
restringido.) Por lo tanto, es necesario que
Investigacin de Operaciones
un algoritmo general para resolver problemas de este tipo tome en cuenta todas las soluciones en la regin
factible, y no slo aquellas que estn sobre la frontera.
Otra complicacin que surge en programacin no lineal es que un mximo local no necesariamente es un
mximo global (la solucin ptima global). Por ejemplo, considere la funcin de una sola variable graficada en la
figura 13.8. En el intervalo 0 < x < 5, esta funcin tiene tres mximos locales x=0,x=2,x=4pero slo uno de
stosx 4es un mximo global. (De igual manera, existen mnimos locales en x = 1,3 y 5, pero slo x = 5 es
un mnimo global.)
En general, los algoritmos de programacin no lineal no pueden distinguir entre un mximo local y un mximo
global (excepto si encuentran otro mximo local mejor), por lo que es determinante conocer las condiciones bajo
las que se garantiza que un mximo local es un mximo global en la regin factible. Recuerde que en clculo,
cuando se maximiza una funcin ordinaria (doblemente diferenciable) de una sola variable f(x) sin restricciones,
esta garanta est dada cuando
Una funcin de este tipo cuya curvatura siempre es hacia abajo (o que no tiene curvatura) se llama funcin
cncava.1 De igual manera, si se sustituye < por >, de manera que la funcin tiene siempre una curvatura hacia
arriba (o no tiene curvatura), se llama funcin convexa. 2 (As, una funcin lineal es tanto cncava como
convexa.) En la figura 13.9 se pueden ver ejemplos de esto. Note que la figura 13.8 ilustra una funcin que no es
cncava, ni convexa pues alterna sus curvaturas hacia arriba y hacia abajo.
Las funciones de variables mltiples tambin se pueden caracterizar como cncavas o convexas si su curvatura
es siempre hacia abajo o hacia arriba. Estas definiciones intuitivas se fundamentan en trminos precisos que,
junto con cierta profundizacin en los conceptos, se presentan en el apndice 2. El apndice 2 proporciona una
prueba conveniente para verificar si una funcin de dos variables es cncava, convexa o ninguna de las dos.
La siguiente es una forma conveniente de verificar esto para una funcin de ms de dos variables cuando la
funcin consiste en una suma de funciones ms pequeas cada una de slo
Investigacin de Operaciones
una o dos variables. Si cada funcin ms pequea es cncava, entonces la funcin completa es cncava. De
manera similar, la funcin completa es convexa si cada funcin ms pequea es convexa.
Investigacin de Operaciones
que es la suma de las dos funciones ms pequeas dadas en los parntesis cuadrados. La primera funcin ms
pequea 4*! - x\ es una funcin de la variable xx nada ms, por lo que puede verse que es cncava si se observa
que su segunda derivada es negativa. La segunda funcin ms pequea -(x2 x )2 es una funcin de x2 y por lo
que se puede aplicar la prueba para funciones de dos variables dada en el apndice 2. De hecho, este apndice
usa esta funcin en particular para ilustrar la prueba y encuentra que la funcin es cncava. Como las dos
funciones ms pequeas son cncavas, la funcin completa f (jVj ,x2,x3) debe ser cncava.
Si un problema de programacin no lineal no tiene restricciones, el hecho de que la fun cin objetivo
sea cncava garantiza que un mximo local es un mximoglobal. (De igual manera, una funcin
objetivo convexa asegura que un mnimo local es un mnimo global.) Si existen restricciones, entonces se
necesita una condicin ms para dar esta garanta, a saber, que la regin factible sea un conjunto
convexo.Como se analiza en el apndice 2, un conjunto convexo es sencillamente un conjunto de puntos tales
que, para cada par de puntos de la coleccin, el segmento de recta que los une est totalmente contenido en la
coleccin. As, la regin factible en el problema original de la Wyndor Glass Co. (vea la figura 13.6 o 13.7) es un
conjunto convexo. De hecho, la regin factible para cualquier otro problema de programacin lineal es un
conjunto convexo. De igual manera, la regin factible de la figura 13.5 tambin es un conjunto convexo.
En general la regin factible para un problema de programacin no lineal es un conjunto convexo siempre que
todas las funciones g (x)[para las restricciones g (x) < b{ ] sean convexas. Para el ejemplo de la figura 13.5,
las dos gt (x) son convexas, ya que gx (x) = xx (una funcin lineal es automticamente cncava y convexa)
y g2 (x) = 9x\ + 5x\ (tanto 9x\ como 5x2 son funciones convexas, por lo que su suma es una funcin convexa).
Estas dos funciones convexas g (x) conducen a que la regin factible de la figura 13.5 sea un conjunto
convexo.
Ahora se analizar qu pasa cuando slo una de estas funciones g (x) es una funcin cncava. En particular,
suponga que el nico cambio que se hace al ejemplo de la figura 13.5 es
Investigacin de Operaciones
son funciones cncavas. La nueva regin factible mostrada en la figura 13.10 no es un conjunto convexo. <Por
qu? Porque contiene pares de puntos, como (0, 7) y (4, 3), tales que parte del segmento de recta que los une
no est en la regin factible. En consecuencia, no se puede garantizar que un mximo local sea un mximo
global. De hecho, este ejemplo tiene dos mximos locales (0, 7) y (4, 3), pero slo (0, 7) es un mximo global.
Entonces, para garantizar que un mximo local sea un mximo global para un problema de programacin no
lineal con restricciones (x) < b (i = 1,2,, m) y x > 0, la funcin objetivo /(x) debe ser cncava y cada g (x) debe
ser convexa. Un problema de este tipo se llama problema de programacin convexa .
Investigacin de Operaciones
10
Existe una variedad de mtodos para resolver problemas no convexos. Uno de ellos consiste en utilizar
formulaciones especiales de problemas de programacin lineal. Otro mtodo implica el uso de tcnicas de
Ramificacin y poda, cuando el problema se divide en subdivisiones a resolver mediante aproximaciones que
forman un lmite inferior del coste total en cada subdivisin. Mediante subdivisiones sucesivas, se obtendr una
solucin cuyo coste es igual o inferior que el mejor lmite inferior obtenido por alguna de las soluciones
aproximadas. Esta solucin es ptima, aunque posiblemente no sea nica. El algoritmo puede ser parado antes,
con la garanta de que la mejor solucin ser mejor que la solucin encontrada en un porcentaje acotado. Ello se
utiliza en concreto en problemas importantes y especialmente difciles y cuando el problema cuenta con costes
inciertos o valores donde la incertidumbre puede ser estimada en un grado de fiabilidad apropiado.
Las condiciones de Karush-Kuhn-Tucker proporcionan las condiciones necesarias para que una solucin sea
ptima.
Optimizacin no restringida.
2.
3.
Programacin cuadrtica
4.
Programacin convexa.
Investigacin de Operaciones
5.
Programacin separable.
6.
Programacin no convexa.
7.
Programacin geomtrica.
8.
Programacin fraccional.
9.
Problema de complementariedad.
11
Investigacin de Operaciones
12
La manera en que se determinan xx y x2 garantiza que /, < /,_ p como se demostrar en breve. El algoritmo
termina
en
la
iteracin ksilk< A,donde A 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 xx y x2. La
tabla siguiente presenta las frmulas.
En el mtodo dictomo los valores jc, y x2 se encuentran simtricos respecto del punto medio del actual intervalo
de incertidumbre. Esto significa que
La aplicacin repetida del algoritmo garantiza que la longitud del intervalo de incertidumbre se acercar al nivel
de exactitud deseado, A.
En el mtodo de la seccin dorada la idea es de mayor involucramiento. Se puede apre ciar que cada iteracin
del mtodo dictomo requiere calcular los dos valores/(jc,) y f(x2), Pe ro 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 < a < 1
Investigacin de Operaciones
13
Cuando el intervalo de incertidumbre /, en la iteracin i es igual a (jc, x2) o a (xu xR). Considere el caso en que /,
= (jcl, x2), lo cual significa que xx est incluido en /,. En la iteracin /+1, seleccione x2 igual a jc, de la iteracin /, lo
cual lleva a la siguiente ecuacin:
x2(iteracin i+l) = x{(iteracin i)
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.
Investigacin de Operaciones
14
EJEMPLO
El mximo valor de f(x) ocurre en x = 2. La siguiente tabla muestra los clculos para las iteraciones 1 y 2,
usando el mtodo dicotomo y el de la seccin dorada. Supondremos que A = 0.1.
La plantilla ch21DichotomousGoldenSection.xls de Excel est diseada para manejar cualquiera de estos dos
mtodos en forma automtica. Los datos son/(*), a,b y A. La funcin f{x) se captura en la celda E3 como sigue:
= IF(C3< = 2,3*C3, (-C3+20)/3)
OPTIMIZACIN NO RESTRINGIDA
Los problemas de optimizacin no restringida no tienen restricciones, por lo que la funcin objetivo es
sencillamente
Maximizar f(x)
Investigacin de Operaciones
15
sobre todos los valores x= (x1, x2,,xn). Segn el repaso del apndice 3, la condicin necesaria para que una
solucin especfica x = x* sea ptima cuando f(x) es una funcin diferenciable es
Cuando f (x) es cncava, esta condicin tambin es suficiente, con lo que la obtencin de x* se reduce a
resolver el sistema de las necuaciones obtenidas al establecer las n derivadas parciales iguales a cero. Por
desgracia, cuando se trata de funciones no lineales f (x), estas ecuaciones suelen ser no lineales tambin, en
cuyo caso es poco probable que se pueda obtener una solucin analtica simultnea. Qu se puede hacer en
ese caso? Las secciones 13.4 y 13.5 describen procedimientos algortmicos de bsqueda para encontrar x*
primero para n = 1 y luego para n > 1. Estos procedimientos tambin tienen un papel importante en la solucin
de varios tipos de problemas con restricciones, que se describirn en seguida. La razn es que muchos algoritmos para problemas restringidos estn construidos de forma que se adaptan a versiones no restringidas del
problema en una parte de cada iteracin.
Cuando una variable Xj tiene una restriccin de no negatividad, x- > 0, la condicin necesaria (y tal vez)
suficiente anterior cambia ligeramente a
para cada j de este tipo. Esta condicin se ilustra en la figura 13.11, donde la solucin ptima de un problema
con una sola variable es x = 0 aun cuando la derivada ah es negativa y no cero. Como este ejemplo tiene una
funcin cncava para maximizar sujeta a una restriccin de no negatividad, el que su derivada sea menor o igual
a 0 en # = 0, es una condicin necesaria y suficiente para que x= 0 sea ptima.
Un problema que tiene algunas restricciones de no negatividad y que no tiene restricciones funcionales es un
caso especial (m = 0) de la siguiente clase de problemas.
Investigacin de Operaciones
16
Los problemas de optimizacin linealmente restringida se caracterizan por restricciones que se ajustan por
completo a la programacin lineal, de manera que todas las funciones de restriccin g (x) son lineales, pero la
funcin objetivo es no lineal. El problema se simplifica mucho si slo se tiene que tomar en cuenta una funcin
no lineal junto con una regin factible de programacin lineal. Se han desarrollado varios algoritmos especiales
basados en una extensin del mtodo smplex para analizar la funcin objetivo no lineal.
PROGRAMACIN CUADRTICA
De nuevo los problemas de programacin cuadrtica tienen restricciones lineales, pero ahora la funcin
objetivo /(x) debe ser cuadrtica.Entonces, la nica diferencia entre stos y un
Investigacin de Operaciones
17
problema de programacin lineal es que algunos trminos de la funcin objetivo incluyen el cuadrado de una
variable o el producto de dos variables.
PROGRAMACIN CONVEXA
La programacin convexa abarca una amplia clase de problemas, entre ellos como casos especiales, estn
todos los tipos anteriores cuando /(x) es cncava. Las suposiciones son
Investigacin de Operaciones
18
1. f(x) es cncava.
2. Cada una de las g(x) es convexa.
PROGRAMACIN SEPARABLE
son cada tina funciones de una sola variable x1 y x2, respectivamente. Usando el mismo razonamiento, se
puede verificar que la funcin considerada en la figura 13.7 tambin es una funcin separable.
Es importante distinguir estos problemas de otros de programacin convexa, pues cualquier problema de
programacin separable se puede aproximar muy de cerca mediante uno de programacin lineal y, entonces, se
puede aplicar el eficiente mtodo smplex.
Investigacin de Operaciones
19
son cada tina funciones de una sola variable x1 y x2, respectivamente. Usando el mismo razonamiento, se
puede verificar que la funcin considerada en la figura 13.7 tambin es una funcin separable.
Es importante distinguir estos problemas de otros de programacin convexa, pues cualquier problema de
programacin separable se puede aproximar muy de cerca mediante uno de programacin lineal y, entonces, se
puede aplicar el eficiente mtodo smplex.
PROGRAMACIN NO CONVEXA
La programacin no convexa incluye todos los problemas de programacin no lineal que no satisfacen las
suposiciones de programacin convexa. En este caso, aun cuando se tenga xito en encontrar un mximo local,
no hay garanta de que sea tambin un mximo global. Por lo tanto, no se tiene un algoritmo que garantice
encontrar una solucin ptima para todos estos problemas; pero s existen algunos algoritmos bastante
adecuados para encontrar mximos locales, en especial cuando las formas de las funciones no lineales no se
desvan demasiado de aquellas que se supusieron para programacin convexa. En la seccin 13.10 se presenta
uno de estos algoritmos.
Ciertos tipos especficos de problemas de programacin no convexa se pueden resolver sin mucha dificultad
mediante mtodos especiales. Dos de ellos, de gran importancia, se presentarn ms adelante.
PROGRAMACIN GEOMTRICA
Cuando se aplica programacin no lineal a problemas de diseo de ingeniera, muchas veces la funcin objetivo
y las funciones de restriccin toman la forma
Investigacin de Operaciones
20
En tales casos, las ci y a ty representan las constantes fsicas y las x} son las variables de diseo. Estas
funciones por lo general no son ni cncavas ni convexas, por lo que las tcnicas de programacin convexa no se
pueden aplicar directamente a estos problemas de programacin geo- mtrica. Sin embargo, existe un caso
importante en el que el problema se puede transformar en un problema de programacin convexa equivalente.
Este caso es aquel en el que todos los coeficientes c en cada funcin son estrictamente positivos, es decir, las
funciones son polinomios positivos generalizados (ahora llamados posinomiales), y la funcin objetivo se tiene
que minimizar. El problema equivalente de programacin convexa con variables de decisin y x, y2,, yn se
obtiene entonces al establecer
en todo el modelo original. Ahora se puede aplicar un algoritmo de programacin convexa. Se ha desarrollado
otro procedimiento de solucin para resolver estos problemas de programacin posinomial, al igual que para
problemas de programacin geomtrica de otros tipos.1
PROGRAMACIN FRACCIONAL
Suponga que la funcin objetivo se encuentra en la forma de una fraccin, esto es, la razn o cociente de dos
funciones,
Investigacin de Operaciones
21
Estos problemas de programacin fraccional surgen, por ejemplo, cuando se maximiza la razn de la produccin
entre las horas-hombre empleadas (productividad), o la ganancia entre el capital invertido (tasa de rendimiento),
o el valor esperado dividido entre la desviacin estndar de alguna medida de desempeo para una cartera de
inversiones (rendimiento/riesgo). Se han formulado algunos procedimientos de solucin especiales 1 para ciertas
formas de f1(x) y f2 (x)
Cuando se puede hacer, el enfoque ms directo para resolver un problema de programacin fraccional es
transformarlo en un problema equivalente de algn tipo estndar que disponga de un procedimiento eficiente.
Para ilustrar esto, suponga que f(x) es de la forma de programacin fraccional lineal
donde c y d son vectores rengln, x es un vector columna y c0 y dQ son escalares. Tambin suponga que las
funciones de restriccin g (x)son lineales, es decir, las restricciones en forma matricial son Ax < b y x > 0.
Con algunas suposiciones dbiles adicionales, el problema se puede transformar en un problema equivalente
de programacin lineal si se establece
Investigacin de Operaciones
22
que se puede resolver con el mtodo smplex. En trminos generales, se puede usar el mismo tipo de
transformacin para convertir un problema de programacin fraccional con /(x) cncava, f2 (x) convexa
y g (x) convexas, en un problema equivalente de programacin convexa.
Investigacin de Operaciones
23
La relacin del punto minimax con la solucin del problema de programacin no lineal se obtiene de forma inmediata
sin mas que tener en cuenta que:
Min L (x, ) = f (x) Max t [g(x) b]R m+R m+
Si gi (x) bi 0, entonces i [gi(x) - bi] 0, luego
Max i ( gi (x) bi ) = 0R m+ (se alcanza en = 0). Por tanto, si x X, MinL (x, ) = f (x) .R m+ Si gi (x) bi > 0,
entonces Sup i [gi(x) - bi] = , por lo que en este caso no se alcanza el R m+ mnimo de la Lagrangiana.
Por tanto,
Max Min L (x, ) = Max f (x) D
R m+
As pues, si (x0, 0) es un punto minimax, x0 es una solucin ptima del problema original.
Pasamos ahora a dar los teoremas que relacionan los conceptos de punto de silla de L y punto minimax. Veremos
que dicha relacin es casi una equivalencia, en el sentido de que todo punto minimax es punto de silla, y todo
punto de silla es un punto minimax considerado sobre conjuntos mas restringidos.
Investigacin de Operaciones
24
Como hemos expuesto anteriormente, para obtener el teorema recproco es necesario restringir los conjuntos de
definicin del punto minimax. Previamente, hemos visto que la primera parte de la igualdad debe ser de la forma
tomando adems la funcin lagrangiana correspondiente a este problema. Con esta definicin, los teoremas 16
y 17 seran vlidos de forma anloga para esta formulacin.
4.1.- Dualidad en Programacin Matemtica.
El concepto de dualidad nace estrechamente ligado al de punto minimax que se desarroll en la seccin anterior. As,
dado nuestro problema original, recordemos la definicin de punto minimax: se trata de un par (x0, 0) que verifica:
L (x0 , 0 ) = Max Min L (x, ) = Min Max L (x, ) ,
donde
L(x, ) = f(x) t[g(x)
que es, precisamente, el problema de partida, que llamaremos a partir de ahora Problema
Investigacin de Operaciones
25
Primal (PP).
Por otro lado, el segundo trmino de la igualdad del punto minimax se puede expresar como:
Min
N
( ),
tomando adems la funcin lagrangiana correspondiente a este problema. Con esta definicin, los
teoremas 16 y 17 seran vlidos de forma anloga para esta formulacin.
Bibliografia
https://karenbandala.wordpress.com/unidad-iii/3-1-problemas-de-programacion-no-lineal/