Unidad: 3: 3.1 Conceptos Básicos De Problemas De Programación No Lineal

Share Embed Donate


Short Description

Download Unidad: 3: 3.1 Conceptos Básicos De Problemas De Programación No Lineal...

Description

Unidad: 3

3.1 Conceptos Básicos De Problemas De Programación No Lineal Un modelo de Programación Lineal (PNL) es aquel donde las variables de decisión se expresan como funciones no lineales ya sea en la función objetivo y/o restricciones de un modelo de optimización. Esta característica particular de los modelos no lineales permite abordar problemas donde existen economías o deseconomías de escala o en general donde los supuestos asociados a la proporcionalidad no se cumplen. La Programación no Lineal (PNL) es una parte de la Investigación Operativa cuya misión es proporcionar una serie de resultados y técnicas tendentes a la determinación de puntos óptimos para una función (función objetivo) en un determinado conjunto (conjunto de oportunidades), donde tanto la función 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, según las funciones que en él intervengan (a diferencia de la Programación Lineal (PL) donde la forma especial del conjunto de oportunidades y de la función objetivo permite obtener  resultados generales sobre las posibles soluciones y facilitan los tratamientos algorítmicos de los problemas). Ello ocasiona una mayor dificultad en la obtención de resultados, que se refleja también en la dificultad de la obtención numérica de las soluciones. En este sentido, hay que distinguir entre las diversas caracterizaciones de óptimo, que sólo se emplean como técnicas de resolución en problemas sencillos, y los

métodos numéricos iterativos, cuyo funcionamiento se basa en estas caracterizaciones, para la resolución de problemas más generales. La Programación No Lineal (PNL) provee una serie de herramientas que manipulan en forma estricta los espacios de búsqueda de solución de los problemas, aprovechan información matemática del problema para dirigirse en cada paso hacia un punto de buena calidad, mejorando de esta manera la llegada a la solución. Además, PNL permite el modela miento de restricciones no lineales, una característica muy útil para la formulación dada en el presente trabajo a los problemas que involucran variables enteras. Estas características mencionadas se deben a que en problemas de PNL, el cumplimiento de las condiciones de Karush-Kuhn-Tucker (condiciones de primer orden) y algunas condiciones de segundo orden son requeridas para evaluar la factibilidad y la optimalizad de los puntos que se van encontrando.

3.2 Ilustración Grafica De Problemas De Programación No Lineal Algunos problemas de optimización matemática se componen de variables enteras y/o binarias lo que los convierte en problemas de tipo enteros y/o combinatoriales respectivamente, por esta razón, su solución, a través de computadores, emplea tiempos grandes cuando se usan técnicas exactas como Branch and Bound, Benders, Balas, entre otras. Procurando mejorar la búsqueda de soluciones a este tipo de problemas se han empleado, en los últimos tiempos, técnicas heurísticas y técnicas inteligentes como Colonia de Hormigas, Recocido Simulado, Búsqueda Tabú, Algoritmos Genéticos, Partículas Swarm, entre otras. En general, están basados en la aleatoriedad y en algunos criterios obtenidos de la experiencia del diseñador para encontrar una buena solución. Estas técnicas usan la función objetivo solo para evaluar la calidad de las soluciones, en muchas ocasiones ignorando la información matemática (gradiente) del problema que se encuentra en esta función.

Ejemplo Una compañía de auditores se especializa en preparar liquidaciones y auditorías de empresas pequeñas. Tienen interés en saber cuantas auditorías y liquidaciones pueden realizar mensualmente para maximizar sus ingresos. Se dispone de 800 horas de trabajo directo y 320 horas para revisión. Una auditoría

en promedio requiere de 40 horas de trabajo directo y 10 horas de revisión, además aporta un ingreso de 300 dls. Una liquidación de impuesto requiere de 8 horas de trabajo directo y de 5 horas de revisión, produce un ingreso de 100 dls. El máximo de liquidaciones mensuales disponibles es de 60.

OBJETIVO :

Maximizar el ingreso total.

VARIABLE DE DECISION: Cantidad de auditorías (X 1). Cantidad de liquidaciones (X2).

RESTRICCIONES : Tiempo disponible de trabajo directo Tiempo disponible de revisión Número máximo de liquidaciones.

Maximizar Sujeto a:

solución óptima siempre se encuentra en uno de los vértices del conjunto de soluciones factibles. Se analizan estos valores en la función objetivo. El vértice que representa el mejor valor de la función objetivo será la solución óptima.

3.3 Tipos De Problemas De Programación No Lineal Programación no lineal (PNL) es el proceso de resolución de un sistema de igualdades y desigualdades sujetas a un conjunto de restricciones sobre un conjunto de variables reales desconocidas, con un función objetivo a maximizar, cuando alguna de las restricciones o la función objetivo no son lineales. Aunque los problemas de programación lineal son muy comunes y cubren un amplio rango de aplicaciones, en la vida real uno se tiene que enfrentar con cierta frecuencia a otro tipo de problemas que no son lineales. Cuando el conjunto de restricciones, la función objetivo, o ambos, son no lineales, se dice que se trata de un tipo de problema de programación no lineal (PPNL). Las condiciones de Karush-Kuhn-Tucker proporcionan las condiciones necesarias para que una solución sea óptima.

Los tipos de problemas de programación no lineal son: 1. 2. 3. 4. 5. 6. 7. 8. 9.

Optimización no restringida. Optimización linealmente restringida. Programación cuadrática Programación convexa. Programación separable. Programación no convexa. Programación geométrica. Programación fraccional. Problema de complementariedad.

ALGORITMOS SIN RESTRICCIÓN

En esta sección se presentarán dos algoritmos para el problema no restringido: el algoritmo de búsqueda directa y el algoritmo de gradiente.

Método de búsqueda directa Los métodos de búsqueda directa se aplican principalmente a funciones estrictamente unimo- dales de una variable. Aunque puede parecer trivial el caso, la sección 21.1.2 muestra que la optimización de funciones de una variable juega un papel clave en el desarrollo de los algoritmos de varias variables, más generales. La idea de los métodos de búsqueda directa es identificar el intervalo de incertidum- bre que comprenda al punto de solución óptima. El procedimiento localiza el óptimo estrechando en forma progresiva el intervalo de incertidumbre hasta cualquier grado de exactitud que se desee. En esta sección se presentan dos algoritmos estrechamente relacionados: los métodos debúsqueda dicótomo y de sección dorada (o áurea). Ambos buscan la maximización de una función unimodal/(x) en el intervalo a ^ x < b, que se sabe que incluye el punto óptimo x*. Los dos métodos comienzan con /0 = (a, b) que representa el intervalo inicial de incertidumbre. Paso general i. Sea /, _ , = (xD xR) el intervalo actual de incertidumbre (en la iteración 0, xL = a y xR= b). A continuación se definen x x y x 2 tales que  xj^ ^ ^ x2 ^ x r 

El siguiente intervalo de incertidumbre, /z, se define como sigue: 1. Si f(x x ) > /(x2), entonces xL < x* < x 2. Se definen xR = x 2 e /, = (xL , x 2 ) (véase la figura 21.2[a]). 2. Si f(x x ) < f(x 2\ entonces x x < x* < x R. Se definen xL = x x e I¡ = (xh xR ) (véase la figura 21.1 [b]). . 3. Si f{x\) = /(jc2), entonces x x < x* < x 2. Se definen xL = x2 e /, = (xb x 2 ). La manera en que se determinan x x y x2 garantiza que /, < /,_ p como se demostrará en breve. El algoritmo termina en la iteración ksilk< A, donde A es un grado de exactitud definido por el usuario. La diferencia entre los métodos dicótomo y de sección dorada estriba en la forma en que se calculan x xy x 2. La tabla siguiente presenta las fórmulas.

En el método dicótomo los valores jc, y x 2 se encuentran simétricos respecto del punto medio del actual intervalo de incertidumbre. Esto significa que

La aplicación repetida del algoritmo garantiza que la longitud del intervalo de incertidumbre se acercará al nivel de exactitud deseado, A. En el método de la sección dorada la idea es de mayor involucramiento. Se puede apreciar que cada iteración del método dicótomo requiere calcular los dos valores/(jc,) y f(x 2 ), Pe” ro termina por descartar alguno de ellos. Lo que propone el método de la sección dorada es ahorrar cálculos mediante el reuso del valor descartado en la iteración inmediata siguiente. Para definir 0 < a < 1

3.4 Optimización Clásica Esta técnica es útil para funciones continuas y diferenciales. *Estos métodos son analíticos. *Tiene un campo limitado de aplicación. *Sin embargo, esto es la base para los demás métodos. Si la restricción no existe, o es una restricción de igualdad, con menor o igual número de variables que la función objetivo entonces, el cálculo diferencial, da la respuesta, ya que solo se trata de buscar los valores extremos de una función.

Ejemplos función objetivo discreta lineal, espacio continuo: 

programación lineal

función objetivo continua, espacio continuo: *métodos basados en el gradiente p.ej. Newton *trajectory methods (enumeración de todos los puntos `extremos' *relaxación (multi-resolución) *métodos sin gradiente, p.ej. Nelder-Mead (1965, and recent improvements 1994, 2002)

Rodríguez-Palomares (2002, and recent improvements 2005) Dennis-Torczon (multidirectional search algorithm 1991)

función objetivo discreta lineal, espacio continuo: *branch and bound *divide and conquer  *bayesian search (cluster methods) *monte carlos methods (stochastic search)

3.4.1 Puntos De Inflexión Definición de puntos de inflexión Sea F una función que es continua en un intervalo abierto y sea c un punto en ese intervalo. Si la gráfica de f tiene una recta tangente en ese punto (c, f(c)), entonces este punto es un punto de inflexión de la grafica de f si la concavidad de f cambia de cóncava hacia arriba a cóncava hacia abajo(o de cóncava hacia abajo a cóncava hacia arriba) en ese punto. Para localizar los posibles puntos de inflexión, se pueden determinar los valores de x para los cuales f´´(x)=0 o f´´(x) no existe. Esto es similar al procedimiento para localizar los extremos relativos de f

Teorema Puntos de Inflexión Si (cf(c)) es un punto de inflexión de la gráfica de f, entonces f´´(c)=0 o f´´ no existe en x=c.

Ejemplos Determinación de los puntos de inflexión Determinar los puntos de inflexión y analizar la concavidad de la gráfica de f(x)=x4-4x3

Solución La derivación doble produce lo siguiente f(x)= x4-4x3 f(x)=4x3-12x2

f(x)=12x2-24=12x(x-2) Haciendo f´´(x)=0 es posible determinar que los puntos de inflexión posibles ocurre en x=0 y x=2. Al probar los intervalos determinados por estos valores de x, se puede concluir que ambos producen puntos de inflexión. Un resumen de esta prueba se presenta a continuación

3.4.2 Máximos Y Mínimos Mínimo (fuerte): Un punto extremo X0 de una función f(X0) define un mínimo de la función si f(X0+h) > f(X0), donde X0 es cualquier punto de la función y h en valor absoluto es suficientemente pequeña. Máximo (fuerte): Un punto extremo X0 de una función f(X0) define un máximo de la función si f(X0+h) < f(X0), donde X0 es cualquier punto de la función y h en valor absoluto es suficientemente pequeña. Una función puede contener varios máximos y mínimos, identificados por los puntos extremos de la función. En la figura 1 se puede observar esto, los puntos  x1, x3 y x6 son máximos, de la figura notamos que f(x6) es el mayor que f(x1) y f(x3), a este punto se le conoce como máximo global de la función y a los restantes como máximos locales. Lo mismo se puede ver para los mínimos, en los que también existe un mínimo global f(x2) y un mínimo local f(x4). Como es de lógico, solo puede existir un solo global y posiblemente varios locales. Así pues, el problema (PNL) consiste en encontrar las variables de decisión factibles para el problema para las cuales la función objetivo tome el mayor  valor posible. Si para un punto, la función objetivo toma el valor máximo de todos los puntos situados en algún entorno suyo, se dice que el máximo es local. Si se encuentra un punto que produce el valor máximo de f en todo el conjunto de oportunidades, el máximo es global.

Una condición necesaria pero no suficiente para que X0 sea un punto extremo, es que para una función con mas de una variable, el gradiente Ñ f(X0) = 0. Si es

cierto esto entonces X0 será conocido como punto estacionario. Una condición suficiente para que un punto estacionario sea extremo es que la matriz Hessiana H obtenida en X0 del sistema de ecuaciones sea positiva cuando X0 es un punto extremo de mínimo. Y negativa cuando X0 es un punto extremo de máximo. Un máximo débil implica un numero finito de máximos alternativos (ver figura 1) y se define como X0 es un máximo débil, si f(X0 + h)
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF