SECRETARÍA DE EDUCACIÓN PÚBLICA INSTITUTO TECNOLÓGICO DE VERACRUZ INVESTIGACION DE OPERACIONES II
UNIDAD 1: MODELOS DE REDES
EJERCICIOS ALUMNO: RODRÍGUEZ SARMIENTO DIANA KAREN INGENIERIA INDUSTRIAL CLAVE DE LA ASIGNATURA: INC-1019 CLAVE DEL GRUPO: 5X4 TITULAR DE LA MATERIA: CRUZ ROMERO RENE H. VERACRUZ, VER.
AGOSTO-DICIEMBRE AGOSTO-DICIEMBRE 2017
INDICE INDICE ..................................................................................................................................................... 1 1.
Introducción a la Programación Entera .......................................................................................... 2
Programación Entera .............................................................................................................................. 3
Tipos de modelos de Programación Entera ................................................................................. 5 2.
Método gráfico de la Programación Entera ................................................................................... 6
3.
Redondeo ....................................................................................................................................... 8
4.
Método de planificación y acotamiento ........................................................................................ 8
5.
Algoritmo de Gomory ................................................................................................................... 14
6.
Programación Entera Mixta.......................................................................................................... 15
7.
Problemas más comunes.............................................................................................................. 16
Conclusión ............................................................................................................................................. 23 Bibliografía ............................................................................................................................................ 23
PROGRAMACION ENTERA 1. Introducción a la Programación Entera En muchos problemas prácticos, las variables de decisión son realistas únicamente si estas son enteras. Hombres, máquinas y vehículos deben ser asignados a tareas en cantidades enteras. Hay muchos recursos que deben existir en forma indivisible donde las asignaciones en fracciones son insignificantes. La programación entera obtiene soluciones a problemas de asignación que requieren enteros. Cuando cada variable debe ser un entero, es llamada programación entera pura; cuando únicamente algunas variables, deben ser enteras, es llamada programación entera mixta. Un enfoque para obtener soluciones enteras a un problema es resolver de la solución óptima obtenida de la solución del Simplex y redondear las soluciones a números enteros. Aunque el enfoque de redondeo es en ocasiones adecuado, esto tiene errores y puede conducir a una solución subóptima. La solución óptima noentera no es necesariamente factible u óptima después de que esta es redondeada. Cuando las variables son grandes y sus valores es la función objetivo son pequeñas, un simple redondeo es apropiado. En problemas que involucran pequeñas magnitudes para las variables y grandes valores en la función objetivo, una solución entera óptima es necesaria. La programación entera está relacionada con funciones discretas y no distingue entre números mixtos y enteros. Problemas de Programación Lineal generalmente requieren que las variables sean enteras no-negativas. Si la mejor solución factible a un problema de Programación Lineal es una solución entera, esta es también la mejor solución factible a un problema de Programación Entera. La programación Entera es una forma de programación no-Lineal. Es casi lo mismo que Programación Lineal con la excepción de que las variables en la solución final deben ser números enteros no-negativos. Los problemas de programación entera pueden ser resueltos transformando el problema en una forma que permita la aplicación del método Simplex de Programación Lineal. Un método para resolver problemas de Programación Lineal Entera Mixta y Pura es el procedimiento del Plano Cortante de Gomory. Este procedimiento que produce la mejor solución cuando las variables deben ser expresadas en números enteros; inicia resolviendo el problema por el método Simplex sin considerar el requerimiento de enteros. Después de que la solución óptima no entera es obtenida a través del Simplex, una nueva restricción Lineal es desarrollada para satisfacer los requerimientos de enteros. La nueva restricción Lineal, llamada Plano Cortante modifica el problema original eliminado algunas soluciones no enteras, pero no elimina las soluciones factibles
enteras. La nueva restricción corta o divide la solución óptima no entera previa y la considera no factible. La nueva ecuación restrictiva es añadida a la tabla del Simplex y una nueva variable entra en solución. Cuando la nueva variable entra en solución, causa que al menos una de las variables básicas tome un valor entero. El proceso continua hasta que todas las variables básicas sean enteras. A través de esta técnica iterativa se alcanza una solución óptima entera después de que han sido Programación Entera, añadidas las suficientes nuevas restricciones para recortar todas las soluciones superiores no enteras . Este método resulta incómodo, pero garantiza una solución óptima no-negativa entera. Observe el algoritmo del plano cortante. Una operación clave en el algoritmo implica la selección de una nueva ecuación restrictiva la cual es también llamada Plano Cortante. Una nueva regla es elegir la variable básica que tenga la mayor fracción en la solución óptima no-entera. Si dos o más variables básicas están empatadas en su parte fraccional, seleccione aquella variable que su coeficiente en la función objetivo tenga la menor contribución por unidad (para un problema de minimización seleccione las variables básicas cuyo coeficiente en la función objetivo que tenga el menor costo) . Para empates en las fracciones, la variable con la menor contribución por unidad es elegida debido a que esta variable se convertirá en un entero en la próxima iteración. Debido a que el valor de Z no puede aumentar y puede decrecer (prob. de maximización) al hacer la variable entera, la variable básica con la menor contribución reducirá el valor de Z en una cantidad muy pequeña. Para generar la nueva restricción, reemplace todos los coeficientes en la ecuación restrictiva en cuestión por los menores números nonegativos que son congruentes a esos coeficientes y la expresión resultantes debe ser mayor que o igual a la parte fraccional de la constante en el lado derecho del signo igual.
Programación Entera Un problema de Programación Entera es un problema de programación lineal en el cual algunas de las variables, o todas, tienen que ser números enteros no negativos. El objetivo de la Programación Lineal Entera es encontrar el valor de la función que Max (Min) z = c1 x1 + c2 x2 + … + cn xn denominada función objetivo. La función objetivo se encuentra sujeta a una serie de restricciones: a11 x1 + a12 x2 + … + a1n xn ( , , =) b1 a21 x1 + a22 x2 + … + a2n xn ( , , =) b2 …. am1 x1 + am2 x2 + … + a mn xn ( , , =) bm x j > 0 (j=1, 2, ...., n) x j entero
Cuando se nos presente la resolución de un Problema de Programación Entera, lo resolvemos como un problema de Programación Lineal. Si sus soluciones son enteras, ésta es la solución para el problema de programación lineal entera. En cualquier problema se verifica que la solución óptima zop (PL) > zop (PLE) Ésta relación se cumple siempre porque cualquier solución factible para un problema de PLE es también una solución factible para la su relajación lineal (PL). Definición 1. El problema de programación lineal que se obtiene al omitir todas las restricciones enteras ó variables 0-1 se llama relajación de programación lineal para la programación entera.
Definición 2. Criterio de optimalidad en un problema de PLE: Una solución
entera factible xF es óptima para el problema de PLE si es solución óptima de una relajación lineal. En tal caso se cumple que z op (PL) = z op (PLE)=zF Un problema de programación entera en el cual solamente algunas de las variables tienen que ser números enteros, se llama un problema de programación entera mixta. Por ejemplo: max z = 3 x 1 + 2 x 2 st x 1 + x 2 < 5 x 1 , x 2 > 0 ; x 1 entero Un problema de programación entera en el cual todas las variables toman valores 0 ó 1, se denomina problema de programación entera 0-1 (programación lineal binaria). La relajación de programación lineal para la programación mixta del ejemplo anterior es: max z = 3 x 1 + 2 x 2 st x 1 + x 2 = 5 x 1 , x 2 > 0 Por lo tanto, la relajación programación lineal es una versión menos restringida, o más relajada, de la programación entera. Esto significa que la región factible para cualquier programación entera tiene que estar incluida en la región factible de la relajación programación lineal correspondiente.
Tipos de modelos de Programación Entera Programación Entera es un término general para los modelos de programación matemática que presentan condiciones de integridad (condiciones que estipulan que algunas o todas las variables de decisión deben tener valores enteros). Ya hemos apuntado que los modelos de programación lineal entera son modelos de programación lineal que tienen la característica adicional de que algunas de las variables de decisión deben tener valores enteros. Existen diversas clasificaciones de esta categoría de modelos.
Programas Enteros Puros Un modelo entero puro (PLE) es, como su nombre lo indica, un problema en el que se exige que todas las variables de decisión tengan valores enteros. Por ejemplo Min 6x1 + 5x2 + 4x3 s.a. 108x1 + 92x2 + 58x3 >= 576 7x1 + 18x2 + 22x3 >= 83 x1, x2, x3 ><0 y enteros Es un modelo entero puro. Sin las restricciones adicionales de que x1, x2, x3 sean enteros (o sea las condiciones de integralidad) seria un problema de programación lineal
Programas Enteros Mixtos Un problema en el que solo se requieren que algunas variables tengan valores enteros mientras que otras pueden asumir cualquier numero no negativo (es decir, cualquier valor continuo) se llama programación lineal entera mixta (PLEM). Por ejemplo, supóngase que en el problema anterior solo x1 y x2 deben ser enteros y x3 no. El problema resultante es: Min
6x1 + 5x2 + 4x3 s.a. 108x1 + 92x2 + 58x3 >= 576 7x1 - 8x2 + 22x3 >= 83 x1, x2, x3 >=0;
x1 y x2 enteros