Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DESARROLLO DE SOFTWARE
Importancia de los mtodos de programacin no lineal en DS
OPTIMIZACIN NO RESTRINGIDA
Los problemas de optimizacin no restringida no tienen restricciones, por lo que la funcin objetivo es sencillamente
Maximizar f(x)
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 n ecuaciones 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.
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 simplex 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 problema de programacin lineal es que algunos trminos de la funcin
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
1. f(x) es cncava.
2. Cada una de las g(x) es convexa.
PROGRAMACIN 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.
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 simplex.
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
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
deprogramacingeo- 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 yx, 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 posnominal, 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,
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 especiales1 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
que se puede resolver con el mtodo simplex. 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.
Optimizacin clsica
Si la restriccin no existe, o es una restriccin de igualdad, con menor o igual nmero de variables que la funcin objetivo entonces, el
clculo diferencial, da la respuesta, ya que solo se trata de buscar los valores extremos de una funcin.
Puntos de inflexin
Un punto de inflexin es un punto donde cambia la curvatura de la funcin.
Si x=a es un punto de inflexin f(a)=0
En el problema nos dan 2 datos:
F(x) pasa por el punto (3,1), es decir f (3)=1
x=3 es un punto de inflexin, es decir, f (3)=0
Con esta informacin, obtenemos b y d
f(3)=1 1=33+b32+2.3+d 1=27+9b+6+d 9b+d=-32
F(x)=3x2+2bx+2
F(x)=6x+2b
f(3)=0 6.3+2b=0 18+2b=0 2b=-18 b=-18/2=-9
9b+d=-32; 9. (-9)+d=-32; -81+d=-32; d=-32+81; d=49
Solucin: b=-9 y d=49
Mximos y mnimos
El punto minimax de la funcin lagrangiana es otro concepto relacionado con la solucin de un problema de optimizacin. Si bien su
definicin no le hace til a la hora de la resolucin directa del problema, s constituye un paso intermedio muy importante en la obtencin
del problema dual, que estudiaremos ms adelante. En esta seccin definimos dicho punto y estudiamos su relacin con otro concepto,
el punto de silla de la lagrangiana. La relacin del punto minimax con la solucin del problema de programacin no lineal se obtiene de
forma inmediata sin ms 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, Min L (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+ X
As pues, si (x0, 0) es un punto minimax, x0 es una solucin ptima del problema original.
Lee el siguiente planteamiento e identifica el mtodo de programacin no lineal a utilizar para obtener los requerimientos
solicitados:
Una empresa de software produce aplicaciones web y sistemas informticos, obteniendo ingresos de 200x2 + 250y2 unidades
monetarias, siendo x el nmero aplicaciones web producidas e y el de sistemas informticos. Para producir una aplicacin web se
necesitan una unidad de software y dos horas de trabajo, y para producir un sistema informtico se necesitan tres unidades de software
y dos horas de trabajo. Se dispone de 28 unidades de software y de 38 horas de trabajo. Se requiere al jefe del proyecto que
calcule el nmero de aplicaciones web y de sistemas informticos que se deben producir para maximizar los ingresos y que se
calcule la cantidad que estara dispuesta a pagar la empresa por una unidad adicional de software y por una hora ms de trabajo.
Menciona y explica el mtodo de programacin no lineal que utilizars para obtener los resultados solicitados.
El mtodo es programacin cuadrtica de dos variables
F(x, y)=250x^2+200y^2
sujeto a
x+3y 28
2x+2y38
Donde c es un vector de coeficientes constantes; A es una matriz (m x n) y se asume, en general que Q es una matriz simtrica.
Dado que las restricciones son lineales y presumiblemente independientes la cualificacin de las restricciones se satisface siempre, as
pues, las condiciones de Karush-KuhnTucker son tambin condiciones suficientes para obtener un extremo, que ser adems un mnimo
global si Q es definida positiva. Si Q no es definida positiva el problema podra no estar acotado o llevar a mnimos locales.
La Programacin Cuadrtica juega un papel muy relevante en la teora de optimizacin lineal y no lineal pues guarda una relacin muy
estrecha con la Programacin Lineal y es un paso intermedio esencial para resolver ecazmente problemas generales de Programacin
No Lineal.
Referencias
itpn. (s.f.). Recuperado el 2 de 9 de 2017, de http://itpn.mx/recursosisc/3semestre/investigaciondeoperaciones/Unidad%20III.pdf
programacion. (s.f.). Recuperado el 2 de 9 de 2017, de https://definicion.de/programacion-lineal/
slideshare. (s.f.). Recuperado el 2 de 9 de 2017, de https://es.slideshare.net/blackyportillo/mtodos-de-programacin-no-lineal
wikipedia. (s.f.). wikipedia. Obtenido de https://es.wikipedia.org/wiki/C_(lenguaje_de_programaci%C3%B3n)