8
Optimización de Sistemas y Funciones Programación No Lineal Autores: Jose Fernández Farid Manchola

Optimización de Sistemas y funciones

Embed Size (px)

Citation preview

Optimización de Sistemas y FuncionesProgramación No Lineal

Autores: Jose FernándezFarid Manchola

Optimización no restringida

Los problemas de optimización no restringida no tienen restricciones, por lo que la función objetivo es sencillamente.Maximizar f(x)

Los siguientes algoritmos se utilizan comúnmente para este tipo de modelo:- Quasi-Newton: utiliza un procedimiento mixto cuadrática y cúbica de búsqueda de

línea y la fórmula broyden-fletcher-goldfarb-shanno (BFGS) para la actualización de la aproximación de la matriz hessiana.

- Nelder-Mead: utiliza un algoritmo de búsqueda directa que utiliza sólo los valores de función (no requiere derivados) y se ocupa de las funciones objetivo no lisos.

- Trust-región: se utiliza para problemas no lineales sin restricciones y especialmente útil para los problemas a gran escala donde la raleza o la estructura pueden ser explotadas

Optimización linealmente restringida Se caracterizan por restricciones que se ejecutan por completo a la programación lineales, de manera que todas las funciones de restricción gi (x) son lineales. Pero la función objetivo es no lineal. El problema se simplifica mucho si solo se tiene que tomar en cuenta una función no lineal junto con una región factible de programación lineal. Se han desarrollado varios algoritmos especiales basados, en una extensión del método simplex para analizar la función objetivo no lineal.

Programación convexa

La programación convexa abarca una amplia clase de problemas, entre ellos como casos especiales, están todos los tipos de modelos anteriores cuando ƒ(x) es cóncava. Las suposiciones son

1.- ƒ(x) es cóncava.2.- cada una de las gi(x) es convexa.

Esta suposición son suficientes para asegurarse que un máximo local es un máximo global, se vera que las condiciones necesarias y suficientes para obtener tal solución optima son una generalización natural de las condiciones que se acababan de exponer para la optimización no restringida y su extensión a la inclusión de restricciones de no negatividad.

Programación separable

Una función F(x1, x2,… Xn) es separable si se puede expresar como la suma de n funciones de una sola variable F1(x1),F2(x2),…Fn(xn), es decir, F(x1,x2,…xn)- F1(x1)+F2(x2)+….+Fn(xn). Un caso especial de programación separable ocurre cuando las funciones gj

i(xi) son convexas, resultando así un espacio convexo de solución; además la función Fi(xi) es convexa en caso de minimización y cóncava en caso de maximización)

No existe un algoritmo único para solucionar problemas de programación convexa; en general los algoritmos conocidos se pueden clasificar así:

- Algoritmos de gradiente: en estos casos se modifica de alguna manera el procedimiento de búsqueda del gradiente para evitar que la trayectoria de búsqueda penetre la frontera de restricción.

- Algoritmos secuenciales no restringidos: incluye los métodos de función de penalización y de función barrera ; estos algoritmos convierten el problema de optimización restringida original en una sucesión de problemas de optimización no restringida.

- Algoritmos de aproximación secuencial: incluye métodos de aproximación lineal y aproximación cuadrática; estos algoritmos sustituyen la función objetivo no lineal por una sucesión de aproximaciones lineales o cuadráticas.

Programación geométrica La programación geométrica soluciona un caso especial de problemas de Programación No Lineal.

Este método resuelve al considerar un problema dual asociando los siguientes dos tipos de programación no lineal:

- Problema geométrico no restringido:

- Problema geométrico restringido

Programación geométrica La programación geométrica surge cuando la función objetivo y funciones de restricción son de la siguiente forma:

Donde:

En tales casos, las ci y aij representan las constantes físicas y ja xj son las variables de diseño, estas funciones por lo general no son cóncavas ni convexas, por lo que las técnicas de programación convexa no se pueden aplicar directamente a estos problemas de programación geométrica.

Programación Dinámica La programación dinámica encuentra la solución óptima de un problema con n variable descomponiéndolo en n etapas, siendo cada etapa un subproblema de una sola variable. Sin embargo, como la naturaleza de la etapa difiere de acuerdo con el problema de optimización, la programación dinámica no proporciona los detalles de cómputo para optimizar cada etapa.

Existen 3 modelos diferentes de programación dinámica.

- Problema de diligencia (stagecoach problem)- Problema de la mochila (snapsack problem)- Programación de producción e inventarios (production and inventory

scheduling)

Programación no convexa La programación no convexa incluye todos los problemas de programación no lineal que no satisfacen las suposiciones de programación convexa. En este caso, aun cuando se tenga éxito en contar un máximo local, no hay garantía de que sea también un máximo global. Por lo tanto, no se tiene un algoritmo que garantice encontrar una solución optima para todos estos problema; pero si existen algunos algoritmos bastantes adecuados para encontrar un máximo locales, en especial cuando las formas de las funciones no lineales no se desvían demasiado de aquella que se supusieron para programación convexa.