Sei sulla pagina 1di 113

Unidad 5

Unidad 5 Programacin no lineal


Objetivos
Proponer en forma cuantitativa acciones o decisiones a
tomar para optimizar sistemas donde existan recursos
escasos y se presenten relaciones no lineales simples,
mediante la teora y prctica de la Tcnica de
Programacin no Lineal.
Resolver los problemas de programacin no lineal
adecuadamente:
Saber detectar cada tipo de problema
Modelarlo
Realizar consultas bibliogrficas
Realizar investigaciones
Interpretar los datos en la realidad
Unidad 5 Programacin no lineal
Contenido
Conceptos de ptimo local y global. Forma cuadrtica. Matriz positiva
definida o semidefinida. Funcin convexa. Regin factible convexa.
Enunciado de las condiciones necesarias y suficientes de ptimo local
nocondicionado. Algoritmos para problemas nolineales sin
restricciones: mtodos de bsqueda directa; mtodo del gradiente.
Ejemplos. Derivacin grfica de las condiciones necesarias de ptimo
local de problemas nolineales restringidos por igualdades. Enunciado de
las condiciones necesarias y suficientes de ptimo local para problemas
nolineales con restricciones de igualdad. Conceptos de ptimo local
restringido. Derivacin de las condiciones necesarias y suficientes de
ptimo local para problemas nolineales restringidos por desigualdades
(condiciones de KuhnTucker). Enunciado de las condiciones suficientes
de ptimo global para problemas nolineales con restricciones de
desigualdad. Algoritmos para problemas nolineales con restricciones:
Programacin convexa; Programacin cuadrtica; Programacin
geomtrica; Programacin estocstica; mtodo de combinaciones
lineales.

Teora clsica de la optimizacin
En la teora clsica de la optimizacin se usa
el clculo diferencial para determinar puntos
extremos, o de mximo o de mnimo, para
funciones sin restricciones y restringidas.
Se establecern las condiciones necesarias
y suficientes para determinar los puntos
extremos no restringidos, mediante los
mtodos jacobiano y lagrangiano para
problemas con restricciones de igualdad, y
las condiciones de Kuhn-Tucker para
problemas con restricciones de desigualdad
Teora clsica de la optimizacin
Problemas sin Restricciones
Problemas sin Restricciones
Problemas sin Restricciones
Aunque x
1
(en la figura anterior) es un punto mximo, se
diferencia de los otros mximos locales porque el valor de f
correspondiente a al menos un punto en la proximidad de x
1
es
igual a f(x
1
). A este respecto, es un mximo dbil, mientras
que x
3
y x
4
son mximos fuertes.
En general, X
0
es un mximo dbil si f(X
0
+ h) < f(X
0
), y es un
mximo fuerte si f(X
0
+ h) > f(X
0
), donde h es como se defini
arriba.
En la figura, la primera derivada o pendiente de f es igual a
cero en todos los puntos extremos. Esta propiedad tambin se
satisface en puntos de inflexin y de silla, como x
5
.
Si un punto con pendiente (gradiente) cero no es un extremo
(mximo o mnimo), debe ser un punto de inflexin o un punto
de silla.
Condiciones necesarias y
suficientes
Condiciones necesarias y
suficientes
Condiciones necesarias y
suficientes
Condiciones necesarias y
suficientes
Mtodo Newton Raphson
Una dificultad del mtodo es que no siempre se garantiza la convergencia, a
menos que la funcin f tenga buen comportamiento. En la figura, si el punto
inicial es a, el mtodo diverge. No hay manera fcil para ubicar un buen punto
inicial
Restricciones de igualdad

Se presentan dos mtodos:
- el jacobiano o de Jacobi
- el lagrangiano o de Lagrange.

El mtodo lagrangiano se puede deducir en forma
lgica a partir del mtodo jacobiano.

Esta relacin proporciona una interesante
interpretacin econmica del mtodo lagrangiano
Las funciones f (X) y g
i
(X), i 1, 2, ..., m son doble y
continuamente diferenciables.
La idea de usar derivadas restringidas es desarrollar una
ecuacin de forma cerrada para las primeras derivadas
parciales de f (X) en todos los puntos que satisfacen las
restricciones g(X) = 0. Los puntos estacionarios
correspondientes se identifican como aquellos en los que
se anulan esas derivadas parciales. Se pueden usar las
condiciones de suficiencia para comprobar la identidad de los
puntos estacionarios.
Para aclarar el concepto propuesto, considrese a f (x
1
, x
2
), que
se ve en la figura.
Esta funcin se va a minimizar, sujeta a la restriccin
en donde b es una constante. De acuerdo con la figura, la curva definida
por los tres puntos A, B y C representa los valores de f(x
1
, x
2
) para los
cuales siempre se satisface la restriccin.
El mtodo de derivadas restringidas define al gradiente de f(x
1
, x
2
) en
cualquier punto de la curva ABC. El punto B en el que se anula la
derivada restringida es un punto estacionario del problema con
restriccin.
Anlisis de sensibilidad en el mtodo jacobiano.

Con el mtodo jacobiano se puede estudiar el efecto que
tienen cambios pequeos en el lado derecho de las
restricciones, sobre el valor ptimo de f. En forma especfica,
cul es el efecto de cambiar de g
i
(X) = 0 a g
i
(X) = en
el valor ptimo de f? A este tipo de investigacin se le llama
anlisis de sensibilidad y es similar al que se lleva a cabo
en la programacin lineal. Sin embargo, el anlisis de
sensibilidad en la programacin no lineal slo es vlido en la
proximidad (o cercana) inmediata del punto extremo. El
desarrollo es til en el estudio del mtodo lagrangiano.
Aplicacin del mtodo jacobiano a un problema
de programacin lineal.

Se tiene el problema de programacin lineal:
Maximizar Z= 2x
1
+ 3x
2
sujeta a
x
1
+ x
2
+ x
3
+ x
4
= 5
x
1
- x
2
+ x
4
= 3
x
1
, x
2
, x
3
, x
4
> 0
Para tener en cuenta las restricciones de no negatividad x
j
> 0, se hace
la sustitucin x
j
= w
j
2.

Con esta sustitucin, las condiciones de no negatividad se vuelven
implcitas, y el problema original se transforma en

FIGURA
Puntos extremos del espacio de soluciones del
programa lineal
Se pueden sacar algunas conclusiones generales de la
aplicacin del mtodo jacobiano al problema de
programacin lineal. De acuerdo con el ejemplo numrico,
las condiciones necesarias requieren que las variables
independientes sean igual a cero. Tambin, las condiciones
de suficiencia indican que la hessiana es una matriz
diagonal. Entonces, todos sus elementos diagonales deben
ser positivos para que haya mnimo, y negativos para que
haya mximo. Las observaciones demuestran que la
condicin necesaria equivale a especificar que slo se
necesitan las soluciones bsicas (factibles) para ubicar la
solucin ptima. En este caso, las variables independientes
equivalen a las variables no bsicas del problema de
programacin lineal. Tambin, la condicin de suficiencia
demuestra la fuerte relacin entre los elementos diagonales
de la matriz hessiana y el indicador de optimalidad zj cj en
el mtodo smplex.
En el mtodo de Jacobi, sea que el vector l represente los coeficientes de
sensibilidad; esto es
Mtodo lagrangiano.
Estas condiciones son suficientes, pero no necesarias, para identificar un
punto extremo. Esto quiere decir que un punto estacionario puede ser un
punto extremo sin satisfacer esas condiciones.
Existen otras condiciones que son necesarias y suficientes al mismo tiempo,
para identificar puntos extremos. Sin embargo, el procedimiento puede ser
computacionalmente inmanejable. Se define la siguiente matriz en el
punto estacionario (X
0
, l
0
):
Restricciones de desigualdad
Se ampla el mtodo de Lagrange para
manejar restricciones de desigualdad.
La contribucin principal en este caso es el
desarrollo de las condiciones generales de
Karush-Kuhn-Tucker (KKT) que
proporcionan la teora bsica de la
programacin no lineal.

Extensin del mtodo de Lagrange.
Se tiene el problema
Maximizar z = f (X)

sujeta a g
i
(X) < 0, i = 1, 2, ..., m

Las restricciones de no negatividad X > 0, si las hay, se
incluyen en las m restricciones.
Si el ptimo no restringido de f (X) no satisface a todas las
restricciones, el ptimo restringido debe ser un punto
limiten la frontera del espacio de soluciones. Esto quiere
decir que al menos una restriccin se debe satisfacer en
forma de ecuacin. Por consiguiente, el mtodo implica los
siguientes pasos.
Pasos
Paso 1. Resolver el problema sin restricciones:
Maximizar z = f (X)
Si el ptimo resultante satisface todas las restricciones,
detenerse, porque todas las restricciones son redundantes.
En caso contrario hacer k = 1 y seguir en el paso 2.
Paso 2. Activar todas las k restricciones (es decir,
convertirlas en igualdades) y optimizar a f (X) sujeta a las k
restricciones activas, con el mtodo de Lagrange. Si la
solucin obtenida es factible con respecto a las dems
restricciones, detenerse; se tiene un ptimo local.2 En caso
contrario, activar otro conjunto de k restricciones y repetir el
paso. Si se han considerado todos los conjuntos de
restricciones activas, tomadas de k en k, sin encontrar una
solucin factible, proceder al paso 3.
Pasos
Paso 3. Si k = m, detenerse. No existe solucin factible. En
caso contrario, poner k = k + 1 y seguir en el paso 2.

Un punto importante que con frecuencia se pasa por alto al
presentar el procedimiento es que no garantiza una
optimalidad global, aun cuando el problema tenga buen
comportamiento (es decir, que posea un ptimo nico). Otro
punto importante es la idea errnea implcita que para p < q,
el ptimo de f (X) sujeta a p restricciones de igualdad
siempre es mejor que su ptimo sujeto a q restricciones de
igualdad. Eso es cierto, en general, slo si las q restricciones
forman un subconjunto de las p restricciones.
El procedimiento que acabamos de describir ilustra que lo
mejor que cabe esperar usando el mtodo de Lagrange es
una (posiblemente) buena solucin factible. Esto es
especialmente cierto si la funcin objetivo no es unimodal.
Si las funciones del problema tienen buen comportamiento
(es decir, el problema posee un solo ptimo restringido), se
puede rectificar el procedimiento para localizar al ptimo
global. En forma especfica, considrense el ptimo no
restringido y los ptimos restringidos sujetos a todos los
conjuntos de una restriccin activa, despus a dos
restricciones activas, y as sucesivamente, hasta que se
activen todas las m restricciones. El mejor de todos los
ptimos factibles es el ptimo global.
Esto indica que el uso del mtodo para resolver problemas
de cualquier tamao prctico es limitado
Las condiciones de Karush-
Kuhn-Tucker (KKT).
Se presentan las condiciones necesarias
KKT para identificar puntos estacionarios
de un problema no lineal restringido sujeto
a restricciones de desigualdad. El
desarrollo se basa en el mtodo de
Lagrange. Esas condiciones tambin son
suficientes, bajo ciertas reglas que se
enunciarn despus.
Se tiene el problema
Maximizar z = f (X)

sujeta a g
i
(X) < 0, i = 1, 2, ..., m

Estas condiciones se aplican tambin al caso de minimizacin, con la
excepcin de que debe ser no positiva . Tanto en la maximizacin como en
la minimizacin, los multiplicadores de Lagrange que corresponden a las
restricciones de igualdad deben ser libres en signo.
Suficiencia de las condiciones KKT.

Las condiciones necesarias de Kuhn-Tucker tambin son suficientes, si la
funcin objetivo y el espacio de soluciones satisfacen las condiciones de
la tabla
Es ms fcil comprobar que una funcin es convexa o cncava que
demostrar que un espacio de soluciones es un conjunto convexo. Por esta
razn se presenta una lista de condiciones que son ms fciles de aplicar en
la prctica, en el sentido que se puede establecer la convexidad del espacio
de soluciones comprobando la convexidad o la concavidad de las funciones
de restriccin.
Para suministrar estas condiciones se definirn los problemas no lineales
generalizados como sigue:
Maximizar z = f (X)

sujeta a g
i
(X) < 0, i = 1, 2, ..., r
g
i
(X) > 0, i = 1, 2, ..., p
g
i
(X) = 0, i = 1, 2, ..., m
donde li es el multiplicador de Lagrange correspondiente a la restriccin
i. Las condiciones para establecer la suficiencia de las condiciones KKT
se resumen en la tabla
Las condiciones de la tabla slo representan un subconjunto de las condiciones de la
tabla. La razn es que un espacio de soluciones puede ser convexo y no satisfacer las
condiciones de la tabla
La tabla es vlida, porque las condiciones dadas producen una funcin lagrangiana
cncava L(X, S, l ) en el caso de maximizacin, y una L(X, S, l ) convexa en el caso
de minimizacin. Este resultado se comprueba al notar que si gi(x) es convexa,
entonces l
i
g
i
(x) es convexa si l
i
> 0, y es cncava si l
i
< 0. Se pueden establecer
interpretaciones parecidas para todas las condiciones restantes. Observe que una
funcin lineal es convexa y cncava al mismo tiempo. Tambin, si una funcin f es
cncava, entonces (f) es convexa, y viceversa.
Los mtodos de solucin de la programacin no lineal se
pueden clasificar, de manera general, en:
Algoritmos directos:
Mtodo del gradiente : busca el mximo (el
mnimo) de un problema siguiendo la mayor tasa
de aumento (disminucin) de la funcin objetivo
Algoritmos indirectos: el problema original se sustituye por
otro en el cual se determina el ptimo:
Programacin cuadrtica
Programacin convexa separable
Programacin estocstica
Algoritmos sin restricciones
Mtodo de bsqueda directa

Mtodo del gradiente
Mtodo de bsqueda directa
Los mtodos de bsqueda directa se aplican
principalmente a funciones unimodales de
una variable.
La idea de los mtodos de bsqueda directa
es identificar el intervalo de incertidumbre
que comprende al punto de solucin optima.
El procedimiento localiza el ptimo
estrechando en forma progresiva el intervalo
de incertidumbre hasta cualquier grado de
incertidumbre que se desee.
Mtodo de bsqueda directa
Existen dos algoritmos estrechamente
relacionados:
- mtodo de bsqueda dicotmico
- mtodo de la seccin dorada
Ambos buscan la maximizacin de una funcin
unimodal f(x) en el intervalo a < x < b, que se
sabe incluye el punto x*. Los dos mtodos
comienzan con Io =(a,b) que representa el
intervalo inicial de incertidumbre.
En el mtodo dictomo los valores x
1
y x
2
se encuentran
simtricos respecto del punto medio del actual intervalo de
incertidumbre. Esto significa que
I
i
= 0.5(I
i-1
+ D)
La aplicacin repetida del algoritmo garantiza que la
longitud del intervalo de incertidumbre se acercar al nivel
de exactitud deseado, D.
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(x
1
) y
f(x
2
), 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.
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
Mtodo del Gradiente
Es un mtodo para optimizar funciones que son
doble continuamente diferenciables. La idea
es generar puntos sucesivos en la direccin
del gradiente de la funcin. Esta tcnica
tambin es llamada mtodo del ascenso (o
descenso) mas pronunciado, o de la
pendiente mas inclinada.
El final del mtodo del gradiente se encuentra
ene l punto donde el vector gradiente se
anula. Esta solo es condicin necesaria para
la optimalidad. La optimalidad no se puede
comprobar a menos que a priori se conozca
que f(x) es cncava o convexa
Algoritmos con restricciones
El problema general de programacin no
lineal con restricciones se define como:
Z = f(x) Max o Min
Sujeta a:
g(x) < 0
Las condiciones de no negatividad forman
parte de las restricciones. Tambien al
menos una de las funciones f(x) o g(x) es
no lineal, y todas las funciones son
continuamente diferenciables.
No existe algoritmo general para manejar modelos de
no lineal, por el comportamiento errtico de las
funciones no lineales. Quiz el resultado ms
general aplicable al problema es el de las
condiciones KKT.
Se presentan varios algoritmos que se pueden
clasificar en general como mtodos indirectos o
directos. Con los primeros se resuelve el problema
no lineal manejando uno o dos programas lineales
derivados del problema original. Los mtodos
directos manejan el problema en su forma original.
Entre los mtodos indirectos se estudiaran:
programacin separable, cuadrtica, geomtrica y
estocstica. Entre los directos se vern las
combinaciones lineales y una breve descripcin de
la tcnica de maximizacin secuencial sin
restricciones.
Programacin separable
Entres los ejemplos de otras funciones que se pueden hacer
separables mediante sustituciones estn e
(x
1
+ x
2
)
y x1
x
2.
Se puede
aplicar una variante del procedimiento presentado, para lllegar a
la separabilidad.
La programacin separable maneja los problemas no lineales
en lo que la funcin objetivo y las restricciones son separables.
En esta seccin veremos como se puede obtener una solucin
de cualquier problema separable, mediante aproximacin lineal
y el mtodo simplex de la programacin lineal.
La funcin f(x) de una sola variable se puede aproximar
mediante una funcin lineal en intervalos, con programacin
entera mixta. Supongamos que se puede aproximar f(x) en un
intervalo [a,b]. Se define ak k= 1,2,,k como el k-esimo punto de
quiebre (o de discontinuidad) en el eje x tal que a1 < a2<<ak
Los puntos a1 y ak coinciden con los extremos a y b del intervalo
que se investiga.
Asi, f(x) se aproxima como sigue
Programacin Cuadrtica
La funcin X
T
DX define una forma cuadrtica. Se supone que la
matriz D es simtrica y negativa definida. Eso quiere decir que
el Z es estrictamente cncava. Las restricciones lineales, lo que
garantiza que el espacio de soluciones es convexo.
La solucin a este problema se basa en las condiciones KKT
necesarias. Como z es estrictamente cncava y el espacio de
soluciones es convexo, estas condiciones son suficientes para
tener un ptimo global .
Se describir el problema de programacin cuadrtica para el
caso de la maximizacin . Es trivial cambiar la formulacin para
el caso de la minimizacin.
El problema se puede planear como sigue:
Convexa separable
Trabajaremos el caso de programacin geomtrica sin restricciones
Programacin geomtrica
La programacin geomtrica tiene que ver con problemas en los que
las funciones objetivo y de restriccin son del siguiente tipo:




donde
La programacin estocstica tiene que ver con situaciones en las que
algunos o todos los parmetros del problema son variables aleatorias. Esos
casos son tpicos en los problemas de la vida real, donde puede ser difcil
determinar con certidumbre los valores de los parmetros.
La idea de la programacin estocstica es convertir el problema
probabilstico en un caso determinstico equivalente. En esta seccin se
explicar la programacin restringida por el azar, que se define como
Programacin estocstica
Esta restriccin se puede llevar a la forma de programacin separable
mediante la sustitucin
As la restriccin original equivale a
Caso 2. Slo bi es normal con media E{bi} y varianza var{bi}. El anlisis
se parece al del caso 1. Considere la restriccin estocstica:
Este mtodo tiene que ver con el siguiente problema, en el
que todas las restricciones son lineales:
Maximizar Z = f (X)
sujeta a
AX < b, X > 0

El procedimiento se basa en el mtodo de la pendiente ms
inclinada (del gradiente). Sin embargo, la direccin
especificada por el vector gradiente podr no resultar en
una solucin factible para el problema con restricciones.
Tambin, el vector gradiente no necesariamente ser nulo
en el punto ptimo (restringido). El mtodo de pendiente
ms inclinada se puede modificar entonces para manejar el
caso con restricciones.
Mtodo de combinaciones lineales
Al comparar con el mtodo de la pendiente ms inclinada
(Mtodo del gradiente) se ve que el parmetro r representa el
tamao del paso
Los problemas de programacin lineal generados en las
iteraciones sucesivas slo difieren en los coeficientes de la
funcin objetivo. As, se pueden usar los procedimientos de
anlisis de sensibilidad presentados en Programacin Lineal
(anlisis postoptimal) para hacer los clculos con eficiencia
Algoritmo SUMT
En esta seccin se presenta un mtodo de gradiente ms general. Se
supone que la funcin objetivo f (X) es cncava, y que cada funcin de
restriccin gi(X) es convexa. Adems, el espacio de soluciones debe tener
un interior. Esto excluye el uso implcito y explcito de restricciones de
igualdad.
El algoritmo SUMT (de sequential unconstrained maximization technique,
tcnica de maximizacin secuencial no restringida) se basa en transformar
el problema con restricciones en uno equivalente sin restricciones (o no
restringido). El procedimiento se parece al uso del mtodo de los
multiplicadores de Lagrange. Despus, el problema transformado se puede
resolver con el mtodo de la pendiente ms pronunciada (Mtodo del
gradiente).
Para aclarar el concepto, considrese la nueva funcin
donde t es un parmetro no negativo. El signo de suma tiene
en cuenta las restricciones de no negatividad, que se deben
poner en la forma xj < para ser consistentes con las
restricciones originales. Como g
i
(X) es [1/ gi(X)] convexa, es
cncava. Eso quiere decir que p(X, t) es cncava en X. En
consecuencia, p(X, t) posee un mximo nico. La
optimizacin del problema original
restringido equivale a la optimizacin de p(X, t).
El algoritmo se inicia seleccionando en forma arbitraria un
valor inicial no negativo para t. Se selecciona un punto inicial
X0 como la primera solucin de prueba. Debe ser un punto
interior, esto es, no debe estar en las fronteras del espacio
de solucin. Dado el valor de t, se aplica el mtodo de la
pendiente ms pronunciada para determinar la solucin
ptima (el mximo) de p(X, t).
El algoritmo se inicia seleccionando en forma arbitraria un
valor inicial no negativo para t. Se selecciona un punto inicial
X
0
como la primera solucin de prueba. Debe ser un punto
interior, esto es, no debe estar en las fronteras del espacio de
solucin. Dado el valor de t, se aplica el mtodo de la
pendiente ms pronunciada para determinar la solucin
ptima (el mximo) de p(X, t).
El nuevo punto de solucin siempre ser un punto interior,
porque si ese punto est cerca de las fronteras, al menos una
de las funciones adquirir un valor negativo muy
grande.
Como la funcin objetivo es maximizar p(X, t), esos puntos de
solucin se excluyen en forma automtica.
El resultado principal es que los puntos de solucin sucesivos
siempre sern puntos interiores. En consecuencia, el
problema siempre se puede manejar como un caso sin
restricciones.
Una vez obtenida la solucin ptima correspondiente a
determinado valor de t, se genera un nuevo valor de t y se repite
el proceso de optimizacin (con el mtodo de la pendiente ms
pronunciada). Si t' es el valor actual de t, se debe seleccionar el
siguiente valor t" de modo que 0 < t" < t'.
El algoritmo SUMT termina cuando, para dos valores sucesivos
de t, los valores ptimos correspondientes de X, obtenidos
maximizando p(X, t), sean aproximadamente iguales.
En este punto los intentos posteriores producirn poca mejora.
La implementacin real de SUMT tiene ms detalles que los que
se presentaron aqu.
En forma especfica, un factor importante que puede afectar la
rapidez de convergencia es la seleccin de un valor inicial de t.
Adems, para determinar un punto interior inicial se pueden
necesitar tcnicas especiales. Estos detalles se pueden
encontrar en Fiacco y McCormick (1968).

Potrebbero piacerti anche