Sistemas de Ingenieria

March 29, 2018 | Author: Rodrigo Cueto Méndez | Category: Operations Research, Linear Programming, Mathematical Model, Decision Making, Physics & Mathematics


Comments



Description

UNIVERSIDAD MAYOR DE SAN SIMÓNFACULTAD DE CIENCIAS Y TECNOLOGÍA Departamento de Ingeniería Civil MATERIAL DE APOYO DIDÁCTICO DE LA ENSEÑANZA – APRENDIZAJE EN LA ASIGNATURA DE SISTEMAS DE INGENIERÍA “Texto Guía” Trabajo Dirigido, Por Adscripción, Presentado en Cumplimiento Parcial de los Requisitos Para Optar al Diploma Académico de LICENCIADO EN INGENIERÍA CIVIL Presentado por: Julio Rafael Angulo Torrico José Arturo Rivera Soto Tutor: Ing. Ramiro Saavedra Cochabamba-Bolivia Mayo 2006 ÍNDICE CAPÍTULO 1 1 INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES 1 1.1 Reseña histórica 1 1.2 ¿Qué es la Investigación de Operaciones? 3 1.3 Fases de un estudio de Investigación de Operaciones 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 La definición del problema La construcción del modelo Solución del modelo matemático La validación del modelo La implementación del modelo matemático 4 5 6 7 8 10 1.4 Modelos matemáticos de Investigación de Operaciones 10 1.5 Impacto de la Investigación de Operaciones 11 1.6 Riesgo al aplicar la Investigación de Operaciones 11 1.7 Tipos de modelos de Investigación de Operaciones. 12 12 13 14 14 1.7.1 1.7.2 1.7.3 1.7.4 Programación Lineal Teoría de Redes (incluye PERT/CPM) Teoría de colas (líneas de espera) Modelo de hoja de cálculo electrónica 1.8 Conclusiones 15 1.9 Bibliografía 15 1.10 Enlaces 15 CAPÍTULO 2 16 MODELIZACIÓN A LA PROGRAMACIÓN LINEAL 16 2.1 Introducción a la modelización 16 2.2 Fases del proceso de modelización 17 2.3 Reglas básicas de modelización 18 2.4 Problemas Resueltos 19 2.5 Problemas Propuestos 22 2.6 Bibliografía 25 2.7 Enlaces 25 CAPÍTULO 3 26 PROGRAMACIÓN LINEAL - MÉTODO GRÁFICO 26 3.1 Introducción 26 3.2 Modelo de programación lineal con dos variables 26 Método gráfico 26 27 30 3.3 Ejemplo de aplicación 3.1 Problemas de repaso 3.4 3.4.1 3.4.2 3.5 Solución por computadora Solución gráfica con TORA Solución gráfica con WinQSB (Quantitative System For Business) Análisis de sensibilidad por el método gráfico 3.5.1 Cambios en los coeficientes de la función objetivo Ejemplo de aplicación 3.2 3.5.2 Cambio en disponibilidad de recursos (en el lado derecho de las restricciones) Ejemplo de aplicación 3.3 3.5.3 Valor por unidad de recursos Ejemplo de aplicación 3.4 35 35 37 39 39 39 40 41 43 43 3.6 Problemas propuestos 44 3.7 Bibliografía 47 3.8 Enlaces 47 CAPÍTULO 4 48 PROGRAMACIÓN LINEAL - MÉTODO SÍMPLEX 48 4.1 Introducción 48 4.2 Espacio de soluciones en forma de ecuación 48 49 50 50 51 51 51 51 52 4.2.1 Conversión de desigualdades a ecuaciones Ejemplo de aplicación 4.1 4.2.2 Manejo de variables no restringidas y no positivas. 4.2.2.1 Conversión de variables no restringidas. Ejemplo de aplicación 4.1 (a) Ejemplo de aplicación 4.1 (b) 4.2.2.2 Conversión de variables no positivas Ejemplo de aplicación 4.1 (c) 4.3 4.4 Transición de solución gráfica a solución algebraica 52 Método Símplex 53 55 Ejemplo de aplicación 4.2 4.5 Método de penalización 4.5.1 Método de la “M” Ejemplo de aplicación 4.3 4.5.2 Método de las dos fases Ejemplo de aplicación 4.4 4.6 Fundamentos matemáticos 4.6.1 Soluciones básicas y bases 4.6.2 Método Símplex 4.6.2.1 Tabla Símplex en forma matricial 61 62 62 64 65 68 69 69 69 4.7 Método Símplex revisado Ejemplo de aplicación 4.5 Ejemplo de aplicación 4.6 4.8 Casos especiales de la aplicación del Método Símplex. 4.8.1 Degeneración Ejemplo de aplicación 4.7 4.8.2 Óptimos alternativos Ejemplo de aplicación 4.8 4.8.3 Solución no acotada Ejemplo de aplicación 4.9 4.8.4 Solución no factible Ejemplo de aplicación 4.10 4.9 4.9.1 4.9.2 4.9.3 Solución por computadora Iteraciones símplex con TORA Reportes del WinQSB Solución de programa lineal con SOLVER de EXCEL 71 72 77 79 79 79 81 81 83 83 85 85 86 86 87 89 4.10 Problemas propuestos 94 4.11 Bibliografía 98 4.12 Enlaces 98 CAPÍTULO 5 99 ANÁLISIS DE DUALIDAD Y SENSIBILIDAD DE LA PROGRAMACIÓN LINEAL 99 5.1 5.2 Introducción Definición del problema dual Ejemplo de aplicación 5.1 Ejercicio de aplicación 5.3 5.3.1 5.3.2 5.4 Resolución opcional de problema primal con restricciones del tipo “≥” o “=” Restricción de la forma mayor o igual Restricción de la forma igualdad Relaciones PRIMAL –DUAL 5.4.1 5.4.2 Planteamiento de la tabla símplex Solución dual óptima Ejemplo de aplicación 5.2 5.4.3 Calculo con la tabla símplex 5.4.3.1 Cálculos de columnas de restricción. 5.4.3.2 Cálculos de renglón objetivo z. Ejemplo de aplicación 5.3 5.4.4 Valor objetivo primal y dual Ejemplo de aplicación 5.4 5.5 Otros algoritmos símplex para programación lineal 5.5.1 Método dual Símplex 5.5.1.1 Condición dual de factibilidad 5.5.1.2 Condición dual de óptimalidad Ejemplo de aplicación 5.4. 5.5.2 Algoritmo símplex generalizado Ejemplo de aplicación 5.5. 5.5.3 Técnica de la cota superior Ejemplo de aplicación 5.6. 99 99 101 102 104 104 105 106 106 107 108 109 110 110 110 112 113 113 113 113 113 114 116 116 118 120 5.6 Análisis Pos-óptimo o de sensibilidad 121 5.7 Cambios que afectan la factibilidad 124 124 124 125 126 126 126 127 127 127 127 127 128 5.7.1 Cambios en el lado derecho. Ejemplo de aplicación 5.7. 5.7.2 Intervalos de factibilidad de los elementos del lado derecho. Ejemplo de aplicación 5.8. 5.7.3 Cambios realizados en una restricción 5.7.3.1 Añadir una nueva restricción 5.7.3.2 Suprimir una restricción 5.7.3.3 Reemplazar una restricción 5.7.3.4 Añadir una variable (por ejemplo, introducir un nuevo producto) 5.7.3.5 Suprimir una variable (es decir, cancelar un producto) 5.7.3.6 Adicción de nuevas restricciones. Ejemplo de aplicación 5.9. 5.8 Cambios que afectan la óptimalidad 5.8.1 Cambios en los coeficientes de la función objetivo. Ejemplo de aplicación 5.10. 5.8.2 Intervalo de óptimalidad de los coeficientes objetivo. Ejemplo de aplicación 5.11. 5.8.3 Adición de una nueva actividad. Ejemplo de aplicación 5.12. 129 129 129 131 131 132 132 5.9 Problemas propuestos 134 5.10 Bibliografía 137 5.11 Enlaces 137 CAPÍTULO 6 138 MODELO DE TRANSPORTE 138 6.1 Introducción 138 6.2 Antecedentes del problema 138 6.3 Modelización del problema: hipótesis básicas 138 6.4 Propiedades matemáticas del problema 141 6.5 El algoritmo de transporte 143 144 144 145 146 147 147 150 150 152 153 155 156 6.5.1 Balanceo del modelo Ejemplo de aplicación 6.1 Ejemplo de aplicación 6.2 6.5.2 Determinación de la solución factible de inicio 6.5.2.1 Método de la Esquina Noroeste. Ejemplo de aplicación 6.3 6.5.2.2 Método del costo mínimo. Ejemplo de aplicación 6.4 6.5.2.3 Método de aproximación de Vogel. Ejemplo de aplicación 6.5 6.5.3 Algoritmo de verificación y búsqueda del óptimo. Ejemplo de aplicación 6.6 6.6 6.6.1 6.6.2 6.6.3 6.7 6.7.1 6.7.2 6.7.3 6.8 Análisis de sensibilidad en problemas de transporte Variación de coeficientes en la función objetivo de variables no básicas Variación de coeficientes en la función objetivo de variables básicas. Incrementos en una oferta y en una demanda. Solución por computadora Solución del modelo de transporte con TORA. Solución con WinQSB. Solución con Solver de Excel. Problema de transporte con transbordos o transporte con nodos intermedios. Ejemplo de aplicación 6.7 Ejemplo de aplicación 6.8 6.9 El modelo de asignación 161 161 162 162 164 164 166 168 173 174 177 Concepto Solución matemática del modelo de asignación Solución del modelo de asignación Ejemplo de aplicación 6.9 Ejemplo de aplicación 6.10 179 179 179 180 180 182 6.10 Problemas de transporte multidimensional. 183 6.11 Problemas de transporte con restricciones adicionales. 184 6.12 Problemas propuestos. 185 6.13 Bibliografía. 188 6.14 Enlaces 188 6.9.1 6.9.2 6.9.3 CAPITULO 7 189 MODELOS DE REDES DE OPTIMIZACIÓN 189 7.1 Introducción 189 7.2 Conceptos referenciales para la teoría de redes 189 7.3 El Problema de la ruta más corta 192 192 192 193 196 198 201 201 202 202 203 204 204 207 209 7.3.1 Algoritmos de la ruta más corta 7.3.1.1 El algoritmo de Dijkstra. Ejemplo de aplicación 7.1 7.3.1.2 El algoritmo de Floyd Ejemplo de aplicación 7.2 7.3.2 Formulación del problema de la ruta más corta en programación lineal 7.3.2.1 Formulación 1 Ejemplo de aplicación 7.3 7.3.2.2 Formulación 2 Ejemplo de aplicación 7.4 7.3.3 Solución por computadora de la ruta más corta 7.3.3.1 Solución con TORA 7.3.3.2 Solución con WinQSB 7.3.3.3 Solución con hoja de cálculo de Excel 7.4 Problema del árbol de expansión mínima 7.4.1 Algoritmo del árbol de expansión mínima Ejemplo de aplicación 7.5 7.4.2 Solución por computadora de expansión mínima 7.4.2.1 Solución con TORA 7.4.2.2 Solución con WinQSB 7.5 Modelo de flujo máximo 7.5.1 Algoritmos del problema de flujo máximo 7.5.1.1Algoritmo de Ford y Fulkerson Ejemplo de aplicación 7.6 Ejemplo de aplicación 7.7 7.5.1.2 Algoritmo de flujo máximo Ejemplo de aplicación 7.8 7.5.2 Formulación del problema de flujo máximo con programación lineal Ejemplo de aplicación 7.9 7.5.3 Solución por computadora del problema de flujo máximo 7.5.3.1 Solución con TORA 7.5.3.2 Solución con WinQSB 7.5.3.3 Solución con hoja de cálculo de Excel 7.6 Problema del flujo capacitado a costo mínimo 7.6.1Representación en red Ejemplo de aplicación 7.10 7.6.2 Formulación con programación lineal Ejemplo de aplicación 7.11 7.6.3 Algoritmo símplex de red capacitada Ejemplo de aplicación 7.12 7.6.4 Solución del modelo de flujo capacitado a costo mínimo con hoja de calculo Excel 212 212 212 215 215 216 219 220 220 221 223 223 225 228 228 229 229 230 232 235 235 235 236 237 238 240 245 7.7 Problemas propuestos 248 7.8 Bibliografía 250 7.9 Enlaces 250 CAPÍTULO 8 251 PROGRAMACIÓN DE ACTIVIDADES Y CONTROL DE PROYECTOS CPM Y PERT 251 8.1 Introducción a las redes de actividades 251 8.2 Antecedentes 252 8.3 Diferencias entre PERT y CPM 253 8.4 Métodos CPM y PERT 254 8.5 Modelaje de sistemas CPM/PERT 255 Diagrama de actividades tipo red Ejemplo de aplicación 8.1 Ejemplo de aplicación 8.2 255 256 257 Ruta crítica (CPM) 259 Calculo para la ruta crítica (CPM) 259 260 8.6 8.7 8.8 Ejemplo de aplicación 8.3 6 Revisión del proyecto.2 9.9 El entorno de trabajo. Barras de herramientas.1 8. Tareas.1 9. 307 9.2 8.14.5.7 Barra de título.5 9.5 8. 293 9.9 Construcción del cronograma preliminar Ejemplo de aplicación 8.4 Datos del proyecto 299 299 300 302 304 9.10 Determinación de las holguras Ejemplo de aplicación 8.9. Propiedades de la barra de menú Guía de proyectos.2 9. Barra de menús y menús contextuales.1 Introducción .4.4.7 Introducción a Microsoft Project 2003 308 9.9. 309 311 312 314 314 315 316 317 9.11 Formulación del método de la ruta crítica con programación lineal Ejemplo de aplicación 8. Barra de vistas. .4 9.5 9.Definiciones iniciales.14 Solución por computadora 274 274 277 280 8.8 Generalidades.6 8.12 Redes PERT 264 264 265 266 267 268 Ejemplo de aplicación 8.6 9. 306 306 9.2 Fases de un proyecto.14.13 Dificultades de PERT 273 8.4.7 269 271 8.3 9.3 Solución CPM/PERT con TORA Solución CPM/PERT con WINQSB Solución CPM/PERT con PERT Chart EXPERT 8.8. 295 9. 293 9.18 Bibliografía 292 8.9.4. 308 9.9.1 Datos generales del proyecto. Costos con Ms Project Costos. Gestión de barras de herramientas. Asignar recursos.4 9.16 Resumen 289 8.4 8.9. Programación de tareas.14.19 Enlaces 292 CAPÍTULO 9 293 TUTORIAL DE MS PROJECT 293 9.3 9.3 Gestión de Proyectos con Microsoft Project.15 Conclusiones 289 8.17 Problemas propuestos 290 8.9.1 9.9. 1 Creación de un archivo de proyecto. Barra de estado.9.5 Costos de los modelos de colas.10.6 Costo de espera. 321 9.2 Definición. Combinaciones de vistas.12 Colas especializadas de Poisson 10.15 Problemas propuestos 348 10.2 Modelos de muertes puras Ejemplo de aplicación 10.12.1 Modelos de nacimientos puros Ejemplo de aplicación 10.10.11 Información del proyecto.7 331 333 334 334 335 337 338 340 341 343 343 344 10.9 Ejemplo de aplicación 10. 322 CAPITULO 10 324 SISTEMAS DE COLAS 324 10.5 10. 318 318 318 318 Creación de un Proyecto 318 319 9.7 Sistema de costo mínimo.2 Modelo de nivel de aspiración 10.3 10.1 Introducción a sistemas de colas 324 10.10 Modelos con nacimientos puros y muertes puras (relación entre las distribuciones exponenciales y de poisson) 331 10.14 Modelos de decisión con colas 346 346 347 10.6 10. Barras de desplazamiento.1 324 325 10.2 10.14.14.11 Modelo generalizado de cola de Poisson Ejemplo de aplicación 10.10.12.8 Estructuras típicas.8 9.1 Medidas de desempeño en estado estacionario Ejemplo de aplicación 10. 324 ¿Por qué estudiar sistemas de colas? Ejemplo de aplicación 10.2 Modelos con un supervisor (M/M/1) : (DG/∞/∞).10 9. 9.9.4 10.9. 10.11 9.10 Zona de vista.12 Propiedades de un proyecto.1 Modelos de costos.3 10.9 9.4 Elementos de un modelo de cola 325 10.9.16 Bibliografía 350 . 327 10.13 Otros modelos de cola 346 10. 328 Papel de la distribución exponencial 329 330 10.9. 326 10. Ejemplo de aplicación 10. 327 10. 1) 359 .17 Enlaces 350 ANEXO A 351 Operaciones Matriciales 351 Matrices 352 Definición de una matriz 352 Tipo de matrices 352 Matrices no singulares 352 Método para calcular la inversa de una matriz – método de operaciones de renglón (Gauss – Jordan). 353 Relación de operaciones matriciales sencillas 356 ANEXO B 358 Tabla de Distribución Normal 358 Tabla de la distribución normal tipificada N(0.10. Se continuó con infinidad de aplicaciones en el área de la construcción.Capítulo 1 Texto Guía .Sistemas de Ingeniería CAPÍTULO 1 INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES 1. Dantzig. Leibnitz. Lagrange. hoy en día. el matemático ruso Leonodas Vitalyevich Kantarovitch publica una extensa monografía titulada Métodos matemáticos de organización y planificación de la producción en la que por primera vez se hace corresponder a una extensa gama de problemas una teoría matemática precisa y bien definida llamada. En 1947. 1 . quien en 1776 se interesó por problemas de este género. Una de las primeras aplicaciones de los estudios del grupo SCOOP fue el puente aéreo de Berlín. junto con una serie de investigadores del United States Departament of Air Force. instrumentos que harían posible la resolución y simplificación de los problemas que se estaban gestando. formarían el grupo que dio en denominarse SCOOP (Scientific Computation of Optimum Programs). el enunciado estándar al que cabe reducir todo problema de programación lineal. estudiado independientemente por Koopmans y Kantarovitch. en este año. Bernouilli y. que su resolución y simplificación pasaba necesariamente por los modelos de optimización que resuelve la programación lineal. en Estados Unidos se asumió que la eficaz coordinación de todas las energías y recursos de la nación era un problema de tal complejidad. Tres años más tarde. grandes matemáticos como Newton.1 Reseña histórica En los siglos XVII y XVIII. Posteriormente el matemático francés Jean Baptiste-Joseph Fourier (1768-1830) fue el primero en intuir. los métodos de lo que actualmente llamamos programación lineal y la potencialidad que de ellos se deriva. se ocuparon de obtener máximos y mínimos condicionados de determinadas funciones. Si exceptuamos al matemático Gaspar Monge (1746-1818). En estos años posteriores a la Segunda Guerra Mundial. Debemos remontarnos al año 1939 para encontrar nuevos estudios relacionados con los métodos de la actual programación lineal. G. Dantzig formula. que tanto habían contribuido al desarrollo del cálculo infinitesimal. Stigler plantea otro problema particular conocido con el nombre de régimen alimenticio óptima. En 1941-1942 se formula por primera vez el problema de transporte. bancario y preferentemente militar. sobre todo. aunque de forma imprecisa. G. programación lineal. en términos matemáticos muy precisos. razón por la cual se suele conocer con el nombre de problema de Koopmans-Kantarovitch. Paralelamente a los hechos descritos se desarrollan las técnicas de computación y los ordenadores.B. el departamento de Matemáticas de la Universidad de Princenton. los soviéticos levantaron el bloqueo). En la planificación de los suministros se utilizó la programación lineal. Cabe citar. a tal efecto. fundamentalmente en Estados Unidos. Orchard-Hays. Ford. dependiente del Carnegie Institute of Technology. Fulkerson y Gale. que en 1928 publicó su famoso trabajo Teoría de Juegos. Se ha estimado. rebajó un 11% los gastos respecto a los costos previstos. catedrático de la Universidad de Princenton de Estados Unidos. La programación lineal hace historia: el puente aéreo de Berlín En 1946 comienza el largo período de la guerra fría entre la antigua Unión Soviética (URSS) y las potencias aliadas (principalmente. hace que otros investigadores se interesaran paulatinamente por el desarrollo riguroso de esta disciplina. A los aliados se les plantearon dos posibilidades: o romper el bloqueo terrestre por la fuerza. de una manera general. que si un país subdesarrollado utilizase los métodos de la programación lineal. o llegar a Berlín por el aire. En este problema había 10 puntos de partida y 230 de llegada. (El 12 de mayo de 1949. discípulo de David Hilbert en Gotinga y. Inglaterra y Estados Unidos). en marzo de 1949. calculado con el ordenador Strena en 10 días del mes de junio. tanto como se transportaba por carretera y ferrocarril antes del corte de las comunicaciones.Sistemas de Ingeniería Hacia 1950 se constituyen. se llegó a las 8000 toneladas.Capítulo 1 Texto Guía . La influencia de este respetado matemático. En 1858 se aplicaron los métodos de la programación lineal a un problema concreto: el cálculo del plan óptimo de transporte de arena de construcción a las obras de edificación de la ciudad de Moscú. desde 1930. se organizó un gigantesco puente aéreo para abastecer la ciudad: en diciembre de 1948 se estaban transportando 4500 toneladas diarias. con Tucker y Kuhn. Rand Corporation. cuando la URSS bloqueó las comunicaciones terrestres desde las zonas alemanas en poder de los aliados con la ciudad de Berlín. señalaremos que su estudio comenzó en el año 1951 y fue desarrollado por Dantzig en el United States Bureau of Standards SEAC COMPUTER. distintos grupos de estudio para ir desarrollando las diferentes ramificaciones de la programación lineal. ayudándose de varios modelos de ordenador de la firma IBM. Se adoptó la decisión de programar una demostración técnica del poder aéreo norteamericano. con Dantzig. que estudiaremos después. Respecto al método del símplex. entre otros. En 1947 conjetura la equivalencia de los problemas de programación lineal y la teoría de matrices desarrollada en sus trabajos. Uno de los episodios más llamativos de esa guerra fría se produjo a mediados de 1948. El plan óptimo de transporte. con Charnes y Cooper. iniciando el bloqueo de Berlín. Los fundamentos matemáticos de la programación lineal se deben al matemático norteamericano de origen húngaro Janos von Neuman (1903-1957). así como la Escuela Graduada de Administración Industrial. 2 . su producto interior bruto (PIB) aumentaría entre un 10 y un 15% en tan sólo un año. A esta representación formal se le llama modelo.Capítulo 1 Texto Guía . estrategias o controles alternativos. que incorpore valoraciones de factores como el azar y el riesgo y mediante el cual se predigan y comparen los resultados de decisiones. su aplicación a otros sectores como la construcción en la sociedad se está ampliando con rapidez. en el gobierno y en la defensa. 2. investigaciones realizadas para operaciones militares fueron adoptadas y/o modificadas para mejorar la eficiencia y la productividad en el sector civil.Sistemas de Ingeniería Como muchos adelantos e investigaciones que favorecen al ser humano empiezas ser utilizado para propósitos bélicos para luego ser utilizados en la parte civil. en los negocios. Su propósito es el de ayudar a la gerencia a determinar científicamente sus políticas y acciones. sin embargo. lo hace expresando todos los rasgos principales del sistema por medio de relaciones matemáticas. Una proporción muy grande de los cálculos científicos en computadoras está dedicada al uso de la programación lineal. una empresa es un concepto más amplio. En la actualidad es una herramienta de uso normal que ha ahorrado miles o millones de gastos innecesarios a muchas compañías o negocios. máquinas. 1. el científico debe representarlo en términos de los conceptos que maneja. Su actitud diferencial consiste en desarrollar un modelo científico del sistema tal. es algo que utiliza hombres. en la construcción. en la industria. la investigación de operaciones ha ido evolucionando no sólo en sus técnicas y aplicaciones sino en la forma como la conceptualizan los diferentes autores. Con el transcurso del tiempo se convirtió en una herramienta dominante e indispensable para tomar decisiones. 3 . otras demasiado engañosas. desde éste punto de vista. En relación a ésta definición deben destacarse los siguientes aspectos: 1. La definición de la sociedad de investigación de operaciones de la Gran Bretaña es la siguiente: La investigación de operaciones es el ataque de la ciencia moderna a los complejos problemas que surgen en la dirección y en la administración de grandes sistemas de hombres. las ideas. Muchas personas clasifican el desarrollo de la investigación de operaciones con su técnica la programación lineal entre los avances científicos más importantes de mediados del siglo XX. su impacto desde 1950 ha sido extraordinario. se considera como empresa desde una universidad hasta una constructora. Las investigaciones de operaciones no es la excepción ya que sus primeras actividades formales de la investigación de operaciones se dio en dio en Inglaterra durante la 2da Guerra Mundial en la cual se encomendó a un equipo de científicos ingleses la toma de decisiones acerca de la mejor utilización de materiales bélicos. máquinas. al terminar la Guerra. Generalmente se asocian los conceptos de dirección y administración a las empresas de tipo lucrativo. Para tratar de explicar el comportamiento de un sistema complejo. en la actualidad no existe solamente una definición sino muchas. incluyendo empresas medianas en los distintos países industrializados del mundo. materiales y dinero.2 ¿Qué es la Investigación de Operaciones? Como toda disciplina en desarrollo. algunas demasiado generales. aquí seleccionamos una de las mas aceptadas y representativas. materiales y dinero con un propósito específico. lo que permite valorar su vulnerabilidad. 5. la investigación de operaciones nos ayuda a determinar la acción menos vulnerable ante un futuro incierto. Definición del Problema de interés y toma de datos relevantes. por lo que maneja especialmente modelos matemáticos precisos. La construcción o formulación del Modelo matemático el cual represente el problema. es la que esta mejor definida y es la mas fácil de implementar en un estudio de investigación de operaciones. se dice que es una ciencia por las técnicas matemáticas que se presentan y un arte porque el éxito de todas las fases que anteceden y siguen a la resolución del modelo matemático dependen mucho de la creatividad y la experiencia del equipo de investigación de operaciones. La Implementación de la solución. el juicio (por ejemplo. Willemain (1994) insinúa que “la práctica efectiva (de la investigación de operaciones) requiere algo mas que la competencia analítica. Cuando se aplica alguno de estos remedios.Sistemas de Ingeniería 3. Solo se puede brindar lineamientos generales para efectuar la investigación de operaciones en la práctica. b) Realizar un plan de toma de decisiones. 4. solo la de la solución del modelo. Las fases principales de la ejecución de la investigación de operaciones en la práctica son los siguientes: 1. Desarrollo de un procedimiento basado en técnicas para derivar en la solución del Modelo matemático. Si se conocen las debilidades del sistema se pueden tomar cursos de acción agrupados en tres categorías: a) Efectuar cambios que lleven a la empresa o parte de ella a una nueva ruta. La validación o prueba del Modelo matemático y si fuera necesario su mejoramiento. La esencia de un modelo es que debe ser predictivo. lo cual no significa predecir el futuro. Es dificultoso formular cursos concretos o específicos de acción (que se puedan parecer a los que se crea en la teoría de los modelos matemáticos) para los factores intangibles. en cuanto ayudarlo a cumplir con su función basado en estudios científicamente fundamentados. c) Instalar estrategias que generen decisiones. entre otros atributos.3 Fases de un estudio de Investigación de Operaciones Como herramienta de toma de decisiones. cuando y como usar determinada técnica) y la destreza técnica en comunicaciones y en duración organizacional”. 1. De estas cinco fases. 4.Capítulo 1 Texto Guía . 2. El objetivo global de la investigación de operaciones es el de apoyar al tomador de decisiones. pero si ser capaz de indicar muchas cosas acerca de la forma en que se puede esperar que un sistema opere en una variedad de circunstancias. También requiere. las demás fases es mas un arte que una teoría. 4 . la investigación de operaciones es una ciencia y un arte. 3. lo cual es el de realizar el estudio relevante del problema y desarrollar un resumen bien definido del problema que se va analizar y es una función que debe ser desarrollado por todo el equipo de investigación de operaciones lo cual se define el alcance del problema que se investiga. aun poniendo todo el esfuerzo el equipo de investigación de operaciones tendrá que trabajar con datos no muy confiables por el tiempo de la recolección antes mencionado.3.1 La definición del problema Es uno de las fases mas importante que en muchos libros lo definen vagamente pero requiere de mucho cuidado al realizar esta fase o actividad. Puede ser que se tarde mucho tiempo recolectando los datos relevantes sobre el problema. En resumen este proceso es crucial ya que afectara significativamente la relevancia de las conclusiones del estudio. Como se ilustra en la figura 1.Sistemas de Ingeniería 1. ya sea porque nunca se guardo la información o ya esta obsoleta o en forma errónea. que son: a) La descripción de las alternativas de decisión. El resultado de ello es identificar tres elementos principales del problema de decisión.1 5 . El modelo. Por que ¡Es difícil extraer aun respuesta “correcta” a partir de un problema “equivocado!”. como es común no se tendrá mucha información al principio. las funciones matemáticas que representan el comportamiento del sistema supuesto.Capítulo 1 Texto Guía .1 los niveles de abstracción que caracterizan el desarrollo de un modelo de investigación de operaciones. Figura 1. concentrándolo en las variables principales que controlan el comportamiento del sistema real. b) La determinación del objetivo del estudio (lo cual viene a ser un aspecto importante en la formulación o definición del problema). El mundo real supuesto se abstrae del caso real. c) La especificación de las limitaciones bajo las cuales funciona el sistema modelado. por que se debe recolectar desde el principio. lo cual se necesita muchos datos para lograr un entendimiento exacto sobre el problema como para proporcionar las herramientas necesarias para el modelo que se formulara o construirá en la siguiente etapa. refiere a una forma adecuada. por lo cual terminara trabajando con lo datos que pueda obtener. como es una abstracción del mundo real supuesto. se puede emplear los algoritmos disponibles. Las cinco partes hacen contribuciones esenciales a la empresa.2 La construcción del modelo Es el de traducir la definición del problema a relaciones matemáticas llamado también modelización. e) el gobierno. los organigramas y los sistemas contables en la industria. concesionó un importante estudio de Investigación de Operaciones para guiarlo en el desarrollo de una importante política de administración del agua. beneficia a las cinco partes). Se sabe o se dice que los modelos matemáticos o representaciones idealizadas son una parte integrada de la vida diaria. Aplicación: La Oficina responsable del control del agua y los servicios públicos del Gobierno de Holanda. etc.Capítulo 1 Texto Guía . las graficas. y tuvo éxito en la reducción del 33% de la tasa de infección entre los clientes del programa. como lo hacen patente los modelos del átomo y de estructura genéticas.). Si el modelo se puede ajustar a uno de los modelos matemáticos normales como puede ser la programación lineal. que quieren un producto confiable a un precio justo.). esos modelos son invaluables ya que extraen la esencia de la materia de estudio. que piensan en la integridad y lo justo del precio de venta de los bienes que manejan. deberán también reconocerse esas responsabilidades sociales más extensas. La parte central de este estudio fue un innovador programa de recolección de datos para obtener los insumos necesarios para los modelos matemáticos de transmisión del SIDA. Entonces. al mismo tiempo que disminuyo la contaminación térmica y debida a las algas. se puede mencionar cinco partes que son afectadas que son: a) los dueños (accionistas. b) los empleados. localización y fecha de cada persona que recibía una aguja y cada persona que la regresaba durante un intercambio. la nación.positivo o HIV negativo. las ecuaciones matemáticas que describen las leyes de física del movimiento o reacciones químicas. y por ende. Aplicación: El Departamento de Salud de New Haven. junto con la prueba de si la condición de la aguja era HIV .3. el definir o modelar un problema de una situación real se abstraer lo cual no se lleva a tener otras consideraciones. muestra sus interrelaciones y facilitan el análisis. etc. Connecticut utilizó un equipo de Investigación de Operaciones para diseñar un programa efectivo de intercambio de agujas para combatir el contagio del virus que causa el SIDA (HIV). Pero si las relaciones matemáticas son demasiadas complejas como para permitir el cálculo de una solución analítica puede ser que se opte por simplificar el modelo para usar un modelo heurístico y también puede recurrir al uso de simulación. aunque se acepte que obtener ganancias es el objetivo principal (que en última instancia. dentro de una empresa. La nueva política ahorro cientos de millones de dólares en gastos de inversión y redujo el daño agrícola en alrededor de 15 millones de dólares anuales. y esta no debe servir a ninguna de estas partes para explotar a las otras. valuaciones de las acciones. en la ciencia y los negocios. En lugar de formular un modelo 6 . con la identificación. Este programa barco un rastreo completo de cada aguja (y cada jeringa). d) los vendedores. por lo que podemos dar un ejemplo: en una empresa existen otras consideraciones y responsabilidades sociales fuera de las ganancias se puede tomar dentro de un solo país.Sistemas de Ingeniería Como se menciono antes. c) los clientes. que desean un empleado seguro con un salario razonable. pero en algunos casos se deberá hacer una combinación de modelos matemáticos para resolver. que desean obtener ganancias (dividendos. si es aproximada. 1. que quiere el pago de impuestos justos y que se tome en cuenta el interés nacional. La meta de un estudio de investigación de operaciones debe ser el llevar a cabo el estudio de manera óptima. ya que los cálculos que son asociados o utilizados en cada iteración son tediosos y voluminosos se recurre al uso de paquetes computacionales. En la práctica es mucho mas frecuente utilizar el concepto satisfizar 1(es una combinación de satisfacer y optimizar) que optimizar.Capítulo 1 Texto Guía . satisfizar es el arte de lo factible”. diferencia que con frecuencia se encuentra al tratar de implementar esa teoría en la práctica. Como el modelo matemático es una idealización y no una representación del problema real. Las soluciones que se obtienen de estos modelos no son de forma cerradas. se desarrollan versiones sencillas y complejas. pero si el modelo matemático esta bien formulado y verificado. Se puede suponerse o pensarse que esto debe ser la parte más importante o principal del estudio de investigación de operaciones. Hasta el momento ha quedado implícito que un estudio de investigación de operaciones busca solo una solución. que consiste en desarrollar un procedimiento para obtener una solución al problema a partir de este modelo matemático. esto no garantiza de que la solución óptima del modelo resulte la mejor solución posible que se pueda llevar a la práctica para el problema real. de manera independiente si esto implica el encontrar o no la solución óptima para el modelo.3. parecidas a formulas. 1. Herbet Simón. La distinción entre optimizar y satisfizar refleja la diferencia entre la teoría y la realidad. creó varias docenas de programas de computación y estructuró una enorme cantidad de datos.Sistemas de Ingeniería matemático. este algoritmo proporciona reglas fijas de cómputos que son aplicadas en forma repetitiva al problema y cada repetición es llamada iteración. para alguno de los modelos. es decir la mejor. El estudio completo de Investigación de Operaciones involucró directamente a mas de 125 personas . pero en la mayoría de los casos no lo es. de tal forma que es necesario hacer un análisis adicional. lo cual obtiene cada vez en forma mas cercana a la óptima. pero se debe saber que estas soluciones óptimas son solo respecto al modelo que se esta utilizando. la solución resulta ser una buena aproximación. Según Samuel Eilon “optimizar es la ciencia de lo absoluto. 1 El eminente científico de la administración y premio Nóbel de Economía. Una solución óptima para el modelo original puede ser mucho menos que ideal para el problema real. ya que se debe tomar en cuenta las muchas imponderables e incertidumbres que están asociadas a los problemas reales. que puede o no requerirse que sea óptima. Un tema común en investigación de operaciones es la búsqueda de una solución óptima.año de esfuerzo (mas de un tercio de ellas en la recolección de datos). este análisis es llamado análisis pos-óptimo (análisis que se lleva a cabo después de encontrar una solución óptima) el cual es una parte muy importante de la mayoría de los estudio de Investigación de Operaciones.3 Solución del modelo matemático La siguiente etapa de un estudio de investigación de operaciones es una de las más simples y sencillas. En lugar de ello. es decir. introdujo este concepto de satisfizar 7 . se determina en forma de algoritmo. por lo contrario es una parte relativamente sencilla donde solo se aplica uno de los algoritmos (procedimientos iterativos de una solución). este estudio de Investigación de Operaciones desarrolló un sistema integrado y comprensible de ¡50 modelos! Mas aún. 3. los parámetros sensibles del modelo son aquellos cuyos valores no se pueden cambiar sin que la solución óptima cambie. Estos parámetros son estimaciones de alguna cantidad (por ejemplo. Sin duda algunos factores o interrelaciones revelantes no se agregaron al modelo y algunos parámetros no se estimaron correctamente.Capítulo 1 Texto Guía . para lo cual se utiliza heurísticas o reglas simples. En este caso será necesario abandonar la búsqueda de la solución óptima para solo buscar y encontrar una solución buena. el cual es determinar unos parámetros del modelo que son críticos o “sensibles” al determinar la solución. ganancia unitaria) cuyo valor exacto se conocerá solo después de poner en práctica la solución. en esencia es un sinónimo de planeación. Debido a que el equipo de investigación de operaciones pasara mucho tiempo desarrollando todas las piezas detalladas del modelo. Esto puede ser a causa de la falta o la dificultad de comunicación de todos los aspectos y sutilezas de un problema operacional complejo. y si el modelo se basa en una investigación cuidadosa de datos históricos. las fallas importantes se habrán eliminado de manera que ahora es confiable usar el modelo. Es difícil describir como se lleva a cabo la validación del modelo por que el proceso depende en gran parte del problema bajo estudio y del modelo usado. esto es. Entonces después de completar los detalles (“los árboles”) de la versión 8 . lo cual consiste en diseñar los modelos matemáticos con funciones objetivos y restricciones estrictamente lineales. la validación debería ser favorable. las palabra programación no se refiere a programación en computadoras. es sencillo “no ver el bosque por buscar los árboles”. talvez puedan algunos puedan aumentar si otros disminuyen. El adjetivo lineal significa que todas las funciones matemáticas del modelo deber ser funciones lineales. Aunque sin duda quedaran algunos problemas menores ocultos en el modelo (y quizás nunca se detecten). así como la dificultad de recolección de datos. pero se puede hacer algunos comentarios generales. Así. Cuando algunos modelos matemáticos son tan complicados que es imposible resolverlos con cualquiera de los algoritmos para su optimización. 1. El análisis pos-óptimo incluye la investigación de estos trueques. La programación lineal utiliza un modelo matemático para describir el problema. Existe alguna flexibilidad sobre los valores asignados a estos parámetros. el resultado que mejor alcance la meta especificada (según el modelo matemático) entre todas las alternativas de solución. Es probable de que las primeras versiones de un modelo matemático grande tengan sus fallas. la programación lineal trata la planeación de las actividades para obtener un resultado óptimo. lo cual se puede hace una pregunta. En este caso. La técnica mas importante de investigación de operaciones es la programación lineal. Una definición que se puede dar de parámetros sensibles es: Para un modelo matemático con valores específicos para todos sus parámetros. Por lo que antes de usar el modelo debe probarse exhaustivamente para intentar identificar y corregir todas las fallas que se pueda.Sistemas de Ingeniería En cierto modo el análisis de pos-óptimo es el llevar a cabo un análisis de sensibilidad.4 La validación del modelo Es una comprobación si el modelo matemático propuesto hace lo que debe hacer. ¿Pronostica el modelo en forma adecuada el comportamiento del sistema que se estudia?. Una vez desarrollada la versión preliminar del nuevo sistema (basada en el sistema de inventarios de multiniveles) se lleva acabo una prueba preliminar de implantación. 9 .O. A veces es útil continuar con las cosas como están por una temporada. el modelo puede tener un desempeño distinto en el futuro del que hubiera tenido en el pasado. Es importante documentar el proceso usado para las pruebas de la validación del modelo. Lo que es mas. Por otra parte. al mismo tiempo que reducir el valor de los inventarios de IBM en mas de 250 millones de dólares y ahorrar otros 20 millones de dólares anuales a través del mejoramiento de la eficiencia operacional. Un aspecto en particular interesante de la etapa de validación del modelo en este estudio fue la manera en que se incorporaron el proceso de prueba los usuarios futuros del sistema de inventarios. se asignaron representantes a un equipo de usuarios que tendría la función de asesorar al equipo de I. Entonces surge la pregunta crítica. una buena manera de comenzar las pruebas es observarlo en forma general (el bosque) para verificar los errores u omisiones obvias. Puede también indicar áreas en las que el modelo tiene fallas y requiere modificaciones.O. la prueba retrospectiva tiene la desventaja de que usa los mismos datos que sirvieron para formular el modelo. Debido a que estos usuarios futuros (los administradores de IBM en las áreas funcionales responsables de la implantación del sistema de inventarios) dudaban del sistema que se estaba desarrollando. Aplicación: En un estudio de I. También es útil asegurarse de que todas las expresiones matemáticas sean consistentes en las dimensiones de las unidades que emplean. Además. indica si el uso del modelo tiende a dar mejoras significativas sobre la práctica actual. Esto proporcionara datos con los que no se contaban cuando se construyó el modelo. Estos datos se pueden emplear de la manera que se describió para evaluar un modelo. Un enfoque más sistemático para la prueba del modelo matemático es emplear una prueba retrospectiva.Capítulo 1 Texto Guía . esta prueba utiliza datos históricos y reconstruye el pasado para determinar si el modelo y la solución resultante hubieran tenido un buen desempeño hipotético con lo que en realidad ocurrió. La extensa retroalimentación por parte del equipo de usuarios llevo a mejoras importantes en el sistema propuesto. pueden obtenerse un mejor conocimiento de la validez del modelo variando los valores de los parámetros de entrada y/o de las variables de decisión y comprobando que los resultados del modelo se comporten de una manera factible. Para salvar esta desventaja de la prueba retrospectiva. al emplear las alternativas de solución y estimar sus desempeños históricos hipotéticos. si en el futuro surgen preocupaciones sobre el modelo. Si no es así. Más aun. esta documentación ayudara a diagnosticar en donde pueden estar los problemas. se pueden reunir evidencias en cuanto a lo bien que el modelo predice los efectos relativos de los diferentes cursos de acción. Esto es especialmente revelador cuando se asignan a los parámetros o a las variables valores extremos cercanos a su máximo o su mínimo. Cuando es aplicable. es si el pasado en realidad representa el futuro. para IBM se realizo con el fin de integrar su red nacional de inventarios de refacciones para mejorar el servicio a los clientes. Esto ayuda a aumentar la confianza en el de los usuarios subsecuentes.Sistemas de Ingeniería inicial del modelo. Aplicación: Este último punto sobre la documentación de un estudio Investigación de Operaciones se ilustra con el caso de la política nacional de administración del agua de Rijkswaterstatt en Holanda. si el modelo ha de usarse varias veces. la última etapa de un estudio de investigación de operaciones es implementarlo siguiendo lo establecido por la administración. Una vez desarrollado un sistema para aplicar un modelo. La administración deseaba documentación más extensa que lo normal. es importante que el equipo de investigación de operaciones participe. A la culminación del estudio. ¿Cuáles son las alternativas de decisión? 2. tanto para apoyar la nueva política como para utilizarla en la capacitación de nuevos analistas o al realizar nuevos estudios. cuya solución requiere identificar tres componentes. estas instrucciones de operaciones deben ser en forma comprensibles para las personas que administraran el sistema recomendado. el siguiente paso es instalar un sistema bien documentado para aplicar el modelo según lo establecido por la administración. ¿Cuál es el criterio objetivo adecuado para evaluar las alternativas? 10 . 1. ya que es aquí y solo aquí. Primero. Completar esta documentación requirió varios años y ¡quedo contenida en 4000 páginas a espacio sencillo encuadernadas en 21 volúmenes! 1. donde se cosecharan los beneficios del estudio. el equipo de investigación de operaciones da una cuidadosa explicación a la gerencia operativa sobre el nuevo sistema que se va adoptar y su relación con la realidad operativa. Luego estos dos grupos comparten la responsabilidad de desarrollar los procedimientos requeridos para poner este sistema en operación. ¿Bajo que restricciones se toma la decisión? 3.Sistemas de Ingeniería 1. La etapa de implementación incluye varios pasos.3.Capítulo 1 Texto Guía . Por que la implementación se trata de efectuar instrucciones de operaciones a partir de la solución y de los resultados del modelo. Esta etapa es crítica. es apropiado que el equipo de investigación de operaciones documente su metodología con la suficientemente claridad y detalle para que el trabajo sea reproducible.5 La implementación del modelo matemático ¿Qué es lo que pasa después de terminar la etapa de pruebas y desarrollar un modelo aceptable?.4 Modelos matemáticos de Investigación de Operaciones Se debe considerar que en el caso de un problema de toma de decisiones donde requiere un modelo matemático. Este sistema incluirá el modelo y el procedimiento de solución (además del análisis pos-óptimo) y los procedimientos para su implementación. tanto para asegurar que las soluciones del modelo se traduzcan con exactitud a un procedimiento operativo. graduados entre 1990 y 2005. Por ejemplo. es decir resolver el problema utilizando los métodos que proporcionan las mejoras soluciones y no buscar ajustar el problema a un método específico. Bureau of Labor Statistics predijo que la investigación de operaciones sería el área profesional clasificada como la tercera de más rápido crecimiento para los estudiantes universitarios en Estados Unidos. Sin duda. Fuera de que los modelos investigación de operaciones deben “optimizar” determinado criterio objetivo sujeto a un conjunto de restricciones. el U. Lo cual se utilizan estas variables de decisión para construir la función objetivo y las restricciones del modelo. la investigación de operaciones ha hecho contribuciones significativas al incremento de la productividad dentro de la economía de varios países. en la que cada país cuenta con una sociedad de investigación de operaciones. su solución también será óptima. para el año 2005. la calidad de la solución que se obtenga depende de la exactitud del modelo para representar el sistema real. Lo cual concluimos es que “la” solución óptima de un modelo solo es la mejor para “ese” problema. Cuando una solución de un modelo planteado satisface todas las restricciones es una solución factible.S. al inicio de la década de los 90. Hay ahora más de 30 países que son miembros de la International Federation of Operational Research Societies (IFORS). es necesario primero comprender la metodología para resolver los problemas. el impacto de la investigación de operaciones continuará aumentando. así como los fundamentos de las técnicas de solución para de esta forma saber cuándo utilizarlas o no en las diferentes circunstancias.Sistemas de Ingeniería El primer paso crucial de cualquiera de los modelo es la definición de las alternativas o las variables de decisión del problema. Una vez terminado con estos tres pasos en el modelo de investigación de operaciones se organizar generalmente de la siguiente forma general: Maximizar o Minimizar la función objetivo Sujeta a: Restricciones. modelos de algoritmos establecidos en lugar de analizar los problemas y buscar resolverlos obteniendo las soluciones mejores.Capítulo 1 Texto Guía . habría 100 000 personas trabajando como analistas de investigación de operaciones. Por lo cual inferimos que si el modelo representa al sistema real en forma razonablemente buena. Pronosticó también que. Para llegar a hacer un uso apropiado de la I de O. 1. y cuando además de ser factible produce el mejor valor (máximo o mínimo) de la función objetivo se le llama solución óptima. 1. utilizando los métodos apropiados. 11 .6 Riesgo al aplicar la Investigación de Operaciones Al aplicar la Investigación de Operaciones al estudio de sistemas y a la resolución de problemas se corre el riesgo de tratar de manipular los problemas para buscar que se ajusten a las diferentes técnicas. En el proceso.5 Impacto de la Investigación de Operaciones La investigación de operaciones ha tenido un impacto impresionante en el mejoramiento de la eficiencia de numerosas organizaciones en todo el mundo. Capítulo 1 Texto Guía . alto. P A Inventarios. P B Programación Estocástica P B Programación No Lineal D B Teoría de Juegos P B Control Óptimo D.7. pronóstico y simulación D. probabilista. P. 12 . (D. y el sentido de las desigualdades. expresadas por inecuaciones lineales.7 Tipos de modelos de Investigación de Operaciones. función lineal de varias variables. bajo) Tipo de Modelo Clase de Incertidumbre Frecuencia de uso en corporaciones Programación Lineal D A Redes (Incluye PERT/CPM) D.1 Programación Lineal Se llama programación lineal al conjunto de técnicas matemáticas que pretenden resolver la situación siguiente: Optimizar (maximizar o minimizar) una función objetivo. P A Programación Entera D B Programación Dinámica D. tiene la siguiente formulación estándar: Pudiendo cambiarse maximizar por minimizar. A.Sistemas de Ingeniería 1. Un problema de programación lineal en dos variables. sujeta a: una serie de restricciones. B. determinista. P A Econometría. En la siguiente tabla se muestran los modelos de decisión según su clase de incertidumbre y su uso en las corporaciones. 1. P B Líneas de Espera P B Ecuaciones Diferenciales D B * En la anterior tabla se muestran con letras en negrillas y cursivas los tipos que se utilizaran en el curso de sistemas de ingeniería A continuación se dará una pequeña explicación de los modelos matemáticos que se utilizaran en este curso. producción y programación D. Capítulo 1 Texto Guía . En esa expresión x e y son las variables de decisión.7.. Sin embargo. Todo punto de ese conjunto puede ser solución del problema. Son intuitivos. Obviamente los modelos de redes no son capaces de cubrir la amplia gama de problemas que puede resolver la programación lineal. Esto permite que los modelos de redes sean usados en muchas aplicaciones (tal como la toma de decisión en tiempo real) para lo cual la programación lineal no es lo ideal. CPM fue desarrollado en los años ´50 por Du Pont y Sperry Rand. mucho más intuitivo que "variables. ellos ocurren con suficiente frecuencia como para ser considerados como una herramienta importante para una real toma de decisiones. Los modelos de redes proveen un lenguaje para tratar los problemas. 1.  Al conjunto de valores de x e y que verifican todas y cada una de las restricciones se lo denomina conjunto (o región) factible. que son: inferiores a .Sistemas de Ingeniería En un problema de programación lineal intervienen:  La función f(x.. y0) del conjunto factible que haga que f(x. objetivo. (menores: < o ). Pueden resolverse muy rápidamente. CPM se puede usar también para determinar en cuánto se puede atrasar una actividad sin que esto retrase el término del proyecto. Su número depende del problema en cuestión. Problemas que con programación lineal tendrían 1000 filas y 30. se puede usar el método del camino crítico (CPM) para determinar el tiempo requerido para realizar el proyecto. Requieren en forma natural de soluciones enteras. mientras que a..2 Teoría de Redes (incluye PERT/CPM) Optimización de redes es un tipo especial de modelo en programación lineal. restricciones". 13 . En los capítulos siguientes veremos como se determina la región factible.000 columnas pueden ser resueltos en segundos. 2. disponibilidades o necesidades. (mayores: > o ). El carácter de desigualdad viene impuesto por las limitaciones. Los modelos de redes se pueden usar para ayudar a la planificación de proyectos complejos los que involucran muchas actividades. Tanto si se trata de maximizar como de minimizar. 3. todo punto no perteneciente a ese conjunto no puede ser solución.  Las restricciones que deben ser inecuaciones lineales. Los modelos de redes tienen tres ventajas importantes con respecto a la programación lineal. y) = ax + by + c llamada función objetivo y que es necesario optimizar. Al reconocer que un problema puede formularse como algún modelo de red nos permitirá resolver tipos especiales de problemas de programación entera aumentando la eficiencia y reduciendo el tiempo consumido por los algoritmos clásicos de programación lineal. Si la duración de cada actividad se conoce con certeza. como mínimo de . 1. y) tome el valor máximo o mínimo.. b y c son constantes. las desigualdades pueden darse en cualquiera de los dos sentidos.  La solución óptima del problema será un par de valores (x0. las empresas deben tomar decisiones respecto al caudal de servicios que debe estar preparada para ofrecer. Con frecuencia.7. Pero. muchas veces es imposible predecir con exactitud cuándo llegarán los clientes que demandan el servicio y/o cuanto tiempo será necesario para dar ese servicio. un fenómeno común que ocurre siempre que la demanda efectiva de un servicio excede a la oferta efectiva. 1. más alto del que esperaban. por otro lado.4 Modelo de hoja de cálculo electrónica La hoja de cálculo electrónica facilita hacer y contestar preguntas de “que si” en un problema real. La formación de colas es.  Construcción de barcos. en tiempo. por supuesto.  Planificación del traslado y movimiento de tierras. Estar preparados para ofrecer todo servicio que se nos solicite en cualquier momento. Hasta ese grado la hoja de cálculo electrónica tiene una representación selectiva del problema y desde este punto de vista la hoja de cálculo electrónica es un modelo.  Instalación de un nuevo sistema de Agua Potable y Alcantarillado. pero contribuye con la información vital que se requiere para tomar las decisiones concernientes prediciendo algunas características sobre la línea de espera: probabilidad de que se formen. Cuando los clientes tienen que esperar en una cola para recibir nuestros servicios. Las líneas de espera largas también son costosas por tanto para la empresa ya que producen pérdida de prestigio y pérdida de clientes. En realidad es una herramienta más que un procedimiento de solución.Capítulo 1 Texto Guía . edificios. el tiempo de espera promedio. están pagando un costo. CPM y PERT han sido exitosamente utilizado en muchas aplicaciones como:  Planificación de proyectos de construcción como carreteras. Sin embargo.3 Teoría de colas (líneas de espera) La teoría de las colas es el estudio matemático de las colas o líneas de espera.Sistemas de Ingeniería Si la duración de las actividades no se conoce con certeza. puede implicar mantener recursos ociosos y costos excesivos. 14 . 1.7. carecer de la capacidad de servicio suficiente causa colas excesivamente largas en ciertos momentos. se puede usar la técnica PERT (Técnica de Evaluación y Revisión de Proyectos) para estimar la probabilidad que el proyecto se termine en una fecha determinada. La teoría de las colas en si no resuelve directamente el problema. etc. es por eso que esas decisiones implican dilemas que hay que resolver con información escasa. piscinas.  Desarrollo de la planificación aérea en diferentes aerolíneas norteamericanas  Diseño y marketing de nuevos productos. activities. 1.8 Conclusiones Aunque el resto del siguiente texto nos aboquemos primordialmente a la construcción y solución de los modelos matemáticos a través de la programación lineal. se habían utilizado casi exclusivamente computadoras grandes. Lieberman. En este capitulo se trato de hacer hincapié en que esto eso solo una porción del proceso completo que se necesita para llevar a cabo a un estudio de investigación de operaciones representativo.Capítulo 1 Texto Guía . la investigación de operaciones esta muy estrechamente ligado al uso de las computadoras. modelos de redes (incluyendo PERT/CPM) y la teoría de colas. También se concluye que por el hecho de los modelos matemáticos.ActivityPlayer?AP_rand=307 787524&AP_activityType=3&AP_urlId=166798&AP_continuePlay=true166798  http://www.quia. Las otras etapas que se describieron también son importantes para el éxito o fracaso del estudio. Lo cual se pide al estudiante que no pierda de vista en los siguientes capítulos. el papel que juega el modelo y el procedimiento de solución dentro del proceso completo.  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S.9 Bibliografía  INVESTIGACIÓN DE OPERACIONES – Hamdy A. Gerald J. [Sexta Edición] 1. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz.10 Enlaces  http://www. Hillier. Hasta hace poco.Sistemas de Ingeniería 1.com/Introduccion_IO.itson.htm 15 . Herbert. pero cada vez es mayor el uso de microcomputadoras y estaciones de trabajo. Gordon P.common.mx/dii/elagarda/apagina2001/PM/pl.investigacion-operaciones. Wrigth.com/servlets/quia.html  http://www. simbólicos. sino también la de resolución del mismo. imposible. Jhon Willey & Sons. Williams. hasta. no es factible experimentar con la realidad. En nuestro caso nos concentraremos en la construcción de modelos. Una vez construido el modelo matemático.Capítulo 2 Texto Guía . También. Sin embargo.P. En la mayoría de las situaciones de la ingeniería del mundo real. si se intenta conocer el impacto de la puesta en práctica de una determinada acción en el campo de la construcción. Alianza Madrid. La importancia de la construcción de modelos matemáticos en cualquier campo de la ingeniería es evidente. restricciones del mercado. y se basan en un conjunto de relaciones matemáticas (tales como ecuaciones. peligroso ó. La construcción de modelos revela. y por ello se hace necesaria la aplicación del método científico a este estudio. A partir de este concepto de modelo se pueden obtener distintas clasificaciones (icónico. y tiene una estructura que esta formada por los elementos que caracterizan el aspecto de la realidad modelada y por las relaciones entre estos elementos”. J (1983): “introducción a la dinámica de sistemas”. Pág. relaciones que no son evidentes a primera vista. analógicos. 3. Pág. (1978): “Model Building in mathematical programming”. Aunque hay numerosas acepciones y definiciones de un modelo. Puede verse al respecto. es decir. En este caso para evaluar las consecuencias se construye un modelo donde se puedan analizar los resultados en diversas situaciones con un costo prácticamente nulo y sin riesgos sociales ni económicos.1 Introducción a la modelización En numerosas ciencias. H. aunque no sea una solución analítica sino numérica (realizada por un ordenador). inecuaciones. 1 2 16 . por ser prohibitivamente caro. relaciones lógicas. entre ellas la construcción. los modelos formales basados en lógica matemática. es decir. no obstante vamos a enumerar alguna de ellas2: 1. 3.) que se corresponden con las relaciones del mundo real (tales como relaciones tecnológicas. Nueva York. Aracil. se hace necesario el estudio y análisis de fenómenos del mundo real. es posible extraer de él propiedades y características de las relaciones entre los elementos que de otra forma permanecerían ocultas. etc.Sistemas de Ingeniería CAPÍTULO 2 MODELIZACIÓN A LA PROGRAMACIÓN LINEAL 2. etc. etc. solo estamos interesados en los modelos matemáticos.). Este resultado se alcanza con el mejor conocimiento que se adquiere cuando empieza a modelar. 2. Ed. es posible representar situaciones complejas que son admisibles en otro tipo de modelos.). 18. hemos elegido la de Aracil1: “Un modelo constituye una representación abstracta de un cierto aspecto de la realidad. Por ejemplo. cuando mejor se va conociendo la realidad del fenómeno que se intenta representar. Como acabamos de ver con anterioridad una de las fases de la aplicación del modelo científico se basa en la construcción del modelo o formulación de hipótesis. leyes físicas. y no solo es esa posibilidad de modelización. en otro extremos están los fervientes defensores de la modelización total para la toma de decisiones. Buscar o intuir los deseos del decidor (a veces no es la misma persona) de forma que se establezca cual es el objetivo que se persigue. Establecer de forma clara y concreta (desde el punto de vista matemático) las relaciones entre los elementos. En esta fase. es decir. El modelo que se utilizara en la matera será el modelo de optimización el cual trata de identificar un óptimo (por general. Interesa. además. 2. Aunque acabamos de ver algunas de las ventajas de la modelización.Capítulo 2 Texto Guía . etc. aunque también hay que reconocer que no es posible modelizar la totalidad de las situaciones reales. estos métodos son los que están basados en las técnicas de programación matemáticas. por una parte esta las personas que ponen en tela de juicio la validez de los modelos. depende obviamente. ya que un modelo puede ser usado para diferentes ocasiones y en varios contextos diferentes. las etapas a seguir para llegar a construir un buen modelo: 1. sino que lo único que queremos es poner en manifiesto que los modelos deben usarse como una herramienta mas para la toma de decisiones y que debe valorarse en su justa medida. Fase de Evaluación. ya que difícilmente es comprensible un problema complejo sin una mínima Modelización. Nos vamos a entrar en esta polémica. Estas relaciones son independientes de los datos a introducir en el modelo. Todo ello debe tenerse en cuenta aunque no esta formalizado. buscar la mejor de las alternativas posibles. ser capaces de representar conceptualmente el problema sin ningún tipo de contraindicaciones lógicas ni de errores de análisis. de tal forma que. ahora resaltar brevemente cuales son. será posible interpretarlo correctamente. sea fácilmente entendible y que puedan detectar rápidamente los errores. en tanto en cuanto no son capaces de cuantificar muchas instancias de los problemas reales. el óptimo general) del problema.2 Fases del proceso de modelización Acabamos de exponer algunas ideas generales sobre los modelos. 17 . Fase de Formalización. además de establecer la forma en la que debe ser el procedimiento de resolución a emplear. Fase de Conceptualización. sino simplemente una relación de las diferentes condiciones. Otros niegan su utilidad basándose en el grado de precisión de los datos a incorporar al modelo matemático. sobre el uso de los modelos en la ingeniería hay posturas diferentes. de que haya establecido correctamente la fase anterior. 2. es decir. en general. en este caso convendría resaltar la calidad de las respuesta que produce el modelo.Sistemas de Ingeniería Es importante resaltar que un modelo esta realmente definido por las relaciones que incorpora. El éxito de esta depende. 3. Para la aplicación práctica para el proceso de modelización un problema de optimización podemos seguir las siguientes reglas basadas en la experiencia: a) Análisis del problema. por ejemplo. que limitaciones existen. el costo o utilidad social. de la seguridad de su estructura y de los datos a el incorporados. obviamente. Pero frente de estos. y que una excesiva confianza en ellos es peligroso. Llegar a tener un profundo conocimiento de la realidad que se trata de modelizar. si queremos identificar la cantidad de madera necesaria para producir mesas la podríamos denominar MADNEC. siempre es posible encontrar una función que permita evaluar los resultados de cada una de las acciones. para posteriormente ir aumentando la complejidad. 18 . Para verificar estas condiciones. En primer lugar. En esta fase hay que denominar e identificar a las restricciones con los nombre adecuados. y el plantearlas matemáticamente. se denominan a las variables por sencillez.. A la hora de identificar las variables tenemos que tomar en consideración si las variables son deterministas o estocásticas. por lo general seria admisible un nombre hasta de ocho caracteres. en lugar de x2 . Esta es una de las fases criticas de la modelización. por ello es conveniente prestar mucha atención a esta definición. por ejemplo. todas las variables del modelo pueden tomar cualquier valor real. pero estos nombres no nos informan de forma inmediata de su significado. x3 . Este segundo aspecto. y también a la longitud de caracteres admisibles por los programas de ordenador que resuelven estos problemas. pero su nivel de actividad normal es muy grande en términos de sus unidades de medida.Capítulo 2 Texto Guía . La cuantificación de los resultados que se desean alcanzar. que no indique que quieren representar. si una variable no es infinitamente divisible. La elección del nombre debe ajustarse a las características del decidor. estos pasos son simplemente una derivación de las reglas del sentido común aplicadas a la construcción de los modelos. identificar las posibles decisiones. Esta fase hay que identificar (e interpretar el significado) y denominar a las variables. x 2 . seguidamente abordaremos algunas consideraciones para llegar a concretar las fases enumeradas anteriormente. Se trata en definitiva de identificar cuales son las limitaciones a las que esta sujeto el problema. x1 . Estos modelos. d) Identificar la función objetivo. 2. etc.. lo más usuales en el campo de la ingeniería. La primera hipótesis es la divisibilidad. Es decir. es decir. es decir.Sistemas de Ingeniería b) Definición de las variables. A veces esto resulta muy sencillo.3 Reglas básicas de modelización Los modelos lineales son aquellos en los que tanto la función objetivo como las restricciones son funciones lineales y por tanto son susceptibles de resolverse a través de la programación lineal. por ello es conveniente denominarlas de forma mas coherentes. etc. Hay que denominar a las variables de forma que sean fácilmente reconocibles. Esta es también una de las fases importantes. la suposición de divisibilidad puede servir como aproximación conveniente. es decir. aunque puede parecer triviales también de gran importancia. A efectos prácticos. ante que clase de variables vamos a tratar en el problema. son los más conocidos y los más usados en las aplicaciones ingeniériles y por tanto resaltaremos las hipótesis básicas sobre las que se asientan este tipo de modelos. de forma que sea fácil interpretar los resultados obtenidos. c) Identificación y formalización de las restricciones. Mucha veces. abordaremos algunos aspectos importantes sobre los modelos lineales. si son endógenas o exógenas. Aunque no en todos los problemas es inmediato definir el objetivo. de hilo “B” y 108 Kg. La contribución individual de cada variable es estrictamente proporcional a su valor. de “B” y 72 gr. En la primera sección lo más que se pueden procesar son 300 unidades del artículo uno o 400 del producto dos diariamente. y el factor de proporcionalidad es constante para todo el rango de valores que la variable puede tomar. a través de las cuales elabora dos productos.072 x1 + 0.Capítulo 2 Texto Guía . El T se vende a Bs. La contribución total de todas las variables es igual a la suma de las contribuciones individuales independientemente de los valores de las variables. estas pueden expresarse como diferencia de dos variables restringidas a tomar valores no negativos. ¿Cuántos productos de cada uno se deben fabricar para maximizar la utilidad? Plantear el anterior problema como un modelo de Programación Lineal 19 . de hilo “A”.027 x2 ≤108 x1. la sección segunda fabrica como mínimo 350 unidades del producto uno o 450 unidades del producto dos por día. 2. 500 el metro.125 x1 + 0. es decir. de a.4 Problemas Resueltos 1.2 x2 ≤500 0. La tercera hipótesis. La fábrica de Hilados y Tejidos "FOTRAMA" requiere fabricar dos tejidos de calidad diferente T y T’.1 x2 ≤300 0. aplicable fundamentalmente a los problemas de ingeniería. 400 el metro y el T’ se vende a Bs. 1000 y Bs. de hilo “C”. Si se debe obtener el máximo beneficio. de c. 300 Kg. Para obtener un metro de T diariamente se necesitan 125 gr. La empresa "GUTIÉRREZ" tiene un sistema de producción constituido por tres secciones. no es en si absolutamente necesaria. Si los productos uno y dos generan una utilidad de Bs. de “A”.Sistemas de Ingeniería La segunda hipótesis es la de linealidad. estos significa: a) Proporcionalidad en las contribuciones. de “C”. 700 respectivamente. ya que para problemas más generales donde las variables puedan tomar cualquier valor.150 x1 + 0. 100 gr. es la no negatividad de las variables del problema. 150 gr. de b y 27 gr. La sección tercera puede elaborar hasta 400 unidades del artículo uno o 500 unidades del artículo dos diariamente. x2 ≥0 2. b) Aditividad de las contribuciones. Esta hipótesis. para producir un metro de T’ por día se necesitan 200 gr. se dispone de 500 Kg. lo que se conoce como variables libres. ¿cuántos metros de T y T’ se deben fabricar? Plantear el anterior problema como un modelo de Programación Lineal Modelo (Primal): Max z = 400 x1 + 500 x 2 Sujeta a: 0. Cuando observó más pieles de león debajo del árbol. el príncipe Guillermo encontró una pila de cocos en el suelo. "Estas pieles nos pueden producir hasta trescientas rupias cada una. Con todo el equipaje se hicieron a la mar y en el viaje calcularon lo que sería su nueva riqueza. gritó el príncipe Roberto. si las podemos llevar hasta la orilla del mar". seguramente sólo él sabrá apreciar nuestro Serendipity. La embarcación de regreso a la isla era pequeña. Cuando regresaron a Ceilán Descubrieron que sus dineros estaban a punto de acabar. Cuando. x2: Cantidad del artículo dos a producir diariamente. gritó Roberto. dijo el príncipe Ricardo cuando pisó una piel de león. mientras que ocho cocos ocupaban el mismo espacio. Modelo (Primal):: MAX z = 1000 x1 + 700 x2 Con sus restricciones: Primera sección: Cuando x1= 0. x1= 350 x2 450 – 450/350 x1 9 x1 + 7 x2 3150 Tercera sección: Cuando x1= 0.Sistemas de Ingeniería Definición de variables reales: x1: Cantidad del producto uno a fabricar por día. cuando x2= 0. "Cada uno nos producirá sesenta rupias". Planearon hasta el centavo. Con cualquier otra piel o coco que hubiéramos traído ahora seríamos más pobres. Cada piel pesaba quince libras y cada coco cinco. que no existe otra forma de retornar así. x1= 400 x2 500 – 500/400 x1 5 x1 + 4 x2 2000 3. Nuestra fortuna es tan grande. Y no sé qué le escribiré a mi amigo Horacio en Inglaterra. "Miren". x1= 300 x2 400 – 400/300 x1 4 x1 + 3 x2 1200 Segunda sección: Cuando x1= 0.Capítulo 2 Texto Guía . x2= 450. Quince pies cúbicos de equipaje eso era todo. para su alegría. z : Función de utilidad de los productos uno y dos. cuando x2= 0. x2= 400. Los príncipes de Serendipity se fueron en un pequeño viaje. Plantear el anterior problema como un modelo de Programación Lineal 20 . Más de trescientos libras las ponían a pensar. x2= 500. Ellos no podían llevar muchas maletas. pero haciendo de tripas corazón pudieron llevar todo a la orilla. "Eureka". cuando x2= 0. Cada piel de león tomaba un pie cúbico. Los requerimientos diarios de materia prima por tonelada es la siguiente: MP1 MP2 Utilidad por tonelada Toneladas de materia prima por tonelada de Pintura Pinturas para para exteriores interiores 3 7 4 1 100000 Disponibilidad máxima diaria (toneladas) 20 9 300000 El estudio de mercado ha establecido que la demanda diaria de pintura para interiores no puede ser mayor que la pintura para exteriores en más de una tonelada. x2: Cantidad de toneladas diarias producidas de pintura para exteriores. Además. x2 0 4. La disponibilidad máxima de MP1 es de 8 toneladas diarias y la de MP2 es de 5 toneladas por día.Sistemas de Ingeniería Modelo (Primal): MAX z = 60 x1+ 300 x2 Con sus restricciones: 5 x1+ 15 x2 300 1/8 x1+x2 15 x1. Modelo (Primal): MAX z = 100000 x1+ 300000 x2 Sujeta a: 3x1 + 7x2 ≤ 20 4x1 + x2 ≤ 9 -x1 + x2 ≤ 1 x1 ≤2 x1 . Cuánta pintura para interiores y exteriores debe producir la empresa todos los días para maximizar el ingreso bruto? Variables reales: x1: Número de toneladas diarias producidas de pintura para interiores.Capítulo 2 Texto Guía . se emplean dos materias primas MP1 y MP2 para la producción de las pinturas. x2 ≥ 0 21 . z: Función de utilidad correspondiente a la ganancia por la venta de pintura para interiores y exteriores. el estudio señala que la demanda máxima de pintura para interiores está limitada a dos toneladas por día. Una empresa se dedica a la producción de pinturas para interiores y exteriores para su distribución. se supone que tiene a su disposición hombres suficientes y sin restricción y sus costos de producción son los siguientes: tractor e implementos Bs. caña de azúcar y ajonjolí. Un hacendado dispone de los siguientes recursos para emplearlos en la próxima cosecha: Bs.5 m2 de material metálico.3 horas la fabricación de P1 a un costo de Bs. Los modelos L1 y L3 son lavadoras con menor capacidad de carga (4 Kg. En el primer caso. 180000. el vendedor puede suministrar cualquier cantidad de P1 y P2 a un precio de Bs. En el segundo caso. 1000 horas tractor y 50 hectáreas de tierra cultivable. Para 22 . En cuanto a los microprocesadores se pueden fabricar en la propia empresa en una sección de la planta de montaje o se pueden encargar a un fabricante de material electrónico. Estas tierras son propias para sembrar maíz.3 horas para el modelo L2. 4500.75 horas la fabricación de P2 con un costo de Bs. los modelos L3 y L4 tienen un motor M2 y un microprocesador P2. requieren 8. L2..Sistemas de Ingeniería 2. La cantidad de material metálico disponible es de 10000 m2.70000000 de capital disponible. siendo preciso un tiempo de 1. Estos aparatos constan fundamentalmente de un tambor metálico recubierto con una carcasa. el material necesario para fabricar los motores puede obtenerse prácticamente sin limitación. 360000 respectivamente. siendo requeridas una hora para montar un motor M1 y 1. Además se supondrá un costo como penalización. 5000 la hora. 2. de un peso por cada peso no invertido. mano de obra Bs. Los modelos L1 y L2 llevan un motor denominado M1 y un microprocesador P1. Un fabricante de electrodomésticos produce cuatro modelos de lavadoras L1.).2 horas para el modelo L4. 180000 y Bs. El motor M1 es menos potente que el M2 y el microprocesador P1 tiene menos programas que el microprocesador P2. 100000 y 0. cada hectárea no sembrada Bs.5 Problemas Propuestos 1. el cual gira por efecto de un motor eléctrico controlado por un microprocesador electrónico. Los siguientes datos son por hectárea Plantear el anterior problema como un modelo de Programación Lineal 2.5 horas para ensamblar un motor M2.Capítulo 2 Texto Guía . necesitando 5 m2 de material metálico. Los motores se ensamblan en una nave de montaje con una capacidad de trabajo de 3000 horas. 4000 la hora. las lavadoras se montan en otra nave de acabado con capacidad de 5000 horas. 3 horas para el modelo L3 y 4. mientras que los modelos L2 y L4 que cargan 10 Kg. Finalmente. compiten con la fabricación de los motores M1 y M2 necesitando 0.5 horas para el modelo L1. L3 y L4. Fondo Monetario Internacional.166 2 Bonos Estatales B 85 15 3. Para la obtención de estos índices de calidad se tienen en cuenta conceptos tales como liquidez. Bs.200000 para el modelo L4. así como dos índices de calidad de la inversión. etc. El país está atravesando una aguda crisis económica a raíz del enorme incremento de la deuda externa. de difícil cuantificación. un asesor financiero le proporciona el siguiente cuadro en el que se recogen las posibles inversiones. por lo que la producción combinada de los modelos L2 y L4 debe ser superior a la producción combinada de los modelos L1 y L3. mientras que el índice extranjero califica a las inversiones en una escala de 0 a 100. Uno de los efectos más visibles de la crisis es el carácter especulativo que está adquiriendo el mercado de capitales. Uno de estos inversionistas está estudiando como invertir Bs.75 El inversionista pretende elegir su cartera de modo que alcance los máximos beneficios. según informe del departamento de mercadeo. Plantear un modelo de Programación Lineal para la planificación de la producción de las lavadoras teniendo como objetivo la maximización de los beneficios 3. etc.99 A 92 21 6. Bs. los inversionistas se han decantado por una política de inversión a corto y muy corto plazo como mecanismo de defensa ante la inestabilidad del mercado. Como dato adicional se conoce.160000 para el modelo L1. entre otros) experimente constantes modificaciones haciendo muy poco fiables las previsiones a medio y a largo plazo.170000 para el modelo L2. la influencia de diversos agentes: Gobierno.. el asesor financiero le aconseja que diversifique su inversión de acuerdo con los criterios siguientes: 23 . En este contexto.38 6 Moneda Extranjera D 93 7 1. uno proporcionado por un organismo estatal y el otro proveniente de una fuente extranjera.180000 para el modelo L3 y Bs.Sistemas de Ingeniería satisfacer a todos los segmentos. que la demanda de modelos de mayor capacidad es siempre superior a la demanda de los modelos de menor capacidad. riesgo. el índice estatal recorre una escala de la A a la Z. su rendimiento.94 3 4 Deuda Publica Nacional Deuda Publica Regional Fuente Días Neto Extranjera 5 Pagares Estatales A 97 30 6. plazo. No obstante. La utilidad proporcionada es de Bs. siendo A la mejor calidad. hace que los indicadores económicos (inflación.Capítulo 2 Texto Guía . devaluación. siendo 100 la mejor calidad Índice de Calidad Inversión Tipo Organismo Estatal 1 Bonos Empresa Privada C 95 10 3. el fabricante decide que la producción mínima de cada modelo sea de 300 unidades.30 B 90 21 5.. Banca Nacional y Banca Extranjera. 100000000 producto de una herencia.  La calidad media de la inversión según el índice de fuente extranjera debe ser como mínimo 92. 3. Plantear el anterior problema como un modelo de Programación Lineal 4.4000000. El gobierno actual requiere el máximo apoyo para que se apruebe en el Congreso el plan de desarrollo propuesto para el próximo año.  La cantidad invertida en bonos debe ser superior a lo invertido en deuda pública.6 de otro partido. 4000 y el de una blusa es de Bs. Una empresa de confecciones puede producir 1000 pantalones o 3000 blusas (o una combinación de ambos) diariamente.Sistemas de Ingeniería La cantidad colocada en inversiones estatales no debe ser superior al 70% del total invertido. 4 y 5) y las inversiones en efectos de titularidad privada (inversiones 1 y 6) deben ser a lo sumo de tres a uno.  La duración media de la inversión debe estar comprendida entre 14 y 21 días.  Debido a las disposiciones legales.9 de éxito con los miembros de la coalición y 0. ¿Cuántos parlamentarios de cada partido deberá telefonear para maximizar su probabilidad de éxito si no puede realizar un número total de llamadas superior a 30 en el actual régimen de austeridad 24 .  La razón entre las inversiones en efectos de titularidad pública (inversiones 2. ¿Cuántas unidades se deben de producir de cada uno para maximizar las utilidades? Plantear el anterior problema como un modelo de Programación Lineal 5.  No debe colocarse más de un 60% en inversiones catalogadas por el organismo estatal con un índice inferir o igual a B. Si el beneficio de un pantalón es de Bs. el departamento de mercadeo requiere que se produzcan diariamente al menos 400 pantalones. 3000. la cantidad máxima que puede invertirse en pagarés estatales es de Bs. sabiendo que tiene una probabilidad 0. El departamento de acabado puede trabajar sobre 1500 pantalones o sobre 2000 blusas (o una combinación de ambos) cada día.Capítulo 2 Texto Guía . El presidente decide entonces concertar por teléfono a estos congresistas indecisos para convencerlos de que lo apoyen. A través de sus consejeros ha sabido que hay 35 parlamentarios de un grupo de coalición y 27 de otro partido que aún no han definido su voto. unal.htm  http://www.unal.Sistemas de Ingeniería 2.edu.co/cursos/sedes/manizales/4060014/docs_curso/Capitul o%20II/problemas. Lieberman.co/cursos/sedes/manizales/4060014/docs_curso/Capitul o%20II/modelizacion. [Sexta Edición] 2.edu.com/Introduccion_modelizacion.virtual.htm  http://www.virtual. Gerald J.investigacion-operaciones.Capítulo 2 Texto Guía . Hillier.6 Bibliografía  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S.7 Enlaces  http://www.htm 25 . Es de anotar que los problemas de mayor dimensión (mayor a 3 dimensiones o variables) tienen soluciones semejantes. en la cual en uno de sus vértices se obtiene la solución óptima del problema. pero la forma de resolverlos ya es de manera analítica. Las Variables de decisión que se trata de determinar. 3. como fue antes mencionado. El modelo de programación lineal. Aunque en la práctica casi no existen problemas con dos variables. 1. El Objetivo (la meta) que se trata de optimizar. no acotadas.1 Introducción La programación lineal se aplica a modelos de optimización en los que las funciones objetivo y restricción son estrictamente lineales. tiene tres componentes básicos. 2. 3.MÉTODO GRÁFICO 3. También presenta ideas concretas para el desarrollo y la interpretación de análisis de sensibilidad en programación lineal. la presentación aportara ideas concretas para el desarrollo del algoritmo de solución general. caso en el que la optimización se denomina: solución óptima única.2 Modelo de programación lineal con dos variables Esta sección explicara la solución gráfica de una programación lineal con dos variables. Consiste en representar cada una de las restricciones y encontrar cuando se pueda el polígono (poliedro) factible. Este capítulo comienza con el caso de un modelo de dos variables y presenta su solución gráfica. infactibles. Este método tiene dos características especiales:  Sirve para resolver problemas en dos dimensiones (a lo sumo tres). 3. Las Restricciones que se deben satisfacer. Además las soluciones óptimas múltiples.Sistemas de Ingeniería CAPÍTULO 3 PROGRAMACIÓN LINEAL .Capítulo 3 Texto Guía Alumno . con ecuaciones redundantes.  Gracias a la aplicación y solución de este método se pueden consolidar importantes interpretaciones de tipo geométrico y conceptual en relación a la teoría de programación lineal. porque la representación gráfica en el espacio de n-dimensiones es prácticamente imposible. 26 . técnica algebraica general. comúnmente llamado región factible. Esta solución gráfica permite tener una perspectiva del desarrollo del método símplex (que se vera en el capítulo 4).3 Método gráfico Este método es limitado en el hecho de graficar como máximo tres variables (3 dimensiones). donde R0 corresponde a la función objetivo y las Ri (i = 0. Representar gráficamente las restricciones del problema de programación lineal. Paso 2. 1. a) ¿Cuál es el número posible de camiones que puede usar (gráficamente)? b) ¿Cuál es el número posible de camiones que debe usar para que el costo sea mínimo? c) ¿Cuál es el valor de dicho costo? Sea: x1 = Camiones de 15 Tn x2 = Camiones de 5 Tn Función objetivo: min z  4000 x1  3000 x 2 Sujeta a: 15 x1  5x 2  100 x1 6 x2  10 x1 . Probar todos los puntos de intersección para observar cual aporta el máximo beneficio (caso de maximización) o menor costo (caso minimización).Sistemas de Ingeniería La definición correcta de las variables de decisión es un primer paso esencial en el desarrollo del modelo. Sabiendo que dispone de 6 camiones tipo C1 con capacidad para 15 Tn y con un costo de 4000 Bs. la tarea de construir la función objetivo y las restricciones se hace en forma más directa. La solución se obtiene graficando las restricciones Ri. Para ilustrar estas aseveraciones expliquemos el ejemplo siguiente: Ejemplo de aplicación 3.1 Una empresa constructora dispone de dos tipos de camiones C1 y C2 y quiere transportar por lo menos 100 Tn de arena a una obra. m). 2.……. m) restantes a las restricciones funcionales y de no negatividad. tomando para ello dos puntos que serán unidos posteriormente para formar una recta. asignando un valor arbitrario para Z. Como las rectas son inecuaciones presentan dos hiperplanos.Capítulo 3 Texto Guía Alumno . Ubicar todos los puntos de intersección de la gráfica. Para hallar la solución óptima se gráfica la función objetivo. Una vez hecha. x2 0 [R0] [R1] [R2] [R3] [R4] y [R5] Cada ecuación lineal de este problema lo rotularemos como Ri (i = 0.……. Paso 3. esta recta se desplaza paralelamente a lo largo de S (región factible) hasta encontrar el vértice más cercano del origen (caso de maximización) ò el punto más lejano al origen (caso minimización). por viaje. de los cuales uno se 27 . Paso 1. o Paso 3. por viaje y de 10 camiones tipo C2 con una capacidad de 5 Tn y con un costo de 3000 Bs. 1. 2. Los pasos a seguir son los siguientes. 0].10].Capítulo 3 Texto Guía Alumno .30000 28 .20] y P2 [ 20 . La figura 3. como la inecuación es del tipo menor o igual. entonces x2 = 20. si x2 = 0 entonces x1 = 20 . para la primera restricción fijamos x1 = 0. formara un conjunto o un espacio S llamado REGIÓN FACTIBLE que contendrá a todos los puntos que cumplen con todas las restricciones del problema de PL. Por ejemplo.1 La región S (sombreada) que tiene de vértices a los puntos:{[6. asignando un valor arbitrario para z.1 muestra el procedimiento descrito anteriormente. [10/3. El procedimiento se repite para todas las otras restricciones. [6.1 Resolución gráfica del ejemplo de aplicación 3. Figura 3. 3 formándose los puntos P1 [0. En el caso del ejemplo la solución óptima viene dada por: x1 = 6 x2 = 2 Z = 4000(6) + 3000(2) = Bs. (por ejemplo z = 12000). La intersección de todos los dominios de las restricciones. El punto hallado representa la solución óptima del problema. Para hallar la solución óptima se gráfica la función objetivo.Sistemas de Ingeniería constituirá en el dominio de acuerdo al sentido de la inecuación. Uniendo estos dos puntos obtendremos la 3 ecuación R1. esta recta se desplaza paralelamente a lo largo de S hasta encontrar el vértice más cercano del origen (caso de minimización) y el punto más lejano al origen (caso de maximización).2]. el dominio será hacia abajo (esto se puede comprobar reemplazando cualquier punto que este por debajo de la recta y se notara que cumple con la inecuación).10]} es el conjunto que representa la intersección de todos los dominios de las restricciones. Si reemplazamos los valores de x1 = 6 y x2 = 2 en ambas restricciones veremos que la igualdad se cumple.10] corresponde a la intersección de R2 y R3 y se obtiene resolviendo las ecuaciones que corresponden a estas restricciones. Restricciones REDUNDANTES. por tanto sus variables de holgura y/o excedencia son diferentes de cero.  Las restricciones que intervienen en el problema pueden ser de tres tipos: 1. se pueden visualizar y precisar algunos conceptos de comprensión e interpretación importantes: El espacio S se llama REGIÓN FACTIBLE y es el conjunto que agrupa a los puntos que cumplen con todas las restricciones y que corresponden a la intersección de los hiperplanos dominios de cada una de las restricciones. que tienen dos características: 1º Pasan por el punto óptimo y 2º Hacen uso total de los recursos. Para R1: 15x1 + 5 x2 ≥ 100 15(6) + 5(2) = 100 (variable de holgura igual a cero) Para R2: ≤ 6 x1 6 2. que son aquellas que además de no pasar por el punto óptimo en cuestión.Capítulo 3 Texto Guía Alumno .  La solución óptima del problema siempre será un vértice de la región factible S. que son aquellas que no pasan por el punto óptimo y que no hacen uso total del recurso limitado. esto quiere decir que sus variables de holgura y/o excedencia toman el valor de cero. por ejemplo el punto [6. = 6 (variable de holgura igual a cero) Restricciones INACTIVAS. lo que significa que la inclusión o no de esta restricción no modificara la región factible y tampoco la solución óptima. por tanto estas son restricciones activas.Sistemas de Ingeniería De esta solución gráfica. Reemplazando: Para R3: x2 ≤ 10 2 ≤ 10 (variable de holgura s3=8) 3. 29 . En el caso del problema las dos restricciones que pasan por el punto óptimo son R1 y R2. Este es el caso de R3 que limita a la región factible pero no pasa por el punto óptimo. no limitan ni participan de la región factible.  Los vértices de la región factible S. corresponden a la intersección de dos o más restricciones.  Restricciones ACTIVAS. 10 y z = Bs. x2 ≥ 0 a) ¿Cuáles símbolos representan las variables de decisión? b) ¿Cuál expresión representa la función objetivo? c) ¿Es x1 = 1 y x2 = 2 una solución factible? d) ¿Es x1 = 2 y x2 = 1 una solución factible? e) ¿Es la solución factible x1 = 3 y x2 = ½ una solución mejor que la solución factible x1 = 1 y x2 = 1? 2. Represente gráficamente cada una de las siguientes restricciones. x2 ≥ 0 Encuentre la solución óptima (utilidad máxima) para este problema. a) x1 + 2 x2 ≥4 b) x1 + 2 x2 =4 c) x1 + 2 x2 ≤4 3. Señale sobre la gráfica la dirección de decrecimiento de los costos y la dirección de incremento de los mismos.20. Represente gráficamente la función de costos z = x1 + x2 para los costos de z = Bs. Considere el siguiente problema de programación lineal: Maximizar z = 2 x1 + 3 x2 Sujeto a ≤5 x1 x2 ≤5 x1 + x2 ≤8 x1 ≥ 0. 30 . 4. Señale el área de restricción que representa soluciones factibles no negativas.Sistemas de Ingeniería Problemas de repaso 1. Considere el siguiente modelo de programación lineal.Capítulo 3 Texto Guía Alumno . Elija x1 y x2 para Minimizar z = 25 x1 + 30x2 Sujeto a: x1 + 2 x2 ≤4 x1 + ≥1 x2 x1 ≥ 0. La solución factible x1 = 1 y x2 = 1 aporta un costo z = 25(1) + 30(1) =Bs.Capítulo 3 Texto Guía Alumno . Por tanto. Sea x1 = 0 en la ecuación x1 + 2x2 ≥ 4.90. la solución x1 = 1 y x2 = 1 es mejor que la solución x1 = 3 y x2 = ½. Por tanto. Figura 3. Ambos puntos intersectos son representados en la figura 3.2 El conjunto de soluciones factibles para x1 + 2x2 ≥ 4 son los puntos sobre la línea y el área sombreada. Prueba: Restricción 1: Restricción 2: No negatividad: x1 + 2x2 ≤4 2 + 2(1) =4 ≤4 x1 + x2 ≥1 2 + 1 = 3 ≥1 x1 ≥ 0 y x2 ≥ 0 2 ≥ 0 y 1 ≥0 e) La solución factible x1 = 3 y x2 = ½ aporta un costo z = 25(3) + 30(½) =Bs. c) x1 = 1 y x2 = 2 una solución no factible ya que viola la condición dada en la primera restricción. 1. 2. tenemos: 31 .0]).55. Similarmente. d) x1 = 2 y x2 = 1 es una solución factible puesto que satisface ambas restricciones y la restricción de no negatividad. Entonces x1 = 4 y el otro punto intersecto es x1 = 4 y x2 = 0 (P2 [4.Sistemas de Ingeniería Respuestas a los problemas de repaso.2. b) La función de costos z = 25 x1 + 30 x2 representa la función objetivo. Entonces 2x2 = 4 ó x2 = 2. a) x1 y x2 representan las variables de decisión. Por ejemplo. para probar la factibilidad de P3 [4.4].2]). a) Los puntos intersectos de x1 + 2x2 ≥ 4 pueden ser determinados como sigue. Sea x2 = 0 en la ecuación x1 + 2x2 ≥ 4. un punto intersecto es x1 = 0 y x2 = 2 (P1 [0. 1] es no factible ya que: x1 + 2x2 = 4 1 + 2(1) = 3 ≤ 4 Y el punto P2 [4.Capítulo 3 Texto Guía Alumno .4.Sistemas de Ingeniería x1 + 2x2 ≥ 4 4 + 2(4) = 12 ≥ 4 El punto P4 [1. 32 . como se muestra en la Figura 3. P3 [3.3. Por ejemplo. P1 [1.1] no es factible ya que: x1 + 2x2 ≥ 4 1 + 2(1) = 3 ≤ 4 b) Las soluciones factibles no negativas para x1 + 2x2 = 4 son solamente los puntos que están sobre la línea x1 + 2x2 = 4.½] es factible puesto que: x1 + 2x2 = 4 3 + 2(½) = 4 = 4 c) El conjunto de soluciones factibles no negativas para la desigualdad x1 + 2x2 ≤ 4 esta en la frontera y dentro el área sombreada de la figura 3.4] es no factible ya que: x1 + 2x2 = 4 4 + 2(4) = 12 ≥ 4 Sin embargo. 3] es no factible ya que: x1 + 2x2 ≤ 4 3 + 2(3) = 9 ≥ 4 3. 4. y x2 = 0.20 en la función de costos se obtiene 20 = x1 + x2 con puntos intersectos x1 = 0. Para resolver este problema. y x2 = 0.20]. x1 = 20 entonces P4 [20. P1 [1.5 con las líneas de crecimiento y decrecimiento del costo total. Tenemos entonces 10 = x1 + x2 con puntos intersectos x1 = 0. Similarmente.10].0]. x1 = 10 entonces P2 [10. x 2  0  Paso 1.Sistemas de Ingeniería Por ejemplo.1] es factible ya que: x1 + 2x2 ≤ 4 1 + 2(1) = 3 ≤ 4 Y el punto P2 [3. Las ecuaciones correspondientes y sus puntos intersectos son como sigue: 33 . usaremos el procedimiento gráfico.0]. x2 = 10 entonces P1 [0. Las dos líneas paralelas se muestran en la figura 3.10 en la función de costos z = x1 + x2.Capítulo 3 Texto Guía Alumno . Sea z = Bs. Maximizar z  2 x1  3x2  Objetivo Sujeto a x1  5 x 2  5   Restricciones x1  x 2  8 x1 . siendo z = Bs. x2 = 20 entonces P3 [0. Hay tres restricciones para ser graficadas. Representación gráfica de las restricciones. Determinar las soluciones correspondientes a los vértices.6 que hay cinco soluciones correspondientes a vértices. Los cinco vértices y sus utilidades asociadas son como sigue. Por tanto. x2 = 5. Por tanto. aportando una utilidad de Bs. 34 . Observé que hay cinco vértices. x2 =0 Tabla 3.5]. Determinar el vértice correspondiente a la solución de la utilidad máxima. x2 =0 x2 ≤ 5 x1 = 0. como se muestra en la figura 3.3]. El conjunto de soluciones esta indicado por el área sombreada. sustituyendo x2 = 5 en x1 + x2 = 8 se obtiene x1 = 3 por tanto tenemos P4 [3.1 Utilizando los puntos intersectos dados en la tabla.Sistemas de Ingeniería Restricción Puntos intersectos x1 ≤ 5 x1 = 5. P3 y P4 se determinan por los puntos de intersección entre las ecuaciones de las restricciones.21. ahora representaremos gráficamente el conjunto de soluciones factibles. x2 =5 x1 + x2 ≤ 8 x1 = 0. Paso 3. sustituyendo x1 = 5 en x1 + x2 = 8 se obtiene x2 = 3 y tenemos P3 [5. incluyendo la frontera. x2 =8 y x1 = 8. P4 es la intersección entre x2 = 5 y x1 + x2 = 8. Observamos en la figura 3. la solución óptima es P4 con x1 = 3. P3 es la intersección de x1 = 5 y x1 + x2 = 8. P1 P2 P3 P4 P5 VÉRTICE x1 x2 0 0 5 0 5 3 3 5 0 5 Utilidad z = 2x1+3x2 0 = 2(0) + 3(0) 10 = 2(5) + 3(0) 19 = 2(5) + 3(3) 21 = 2(3) + 3(5) 15 = 2(0) + 3(5) Tabla 3.6.2 Por tanto.Capítulo 3 Texto Guía Alumno . Paso 2. 4 Solución por computadora Para solucionar los modelos de investigación de operaciones existen diferentes paquetes de computadora que ofrecen resultados excelentes y con bastante rapidez. Para propósitos prácticos resolveremos el ejemplo de aplicación 3. el WinQSB (Quantitative System for Business). Seleccione Linear Programming (Programación Lineal) del menú Main menú (Menú Principal) 2. En problemas nuevos. Y oprima SOLVE MENU (menú resolver) 35 . use la tabla de entrada para ingresar datos. y en consecuencia no requiere un manual del usuario. Se maneja con menús. una combinación de los dos). 3. 3. Especifique el modo de entrada (archivo existente o problema nuevo) y el formato de entrada.1 Solución gráfica con TORA El diseño del programa TORA le permite usarlo en modo tutorial o en modo automático (o si lo desea.4.Sistemas de Ingeniería 3.Capítulo 3 Texto Guía Alumno . En este punto mostraremos los reportes de dos paquetes que son bastantes usados para propósitos académicos y que son: TORA.1 de este capítulo y que fue resuelto por el método gráfico. La solución gráfica de problemas de programación lineal con TORA requiere los pasos siguientes: 1. una por una (en cualquier orden) y a continuación otro clic en la función objetivo para producir una presentación animada de la determinación óptima.7 muestra la solución gráfica de la solución del ejemplo de aplicación 3. Para tener más flexibilidad al experimentar con el módulo gráfico de TORA. se puede reiniciar toda la gráfica haciendo clic en le renglón de restricción de no negatividad all xj >= 0 (todas las xj > 0) en la ventana izquierda. Seleccione SOLVE PROBLEM Texto Guía Alumno . Puede graficar la programación lineal de dos maneras: Si hace clic en el renglón “Click here to graph LP in one stroke” (clic aquí para presentar la gráfica de una vez) de la ventana izquierda. La figura 3. O bien haciendo clic en las restricciones. con ejes x1 y x2 ya con escala adecuada.1. También se puede modificar la programación lineal del momento haciendo clic en View/Modify Input Data (ver/modificar). exactamente como haría usted si estuviera graficando en un papel. Especifique el formato del resultado y a continuación oprima Go To Output Screen 6. 36 . La ventana derecha comienza con un primer cuadrante. El modelo de programación lineal se gráfica y se resuelve. resolviendo a continuación el nuevo modelo.Capítulo 3 4. toda la programación lineal se gráfica de una vez. En la ventana izquierda se ve la programación lineal algebraica.Sistemas de Ingeniería => Graphical del menú SolveModify 5. 7 Resultado gráfico del ejemplo de aplicación 1 obtenido con TORA 3. formato de los datos de entrada. coloque los datos del problema (criterio de la función objetivo.Capítulo 3 Texto Guía Alumno .Sistemas de Ingeniería Figura 3. 37 .2 Solución gráfica con WinQSB (Quantitative System For Business) La solución gráfica de problemas de programación lineal con WinQSB requiere los pasos siguientes: 1. Seleccione INICIO = >Programas = > WINQSB = >Linear and Integer Programming 2. número de variables) y haga clic en OK.4. Haga clic en new Problem. Capítulo 3 Texto Guía Alumno . Introducir los datos del problema en forma parecida al del TORA 4.Sistemas de Ingeniería 3. Ir al menu Solve and Analyze = > Graphic Method Figura 3.1obtenido con WinQSB 38 .8 Resultado gráfico del ejemplo de aplicación 3. Si se cambia la solución objetivo a z = C1x1 + C2x2. (Ejemplo de aplicación 3. hay un intervalo de variación. De igual modo. 3.Sistemas de Ingeniería 3. Como se puede ver en la figura 3. proporciona perspectivas fundamentales en le desarrollo del análisis des sensibilidad.1 la solución óptima en D proporciona el valor máximo de z = 4000x1 + 3000x2. En forma específica nos interesa determinar el intervalo de optimalidad de la relación C1/C2 (o de C2/C1) donde se mantenga sin cambio las solución óptima del momento. Ejemplo de aplicación 3.9. entonces 5 C2 1   15 C1 0 Si C2 ≠ 0.2 Acerca del modelo de la empresa constructora. Para aumentar la aplicación de la programación lineal en la práctica. C1 ≠ 0 significa que la recta de la función objetivo no puede ser horizontal.1). que la presentación es elemental y su alcance es limitado. entonces 0 C1 15   1 C2 5 En la primera condición. Para los casos en que C1 y C2 pueden 39 . se necesita agregar una dimensión dinámica que investigue el impacto que tiene que hacer los cambios en los parámetros del modelo (coeficiente de la función objetivo y de las restricciones) sobre la solución óptima. dentro del cual el óptimo del momento permanece sin cambios. el intervalo de optimalidad en este modelo (definido por las dos rectas que cruzan en D) no permite que la función objetivo z = C1x1 + C2x2 sea una línea horizontal o vertical. En el capítulo 5 se describe una presentación completa del tema.5. el punto de esquina óptimo. posiblemente. A este proceso se llama análisis de sensibilidad.5 Análisis de sensibilidad por el método gráfico Un modelo de programación lineal es una foto instantánea de una situación real en la que los parámetros del modelo (coeficientes de la función objetivo) asumen valores estáticos.1 Cambios en los coeficientes de la función objetivo La función objetivo en general en un problema de programación lineal con dos variables se puede escribir como sigue: Maximizar o minimizar z = C1x1 + C2x2 Los cambios de los coeficientes C1 y C2 harán cambiar la pendiente de z y en consecuencia. tanto para C1 como para C2.Capítulo 3 Texto Guía Alumno . porque estudia la sensibilidad de la solución óptima respecto a los cambios que se hagan en el modelo. en la segunda condición C2 ≠ 0 significa que z no puede ser vertical. En el siguiente ejemplo se ilustra el procedimiento. la solución en D permanecerá óptima mientras la pendiente de z quede entre las pendientes de las dos restricciones que son 15x1 + 5x2 ≥ 100 [R1] y x2 ≤ 10 [R2] esta expresión se puede expresar algebraicamente como: Si C1 ≠ 0. en la figura 3. Sin embargo. En esta sección se investigara dos casos de análisis de sensibilidad basados en la solución gráfica de la programación lineal: 1) cambios en los coeficientes de la función objetivo. 2) cambios en el lado derecho de las restricciones y 3) Valor por unidad de recurso. El resultado es que se aplica a este ejemplo cada una de las dos condiciones dadas. esta observación no cambia el hecho que D siga siendo óptimo. así. En esta sección se investigara la sensibilidad de la solución óptima a cambios en la cantidad de los recursos disponibles. la solución óptima permanece sin cambios en D. dado C1 = 4000.9 Intervalo de factibilidad para el modelo del ejemplo de aplicación 3. en que C1 C2 los denominadores no puedan ser cero.Capítulo 3 Texto Guía Alumno . se obtiene 3000   C1   3000 ó 1 C2 5 1 5 5 C2 1 sea 0  C1  9000 . en z = 4000x1 + 3000x2. Obsérvese que si deduce que z = C1x1 + C2x2 coincide con 15x1 + 5x2 = 100. ya sea en forma directa o indirecta. el intervalo de C1 C y 2 es que mientras que esas relaciones C1 C2 estén dentro de los límites especificados. Sin embargo. las restricciones representan el uso de recursos limitados. asumir valores cero.1 3. Lo que indican las condiciones para Se pueden usar las condiciones dadas para determinar el intervalo óptimo para uno de los coeficientes cuando el otro permanece con su valor original. En forma parecida.5. el intervalo óptimo asociado para C1 se determina a partir de la 0 C 15 0 15 condición  1  . En este caso. la condición   .2 Cambio en disponibilidad de recursos (en el lado derecho de las restricciones) En los modelos de programación lineal. sustituyendo C2 = 3000. puede presentarse óptimos alternativos en cualquier lugar del segmento de recta DF. se puede imaginar que el lado derecho representa límites de disponibilidad de los recursos. 40 .Sistemas de Ingeniería C1 C (o de 2 ) deben dividirse en dos conjuntos. dado C2 = 3000. dará 15 C1 0 4000 como resultado  C2   3 Figura 3. la solución óptima en el punto D se deslizara a lo largo del segmento de recta BE. el intervalo de factibilidad para R1 es: 90 ≤ R1 ≤ 140 Este resultado indica que R1 puede bajar hasta 10 toneladas o aumentar hasta 40 toneladas y seguir garantizando que el punto de la solución óptima seguirá siendo la intersección de las rectas asociadas a R1 y R2.0) y E = (6.1).Sistemas de Ingeniería Ejemplo de aplicación 3. y si R2 = 6. si R2 = 6.3 Para el modelo de la constructora (ejemplo de aplicación 3. Cuando cambia la disponibilidad de R1 (aumenta o disminuye respecto a su valor actual de 100 toneladas). si R2 = 6.10) limitan al intervalo de factibilidad de R1.10 muestra que el óptimo esta en D. Por esta razón se dice que los puntos extremos B = (6. En realidad. Cantidad de R 1 en B = 15x1 + 5x2 = 15(6) + 5(0) = 90 Toneladas. todo cambio en R1 fuera del intervalo de este segmento hará que el punto D (la intersección de las recta relacionadas con R1 y R2) no sea factible. y es la intersección de las rectas asociadas con las restricciones R1 y R2. Así. la figura 3.Capítulo 3 Texto Guía Alumno . la solución general asociada se obtiene en función de R1 como sigue: x1  6    90  R 1  140 1 x2  R1  18 5  41 . Cantidad de R 1 en E = 15x1 + 5x2 = 15(6) + 5(10) = 140 Toneladas. En consecuencia. 10). La figura 3.Capítulo 3 Texto Guía Alumno . mientras R1 = 100. el intervalo de factibilidad para R2 es: 10 20 ≤ R2 ≤ 3 3 De nuevo. Así. limitan al intervalo de factibilidad de R2.11 muestra que el intervalo de la factibilidad para R2 (si R1 = 100 toneladas) esta limitado por los extremos C y F. 20 10 siendo C = ( .0) y F = ( .Sistemas de Ingeniería A continuación veamos la materia prima R2. la solución asociada se define por: x1  R2  10 20   R2  x 2  20  3R 2  3 3 42 . puede usted verificar que si R1 = 100. 3 3 20 Cantidad de R 2 en C = 3 10 Cantidad de R 2 en F = 3 Entonces. 12 muestra que se puede concebir a un modelo de programación lineal como uno de entrada y salida.12 Representación de un programa lineal como modelo de entrada y salida (datos y resultados) Si yi representa el valor de cada unidad del recurso i. 54000  24000  Bs. Ejemplo de aplicación 3. y1  43 .3 Valor por unidad de recursos La figura 3. que se define como la tasa de cambio en el valor de la función objetivo debido a cambios en la cantidad disponible de un recurso.2. en el intervalo de 90 ≤ R1 ≤ 140 hará cambiar el valor óptimo de Z en Bs.0) y E = (6.10 muestra que el intervalo factible para R1.Sistemas de Ingeniería 3. 600. la formula correspondiente para calcular esta medida es: Para ilustrar esta nueva medida usaremos el modelo de la empresa constructora.6.600 140  90 El resultado indica que un cambio de 1 Tonelada en R1. entonces Z en B = 4000x1 + 3000x2 = 4000(6) + 3000(0) = Bs. 24000 Z en E = 4000x1 + 3000x2 = 4000(6) + 3000(10) = Bs. Z Figura 3. En forma especifica. Esa medida se puede obtener como subproducto de los cálculos del intervalo de factibilidad que se describieron en la sección 3.5. 10).Capítulo 3 Texto Guía Alumno . 54000 Entonces. Una consecuencia útil de este modelo es determinar como los cambios en sus datos (recursos) pueden influir sobre su resultado (el valor objetivo). o de datos y resultados. Recursos Actividades del modelo de programación lineal del Modelo Valor objetivo del modelo. Por consiguiente: Como B = (6. y esta definido por los puntos B y E. en que los recursos limitados representan los datos y el valor de la solución objetivo representa el resultado. 90 ≤ R1 ≤ 140.4 La figura 3. se trata de determinar el valor por unidad de un recurso. 3 3 5000. x 2  0 Maximizar Dependiendo de:  4 x1  8 x 2 6 x1  2 x2  3  2 x1  3x 2  6 2 x1  3x 2  24 x1 .6 Problemas propuestos Resuelva cada uno de los siguientes programas lineales usando el método gráfico (etiquete cada restricción consecuentemente). Como C = ( 130000 80000  3 3  Bs. Maximizar Dependiendo de:  x1  2x2 6 x1  2 x2  3  2 x1  3x 2  6 x1  x2  3 x1 . 43333. encuentre la solución óptima y el valor de la función objetivo. = Bs. 44 .5000 yi  20 10  3 3 En este caso el resultado indica que un aumento o disminución de 1 camión se 15 10 20 toneladas en R1.667 3 3 10 130000 Z en F = 4000x1 + 3000x2 = 4000( ) + 3000(10) = Bs.33 3 3 Entonces. 26666.10).11. Indique si el problema es infactible.Capítulo 3 Texto Guía Alumno . Su intervalo de factibilidad es 10 20 ≤ R2 ≤ .Sistemas de Ingeniería A continuación consideraremos la materia prima R2. en el intervalo de ≤ R2 ≤ aumenta o disminuye la utilidad en Bs. Para aquellos que sean óptimos. entonces 3 3 20 80000 Z en C = 4000x1 + 3000x2 = 4000( ) + 3000(0) = Bs. óptimo o ilimitado.0) y F = ( . 1. 3. Entonces: 3 3 20 10 . y esta limitado por los puntos C y F en la figura 3. x 2  0 2. = Bs. Los costos por unidad de la vivienda a bajo y medio costo son Bs. el número de viviendas de costo medio debe estar entre 30 y 70. 45 . 6. Un barrio de 10 acres en la ciudad Oruro se va demoler y el gobierno municipal debe decidir sobre el nuevo plan de desarrollo. x 2  0 Minimizar Dependiendo de: 3x1  7 x2 x1  x2  4 x1  2 x2  10  2 x1  1x2  2 x1 . 18000. 5. x 2  0 4. Maximizar Dependiendo de: 3x1  5 x2  3x1  2 x 2  6  x1  x 2  5  3x1  8 x 2  12 3x1  2 x 2  18 x1 . x 2  0 Minimizar Dependiendo de: x1  x 2 3x1  5 x 2  30 3x1  2 x2  9 x1 .Sistemas de Ingeniería 3. Se puede construir 20 a 15 por acre. respectivamente. 2 millones. de estos dos tipos de viviendas. 13000 y Bs. Los límites superior e inferior establecidos por el municipio sobre el número de viviendas de bajo costo son 60 y 100. Se va a considerar dos proyectos habitacionales: Viviendas a bajo costo y viviendas a medio costo.Capítulo 3 Texto Guía Alumno . De igual manera. el asesor de la obra sugirió que el número de viviendas de bajo costo sea al menos 50 unidades mayor que la mitad del número de viviendas de costo medio. Maximizar el número de viviendas a construir por el método gráfico. El mercado potencial combinado máximo para las viviendas que es de 150 (que es menor que la suma de los limites individuales debido al traslape entre los dos mercados). Finalmente. Se desea que la hipoteca total comprometida al nuevo plan de desarrollo no exceda de a Bs. El mercado limita las ventas diarias del tipo 1 y 2 a 150 a 250 ladrillos respectivamente.12 por unidad del producto 1 y Bs. la compañía puede producir un total de 500 ladrillos al día.8 para el tipo 1 y Bs. Suponga que los beneficios por cada ladrillo son de Bs. Las horas de trabajo que se requieren para los productos en cada uno de los tres departamentos de producción se sintetizan en la tabla.450 Excavación 4000 120 1 16 Bs. Maximizar las utilidades de la compañía.Capítulo 3 Texto Guía Alumno . La compañía obtiene una utilidad de Bs.) (hrs. Departamento 3. 46 . La compañía Guabira manufactura y vende dos productos. Hierro Trabajo Requisitos de Tratamiento Ingreso (lb.5 para el tipo 2. En la tabla se presentan los requisitos por unidad y los ingresos netos para equipo forestal y equipo de excavación. Si todos los ladrillos son del tipo 2. Una compañía produce dos tipos de ladrillos. Los supervisores de estos departamentos han estimado que durante el próximo mes estarán disponibles las siguientes horas de trabajo: 800 hr 1600 hr 2000 hr Departamento 1. Definan las variables de decisión y elaboren un programa lineal que maximice los ingresos.Sistemas de Ingeniería 7.4 por unidad del producto 2 que se vendan. Departamento 2.) transmisiones (hrs.) Neto Forestal 950 65 1 28 Bs.895 Disponibilidad 650000 23000 450 7200 Equipo 9. Cada ladrillo del tipo 1 requiere el doble de tiempo en mano de obra que el segundo tipo. Datos de producción de la compañía Guabira Departamento 1 2 3 Producto 1 2 1 2 1 3 2 3 8. Determine el número de ladrillos a ser producidos de cada tipo para maximizar el beneficio. Datos del equipo forestal de excavación. sectormatematica./pulg2 3. Herbert. El costo y las propiedades de cada aleación se dan en la tabla. VINTO produce el acero mezclando dos aleaciones. Wrigth.htm  http://www. Hillier.7 Bibliografía  MODELOS LINEALES DE OPTIMIZACION – Rafael Terrazas Pastor [Segunda Edición]  INVESTIGACIÓN DE OPERACIONES – Hamdy A. Supóngase que se puede determinar la resistencia a la tracción de una mezcla promediando las resistencias de las aleaciones que se mezclan.Capítulo 3 Texto Guía Alumno . 0. Gerald J.52% 1% 1.8 Enlaces  http://www.investigacion-operaciones. resistencia a la tracción de por lo menos 45000 lb. Por ejemplo.5% de carbono. Todo el acero producido por VINTO tiene que cumplir con las siguientes especificaciones: 3.6 (50000). tiene una resistencia a la tracción de 0.2% de níquel.5% 3% 4% 42000 lb.htm 47 . [Sexta Edición] 3.9 a 1.com/contenido./pulg2. 1./pulg2 50000 lb. Lieberman. Taha [7 a.2 a 3.5% de silicio. Utilizar método gráfico de la programación lineal para determinar como minimizar los costos de producción de una tonelada de acero.4 (42000) + 0. una mezcla de una tonelada que se compone de 40% de la aleación 1 y de 60% de la aleación 2. Tabla Costo por tonelada (dólares) Porcentaje de Silicio Porcentaje de níquel Porcentaje de carbono Resistencia a la tracción Aleación 1 190 Aleación 2 200 2% 2. Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz.cl/media/proglineal.Sistemas de Ingeniería 10. Gordon  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S.8 a 2. La transición de la solución del punto de esquina geométrico hasta el método símplex implica un procedimiento de cómputo que determina en forma algebraica los puntos de esquina. Su estrategia consiste en explorar soluciones básicas hasta llegar a la óptima.Sistemas de Ingeniería CAPÍTULO 4 PROGRAMACIÓN LINEAL .1 Introducción El método símplex es un procedimiento general para resolver problemas de programación lineal desarrollado por George Dantzig en 1947. Este resultado es la clave del método símplex algebraico y general para resolver cualquier modelo de programación lineal. Cada iteración desplaza la solución a un nuevo punto de esquina que tiene potencial de mejorar el valor de la función objetivo. El algoritmo símplex es un método algebraico de programas lineales que aprovechan las propiedades de las soluciones básicas.MÉTODO SÍMPLEX 4. para después manipular esas ecuaciones en una forma sistemática. lo que hace que la computadora sea una herramienta esencial para resolver los problemas de programación lineal. Una propiedad general del método símplex es que resuelve la programación lineal en iteraciones. 4.  Todas las variables son no negativas.2 Espacio de soluciones en forma de ecuación Para estandarizar. Por consiguiente. Esto se logra convirtiendo primero a todas las restricciones de desigualdad en ecuaciones. está comprobado que es un método extraordinariamente eficiente que se usa en forma rutinaria para resolver problemas grandes en las computadoras de hoy en día. la representación algebraica del espacio de soluciones de programación lineal se forma bajo dos condiciones:  Todas las restricciones (excepto las de no negatividad) son ecuaciones con lado derecho no negativo. de modo que la exploración se dirija siempre en la dirección que asegure una mayor aproximación a dicho óptimo. con la ayuda del computador. puede resolver problemas de programación lineal hasta con varios millares de variables y restricciones. El método símplex implica cálculos tediosos y voluminosos. las reglas computacionales del método símplex se adaptan para facilitar el cálculo automático. El proceso termina cuando ya no se pueden obtener mejoras. También se usan extensiones y variaciones del método símplex para realizar análisis pos-óptimo (incluyendo el análisis de sensibilidad) sobre el modelo.Capítulo 4 Texto Guía . El método gráfico del Capítulo 3 indica que la solución óptima de un programa lineal siempre esta asociada a un punto de esquina del espacio de soluciones. El método símplex. 48 . siempre son no negativas. esto es: x1 . La conversión de (≥) a ecuación se logra restando una variable de excedencia. y en ese caso el lado izquierdo representaría el uso de ese recurso limitado por parte de las actividades (variables) del modelo. si es necesario multiplicando ambos lados de la ecuación resultante por -1. la cantidad por la que el lado izquierdo es mayor que el limite mínimo (lado derecho) representa un excedente o superfluas. Como tal. La diferencia entre el lado derecho y el lado izquierdo de la restricción (≤) representa por consiguiente. se agrega una variable de holgura al lado izquierdo de la restricción. Por ejemplo en el modelo de la constructora (ejemplo 3. o cantidad no usada. h1.2. la cantidad no usada u holgura del recurso. las restricciones se pueden convertir en la siguiente ecuación: x1 + h1 = 6 x2 + h2 = 10 h1.x2 . Esta condición se puede satisfacer siempre. un límite inferior para las actividades del modelo de programación lineal. del lado izquierdo de la desigualdad. En las restricciones (≤). la restricción representa el requisito mínimo de arena y esta dado como: 15x1 + 5x2 ≥ 100 [R1] Si se define como S1 como una variable de excedencia se puede convertir la restricción en la ecuación siguiente: 15x1+ 5x2 + S1= 100 S1 ≥ 0 Es importante observar que las variables de holgura y excedencia.1 Conversión de desigualdades a ecuaciones El método símplex requiere que las restricciones sean ecuaciones (o restricción con relación de desigualdad). Por ejemplo.1). y se obtiene un lado derecho no negativo.Capítulo 4 Texto Guía .1) la restricción asociada con la disponibilidad de camiones esta dada como: x1 ≤ 6 [R2] x2 ≤ 10 [R3] Si se define h1 como la holgura. h2 ≥ 0 Una restricción (≥) establece. Para convertir una desigualdad (≤) en ecuación.h1 = 3 49 . el lado derecho se puede imaginar como representando el limite de disponibilidad de un recurso. normalmente. El único requisito que queda es que el lado derecho de la ecuación que resulte sea no negativo. que es lo que se busca. h2 y S1. Cualquier inecuación puede ser convertida en una ecuación agregando una cantidad no negativa en el lado de menor valor de la inecuación. en el modelo de la constructora (ejemplo 3. Por ejemplo la restricción -x1 + x2 ≤ -3 Equivale directamente a la ecuación -x1 + x2 + h1 = -3 h1 ≥ 0 Ahora se multiplican ambos lados por -1.Sistemas de Ingeniería 4. Suponga que la localización del almacén debe estar a la izquierda del origen. Utilizando un sistema fijo de coordenadas. x1 es no positivo y x2 no esta restringida. Es necesario llevar a cabo una convención adicional. negativa o cero). respectivamente. (es decir.2. De manera parecida. las variables que han aparecido en todos los programas lineales han sido no negativas. puede ser positiva. se puede restringir una variable que sea no positiva (≤ 0) e. en algunos problemas.Sistemas de Ingeniería Ejemplo de aplicación 4. 50 . Maximizar Sujeto a: 2x1 – x2 + 3x3 x1 – x2 + x3 3x1 + 2x2 + 2x3 + h1 x1 – S2 x1. según se describe a continuación.1 Maximizar Sujeto a: 2x1 – x2 + 3x3 x1 – x2 + x3 = 10 3x1 + 2x2 + 2x3 ≤ 15 x1 ≥3 x1 ≥0 x2 ≤0 x3 No restringida Conversión a ecuaciones o en forma estándar. un valor negativo indica una localización a la izquierda. con respecto al origen: x1 = Coordenada x de la localización del almacén x2 = Coordenada y de la localización del almacén Estas dos variables no están restringidas. h1. un valor positivo o negativo de x2 indica una localización arriba o abajo del origen. suponga que debe localizar un almacén en una ciudad. usted define las siguientes dos variables de decisión. 4. puede no estar restringida. S2 x2 x3 = 10 = 15 =3 ≥0 ≤0 No restringida No todas las variables son no negativas. incluso. Verá ahora cómo convertir un problema con variables no restringidas y no positivas a la forma estándar. de modo que el programa lineal del ejemplo 4.Capítulo 4 Texto Guía . Esta tarea se lleva a cabo sustituyendo aquellas variables por las variables no negativas adecuadas. Esta limitación se refleja con la restricción: x1 ≤ 0 En este caso.2 Manejo de variables no restringidas y no positivas. Si embargo. Un valor positivo de x1 indica una localización a la derecha del origen. Por ejemplo. Hasta este momento.1 todavía no se encuentra en forma estándar. S2 ≥ 0 x2 ≤0 x3 No restringida En el ejemplo 4. Sustituya x2 en todo lugar donde se encuentre con el negativo de una nueva variable no negativa.1 Conversión de variables no restringidas. Ejemplo de aplicación 4. en el ejemplo 4.2.1 (b). Ejemplo de aplicación 4. h1. S2 x2 = 10 = 15 =3 ≥0 ≤0 4.Sistemas de Ingeniería 4. Para pasar un problema con esta característica a la forma estándar. x3– ≥ 0 La manera de interpretar esta sustitución es recordando que x3 puede ser positiva o negativa. x3. todo lo que resta hacer es manipular la variable no positiva x2. de la forma siguiente: x3 = x3+ – x3– x3+ . x3 .1 (b) Maximizar Sujeto a: 2x1 – x2 + 3 x3+ – 3x3– x1 – x2 + x3+ – x3– 3x1 + 2x2 + 2 x3+ – 2x3– + h1 x1 – S2 + – x1. entonces x3+ tendrá el mismo valor positivo de x3 (es decir x3+ = 5).1 (b). la variable x3 no esta restringida. y x3– será cero. cuyo símbolo se escoge arbitrariamente como x2’. cuyos símbolos se escogen de manera arbitraria como x3+ y x3–. sustituya la variable no restringida original. en todo lugar que se encuentre. dados valores no negativos para x3+ y x3–.2. es decir.1. se produce el programa lineal presentando en el ejemplo 4. lo cual significa con variables no negativas.Capítulo 4 Texto Guía . el valor de x3 se obtiene calculando el valor de x3 = x3+ – x3– Sustituyendo x3 = x3+ – x3– en el ejemplo 4. x3 . Si x3 es positiva (digamos x3 = 5).1(a). entonces x3+ ser cero y x3– será igual al valor absoluto de x3 (es decir x3– = 7). Si x3 es negativa (digamos x3 = -7).1. x2 = –x2’ x2’ ≥ 0 51 .2 Conversión de variables no positivas En el ejemplo 4. cada variable no restringida debe sustituirse con la diferencia de dos variables negativas.2.1 (a) Maximizar Sujeto a: 2x1 – x2 + 3x3 x1 – x2 + x3 = 10 3x1 + 2x2 + 2x3 + h1 = 15 x1 – S2 = 3 x1. Por ejemplo. con la diferencia de dos variables no negativas.2. h1.Alternativamente. x2’. h1.1 (c) PROGRAMA LINEAL EN FORMA ESTÁNDAR PARA EL EJEMPLO 4. x3–. x3+. Al sustituir x2 = –x2’ en el ejemplo 4.1 (b) Maximizar Sujeto a 2x1 + x2’ + 3 x3+ – 3x3– x1 + x2’ + x3+ – x3– = 10 3x1 – 2x2’ + 2 x3+ – 2x3– + h1 = 15 x1 – S2 = 3 x1.1 marca el paralelismo entre los dos métodos. x2. Este problema lineal en forma estándar es equivalente al original.1(c) es la versión en forma estándar del problema original ejemplo 4. 4.Capítulo 4 Texto Guía .1(c). Ejemplo de aplicación 4. es x2 = –x2’ = –4.1. S2 ≥ 0 El problema de programación lineal del ejemplo 4.Sistemas de Ingeniería Por ejemplo. sin en el problema en forma estándar x2’ = 4. el valor de la variable original. La figura 4.3 Transición de solución gráfica a solución algebraica Las ideas contenidas en la solución gráfica de un modelo de programación lineal son la base para desarrollar el método algebraico símplex.1 (b) se produce el programa lineal en forma estándar del ejemplo 4. se puede construir una solución óptima al problema original. 52 . Dada una solución óptima al problema en forma estándar. El método símplex en la forma de los coeficientes separados Figura 4. que son los puntos de esquina.2 Paso 0. debe corresponder a un punto de esquina del espacio de soluciones. ¿cómo se puede deducir algo parecido a partir de la representación algebraica del espacio de soluciones? La respuesta es que en la representación algebraica. Entonces los candidatos para la solución óptima. entonces el sistema de ecuaciones producirá una infinidad de soluciones. 4. Adicione las variables de holgura a todas las inecuaciones. el espacio de soluciones se representan con “m” ecuaciones lineales simultaneas y “n” variables no negativas. la cantidad “m” de ecuaciones siempre es menor o igual a la cantidad de variables “n”. 53 . y si las ecuaciones son consistentes. se determinan con las ecuaciones lineales simultáneas como sigue: En un conjunto de m  n ecuaciones (m<n).Capítulo 4 Texto Guía . Como ejemplo sencillo.Sistemas de Ingeniería En el método gráfico.2. la solución resultante. Se puede apreciar en forma visual porque el espacio gráfico de soluciones tiene una cantidad infinita de puntos de solución. Pero la ecuación x + y = 1 tiene m = 1 ecuaciones y n = 2 variables.4 Método Símplex Los pasos del símplex para resolver un problema de programación se ilustran en la figura 4. y tiene una cantidad infinita de soluciones. Cualquier punto de la recta x + y = 1 es una solución. y en el método símplex. pero. Si m = n. si se igualan a cero n – m variables. adicione las mismas variables de holgura a la función objetivo. de nuevo si es consistente. la ecuación x = 2 tiene m = 1 ecuaciones y n = 1 variables. También. si es única. y es obvio que la solución es única. pero si m < n (esto representa la mayor parte de los programas lineales). y a continuación se despejan las m variables restantes de las m ecuaciones.0. el sistema tiene una sola solución. el espacio de soluciones se delimita con los semiespacios que representan las restricciones. cada una con la utilidad unitaria de Bs. Ya demostramos como se representa el espacio de soluciones de un programa lineal en forma algebraica. requiere que una variable no básica. Paso 3. Para llevar a cabo este paso necesitamos convertir el sistema original de ecuaciones. Encuentre los valores de las restantes variables básicas. La columna pivote es la columna de coeficiente que están asociadas con la variable no básica que ha sido escogido para convertirse en la variable básica entrante. Observe la figura 4. sin violar alguna de las restricciones en el modelo. en la solución actual.Capítulo 4 Texto Guía . La variable básica saliente no es de libre escogencia. Ahora estamos en la fase iterativa del método. Paso 2. 54 . Cuando los valores de los coeficientes del renglón Z sean todos ≥ 0 (caso maximización) o ≤ 0 (caso minimización) se habrá alcanzado el óptimo factible. Ahora hemos identificado las variables entrantes y salientes. llamada la variable básica entrante. Fila pivote 3. Falta determinar los valores nuevos del resto de las variables. Encuentre una solución básica factible inicial para el sistema de ecuaciones. El paso 3 tiene dos partes: determinar la variable a salir de la base y resolver para los nuevos valores de las variables básicas. La nueva variable básica tiene que aportar un mejoramiento (aportar una utilidad más alta en caso de Max) sobre la solución básica factible actual. Tales son: 1. Resuelva para la nueva solución básica factible “MEJOR”. Nuestra meta es escoger una variable básica para remover. escogemos la variable no básica que incremente la utilidad z en la mayor proporción. Esto puede ser hecho en el modelo de programación lineal por inspección. el proceso se llama operaciones de renglón de Gauss-Jordan.). Solución óptima.2 que vamos al paso 3 y regresamos al paso 2 y seguimos repitiendo estos dos pasos hasta que tenemos una solución básica factible para terminar en el paso 4. tal que la variable entrante pueda tener un valor tan grande como sea posible.Sistemas de Ingeniería Paso1. Por consiguiente. Esta iteración Paso 2 y 3. Las candidatas a convertirse la variable básica entrante son solamente las variables no básicas. ¿Cuál de las variables no básicas escoger?. Número pivote. En cada iteración el método símplex se mueve de una solución básica factible actual a una solución básica factible adyacente. Paso 4. La primera necesidad es entender ciertos términos claves antes de aplicar los pasos 2 y 3 del método símplex para un problema dado en la forma de los coeficientes separados. remplace una variable básica llamada variable básica saliente. Paso 3 (Cont. Columna pivote 2. Encuentre una solución básica factible mejor. 1. x2 ≥ 0 Estandarizando: Max Z = 8x1 + 5x2 + 0h1 + 0h2 + 0h3 Restricciones: 2x1 + x2 + h1 = 500 x1 + h2 = 150 m=3 x2 + h3 = 250 x1. Para encontrar una solución mejor: Escogemos la variable que se va a convertir en variable básica entrante y es la que tiene el coeficiente más negativo en la función objetivo en caso de maximización (coeficiente más positivo en caso de minimización) Ejemplo de aplicación 4. 3. Determine el número de ladrillos a ser producidos de cada tipo para maximizar el beneficio. h2 = 150 y h3 = 250 variables básicas 55 . h1. La fila pivote es la fila de coeficientes que contiene la variable básica actual. El mercado limita las ventas diarias del tipo 1 y 2 a 150 a 250 ladrillos respectivamente.Sistemas de Ingeniería 2. Suponga que los beneficios por cada ladrillo son de Bs. h2. Si todos los ladrillos son del tipo 2. h3 ≥ 0 n=5 n – m = 5 – 3 = 2 variables no básicas m = 3 variables básicas Entonces: x1 = x2 = 0 variables no básicas y por lo tanto h1 = 500. Sea x1 = # de ladrillos del tipo 1 x2 = # de ladrillos del tipo 2 Función objetivo: Restricciones: Max Z = 8x1 + 5x2 2x1 + x2 ≤ 500 x1 ≤ 150 x2 ≤ 250 x1 . x2. Cada ladrillo del tipo 2 requiere el doble de tiempo en mano de obra que el primero tipo.2 Una compañía produce dos tipos de ladrillos.5 para el tipo 2. es la que se ha escogido como la variable básica saliente. El número pivote es el coeficiente que esta en la intersección entre la fila pivote y columna pivote Cada coeficiente de las variables de fila (z) indica cuanto decrecerá la utilidad z por unidad de incremento en esa variable.8 para el tipo 1 y Bs. la compañía puede producir un total de 500 ladrillos al día.Capítulo 4 Texto Guía . y que contiene coeficiente +1. usamos la columna de la variable básica. Recuerda que: La variable escogida como variable básica saliente es la variable básica actual que permite a la variable básica entrante x1 tener el valor más grande posible sin violar alguna de las restricciones del modelo. y por tanto la variable básica saliente.Sistemas de Ingeniería Tabla inicial o iteración cero. Por tanto el renglón de h2 de la tabla 1 pasa a ser la fila pivote y h2 se convierte en la variable saliente. Básica x1 x2 h1 h2 h3 h1 2 1 1 0 0 solució n 500 h2 1 0 0 1 0 150 h3 Z 0 -8 1 -5 0 0 0 0 1 0 250 0 Tabla 1 Para encontrar una solución mejor: Escogemos la variable que se va a convertir en variable básica entrante en el caso de maximización es la que tiene el valor más negativo en la fila de la función objetivo. es la que va a ser la variable saliente. Entonces. En resumen: La fila pivote. es la fila que contiene la razón Solución/Coeficiente más pequeña haciendo caso omiso de las variables (y por ende de las filas) cuyo denominador sea cero o negativo. Básica h1 x1 x2 h1 h2 h3 2 1 1 0 0 solució n 500 h2 1 0 0 1 0 150 0 1 Z -8 -5 columna pivote 0 0 0 0 1 0 250 0 h3 Paso3. x1 remplaza a h1 en la base. el renglón de Z de la tabla símplex 1 en este caso x1 y será la columna pivote. la columna pivote y la columna de solución y se calculan las razones entre los valores y los coeficientes tal como se muestra en seguida. Ahora tenemos que determinar cuál de las variables básicas actuales h1.Capítulo 4 Texto Guía . Para decidir cual variable sale. donde h2 es la variable básica actual. Variable Básica x1 solució Razon del n solución/coeficiente h1 2 500 500/2 =250 h2 1 150 150/1 =150 minima razon =150 h3 Z 0 -8 250 0 250/0 = ∞ Ignorar El mínimo entre 250 y 150 es 150 que tiene lugar en el renglón de h2. h2 o h3. 56 . o sea. Encontrar la nueva solución básica factible. Esto conduce a la nueva tabla 2. Nuevo renglón h3 = (renglón actual) – (0) * (nueva fila pivote). se obtiene la nueva tabla símplex. Como el número intersección entre la columna pivote y fila pivote es +1 entonces.Sistemas de Ingeniería Tanto la columna pivote (la variable básica entrante) como la fila pivote (la variable básica saliente) son delineadas en la próxima versión de la tabla 1. Cada uno de los coeficientes restantes en la columna pivote tienen que ser convertidos a 0. remplazando el renglón h2 por el nuevo renglón x1. Nuevo renglón Z = (renglón actual) – (–8) * (nueva fila pivote). dividimos cada coeficiente de la fila pivote por el número pivote. Estos cálculos se aplican a la tabla1 en la siguiente forma: Nuevo renglón h1 = (renglón actual) – (+2) * (nueva fila pivote). Nuevo renglón = (renglón actual) – (su coeficiente en la columna pivote) * (nueva fila pivote). Esto es. Para hacer un cambio de base usando la tabla símplex. fila pivote número pivote Básica x1 x2 h1 h2 h3 h1 2 1 1 0 0 solució n 500 h2 1 0 0 1 0 150 h3 0 1 0 0 1 250 Z -8 -5 0 0 0 0 columna pivote Tabla 1 Paso 3 (Cont. todos los demás reglones incluyendo Z. Para lograr el punto 1.Capítulo 4 Texto Guía . El número pivote tiene que ser convertido +1 y la variable básica entrante remplaza la variable básica saliente en la columna de las variables básicas. Ejecutando estas adiciones y multiplicaciones de reglones en la tabla 1.). 1º iteración Básica h1 x1 x2 h1 h2 h3 0 1 1 -2 0 solució n 200 x1 1 0 0 1 0 150 h3 Z 0 0 1 -5 0 0 0 8 1 0 250 1200 Tabla 2 Para lograr el punto 2. 57 . 2. 2. éste es el número pivote. necesitamos lo siguiente: 1. que la variable no básica x2 tiene como coeficiente –5. 58 . Encontrar los valores de las variables básicas.Sistemas de Ingeniería De la tabla 2 tenemos ahora: h1 =200 x1 = 150 h3 =250 Z = 1200 x2 = 0 h2 = 0 y Esto completa el paso 3 del método símplex. Encontrar la solución factible mejor. Para lograr el punto 1 dividimos cada coeficiente de la fila pivote por el número pivote. constituyen una solución factible y producen una utilidad de Z = Bs./Coef. Entonces. Paso 3. Lo que quiere decir. para ser remplazada por x2.1200 si x2 tiene un valor positivo. 200/1 = 200 150/0 = ∞ 250/1 = 250 Columna pivote Tabla 2 Utilizando la columna pivote. h1 es la variable saliente. en el modelo original para verificar que estos.  Cada uno de los coeficientes restantes en la columna pivote tienen que ser convertidos a 0. Esto conduce a la nueva tabla 3. x2 se convierte en la columna pivote (o x2 pasa a ser la variable básica entrante). remplazando el renglón h1 por el nuevo renglón x2. Paso 2.Capítulo 4 Texto Guía . Esto se muestra en seguida en la tabla 2. ¿Es óptima la solución básica de la tabla 2? Para responder esta pregunta tenemos que regresar al paso 2 del método símplex. Ya que el mínimo entre 200 y 250 esta en el renglón de h1 de la tabla 2. Esto es. Determinando la mínima razón Solución/Coeficiente. el renglón de h1 se convierte en la fila pivote (o h1 pasa a ser la variable básica saliente) y +1 es el número pivote. Usted puede sustituir los valores de las 5 variables anteriores. ¿Puede haber una solución básica factible mejor? Observemos en el renglón de Z de la tabla 2. x2 y la columna de solución de la tabla 2 se obtiene la razón mínima. que se puede incrementar la utilidad anterior de Bs.1200. Paso 3 (Cont.). En el Paso 3 necesitamos lo siguiente:  El número pivote tiene que ser convertido +1 y la variable básica entrante remplaza la variable básica saliente en la columna de las variables básicas. fila pivote numero pivote Básica h1 x1 0 x2 1 h1 1 h2 -2 h3 0 solució n 200 x1 h3 Z 1 0 0 0 1 -5 0 0 0 1 0 8 0 1 0 150 250 1200 Soluc. 2200 si h2 tiene un valor positivo. que se puede incrementar la utilidad anterior de Bs. Determinando la mínima razón Solución/Coeficiente. Nuevo renglón Z = (renglón actual) – (–5) * (nueva fila pivote). h2 se convierte en la columna pivote (o h2 pasa a ser la variable básica entrante). Paso 3. Encontrar la solución factible mejor.Capítulo 4 Texto Guía . Ejecutando estas adiciones y multiplicaciones de reglones en la tabla 2. Lo que quiere decir. Nuevo renglón = (renglón actual) – (su coeficiente en la columna pivote) * (nueva fila pivote). ¿Puede haber una solución básica factible mejor? Observemos en el renglón de Z de la tabla 3. que la variable no básica h2 tiene como coeficiente –2. Nuevo renglón h3 = (renglón actual) – (+1) * (nueva fila pivote). todos los demás reglones incluyendo Z. se obtiene la nueva tabla símplex 3. el renglón de h3 se convierte en la fila pivote (o h3 pasa a ser la variable básica saliente) y +2 es el número pivote. Paso 2. en el modelo original para verificar que estos. 59 . constituyen una solución factible y producen una utilidad de Z = Bs. La nueva solución básica factible es: Variables básicas x2 =200 x1 = 150 h3 =50 Z = 2200 y Variables h1 = 0 h2 = 0 no básicas Esto completa el paso 3 del método símplex. Estos cálculos se aplican a la tabla anterior en la siguiente forma: Nuevo renglón x1 = (renglón actual) – (0) * (nueva fila pivote). Usted puede sustituir los valores de las 5 variables anteriores.Sistemas de Ingeniería 2º iteración Básica x1 x2 h1 h2 h3 x2 0 1 1 -2 0 solució n 200 x1 1 0 0 1 0 150 h3 Z 0 0 0 0 -1 5 2 -2 1 0 50 2200 Tabla 3 Para lograr el punto 2. ¿Es óptima la solución básica de la tabla 3? Para responder esta pregunta tenemos que regresar al paso 2 del método símplex.2200. Entonces. dividimos cada coeficiente de la fila pivote por el número pivote. Para lograr el punto 1.5 1 25 2250 Tabla 4 Para lograr el punto 2.5 125 h2 Z 0 0 0 0 -0.5 0 -0.). remplazando el renglón h1 por el nuevo renglón x2. Ejecutando estas adiciones y multiplicaciones de reglones en la tabla 3. Paso 3 (Cont. Esto es. fila pivote Básica x2 x1 h3 Z x1 0 1 0 0 x2 1 0 0 0 h1 1 0 -1 5 h2 -2 1 2 -2 solució Soluc. h2 y la columna de solución de la tabla 3 se obtiene la razón mínima. Nuevo renglón x1 = (renglón actual) – (+1) * (nueva fila pivote). Nuevo renglón = (renglón actual) – (su coeficiente en la columna pivote) * (nueva fila pivote). se obtiene la nueva tabla símplex 4. n 200 200/-2 = -100 150 150/1 = 150 50 50/2 = 25 2200 número pivote h3 0 0 1 0 Columna pivote Tabla 3 Utilizando la columna pivote. Básica x1 x2 h1 h2 h3 x2 0 1 0 0 1 solució n 250 x1 1 0 0.  Cada uno de los coeficientes restantes en la columna pivote tienen que ser convertidos a 0. 3ª iteración – Tabla óptima. Encontrar los valores de las variables básicas. todos los demás reglones incluyendo Z. Nuevo renglón Z = (renglón actual) – (–2) * (nueva fila pivote). Ya que el mínimo entre 150 y 25 esta en el renglón de h3 de la tabla 3.5 4 1 0 0. Esto conduce a la nueva tabla 4.Sistemas de Ingeniería Esto se muestra en seguida en la tabla 3. En el Paso 3 necesitamos lo siguiente:  El número pivote tiene que ser convertido +1 y la variable básica entrante remplaza la variable básica saliente en la columna de las variables básicas. Estos cálculos se aplican a la tabla anterior en la siguiente forma: Nuevo renglón x2 = (renglón actual) – (–2) * (nueva fila pivote)./Coef. para ser remplazada por h2. h3 es la variable saliente.Capítulo 4 Texto Guía . 60 . Sistemas de Ingeniería La nueva solución básica factible es: Variables básicas x2 =250 x1 = 125 h2 =25 Z = 2250 y Variables h1 = 0 h3 = 0 no básicas Esto completa el paso 3 del método símplex. h2 y h3 son cero o positivos. La solución básica factible actual es la óptima. en el modelo original para verificar que estos.Capítulo 4 Texto Guía . Entonces. porque todos los valores del renglón de Z son ≥ 0 (caso maximización). Los métodos de penalización son: el Método de la M (M se tipifica como un valor mucho muy grande) y el método de las dos fases. estas variables artificiales se convierten en no básicas con un valor de cero. Paso 2. La solución dada en la tabla 4 es óptima ya que los coeficientes de las variables no básicas h1. Encuentre una solución básica factible mejor. ¿Es óptima la solución básica de la tabla 4? Para responder esta pregunta tenemos que regresar al paso 2 del método símplex. 4. se añaden variables artificiales. Paso 4.  Para las restricciones de mayor o igual e igualdades. Usted puede sustituir los valores de las 5 variables anteriores. terminamos el Paso 4. Estas variables artificiales sirven como un artificio matemático que facilitan la solución y ayudan a que la matriz identidad aparezca en las columnas de las variables básicas. constituyen una solución factible y producen una utilidad de Z = Bs. se emplean los llamados métodos de penalización. 61 . de otro modo se puede detectar que el problema no tiene solución básica factible.5 Método de penalización Para resolver problemas que incluyen otro tipo de restricciones (mayor o igual (≥) e igualdad (=)). de ahí su nombre. En problemas de este tipo y generalmente después de todo el procedimiento de solución (si el procedimiento tiene solución factible). Estos métodos siguen básicamente la misma metodología de solución que el algoritmo símplex y simplemente varían en los siguientes puntos.2250.  La iteración cero o paso inicial debe ser corregida en función de las modificaciones que se hagan en la función objetivo donde las variables artificiales aparecen con penalizaciones.  Las variables básicas iniciales que corresponden a la tabla inicial o iteración cero deben incluir a las variables artificiales (ya que como se verá sus columnas forman parte de la matriz identidad). las variables artificiales deben ser cero en la tabla inicial.5. S3.  Obtenida la tabla corregida en la función objetivo. h2. Este artificio se lo realiza con el objeto de agrandar la región factible. sin embargo a las variables artificiales se las penaliza con un valor grande de –M (caso Max) y/o +M (caso Min). Ejemplo de aplicación 4.3 Función objetivo: Restricciones: Min Z = 5x1 + 1x2 x1 + x2 = 5 x1 ≤3 x1 + 3x2 ≥ 12 x1 . h2 = 3 y R2 = 12 variables básicas m=3 n=6 Observe que a las restricciones de igualdad (1) se añade una variable artificial R1. A la restricción (2) que es del tipo menor o igual se añade una variable de holgura h2 y a la restricción (3) que es del tipo mayor o igual se resta una variable de excedencia y una variable artificial R3.1 Texto Guía . poder converger hacia el resultado óptimo y lograr la matriz identidad para establecer m variables básicas iniciales. Si un problema tiene una solución factible.Capítulo 4 4. R1. pero sus coeficientes en la función objetivo no son cero sino M. x2 ≥ 0 (1) (2) (3) Estandarizando: Min Z = 5x1 + x2 + 0h2 + 0S3 + MR1 + MR3 Restricciones: x1 + x2 + R1 =5 x1 + h2 =3 x1 + 3x2 – S3 + R3 = 12 x1. 62 .Sistemas de Ingeniería Método de la “M” El método de la M trabaja de la siguiente manera:  Al poner en la forma estándar se añaden variables de holgura a las restricciones del tipo menor o igual.  En la función objetivo las variables de holgura y superfluas tienen coeficientes de cero. variables artificiales a las restricciones de igualdad y variables de excedencia o superfluas y artificiales a las restricciones mayor o igual. esto quiere decir que deben ser no básicas. se procede a continuar con los pasos del símplex hasta llegar al resultado óptimo. x2. entonces deberán volverse cero haciendo una corrección a la función objetivo y utilizando para ello operaciones elementales de la fila con aquellos renglones que incluyen a estas variables. R3 ≥ 0 n – m = 6 – = 3 variables no básicas m = 3 variables básicas Entonces: x1 = x2 = S3 = 0 variables no básicas y por lo tanto R1 = 5. Básica x1 x2 S3 R1 h2 R3 sol. entonces variable entrante x2 y saliente R3 Básica x1 x2 S3 R1 h2 R3 sol.333 1 h2 1 0 0 0 1 0 3 x2 0.5 0 -0. R1 0. por tanto al cumplirse estas deben ser las variables básicas iniciales. Según el análisis de la función objetivo las candidatas a ser variables básicas serian h2 y S3 (por tener coeficiente cero en la función objetivo). si planteamos la tabla inicial nos podemos dar cuenta que las columnas de las variables h2.5 1. Entonces: Tabla inicial o iteración cero.5 3. El problema tiene tres variables básicas porque se tienen tres restricciones y estas variables básicas deben incluir inicialmente a las artificiales. R1 1 1 0 1 0 0 5 h2 1 0 0 0 1 0 3 R3 1 -5 3 -1 -1 0 0 -M 0 0 1 -M 12 0 Z Tabla Corregida.5 x2 0 1 -0. R1 1 1 0 1 0 0 5 h2 1 0 0 0 1 0 3 R3 1 -5 + 2M 3 -1 + 4M -1 -M 0 0 0 0 1 0 12 17M Z 2ª iteración.667 0 0. sino M.333 1 0 -0. Si M = 100.Sistemas de Ingeniería En este método las variables artificiales se penalizan en la función objetivo con un valor de +M (caso Min). 1º iteración Básica x1 x2 S3 R1 h2 R3 sol.Capítulo 4 Texto Guía .5 1. entonces por operaciones elementales de renglones hay que volver cero estos coeficientes para cumplir con una de las propiedades de la definición de variable básica (esto se logra multiplicando por –M al renglón 1 y 3 y sumando estos renglones al renglón de la función objetivo).5 1 0.333 0 0 0. Si M = 100. Finalmente se puede notar que los coeficientes de R1 y R2 en la función objetivo no son cero.5 Z 0 0 2 7-M 0 -2 -M 11 63 . R1 y R2 forman la matriz identidad.5 h2 0 0 -0. x1 1 0 0.5 -1.5 1. Sin embargo. entonces variable entrante x1 y saliente R1 Básica x1 x2 S3 R1 h2 R3 sol.333 1 -0.5 -0.5 0 0.333 4 Z -14/3 + 2/3 M 0 -1/3 + 1/3 M 0 0 1/3 -4/3 M 4 +M 2ª iteración. estos coeficientes deben ser transformados en cero operando con las filas que incluyen a estas variables y que al final deben sumarse al renglón de r. de R1.. desde un punto de vista computacional..2 Método de las dos fases El método de las M. 64 .o.Sistemas de Ingeniería 3ª iteración. En la solución óptima hallada se puede notar que las variables artificiales han desaparecido de la base convirtiéndose en no básicas. por tanto el problema tiene solución óptima factible y es la que aparece en la última tabla.  Se construye una función objetivo (Min) adicional (r) que solo tome en cuenta a las variables artificiales.. caso contrario no tiene solución factible y termina el proceso). variables artificiales a las restricciones de igualdad y variables superfluas y artificiales a las restricciones de mayor o igual. haciendo que la solución verdadera se distorsione. entonces variable entrante S3 y saliente x1 Básica x1 x2 S3 R1 h2 R3 sol.  Las variables básicas iniciales que corresponden a la tabla inicial o iteración cero deben incluir a las variables (ya que como se vera sus columnas forman parte de la matriz identidad). trabaja también con variables artificiales y no considera la introducción de un valor M...  En la función objetivo las variables de holgura y superfluas tienen coeficientes de cero. pero sus coeficientes en la función objetivo no son cero sino uno. es por eso que computacionalmente resulta más eficiente. las variables artificiales deben ser cero en la tabla final. El método de las dos fases. (Nuevo renglón r = Renglón anterior + Coef. S3 2 0 1 3 0 -1 3 h2 1 0 0 0 1 0 3 x2 1 1 0 1 0 0 5 Z -4 0 0 1-M 0 -M 5 Tabla óptima. debido a que maneja un valor grande M que debe ser introducido al computador y que participa en las operaciones de cálculo.Capítulo 4 Texto Guía . esto quiere decir que deben volverse no básicas.)  Obtenida la tabla corregida en la función objetivo. sin embargo las variables artificiales tienen un coeficiente de uno.. Este error puede ser propagado. Si M = 100. 4. Si el problema tiene una solución factible. Esto garantiza que las variables artificiales sean cero y desaparezcan de la base. puede arrastrar errores de redondeo.5. En la función objetivo desaparece también el valor de M. n.n * renglón de R1. de f. Las características de este método son: FASE 1  Se formula en la forma estándar añadiendo variables de holgura a las restricciones del tipo menor o igual. se procede a iterar siguiendo los pasos del símplex hasta llegar a que la función objetivo sea cero (si el problema tiene solución factible. Costo por Onza Bs.13x2 ≥ 1 (1) 0. 1.12x1 + 0. min r = R1 + R2 Sujeto a: 0. x 2 . 0. 14 Bs.13 mg. S2 ≥ 0 FASE I. respectivamente.60 mg.59x2 – S2 = 10 x1.12 x1  0.  Se verifica la optimidad viendo si todos los coeficientes de la función objetivo son mayores o iguales que cero (caso Max). x2 ≥ 0 Estandarizando: Min Z = 14x1 + 24x2 + 0S1 + 0S2 Restricciones: 0. R 2  0 m2 n6 65 .12x1 + 0.59x2 ≥ 10 (2) x1 . Una vez en el supermercado. diarios. se informa acerca de los dos únicos desayunos que le agradan: A y B.4 Un alumno que repite la materia de sistemas de ingeniería acude al psiquiatra y este le informa que su falta de entusiasmo se debe a un déficit de tiamina y niacín prescribiéndole un mínimo de 1 mg. x2.Sistemas de Ingeniería FASE 2  Se toma en cuenta la ultima tabla de la FASE 1 (se pueden eliminar las columnas que corresponden a las variables artificiales ya que estas se habrán hecho cero) y se introducen los valores originales de la función objetivo.Capítulo 4 Texto Guía . esto se corrige con operaciones elementales de fila. El alumno. S1.60x1 + 1.13x2 – S1 = 1 0. 24 Determinar la mezcla a realizar para que el costo sea mínimo y asegure la mitad de la dosis de vitaminas prescritas por el psiquiatra.59 x 2  S 2  R2  10  x 1 . Sea: x1 = Cereal A por onza x2 = Cereal B por onza Función objetivo: Min Z = 14x1 + 24x2 Restricciones: 0. trata de hacer mínimo el costo de las vitaminas. S 2 . R 1 . Cereal Tiamina por Onza Niacín por Onza A B 0.12 mg.60x1 + 1.59 mg.13 x 2  S1  R1  1   0. y 10 mg. 0. Se presentara el problema de que las variables básicas finales no tienen coeficiente cero en la función objetivo. Ejemplo de aplicación 4. S1 .60 x1  1. que no cuenta con demasiados recursos económicos. El doctor le sugiere que obtenga la mitad de la dosis mediante un desayuno a base de cereales. si esto no procede a iterar con los pasos del símplex hasta encontrar el óptimo. 2º Iteración.59 0 r Tabla Corregida o 1º Iteración. Variable entrante S2 y la variable saliente R1. El nuevo valor del renglón r se halla de la siguiente manera: Nuevo renglón r = Renglón anterior + Coef.00 3º Iteración..29 0. por completo y pasar a la FASE II./Coef Var n entrante Básica x1 x2 S1 S2 R1 R1 R1 0. de f. 66 .Capítulo 4 Texto Guía . S2 R1 R1 -1 0 1 0 solució n 1 0 0 -1 0 0 -1 1 -1 10 0 Básica x1 x2 S1 R1 0. Variable entrante x2 y la variable saliente R2. la FASE I produce la solución básica factible S2 = 2.6 0 1. x2 = 7.12 0.08 0 0 0.13 R2 0..08 6./Coef Var n entrante Básica x1 x2 S1 S2 R1 R1 R1 0.. de R1.72 1.n * renglón de R1.18 -10.69..Sistemas de Ingeniería n – m = 6 – 2 = 4 variables no básicas m = 2 variables básicas Entonces: x1 = x2 = S1 = S2 = 0 variables no básicas y por lo tanto R1 = 1 y R2 = 10 variables básicas Observe que a las restricciones de mayor o igual se añade una variable artificial R1 y R2 respectivamente Tabla inicial o iteración cero.23 -1 solució n 2.12 0.6 0.13 -1 0 1 0 1 7.23 x2 0.69 R2 r 0.07 1 0 0 -1 -0.07 0 -1 0.69 0 r Como mínimo de r = 0..69 0 0 0 7.o.23. Básica x1 x2 S1 S2 R1 R1 S2 0.38 0.69 -1 0 -1 7.08 0.87 0 -12.92 0 1 0 -7.29 El nuevo renglón r se usa para resolver la FASE I del problema. Razón solució Sol. las variables artificiales ya cumplieron su misión y se pueden eliminar de la tabla las columnas.72 0 -1 -1 -1 0 0 1 0 10 11 6.18 2. Llegado a este punto. n.08 1 -0.63 0. O sea: Nuevo renglón r = Renglón anterior + [(1* renglón de R1) + (1* renglón de R2)] Razón solució Sol.63 -1.59 1.23 1 12.23 x2 r 0.. 10 1.[(0* renglón de S2) + (– 24 * renglón de x2)] La tabla inicial de la FASE II resulta entonces: 4º Iteración./Coef Var entrante 5º Iteración.Coef. O sea: Nuevo renglón Z = Renglón anterior .57 x2 0 0 1 0 5.62 8. parte de la solución básica de inicio por FASE II.o. 67 .32 163. Razón Básica x1 x2 S1 S2 S2 0.87x1 – 12. Después de eliminar las columnas artificiales.23 x2 0. básicas.23 0.32 -69. de f. la FASE I es un procedimiento que transforma las ecuaciones originales de restricción en tal forma que se obtiene una solución factible básica de inicio para el problema. deben sustituirse y eliminarse con los siguientes cálculos: Nuevo renglón Z = Renglón anterior .65 Z Tabla óptima La salida de las columnas de las variables artificiales al terminar la FASE I solo se hacen cuando toda ellas sean no básicas (como ilustra el ejemplo).68 -1. como las variables básicas S2 y x2 tiene coeficiente no cero en el renglón de z. En ese caso. S2 ≥ 0 En esencia.06 -9.40 5.87 0 -12. el problema original se escribe así: Min Z = 14x1 + 24x2 Restricciones: 0.57 x2 Z 0. S1.69 -184.Capítulo 4 Texto Guía .23 1 soluci ón 2. es posible que las variables artificiales sigan siendo básicas pero a nivel cero al final de la FASE I.69S1 = 7. de var.69 0 0 0 7.92 8. Sin embargo.15 2.23 1 2.62 0 0 7.69 0 Z De nuevo.Sistemas de Ingeniería FASE II. esas variables formaran por necesidad.33 solución Sol.92 -14 1 -24 -7. La tabla asociada con la FASE II del problema es por consiguiente: Básica x1 x2 S1 S2 S2 0.69 184.69 x1. Básica x1 x1 x2 S1 S2 solución 1 0 -14.92x1 + x2 – 7.15 1 0 -7. x2. Variable entrante x1 y la variable saliente S2.23 2. básicas * renglón de var.87 0 -12.23S1 + S2 = 2. n-m 68 . para eliminar las variables artificiales cero de la solución básica..n-m a2.n-m . definirá al número pivote en forma automática (por que corresponde a la razón mínima de cero). bm)T La matriz A: a11 a21 . antes de siquiera comenzar en la FASE II 4. am1 a12 a22 . . para fijar ideas utilizaremos esta información para elaborar la tabla símplex general en forma matricial. .. Forma típica: Optimizar z = CX Sujeto a: (AI)X = b X0 Con I matriz identidad de dimensión m. . Las reglas para garantizar que una variable artificial que es cero al final de la FASE I nunca se vuelva positiva durante la FASE II. c2. la siguiente iteración dejara la variable artificial inalterada.. X = (x1. de hecho.. C =(c1. Si se observa que la variable artificial esta en el nivel cero. en el nivel cero.....Sistemas de Ingeniería En consecuencia. En este caso.6 Fundamentos matemáticos Formalizaremos los conceptos vertidos en la sección anterior.. la variable artificial asumirá un valor positivo en la siguiente iteración (¿Se da usted cuenta porque?) y se necesitara evitar que eso suceda.. se debe modificar los cálculos en la FASE II para asegurar que una variable artificial que nunca se haga positiva durante las iteraciones en esa FASE II. y como se busca. son las siguientes:  Si en la columna pivote el coeficiente de restricción correspondiente a la variable básica artificial es positivo.. . la variable artificial se vuelve no básica en la siguiente iteración. la regla de la FASE II indica obligar a la variable artificial a salir de la solución básica en cualquier momento en que su coeficiente de restricción en la columna de pivote sea positiva o negativa.. b = (b1. Para hacerlo. .. . Resumiendo.  Si el elemento de la columna pivote es cero. la razón mínima no se asociara con la variable artificial básica (0).  Si el elemento de la columna pivote es negativo. a1.. am2 . x2. xn)T. am. b2... ..Capítulo 4 Texto Guía . esta regla se puede aplicar al final de la FASE I. se obliga a la variable artificial a salir de la solución de cualquier modo..cn). . si la razón mínima resultante resulta ser positiva.. la eliminación de la solución básica no afectara la factibilidad de las variables básicas restantes... Con esto daremos paso al modelo símplex revisado. nPjxj Los vectores independientes correspondientes a “m” vectores columnas Pj de (AI) corresponde a una solución básica de (AI)X = b. En este caso los “m” vectores escogidos forman una base cuya matriz cuadrada es no singular.6. La manera más sencilla de seleccionar un punto extremo inicial es usar la base B constituida por variables de holgura y/o artificiales. se obtiene una solución básica haciendo “n-m” variables iguales a 0 y resolviendo las “m” ecuaciones con “n” incógnitas.6. Sea: (AI)X =  j=1.Capítulo 4 Texto Guía .1 Soluciones básicas y bases Algebraicamente un punto extremo del espacio factible está asociado a una solución básica de la ecuación matricial (AI)X = b. Como el sistema tiene “m” ecuaciones escalares y “n” incógnitas.1 Tabla Símplex en forma matricial1 Expresemos el programa lineal en forma matricial: Max z = CX Sujeto a: (AI)X = b X0 Subdividamos el vector X en XI y XII. 4. Entonces: B XB = b y z = CBXB O bien: 1 -CB Z = 0 0 B XB b 1 Para las operaciones matriciales ver ANEXO A 69 . Los puntos extremos adyacentes se determinan intercambiando un vector de B con un vector no básico que moverá la solución hacia la optimalidad.6.2 Método Símplex La idea general del método Símplex es comenzar en un punto extremo y desplazarse hacia un punto extremo adyacente con el objeto de mejorar el valor de la función objetivo.Sistemas de Ingeniería 4. 4. sea XB La representación de las variables básicas y B su base asociada. De esta forma la base B inicial es la matriz identidad I que obviamente es una base. entonces el problema estándar se puede escribir de la siguiente manera: (I) 1 -CI -CII z = 0 0 A I XI = b XII = 0 En una iteración cualquiera. y sea CB el vector de elementos de C asociado a XB. manteniendo la factibilidad. entonces XB representa a “m” elementos de X y B representa los vectores de (AI) correspondientes a XB.2. CII = 0 la solución básica inicial se identifica como: XB = XII.. premultiplicando a (I) se obtiene 1 CBB-1 1 -CI -CII Z CBB-1b 0 B-1 0 A I XI = B-1b XII Esta ecuación matricial se resuelve mediante la iteración símplex general (II): Básica z XB XI CBB-1A-CI B-1A XII CBB-1-CII B-1 Solución CBB-1b B-1b Esta tabla muestra los detalles del cálculo del método símplex.. por lo tanto XB y z. Por ejemplo consideremos el método símplex con variables de holgura.Capítulo 4 Texto Guía . B = I. B-1 = I Sustituyendo en (II) se obtiene el método símplex general con variables de holgura (III): Básica XI XII Solución z -CI 0 XB A I b Si utilizamos símplex con variables artificiales (variables utilizadas como variables de holgura para las restricciones que no cumplen la forma estándar). CB = CII. CB = CII = 0.. es decir. B-1 = I Sustituyendo en (II) se obtiene el método símplex general con variables artificiales y de holgura (IV): Básica XI XII Solución z CIIA-CI 0 CIIb XII A I b 70 . En este caso CII = (M. aplicando este resultado. B = I.Sistemas de Ingeniería La solución se puede expresar: z = 1 CBB-1 0 = CBB-1b XB 0 B-1 b B-1b Por lo tanto. -M) (coeficientes de penalización para la función objetivo).-M. en este caso. si se conoce B se puede encontrar en cada paso B-1. La solución básica inicial se puede expresar como: XB = XII.. .. 0 1    Una matriz identidad... . ... e2.. Sea Pr el vector de salida de la base y Pj el vector de entrada en la nueva base. em) I mxm 1 0 . .    0 0. . . Este procedimiento se ajusta muy bien a los cálculos del método símplex ya que las bases sucesivas difieren exactamente en una columna como resultado del intercambio de los vectores entrante y saliente. er-1. esto sugiere ventajas desde el punto de vista del cálculo numérico:  En problemas grandes de PL.  La naturaleza de las operaciones del método símplex. 1 0     0 0.Sistemas de Ingeniería 4.. donde ei es el i-ésimo vector unitario.. El método se basa en un procedimiento del álgebra matricial para calcular la inversa de una nueva base a partir de la inversa de otra base. las operaciones de Gauss Jordan conduce a acumulación de errores de redondeo... 71 .. Sea: Imxm = (e1. m.…) excepto en el lugar r el elemento es 1  rj y αj = B-1Pj si  rj = 0 Bsig-1 no existe. ... ξ.  j r . siempre que las dos bases difieran sólo en un vector columna. Entonces....….….. i = 1...…. 0 0   .em) Con  ij ξ = (. . e2.. por lo que se controla el error de redondeo sólo en el cálculo de B-1.Capítulo 4 Texto Guía .7 Método Símplex revisado La tabla del método símplex queda determinada por la Matriz B y B-1 por lo que las iteraciones símplex pueden diferir en la forma en que se calcule B-1. la siguiente relación asocia a B-1 y Bsig-1 Bsig-1 = EB-1 Donde: E = (e1.    . ... er+1. 0 0     0 1.... indica que no es necesario calcular todos lo elementos de la tabla. en el símplex revisado se utiliza sólo la información de B y los datos originales. cj donde Pj es cada vector no básico. x3. Paso 3: Determinación de la base siguiente: Dada la base B.Capítulo 4 Texto Guía . x2. si todos los zj . x2.Sistemas de Ingeniería Paso 1: Determinación del vector entrante Pj Calcular Y = CBB-1 para calcular zj .5 Maximizar Z = 4x1 + 3x2+ 6x3 sujeta a: 3x1 + 1x2+ 3x3 ≤ 30 2x1 + 2x2+ 3x3 ≤ 40 x1. el empate se rompe en forma arbitraria. h2 ≥ 0 72 . calcular la base siguiente: Bsig-1 = EB-1 Ejemplo de aplicación 4. XB = B-1b Paso 2: Determinación del vector saliente Pr  Dado el vector entrante Pj calcular: Los valores de las variables básicas XB = B-1b  Los coeficientes de las restricciones que determinan las variables entrantes: α j = B-1Pj El vector saliente Pr debe estar asociado a: θ = mink { ( B 1b) k  kj .cj = YPj. con  kj > 0 } Donde (B-1b)k es el elemento k de B-1b y  kj es el elemento k de α j si no se encuentra un  kj > 0. se selecciona el vector entrante Pj con el zj . el problema no tiene solución acotada. h1.cj son ≥ 0 (≤ 0) se obtiene la solución óptima: Z = CBXB.cj más negativo (positivo) para maximización (para minimización). x3 ≥ 0 (1) (2) Estandarizando: Maximizar Z = 4x1 + 3x2+ 6x3 + 0h1 + 0h2 sujeta a: 3x1 + 1x2+ 3x3 + h1 = 30 2x1 + 2x2+ 3x3 + h2 = 40 x1. h5). 3 ) 4 4 1 3 ξ = ( .6.c3) = (0.(c1.3.40)T XB = B-1b = Ib =  0 1   40   40    43   3 α =  3  = B-1P3 = IP3 = P3 =   = (3. Determinación del vector entrante Pj 1 0  Y = CBB-1 = (0.0)   2 2 3  .cj  3 1 3 Y(P1.…) excepto en el lugar r el elemento es 1  rj  53 ξ = ( j .6) = (-4.0)  0 1 Calculamos zj .  j r .3. 1 0  B-1 = I =    0 1 B = (P4.0)I = (0.-3.. XB = (h4.. Determinación del vector saliente P3 ingresa a la base 1 0  30   30       = (30.3)T    3  5 ( B 1b) k ( B 1b) 4 ( B 1b) 5 30 40 30 θ = min { } ={ } ={ .c2.Capítulo 4 Texto Guía .0).(4. } = .P2. ) 3 3 1 73 . CB = (0.Sistemas de Ingeniería  x1     3 1 3 1 0  x 2      30  2 3 01 x3      2 40      B  h  A  4 b   h5   X C = (4.0.cj más negativo por ser maximización.cj = YPj. P5) = I 1ª iteración Paso 1.  10 3 3 3 3 3 3 4 5 k 3 El vector saliente es P4.P3) .0).-6)   Selecciona el vector entrante Pj con el zj .. entonces: El vector entrante es P3. Paso 3 Determinación de la base siguiente:  ij ξ = (.0)   = (0. Paso 2. 1  0  B = 3  1 1    -1 Paso 1.P4) .c2.c4) = (2.0)   2 2 0  . 74 .em) = 1  0  E  3   1 1    Luego: Bsig-1 1  0  = EB = E   3   1 1    -1 La nueva solución básica es: 1  0  30  10   T XB = (x3.0)..10)   1 1       XB = (10. ξ.6.0).cj = YPj.0. e2. er-1.0)   Selecciona el vector entrante Pj con el zj ..cj más negativo para maximización. XB = (x3.cj 3 1 1  Y(P1. h5).-2. er+1.(c1.Capítulo 4 Texto Guía .P2..(4. Determinación del vector entrante Pj Y = CB B-1 1  0  = (6.3.Sistemas de Ingeniería E = (e1.0) = (-1. entonces: El vector entrante es P2.0)  3  = (2..0) 1 1    Calculamos zj . .10)T -1 Básica XI Solución XII CBB-1A-CI CBB-1-CII Z B-1A XB B-1 CBB-1b B-1b 1ª iteración Básica x1 x2 x3 h4 h5 Solución z 2 0 60 x3 1 1/3 1 1/3 0 10 h5 -1 10 -1 1 0 0 2 -1 1 2ª iteración C = (4. CB = (6...3. h5) = B b =  3  40   10   (10. . Determinación del vector saliente P2 ingresa a la base 1  0   30  10   T XB = B b =  3   40   10  = (10.10) 1 1        -1 1  1   32  0  1    1  -1   =  3  = ( ..Capítulo 4 Texto Guía .Sistemas de Ingeniería Paso 2.  = EB =  3 3  3 =  3  0    1    1 1    1 1   -1 La nueva solución Básica es: 1 2  20  .10) 40 3   1 1   10      20 XB = ( . E  3 0 1   Luego: Bsig-1 1 1 1   2 .er-1.1 ) 3 E = (e1.10)T 3 -1 75 ..10} = 10 . e2. ξ.. x2) = B b =  3 3     3   ( .1)T α =  2  = B P2 =  3    3   1 1   2  1   5     2 θ = min { ( B 1b) k  kj } ={ ( B 1b) 4 ( B 1b) 5 10 10 } = { . } = {30. 30    20  T XB = (x3. 0  1 . er+1. 2 ) 5 5 1 ξ = (  ...em) = 1  1 .…) excepto en el lugar r el elemento es 1  rj  32 1 ξ = ( 2 .   ij  rj .. Paso 3 Determinación de la base siguiente: ξ = (. 3 3 1 1 4 5 3 El vector saliente es P5. ... (c1. x2).1)   Como el vector entrante Pj con el zj .cj = YPj.3.0) = (1.Sistemas de Ingeniería Básica XI Solución XII CBB-1A-CI CBB-1-CII z B-1A XB B-1 CBB-1b B-1b 2ª iteración Básica x1 x2 x3 h4 h5 Solución z 1 0 0 1 1 70 x3 4 3 0 1 2 3 x2 -1 1 0 -1  1 3 1 20 3 10 3ª iteración C = (4. x2 =10. x3 = 76 . entonces la iteración dos es óptimo con: 20 .c4. Determinación del vector entrante Pj 1 2 .1)  1 1    Calculamos zj .0.P5) .  -1 Y = CBB = (6.1)   2 0 1  .c5) = (1. CB = (6. 1 2 .Capítulo 4 Texto Guía .0. XB = (x3. h1 = 0 y h2 = 0 3 Zóptimo = 70 x1= 0.3)  3 3  = (1.(4.0).  B = 3 3  1 1    -1 Paso 1.3).P4. para maximización.1.cj ≥ 0.cj Y 3 1 0  (P1.6.  3  3    CB B -1-CII  3 8 2 3  0 Obtención de los coeficientes de las restricciones  1 -1 3  2 .Sistemas de Ingeniería Ejemplo de aplicación 4.  1  0 1  B 1 A  1 0 . Utilizando la tabla Símplex en forma matricial Básica z XB XI CBB-1A-CI B-1A Solución CBB-1b B-1b XII CBB-1-CII B-1 Tenemos: 1 .86  a31 a 32  4.1 3 8  8  1 -2  3  0   4 0 b   2    3   3 1    77 .1 3  2 1 B  . 0 0  3   4 1 B b  2  .6 Dada la tabla óptima del símplex Básica x1 x2 z 0 0 x2 0 1 x1 1 0 S3 0 0 S1 3 8 1 2 1  8 1 S2 S3 Solución 2 0 ? 0 3 0 2 3 1  3 3 8 2 1 4 3 3 Hallar a) El máximo valor de Z b) Las ecuaciones originales.43 0.57 -0.57  A  a 21 a 22   3.1 3  8 8 1 -2  0  0 .86  Determinación de los valores del lado derecho de las restricciones  1 -1 3  2 .1 3 8  8  1 -2  0 0 1  a11 a 12    0 A  1 0  a 21 a 22   0 0  a31 a 32  1  Resolviendo el sistema de ecuaciones tenemos: a11 a 12  2.Capítulo 4 Texto Guía .28 2. 28 x1 + 2.1 8  8  1 -2  0  3.93 4.86 x2 ≤ 2.38  1 5.93  3.1 8  8  1 -2  c1 0  0  -c3  1   1 -1 3  2 3 0.14 1.54 x2 Sujeta a: 2.41  Determinación de los coeficientes de la función objetivo c2 c1 c2  1 -1 3  2 3 c 3 .14 x1 + 1.Sistemas de Ingeniería Resolviendo el sistema de ecuaciones tenemos: 3.54 CB   c1  3.45  0  2.45  b  2.86 x2 ≤ 5.1 8  8  1 -2  0  0  -0  1  c4 0 8 c5   3 8 0  3 2 2 3 3 0 0   Resolviendo las operaciones matriciales tenemos: c 2  1.Capítulo 4 Texto Guía .57 x1 – 0.93 5.41   Las ecuaciones originales son: Maximizar Z = 3.57 x2 ≤ 3.41 78 .45 3.43 x1 + 0.54  1 -1 3  2  3 0 .14 Para la hallar la solución óptima se utiliza la siguiente ecuación: C B B -1b  3. Capítulo 4 Texto Guía - Sistemas de Ingeniería 4.8 Casos especiales de la aplicación del Método Símplex. En esta sección se examinarán cuatro casos especiales que se presentan al aplicar el método símplex.  Degeneración  Óptimos Alternativas.  Soluciones no acotadas.  Soluciones inexistentes (o no factibles). El interés de estudiar esos casos especiales es doble: 1) presentar una explicación teórica de esos casos, y 2) presentar una interpretación práctica de lo que pudieran significar esos resultados especiales en un problema de la vida real. 4.8.1 Degeneración Al aplicar la condición de factibilidad del método símplex, se puede romper un empate en la razón mínima en forma arbitraria. Cuando se presenta un empate, al menos una variable básica será cero en la siguiente iteración, y se dice que la nueva solución es degenerada. No hay que alarmarse al manejar una solución degenerada, a excepción de una pequeña incomodidad teórica de ciclado, que describiremos en breve. Desde el punto de vista práctico, la condición indica que el modelo tiene al menos una restricción redundante. Para poder presentar mejor perspectiva de los impactos prácticos y teóricos de la degeneración presentaremos un ejemplo numérico, que resolveremos en forma algebraica y gráfica. Ejemplo de aplicación 4.7 (Solución óptima degenerada) Maximizar z = 3x1 + 2x2 sujeta a: 4x1 − x2 ≤8 4x1 + 3x2 ≤ 12 4x1 + x2 ≤ 8 x1 ,x2 ≥ 0 Estandarizando: Maximizar z = 3x1 + 2x2 + 0h1 + 0h2 + 0h3 sujeta a: 4x1 − x2 + h1 ≤8 4x1 + 3x2 + h2 ≤ 12 4x1 + x2 + h3 ≤ 8 x1 ,x2 ,h1 ,h2 ,h3 ≥ 0 79 Capítulo 4 Texto Guía - Sistemas de Ingeniería Iteración Básica x1 x2 h1 h2 h3 Solución razón 0 h1 4 -1 1 0 0 8 2 h2 4 3 0 1 0 12 3 entra x1 h3 4 1 0 0 1 8 2 sale h1 Z -3 -2 0 0 0 0 Iteración Básica x1 x2 h1 h2 h3 Solución razón 1 x1 1 -0.25 0.25 0 0 2 -8 h2 0 4 -1 1 0 4 1 entra x2 h3 0 2 -1 0 1 0 0 sale h3 Z 0 -2.75 0.75 0 0 6 Iteración Básica x1 x2 h1 h2 h3 Solución razón 2 x1 1 0 0.13 0 0.13 2 16 h2 0 0 1 1 -2.00 4 4 entra h1 x2 0 1 -0.50 0 0.50 0 0 sale h2 Z 0 0 -0.63 0 1.38 6 Iteración Básica x1 x2 h1 h2 h3 Solución 3 x1 1 0 0 -0.13 0.38 1.5 h1 0 0 1 1 -2 4 x2 0 0 1 0 0 0 0.5 0.63 -0.5 0.13 2 8.5 optimo Z En la iteración de inicio empatan h1 y h3 como variable de salida. Es la razón por la que la variable básica de salida h3 es cero en la iteración 1, y se obtiene así una solución básica degenerada. Se alcanza el óptimo después de una iteración más. ¿Qué implica la degeneración en la práctica? Véase la figura 4.1, que se muestra la solución gráfica del modelo. Pasan dos líneas por el punto óptimo (x1 = 1.5, x2 = 2). Como este es problema bidimensional, esta sobredeterminado y una de las restricciones es redundante. En la práctica, el sólo conocer que algunos de los recursos son superfluos puede ser valioso durante la implementación de la solución. Esta información también puede conducir a descubrir irregularidades en la construcción del modelo. Desafortunadamente no hay técnicas fiables para identificar las restricciones redundantes en forma directa a partir de la tabla. 80 Capítulo 4 Texto Guía - Sistemas de Ingeniería Desde el punto de vista teórico, la degeneración tiene dos implicaciones. La primera es el fenómeno de ciclos o círculos. Al ver las iteraciones símplex 1 y 2, el lector notara que el valor objetivo no mejora (z = 6). Por consiguiente, es posible que el procedimiento símplex repita una serie de iteraciones sin mejorar el valor objetivo, y nunca terminar los cálculos. Aunque hay métodos para eliminar los ciclos, estos conducen a retardos drásticos en los cálculos. Por esta razón, la mayor parte de los programas informáticos para programación lineal no prevén los ciclos, basados en el hecho que rara vez suceden en la práctica. El segundo aspecto teórico surge al examinar las iteraciones 1 y 2. Las dos, aunque difieren en la clasificación de las variables en básica y no básica, producen valores idénticos para todas las variables y el objetivo, que son: x1 = 2, x2 = 0, h1= 0, h2 = 4, h3 = 0 y z = 6 Entonces, ¿es posible detener los cálculos en la iteración 1 (cuando aparece la degeneración por primera vez) aun cuando no sea óptima? La respuesta es no, porque la solución puede ser temporalmente degenerada, lo cual nos da que la iteración 3ª es la óptima. x1 = 1.5, x2 = 2, h1= 4, h2 = 0, h3 = 0 y z = 8.5 4.8.2 Óptimos alternativos Cuando la función objetivo es paralela a un restricción obligatoria (es decir, una restricción que se satisface como ecuación en la solución óptima), la función objetivo asumirá el mismo valor óptimo, que se llama óptimos alternativos, en más de un punto de solución. El siguiente ejemplo muestra que hay una cantidad infinita de esas soluciones. También demuestra un significado práctico de encontrar óptimos alternativos. Ejemplo de aplicación 4.8 (Infinidad de soluciones) Maximizar z = 4x1 + 8x2 sujeta a: 2x1 +4x2 ≤ 10 2x1 +2x2 ≤ 8 x1 ,x2 ≥0 La figura 4.2 muestra como pueden presentarse óptimos alternativos en el modelo de programación lineal cuando la función objetivo es paralela a una restricción obligatoria. Todo punto del segmento de recta BC representa un óptimo alternativo con el mismo valor objetivo z = 20. 81 Capítulo 4 Texto Guía - Sistemas de Ingeniería Estandarizando: Maximizar z = 4x1 + 8x2+ 0h1 + 0h2 + 0h3 sujeta a: 2x1 +4x2 + h1 ≤ 10 2x1 +2x2 + h2 ≤ 8 x1 ,x2 ,h1 ,h2 ≥ 0 La siguiente tabla muestra las iteraciones del modelo. Iteración Básica x1 x2 h1 h2 Solución razón 0 h1 2 4 1 0 10 2.5 entra x2 h2 2 2 0 1 8 4 sale h1 Z -4 -8 0 0 0 Iteración Básica x1 x2 h1 h2 Solución razón 1 x2 0.5 1 0.25 0 2.5 5 entra x1 h2 1 0 -0.5 1 3 3 sale h2 Z 0 0 2 0 20 Iteración Básica x1 x2 h1 h2 Solución 2 x2 0 1 0.5 -0.5 1 tabla óptima x1 1 0 0 0 -0.5 2 1 0 3 20 Z La iteración 1 llega al óptimo x1 = 0, x2 = 2.5 y Z = 20, que coincide con el punto B de la figura 4.2. ¿Cómo saber en esta iteración que existen óptimos alternativos? Examine los coeficientes de las variables nos básicas, en la ecuación z de la iteración 1. El coeficiente de x1 no básica es cero, lo que indica que x1 puede entrar en la solución sin cambiar el valor de z, pero causando un cambio en los valores de las variables. Eso es justo lo que hace la iteración 2: dejar que x1 entre a la solución básica, con lo que se obliga a que salga h2. Esto da como resultado un nuevo punto de solución en C (x1 = 3, x2 = 1, Z =10). El método símplex solo determina los dos puntos de esquina, B y C. Se pueden determinar matemáticamente todos los puntos (x1, x2) en el segmento de recta BC como promedio ponderado no negativo de los puntos B y C. Así, dado 0 ≤ α ≥ 1 y que B: x1 = 0, C: x1 = 3, x2 = 2.5 x2 = 1 82 Capítulo 4 Texto Guía - Sistemas de Ingeniería Todos los puntos del segmento de recta BC se expresan con x1 = α (0) + (1 – α )(3) = 3 – 3α x2 = α (2.5) + (1 – α )(1) = 1 + 1.5α En la práctica, los óptimos alternativos son útiles porque permiten escoger entre muchas soluciones sin que se deteriore el valor objetivo. Por ejemplo, en este caso, la solución en B indica que solo la actividad 2 esta en un nivel positivo, mientras que en C ambas actividades son positivas. Si el ejemplo representa un caso de mezcla de productos, podría ser benéfico, desde el punto de vista de competencia en ventas, fabricar dos productos en lugar de uno. En este caso, la solución C puede ser más atractiva 4.8.3 Solución no acotada En algunos modelos de programación lineal, los valores de las variables pueden aumentar en forma indefinida sin violar alguna de las restricciones, y eso significa que el espacio de soluciones es no acotado al menos en una dirección. El resultado es que el valor objetivo puede aumentar (en caso de maximización) o disminuir (si se trata de minimización) en forma indefinida. En ese caso, tanto el espacio de soluciones como el valor óptimo objetivo no están acotados. La no acotación apunta hacia la posibilidad de que le modelo este mal construido. Las irregularidades más probables es esos modelos son que no se hayan tomado en cuenta una o más restricciones redundantes, y que los parámetros (constantes) de algunas restricciones puedan no haberse estimado en forma correcta. El siguiente ejemplo muestra como se puede reconocer la no acotación, tanto del espacio de soluciones como el valor objetivo, en la tabla símplex. Ejemplo de aplicación 4.9 (Valor objetivo no acotado) Maximizar Z = 4x1 + 2x2 sujeta a: 2x1 – 4x2 ≤ 20 (1) 4x1 + ≤ 80 (2) x1 , x2 ≥ 0 Estandarizando: Maximizar Z = 4x1 + 2x2 sujeta a: 2x1 – 4x2 + h1 ≤ 20 4x1 + h2 ≤ 80 x1, x2, h1, h2 ≥ 0 La siguiente tabla muestra las iteraciones del modelo. 83 Capítulo 4 Texto Guía - Sistemas de Ingeniería Iteración Básica x1 x2 h1 h2 Solución razón 0 h1 2 -2 1 0 20 10 entra x1 h2 4 0 0 1 80 20 sale h1 Z -4 -2 0 0 0 Iteración Básica x1 x2 h1 h2 Solución razón 1 x1 1 -1 0.5 0 10 -10 entra x2 h2 0 4 -2 1 40 10 sale h2 Z 0 -6 2 0 40 Iteración Básica x1 x2 h1 h2 Solución 2 x1 1 0 0 0.25 20 ∞ tabla no acotada x2 0 0 1 0 -0.5 -1 0.25 1.5 10 100 -20 Z razón En la tabla de inicio tanto x1 como x2 son candidatos para entrar en la solución. Como x1 tiene el coeficiente más negativo, se selecciona, normalmente, como la variable de entrada. Sin embargo, todos los coeficientes de restricción bajo x2 son negativos o cero, y eso indica que x2 puede aumentar en forma indefinida sin violar cualquiera de las restricciones (compárese con la interpretación gráfica de la razón mínima, en la figura 4.3). Como cada aumento de una unidad en x2 aumentara 1 a z, un aumento infinito de x2 también dará como resultado un aumento infinito en z. Así, el problema no tiene solución acotada. Este resultado se puede ver en la figura 4.3. El espacio de soluciones no esta acotado en la dirección de x2, y el valor de z puede aumentar en forma indefinida. La regla para reconocer la no acotación es que si en cualquier iteración todos los coeficientes de restricción de toda variable no básica son cero o negativos, entonces el espacio de soluciones no esta acotado en esa dirección. Si además el coeficiente objetivo de esa variable es negativo en caso de maximización, o positivo en caso de minimización, entonces también el valor objetivo es no acotado. 84 Capítulo 4 Texto Guía - Sistemas de Ingeniería 4.8.4 Solución no factible Los modelos de programación lineal con restricciones inconsistentes no tienen solución factible. Estos casos nunca suceden si todas las restricciones son del tipo ≤ (suponiendo lados derechos no negativos), porque las holguras permiten tener una solución factible. Para otros tipos de restricciones se usan variables artificiales. Aunque esas variables artificiales se penalizan en la función objetivo, para obligarlas a ser cero en el óptimo, eso sólo puede suceder si el modelo tiene un espacio factible. En caso contrario, al menos una variable artificial será positiva en la iteración óptima. Desde el punto de vista práctico, un espacio no factible indica la posibilidad de que el modelo no esté bien formulado. Ejemplo de aplicación 4.10 (Espacio de soluciones no factibles) Maximizar Z = 9x1 + 6x2 sujeta a: 6x1 + 3 x2 ≤ 6 9x1 + 12x2 ≥ 36 x1 , x2 ≥ 0 (1) (2) Estandarizando: Maximizar Z = 9x1 + 6x2 – MR1 sujeta a: 6x1 + 3x2 + h1 =6 9x1 + 12 x2 – S2 +R1 = 36 x1, x2, h1, S2, R1 ≥ 0 La siguiente tabla muestra las iteraciones del modelo. Iteración Básica x1 x2 S2 h1 R1 0 h1 6 3 0 1 0 6 entra x1 R1 9 12 -1 0 1 36 sale h1 Z -9 -6 0 0 M 0 Solución M = 100 entonces variable entrante x2 Iteración Básica x1 x2 S2 h1 R1 Solución razón 1 h1 6 3 0 1 0 6 2 entra x2 R1 9 12 -1 0 1 36 3 sale h1 Z -9 - 9M -6 - 12M M 0 0 -36M h1 0.33 R1 0 Solución 2 M = 100 entonces variable entrante no existe Iteración 2 Básica x2 x1 2 x2 1 S2 0 tabla no acotada R1 -15 0 -1 -4 1 12 Z 3 + 15M 0 M 6 + 12M 0 12 - 12M La iteración óptima indica que la variable artificial R1 es positiva (= 12), que además indica que el problema es no factible. La figura 4.4 muestra el espacio de soluciones no factibles. Al permitir que la variable artificial sea positiva, el método símplex ha invertido, en esencia, la dirección de las desigualdades de 9x1 + 12x2 ≥ 36 a 9x1 + 12x2 ≤ 36 (¿Puede usted explicar como?). El resultado es lo que se puede llamar una solución pseudo-óptima. 85 seleccione Solve Problem => algebraic =>Iterations => Escoger el método (símplex.1 Iteraciones símplex con TORA Con TORA se puede hacer todas las iteraciones símplex en el formato descritos en la sección 4. podrá especificar las variables de entrada y de salida haciendo clic en los encabezados de su columna y renglón correspondiente.9. Si opta usted por generar las iteraciones una por una. la columna se vuelve verde y el renglón se vuelve rojo. Si no aparecerá un mensaje de error.5. A continuación.Capítulo 4 Texto Guía . A continuación. o dos fases) o All-slack starting solution (resolver/algebraico/iteraciones/todas las holguras). 86 .9 Solución por computadora 4.4 y 4. Si sus selecciones son correctas. M. sin hacer las tediosas operaciones de renglón de Gauss-Jordan. Puede usted generar una o todas las iteraciones. La figura 4. Esta clase de retroalimentación le debe ayudar a concentrarse en comprender los conceptos básicos del método símplex. en el menú Solve/modify (resolver/modificar). Ingrese el modelo en forma acostumbrada.Sistemas de Ingeniería 4. haciendo clic en Next Iteration (iteración siguiente) o en All Iterations (Todas las iteraciones).5 muestra las iteraciones símplex generadas para el modelo del ejemplo 1 de la compañía que produce ladrillos. especifique la exactitud que desee en el resultado y haga clic en Go To Output Screen (ir a la pantalla de resultados). 9.Sistemas de Ingeniería Figura 4. 87 .Capítulo 4 Texto Guía .2 Reportes del WinQSB Parta del menú Inicio = > Programas = > WinQSB = > Linear and Integer Programming.5 4. Sistemas de Ingeniería Figura 4. formato de los datos de entrada.8 88 .Capítulo 4 Texto Guía .6 Una vez hecha la selección de Linear and Integer Programming haga clic en new Problem. número de variables y restricciones) y haga clic en OK Figura 4. y coloque los datos del problema (criterio de la función objetivo.7 Proceda a ingresar los datos del problema de la siguiente manera: Figura 4. D5:D8). La parte superior de la figura 4. Muestra 4 tipos de información: 1) celdas de datos (áreas sombreadas. Hasta hallar el óptimo.3 Solución de programa lineal con SOLVER de EXCEL Para mostrar el uso de Excel en la preparación de los datos (la entrada) en un formato a recuadro para Excel Solver se usa el modelo de la compañía de ladrillos. por ejemplo. B5:C8 y F6:F8). Figura 4. no tiene otro objeto. Solver solo requiere los tres primeros tipos.9 4. las celdas que define la función objetivo y la variables no necesitan ser vecinas.10. La posición relativa de las cuatros clases de información en la hoja de cálculo no necesita pegarse a la distribución que se ve en la figura 4.9 se resuelve el ejemplo 4. El cuarto tipo se usa principalmente para mejorar la legibilidad del modelo.9. 3) definición algebraica de la función objetivo y el lado derecho de la restricciones (celdas rectangulares interrumpidas o punteadas. Y aparecerá la primera iteración. B13:D13).Capítulo 4 Texto Guía .10 muestra la distribución de la hoja de cálculo para el modelo. luego presione símplex Iteration = > Next Iteration. ni deben 89 . 2) celdas que representan las variables y la función objetivo que se debe evaluar (celdas regulares gruesas. En la figura 4.Sistemas de Ingeniería Una vez ingresados los datos del problema escoja una de los métodos para iniciar las iteraciones del modelo de programación lineal en Solve and Analyse y haga clic en Solve and Display Steps.3. y 4) celdas que solo contienen nombres o símbolos explicativos. se dan definiciones ”algebraicas” equivalentes de la función objetivo y del lado izquierdo de las restricciones usando los datos (celdas sombreadas) y la función objetivo. y a continuación copiar en las celdas D6:D8. Desde el menú Herramientas de Excel. Llegados a este punto. porque mejora la legibilidad del modelo. Expresión algebraica Objetivo Z Restricció n1 Restricció n2 Restricció n3 8x1 + 5x2 2x1 + 1x2 1x1 + 0x2 0x1 + 1x2 Formula en hoja cálculo = B5*$B$12 C5*$C$12 = B6*$B$12 C6*$C$12 = B7*$B$12 C7*$C$12 = B8*$B$12 C8*$C$12 de + + + + Celda objetivo D5 D6 D7 D8 Observe que sólo necesita usted capturar la formula para la celda D5. Lo importante es que sepa donde están.Capítulo 4 Texto Guía . $B$12:$C$12) en la celda D5. Sin embargo. Para hacerlo en forma correcta. y copiarlos en las celdas D6:D8. así como las variables (celdas rectangulares gruesas). para Solver las pueda referenciar. La tabla siguiente muestra las funciones algebraicas. las formulas equivalentes de la hoja de cálculo y su colocación en celdas adecuadas. Figura 4. Para programas lineales más grandes.Sistemas de Ingeniería colgarse en la parte inferior del problema. 90 . siempre se aconseja usar el formato que sugiere la figura. se deben reemplazar B12 y C12 (que representan x1 y x2) con las referencias fijas $B$12 y $C$12.10 ¿Cómo se vincula Solver con los datos de la hoja de cálculo? Primero. todos los elementos del modelo de programación lineal quedan listos para enlazarse con Solver. seria más cómodo ingresar =SUMAPRODUCTO (B5:C5. A continuación se coloca las formulas resultantes en celdas apropiadas del rectángulo de línea interrumpida. Por comodidad usaremos la celda D12 para mostrar el valor óptimo de Z.Capítulo 4 Texto Guía .11 Cuando se aplica Solver al problema. Sin embargo. aparecerá el valor óptimo de Z en la celda D5. capturando los datos siguientes: Celda objetivo: $D$5 Valor de la celda objetivo: Máximo Cambiando las celdas: $B$12:$C$12 Esta información indica a Solver que las variables definidas por las celdas $B$12 y $C$12 se determinan maximizando la función objetivo de la celda $D$5. las restricciones se ingresan como sigue: $D$6:$D$8 <= $F$6:$F$8 Recuerde que F6:F9 definen el lado derecho de las restricciones. que se aumentaran al modelo haciendo Agregar y escribiendo a continuación: $B$12:$C$12 >= 0 Figura 4. antes hay que hacer clic en Opciones para seleccionar nuevas características para la solución (tiempo máximo de ejecución. etc.11. Lo más importante es que revise usted el cuadro 91 . tipo de desigualdad y lado derecho) en una forma adecuada. y los valores de x1 y x2 irán a las celdas B12 y C12. Aparecerá otro cuadro de dialogo para facilitar la captura de los elementos de las restricciones (lado izquierdo. sólo con hacer clic en el botón de comando Resolver. precisión. usted define la función objetivo Z. respectivamente. De esta manera. En ese nuevo cuadro de diálogo. Primero. ingresando en ella la formula = D5.Sistemas de Ingeniería seleccione Solver para abrir la caja de dialogo que se ve en la figura 4. cantidad máxima de iteraciones. Las únicas restricciones restantes son las de no negatividad. El último paso es establecer las restricciones de los problemas haciendo clic en el botón Agregar del cuadro de diálogo. Ya estamos listos para resolver el modelo. todos los elementos de la solución óptima aparecen uno junto a otro en el mismo renglón.) si así se desea. y el sentido de optimización. 14 muestra el informe de sensibilidad para el modelo de la compañía. La información que se muestra equivale exactamente a la que proporciona TORA. la solución aparecerá en las celdas de resultados (B12:D12) de la hoja de resultados.12 Figura 4. También. La figura 4. y se interpreta en forma parecida.Sistemas de Ingeniería marcado con Adoptar modelo lineal para obtener un resultado adecuado de programación lineal. Figura 4. Opciones también permite especificar que todas las variables sean no negativas. 92 .13 Si el planteo del modelo es correcto. Esos informes se guardaran en hojas separadas. incluyendo el importante análisis de sensibilidad. un nuevo cuadro de diálogo llamado Resultados de Solver le dará oportunidad de pedir más detalles de la solución.Capítulo 4 Texto Guía . Sistemas de Ingeniería Microsoft Excel 11. como se demostrara en el capítulo 7.xls]Sheet1 Informe creado: 08/08/2005 9:37:12 Celdas cambiantes Celda Nombre $B$12 Solución x1 $C$12 Solución x2 Valor Gradiente Igual reducido 125 0 250 0 Coeficiente objetivo Aumento Aumento permisible permisible 8 2 8 5 1E+30 1 Restricciones Celda Nombre $D$6 Produccion de ladrillos Total $D$7 Ventas del tipo 1 Total $D$8 Ventas del tipo 2 Total Valor Sombra Restricción Aumento Aumento Igual precio lado derecho permisible permisible 500 4 500 50 250 125 0 150 1E+30 25 250 1 250 250 50 Figura 4. Otros modelos podrán requerir “algo de ingenio” para poder definirlos en una forma cómoda (y menos tediosa). 93 .Capítulo 4 Texto Guía . Una clase de modelos de programación lineal que cae dentro de esta categoría tiene que ver con optimización de redes.14 Finalmente diremos que la definición del modelo de la compañía de ladrillos para usarlo con Solver de Excel es directa.0 Informe de sensibilidad Hoja de cálculo: [Cmpañia de ladrillos. encontrar una solución óptima para el siguiente problema de programación lineal. x3  0 94 . x 2  0 Explique.10 Problemas propuestos 1. Usando el método símplex resolver el siguiente problema de programación lineal.Capítulo 4 Texto Guía . x3 . MaximizarZ  x1  x 2 sujeta a x1  x 2  20 x1 .Sistemas de Ingeniería 4. usando los métodos gráficos y de la tabla símplex. x4  0 2. 4. MaximizarZ  1x1  2 x2  3 x3 sujeta a x1  x2  x3  30 x1  2 x 2  2 x 3  20 x1 . por qué este problema tiene múltiples soluciones óptimas. x2 . x2 . Para el siguiente programa lineal: MaximizarZ  x1  x2  3x3  2 x4 sujeta a x1  2 x2  3 x3  5 x4  4 5 x1  2 x2  6 x4  8 2 x1  3 x2  2 x3  3 x4  3  x1  x3  2 x4  0 x1 . x2 . MaximizarZ  x1  x2  2x3 sujeta a x1  2 x2  x3  10 x1  2 x2  x3  12 x1 . Usando el método símplex. Encontrar una solución óptima para el siguiente problema de programación lineal. x3  0 3. Resolver el siguiente problema de programación lineal. Encontrar una solución óptima para el siguiente problema de programación lineal.5 x1  0.Sistemas de Ingeniería 5. Encontrar una solución óptima para el siguiente problema de programación lineal.25 x1  3. MinimizarZ  5. x2  0 7. Resolver el siguiente problema de programación lineal. MaximizarZ  x1  2x2 sujeta a x1  x2  100 x1  x 2  50 x1 .6 x1  2 x 2  0. MaximizarZ  x1  3x 2  2 x3 sujeta a 0. x2 . MaximizarZ  2 x1  2 x 2  4 x3 sujeta a 2 x1  x 2  x3  2 3x1  4 x 2  2 x3  8 x1 .45 x2 sujeta a 39 x1  12 x2  780 x2  40 1. x3  0 9.8 x3  900 x1  200 x2  200 x 2  300 x 2  4 x3  0  x 2  2 x3  0 x1 .5 x2  80 x1 . x3  0 95 . x2 . Encontrar una solución óptima para el siguiente problema de programación lineal. MinimizarZ  2 x1  3 x 2  4 x3 sujeta a x1  2 x2  6 2 x1  x3  12 x1 .Capítulo 4 Texto Guía . x2  0 8. x2 . x3  0 6. 10. MaximizarZ  0. La carretera debe ser pavimentada en concreto.30 x 2  3 0.2 0. asfalto.06 x 2  0.60 x 2  1.20 x2  2 x1 .80.12 x3  0. x2  0 12. y un máximo de 18". x 4  0 11.5 para el tipo 2. Resolver el siguiente problema de programación lineal. y la gravilla Bs. o cualquier combinación de estos tres elementos. El contratista ha determinado que 3" de su asfalto son tan resistentes como 1" de concreto. Las especificaciones requieren un espesor mínimo de doce pulgadas (12").50. la compañía puede producir un total de 500 ladrillos al día.09 x 4 sujeta a x1  x 2  x3  x 4  10 x1  5 x2  7 x3  2 x4  4 x1  x2  3 x3  x 4  4 x1 . Un contratista está considerando una propuesta para la pavimentación de una carretera.50 x1  0. Una compañía produce dos tipos de ladrillos.30 x1  0.Capítulo 4 Texto Guía . Resolver el siguiente problema de programación lineal. y 6" de gravilla son tan resistentes como 1" de concreto.Sistemas de Ingeniería 10. Determine el número de ladrillos a ser producidos de cada tipo para maximizar el beneficio. Sin embargo.08 x1  0.8 para el tipo 1 y Bs. 13. las especificaciones requieren una consistencia final igual o mayor que la correspondiente a una superficie de concreto de 9" de espesor. El mercado limita las ventas diarias del tipo 1 y 2 a 150 a 250 ladrillos respectivamente. Cada pulgada de espesor por yarda cuadrada de concreto le cuesta Bs. 96 . Suponga que los beneficios por cada ladrillo son de Bs. gravilla. x 2 .050 x 2  2 x1  0. Si todos los ladrillos son del tipo 2.1. x3 .50 x2 sujeta a 0. MinimizarZ  0.20 x1  0. el asfalto Bs.3.50 x1  . Determine la combinación de materiales que el contratista debería usar para minimizar su costo. Cada ladrillo del tipo 1 requiere el doble de tiempo en mano de obra que el segundo tipo. Formule el problema de decidir cuánto se debe producir de cada tipo de cemento para maximizar las ganancias de la Empresa. La Constructora FADESA Ltda. éstas tienen un margen de utilidad diferente. utilizando el Método Gráfico. se requiere el doble del tiempo para producir una bolsa de cemento granulado en relación al tiempo requerido por el cemento en polvo./casa y que requiere de 150 hrcarpintero/casa y 80 hr-albañil/casa.24 minutos/bolsa y la planta opera un 8 día de la hora. El contrato obliga a entregar las casas dentro de los nueve meses de firmado el contrato. El contrato la obliga a construir dos tipos de casas.Sistemas de Ingeniería 14.Capítulo 4 Texto Guía . Un fabricante de cemento produce dos tipos de cemento. Debido a restricciones del proceso. ? Cuántas casas de cada tipo debe construir para obtener el beneficio máximo? 15. Otra información relevante se resume en la siguiente tabla: Recurso por tipo de casa Disponibilidad Campo Rancho de horas 200 100 12000 Carpintero 50 120 13000 Albañil a) Formule el problema de programación lineal. Un contrato de ventas establece que él debe producir 500 bolsas al día de cemento en polvo. al menos. Para los beneficiarios las casas tienen el mismo costo. así las casas tipo campo arrojan 5. a saber en gránulos y polvo. Un constructor va a edificar dos tipos de viviendas A y B. el 20 % por lo menos. y las de tipo rancho 5. Su ganancia es £4 por la bolsa para el cemento granulado y £3 por la bolsa para el cemento en polvo. El número de casas de tipo A ha de ser. c) Suponga que se desea agregar un nuevo tipo de casa denominada “Española” que da un margen de utilidad de 4900 Bs. 97 ..100 Bs. Una bolsa de cemento en polvo consume para su fabricación 0. Dispone de 600 millones de pesos y el costo de una casa de tipo A es de 13 millones y 8 millones una de tipo B. Si cada casa de tipo A se vende a 16 millones y cada una de tipo B en 9.000 Bs. Explique si conviene o no fabricar las casas. pero para la Constructora. b) Encuentre la solución óptima gráficamente. 16. se ha adjudicado la construcción de 100 casas. del 40 % del total y el de tipo B. Él no puede hacer más de 1600 bolsas un día debido a una escasez de vehículos para transportar el cemento fuera de la planta. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz.co/cursos/sedes/manizales/4060014/docs_curso/conteni do.Sistemas de Ingeniería 4.  MÉTODOS Y MODELOS DE INVESTIGACIÓN DE OPERACIONES – Juan Prawda [Vol.virtual.edu.unal. Herbert.cl/Programa/Io/IO_3.ieci.ucm.html  http://www.htm 98 . Gordon P.Capítulo 4 Texto Guía . Wrigth.11 Bibliografía  MODELOS LINEALES DE OPTIMIZACIÓN – Rafael Terrazas Pastor [Segunda Edición]  INVESTIGACIÓN DE OPERACIONES – Hamdy A.12 Enlaces  http://www. 1 Modelos Deterministicos] 4. . ≥ o =). j  1. lo que se tiene a continuación son las condiciones que requieren: 1. 99 . m x j  0.2. 2.1 Introducción La solución de la programación lineal se basa en una toma instantánea de las condiciones que prevalecen en el momento de formular y resolver el modelo. con lado derecho no negativo y todas las variables son no negativas.2.1 el cual muestra como convertir un problema dual a partir de un primal. dependiendo del sentido de la optimización (maximización o minimización)..….Capítulo 5 Texto Guía -Sistemas de Ingeniería CAPÍTULO 5 ANÁLISIS DE DUALIDAD Y SENSIBILIDAD DE LA PROGRAMACIÓN LINEAL 5. holgura y artificiales. 5. los ambientes de decisiones rara vez permanecen estáticos. m Las variables xi. se define el primal en forma de ecuaciones.. como se muestra a continuación: n Maximizar o Minimizar   c j x j j 1 Sujeta a: n a j 2 ij x j  bi . Nuestra definición del problema dual requiere expresar el problema primal en forma de ecuaciones. si las hubiera.2. Los dos problemas están relacionados de forma tan estrecha que la resolución óptima de un problema produce de forma automática la resolución óptima del otro. tipos de restricciones (≤. n. Eso es lo que hace el análisis de sensibilidad. incluyen las variables que se denominan de excedencia.j =1. Se define una restricción dual por cada variable primal. Pero se debe tener en cuenta que en el mundo real. i  1. todas las restricciones son ecuaciones.. En la programación lineal. y es fundamental determinar como cambia la solución óptima cuando cambian los parámetros del modelo. y la orientación de las variables (no negativa o no restringida). Para mostrar como se forma el problema dual..2 Definición del problema dual El problema dual es una programación lineal definida en forma directa y sistemática a partir del modelo original (o primal) de programación lineal. Se define una variable dual por cada ecuación primal (restricciones). el dual se define para varias formas del primal. La tabla 5. 1 Construcción del dual a partir del primal Variables Primales ym am1 am2 …. …. Variables Duales y1 y2 x1 c1 a11 a21 bm Coeficientes objetivo duales Las reglas para determinar el sentido de la optimización (ya sea maximización o minimización). ….. Tabla 5. el tipo de restricción (.. xn cn a1n a2n …. Los coeficientes de restricción (columna) de una variable primal definen los coeficientes en el lado izquierdo de la restricción dual.2 y también demuestra que la definición comprende todas las formas del primal.. esta en resumen en la tabla 5.. en forma automática.. Los coeficientes objetivos del problema dual son iguales a lados derecho de las ecuaciones de restricción primal.2 Reglas para construir el problema dual Problema Dual Objetivo del Problema primal1 Objetivo Tipo de Restricción Signos de variables maximización minimización minimización maximización   No restringido No restringido En los siguientes ejemplos se demuestra el uso de la tabla 5. 1 Todas las referencias primales son ecuaciones con lado derecho no negativo y todas las variables son no negativas. …… …… …… …… ….2. …. xj cj a1j a2j …..Capítulo 5 Texto Guía -Sistemas de Ingeniería 3.. ….. x2 c2 a12 a22 ….. obsérvese que el sentido de la optimización de problema dual siempre es el opuesto al del primal. y el signo de las variables duales (siempre no restringido). amj …… amn J-èsima restricción dual b1 b2 …. 4. ….. Tabla 5. …. ….  o ) ... 100 . y su coeficientes objetivo define el lado derecho.. x2 . x2 . x4 ) por lo tanto  y1  10 y2  10 2 y  5 y  8  1 2 Se deberá tener 4 restricciones  2 y1  y2  5  y1  0 y2  0 3. lo cual se observa de la variable x1 son 1 y 10.Capítulo 5 Texto Guía -Sistemas de Ingeniería Ejemplo de aplicación 5. x3 . x3  0 x1 . como se tiene dos restricciones se tiene dos variables duales ( y1 . como indica esta condición se ve claramente en este ejemplo que los coeficientes x1  2 x2  3x3  x4  10 columna de las dos restricciones que corresponden a los 10 x1  5 x2  x3  0 x4  15 coeficientes de cada variable. y2 ). de la variable x2 son 2 y 5. y2 sin restricciones y1 . x4  0 Variables Duales y1 y2 Problema Dual Minimizar w  10 y1  15 y2 Sujeta a: y1  10 y2  10 2 y1  5 y2  8 2 y1  y2  5 y1  0 y2  0     y1  0. como se ve en la forma de ecuación el problema primal tiene cuatro variables ( x1 . x2 . 2. y2 sin restriccciones Como se puede observar en el ejemplo se debe tener en cuenta las 4 condiciones: 1. x3 .1 Problema Primal Problema Primal en forma de ecuación Maximizar z  10 x1  8 x2  5 x3 Sujeta a: x1  2 x2  3 x3  10 Maximizar z  10 x1  8 x2  5 x3  0 x4 Sujeta a: x1  2 x2  3x3  x4  10 10 x1  5 x2  x3  15 10 x1  5 x2  x3  0 x4  15 x1 . así sucesivamente son utilizadas en el lado izquierdo de las restricciones como se ve: 101 . Capítulo 5 Texto Guía -Sistemas de Ingeniería También se indica que los coeficientes del lado derecho de las restricciones del problema primal son utilizados como coeficientes en la función objetivo del problema dual del lado derecho. Como se muestra a continuación: 4. como señala esta condición, los coeficientes de la función objetivo del problema primal que son 10, 8, 5 y 0 son utilizados en el lado derecho de las restricciones del problema dual. Como se muestra a continuación: Y como se comento sobre la tabla 5.2 cuando se trata de maximizar en el problema primal, en el problema dual se tiene que minimizar la función objetivo, según esta tabla todas las restricciones en el problema son del signo ≥. Ejercicio de aplicación Cierta dietista necesita preparar una comida que contenga determinados nutrientes, al menos en las cantidades que se indican en la siguiente tabla. Dispone de tres ingredientes cuyos costos y contenidos de cada nutriente (unidades por gramo de ingrediente) se dan en la misma tabla. Ingredientes 1 2 3 Requerimientos u. /comida. A 4 3 2 20 B 5 6 3 30 C 1 2 1 10 D 2 1 2 5 E 2 3 1 10 Nutriente Costo $/g 200 300 250 El problema a resolver consiste en definir la combinación de ingredientes que permite obtener, al mínimo costo, el alimento con el contenido nutricional deseado. 102 Capítulo 5 Texto Guía -Sistemas de Ingeniería La solución puede obtenerse resolviendo el siguiente modelo, en el cual las variables xi indican la cantidad (g.) del ingrediente i a utilizar. Minimizar Costo Utilidad = 200 x1 + 300 x2 +250 x 3 Sujeto a con x i 4 x1 +3 x2 +2 x 3 > 20 Nutriente A 5 x1 +6 x2 +3 x 3 > 30 Nutriente B 1 x1 +2 x2 +1 x 3 > 10 Nutriente C 2 x1 +3 x2 +1 x 3 > 5 Nutriente D 2 x1 +3 x2 +1 x 3 > 10 Nutriente E > 0, i = 1, 2,3. Antes de conocer la solución óptima de este modelo, consideremos una situación hipotética que puede presentársele a la dietista. Un laboratorio farmacéutico ofrece pastillas de cada uno de los nutrientes, con los cuales ella puede sustituir la comida que piensa preparar. Para resolver este nuevo problema reflexionemos en el hecho de que el director del laboratorio desea obtener la máxima utilidad en la venta de las pastillas. Por ello, al evaluar la cotización del laboratorio, en comparación con el costo de preparar la comida, la dietista necesita conocer el máximo precio que puede pagar por una pastilla que contenga una unidad de cada nutriente. La dietista también sabe que los precios que puede pagar tienen limitaciones provenientes de los costos y contenido vitamínico de los ingredientes, así por ejemplo: Un gramo del alimento 1 cuesta $200 y aporta cuatro unidades del nutriente A, cinco del nutriente B, uno del C, dos del D y dos del E. Por lo tanto, por esas cantidades de los nutrientes puede pagarse en total un máximo de $200. Similarmente, como un gramo del alimento 2 cuesta $300 y aporta tres unidades del nutriente A, seis del B, dos del C, uno del D y tres del E, lo máximo que podemos pagar conjuntamente por esas cantidades de los nutrientes es $300. Si denotamos respectivamente con las variables YA, YB, YC, YD, YE, los precios máximos que se pueden pagar por la pastilla con una unidad de cada uno de los nutrientes, y efectuamos un análisis para todos los ingredientes, obtenemos el siguiente modelo de programación lineal. Maximizar ventas ZD = 20YA +30YB +10YC +5YD +10YE Sujeto a 4YA +5YB +1YC +2YD +2YE < 20 Ingrediente 1 3YA +6YB +2YC +1YD +3YE < 30 Ingrediente 2 2YA +3YB +1YC +2YD +1YE < 10 Ingrediente 3 con YA, YB, YC, YD, YE > 0 103 Capítulo 5 Texto Guía -Sistemas de Ingeniería Este segundo modelo representa el enfoque dual del primero y de nuevo podemos verificar que se presentan ciertas relaciones estructurales, a saber 1. El vector de coeficientes objetivo de uno es la transpuesta del vector de coeficientes recurso del otro 2. El vector de coeficientes recurso del uno es la transpuesta del vector de coeficientes objetivo del otro. 3. La matriz de coeficientes tecnológicos de uno es la transpuesta de la matriz de coeficientes tecnológicos del otro. 4. Ambos problemas están en formato canónico, o sea que tienen las siguientes características 4.1 El objetivo del primal es minimizar, mientras que el del dual es maximizar. 4.2 Las restricciones del primo son del tipo =, y las del dual del tipo =. 4.3 Las variables de ambos problemas solo pueden tomar valores mayores o iguales que cero. Pero las relaciones de forma no son las más importantes para nuestro estudio de la dualidad en Programación lineal, como si lo son las relaciones lógicas existentes entre sus soluciones óptimas y el significado económico de las variables del modelo dual. 5.3 Resolución opcional de problema primal con restricciones del tipo “≥” o “=” Cuando este tipo de restricciones “≥” o “=” se puede convertir resolver de la siguiente manera, lo cual nos evitará utilizar los métodos de penalización y las variables artificiales. 5.3.1 Restricción de la forma mayor o igual Problema Primal Maximizar z  10 x1  20 x 2 Sujeta a: x1  2 x 2  4 2 x1  3x 2  6 x1 , x 2  0 Observe que la segunda desigualdad es de la forma mayor o igual que. Lo convertiremos primero a la forma menor o igual que. Multiplícanos la segunda restricción en ambos lados por -1:  12 x1  3x 2    16 O  2 x1  3x 2  6 Y se remplaza la segunda restricción por esta equivalente, de aquí se obtiene el modelo primal equivalente descrito a continuación: 104 Capítulo 5 Texto Guía -Sistemas de Ingeniería Problema Primal Maximizar z  10 x1  20 x 2 Sujeta a: x1  2 x 2  4  2 x1  3 x 2  6 x1 , x 2  0 Y su problema dual se convertiría en lo siguiente: Problema Dual Minimizar w  10 y1  15 y2 Sujeta a: y1  2 y 2  10 2 y1  3 y 2  20 y1 , y 2  0 5.3.2 Restricción de la forma igualdad Problema Primal 1 Maximizar z  10 x1  20 x 2 Sujeta a: x1  2 x 2  4 2 x1  3 x 2  7 x1 , x 2  0 Observe que la primera restricción es una ecuación, no es una desigualdad es de la forma menor o igual que. Para determinar el modelo dual observamos que en modelo primal 1 reemplazamos por las 2 desigualdades siguientes: x1  2 x 2  4 x1  2 x 2  4 o  x1  2 x 2  4 Con este reemplazo se obtiene el siguiente problema de programación lineal: Problema Primal 2 Maximizar z  10 x1  20 x 2 Sujeta a: x1  2 x 2  4  x1  2 x 2  4 2 x1  3 x 2  7 x1 , x 2  0 105 Capítulo 5 Texto Guía -Sistemas de Ingeniería Y su problema dual se convertiría en lo siguiente: Problema Dual Minimizar w  4 y1  4 y 2  7 y 3 Sujeta a: y1  y 2  2 y 3  10 2 y1  2 y 2  3 y 3  20 y1 , y 2 , y 3  0 5.4 Relaciones PRIMAL –DUAL Los cambios que se hacen en modelo original de programación lineal afectan a los elementos de la tabla óptima actual, que a su vez puede afectar la óptimalidad y/o la factibilidad de la solución actual. Por esta razón estudiaremos como se recalculan los elementos de la tabla símplex optimo para reflejar los nuevo cambios. 5.4.1 Planteamiento de la tabla símplex La figura 5.1 es una representación esquemática de las tablas símplex de inicio y general. En la tabla de inicio, los coeficientes de las restricciones debajo de las variables de inicio forman una matriz identidad2. Después con las demás iteraciones de la tabla símplex, generadas con las operaciones de renglón de Gauss-Jordán, se modificara los elementos de la matriz identidad para producir como resultado la llamada matriz inversa. Variables de inicio Renglón del objetivo z = Columnas de restricción 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 = Matriz identidad (Tabla de Inicio) 2 Matriz identidad: todos los elementos de la diagonal principal iguales a 1 y fuera de la diagonal principal iguales a cero 106 Capítulo 5 Texto Guía -Sistemas de Ingeniería Variables de inicio Renglón del objetivo z = Columnas de restricción = Matriz Inversa (Tabla General) Figura 5.1 5.4.2 Solución dual óptima Las soluciones primal y dual se afectan en forma tan estrecha que la solución óptima del problema primal produce en forma directa (con unos pocos pasos adicionales), la solución óptima dual. En esta unidad se refieren 2 métodos3 para calcular este resultado. Método 1  Valores óptimos de las variables duales = = Vector renglón de los coeficientes objetivos originales de las variables básicas óptimas primales Inversa primal =  óptima Los elementos del vector renglón de los coeficientes objetivos del primal original deben aparecer en el mismo orden que aparecen las variables básicas en las columnas básicas de la tabla símplex. Método 2  Coeficientes zprimal óptimos (costo reducido) de cualquier variable xj = = Lado izquierdo de la j-esima restricción dual - Lado derecho de la j-esima restricción dual Estos métodos puede implicar una gran ventaja de computo si la cantidad de variables en primal fuera bastante menor que la cantidad de restricciones. Ya que la cantidad de cálculos símplex, depende mucho de la cantidad de restricciones, en este caso más eficiente resolver el dual, del cual se puede determinar entonces la solución del primal. 3 Para las operaciones matriciales ver ANEXO A 107 Capítulo 5 Texto Guía -Sistemas de Ingeniería Ejemplo de aplicación 5.2 Se tiene la siguiente programación lineal Maximizar z  x1  5 x 2  3 x3 Sujeta a: x1  2 x 2  x3  3 2 x1  x 2 4 x1 , x 2 , x3  0 Para preparar para resolver con el método símplex (método de la M), se debe agregar dos variables artificiales R en la primera y segunda restricción, los problemas primales y duales que son asociados se muestran a continuación: Problema Primal 1 Problema Primal 3 Maximizar z  1x1  5 x 2  3 x 3 Maximizar z  1x1  5 x 2  3 x 3 Sujeta a: Sujeta a: x1  2 x 2  x 3  x 4 x1  2 x 2  x 3  3 2 x1  x 2  x1  2 x 2  x 3 4 2 x1  x 2 x1 , x 2 , x 3  0 3  x5  3  x6  2 x1  x 2 4  x 7  4 x1 , x 2 , x 3  0 Problema Primal 2 Problema Dual Maximizar z  1x1  5 x 2  3 x 3 Minimizar w  3 y1  3 y 2  4 y 3  4 y 4 Sujeta a: Sujeta a: x1  2 x 2  x 3 3 y1  y 2  2 y 3  2 y 4  1  x1  2 x 2  x 3  3 2 y1  2 y 2  y 3  y 4  5 2 x1  x 2 4 y1  y 2  3  2 x1  x 2  4 x1 , x 2 , x 3  0 Resolviendo con el Método de la M, se obtiene la tabla primal óptima siguiente Tabla 5.3 Tabla óptima del primal del ejemplo 5.2 Basicas z x3 x1 0 0 x2 2 2.5 x3 0 1 R1 3+M 1 R2 M-1 -0.5 Solucion 5 1 x1 1 -0.5 0 0 0.5 2 La matriz inversa óptima, que se obtiene y se señala las variables de inicio R1 y R2. 1  0.5   Inversa óptima =   0 0.5  108 x1)  (Inversa Óptima) 1  0. lo cual debe los elementos de los coeficientes originales del objetivo para las dos variables deben aparecer en el mismo orden (Coeficientes objetivo originales) = (Coeficientes de x3.4. Tomemos las restricciones duales asociadas con las variables primales de inicio R1 y R2. Columnas de restricción (lados izquierdo y derecho).5  = (3. se necesitan dos ecuaciones para llegar a la solución. Renglón objetivo z. 3  M  y1  (M )  y1  3 M  1  y 2  (M )  y 2  1 Note que en cada ecuación interviene exactamente solo una variable.3 Calculo con la tabla símplex Lo cual quiere verse en esta sección. Este siempre es el caso de las restricciones duales asociada con las variables de inicio. las restricciones duales asociadas con las variables primales de inicio son: Variable de inicio R1: y1   M Variable de inicio R2: y 2   M También. Usando la distribución de la tabla símplex de la figura 5. 109 . de acuerdo con la tabla óptima que se vio en la tabla 5. primero x3 y después x1. es que se puede generar toda la tabla símplex en cualquier iteración.-1) Método 2. a partir de los datos originales del problema y la inversa asociada con la iteración. y2) = (Coeficientes objetivo originales de x3. Como el problema dual tiene dos variables. 1) Ahora se puede calcular los valores duales óptimos como sigue: (y1. Método 1.1. Lo primero que se debe observar es que las variables óptimas aparecerán en la tabla en orden.5   = (3. Como se sabe por la definición de dual. se puede dividir los cálculos en 2 tipos: 1. por que la solución esta disponible de inmediato.3 Coeficientes z de R1 = 3 + M Coeficientes z de R2 = M – 1 De acuerdo con el Método 2. coeficientes de x1) = (3. 2. 1)   0 0.Capítulo 5 Texto Guía -Sistemas de Ingeniería A continuación se vera como se obtiene los valores óptimos duales usando los dos métodos que se mencionaron con anterioridad. 5. 2 Cálculos de renglón objetivo z.4.3 Se usa la programación lineal según el ejemplo de aplicación 5. una columna del lado izquierdo o derecho se calcula como se muestra a continuación: Columna de restricción en iteración i Inversa en la iteración i = = Columna original de restricción =  Formula 1 5.5  0 El uso de la Formula 1 se ilustra calculando todas las columnas de lado izquierdo y lado derecho de la tabla óptima: Columna de x1 en iteración óptima = = = Inversa en la iteración óptima =  Columna de x1 original 1  0.5  1   0         0.1 Cálculos de columnas de restricción.3.3 1  0.Capítulo 5 Texto Guía -Sistemas de Ingeniería 5. De acuerdo con la tabla óptima 5. En cualquier iteración símplex. En cualquier iteración símplex.5   2  0 1  110 .4.3.2 para poder ilustrar la aplicación de la formula 1 y 2. una columna del lado izquierdo o derecho se calcula como se muestra a continuación: Coeficiente de la variante x1 en la ecuación primal de z (costo reducido) Lado izquierdo de la restricción dual correspondiente = = = - Lado derecho de la restricción dual correspondiente Formula 2 Ejemplo de aplicación 5.5   Inversa óptima =  0. 5   3  1          0.5          0.5   2   2.5  Inversa en la iteración óptima =  Columna de x 3 original 1  0.5   4  0  2 111 .5  1  1          0.5  Inversa en la iteración óptima =  Columna de lado derecho original 1  0.5    1  0   0.5   0    0.Capítulo 5 Texto Guía -Sistemas de Ingeniería De manera parecida se calculan las siguientes columnas de restricción: Columna de x2 en iteración óptima = = = Columna de x 3 en iteración óptima = = = Columna de R1 en iteración óptima = = = Columna de R1 en iteración óptima = = = Columna de lado derecho en la iteración óptima = = = Inversa en la iteración óptima =  Columna de x2 original 1  0.5  1  0  0.5   0  0  0 Inversa en la iteración óptima =  Columna de R1 original 1  0.5  1  1          0.5          0.5   0  0  0 Inversa en la iteración óptima =  Columna de R1 original 1  0. 4 Valor objetivo primal y dual En el problema primal-dual. si uno es maximización el otro es minimización. Coeficientes de x2 en z = 2 y1  y 2  5  2  3   1  5  2 .5 Solucion 5 1 x1 1 -0.5 2 5.5 0 0 0. Coeficientes de x 3 en z = y1  3  3  3  0 Coeficientes de R1 en z = y1   M   3  M Coeficientes de R 2 en z = y1   M   1  M Es importante saber que los cálculos realizados por las Formulas 1 y 2. Obsérvese que la relación no especifica cual problema es primal y cual es dual.3. los valores objetivos en los dos problemas se relacionan de la siguiente manera: Para cualquier par de soluciones primales y duales factibles Valor objetivo en el problema de Maximización = ≤ Valor objetivo en el problema de minimización En el óptimo. Estos valores son utilizados en la Formula 2 para determinar los coeficientes asociados de z como se ve a continuación: Coeficientes de x1 en z = y1  2 y 2  1  3  2   1  1  0 . la relación es valida estrictamente como ecuación. Los valores óptimos de las variables duales (y1. pueden ser aplicadas a cualquier iteración.-1) que se calcularon en el ejemplo de aplicación 5. y2) = (3. desde ese punto de vista. En este caso solo importa el sentido de la optimización (maximización o minimización) 112 . Lo cual se obtiene la tabla óptima del problema primal siendo la tabla 5.2.4. sea problema primal o dual.Capítulo 5 Texto Guía -Sistemas de Ingeniería A continuación se mostrara como se hacen los cálculos del renglón objetivo.5 x3 0 1 R1 3+M 1 R2 M-1 -0. con la Formula 2.3 Tabla óptima del primal del ejemplo 5. con dos métodos distintos.2 Basicas z x3 x1 0 0 x2 2 2. Tabla 5. Solo se necesita la inversa asociada con la iteración primal o dual y los datos de la programación lineal original. y con la columna de la variable x j no básica (los empates se rompen arbitrariamente). 5. En el método símplex generalizado se combinan los métodos símplex primal y dual en un solo algoritmo.Capítulo 5 Texto Guía -Sistemas de Ingeniería Ejemplo de aplicación 5. Si todas las variables básicas son no negativas el proceso termina y se alcanza la solución factible (óptima). y  rj es el coeficiente negativo de restricción de la tabla. pero no es factible.2 ( x1 =2. Observe que la condición de óptimalidad dual garantiza que se mantendrá la óptimalidad en todas las iteraciones.1. x1 =1) y (y1 = 2.1 Método dual Símplex Como el método símplex primal. pero avanzan hacia la optimalidad. y las iteraciones sucesivas siguen siendo básica y (mejores que la) óptima. Las iteraciones sucesivas siguen siendo básicas y factibles.  rj  0   rj  Donde z j  c j es el coeficiente objetivo del renglón z en la tabla. En la última iteración se encuentra la solución factible (óptima).4 En el ejemplo 5. a medida que se acercan a la factibilidad. la base el método símplex dual es que cada iteración siempre esta asociada a una solución básica.1.1 Condición dual de factibilidad La variable que sale es la variable básica que tiene el valor más negativo (los empates se rompen arbitrariamente). x1 =0. En el símplex dual. Los valores asociados de las funciones objetivos z = 5 y w = 2 5. En este algoritmo se asocian las iteraciones sucesivas con soluciones básicas (factibles o no factibles). Las condiciones de optimalidad y factibilidad se establecen para preservar la optimalidad de las soluciones básicas y al mismo tiempo mover las iteraciones de la solución hacia la factibilidad.5. la programación lineal se inicia en una solución básica que es (mejor que la) óptima. En la iteración final la solución es óptima y no factible al mismo tiempo (suponiendo claro esta que exista una). primal dual y el generalizado con mucha eficiencia en los caculos del análisis de sensibilidad. Lo que se indicara en las siguientes secciones. 5. Se puede aplicar los tres algoritmos. Maneja problemas que comienzan siendo no óptimos y no factibles a la vez.5. 5. asociado con el renglón de la variable de salida x r .5. En esta sección presenta dos algoritmos más: el símplex dual y el símplex generalizado. el problema se inicia en una solución básica factible. hasta que se llega al óptimo en la última iteración.5 Otros algoritmos símplex para programación lineal En el algoritmo símplex que fue presentado en el capítulo 4. 113 .2 Condición dual de óptimalidad La variable que entra se elige de entre las variables no básicas como sigue:  z j  c j  min  . y2 =-1) son soluciones factibles primal y dual. A veces se llama método símplex primal a este algoritmo. Capítulo 5 Texto Guía -Sistemas de Ingeniería Para el inicio de una programación lineal que sea óptima y no factible a la vez. x1  x2  1 O bien también equivale a: x1  x2  1. 2. La función objetivo debe satisfacer la condición de óptimalidad del método símplex regular. la programación lineal tendrá una solución de inicio no factible si.4. Por la segunda condiciones se requiere convertir toda (  ) a (  ). Así. debe cumplir dos condiciones: 1. la tabla de inicio es: Básicas x1 x2 x3 x4 Solución z -2 -3 0 0 0 x3 2 2 1 0 30 x4 -1 -2 0 1 -10 Tabla óptima comienza (todas las z j  c j  0 en el renglón z) y la solución básica de inicio es no factible  x3  30. x 4  10  . Todas las restricciones deben ser del tipo (  ). Minimizar z = 2 x1  3x2 Sujeta a: 2 x1  2 x 2  30 x1  2 x 2  10 x1 . x 2  0 Lo primero que se debe hacer en este ejemplo es el de multiplicar la segunda desigualdad o restricción por -1 para poder convertirlas a restricciones (  ). y solo si al menos uno de los lados derechos de las desigualdades es estrictamente negativo. x1  x2  1 Después de convertir todas las restricciones en (  ). por la solución de inicio ya es óptima y factible. Ejemplo de aplicación 5. solo se debe multiplicar ambos lados de la desigualdad (  ) por -1. 114 . En caso contrario si z es óptima y ninguno de lo lados derechos es negativo no habrá necesidad de aplicar el método símplex dual. Si en la programación lineal hay restricciones (=) se debe reemplazar la ecuación con dos desigualdades. por ejemplo: x1  x 2  1 Equivale a: x1  x2  1. La solución que corresponde es x1  0. La trayectoria se inicia en el punto (0.0).2 se muestra en forma grafica la trayectoria que fue seguida por el algoritmo para resolver el ejemplo de aplicación 5. 115 . se puede observar que una variable x j es candidata a para entrar a la solución básica solo que su  ij sea estrictamente negativa. lo que insinúa que la variable x1 no entra en la variables básicas y es igual a 0). 4 j  0 Por la razón obtenida indica que la variable de entrada es x2 . A continuación se muestra una tabla de cómo se usa la condición dual de óptimalidad para determinar la variable de entrada. Para la compresión del alumno del método símplex dual en la figura 5. Eso quiere decir en el ejemplo no se debe tomar en cuenta las variables x 3 y x4 . Variables x1 x2 x3 x4 Renglón de zz j  c j  -2 -3 0 0 Renglón de x4 . A continuación la siguiente tabla debe obtenerse de la misma manera que se obtiene con las conocidas operaciones de renglón Básicas x1 x2 x3 x4 Solución z -0.5 0 0 -1.5 5 En esta última tabla es factible (y óptima) por lo que se termina el algoritmo (como se observa en esta ultima tabla no hay ya variable que entre por que el resultado de x3 es positivo. x 2  5 y z  15 . por lo que se lo deja en esta tabla.5 1 0 -0. z jc j 4 j .5 15 x3 1 0 1 1 20 x2 0. lo cual no cumple la condición dual de factibilidad. que la variable de salida es aquel que tiene el valor más negativo. en el ejemplo seria x4  10  .4.  4 j -1 -2 0 1 2 3 2 - - Razón.Capítulo 5 Texto Guía -Sistemas de Ingeniería Según la condición dual de factibilidad antes mencionada. (La primera ecuación se multiplico por -1 para dejar ver la no factibilidad en forma directa. se puede poner en la tabla siguiente. x6  es al mismo tiempo no óptima  por x3  y no es no factible  por x 4  8 . pero no factible.2 Algoritmo símplex generalizado El algoritmo símplex (primal) del capítulo 4 inicia siendo factible. x5 . pero no óptimo. en la columna solución). lo cual los detalles pueden hacer perder los detalles de la vista de lo que realmente se trata el algoritmo símplex. Ejemplo de aplicación 5. en el que la solución básica de inicio  x 4 . En el siguiente ejemplo se puede ver lo que se llama algoritmo símplex generalizado. El símplex dual inicia siendo mejor que el óptimo. x3  10 El modelo de programación lineal. Con esta observación el lector debería poder adaptar su propio algoritmo símplex para los modelos de programación lineal que inician no óptimos y no factibles a la vez. lo cual es que la solución óptima de una programación lineal siempre este asociada con una solución de punto de esquina (o básica).Capítulo 5 Texto Guía -Sistemas de Ingeniería Figura 5. el modelo matemático.5. x 2 . Se vio que el símplex primal tiene en cuenta la no factibilidad de la solución de inicio usando variables artificiales. el objeto de estos procedimientos es de ampliar el computo automático. Que pasaría si un modelo matemático de programación lineal se iniciaría no óptimo y no factible al mismo tiempo.2 5. Maximizar z  2x3 Sujeta a:  x1  2 x 2  2 x3  8  x1  x 2  x3  4 2 x1  x 2  4 x3  10 x1 .5. De igual forma que el símplex dual tiene en cuenta la no óptimalidad usando restricciones artificiales. 116 . 2. En general si es que no pudiéramos haber encuentra la factibilidad con la tabla anterior. x4 sea estrictamente negativo.Capítulo 5 Texto Guía -Sistemas de Ingeniería Básicas z x1 x2 x3 x4 x5 x6 0 0 -2 0 0 0 Solución 0 x4 1 -2 2 1 0 0 -8 x5 -1 1 1 0 1 0 4 x6 2 -1 4 0 0 1 10 Este problema se puede resolver sin usar variables ni restricciones artificiales. Se lo puede resolver de la siguiente manera: 1. De la anterior tabla. Para determinar cual es la variable de entrada todo lo que se necesita es una variable no básica cuyo coeficiente de restricción en el renglón de la variable de salida en este caso. pero no óptimo. Quitar la no factibilidad aplicando una versión de la condición símplex dual de factibilidad. que selecciona a x4 como variable de salida. Se puede hacer la selección sin ningún cuidado ya que no afectara la óptimalidad. Es el ocuparse de la óptimalidad que puede ser resuelto aplicando la condición acomodada de óptimalidad del método símplex primal. se puede repetir la veces que sean necesarias hasta encontrar la factibilidad o de otro modo hasta que haya pruebas de que no tenga solución factible. para lo cual se resuelve usando el símplex primal para determinar la solución óptima. una vez atendida la factibilidad el siguiente paso. El resultado es la siguiente tabla: x1 x2 x3 x4 x5 x6 0 -2 0 2 1 -1 0 1 0 x2 0 1 Solución 0 2 0 0 4 x5 1 2 0 2 1 0 0 x6 3 0 3 1 2 1 2 0 1 14 Básicas z 2 Ahora la tabla anterior es factible. por que de cualquier manera es no existente en este punto (compárela con la condición de óptimalidad dual). se resuelve y se obtiene la siguiente tabla: x1 x2 x3 x4 x5 x6 0 -2 0 2 1 -1 0 1 0 x2 0 1 Solución 0 2 0 0 4 x5 1 2 0 2 1 0 0 x6 3 0 3 1 2 1  2 0 1 14 Básicas z 2 117 . 11 1.56 -0. Hacer esto no causa problemas siempre y cuando ninguna de las variables adquiera un valor mayor que su cota superior.11 x2 0 1 0 -0.22 Las respuestas factibles y óptimas son x 2  8.55 Técnica de la cota superior Es común en problemas de programación lineal que algunas o todas las variables individuales x i tengan restricciones de cota superior.11 0.66 x3 0 0 1 0.5 1 0 Solución 0 x2 -0.75 1 0 -0.22 Solución 3. mientras que el número de restricciones de no negatividad casi carece de importancia. en esencia.67 0.44 6.5 0 4 x3 -0.25 -1. y la variable x6 es la variable que sale por la razón mínima que se hace con el método símplex primal.33 0.67 0 0.25 0. La única vez que el método símplex incrementa alguna de las variables es cuando la variable básica entrante aumenta su valor para obtener la nueva solución básica factible.22 0.5 0 0 0.55 x1 1 0 0 -0. Se puso en relieve que el factor determinar en cuanto al tiempo de calculo al correr el método símplex es el número es el número de restricciones funcionales. simplemente aplica el método símplex al resto del problema (es decir.5 0 0 x6 2. un número grande de restricciones de cota superior incluidas en las restricciones funcionales incrementa mucho el esfuerzo computacional requerido.33 8. Básicas z x1 x2 x3 x4 x5 x6 0 0 0 0.5 1 14 Y la tabla óptima es la siguiente (donde la variable que entra es x1 y la que sale es x6 ).25 0 1 0. sin las restricciones de cota superior) pero con la restricción adicional de que cada nueva solución 118 .25 0. Entonces. La técnica de la cota superior evita este mayor esfuerzo al eliminar las restricciones de cota superior del conjunto de restricciones funcionales y al tratarlas por separado.66 0.66 x3  1. lo cual da la siguiente tabla: Básicas z x1 x2 x3 x4 x5 x6 -0.Capítulo 5 Texto Guía -Sistemas de Ingeniería La variable x 3 es la variable que entra por ser el que tiene el coeficiente más negativo. La técnica de la cota superior. xi  u j Donde u j es una constante positiva que representa al máximo valor factible de x j .25 0 0 -1.22 x1  6. como restricciones de no negatividad. en cualquier momento al trabajar con el método símplex se puede: 1. entonces se cambia de opción y su variable de decisión complementaria será la variable básica que sale.  Se cambia de opción solo cuando x j alcanza el otro valor extremo. Sustituir x j por u j  y j . de manera que x j es no básica. la única modificación sustantiva que se hizo al método símplex esta en la regla para elegir la variable básica que sale. se seleccionan la variable básica entrante. pero si por el contrario alcanza su cota superior. se puede elegir entre dos tipos de variables de decisión. Así pues. Para poner en practica esta idea. Si la variable básica que sale adquiere el valor cero.  Si x j  0 . 2. se utiliza la opción 2. en este caso su variable complementaria se convierte en la variable que sale).  Si x j  u j . note que una variable de decisión x j con una restricción de cota superior x j  u j siempre se puede sustituir por: xj  uj  yj En donde y j será entonces la variable de decisión. con la modificación que se acaba de hacer. ya sea por volverse negativa o por sobrepasar la cota superior cuando se incrementa la variable básica entrante. siempre que una variable básica llega a su cota superior se debe cambiar de opción y usar su variable de decisión complementaria como la nueva variable no básica (la variable que sale) para identificar la nueva solución básica factible. (Obsérvese que una posibilidad es que la variable básica entrante se vuelva no factible si adquiere un valor mayor que su cota superior. En otras palabras. La técnica de la cota superior emplea la siguiente regla para hacer esta elección:  Regla: comenzar con la opción 1. en donde 0  y j  u j . Recuerde que el método símplex elige como variable básica que sale a aquella que seria la primera en convertirse básica entrante. Entonces. 119 . se selecciona la variable que seria la primera en no factible en cualquier dirección. (Se hará referencias a x j y y j como variable de decisión complementarias) como: 0  xj  uj También se cumple que: 0  yj  uj Entonces. con la modificación que se acaba de hacer. se utiliza la opción 1. se procede con el método símplex en forma normal. la cantidad mayor que cero ( x j ) o la cantidad menor que u j ( y j  u j  x j ). Usar en donde 0  x j  u j .Capítulo 5 Texto Guía -Sistemas de Ingeniería básica factible debe satisfacer las restricciones de cota superior además de las normales de cota inferior (no negatividad). En cambio. En cambio. de manera que y j  0 es no básica. Para la ecuación (1). u 2  15. z z  2x1  ( 4 x1  2(2 x1  2x1  x2  x2  2x3  x3 = 0 = 12) = 4) = 20 Para comenzar con la primera iteración. u3  6 ). el conjunto inicial completo de ecuaciones y los cálculos correspondientes para seleccionar la variable básica que sale se muestra en la tabla siguiente: Conjunto inicial de ecuaciones (0) (1) (2) z  2x1  4x1  2x1  x2  x3 = 20 = 12 = 4 Valor factible máximo de x1 x1  4 (ya que u1  4 ) 12 x1  = 3 4 64 x1  = 1  mínimo (ya que u 3  6 ) 2 La segunda columna muestra cuanto puede aumentar la variable básica entrante x1 antes de que alguna variable básica (incluyendo a x1 ) se vuelva no factible. x2 y x3 se pueden usar como variables básicas iniciales estas variables de la función objetivo para obtener la ecuación (0) inicial. como el coeficiente de x1 es positivo. Ahora. Ahora bien. la variable básica ( x2 ) en esta ecuación disminuye de 12 a su cota inferior de cero. esta ecuación (0) inicial indica que la variable básica entrante inicial es x1 . Las dos restricciones de igualdad se encuentran ya en la forma apropiada de eliminación de Gauss para identificar la solución básica factible inicial ( x1  0. así. Este ultimo valor máximo de x1 es el más pequeño. x2  12. como x3 alcanzo su cota superior. x3  4 ) y ninguna de las variables de esta solución excede su cota superior. x3 se sustituye por 6  y3 de manera que y3  0 se convierte en la nueva variable no básica en la siguiente 120 . En la ecuación (2). Maximizar z  2 x1  x2  2 x3 Sujeta a:  x2 4x1  2x1 0  x1  4 =  x3 = 0  x2  15 12 4 0  x3  6 Así. Como las restricciones de cota superior no están incluidas. lo que determina que x3 sea la variable básica que sale. al aumentar a 3 su valor. el coeficiente de x1 es negativo.6.Capítulo 5 Texto Guía -Sistemas de Ingeniería Ejemplo de aplicación 5. las tres variables tienen restricciones de cota superior ( u1  4. por lo que se aumenta su valor a 1 la variable básica ( x3 ) en esta ecuación aumenta de 4 a su cota superior de 6. el valor máximo que se da a la ecuación (0) es sencillamente la cota superior para x1 . análisis de post óptimalidad. dependencia de subcontratistas y proveedores. Los ingenieros generalmente se ven inmersos en un entorno dinámico e inestable donde aun los planes a corto plazo deben reevaluarse constantemente y ajustarse de manera incremental. inestabilidad funcional y tolerancia. y3 =0. modelación de escenarios. 5.6 Análisis Pos-óptimo o de sensibilidad El entorno de la construcción y de la ingeniería civil muchas veces es impredecible e incierto debido a factores tales como cambios económicos. después de eliminar algebraicamente x1 de todas las demás ecuaciones. x2 = 8. El análisis de sensibilidad es un conjunto de actividades posteriores a la solución que sirven para estudiar y determinar qué tan sensible es la solución a los cambios en las hipótesis. El uso de modelos se ve perjudicado por la inevitable presencia de incertidumbres. análisis de inestabilidad numérica. inversiones financieras. reglamentaciones públicas. análisis de especificidad. Normalmente su uso es el culpable. De acuerdo con la prueba de óptimalidad. Este reemplazo lleva a los siguientes cambios en esa ecuación:  2x1 (2)    2x1  2x1 + + −  x1 + x3 6  y3 1 y3 2 y3 = = = 4 4 2 = 1 Entonces. con frecuencia para conocer los posibles resultados de uno o más planes de acción. El hombre utiliza la construcción (modelos) matemáticos e informáticos para una variedad de entornos y propósitos. Toda solución a un problema de toma de decisiones se basa en determinados parámetros que se presumen como fijos. el segundo conjunto completo de ecuaciones es: (0) (1) (2) z  x2  x1 + − + y3 2 y3 1 y3 2 = 22 = 8 = 1 La solución básica factible que se obtiene es x1 = 1. por lo que x1 = 1. se trata de una solución óptima. Recuerde que las sorpresas no forman parte de una decisión sólida. Todo esto requiere una mentalidad orientada al cambio para hacer frente a las incertidumbres. desde la construcción y corroboración del modelo en sí hasta su uso. Estas actividades también se denominan análisis de estabilidad. x3 =6 − y3 = 6 es la solución que se busca para el problema original. aumentos y disminuciones admisibles y muchos otros términos similares que reflejan la importancia de esta etapa del proceso de modelación. análisis what-if o de hipótesis. prácticas industriales e impactos ambientales. que surgen en distintas etapas. x2 = 8. análisis de incertidumbre. etc.Capítulo 5 Texto Guía -Sistemas de Ingeniería solución básica factible y x1 se convierte en la nueva variable básica en la ecuación (2). Esto puede relacionarse con la construcción. 121 . "análisis de sensibilidad" y "análisis de estabilidad".Capítulo 5 Texto Guía -Sistemas de Ingeniería Se puede hacer frente a las incertidumbres de una manera más "determinista". Resulta vital comprender la influencia de lo antedicho en el plan de acción sugerido por el modelo por las siguientes razones:  Pueden presentarse distintos niveles de aceptación (por el público en general. 122 . en las recomendaciones del científico de administración. Las sorpresas no forman parte de las decisiones óptimas sólidas.  La relevancia del modelo. etc. Para identificar sensibilidad o variables importantes. de manera subjetiva. Esto se lleva acabo antes de focalizarse en los detalles de cualquier "escenario" o modelo. Para permitir a los decisores seleccionar hipótesis. Para comunicar una falta de compromiso a una única estrategia. Para desarrollar recomendaciones flexibles que dependan de las circunstancias. Existen numerosos ejemplos de entornos donde esto es aplicable. "modelación determinista". El decisor debe incorporar algunas otras perspectivas del problema tal como perspectivas culturales. por los decisores. Para evaluar el riesgo de una estrategia o escenario. psicológicas. Este abordaje tiene distintos nombres tales como "modelación de escenarios". políticas. Análisis y pronóstico de riesgo. robustez y eficiencia del modelo. por las partes interesadas) a distintos tipos de incertidumbre. comprensibles. o valores de equilibrio donde cambia la estrategia óptima. depende en gran medida del impacto de la incertidumbre sobre el resultado del análisis. Optimización y calibración de modelos. Para investigar soluciones sub-óptimas. umbrales. contundentes o persuasivas. Comunicación:     Para formular recomendaciones más creíbles. Para identificar los valores críticos. sigue una lista abreviada de las razones por las cuales se debe tener en cuenta el análisis de sensibilidad: Toma de decisiones o desarrollo de recomendaciones para decisores:        Para probar la solidez de una solución óptima. La idea es generar. A continuación. Para comparar los valores de las estrategias de decisión simples y complejas.  Distintas incertidumbres tienen distintos impactos sobre la confiabilidad. una lista ordenada de incertidumbres importantes que supuestamente podrían tener un mayor impacto sobre el resultado final. Las sorpresas no forman parte de las decisiones óptimas sólidas. tales como:    Construcción de indicadores. para  La solución actual se vuelve no óptima. ¿Cuáles parámetros son estimados? Respuesta.  Usar el símplex primal recuperar la óptimalidad.  Usar el método símplex generalizado para obtener una nueva solución. para  La solución actual se vuelve no óptima y no factible. Para priorizar la adquisición de información. Condiciones resultante de los cambios  La solución actual queda óptima y factible. al mismo tiempo. 123 .  Acción recomendada No es necesaria acción alguna.  La solución actual se vuelve no factible.  Usar el símplex dual recuperar la factibilidad. Los parámetros que son estimados más a menudo son: los coeficientes (utilidad unitaria o costos unitarios) de las variables de la función objetivo. Para calibrar el modelo.Capítulo 5 Texto Guía -Sistemas de Ingeniería Aumentar la comprensión o aptitud del sistema:   Para estimar la relación entre las variables de entrada y las de salida. así como la acciones necesarias para obtener la nueva solución (si es que existiera): El análisis pos-óptimo se refiere a la determinación de los efectos causados sobre la solución óptima. El análisis de sensibilidad o pos-optimidad investiga y trata del cambio de la solución óptima que resulta de hacer cambios en los parámetros del modelo matemático de la programación lineal. Para comprender la relación entre las variables de entrada y las de salida. en la tabla siguiente se describe todos los posibles casos que puedan darse en el análisis de sensibilidad. Para hacer frente a la falta o insuficiencia de datos. Para buscar errores en el modelo Para simplificar el modelo. Para desarrollar pruebas de las hipótesis. En un modelo de programación lineal en general. los números del lado derecho de las restricciones y los coeficientes de las variables de las restricciones. por las variaciones en los parámetros. Desarrollo del modelo:       Para probar la validez o precisión del modelo. Pregunta. respectivamente. en las 3 operaciones son 1. 2. respectivamente y las utilidades por el ladrillo de 3era Clase. 3. y 3  0. x2 y x 3 representan la cantidad diaria de unidades fabricadas de ladrillos de 3 Clase. En el siguiente ejemplo se muestra este procedimiento: Ejemplo de aplicación 5. 5. 4) y (1. y 2  2.A. Cambia el lado derecho de las restricciones.1 Cambios en el lado derecho. 2. 460 y 420 minutos. una o más de las variables básicas actuales se vuelve negativa. 3 y 1 minutos. 0. fabrica tres tipos de ladrillos: Ladrillo de 3era Clase. En ambos casos se tiene no factibilidad cuando al menos un elemento del lado derecho en la tabla óptima se hace negativo. 0) minutos (un tiempo de cero indica que no se uso la operación). los cuales se hacen con 3 operaciones. x 2  100 . usando la Formula 1 (véase sección 5.Capítulo 5 Texto Guía -Sistemas de Ingeniería 5. Ladrillos S. Los tiempos respectivamente para el de 2da Clase y 1era Clase son (2.7. z  1350 Bs 124 . z  1350 Bs Problema Dual Minimizar w  430 y1  460 y 2  420 y 3 Sujeta a: y1  3 y 2  3 y 3  3 2 y1  4 y3  2 y1  2 y 2 5 y1 . Se agrega al modelo una restricción nueva. y 2 . respectivamente. Los tiempos de fabricación de la 3era Clase. 2da Clase y 1era Clase y si los modelos de programación lineal primal y dual son los siguientes: era Problema Primal Maximizar z  3 x1  2 x 2  5 x3 Sujeta a: x1  2 x 2  x3  430 Operación1 3x1  2 x3  460 x1  2 x3  420 Operación 2 Operación 3 x1 .7. Estos cambios requieren volver a calcular el lado derecho de la tabla. x 2 . y 3  0 Solución Óptima: y1  1. 2 y Bs. 2da Clase y 1era Clase son Bs. Ladrillo de 2da Clase y Ladrillo de 1era Clase. x3  0 Solución Óptima: x1  0. Si x1 . Los límites diarios de tiempo disponible para las tres operaciones son 430. Bs. esto es. x3  230 .7 Cambios que afectan la factibilidad La factibilidad de la solución óptima solo puede variar si: 1. 5.6) lo cual es: Columna de restricción en iteración i = = Inversa en la iteración i =  Columna original de restricción Formula 1 Se tiene que tener en cuenta. de que el lado derecho de la tabla expresa los valores de las variables básicas. respectivamente. 322 y 328. el vector del lado derecho) es determinar el intervalo para la cual la solución actual o del momento permanece factible.7. x 3 y x6 siguen siendo factibles con los nuevos valores 140. Con esos aumentos. hasta 602. lo cual la nueva solución básica se determina como sigue: Nuevo lado derecho de la tabla en la iteración i = Inversa en la = iteración i =  Nuevo lado derecho de la iteración i Formula 1  1  1 0  602  140  4  x2   2        1 0  644    322   x3    0  2 x       1 1  588   328   6   2   Lo cual las nuevas variables básicas x2 . desea ampliar su capacidad de fabricación aumentando en un 40 % la capacidad diaria de cada una. 5.2 Intervalos de factibilidad de los elementos del lado derecho.A. La utilidad óptima correspondiente es 1890 Bs. el único cambio que se hará en la tabla óptima es el lado derecho de las restricciones (y el valor objetivo óptimo). Otra forma de examinar el efecto de cambiar la disponibilidad de los recursos (es decir. 644 y 588 minutos.Capítulo 5 Texto Guía -Sistemas de Ingeniería La tabla inicial del primal es la siguiente: Básicas x1 x2 x3 x4 x5 x6 Solución z -3 -2 -5 0 0 0 0 x4 1 2 3 1 0 0 430 x5 3 0 2 0 1 0 460 x6 1 2 0 0 0 1 420 La tabla óptima del problema primal es la siguiente x1 x2 x3 x4 x5 x6 0 0 1 0 1 1 2 2 1 0 x2 4 1 Solución 1350 0 100 x3 3 0 1 0 0 230 0 0 -2 1 2 1 1 20 Básicas z 4 2 2 x6 4 Supongamos que Ladrillos S. El siguiente ejemplo se muestra este procedimiento: 125 . 7.7. la nueva restricción NO afecta la solución óptima. De lo contrario. la solución básica permanecerá factible si todas las variables básicas son no negativas esto es se ve a continuación: D1    1  1 0  430  D1  100  2   0  4  x2   2          1 0  460    230    0  x3    0  2     x     1 1  420   20  20 D1   0   6   2       Las condiciones que resultan llevan a las siguientes cotas de D1: x2  0 : 100  D1  0  D1  200 x3  0 : x3 es independiente de D1 x6  0 : 20  2 D1  0  D1  10 Lo cual se nota que la solución cuando se encuentre en el siguiente rango será factible:  200  D1  10 Lo cual equivale a variar los minutos de disponibilidad de la operación en el siguiente intervalo: 430  200  Capacidad de la operacion1  430  10 230  Capacidad de la operacion1  440 El cambio en el valor objetivo óptimo que esta relacionado con D1 es D1 y1 . se quiere suponer que lo que interesa es determinar el intervalo de factibilidad de la capacidad de la operación 1. Si la restricción no se viola. en Bs. 5.Capítulo 5 Texto Guía -Sistemas de Ingeniería Ejemplo de aplicación 5. representara el cambio de la operación 1..A.8. el nuevo problema debe resolverse para obtener la nueva solución óptima. por minuto de la operación 1. En el modelo utilizado anteriormente de Ladrillos S.1 Añadir una nueva restricción El proceso: Introduzca la solución óptima corriente en la restricción recién añadida. Se puede hacer reemplazando el lado derecho con:  430  D1     460   420    La cantidad D1.3 Cambios realizados en una restricción 5. arriba y debajo del valor actual de 430 minutos. siendo y1 el valor por unidad (precio dual). 126 .3. se puede eliminar por completo del modelo. A continuación mostraremos uno de los cambios que se puede realizar en una restricción: 5. Se debe observar que la adicción de una nueva restricción como en el caso 2.3. La nueva restricción es redundante (es decir sobrante). Para determinar el nivel de dual. Si es obligatoria. 5.4 Añadir una variable (por ejemplo. el reemplazo puede afectar la solución óptima corriente.3 Reemplazar una restricción Supongamos que se reemplaza una restricción por una nueva. importante) hallando si el valor de holgura/excedente es cero.7. activa. introducir un nuevo producto) El proceso: Construya la nueva restricción del problema solución óptima corriente es óptima. la supresión puede cambiar la solución óptima corriente.3. la producción del nuevo producto (es decir. De lo contrario (si no es una restricción obligatoria). 5. 2. Si es obligatoria.7. Suprima la restricción y resuelva el problema.7. De lo contrario.5 Suprimir una variable (es decir. De lo contrario (si no es una restricción obligatoria).3. reemplace la restricción anterior por la nueva y resuelva el problema. Inserte la solución dual en esta restricción.6 Adicción de nuevas restricciones. De lo contrario (si la solución corriente no satisface la nueva restricción).2 Texto Guía -Sistemas de Ingeniería Suprimir una restricción El proceso: Determine si la restricción es obligatoria (es decir. La solución actual viola la nueva restricción. determine si la solución corriente satisface la nueva restricción. y luego resuelva el problema.3. y en este caso se puede aplicar el Método Símplex Dual para recuperar la factibilidad. de lo contrario produzca el nuevo producto (la solución óptima corriente ya no es más óptima). ¿Cuál es el efecto de este intercambio? El proceso: Determine si la restricción previa es obligatoria (es decir.3. entonces este intercambio no afectará la solución óptima. activa. Si la restricción se satisface.7. suprima la variable de la función objetivo y las restricciones. la supresión no afectará la solución óptima. NO produzca el nuevo producto. Reemplace la restricción y resuelva el problema. por lo cual se quiere decir que se satisface con la solución óptima actual y por consiguiente. 5. importante) hallando si el valor de holgura/excedente es cero. entonces la solución óptima corriente sigue siendo la óptima sin incluir la variable. nunca puede mejorar el valor objetivo óptimo actual. el valor de la variable suprimida es cero.Capítulo 5 5.7. una solución óptima mejor) resuelva el siguiente problema. Si la satisface. cancelar un producto) El proceso: Si para la solución óptima corriente. 127 . La adicción de una nueva restricción a un modelo existente puede llevar a uno de los dos casos siguientes: 1. y los tiempos por unidad. Todos los datos restantes del modelo quedaran iguales. Se supone que en Ladrillos S. respectivamente. se debe sustituir y eliminar sus coeficientes de restricción en el renglón de x7 . x3  230 .Capítulo 5 Texto Guía -Sistemas de Ingeniería Ejemplo de aplicación 5.A. 3 y 1 minutos. 1 y 1 minutos. lo cual inferimos de que se queda satisfecha con la solución óptima actual x1  0.9. ahora la cuarta restricción quedara así: 3 x1  3 x 2  x3  500 Por lo que se nota reemplazando los valores de x1  0. cambia la forma de fabricación de los ladrillos y que para este cambio se requiere agregar o aumentar una 4ta operación en las fases de fabricación. como se ve a continuación (donde x7 es holgura). se tiene 530  500 lo cual no queda satisfecha por la solución actual. La capacidad diaria de la nueva operación es de 500 minutos. x3  230 . para la cuarta operación son 3. Ahora pongamos que los tiempos por unidad para Ladrillos S. La restricción resultante se forma. x 2  100 .A. como sigue: 3x1  x 2  x3  500 Este restricción es redundante como se hablo anteriormente. x 2  100 . z  1350 Bs . Lo cual debemos aumentar la nueva restricción a la tabla óptima actual. Eso quiere decir que la solución óptima actual permanece sin cambios. para los tres productos en esta operación son 3.. lo que se puede hacer con la siguiente operación: Nuevo renglón de x7 =Renglón anterior de x7 -{3× (renglón de x2 )+ 1× (renglón de x 3 )} 128 . respectivamente. por consiguiente. Como se muestra la siguiente tabla: x1 x2 x3 x4 x5 x6 x7 0 0 0 2 1 0 1 1 1 2 0 x2 4 1 Solución 1350 0 0 100 x3 3 0 1 0 0 230 0 0 -2 1 2 1 0 x6 2 2 1 0 20 x7 3 3 1 0 0 0 1 500 Básicas z 4 4 Como se puede observar las variables x2 y x 3 son básicas. 8 Cambios que afectan la óptimalidad En esta sección se examinan dos soluciones particulares que podrían afectar la óptimalidad de solución actual: 1. El nuevo renglón de z satisface la condición de óptimalidad. 5.. por los ladrillos de 3era Clase.1 Cambios en los coeficientes de la función objetivo. Ejemplo de aplicación 5. 2. las utilidades por unidad son Bs. Calcular los valores duales con los Métodos 1 y 2 de la sección 5.8. respectivamente.6 2. x3  230 . y la solución permanece sin cambio (sin embargo. Por consiguiente requieren recalcular los coeficientes del renglón z.10. z  1330 Bs . y en ese caso se aplica el Método Símplex (primal) para recuperar la óptimalidad. 5. Esos cambios solo afectan la óptimalidad de la solución. Usar valores duales en la Formula 2 de la sección 5. 2. 3 y Bs. con el siguiente procedimiento: 1. Cambios en los coeficientes objetivo originales. supongamos que la empresa tiene una nueva política para igualar la competencia. En el modelo ya utilizado de Ladrillos S. 2da Clase y 1era Clase. para determinar los nuevos coeficientes en el renglón z. 4. Bajo la nueva política.A. 2. Bs. la nueva función objetivo es: Maximizar z  2 x1  3 x 2  4 x3 129 . el valor objetivo óptimo puede cambiar). x 2  90. La condición de óptimalidad no se satisface.Capítulo 5 Texto Guía -Sistemas de Ingeniería Entonces la nueva tabla es la siguiente: x1 x2 x3 x4 x5 x6 x7 0 0 0 2 1 0 1 1 1 2 0 x2 4 1 Solución 1350 0 0 100 x3 3 0 1 0 0 0 230 0 0 -2 1 2 1 1 0 20 0 0 3 1 4 0 1 -30 Básicas z x6 x7 4 2 2 9 4 2 4 Luego se aplica el método símplex dual lo cual dará como resultado la nueva solución óptima: x1  0. Adición de una nueva actividad económica (variable) al modelo.6. Se presentaran dos casos: 1. y 3  0 Y la nueva tabla inicial del primal es la siguiente: Básicas z x1 x2 x3 x4 x5 x6 -2 -3 -4 0 0 0 Solución 0 x4 1 2 3 1 0 0 430 x5 3 0 2 0 1 0 460 x6 1 2 0 0 0 1 420 Así: (Nuevos coeficientes objetivo de x2 . independientemente de los cambios que se haya hecho a los coeficientes objetivos. y 2 .   x1 : y1  3 y 2  y 3  2  3  3 5  0  2  13 2 4 4 x 4 : y1  0  3 2 x5 : y 2  0  5 4 130 . 0) Las variables duales se calculan con el Método 1 de la sección 5. 4.6). x 2 .Capítulo 5 Texto Guía -Sistemas de Ingeniería Problema Primal Maximizar z  2 x1  3 x 2  4 x3 Sujeta a: x1  2 x 2  x3  430 Operación1 3x1  2 x3  460 x1  2 x3  420 Operación 2 Operación 3 Problema Dual Minimizar w  430 y1  460 y 2  420 y 3 Sujeta a: y1  3 y 2  3 y 3  2  4 y3  3 2 y1 y1  2 y 2 x1 . x 3 y x6 básicas) = (3.0  y1 . 5 . No es necesario otra vez calcular los coeficientes de las variables básicas x2 .0 0  2 2 4  2  1 1       Los coeficientes del renglón z se determinan como la diferencia entre los lados izquierdos y derecho de las restricciones duales (formula 2. y3   3. x3  0 4 y1 .4. como sigue:  1  1 0  2  4  1 0  3 . por que siempre son iguales a cero. sección 5. x 3 y x6 en el renglón objetivo. y 2 .6. Esto se hace reemplazando el cj actual con cj + dj. el coeficiente nuevo en la función objetivo modificada.2 Intervalo de óptimalidad de los coeficientes objetivo. lo cual nos da: x1 : y1  3 y 2  y 3  3  d1   1  32  0  3  d1   4  d1 131 .Capítulo 5 Texto Guía -Sistemas de Ingeniería Notamos que el lado derecho de la restricción dual asociada con x1 es 2. x1  0.5. Los cálculos indican en la solución actual. Los valores duales no se verán afectados por este cambio y en consecuencia permanecerán igual que en el modelo original es decir y1  1. es: Maximizar z  6 x1  3 x 2  4 x3 Los cambios correspondientes en el renglón z se indican en la siguiente tabla: Básicas z 3 x2 1 x3 3 x6 x2 x3 x4 x5 x6 Solución 4 0 0 3 5 0 1220 4 1 0 2 1 2 0 100 0 1 0 0 230 0 0 -2 1 20 x1 2 2 4 1  4 1 2 1 Los elementos que están en la celda sombreada son las nuevas z j  c j para las variables no básicas x1 . Pero hay que observar que la variable x1 no es básica en la tabla óptima. como x1 es no básica. cambia a: Maximizar z  3  d1 x1  2 x 2  5 x3 Determinar el intervalo de óptimalidad para el cambio d1.50 Bs 5. Lo cual nos indica que debemos emplear la formula 2 sección 5. En realidad. La nueva utilidad se calcula de la siguiente manera como 2×0 + 3×100 + 4×230 = Bs.8.6 a la restricción dual asociada solo con x1 . x4 y x 5 . Entonces la nueva solución óptima se determina haciendo entrar x1 y salir x6 con lo que se da es: x1  10. y 3  0 . x 2  102 . x 2  100 . Otra forma de investigar el efecto de los cambios en los coeficientes de la función objetivo es calcular el intervalo para el que cada coeficiente individual mantenga la solución óptima actual. 1220. x3  230 .A. Ejemplo de aplicación 5. Seguiremos el procedimiento que se describió arriba. solo afectara su coeficiente en el renglón z y todos los demás coeficientes de ese renglón permanecerán sin cambio. Ahora supongamos que la función objetivo de Ladrillos S. donde dj representa la cantidad (positiva o negativa) de cambio. todos los elementos restantes de la tabla son iguales a los de la iteración original óptima. x3  215 y z  1227 . y 2  2.11.A. Supongamos que la función objetivo del modelo Ladrillos S. La adición de una nueva actividad en un modelo de programación lineal equivale a agregar una nueva variable.8. Esta condición se puede comprobar aplicando la Formula 2 de la sección 5. 4 y los tiempos de fabricación son de 1 minuto en cada de las operaciones 1 y 2. En forma intuitiva. Ejemplo de aplicación 5. la adición de una nueva actividad solo es deseable si es rentable.6. se puede considerar como una variable no básica. Sea x7 el nuevo producto. el costo reducido se puede calcular como sigue: 1y1  1y 2  2 y 3  4  1  1  1  2  2  0  4  1 Según lo obtenido resulta conveniente económicamente la inclusión de la variable x7 en la solución óptimo se calcula primero la columna de restricciones con la Formula 1 sección 5. Ladrillos S. Ladrillos S. como sigue:  1  1 0 1   2 1   4  4    1 0 1    1  Columna de restricción de x7   0   2 2  2    2  1 1    1       132 . La empresa quiere remplazar los ladrillos de 3er Clase con un nuevo producto. y 2 minutos en la operación 3. la actividad no es rentable. y 2  2.12. 5. reconoce los ladrillos de 3er Clase no se producen en la actualidad por que no son rentables. a la nueva actividad. es un problema de maximización. En caso contrario. Si la Formula 2 de la sección 5. solo sirve si mejora el valor óptimo de la función objetivo. Como esa nueva actividad no es todavía parte de la solución. es mejor tener en cuenta la nueva actividad. la solución original permanecerá óptima siempre que: 4  d1  0 Ósea d1  4 Analizando y remplazando quiere decir que la solución actual permanecerá óptima siempre que el coeficiente objetivo c1  3  d1  de x1 no sea mayor que 3 + 4 = Bs.Capítulo 5 Texto Guía -Sistemas de Ingeniería Como el modelo de Ladrillos S.A. Como y1  1. Lo cual quiere decir que los valores duales asociados con la solución actual permanecen invariables. 7. indica que la nueva actividad satisface la condición de óptimalidad.6.3 Adición de una nueva actividad.A. estima que la utilidad por esta nueva clase es de Bs. y 3  0 son los valores duales óptimos. un ladrillo de diferente clase pero que utilice las instalaciones existentes.6.A. y que esos valores cero se cambiaron a los nuevo valores que se dan para x7 . y en ese caso se debe salir x6 . x3  125.Capítulo 5 Texto Guía -Sistemas de Ingeniería Así se debe modificar la tabla símplex actual como sigue: x1 x2 x3 x7 x4 x5 x6 0 0 1 0 1 1 2 2 1 0 100 x3 3 0 1 0 230 0 1 2 1 0 0 -1 1 4 1 2 1 0 x2 4 1 Solución 1350 1 20 Básicas z x6 4 2 2 -2 4 Se determina el nuevo óptimo haciendo entrar x7 a la solución básica. La nueva solución será: x1  0. x7  210 y z  1465 Bs . En forma especifica se puede considerar a x7 como si al principio tuviera un coeficiente de objetivo cero y uso cero de los tres recursos. en una actividad existente. En el caso de agregar una actividad nueva también abarca al caso en que se hicieron cambios a los usos de los recursos. x 2  0. 133 . Por esta razón no se describirá por separado el caso de cambiar los coeficientes de restricción de una variable existente. w2 ≥1 w3 ≤ 0 b) Fo: Sa: Min z = 4x1 + 5x2 x1 – 2x2 ≤ 2 2x1 + x2 ≤ 6 x1 + 2x2 ≤ 5 x1 + x2 ≥ 1 x1 . a) Fo: Max z = -5w1 .2w2 + 1 w3 Sa: w1 + w2 + w3 ≥ 10 5w1 . x2 ≥ 0 Dar el dual del modelo primal. Dados los siguientes problemas lineales. x2 ≥ 0 c) Fo: Sa: Min z = 3x1 – 2x2 x1 + x2 ≥ 0 3x1 + 5x2 ≥ 0 5x1 + 3x2 ≥ 0 2x1 – 3x2 ≥ 4 x1. plantear su primal y dual hallando las soluciones simétricas. Considere el siguiente modelo de programación lineal MODELO PRIMAL Maximizar z = 2x1 + 3x2 – 4x3 Sujeto a 5x1 + 6x2 + 7x3 ≤ 8 8x1 – 9x2 + 10 x3 ≤ 11 x1. 3. x2. 134 .Capítulo 5 Texto Guía -Sistemas de Ingeniería 5.w3 ≥ 15 w1 . x3 ≥ 0 Dar el dual de este modelo. x2 NO RESTRINGIDO 2. Considere el siguiente modelo de programación lineal MODELO PRIMAL Maximizar z = 2x1 + 3x2 Sujeto a 4x1 + 5x2 ≤ 6 7x1 + 8x2 ≤ 9 x1.9 Problemas propuestos 1. hacer su interpretación económica y aplicar los teoremas de dualidad. Considere el siguiente modelo de programación lineal MODELO PRIMAL Maximizar z = 2x1 + 3x2 Sujeto a 1x1 ≤2 1x2 ≤2 x1. x2 ≥ 0 Dar el dual de este modelo. x2. La solución óptima de este modelo primal se da en el siguiente tablero símplex. Considere el siguiente modelo de programación lineal MODELO PRIMAL Minimizar z = 2x1 + 3x2 Sujeto a 4x1 + 5x2 ≥ 6 7x1 + 8x2 ≤ 9 x1. x2. 6. Usando este tablero símplex. Variable z x1 x2 x3 S1 S2 Valor Básica 0 1 0 1 1 0 x1 4 0 0 1 2 0 1 x2 6 z 1 0 0 12 2 3 24 Dar la solución óptima para el dual del modelo primal anterior. 135 . Considere el siguiente modelo de programación lineal MODELO PRIMAL Maximizar z = 2x1 + 3x2 – 4x3 Sujeto a 5x1 + 6x2 + 7x3 ≤ 8 9x1 – 10x2 + 11 x3 = 12 13x1 – 14x2 + 15 x3 ≥ 16 x1. El modelo de programación lineal MODELO PRIMAL Maximizar z = 2x1 + 3x2 – 4x3 Sujeto a 1x1 + 0x2 + x3 ≤ 4 0x1 + 1x2 + 2x3 ≤ 6 x1. Variable z x1 x2 S1 S2 Valor Básica 0 1 0 1 0 x1 2 0 0 1 0 1 x2 2 z 1 0 0 2 3 10 Dar el dual del modelo primal anterior.Capítulo 5 Texto Guía -Sistemas de Ingeniería 4. x3 ≥ 0 La solución óptima de este modelo primal se da en el siguiente tablero símplex. Muestre que la solución óptima del modelo primal y la del modelo dual satisfacen las condiciones de holgura complementaria. x2≥ 0. dar la solución óptima para el modelo dual. x3 ≥ 0 Dar el dual de este modelo. 5. 7. x3 ≥ 0 La solución óptima de este modelo primal se da en el siguiente tablero símplex. Muestre que las soluciones óptimas de ambos modelos satisfacen las condiciones de holgura complementaria. Variable Básica x1 x2 z z x1 x2 x3 S1 S2 Valor 0 0 1 1 0 0 0 1 0 1 1 9 -1 1 1 0 1 3 4 2 14 Dar la solución óptima para el dual del modelo primal. El modelo de programación lineal MODELO PRIMAL Maximizar z = . Variable Básica x1 x2 z z x1 x2 x3 -S1 S2 Valor 0 0 1 1 0 0 0 1 0 1 1 9 -1 1 1 0 1 3 4 2 14 Dar la solución óptima para el dual del modelo primal anterior. 9. Muestre que las soluciones óptimas del primal y del dual.2x1 – 3x2 + 4x3 Sujeto a 1x1 + 0x2 + x3 ≥ 4 1x1 + 1x2 + 2x3 ≤ 6 x1. x2. 10. Resuelva por el Dual y de la tabla óptima del primal Minimizar w = 3y1+2y2-y3 Sujeto a: y1+2y2-y3≥10 2y1+y2+2y3≥8 y1+y2+y3≥0 136 . x2.Capítulo 5 Texto Guía -Sistemas de Ingeniería 8. satisfacen las condiciones de holgura complementaria. x3 ≥ 0. El modelo de programación lineal: MODELO PRIMAL Minimizar z = . tiene la solución óptima dada en el tablero siguiente.2x1 – 3x2 + 4x3 Sujeto a 1x1 + 0x2 + x3 ≥ 4 1x1 + 1x2 + 2x3 ≤ 6 x1. Al resolverlo como un problema equivalente a un problema de maximización de utilidades. universia. Wrigth.geocities. [Sexta Edición] 5.Capítulo 5 Texto Guía -Sistemas de Ingeniería 5.11 Enlaces  http://apuntes.mx/publica/tutoriales/investoper1/unidad4.html 137 .ppt  www. Gerald J. Gordon P.mx/dii/elagarda/apagina2001/ PM/word/dualidadysensibilidad.  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S.itson.10 Bibliografía  MODELOS LINEALES DE OPTIMIZACIÓN – Rafael Terrazas Pastor [Segunda Edición]  INVESTIGACIÓN DE OPERACIONES – Hamdy A. Herbert.net/app/es/showcourse.itlp.htm  http://cursos.rincondelvago. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz. Hillier.com/analisis-de-sensibilidad. Lieberman.com/gilberto-rojas/index35.asp?cid=2146  www.edu.html  http://www. Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 CAPÍTULO 6 MODELO DE TRANSPORTE 6.1 Introducción Comúnmente se han considerado como un caso particular de los problemas lineales los problemas de transporte y de asignación. Pero hemos de notar que se trata en realidad de problemas de programación entera, dado que las variables que aparecen en estos problemas son variables que han de tomar valores enteros. Este tipo de problemas los vamos a tratar como problemas especiales de programación lineal, dado que su estructura especial ha hecho que se desarrollen algoritmos específicos para este tipo de problemas, más eficientes que el método símplex. No obstante, estamos más interesados en plantear su estructura que en su resolución particular. Para ello recurriremos al uso del algoritmo de símplex, aunque indicaremos diferentes programas de software donde encontrar los algoritmos particulares para este tipo de problemas. 6.2 Antecedentes del problema La primera referencia escrita de este problema se remonta a 1781, cuando el matemático francés Gaspard Monge describe el problema de la construcción y abastecimiento de fortificaciones militares de los ejércitos de Napoleón. Monge era entonces general de los ejércitos napoleónicos. Para resolver este problema usó el método de “cortar y llenar”, es decir, ir abasteciendo las diferentes trincheras desde los depósitos de material existentes. Formalmente, este problema aparece en 1941 cuando F.L. Hitchcock publica una solución analítica para este problema, aunque su desarrollo se produce a finales de los años 40, cuando Koopmans (un joven holandés) realiza su tesis doctoral sobre los problemas de embarque de la marina holandesa. A partir de ese momento el campo de aplicación del problema del transporte empieza a crecer de una forma muy rápida, no solo en aplicaciones militares, sino también en el campo de la construcción, la producción, la distribución, las finanzas, etc. 6.3 Modelización del problema: hipótesis básicas Se trata de uno de los primeros problemas que se formularon como problemas de programación entera. El problema consiste en lo siguiente: Supongamos que tenemos m orígenes (almacenes) que tienen que suministrar a n destinos (centros de consumo) un cierto producto. La capacidad de oferta de cada origen i (i= 1,...m) es ai (ai>0), mientras que la demanda de cada destino j (j=1,...n) es bj, (bj>0). El costo de enviar una unidad de producto del origen i al destino j es Cij. El problema consiste en determinar cuantas unidades de producto deben enviarse desde el origen i al destino j, de forma que se minimice el costo de envío, y por descontado, garantizando la demanda de los destinos y no excediendo de la capacidad de los orígenes. 138 Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 A las variables de decisión xij representan la cantidad enviada desde el almacén i al centro de consumo j, estas variables de decisión han de ser no negativas y enteras. En lo sucesivo, y para el planteamiento formal del problema vamos a obviar la condición de integridad de las variables, ya que bajo determinadas condiciones podemos garantizar la existencia de una solución entera para el problema resolviéndolo como un problema lineal. Este problema se puede comprender mejor con la ayuda de la figura 6.1 siguiente, en donde se han representado los orígenes y los destinos: Figura 6.1 Por tanto, el problema se puede plantear matemáticamente como: Función objetivo: m Min z = n  C i 1 j 1 x ij ij Sujeto a: n x j 1 ij  ai i = 1, 2,…, m ij  bj j = 1, 2,…, n m x i 1 xij ≥ 0 i = 1, 2, …, m j = 1, 2,…, n 139 Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Donde: z = Función Costo de Transporte Total a ser Minimizada. Cij = Costo unitario de transportar el producto del origen i al destino j. xij = Nº de unidades del producto a transportar del origen i al destino j (i = 1, 2,…, m y j = 1, 2,…, n). ai = Oferta y/o capacidad del i-ésimo origen. bj = Demanda y/o requerimiento del j-ésimo destino. m = Nº de orígenes u ofertas. n = Nº de destinos o demandas.  n  En este problema, el primer conjunto de restricciones   xij  a i  nos esta  j 1  indicando que los envíos totales de cada uno de los i orígenes no puede exceder de la cantidad disponibles en cada uno de los i almacenes. Por ejemplo, consideremos el origen 3. Para este origen la ecuación correspondiente seria la siguiente: x31 + x32 + ..... + x3n ≤ a3 en donde x31 representa la cantidad enviada desde el origen 3 hasta el almacén 1, x32 es la cantidad enviada desde el origen 3 hasta el almacén 2, y así sucesivamente. El término independiente “a3” representa la cantidad total disponible en el origen 3, la cual -por supuesto- no puede sobrepasarse.  m  El segundo conjunto de restricciones del problema   xij  b j  esta indicando que  i 1  la cantidad recibida por cada uno de los j destinos no puede ser inferior a la demanda del mismo. Estas ecuaciones tienen una interpretación similar a la dada anteriormente. La simple observación de la estructura del problema nos indica que la suma de disponibilidades en los orígenes debe ser mayor (o igual) que la suma de demandas de los destinos. En el caso contrario, es decir m n i j  ai   b j no se podrán satisfacer todas las demandas. Min z = c x Sa.: Ax=d x≥0 140 Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 En su forma desarrollada se puede expresar: F.o.: Min z = C11x11 + C12x12 + …..…. + C1nx1n + ………+ Cmnxmn Sa.: x11 + x12 + ……… + x1n = a1 x21 + x22 + ……… + x2n = a2 ……………………………... Restricciones de Oferta xm1 + xm2 + ……… +xmn = am x11 + x21 + ……… + xm1 = b1 x12 + x22 + ……… + xm2 = b2 ……………………………… Restricciones de Demanda x1n + x2n + ……… +xmn = bn xij ≥ 0 Esta formulación puede ser expresada en una matriz de costos. Matriz de costos de transporte Destinos 1 Orígenes 1 2 …… …… 2 C11 x11 C12 Oferta C1n x12 x1n C21 x21 n C22 C2n x22 x2n Demanda a2 …… …… m a1 Cm1 xm1 Cm2 Cmn xm2 b1 xmn b2 am bn 6.4 Propiedades matemáticas del problema De este problema, podemos enunciar una serie de condiciones que garantizan diversas propiedades. Condición 1: Una condición necesaria y suficiente para que un problema de transporte tenga solución es que la oferta total sea igual a la demanda total, es decir: m n i j  ai   b j En el caso que en un problema determinado no se cumpla esta condición, es decir, la cantidad disponible sea superior a la cantidad demanda entonces podemos recurrir a incluir un “destino ficticio” que recoja este exceso. O bien, en el caso 141 Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 contrario, cuando la demanda sea superior a la oferta, incluiremos un “origen ficticio”. Condición 2: El problema de transporte tiene una solución factible acotada, si los ai y bj lo están. Condición 3: La matriz A de coeficientes, de orden m (filas) y n (columnas), tiene un rango igual a n+m-1 (# de variables básicas). Condición 4: Un orden secuencial de al menos cuatro celdas distintas se denomina loop si: 1. Dos celdas consecutivas están en la misma columna o en la misma fila. 2. No tiene tres celdas consecutivas en una misma columna o en una misma fila. 3. La última celda de la secuencia tiene una fila o columna común con la primera celda de la secuencia. Las figuras siguientes muestran algunos tipos de loop en dos tablas de transporte: Las siguientes figuras muestran algunos ejemplos de secuencias de celdas que no conforman un loop, pues no satisfacen todas las condiciones. Condición 5: La matriz A es una matriz unimodular, lo que significa, que cualquier submatriz cuadrada de A de orden n+m-1 tiene una determinante con un valor igual a 0 o a ± 1. Esta quinta condición nos permite garantizar que si los ai y los bj son enteros y no negativos, los valores de las variables en toda solución factible básica y entonces existe por lo menos una solución factible básica óptima que es entera. Por tanto, a partir de esta condición ya no es necesario introducir la condición de integridad de las variables para obtener una solución óptima entera. Estas condiciones son las que han permitido desarrollar nuevos algoritmos más eficientes que el método símplex, es decir, algoritmos que emplean menos tiempo y menos iteraciones en resolver el problema. No obstante, como ya hemos comentado con anterioridad para resolver los problemas que plantearemos a continuación usaremos un programa lineal. 142 Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6.5 El algoritmo de transporte El algoritmo de transporte sigue exactamente los mismos pasos que el método símplex (Capitulo 4). Sin embargo, en lugar de usar la tabla símplex normal, se aprovecha la estructura especial del modelo de transporte para organizar los cálculos en una forma más cómoda. Se debe agregar que el algoritmo especial de transporte fue desarrollado por primera vez cuando la norma eran los cálculos a mano, y se necesitaba soluciones “con método abreviado”. Hoy contamos con poderosos programas de cómputo que pueden resolver un modelo de transporte de cualquier tamaño en forma de programación lineal. De hecho, TORA usa el formato de modelo de transporte sólo como fachada en pantalla, pero maneja todos los cálculos necesarios con el método símplex normal. Sin embargo, el algoritmo, además de su importancia histórica, permite tener una perspectiva del uso de las relaciones teóricas primal-dual, para llegar a un resultado práctico, de mejorar los cálculos a mano. El ejercicio es intrigante desde el punto de vista teórico. Para hallar una solución óptima al problema planteado, se deben considerar las siguientes etapas: Etapa 1. Balancear el Modelo Es decir: Oferta = Demanda Etapa 2. Establecer una Solución Básica factible de inicio Determinar el número de variables básicas (n + m – 1), después establecer una solución básica factible de inicio utilizando algún método de los siguientes:  Método de la Esquina Noroeste (MEN)  Método del Costo Mínimo (MCM).  Método de Aproximación de Vogel (MAV). Etapa 3. Hallar la solución óptima Utilizando el algoritmo de transporte, empezando con la solución básica factible de inicio dada. Usar la condición de optimalidad del método símplex para determinar la variable de entrada entre todas las variables no básicas. Si se satisface la condición de optimalidad, detenerse. En caso contrario seguir en la etapa 3. Luego usar la condición de factibilidad del método símplex para determinar la variable de salida entre todas las variables básicas en ese momento, y determinar la nueva solución básica. Regresar a la etapa 2. A continuación se desarrollan estas 3 etapas. 143 Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6.5.1 Balanceo del modelo La condición necesaria y suficiente para que el modelo tenga solución factible es que la oferta debe ser igual a la demanda, es decir que debe cumplirse: m n  a  b i i j j O sea; Oferta = Demanda Sin embargo cuando se presenta un desbalance se debe considerar: 1. Si la oferta es mayor que la demanda, se debe añadir un centro de DEMANDA ARTIFICIAL n + 1, donde la demanda bn + 1 es igual a (Σai Σbj), con costos igual a cero (ejemplo 6.1). 2. Si la demanda es mayor que la oferta, se debe añadir un centro de OFERTA ARTIFICIAL m + 1, donde la oferta am + 1 es igual a (Σbj –Σai), con costos igual a cero (ejemplo 6.2). Ejemplo de aplicación 6.1 Problema de transporte no balanceado: Los suministros exceden la demanda. Una determinada empresa que posee dos plantas de producción en Cochabamba y Sucre con una capacidad de almacenamiento de 350 y 600 Toneladas, respectivamente. Tiene que suministrar sus productos a tres clientes situados en Santa Cruz, Tarija y La Paz. La demanda de estos clientes es de 325, 300 y 275 Toneladas, respectivamente .La distancia desde Cochabamba a Santa Cruz es de 538 Km., a Tarija de 1046 Km. y a La Paz de 439 Km. La distancia de Sucre a Santa Cruz es de 393 Km., a Tarija de 693 Km. y a La Paz de 673 Km. Debido a que se trata de un producto que requiere unos transportes especiales, el costo del transporte por kilómetro y tonelada es de 5 $us. La empresa se plantea cual debe ser la cantidad a transportar desde cada almacén a cada uno de los clientes, de forma que el costo del transporte sea mínimo. Este problema, es un ejemplo típico de transporte, aunque podemos observar que las ofertas desde los almacenes son superiores a las demandas, en este caso podríamos plantear un destino ficticio. Observe que el suministro total = 950 Toneladas excede la demanda total = 900 toneladas por 950 – 900 = 50 Toneladas. Para construir un modelo balanceado (suministro = demanda) creamos un punto de demanda “ficticio” con una cantidad requerida igual a 50 toneladas. Llamaremos este punto de demanda ficticio “número 4”. 144 Tiene que suministrar sus productos a tres clientes situados en Santa Cruz. Debido a que se trata de un producto que requiere unos transportes especiales. en este caso podríamos plantear un suministro ficticio. 3. es un ejemplo típico de transporte. y a La Paz de 673 Km. de demanda + x24 = 50 y j = 1. Así. La distancia de Sucre a Santa Cruz es de 393 Km. 375 y 275 Toneladas. La distancia desde Cochabamba a Santa Cruz es de 538 Km. Ejemplo de aplicación 6. x14 y x24 en realidad representan la cantidad del producto en los puntos de suministro de Cochabamba y Sucre. La demanda de estos clientes es de 350. 4) Las dos variables en esta restricción (ver la restricción resaltada) son variables ficticias. La empresa se plantea cual debe ser la cantidad a transportar desde cada almacén a cada uno de los clientes. respectivamente.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Esto produce el siguiente modelo de transporte balanceado. Tarija y La Paz. de oferta x21 + x22 + x23 + x24 = 600 x11 + x21 x12 + x22 x13 Ficticio = 325 = 300 + x23 x14 xij ≥ 0 (i =1.2 Problema de transporte no balanceado: La demanda excede el suministro. 145 .. respectivamente. Este problema. que no es enviada. Para construir una red de transporte balanceado (suministro = demanda) creamos un punto de suministro “ficticio” con una cantidad disponible = demanda – suministro = 50 toneladas. respectivamente. x32 y x33. la demanda total = 1000 Toneladas excede al suministro total = 950 Toneladas por la cantidad de 1000 – 950 = 50 Toneladas.2 = 275 Restr. y a La Paz de 439 Km. Minimizar Z = (538*5) x11 + (1046*5) x12 + (439*5) x13 + (0*5) x14 + (393*5) x21 + (693*5) x22 + (673*5) x23 + (0*5) x24 Sujeto a: x11 + x12 + x13 + x14 = 350 Restr. el costo del transporte por kilómetro y tonelada es de 5 $us. 2. Una determinada empresa que posee dos plantas de producción en Cochabamba y Sucre con una capacidad de almacenamiento de 350 y 600 Toneladas. a Tarija de 693 Km. a Tarija de 1046 Km. de forma que el costo del transporte sea mínimo.. Designaremos el nuevo punto de suministro ficticio con el “número 3”. aunque podemos observar que las ofertas desde los almacenes son inferiores a las demandas. Este nuevo punto de suministro producirá tres nuevas variables ficticias: x31. 3) Las variables resaltadas son variables ficticias.  Método de la Esquina Noroeste (MEN)  Método del Costo Mínimo (MCM).2.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 El nuevo modelo de transporte balanceado es como sigue. x32 y x33. + x33 = 275 y j = 1. una de esas ecuaciones es redundante. Los tres métodos difieren en la “la calidad” de la solución básica factible de inicio que se obtienen. lo que quiere decir que la solución básica factible de inicio consiste en “m + n – 1” variables básicas.5. de dem. que no es satisfecha (déficit). el método de aproximación de Vogel produce la solución básica factible de inicio. Un problema de distribución o de transporte puede ser balanceado añadiendo un punto de suministro ficticio. si la demanda total excede al suministro total o añadiendo un punto de demanda ficticio. como el modelo de transporte siempre está balanceado (suma de la oferta = suma de la demanda). Tarija y La Paz respectivamente. representan la cantidad de requerimientos en los puntos de demanda Santa Cruz. La compensación es que el método de la Esquina Noroeste implica el mínimo de cálculos. 6. x31 + x32 + x33 = 50 x11 + x21 x12 x31 + x22 x13 = 350 + x32 + x23 xij ≥ 0 (i =1. 2. una para cada fuente y cada destino. en el sentido de que una mejor solución básica factible de inicio produce un valor objetivo menor. y el de la Esquina Noroeste produce la peor. 146 . Minimizar Z = (538*5) x11 + (1046*5) x12 + (439*5) x13 + (393*5) x21 + (693*5) x22 + (673*5) x23 + (0*5) x31 + (0*5) x32 + (0*5) x33 Sujeto a: x11 + x12 + x13 = 350 x21 + x22 + x23 Ficticio = 600 Restr. obtenida con uno de los tres métodos siguientes. Entonces el modelo tiene “m + n – 1” ecuaciones independientes de restricción. si el suministro total excede a la demanda.2 Determinación de la solución factible de inicio Un modelo general de transporte con “m” fuentes y “n” destinos tiene m + n ecuaciones de restricción. Sin embargo.  Método de Aproximación de Vogel (MAV). x31. La estructura especial del modelo de transporte permite asegurar que haya una solución básica no artificial de inicio. En general. de ofer.3 = 375 Restr. Paso 3.1) de la matriz asigne el valor x11 correspondiente al min (a1. b2).b1). En la posición (1. D2. Paso 4.n) Ejemplo de aplicación 6. Los unitarios de envió aparecen en la siguiente tabla. asignar todo los más que se pueda a la celda seleccionada. 5 y 5 unidades respectivamente.b1).Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. Los requerimientos en los destinos D1. Si ɓ1 se hace cero.2) donde y x12 = min (a1 – x11.1) donde: x21 = min (b1 – x11 . Hallar los nuevos valores de oferta 1 y demanda 1 â1 = a1 – x11 y ɓ1 = b1 – x11 Si â1 se hace cero. Es decir ajustar las cantidades asociadas a oferta y demanda restando la cantidad asignada. Continuar el procedimiento partiendo de la posición asignada y llegar a la posición (m. D3 y D4 son 5.5. 20.3 El siguiente problema tiene tres orígenes y cuatro destinos. pasar a la posición (1. Es también considerado por ser el menos probable para dar una buena solución inicial de “bajo costo” porque ignora la magnitud relativa de los costos Cij. Se siguen los siguientes pasos: Paso 1. Si un renglón y una columna dan cero al mismo tiempo. o sea x11 = min (a1.1 Método de la Esquina Noroeste. O2 y O3 son 20. Paso 2. tachar solo uno (el renglón o la columna) y dejar una oferta (demanda) cero en el renglón (columna) que no se tacho. D1 D2 D3 D4 Oferta O1 20 30 40 20 20 O2 60 30 50 40 6 O3 20 10 40 70 9 Demanda 5 20 5 5 35 147 . y tacharlo. a2). O sea. para indicar que no se pueden hacer más asignaciones a ese renglón o columna.2. El procedimiento de la Esquina Noroeste es generalmente considerado por ser el método más fácil al determinar una solución básica factible inicial. Las ofertas en los orígenes O1. 6 y 9 unidades respectivamente. Salir del renglón o la columna cuando se alcance oferta o demanda cero. pasar a la posición (2. El modelo de transporte esta balanceado y la meta es minimizar el costo de envió sujeto a las restricciones de disponibilidad y requerimientos. las flechas indican el orden en el que se generan las cantidades asignadas.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Entonces: Primeramente ver si el problema esta balanceado Demanda = Oferta. 2. El problema esta balanceado porque el total de la oferta y demanda total son ambos igual a 35 unidades. 4) Entonces el modelo tiene m + n ecuaciones. Al aplicar el procedimiento al modelo. entonces 3 + 4 – 1 = 6 variables básicas. x13 + x23 + x33 =5 x14 + x24 + x34 = 5 xij ≥ 0 (i =1. 2. se obtiene la solución básica factible de inicio. x31 + x32 + x33 + x34 = 9 x11 + x21 x31 =5 x12 + x22 + x32 = 20 Rest. dem. 3 y j = 1. Matriz de costos de transporte iteración cero Destinos 1 Orígenes 1 2 3 4 Oferta 30 40 20 60 30 50 40 20 10 40 70 20 5 5 20 6 9 35 Matriz de costos de transporte 1º iteración Destinos 1 Orígenes 2 3 4 Oferta 20 30 40 20 60 30 50 40 20 10 40 70 5 2 3 Demanda 3 20 5 Demanda 1 2 0 20 5 5 15 6 9 35 148 . Esto es: Minimizar Z = 20x11 + 30x12 + 40x13 + 20x14 + 60x21 + 30x22 + 50x23 + 40 x24 +20x31 + 10x32 + 40x33 + 70x34 Sujeto a: x11 + x12 + x13 + x14 = 20 x21 + x22 + x23 + x24 =6 Restr. ofer. 3. x24 = 0 x31 = 0. x23 = 1.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte 2º iteracion Destinos 1 Orígenes 2 20 1 4 Oferta 30 40 20 60 30 50 40 20 10 40 70 5 0 15 2 3 0 Demanda 3 5 5 6 9 5 35 Y así sucesivamente hasta llegar a la iteración sexta. ya que ignoramos la magnitud relativa de los costos unitarios en cada iteración. 149 . x32 = 0. x33 = 4. Observe que se necesitan seis iteraciones en el procedimiento de la esquina noroeste para construir un plan de envió factible inicial. x22 = 5. x34 = 5 El costo del programa correspondiente es: Z = 5*20 + 15*30 + 0*40 + 0*20 + 0*60 + 5*30 + 1*50 + 0*40 + 0*20 + 0*10 + 4*40 + 5*70 = $ 1260. x12 = 15. En general. Como se ve en la figura siguiente: Matriz de costos de transporte 6ª iteracion Destinos 1 Orígenes 1 20 5 3 4 Oferta 30 40 20 30 50 40 40 70 15 60 2 5 1 20 3 Demanda 2 10 4 0 0 5 0 0 0 0 0 35 La Solución básica factible de inicio es la siguiente: x11 = 5. x13 = 0. un problema del transporte de tamaño m × n (m = números de origen y n = número de destinos) requiere a lo máximo n + m -1 iteraciones. Es improbable que este plan factible sea también el plan de envió factible de mínimo costo o del método Aproximación de Vogel. x14 = 0 x21 = 0. 2. este es un procedimiento que se utiliza tomando como base a las rutas que tengan el menor costo. si una columna y un renglón se satisfacen de manera simultánea. repítase el proceso asignando el valor más grande posible a la variable con el costo unitario no tachado más pequeño. Táchese el renglón o columna satisfecha. (Los empates se rompen arbitrariamente).5. Después de ajustar la oferta y la demanda de todos los renglones y columnas no tachados.3. El procedimiento es el siguiente: Asígnese el valor más grande posible a la variable con menor costo unitario de toda la tabla (Cij).Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. sólo una puede tacharse).2 Método del costo mínimo. Este método determina una mejor solución de inicio. porque se concentra en las rutas menos costosas. El procedimiento esta completo cuando queda exactamente un renglón o una columna sin tachar. Ejemplo de aplicación 6. (Como en el método de la esquina noroeste.4 Considere de nuevo la red de transporte del ejemplo 6. Matriz de costos de transporte iteración cero Destinos 1 Orígenes 1 2 3 Destinos Orígenes 4 Oferta 30 40 20 60 30 50 40 20 10 40 70 20 5 20 6 9 5 Matriz de costos de transporte 1 1 2 2 3 4 30 40 20 60 30 50 40 10 40 70 9 5 Oferta 20 20 3 Demanda 3 20 5 Demanda 1ª iteración 2 11 5 20 6 0 5 150 . Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte 2ª iteración Destinos 1 Orígenes 1 30 40 20 60 30 50 40 10 40 70 0 11 5 15 6 0 5 Matriz de costos de transporte 3ª iteración Destinos 1 Orígenes 2 20 3 30 4 40 5 Oferta 20 5 2 3 60 30 50 40 20 10 40 70 9 0 Demanda 11 5 10 6 0 0 Matriz de costos de transporte 4ª iteración Destinos 1 Orígenes 2 20 5 3 30 4 40 10 20 3 Oferta 20 5 60 2 30 50 40 10 40 70 9 0 Demanda 1 5 0 6 0 0 Matriz de costos de transporte 5ª iteración Destinos 1 Orígenes 2 20 5 3 30 4 40 10 Oferta 20 5 60 2 30 50 40 10 40 70 1 20 3 Demanda Oferta 9 Demanda 1 4 20 20 3 1 3 5 2 1 2 9 0 0 5 0 5 0 0 151 . El castigo se calcula como la diferencia entre los dos costos menores (Cij) en la columna o en la fila según corresponda. x22 = 1. por lo tanto es más difícil de implementar y más proclive a errores en la aplicación. La primera asignación se ha completado.3 Método de aproximación de Vogel. y se le asigna la máxima cantidad posible. Se vuelven a calcular los castigos por fila y por columna y se repite el procedimiento descrito hasta completar las asignaciones posibles en la tabla. x32 = 9. x14 = 5 x21 = 0. El método comienza calculando por cada columna y por cada fila el castigo o “penalty”. Una vez realizada la asignación. x33 = 0.5. La ventaja del método de Vogel por sobre el de la Esquina Noroeste es que va adelante algunas iteraciones y por lo tanto se obtiene una solución inicial mejor. La desventaja del método de Vogel radica en que sin duda es más complejo que el de la esquina noroeste.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte 6ª iteración Destinos 1 Orígenes 1 20 5 3 30 4 40 10 30 1 20 50 40 40 70 5 20 3 10 9 0 Oferta 5 60 2 Demanda 2 0 0 0 0 0 0 La Solución básica factible de inicio es la siguiente: x11 = 5. se determina la fila o columna con un mayor valor de castigo. 0*20 + 6. Luego. x34 = 0 El costo del programa correspondiente es: Z = 5*20 + 10*30 + 0*40 + 5*20 + 0*60 + 1*30 + 5*50 + 0*40 + 9*10 + 0*40 + 0*70 = $ 870. A continuación. x12 = 10. x13 = 0. Eventualmente puede ocurrir que aplicando el método se llegue directamente a la solución óptima. según corresponda. se descarta la fila o columna cuya oferta o demanda haya sido completa. x24 = 0 x31 = 0.2. se selecciona como variable básica la celda con menor costo de la fila o columna. 152 . Se recalcula la demanda u oferta disponible en la fila o columna. x23 = 5. 5 Considere de nuevo la red de transporte del ejemplo 6. Matriz de costos de transporte iteración cero Destinos 1 Orígenes 1 2 3 2 3 4 Oferta 20 30 40 20 60 30 50 40 20 10 40 70 Demanda 5 20 5 5 Castigo 0 20 10 20 Castigo 20 0 6 10 9 10 35 Aplicando el método de Aproximación de Vogel tenemos: Matriz de costos de transporte 1ª iteración Destinos 1 Orígenes 1 2 3 2 3 4 20 30 40 20 60 30 50 40 20 10 40 70 9 Demanda 5 11 5 5 Castigo 40 0 10 20 Destinos 1 Orígenes 3 4 20 0 6 10 0 Oferta 20 30 40 20 60 30 50 40 10 40 70 20 3 Castigo 2 5 2 Demanda Castigo Matriz de costos de transporte 2ª iteración 1 Oferta 9 0 11 5 5 0 10 20 Castigo 15 10 6 10 0 153 .Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Ejemplo de aplicación 6.3. Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte 3ª iteración Destinos 1 Orígenes 2 20 1 3 30 4 40 5 Oferta 20 5 60 2 20 3 30 50 40 10 40 70 0 11 5 0 10 Castigo 10 10 6 20 0 9 Demanda Castigo 0 Matriz de costos de transporte 4ª iteración Destinos 1 Orígenes 2 20 1 3 30 4 40 5 Oferta 20 10 5 60 2 30 50 40 20 10 40 70 0 9 0 Demanda 5 5 10 0 6 3 Castigo 0 Castigo Matriz de costos de transporte 5ª iteración Destinos 1 Orígenes 2 20 1 3 30 5 4 40 5 20 30 50 40 10 40 70 0 6 20 3 0 9 Demanda 0 0 5 Castigo 5 5 60 2 Oferta 0 Castigo Matriz de costos de transporte 6ª iteración Destinos 1 Orígenes 1 20 5 3 30 5 4 40 5 60 2 Oferta 20 5 30 50 40 10 40 70 6 20 3 Demanda 2 9 0 0 0 0 0 0 0 154 . 3 Algoritmo de verificación y búsqueda del óptimo. Si todos los eij ≥ 0 se ha encontrado el óptimo.5. los ceros deben ser ubicados de tal forma que sea suficiente dar solo un valor arbitrario a las variables del sistema asociado a la asignación para poder resolverlo completamente. x12 = 5. x24 = 0 x31 = 0. emplear la solución del paso anterior para volver a plantear y resolver el sistema (Paso 3). Seguir al Paso 4. se aplican los siguientes pasos para hallar la solución óptima. Paso 5.  Plantear para cada casilla asignada la ecuación ui + vj = Cij . En el caso de que al emplear uno de los métodos para obtener una solución inicial falten dos o más asignaciones para completar las “m + n – 1” asignaciones requeridas. incorporar la variable con menor eij siempre y cuando pueda formar un loop. 6. Este procedimiento es iterativo y trabaja bajo los principios del método símplex. La variable eij representa el aporte neto unitario de la incorporación de la variable i – j a la base. por ejemplo u1 = 0. Si el problema no esta balanceado.n). A continuación se expondrán los pasos para aplicar el método Símplex para el problema de Transporte. Por lo tanto. Donde Cij es el costo unitario asociado a la casilla i .2) Paso 3. x13 = 5. si el problema es de maximización.  Definir para cada columna de la tabla la variable vj con (j = 1…. x23 = 0. Verificar las “m + n – 1” asignaciones y completarlas si es necesario. Calcular en todas las casillas no asignadas (no básicas) eij = Cij – ui – vj. Plantear y resolver el sistema que se obtiene a través de:  Definir para cada fila de la tabla la variable ui con (i = 1…. (descrita en el sección 6. Si la solución no es la óptima. x14 = 5 x21 = 0.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 La Solución básica factible de inicio es la siguiente: x11 = 5. la solución seria óptima si todos los eij < 0. x34 = 0 El costo del programa correspondiente es: Z = 5*20 + 5*30 + 5*40 + 5*20 + 0*60 + 6*30 + 0*50 + 0*40 + 0*20 + 9*10 + 0*40 + 0*70 = $ 820. Una vez hallada la solución básica factible de inicio en el anterior punto. Si existe algún eij < 0. (descrita en el sección 6. Construir la tabla de transporte. asignar el mayor valor posible de modo de mantener las variables básicas mayores o iguales a cero.  Asignar un valor arbitrario a una de las variables. Paso 1. se ingresa a la base la variable con mayor eij que pueda formar un loop. x22 = 6. Paso 4. Mínimo Costo o el de Vogel. En caso contrario.m). La deducción y justificación detallada de cada uno de los pasos se puede encontrar en los textos de la bibliografía de la asignatura. x33 = 0.5.5. x32 = 9. en dicho caso. balancearlo. Encontrar una solución inicial factible por el método de la Esquina Noroeste.j.1) Paso 2. 155 . 6 Ilustremos el procedimiento resolviendo la tabla planteado para el problema del ejemplo 6. las ecuaciones se plantean en las casillas asignadas: u1 + v1 = 20 (1) u2 + v3 = 50 (4) u1 + v2 = 30 (2) u3 + v3 = 40 (5) u2 + v2 = 30 (3) u3 + v4 = 70 (6) Agregando la condición u1 = 0 se obtiene de (1) v1 = 20.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Ejemplo de aplicación 6. independientemente de que el costo asociado a dicha casilla sea de 20.3. Por lo tanto. Luego. Veamos si existe un loop factible y el máximo valor α que podría tomar la variable. De (3) y de (4) u2 = 0 y v3 = 50. A continuación se calculan los eij en las casillas no básicas: eij = Cij – ui – vj e13 = 40 – 0 – 50 = – 10 e14 = 20 – 0 – 80 = – 60 e21 = 60 – 0 – 20 = 40 e24 = 40 – 0 – 80 = – 40 e31 = 20 – (-10) – 20 = 10 e32 = 10 – (-10) – 30 = –10 Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 50 v4= 80 1 2 3 4 20 30 40 20 5 15 -10 -60 60 30 50 40 40 5 1 -40 20 10 40 70 10 -10 4 5 Orígenes u1= 0 1 u2= 0 2 u3= -10 3 Demanda 5 20 5 5 Oferta 20 6 9 35 Por lo tanto. En ese caso. de (6) se obtiene v4 = 80. mediante la Esquina Noroeste se obtuvo la siguiente solución inicial: Matriz de costos de transporte Destinos v1= Orígenes u1= 1 u2= 2 u3= 3 Demanda v2= 1 v3= 2 20 5 v4= 3 30 Oferta 4 40 20 50 40 40 70 0 15 60 30 5 20 10 4 0 0 1 0 0 5 0 0 35 Con un costo de Z = $1260 Luego. la variable de entrada es x14. de (2) v2 = 30. Reemplazando en (5) se calcula u3 = –10. Finalmente. Lo que significa que por cada unidad asignada a la variable x14 el efecto global neto es de -60. el menor eij corresponde a e14 con valor -60. 156 . entonces se procede a hallar las restantes incógnitas o sea. u2 = 0.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 50 v4= 80 1 2 3 4 20 30 40 20 5 15-α +α -60 60 30 50 40 5+α 1-α 20 10 40 70 4+α 5-α Orígenes u1= 0 1 u2= 0 2 u3= -10 3 5 Demanda 20 5 5 Oferta 20 6 9 35 Como las variables deben ser positivas. la variable de salida es x23. Entonces. u3 = 50 y v3 = -10. por lo tanto α = 1. v1 = 20. respectivamente.α = 0. v4 = 20. el valor de α debe ser tal que no introduzca una variable negativa a la tabla. v2 = 30. la condición que controla es 1 . Introducimos el valor de α = 1. entonces tendremos: 1ª iteración Matriz de costos de transporte Destinos 1 Orígenes 2 20 1 5 3 30 40 20 14 1 60 2 Oferta 4 30 50 40 6 20 10 3 40 5 Demanda 5 20 70 4 5 5 20 6 9 35 Con un costo total mínimo de Z = $1200 Y volvemos a plantear el sistema asociado: u1 + v1 = 20 (1) u2 + v2 = 30 (4) u1 + v2 = 30 (2) u3 + v3 = 40 (5) u1 + v4 = 20 (3) u3 + v4 = 70 (6) Agregando la condición u1 = 0. Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= -10 v4= 20 1 2 3 4 Orígenes u1= 0 20 30 40 20 1 5 14 1 u2= 0 60 30 50 40 2 6 u3= 50 20 10 40 70 3 5 4 Demanda 5 20 5 5 Oferta 20 6 9 35 157 . En este caso. Entonces. v4 = 20. la variable de salida es x34. respectivamente. el valor de α debe ser tal que no introduzca una variable negativa al la tabla. la variable de entrada es x32.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 A continuación se calculan los eij en las casillas no básicas: eij = Cij – ui – vj e13 = 40 – 0 – (-10) = 50 e24 = 40 – 0 – 20 = 20 e21 = 60 – 0 – 20 = 40 e31 = 20 – 50 – 20 = –50 e23 = 50 – 0 – (-10) = 60 e32 = 10 – 50 – 30 = –70 Por lo tanto. u3 = -20 y v3 = 60. el menor eij corresponde a e32 con valor -70. Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= -10 v4= 20 1 2 3 4 Orígenes u1= 0 20 30 40 20 1 5 14-α 1+α u2= 0 60 30 50 40 2 6 u3= 50 20 10 40 70 3 +α -70 5 4-α 5 Demanda 20 5 Oferta 20 6 9 5 35 Como las variables deben ser positivas. u2 = 0. entonces se procede a hallar las restantes incógnitas o sea. 158 . v2 = 30.α = 0. v1 = 20. Por lo tanto. Introducimos el valor de α = 4. En este caso. entonces tendremos: 2ª iteración Matriz de costos de transporte Destinos 1 Orígenes 2 20 1 5 3 30 40 10 20 20 5 60 2 Oferta 4 30 50 40 10 40 70 6 6 20 3 4 Demanda 5 9 5 20 5 5 35 Con un costo total mínimo de Z = $ 920 Y volvemos a plantear el sistema asociado: u1 + v1 = 20 u1 + v2 = 30 u1 + v4 = 20 (1) (2) (3) u2 + v2 = 30 u3 + v2 = 10 u3 + v3 = 40 (4) (5) (6) Agregando la condición u1 = 0. Veamos si existe un loop factible y el máximo valor α que podría tomar la variable. la condición que controla es 4 . por lo tanto α = 4. la variable de entrada es x13. En este caso. entonces tendremos: 3ª iteración Matriz de costos de transporte Destinos 1 Orígenes 2 20 1 5 30 5 Oferta 4 40 5 60 2 20 5 30 50 40 10 40 70 6 20 3 Demanda 3 9 5 20 5 5 20 6 9 35 Con un costo total mínimo de Z = $ 820 159 . por lo tanto α = 5. el menor eij corresponde a e13 con valor -20. la variable de salida es x33. Veamos si existe un loop factible y el máximo valor α que podría tomar la variable. la condición que controla es 5 .Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 60 v4= 20 1 2 3 4 20 30 40 20 5 10 5 60 30 50 40 6 20 10 40 70 4 5 Orígenes u1= 0 1 u2= 0 2 u3= -20 3 5 Demanda 20 5 5 Oferta 20 6 9 35 A continuación se calculan los eij en las casillas no básicas: eij = Cij – ui – vj e13 = 40 – 0 – 60 = –20 e24 = 40 – 0 – 20 = 20 e21 = 60 – 0 – 20 = 40 e31 = 20 – (-20) – 20 = 20 e23 = 50 – 0 – 60 = –10 e34 = 70 – (-20) – 20 = 70 Por lo tanto. el valor de α debe ser tal que no introduzca una variable negativa a la tabla. Por lo tanto. Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 60 v4= 20 1 2 3 4 Orígenes u1= 0 20 30 40 20 1 5 10-α +α -20 5 u2= 0 60 30 50 40 2 6 u3= -20 20 10 40 70 3 4+α 5-α 5 Demanda 20 5 5 Oferta 20 6 9 35 Como las variables deben ser positivas. Introducimos el valor de α = 5. Entonces.α = 0. x12 = 5. Por lo tanto. v1 = 20. por lo tanto la incorporación de cualquier variable a la base aumentara el valor total de la función objetivo. v4 = 20. u2 = 0 y u3 = -20. 160 . v2 = 30. x33 = 0.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Y volvemos a plantear el sistema asociado: u1 + v1 = 20 (1) u1 + v4 = 20 (4) u1 + v2 = 30 (2) u2 + v2 = 30 (5) u1 + v3 = 40 (3) u3 + v2 = 10 (6) Agregando la condición u1 = 0. x23 = 0. entonces se procede a hallar las restantes incógnitas o sea. Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 40 v4= 20 1 2 3 4 Orígenes u1= 0 20 30 40 20 1 5 5 5 5 u2= 0 60 30 50 40 2 6 u3= -20 20 10 40 70 3 9 5 Demanda 20 5 Oferta 20 6 9 5 35 A continuación se calculan los eij en las casillas no básicas: eij = Cij – ui – vj e21 = 60 – 0 – 20 = 40 e31 = 20 – (-20) – 20 = 20 e23 = 50 – 0 – 40 = 10 e33 = 40 – (-20) – 40 = 20 e24 = 40 – 0 – 20 = 20 e34 = 70 – (-20) – 20 = 70 Resolviendo el sistema. x34 = 0 El costo del programa correspondiente es: Z = 5*20 + 5*30 + 5*40 + 5*20 + 0*60 + 6*30 + 0*50 + 0*40 + 0*20 + 9*10 + 0*40 + 0*70 = $ 820. v3 = 40. la tabla final queda en la 3ª iteración: 3ª iteración Matriz de costos de transporte Destinos 1 Orígenes 2 20 1 5 30 5 Oferta 4 40 5 60 2 20 5 30 50 40 10 40 70 6 20 3 Demanda 3 9 5 20 5 5 20 6 9 35 La Solución óptima es la siguiente: x11 = 5. respectivamente. se determina que todos los eij son positivos. x32 = 9. x14 = 5 x21 = 0. Como el problema es de minimización. x13 = 5. se ha alcanzado el óptimo. x24 = 0 x31 = 0. x22 = 6. supongamos que se desea determinar a cuanto debe disminuir el costo de envío desde el origen 2 al Destino 1 de modo de incorporar esta combinación a la solución óptima. Variación 3.6 Análisis de sensibilidad en problemas de transporte A continuación se discutirá tres tipos de análisis de sensibilidad de un problema de transporte: Variación 1. estudiando el rango de variación admisible de modo que el eij respectivo mantenga su signo. por lo tanto: e21 = (60 – Δ) – 0 – 20 = 40 – Δ Como corresponde a un problema de minimización para que x21 entre a la base debe cumplirse que e21 ≤ 0. Por lo tanto.1 Variación de coeficientes en la función objetivo de variables no básicas En este caso. En este caso. un cambio del coeficiente c21 = 60 a c21 = 60 – Δ no afecta los valores de los ui y vj calculados previamente. A modo de ejemplo. se debe verificar que la variable pueda generar un loop: 3ª iteración Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 40 1 2 3 20 30 40 5-α 5+α 5 60 30 50 +α 6-α 20 10 40 9 Orígenes u1= 0 1 u2= 0 2 u3= -20 3 Demanda 5 20 5 v4= 20 4 20 5 40 Oferta 70 5 20 6 9 35 La variable puede entrar a la base con valor de 5. Incrementos en una oferta y en una demanda. el valor de la función objetivo es: Zk + 1 = Zk + eij × α = 820 + (40 – Δ) × 5 Δ ≥ 40 161 . Para ilustrar el análisis de sensibilidad sobre la solución óptima de un problema de transporte emplearemos la solución obtenida en la sección anterior: 3ª iteración Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 40 v4= 20 1 2 3 4 20 30 40 20 5 5 5 5 60 30 50 40 6 20 10 40 70 9 Orígenes u1= 0 1 u2= 0 2 u3= -20 3 Demanda 5 20 5 Oferta 20 6 9 5 35 6.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. Δ ≥ 40. De todas formas.6. Variación 2. es decir. simplemente se impone una variación Δ en el coeficiente de la variable xij a modificar. el costo debe disminuir a menos de 20 para que se incorpore a la solución óptima. Cambios en los coeficientes de la función objetivo de variables no básicas. Cambios en los coeficientes de la función objetivo de variables básicas. 2 Variación de coeficientes en la función objetivo de variables básicas. En este caso. Supongamos por ejemplo que se desea determinar en cuanto podría aumentar el costo de envío desde Origen 1 al Destino 2 de modo de mantener la base óptima. En este caso. se debe volver a resolver el sistema en términos de la variación Δ del coeficiente de la variable básica. Por ejemplo. (3). la base óptima se mantiene para un rango de variación: -10 ≤ Δ ≥ 20 o bien. En este caso. se tiene: Znuevo = 820 + 1 × 0 + 1 × 30 = 850 Una vez definido el nuevo valor de la función objetivo. 162 . se mantiene el balanceo del problema.6. En este caso la situación es más compleja pues una variación del coeficiente de una variable básica afectara el valor de los ui y los vj calculados previamente.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. v3 = 40 v4 = 20. si la oferta del origen1 y la demanda del destino 2 crece en una unidad. volver a calcular los eij y determinar el rango de variación admisible. (5). u1 + v2 = 30 + Δ u1 + v4 = 20 u3 + v2 = 10 (2) (4) (6) Si u1 = 0 entonces tenemos: u1 = 0. v1 = 20 v2 = 30 + Δ. 20 ≥ c12 ≤ 50 6. u2 = –Δ u3 = –20 – Δ Luego. es importante determinar como cambian los valores de las variables. Si tanto en alguna oferta ai como en alguna demanda bj se produce un aumento de Δ. cambiamos c12 = 30 por c12 = 30 + Δ y volvemos a resolver el sistema: u1 + v1 = 20 u1 + v3 = 40 u2 + v2 = 30 (1). calculamos los eij para todas las variables no básicas y sus restricciones: eij = Cij – ui – vj e21 = C21 – u2 – v1 = 60 + Δ – 20 = 40 + Δ ≥ 0 e23 = C23 – u2 – v3 = 50 + Δ – 40 = 10 + Δ ≥ 0 e24 = C24 – u2 – v4 = 40 + Δ – 20 = 20 + Δ ≥ 0 e31 = C31 – u3 – v1 = 20 – (-20 + Δ) – 20 = 20 – Δ ≥ 0 e33 = C33 – u3 – v3 = 40 – (-20 + Δ) – 40 = 20 – Δ ≥ 0 e34 = C34 – u3 – v4 = 70 – (-20 + Δ) – 20 = 70 – Δ ≥ 0 → Δ ≥ -40 → Δ ≥ -10 → Δ ≥ -20 → Δ ≤ 20 → Δ ≤ 20 → Δ ≤ 70 Por lo tanto.6. se demuestra que: Znuevo = Zoriginal + Δ × ui + Δ × vj La expresión anterior se obtiene a partir de que tanto los ui y los vj equivalen a menos el precio sombra de la restricción asociada a cada origen i o destino j según corresponda.3 Incrementos en una oferta y en una demanda. supongamos que a3 y b1 aumentan en 1. Para ilustrar la primera situación.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Para ello se siguen las siguientes reglas: 1.2) – (1.2) – (1. incrementando y disminuyendo en Δ en forma alternada. Encontrar la primera celda de la fila i (distinta de xij) y aumentar su valor en Δ. Si xij es una variable no básica.2). Si xij es una variable básica. Continuando con el loop. supongamos que a3 y b2 aumentan en 2. 163 . el loop es (3. Entonces. 2.1) – (3. la nueva tabla óptima queda: Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 40 v4= 20 1 2 3 4 Orígenes u1= 0 20 30 40 20 1 5 5 5 5 u2= 0 60 30 50 40 2 6 u3= -20 20 10 40 70 3 11 Demanda 5 24 5 5 Oferta 20 6 11 37 El nuevo valor de la función objetivo es: 820 + 2u3 + 2v2 = 840 Para ilustrar la segunda situación. Como x32 es una variable básica. La primera celda del loop que esta en la fila i distinta de (3. se debe agregar Δ a x32. En este caso. Como x31 es una variable no básica. se debe disminuir en Δ a x12 y volver a aumentar en Δ a x11. La nueva tabla óptima se muestra a continuación: 3ª iteración Matriz de costos de transporte Destinos v1= 20 v2= 30 v3= 40 v4= 20 1 2 3 4 Orígenes u1= 0 20 30 40 20 1 6 4 5 5 u2= 0 60 30 50 40 2 6 u3= -20 20 10 40 70 3 10 Demanda 6 20 5 5 Oferta 20 6 10 36 El nuevo valor de la función objetivo es: 820 + u3 + v1 = 820.1) es (3. Continuar el loop. xij se incrementa en Δ. debemos determinar el loop que incorpora a la celda (3.1). se debe encontrar el loop que contenga a xij y algunas de las variables básicas.1). use la tabla de captura para ingresar datos. En problemas nuevos. 1. Puede usted igualar cualquier u o v a cero antes de generar la iteración 2 (lo predeterminado es u1 = 0). Observe entonces que aunque cambian los valores de ui y de vj.7. Y oprima SOLVE MENU (menú resolver) Seleccione SOLVE PROBLEM = > Iterations. rojo para la variable de salida y gris en cualquier otro caso). Costo Mínimo o de Vogel) para iniciar las iteraciones del modelo de transporte.7 Solución por computadora 6.3.1 Solución del modelo de transporte con TORA. con TORA.Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería 6. Puede usted probar su comprensión de la selección del loop haciendo clic (en cualquier orden) en las celdas que forman el loop. Parta del MainMenú y escoja Transportation Model (Modelo de transporte). El modelo de iteraciones ofrece dos funciones útiles. 164 . Especifique el modo de captura (archivo existente o problema nuevo) y el formato de captura. Esto quiere decir que al principio se puede igualar a cero cualquier u o v (de hecho. permanece sin cambios la evaluación de las celdas no básicas (= ui + vj – cij). y escoja uno de los tres métodos (Esquina Noroeste. comenzando con el método de la Esquina Noroeste. cualquier valor) sin afectar los cálculos de optimalidad. la celda cambiará de color (verde para la variable de entrada. La figura muestra las iteraciones del ejemplo 6. Si su elección es correcta. Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería 165 . Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería 6. y escoja el tipo de problema en este caso Transportation Problem (Problema de transporte) y coloque los datos del problema (criterio de la función objetivo.7.2 Solución con WinQSB. 166 . número de fuentes y destinos) y haga clic en OK Proceda a ingresar los datos del problema de la siguiente manera: Una vez ingresados los datos del problema escoja una de los métodos para iniciar las iteraciones del modelo de transporte en Solve and Analyse y haga clic en Select Initial Solution Method y presione Ok. Una vez hecha la selección de Network Modeling haga clic en new Problem. Parta del menú Inicio = > Programas = > WinQSB = > Network Modeling. formato de los datos de entrada. Y aparecerá la tabla inicial escogida por el tipo de método escogido. Hasta hallar el óptimo. En la figura se resuelve el ejemplo 6.3.Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería Una vez seleccionado el método para hallar la solución básica factible de inicio proceda a calcular el óptimo haciendo clic en Solve and Analyse y haga clic en Solve and Display Steps – Tabla y presione Ok. 167 . luego presione Iteration = > Next Iteration. como se ve en la explicación siguiente. El costo total asociado aparece en la celda A19.Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería 6. entre los datos obligatorios están la cantidad de fuentes (celda B3). a que sea de 10 × 10. cantidad de destinos (B4). La solución aparecerá en las celdas B20:K29.3. para que quepa la presentación en una pantalla. En la figura se resuelve el ejemplo de aplicación 6. Un ejercicio directo es diseñar un modelo de hoja de cálculo que tenga el tamaño que se desee. nombres de fuentes (Celdas A6:A15). Divide la hoja de cálculo en las secciones de datos y de resultados (entrada y salida). Una vez capturados los datos solo pida Solver y haga clic en Aceptar. Se puede usar la plantilla para resolver modelos hasta con 10 orígenes y 10 destinos. en forma arbitraria. La captura del modelo de transporte en una hoja de cálculo de Excel es directa.7.B20:K29) Transportes desde una fuente: Escriba = SUMA($B20:$K20) en L20 y cópielos en L21:L29. El desarrollo del modelo en la hoja de cálculo incluye las formulas siguientes: Función objetivo: Escriba en A19 = SUMAPRODUCTO(B6:K15. es decir: 168 . Transporte para un destino: Escriba = SUMA(B$20:B$29) en B30 y cópielos en C30:K30. En la sección de datos. La sección de resultados (celdas B20:K29) presenta automáticamente la solución óptima en forma de matriz.3 Solución con Solver de Excel. cantidades de las ofertas (celdas L6:L15) y de demanda (celdas B16:K16). Hemos limitado el tamaño del modelo. matriz de costo unitario (celdas B6:K15). nombres de destinos (celdas B5:K5). Las relaciones del modelo relacionan las cantidades transportadas con la oferta total en cada origen y con la demanda total en cada destino. Celda Objetivo: Valor de la Celda Objetivo: Cambiando las Celdas: Sujeta a las Siguientes restricciones: $A$19.Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería Los parámetros de Solver. $B$30:$K$30 = $B$16:$K$16 $L$20:$L$29 = $L$6:$L$15 Dentro de Opciones 169 . Mínimo. $B$20:$K$29. Nuestro modelo automatiza totalmente las secciones de resultados y de cálculos intermedios. Las formulas principales que activan la hoja de calculo están en la sección de cálculos intermedios. = SI(E21="".SI ($H$21:$H$121. Si bien pudimos haber usados dos formulas aparte para representar la salida de la fuente y la entrada al destino. con los modelos generales de redes al Capitulo 7. comenzando con los orígenes. la formula calculada de hecho la suma de los flujos de salida de cada fuente o bien la suma del flujo de entrada a cada nodo de destino. Es importante notar que en el modelo normal de transporte que se tiene en este momento. junto con la cantidad de fuentes y la de los destinos. Esta información. las formulas de flujo por nodo en la columna F (celda F21 hacia abajo) se escriben en la celda F21 como sigue. al combinar las dos en una formula se puede usar la hoja de calculo en forma directa.Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería Se puede desarrollar otra interesante formulación del modelo de transporte en hoja de cálculo con los mismos datos que el modelo anterior. La razón de usar flujo neto negativo en los destinos se debe a la forma en que se define el flujo del nodo en la columna F. comienza en la celda B22 bajo el encabezado Flujo. SI) calcula en esencia el flujo neto (entrada – salida) a través de cada uno de los nodos de la columna E (celda E21 hacia abajo). naturalmente los datos. $E$21. en la columna E (celda E21 hacia abajo) tiene los números de serie de los orígenes y los destinos. la formula se copia en las celdas F22:F121. Primero se escribe el símbolo “y” (sin las comillas) en la celda B5. se usa para representar en forma numérica a las rutas del modelo. Esto creará e identificara en forma adecuada las celdas N8:W17 para escribir las restricciones de capacidad. que se copian de la sección de datos en forma automática usando la función ÍNDICE.SUMAR. Con la información en las columnas H e I. el origen 1 (celda H21) al destino 4 (celda I21) define la ruta de la fuente O1 al destino D1. La única información que debe escribir el usuario son los parámetros de Solver y. Una celda asociada con una ruta de capacidad infinita se debe dejar vacía. Los nombres de las rutas aparecen en la columna A (de la celda A22 hacia abajo) y generan en forma automática con los nombres de las fuentes y los destinos en la sección de datos. Primero. En la figura se resuelve el ejemplo de aplicación 6. Obsérvese que el flujo neto asociado con un nodo fuente es positivo. La formula SUMIF (SUMAR. 170 . Por ejemplo. $B$22:$B$122) – SUMAR. La ecuación de flujo correspondiente a cada nodo asume la forma: Flujo de entrada – Flujo de salida = Flujo neto Se necesita especificar las cantidades de flujo neto a cada nodo. También se puede usar la hoja de cálculo para definir restricciones de capacidad para el flujo en las distintas rutas del modelo de transporte."". parte fundamental del desarrollo de la hoja de cálculo. La columna G (celda G21 hacia abajo) contiene esos datos. El modelo agrega una sección intermedia de cálculos. y con un nodo destino es negativo.3 con la nueva formulación. La diferencia esta en la sección de resultados y en la especificación de los parámetros de Solver. La solución del modelo aparece en la columna B.SI ($I$21:$I$121)) A continuación. Para el ejemplo de la figura. y cambian cuando cambia el tamaño del modelo de transporte. Para usar infinito se usa el número 999999. J21:J121) Solo debe el Alumno ocuparse con los elementos de Cambiando las Celdas y de Restricciones. Las restricciones se enuncian verbalmente como sigue: flujo de entrada (i. La celda objetivo $B$20 ya esta automatizada con la siguiente fórmula general. obsérvese que los renglones 21:27 cubren la cantidad total de nodos del modelo y cambian con el modelo de este. las restricciones correspondientes son: $B$22:$B$33 <= $C$22:$C$33 El segundo conjunto de restricciones se genera en las columnas F y G como sigue: $F$21:$F$27 = $G$21:$G$27 De nuevo. el lado izquierdo está en la columna B (celda B22 hacia abajo) y el lado derecho esta en la columna C (celda C22 hacia abajo).Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería Una vez hecho lo anterior. la hoja de cálculo usa la función ÍNDICE para copiar en forma automática las restricciones de capacidad en la columna C (celda C22 hacia abajo). Las restricciones de no negatividad se toman en cuenta en la ventana Opciones de SOLVER. 171 . =SUMAPRODUCTO (B22:B122.j) ≤ capacidad de ruta (i. De acuerdo con la figura.j) (flujo de entrada – flujo de salida) por el nodo j = demanda en el nodo j Para el primer conjunto de restricciones. La única información necesaria para resolver el modelo es los parámetros de SOLVER. y no necesita cambiarse para todos los modelos de tamaño hasta 10 x 10. el elemento de Cambiando las Celdas es: $B$22:$B$33 Los renglones 22:33 abarcan todas las rutas del modelo. Capítulo 6 Texto Guía Alumno – Sistemas de Ingeniería 172 . En el problema original de transporte existe m orígenes y n destinos. respectivamente. k 1 k  m+j j = 1. 2.a: mn x k 1 mn ik   x ki  ai k i ki mn mn k 1 k 1  x k . Aunque no hay inconveniente a fijar una cota superior a cada una de estas variables. 2.…. Si en este caso permitimos el flujo en ambos sentidos (de origen a destino y de destino a origen) se puede hablar de un problema con m+n orígenes y m+n destinos. n. m+n Este problema se podría resolver fácilmente como un problema de transporte. un punto que originalmente disponga de un suministro o un punto que tenga una demanda a satisfacer. y los destinos pueden transportar a su vez a otros destinos o volver a los orígenes. …. m.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. cada origen puede enviar o transportar a otros orígenes o a destinos. El planteamiento matemático de este problema es: m n m n Min Z = j  c i 1 j 1 i x ij ij s.….m j   x m  j . es decir. 2. A este tipo de problemas se les conoce con el nombre de problemas de transbordo (transhipment problems) o transporte con nodos intermedios. cuestión que no esta implícita en el problema del transporte original. que pueden plantearse problemas de almacenes intermedios entre los proveedores y los clientes. 173 . Pero desgraciadamente estas cantidades son parte del problema de decisión y por lo tanto no se las conoce. y el flujo se realiza desde un origen hacia cada uno de los diferentes destinos. i = 1. y es que admitimos que puede existir flujo desde los destinos a los orígenes. m+n j = 1. Esta problemática se plantea cuando pueden existir devoluciones de los clientes hacia el proveedor. o también que existen puntos de depósito intermedios. En el caso más general. es decir. solamente cuando sea.….8 Problema de transporte con transbordos o transporte con nodos intermedios. Un punto conserva su identidad. 2. si se supiera de antemano la cantidad de flujo entrará y saldrá de cada uno de los m+n puntos.k  b j k  m+j xij ≥ 0 i = 1. origen o destino. Vamos a ver ahora otra variante del problema del transporte. cada punto (origen o destino) puede ser un punto de transbordo. Paso 2. Se agrega “s” a la oferta y a la demanda del punto de transbordo para no desbalancear la tabla. 174 . En ambas ciudades. se debe agregar un punto de demanda ficticio (con oferta 0 y demanda igual al excedente) para balancear el problema. Construir una tabla de transporte siguiendo las siguientes reglas:  Incluir una fila por cada punto de oferta y de transbordo. en donde todos los nudos son lugares de origen y destino. La planta de Tarija puede producir hasta 150 unidades al día. Ejemplo de aplicación 6. Si es necesario. Como de antemano no se conoce la cantidad que transitara por cada punto de transbordo. Tarija y Sucre son puntos de oferta de 150 y 200 unidades respectivamente. la de Sucre hasta 200 unidades al día. Sea s la oferta total disponible. En este problema. se requieren 130 unidades diarias.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Por tanto la forma práctica de resolver este tipo de problemas es convertirlo en un problema de transporte. una en Tarija y otra en Sucre. Los productos son enviados por avión a Santa Cruz y Beni.  Cada punto i de oferta debe poseer una oferta igual a su oferta original ai.7 Una fábrica posee dos plantas de manufactura.  Incluir una columna por cada punto de demanda y de transbordo.  Cada punto de transbordo debe tener una oferta igual a su oferta original +s y una demanda igual a su demanda original +s. Cada punto de demanda j debe poseer una demanda igual a su demanda original bj. Existe una posibilidad de reducir costos enviando algunos productos en primer lugar a Cochabamba o a La Paz y luego a sus destinos finales. Los pasos son los siguientes: Paso 1. la idea es asegurar que no se exceda su capacidad. Los costos unitarios de cada tramo factible se ilustran en la siguiente tabla: Hacia Desde Tarija Sucre Cochabamba La Paz Santa Cruz Beni Tarija 0 - 8 13 25 28 Sucre - 0 15 12 26 25 Cochabamba - - 0 6 16 17 La Paz - - 6 0 14 16 Santa Cruz - - - - 0 - Beni - - - - - 0 La fábrica desea satisfacer la demanda minimizando el costo total de envío. Los costos de envío al punto ficticio deben ser cero. 3. En este caso la tabla queda (incluida la solución óptima): Minimizar Z = 8x11 + 13x12 + 25x13 + 28x14 + 0x15 + 15x21 + 12x22 + 26x23 + 25x24 + 0x25 + 0x31 + 6x32 + 16x33 + 17x34 + 0x35 + 6x41 + 0x42 + 14x43 + 16x44 + 0x45 Sujeto a: x11 + x12 + x13 + x14 + x15 = 150 x21 + x22 + x23 + x24 + x25 = 200 x31 + x32 + x33 + x34 + x35 = 350 x41 + x42 + x43 + x44 + x45 = 350 x11 + x21 x12 + x31 + x22 x13 + x41 + x32 + x23 x14 + x42 + x33 + x24 x15 = 350 + x43 + x34 + x25 xij ≥ 0 (i =1. la situación se muestra en la figura.5) 175 . Santa Cruz y Beni son puntos de demanda de 130 unidades cada uno. el punto ficticio debe tener una demanda de 350 . Una vez planteado la tabla. Luego. s = 150 + 200 = 350. Tarija Cbba Santa Cruz Sucre La Paz Beni Representación gráfica Problema de transbordo A continuación construiremos un problema de transporte balanceado a partir del problema de transbordo. 3. la oferta y demanda en la tabla deber ser igual a “s”. Para ello podemos seguir los siguientes pasos (suponiendo que la oferta excede a la demanda): En el ejemplo. se pueden emplear los métodos vistos anteriormente para obtener una solución inicial factible y obtener la solución óptima.4 = 350 + x35 = 130 + x44 = 130 + x45 = 90 y j = 1. 4. Como en el ejemplo los puntos de transbordo no tienen ni demanda ni oferta por si mismos.260 = 90. 2.2. La demanda total es 130 + 130 = 260.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Cochabamba y La Paz son puntos de transbordo. Esquemáticamente. la asignación de 350 del punto de transbordo de La Paz a La Paz representa simplemente que no se empleo el punto de transbordo. 220 no pasaron por dicho nodo de transbordo. vemos que de Tarija solo se despacharon 130 unidades a Cbba del total de 150 disponibles.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Esquina Noroeste Destinos Orígenes Tarija Sucre Cbba La Paz Cbba La Paz Santa Beni Ficticio 8 13 25 28 0 150 15 12 26 25 0 200 0 6 16 17 0 0 350 6 0 14 16 0 0 130 130 90 Demanda 0 5ºiteración (final) Destinos Matriz de costos de transporte Orígenes Tarija 0 Cbba 8 130 15 0 La Paz 13 0 6 130 6 La Paz Demanda 0 350 350 350 14 16 0 0 130 130 0 0 0 0 0 Beni Ficticio 28 0 20 26 25 0 130 70 16 17 0 12 220 0 Santa 25 Sucre Cbba 0 Oferta 90 Oferta 150 200 350 350 1050 Con un costo mínimo de $6370 Para interpretar la solución anterior. en la cuarta fila. quedando 70 asignadas al punto ficticio. la solución óptima se muestra en la siguiente figura. Gráficamente. De la primera fila. el excedente de 20 unidades esta asignado al punto ficticio. De la segunda fila se desprende que de Sucre se enviaron 130 unidades a Beni del total de 200 disponibles. En la tercera fila vemos que se enviaron desde el punto de transbordo en Cbba 130 unidades a Santa Cruz. que no se emplearon 220 unidades de la capacidad del punto. o bien. La asignación de 220 de Cbba a Cbba significa que del total de unidades en transito. es preciso revisar cuidadosamente las combinaciones asignadas. 176 . Finalmente. Una vez planteado la tabla. se pueden emplear los métodos vistos anteriormente para obtener una solución inicial factible y obtener la solución óptima. En este caso la tabla queda (incluida la solución óptima): Minimizar Z = +99x15 +99x16 +99x17 +99x18 +10x24 +20x25 +50x26 +99x27 +99x28 +99x34 +15x35 +99x36 +99x37 +99x38 20x14 + +20x45 +10x46 +10x47 +99x48 +99x54 +0x55 +30x56 +99x57 +30x58 +99x64 +99x65 +0x66 +50x67 +20x68 0x44 x14 +x15 +x16 +x17 +x18 = 200 = 250 x34 +x35 +x36 +x37 +x38 = 300 x44 +x45 +x46 +x47 +x48 = 750 x54 +x55 +x56 +x57 +x58 = 750 x64 +x65 +x66 +x67 +x68 = 750 +x24 +x34 +x44 +x54 +x64 = 750 +x25 +x35 +x45 +x55 +x65 = 750 +x26 +x36 +x46 +x56 +x66 = 750 +x27 +x37 +x47 +x57 +x67 = 400 +x28 +x38 +x48 +x58 +x68 = 350 x24 +x25 +x26 +x27 +x28 x14 x15 x16 x17 x18 177 . La demanda total es 400 + 350 = 750.8 Determinar el costo mínimo de transporte con transbordo. la oferta y demanda en la tabla deber ser igual a “s”. s = 200 + 250 + 300 = 750.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Ejemplo de aplicación 6. 200 1 10 20 4 10 250 8 350 50 10 6 50 15 3 400 20 2 20 300 7 30 5 20 30 En el ejemplo. (problema balanceado). Como en el ejemplo los puntos de transbordo no tienen ni demanda ni oferta por si mismos. Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Matriz de costos de transporte 1 iteración MEN Destinos Orígenes 4 1 200 2 250 3 300 5 6 Oferta 8 20 99 99 99 99 10 20 50 99 99 99 15 0 4 99 20 99 10 99 10 99 750 99 0 5 30 99 30 750 99 6 Demanda 99 0 0 0 50 400 0 0 20 350 0 0 0 0 0 0 0 Matriz de costos de transporte 5ª iteración Destinos Orígenes 4 1 200 2 250 5 6 7 Oferta 8 20 99 99 99 99 10 20 50 99 99 99 3 15 99 99 99 300 0 4 7 20 10 300 10 50 99 5 0 30 99 450 99 0 50 700 750 30 300 99 6 Demanda 99 400 750 20 50 750 400 200 250 300 750 750 750 350 Con un costo mínimo de $25500 200 1 400 7 400 8 350 200 250 250 2 3 50 6 300 300 4 5 50 300 178 .  Las ofertas y demandas son uno .9 El modelo de asignación El modelo de asignación es en un tipo especial de problema de programación lineal en el que los asignados son recursos que se destinan a la realización de tareas. los asignados no tienen que ser personas. j m X i 1 Xi j  1.2 Solución matemática del modelo de asignación La representación y la formulación matemática del modelo son: 1 si i se asigna a j X ij   0 si i no se asigna a j Función objetivo m Min Z = n  C i 1 j 1 ij X ij Sujeto a: n X j 1 ij 1 . i ij 1 . La asignación de personas a trabajos es una aplicación común del problema de asignación.1 Concepto El problema de asignación es un caso particular del modelo de transporte que tiene dos características a ser tomadas en cuenta:  La variable de decisión xij toma los valores de 1 ó 0 transformándose en una variable binaria de aceptación o no aceptación. El primero de los siguientes ejemplos se refiere a maquinas. minimizando el COSTO TOTAL ASOCIADO”. Por ejemplo. Sin embargo.9. Esta asignación debe hacerse UNO A UNO. 6.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. los asignados pueden ser empleados a quienes se tiene que dar trabajo. También pueden ser maquinas o vehículos o plantas o incluso intervalos de tiempo a los que se asignan tareas. 6.0 179 .9. entonces ai = bj = 1 “El modelo de ASIGNACIÓN consiste en asignar m centros de oferta a “n” centros de demanda. En la matriz que resulte del paso 2. En la matriz original de costo. Paso 2. A B C T1 3 4 6 T2 7 8 4 T3 5 5 2 Aplicando el algoritmo húngaro. se utiliza el Algoritmo HÚNGARO. Los tiempos de ejecución figuran en la tabla. Dibujar un NÚMERO MÍNIMO de líneas horizontales y/o verticales que tachen a todos los ceros de la matriz. Paso 4. Volver al paso 4. A B C Mínimo del renglón A B C T1 0 1 3 T1 3 4 6 p1 = 3 T2 3 4 0 T2 7 8 4 p2 = 4 T3 3 3 0 T3 5 5 2 p3 = 2 180 . Paso 2. si esta es posible. el problema habrá terminado de lo contrario ir al paso 5. Balancear el modelo m = n = 3. Paso 6. identificar el mínimo de cada columna. B y C) capaces de ejecutar los trabajos T1. probar una asignación tentativa uno a uno. Supongamos que se dispone 3 equipos de trabajo (A. En el caso que se quiera penalizar un origen y/o destino representado la imposibilidad de asignación se pondrá M como costo asociado. Este elemento o valor se resta de todo elemento no tachado y se agrega a todo elemento intersecado por una línea horizontal y vertical. En los lugares con costo 0. Paso 7. problema balanceado. cuyos pasos son: Paso 1. Seleccionar el valor más pequeño que no este cruzado por líneas. Paso 1.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. Paso 5. Ejemplo de aplicación 6. si m < n se añadirán fila ficticias con costos iguales a cero. Sean pi el costo mínimo del renglón i. de la misma manera si m>n. y restarlo de todos los demás elementos. por tanto. Balancear el problema. identificar el mínimo de cada renglón y restarlo de todos los demás elementos. En este problema debe darse que m = n.9. T2 y T3.9 Se desea asignar el empleado más competente al trabajo más importante. se añadirán columnas ficticias. Paso 3.3 Solución del modelo de asignación Para hallar la solución óptima a este problema. A B C T1 0 0 5 T2 1 1 0 T3 1 0 0 Paso 7. Este elemento o valor se resta de todo elemento no tachado y se agrega a todo elemento intersecado por una línea horizontal y vertical Valor mínimo no tachado 2. En los lugares con costo 0.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Paso 3. 181 . Seleccionar el valor más pequeño que no este cruzado por líneas. Sea qj el costo mínimo de la columna j A B C T1 0 1 3 T2 3 4 0 T3 3 3 0 q1 = 0 q2 = 1 q3 = 0 Mínimo de la columna A B C T1 0 0 3 T2 3 3 0 T3 3 2 0 Paso 4. volver al paso 4. Dibujar un NÚMERO MÍNIMO de líneas horizontales y/o verticales que tachen a todos los ceros de la matriz A B C T1 0 0 3 T2 3 3 0 T3 3 2 0 Paso 6. T1 A T2 B T3 C Quedan sin asignar T3 y B ir al paso 5 Paso 5. sumando y restando. probar una asignación tentativa uno a uno. Ejemplo de aplicación 6. T1 A T2 B T3 C En este caso vemos que T1 se asigna a A. En los lugares con costo 0. Y se aplica el algoritmo húngaro. probar una asignación tentativa uno a uno. obteniendo una nueva matriz. Para el ejemplo: z = Min {fila 1} + Min {fila 2} + Min {fila 3} + Min {col 1} + Min {col 2} + Min {col 3} + Min {valor en el paso 6} z = 3 + 4 + 2 + 0 + 1 + 0 + 2 = 12 Para el caso de MAXIMIZAR. se elige el valor más grande y se resta de este valor los valores de la matriz.10 Para el caso de maximizar en el ejemplo 6. T2 a C y T3 a B.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Paso 4.8 se tiene: A B C T1 3 4 6 T2 7 8 4 T3 5 5 2 El valor más grande es 8 entonces se obtiene: A B C T1 5 4 2 T2 1 0 4 T3 3 3 6 182 . El tiempo mínimo es igual a: z = 3 + 4 + 5 = 12 Podemos comprobar que los valores mínimos restados a las filas y columnas sumados dan el valor de z. y que es posible enviar a diferentes destinos. y además es homogéneo. y enviada al área k. se obtiene: A B C T1 3 2 0 T2 1 0 4 T3 0 0 3 T1 A T2 B T3 C En este caso vemos que T1 se asigna a C. bjk : el número de unidades del tipo j enviadas al área k dij : el número de unidades del tipo j enviadas por la factoría i. xijk : el número de unidades del tipo j fabricadas en la factoría i. 183 . es cuando los orígenes disponen de diferentes productos. Sean: aik : el número de unidades enviadas al área k desde la factoría i. T2 a B y T3 a A. este problema consiste en: Una fábrica posee l factorías distribuidas en diferentes lugares. Cada una de las l factorías puede fabricar n tipos diferentes de un producto que se distribuye en m áreas de venta. Desde el punto de vista formal. cijk : el costo unitario de transporte de una unidad de tipo j fabricada en la factoría i. no todos ello homogéneos.10 Problemas de transporte multidimensional.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 Aplicando el algoritmo húngaro. Una generalización de este problema. El tiempo máximo es igual a: z = 6 + 8 + 5 = 19 También podemos comprobar que: z = Valor máximo *nº – Min {filas y columnas} z = 8 * 3 – (2 + 0 + 3) 6. Una de las hipótesis básicas del problema del transporte consiste en que cada uno de los orígenes dispone de un único producto. y enviadas al área k. y se desea enviar a unos destinos que demanda bj (j=1.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 El planteamiento matemático será: Min z =  k  Cijk xi jk i s. p n x j 1 m P i 1 ijk ij m n  a  b i 1 i j 1 j xij ≥ 0 i = 1. El costo de transportar una unidad de producto de i a j es cij..….2.….. debido a que el producto puede variar en alguna característica de uno a otro.11 Problemas de transporte con restricciones adicionales.2. debe verificarse que: . 2. evidentemente.2.m) cantidades de un cierto producto. Un ejemplo típico de esto es plantea en las fundiciones de hierro.…. n 184 . 2. Denominamos xij la cantidad enviada desde el origen i hasta el destino j. 2.…. xij ≥ 0. 2. m j = 1. En algunos problemas de transporte hay casos en los que los distintos almacenes tienen ciertas preferencias por los fabricantes. donde el transporte y distribución de la pirita de hierro puede presentar impurezas según su origen.a: m x i 1 ij  bj j = 1. n ij  aj i = 1.….  aik   b jk .. El demandante no puede recibir más de djk unidades de impurezas k.a: x ijk j  aik j x x ijk  b jk ijk  d ij i k xijk ≥ 0 Para que este problema sea consistente.p) cuando es enviado de i a j. Una unidad de producto contiene pijk unidades de impurezas (k=1.  d ij   b jk  aik   d ij k j i j i k 6. 2. El problema es satisfacer la demanda con el mínimo costo.n) cantidades de este producto.. Sean n factorías que disponen de ai (i=1. m x  d jk k = 1. Este problema se puede plantear como un problema de transporte con dos conjuntos de restricciones adicionales. Por tanto el problema a resolver es: m Min z = n  C i 1 j 1 ij xj s. Utilice el método del costo mínimo para construir una solución básica factible de inicio. Cargas de Camión 45 60 40 Información de Costos: De Al proyecto A Al proyecto B Al proyecto C Planta W $4 $3 $3 Planta X 6 7 6 Planta Y 4 2 5 185 . Cada centro de distribución necesita recibir 10 cargas al mes.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 6. Destino 2 3 8 4 2 1 6 4 3 4 3 5 7 3 3 Recursos 4 3 2 Utilice el método de la esquina noroeste para construir una solución básica factible de inicio. La Empresa transportista Fernandez posee varios camiones usados para acarrear piedra molida para proyectos de carreteras en el municipio. Las plantas 1. 2 y 3 producen 12. El contratista de carreteras para quien trabaja le ha dado el programa de la semana siguiente.12 Problemas propuestos. Utilice el método de aproximación de Vogel para construir una solución básica factible de inicio. desde cada planta a los respectivos centros de distribución es la siguiente: Planta 1 2 3 Centro de distribución 1 2 3 4 800 1300 400 700 1100 1400 600 1000 600 1200 800 900 El costo del flete por cada embarque es de $ 100 más $0. ¿Cuántas cargas debe mandarse desde cada planta a cada uno de los centros de distribución para minimizar el costo total del transporte? 3. 1. La distancia en km. respectivamente. Considere el problema de transporte que tiene la siguiente tabla de costos y requerimientos: Origen 1 2 3 Demanda a) b) c) 2. 17 y 11 cargas mensuales. Una compañía tiene tres plantas que fabrican cierto producto que debe mandarse a cuatro centros de distribución. Cargas de Camión 50 75 50 Planta W X Y Disponibilidad Semanal. Calcule el costo óptimo del transporte Proyecto A B C Necesidades Semanales.50/km. F y G. B=150 m3. 186 . 15. 30 y 45 unidades respectivamente. y C=190 m3 Los requerimientos mensuales de las distribuidoras son: D=80 m3. F= 110 m3. F y G.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 4. Una compañía tiene las plantas A. 5. E. E=90 m3. B y C suministra a los distribuidores D. 40 y 30 unidades. Un sistema de distribución semanal para un producto tiene las siguientes características: Planta O1 O2 Centro de Distribución D1 D2 D3 Perdidas ($/unidad) 2 3 2 Capacidad Semanal 75 100 Centro Distribuidor D1 D2 D3 Demanda Semanal 50 50 100 Hacia D1 D2 D3 Desde O1 3 2 1 O2 4 5 6 La meta de la compañía es determinar un plan de envió factible que minimice la suma de los costos de transporte total más las perdidas totales. B y C las cuales suministran arena a las distribuidoras D. G= 160 m3 Los costos unitarios de envió son: HACIA D E F G A $40 $50 $40 $40 B $40 $50 $50 $50 C $50 $40 $40 $40 DESDE Determinar el plan de envíos con un costo mínimo. HACIA D E F G A $5 $10 $5 $0 B $5 $9 $5 $10 C $10 $10 $15 $5 DESDE Determinar un plan óptimo de distribución. E. Una compañía A. Los costos unitarios de envió son los siguientes. ¿Cuál es el mínimo costo de transporte? 6. Las capacidades mensuales son 20. Las capacidades mensuales de cada planta son: A=160 m3. Los requerimientos mensuales de los distribuidores son 10. respectivamente. La arena se usa para estabilizar los terrenos pantanosos del área propuesta de construcción. Algunos de los sitios hacia donde se mueve la arena se usan para construir caminos dentro y en el perímetro del aeropuerto. 8. Las distancias (en cientos de metros) entre los bancos y los sitios se resumen en la tabla siguiente. A Dep. se debe construir la carretera perimetral (destino 9) antes de poder mover la arena a ciertos sitios en la tabla siguiente se ven marcadas con una x las rutas bloqueadas que requieren terminar la carretera perimetral. También ahí se ven las cantidades de oferta y demanda. en cientos de m3.000 m3 de arena dragada de cincos bancos en una bahía cercana. El daño de un puente principal ha impedido las entregas desde el deposito A hasta el almacén 4. en los distintos lugares. al costo de $0. desde el deposito B hasta el 5 y desde el C hasta el 2. B Dep. El exceso de arena de un sitio se moverá con camiones a otras áreas exteriores del aeropuerto.65 por unidad. Dep. 1 2 3 4 5 Demanda 1 22 20 16 20 22 62 2 26 28 20 22 26 217 3 12 14 26 26 10 444 4 10 12 20 22 4 315 5 18 20 1.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 7. por tubería a nueve sitios en el aeropuerto. La tabla indica el costo de transporte por unidad entre depósitos y almacenes. Tres depósitos surten a cinco almacenes. ¿Cómo debe hacerse el movimiento de arena para tener en cuenta estas restricciones? 1 2 3 4 5 1 x x 2 x x 3 4 5 x x x x x x 6 7 8 9 x x x x 187 . Dentro de estas circunstancias determinar el esquema óptimo del transporte.5 10 22 21 14 90 9 20 22 18 18 21 150 Oferta 960 201 71 24 99 a) La gerencia del proyecto ha estimado un movimiento de arena [m3 de volumen x distancia (cientos de metros)] de 2495000 unidades.5 6 16 50 6 18 20 28 ∞ ∞ 7 7 11 13 6 2 24 20 8 8.355. En la construcción del aeropuerto Tarija se requiere mover 1. En particular. donde se construirá una carretera perimetral. ¿Esta dentro de los limites el movimiento de arena estimado por la gerencia del proyecto? b) La gerencia del proyecto se da cuenta que el movimiento de arena a ciertos sitios no se puede hacer sin antes construir algunos caminos. C Almacén 1 2 6 4 75 Almacén 2 7 8 6 345 Almacén 3 3 7 3 180 Almacén 4 5 3 8 90 210 Almacén 5 4 5 4 Capacidad 850 300 450 Nº Req. pero las personas 2 y 3 pueden llegar ha hacer hasta 2 trabajos. Hillier.com/Problemas_Transporte/transporte_2004. Tres personas se han presentado.com/material%20didactico/TRANSPORTE.cantv.pdf  http://mipagina. La persona 1 puede hacer sólo un trabajo. Las propuestas en miles de dólares están dadas en la tabla siguiente. si todas las personas deben realizar al menos un trabajo?  Suponga que la persona 2 debe realizar el trabajo 1.  MODELOS LINEALES DE OPTIMIZACIÓN – Rafael Terrazas Pastor [Segunda Edición]  INVESTIGACIÓN DE OPERACIONES – Hamdy A. Persona 1 Persona 2 Persona 3 Trabajo 1 55 51 * Trabajo 2 49 48 47 Trabajo 3 46 44 45 Trabajo 4 46 * 45 6. Encuentre la mejor asignación.net/jcpons1/Capitulo21.investigacionoperaciones.pdf  http://www. Una compañía llamó a licitación para realizar cuatro trabajos de construcción. [Sexta Edición] 6. donde (*) indica que la persona no ofrece nada para ese trabajo. desde el punto de vista de la compañía.  ¿Cuál es la mejor asignación.  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S. Gordon P.13 Bibliografía. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskwitz.14 Enlaces  http://www. Lieberman.Texto Guía Alumno – Sistemas de Ingeniería Capítulo 6 9. Herbert. Gerald J.investigacionoperaciones. Wrigth.pdf 188 . Existe también un área de aplicación concerniente a grupos sociales.Texto Guía – Sistemas de Ingeniería Capítulo 7 CAPITULO 7 MODELOS DE REDES DE OPTIMIZACIÓN 7. la cibernética.1 Introducción Los modelos de redes son estructuras especiales del modelo de programación lineal y que por sus características propias tienen algoritmos específicos para su solución. El desarrollo de este capitulo estudiara los siguientes problemas:  El problema de la RUTA MÁS CORTA que se presenta por ejemplo en los sistemas de transporte. la informática. introduciremos algunos conceptos elementales:  Una GRÁFICA o RED es un conjunto de NODOS (vértices o puntos) que están conectados por un conjunto de ARCOS (líneas. Como se podrá notar el área de acción y aplicación de la teoría de redes es amplio y su teoría clásica esta asociada a lo que se llama la teoría de grafos.  El problema del ÁRBOL DE EXPANSIÓN MÍNIMA que se presenta por ejemplo en problemas relacionados a diversos tipos de conexiones. La teoría y el análisis de redes de optimización. ramas y bordes). comunicación. el planeamiento. Consideraremos que una red es una gráfica con un FLUJO de algún tipo que fluye por sus ramas.2 Conceptos referenciales para la teoría de redes Para continuar con el estudio de las redes de optimización. etc. la ingeniería eléctrica. Canales Mensajes Estaciones de bombeo Tuberías Fluidos Centros de trabajo Rutas Trabajos 189 .  El problema de FLUJO MÁXIMO que se asocia a problemas de flujo a partir de un origen hacia un destino. 7. la ingeniería industrial. la gestión de proyectos. encuentra aplicación en varias ramas del saber tales como: la Ingeniería Civil. estructuras de lenguaje y enlaces químicos.  El problema de REDES DE ACTIVIDADES utilizando para realizar la planificación de tareas y programas de actividades. Ejemplo: Nodos Ramas Flujo Intersecciones Caminos Vehículos Aeropuertos Rutas aéreas Aviones Puntos de comunicación Cables. Por ejemplo: Figura 7.6 Cuando se especifica la dirección a lo largo de la cadena se llama RUTA. Por ejemplo: Figura 7. Un ciclo es también una cadena que conecta a un nodo consigo mismo.  Un CICLO es una cadena que empieza y termina en el mismo nodo.(3.2  Una red es INCONEXA si esta tiene algún punto de inconexión. En la figura 7.2)  Una red es CONEXA.6) --.Texto Guía – Sistemas de Ingeniería Capítulo 7  Las llamadas REDES DIRECCIONADAS son las que tienen arcos dirigidos.2) significa que el arco que va del nodo 1 al nodo 2 refleja un flujo direcciónado en este sentido.3 --.1 es direccionada porque están especificados los sentidos del flujo.1 La red de la figura 7. si existe una cadena que conecta a todos los nodos de la red.4) --.4 --.2 --.(1.(2.(2.3) --.(4. Por ejemplo en la figura 7.2) --.3 190 .1 un ciclo es: 2 --. Ejemplo: Figura 7.  Una CADENA del nodo i al nodo j no es nada más que una sucesión de nodos y ramas que conectan a estos puntos. caso contrario se llamaran redes ADIRECCIONADAS.1 una cadena del nodo 1 al nodo 6 es: 1--. Por ejemplo (1. si dij ≤ 0. Si dij ≥ 0. se llama ÁRBOL DE EXPANSIÓN. es decir que cada una de las ramas esta orientada hacia ese nodo. dij ≥ 0. es decir que cada una de sus ramas tiene una orientación tal que el flujo se mueve hacia fuera de ese nodo. se llama INGRESO. es la capacidad mínima del flujo de i a j. es el costo por unidad de flujo.  Se llama nodo FUENTE u ORIGEN al nodo por donde entra el flujo a la red. Figura 7. Los orígenes son generadores del flujo.Texto Guía – Sistemas de Ingeniería Capítulo 7  Un ÁRBOL es una red conexa que contiene ciclos. Cuando un flujo sale de un nodo se llama EFLUJO y cuando llega a un nodo se le llama INFLUJO. Figura 7.j): xij ≥ 0.4  Podemos decir con propiedad que una red conexa que tiene n nodos.5  Se llama nodo DESTINO o FINAL al nodo por donde sale el flujo de la red. se llama EGRESO. Por ejemplo: Figura 7. es la capacidad máxima del flujo de i a j. es el flujo del nodo i al nodo j.6 191 . λij ≥ 0.  Se puede definir la siguiente nomenclatura relacionada con un arco o rama (i. μij ≥ 0. n – 1 ramas y sin ciclos. Los nodos destino absorben el flujo. y si ui + dij ≤ uj. El algoritmo de Dijkstra tiene por objeto determinar las rutas más cortas entre el nodo origen o fuente y todos los demás nodos de la red. Los empates se rompen en forma arbitraria. Este rotulo es PERMANENTE. El problema de la ruta más corta tiene como objetivo encontrar los recorridos más económicos en distancias. Una RUTA o RECORRIDO entre dos nodos es cualquier secuencia de arcos que los conecte. cambia el estado de la etiqueta temporal a permanente. Los pasos son los siguientes: Paso 0. Entonces el algoritmo define la etiqueta de un nodo inmediato posterior j como: [uj. Calcular las etiquetas temporales [ui + dij. Paso 4. j) de una red.3. al que también se lo sombrea. El proceso es realizado n – 1 veces. Considerando el criterio de la distancia más corta. —]. rotular y/o etiquetar en forma permanente el nodo correspondiente. k] por otro nodo k. Si todos los nodos tienen etiquetas permanentes detenerse. llevan asociados un numero dij que se interpreta como el costo. k] por [uj + dij. Cuando se ve que no se pueden encontrar rutas mejores. 192 . por tanto se sombrea al nodo 1. Igualar i = 1. la distancia o el tiempo que hay entre los nodos i y j. siempre y cuando j no tenga etiqueta permanente.j).1 El algoritmo de Dijkstra. sustituir [uj. Las etiquetas de nodos en el algoritmo de Dijkstra son de dos clases: TEMPORALES y PERMANENTES.3. considerado como nodo origen y los otros nodos de la red considerados como destinos. en este caso se rotula [0. Paso 3.i]. que indica que el nodo no tiene predecesor. i] para cada nodo j al que pueda llegarse desde el nodo i. Paso 1. A partir del último nodo permanente etiquetar en forma temporal los arcos ligados a este nodo y elegir el arco de distancia más corta para etiquetarlo permanentemente (de los nodos etiquetados temporalmente). 7.dij ≥ 0 La etiqueta del nodo de inicio es [0.Texto Guía – Sistemas de Ingeniería Capítulo 7 7.3 El Problema de la ruta más corta Los arcos denominados (i. 7. Sea ui la distancia más corta del nodo fuente 1 hasta el nodo i. —]. que contienen bucles o lazos) como acíclicas. formara un conjunto de arcos que se llamará ÁRBOL DE RECORRIDO MÍNIMO. La estructura resultante de resolver este problema.i] = [ui + dij.1 Algoritmos de la ruta más corta En esta sección se presentan dos algoritmos para resolver redes tanto cíclicas (es decir. Si el nodo j ya esta etiquetado con [uj. y se define dij (≥0) como la longitud de arco (i. i]. Una etiqueta temporal se modifica si se puede encontrar una ruta más corta a un nodo.1. Etiquetar y rotular el nodo fuente con la etiqueta permanente. entre un nodo específico. Paso 2. costo y/o tiempo. 1] = [7.1 Se tiene la siguiente red: 2 2 1 4 3 7 1 5 6 5 7 8 6 3 4 5 4 2 Figura 7.1].1] Estado Permanente Temporal Temporal Para las dos etiquetas temporales [2. El proceso es realizado n – 1 veces.. Entonces.2] = [3. es decir el árbol de recorrido mínimo. el nodo 2 produce la menor distancia (u2 = 2).—] Permanente Iteración 1.1] [7.1] [0+7.2] [2+1.2] Estado Permanente Permanente Temporal Temporal Temporal [2. entonces 7 – 1 = 6 iteraciones. los números representan la distancia y la idea es hallar las rutas más cortas del nodo 1 hacia los demás nodos.1] y [7.1] = [2.2] 3 [6.Texto Guía – Sistemas de Ingeniería Capítulo 7 Ejemplo de aplicación 7.—] [0+2.2] en el nodo 5 se cambia a permanente (u5=3) 193 . Las redes resultantes de la aplicación de estos pasos son: Iteración 0. Nodo 1 2 4 3 5 Etiqueta [0.] 1 4 1 5 [3. se cambia el estado del nodo 2 a permanente.2] = [6.1] [2+4. Nodo Etiqueta Estado 1 [0.7 En esta red. Iteración 2.2] El estado de la etiqueta temporal [3.—] [2.1] 2 2 [0. Nodo 1 2 4 Etiqueta [0. —] [2.2] del nodo 3 se cambia a permanente (u3=6) Iteración 4.3] Estado Permanente Permanente Temporal Permanente Permanente Temporal Temporal Descartar Descartar [2.2] [11. Nodo 1 2 4 3 5 6 7 4 6 Etiqueta [0.5] 7 6 [8.5] [8.5] 6 [11.5] La etiqueta temporal [6.1] Del nodo 3 se puede ir al nodo 4 y 6 pero ya existen etiquetas temporales con menor distancia por lo que se descarta estas dos últimas etiquetas.1] [7.5] Estado Permanente Permanente Temporal Temporal Permanente Temporal Temporal [2.1] 2 2 [0.-] 1 4 [6.1] 5 4 [8.—] [2.5] 6 3 [11.1] del nodo 4 se cambia a permanente (u4=7) Iteración 5.2] 3 7 1 5 6 5 [3.. por tanto el nodo 6 se convierte su etiqueta temporal [9.5] = [11.5] [9.3] = [9.4] en permanente y el algoritmo habrá terminado.2] 5 7 8 [8.1] [6.2] [3.1] [7.5] = [8.4] Entonces la etiqueta temporal [8.5] [11.2] 3 7 1 5 6 [3. 194 .3] = [12.2] [3.2] [3+8.2] 2 5 7 8 6 3 4 [7.Texto Guía – Sistemas de Ingeniería Capítulo 7 Iteración 3.1] 2 2 [0. Entonces la etiqueta temporal [7.1] [7.5] del nodo 7 se cambia a permanente (u7 = 8) En esta ultima red vemos que el nodo 7 ha quedado etiquetado permanentemente y esta ligado al nodo 6 con una distancia de 8 + 4 = 12 que es mayor que 9.5] [7+2.4] Temporal Temporal [2.—] [2.1] [6.] 1 1 4 5 5 3 [6.4] Estado Permanente Permanente Permanente Permanente Permanente Cambiar por [9.1] [6.-] 1 4 [6.2] [3.1] 2 2 [0.2] 5 7 8 [8.5] [3+5.5] 4 [7.2] [11.5] [6+3. Nodo 1 2 4 3 5 6 Etiqueta [0.4] =[9.3] [6+6. Nodo 1 2 4 3 5 6 7 Etiqueta [0.2] [3. —] [2.4) Figura 7.2] [3.2] [8.1) 1 1 4 5 (6.1) (8.1] [6. se muestra las rutas más cortas hacia cualquiera de los otros nodos: NODO RUTA MÁS CORTA DESDE 1 DISTANCIA 2 1–2 2 3 1–2–3 6 4 1–4 7 5 1–2–5 3 6 1–4–6 9 7 1–2–5–7 8 195 .2) 5 7 8 4 6 3 2 4 (7.5] [9.1) 2 2 (0. según la tabla y partiendo del nodo 1.1] [7.5) (9.8 Procedimiento de Etiquetado de Dijkstra El árbol de recorrido mínimo consta de n – 1 arcos y muestra los resultados del problema.2) 3 7 6 5 (3.4] Estado Permanente Permanente Permanente Permanente Permanente Permanente Permanente (2.Texto Guía – Sistemas de Ingeniería Capítulo 7 Iteración 6. Nodo 1 2 4 3 5 7 6 Etiqueta [0. Igualar k = i. que es finita si i está conectado directamente con j.1. Este intercambio de operación triple se aplica en forma sistemática a la red. El algoritmo representa una red de “n” nodos como matriz cuadrada con “n” renglones y “n” columnas. es más corto ir a k desde i pasando por j si: dij + djk ≤ dik En este caso.Texto Guía – Sistemas de Ingeniería Capítulo 7 7. j Cij i Cjk Cik k Figura 7.3.2 El algoritmo de Floyd El algoritmo de Floyd es más general que el de Dijkstra. j y k en la figura 7.9 Operación triple de Floyd El concepto del algoritmo de Floyd es directo. Definir las matrices iniciales de distancias Do y de secuencias de nodos So como se describe abajo. e infinita en caso contrario. El elemento (i. Los elementos diagonales se marcan con (—) para indicar que están bloqueados. con las distancias entre si indicadas en los tres arcos. Dados tres nodos i. j) de la matriz expresa la distancia dij del nodo i al nodo j. con los siguientes pasos: Paso 0. porque permite determinar la ruta más corta entre dos nodos cualesquiera de la red. Do = So = 1 1 — 2 d12 … … j d1j … … n d1n 2 : i : n d21 : di1 : dn1 — : di2 : dn2 … : … : … d2j : dij : dnj … : … : … d2n : din : — 1 2 : i : n 1 — 1 : 1 : 1 2 2 — : 2 : 2 … … … : … : … j j j : j : j … … … : … : … n n n : n : — 196 . lo óptimo es reemplazar la ruta directa i → k por la ruta indirecta i → j → k.9. repetir el procedimiento entre los nodos i y k y entre los nodos k y j. El renglón i representa cualesquiera de los renglones 1. si se satisface la condición dik + dkj ≤ dij (i  k. y k – 1. 197 . y n. En caso contrario. Si sik = k y skj = j. Figura 7. detenerse. Aplicar la operación triple a cada elemento dij en Dk – 1 para toda i y j. De igual modo.….…. la columna j representa cualquiera de las columnas 1. b) Crear Sk reemplazando sij en Sk – 1 por k. dij representa la distancia más corta entre los nodos i y j 2. Definir el renglón k y la columna k como renglón pivote y columna pivote. y k – 1. Igualar k = k + 1 y repetir el paso k. k + 2.10 Implementación de la operación Triple en forma matricial Se puede explicar el paso k del algoritmo representando a Dk – 1 como se ve en la figura 7.…. Aquí. 2. y la columna q representa cualquiera de las columnas k + 1. y el renglón p representa cualquiera de los renglones k + 1. Después de “n” pasos se puede determinar la ruta más corta entre los nodos i y j con las matrices Dn y Sn con las siguientes reglas: 1. se determina el nodo intermedio k = sij que forme la ruta i → k → j. 2. y n. el renglón k y la columna k definen el renglón y la columna pivote actual.….10. entonces es óptimo reemplazar la distancia de intersección por la suma de las distancias pivote. k + 2. j  k e i  j) Hacer los siguientes cambios: a) Crear Dk reemplazando dij en Dk – 1 por dik + dkj. En Sn. todos los nodos intermedios de la ruta se han determinado. si la suma de los elementos del renglón pivote y la columna pivote (representados por cuadrados) es menor que el elemento de intersección asociado (representado por un círculo).Texto Guía – Sistemas de Ingeniería Capítulo 7 Paso genral k. En Dn. Con la operación triple. Las celdas más oscuras d24 y d42 son las únicas que pueden mejorar con la operación triple. 2. D1 y S1 se obtienen partiendo de D0 y S0 como sigue: 1. Sustituir d42 con d41 + d12 = 7 + 2 = 9. en las matrices siguientes: D1 1 2 3 4 5 6 7 1 — 2 ∞ 7 ∞ ∞ ∞ 2 2 — 4 9 1 ∞ ∞ 3 ∞ 4 — 3 5 6 ∞ 4 7 9 3 — ∞ 2 ∞ S1 5 ∞ 1 5 ∞ — 8 5 6 ∞ ∞ 6 2 8 — 4 7 ∞ ∞ ∞ ∞ 5 4 — 1 2 3 4 5 6 7 1 — 1 1 1 1 1 1 2 2 — 2 1 2 2 2 3 3 3 — 3 3 3 3 4 4 1 4 — 4 4 4 5 5 5 5 5 — 5 5 6 6 6 6 6 6 — 6 198 7 7 7 7 7 7 7 — .2 Resolver el ejemplo de aplicación 7. Sustituir d24 con d21 + d14 = 2 + 7 = 9. Estos cambios se muestran en negritas. Así. Do es una matriz simétrica. Las matrices Do y So son la representación inicial de la red.Texto Guía – Sistemas de Ingeniería Capítulo 7 Ejemplo de aplicación 7. El renglón y la columna pivote se ven en la matriz Do con sombra ligera: Son el primer renglón y la primera columna. Se iguala k = 1. 2 2 1 4 1 5 3 6 5 7 8 4 6 3 7 5 2 4 Figura 7. e igualar s24 = 1. e igualar s42 = 1. 1 2 3 4 5 6 7 1 — 2 ∞ 7 ∞ ∞ ∞ 2 2 — 4 ∞ 1 ∞ ∞ Do 3 ∞ 4 — 3 5 6 ∞ 4 7 ∞ 3 — ∞ 2 ∞ 5 ∞ 1 5 ∞ — 8 5 6 ∞ ∞ 6 2 8 — 4 7 ∞ ∞ ∞ ∞ 5 4 — 1 — 1 1 1 1 1 1 1 2 3 4 5 6 7 2 2 — 2 2 2 2 2 3 3 3 — 3 3 3 3 So 4 4 4 4 — 4 4 4 5 5 5 5 5 — 5 5 6 6 6 6 6 6 — 6 7 7 7 7 7 7 7 — Iteración 1.1 por el algoritmo de Floyd.7 Iteración 0. Los cambios que resultan se indican con negritas en D2 y S2. 1 2 3 4 5 6 7 1 — 2 6 7 3 9 ∞ 2 2 — 4 7 1 9 ∞ D4 3 4 7 6 4 7 — 3 3 — 5 8 2 5 ∞ ∞ S4 5 3 1 5 8 — 8 5 6 9 9 5 2 8 — 4 7 ∞ ∞ ∞ ∞ 5 4 — 1 2 3 4 5 6 7 1 — 1 2 1 2 4 1 2 2 — 2 3 2 4 2 3 2 3 — 3 3 4 3 4 4 3 4 — 3 4 4 5 2 5 5 3 — 5 5 6 4 4 4 6 6 — 6 7 7 7 7 7 7 7 — 199 . D2 1 2 3 4 5 6 7 1 — 2 6 7 3 ∞ ∞ 2 2 — 4 9 1 ∞ ∞ 3 6 4 — 3 5 6 ∞ S2 4 7 9 3 — 10 2 ∞ 5 3 1 5 10 — 8 5 6 ∞ ∞ 6 2 8 — 4 7 ∞ ∞ ∞ ∞ 5 4 — 1 2 3 4 5 6 7 1 — 1 2 1 2 1 1 2 2 — 2 1 2 2 2 3 2 3 — 3 3 3 3 4 4 1 4 — 2 4 4 5 2 5 5 2 — 5 5 6 6 6 6 6 6 — 6 7 7 7 7 7 7 7 — Iteración 3. Se iguala k = 3. como indican el renglón y la columna con sombra ligera en D1. Se aplica la operación triple a las celdas más oscuras de D1 y S1. Se iguala k = 2. Las nuevas matrices son D4 y S4. D3 1 2 3 4 5 6 7 1 — 2 6 7 3 12 ∞ 2 2 — 4 7 1 10 ∞ 3 6 4 — 3 5 6 ∞ 4 7 7 3 — 8 2 ∞ S3 5 3 1 5 8 — 8 5 6 12 10 6 2 8 — 4 7 ∞ ∞ ∞ ∞ 5 4 — 1 2 3 4 5 6 7 1 — 1 2 1 2 3 1 2 2 — 2 3 2 3 2 3 2 3 — 3 3 3 3 4 4 3 4 — 3 4 4 5 2 5 5 3 — 5 5 6 3 3 6 6 6 — 6 7 7 7 7 7 7 7 — Iteración 4. Las nuevas matrices son D3 y S3. Se iguala k = 4 como se indica con el renglón y la columna con sombra ligera en D3.Texto Guía – Sistemas de Ingeniería Capítulo 7 Iteración 2. como indican en el renglón y la columna sombreada en D2. Ahora bien. s25 = 5. 200 . j) representa un enlace directo si sij = j. D7 1 2 3 4 5 6 7 1 — 2 6 7 3 9 8 2 2 — 4 7 1 9 6 3 6 4 — 3 5 5 9 4 7 7 3 — 8 2 6 S7 5 3 1 5 8 — 8 5 6 9 9 5 2 8 — 4 7 8 6 9 6 5 4 — 1 2 3 4 5 6 7 1 — 1 2 1 2 4 5 2 2 — 2 3 2 4 5 3 2 3 — 3 3 4 6 4 4 3 4 — 3 4 6 5 2 5 5 3 — 5 5 6 4 4 4 6 6 — 6 7 5 5 6 6 7 7 — Las matrices finales D7 y S7 contienen toda la información necesaria para determinar la ruta más corta entre dos nodos cualesquiera de la red. Se iguala k = 6 como se indica con el renglón y la columna con sombra ligera en D5.2) es un enlace directo y la ruta 1→2→5 no se transformara. Para determinar la ruta asociada. 1 2 3 4 5 6 7 1 — 2 6 7 3 9 8 2 2 — 4 7 1 9 6 D5 3 4 7 6 4 7 — 3 3 — 5 8 2 5 10 13 S5 5 3 1 5 8 — 8 5 6 9 9 5 2 8 — 4 7 8 6 10 13 5 4 — 1 2 3 4 5 6 7 1 — 1 2 1 2 4 5 2 2 — 2 3 2 4 5 3 2 3 — 3 3 4 5 4 4 3 4 — 3 4 5 5 2 5 5 3 — 5 5 6 4 4 4 6 6 — 6 7 5 5 5 5 7 7 — Iteración 6. Se iguala k = 5 como se indica con el renglón y la columna con sombra ligera en D4. i y j están enlazados mediante al menos un nodo intermedio. la ruta inicial es 1→2→5. Se iguala k = 7 como en el renglón y la columna con sombra ligera en D6.Texto Guía – Sistemas de Ingeniería Capítulo 7 Iteración 5. Como s15 = 2. en caso contrario. A continuación como: s12 = 2. Por ejemplo:  Del nodo 1 al nodo 5. primero se ve la distancia asociada d15 = 3. Las nuevas matrices son D6 y S6. como s12 = 2. Las nuevas matrices son D5 y S5. recuérdese que un segmento (i. 1 2 3 4 5 6 7 1 — 2 6 7 3 9 8 2 2 — 4 7 1 9 6 D6 3 4 7 6 4 7 — 3 3 — 5 8 2 5 9 6 S6 5 3 1 5 8 — 8 5 6 9 9 5 2 8 — 4 7 8 6 9 6 5 4 — 1 2 3 4 5 6 7 1 — 1 2 1 2 4 5 2 2 — 2 3 2 4 5 3 2 3 — 3 3 4 6 4 4 3 4 — 3 4 6 5 2 5 5 3 — 5 5 6 4 4 4 6 6 — 6 7 5 5 6 6 7 7 — Iteración 7. Por consiguiente D7 y S7 son iguales que D6 y S6. No hay mejoras posibles en esta iteración. la ruta 1→2→5 no necesita más disecciones y el proceso termina. el segmento (1. 2. el segmento (1. el segmento (1. 7. d17 = 8. Las formulaciones son generales. ahora bien.2 Formulación del problema de la ruta más corta en programación lineal En esta sección se describen dos formulaciones de programación lineal para el problema de la ruta más corta. Cij = Longitud de arco (i. Se definen: xij = Cantidad de flujo en el arco (i. Flujo total que entra = Flujo total que sale 201 . esto es. Suponga que la red de ruta más corta tiene “n” nodos. Como solo puede haber una unidad de flujo en algún arco en cualquier momento.  Del nodo 1 al nodo 2. en cualquier nodo j. s25 = 5 y s57 =7.3. j) para toda i y j factibles.j) Hay una restricción que representa la conservación de flujo en cada nodo. siendo “s” y “t” dos nodos entre los que se busca determinar la ruta más corta.Texto Guía – Sistemas de Ingeniería Capítulo 7  Del nodo 1 al nodo 7. la ruta inicial es 1→5→7. NODO 2 3 4 5 6 7 RUTA MÁS CORTA DISTANCIA DESDE 1 1–2 2 1–2–3 6 1–4 7 1–2–5 3 1–4–6 9 1–2–5–7 8 7. las formulaciones de programa lineal son equivalentes al algoritmo de Floyd. s15 = 2 ≠ 5.1 Formulación “1” En esta formulación se supone que entra a la red una unidad externa de flujo en el nodo “s” y sale en el nodo “t”. y la ruta 1→5→7 se transforma ahora en 1→2→5→7. A este respecto. la ruta asociada s17 = 5.3. en el sentido de que se pueden usar para determinar la ruta más corta entre dos nodos cualesquiera de la red. la ruta asociada s12 = 2. Así. d12 = 2.2) es un enlace directo. la función objetivo del programa lineal se vuelve: Minimizar z  c x ij ij Todoslosarcosdef inidos(i. y que se desea determinar la ruta más corta entre dos nodos cualesquiera “s” y “t” de la red. A continuación como: s12 = 2. j) para toda i y j factibles.5) no es un enlace directo y 1→5 se debe reemplazar por 1→2→5. la variable xij debe asumir solamente valores binarios (0 o 1). la ruta 1→2→5→7 no necesita más disecciones y el proceso termina. La ruta será 1→2  Y así sucesivamente para los demás nodos. en millas. usando la formulación “1”. Por ejemplo. esto es. Se desea determinar la ruta más corta del nodo 1 al nodo 2. x13 = 1. las variables duales no deben estar restringidas. si se suman las ultimas cuatro restricciones en forma simultanea se obtiene x12 + x13 = 1. y la distancia asociada es z = 55 km. La figura 7.2. porque todas las restricciones de la formulación “1” son ecuaciones. x34 = 1. 7. x42 = 1 Esta solución expresa la ruta más corta del nodo 1 al nodo 2 como 1→3→4→2. entre la ciudad 1 (nodo 1) y las otras ciudades (nodo 2 a 5). Sea: yj = la restricción dual asociada al nodo j.11 muestra las rutas con sus longitudes.Texto Guía – Sistemas de Ingeniería Capítulo 7 Ejemplo de aplicación 7. que es igual que la restricción 1. Por ejemplo. se ve a continuación: x12 x13 Minimizar Z = 100 30 Nodo 1 –1 –1 Nodo 2 1 Nodo 3 1 Nodo 4 Nodo 5 x23 x34 x35 x42 x45 20 10 60 15 50 –1 1 1 –1 1 –1 –1 1 –1 1 = –1 =1 =0 =0 =0 Las restricciones representan la conservación de flujo en cada nodo. También.2 Formulación “2” La segunda formulación es en realidad el problema dual del programa lineal en la formulación “1”.11 muestra como entra el flujo unitario en el nodo 1 y sale en el nodo 2.11 Inserción de un flujo unitario para determinar la ruta más corta entre el nodo s = 1 y el nodo t = 2 La lista del programa lineal asociado.3. 1 2 15 100 4 20 50 10 1 1 30 60 3 5 Figura 7.3 La red de la figura 7. s = 1 y t = 2. el problema dual tendrá tantas variables como cantidad de nodos haya en la red. 202 . Como la cantidad de restricciones en la formulación “1” es igual a la cantidad de nodos. en el nodo 2 “flujo que entra = flujo que sale” es x12 + x42 = 1 + x23 nótese que una de las restricciones siempre es redundante. La solución óptima es: z = 55. Se define: yi = distancia al nodo i Con esta definición. la distancia más corta del nodo inicial 1 al nodo terminal 2 se determina maximizando y2 – y1. y1 = 0. el problema dual asociado con el programa lineal anterior es: Maximizar z = y2 – y1 Sujeta a: y2 – y1 ≤ 100 (ruta 1→2) y3 – y1 ≤ 30 (ruta 1→3) y3 – y2 ≤ 20 (ruta 2→3) y4 – y3 ≤ 10 (ruta 3→4) y5 – y3 ≤ 60 (ruta 3→5) y2 – y4 ≤ 15 (ruta 4→2) y5 – y4 ≤ 50 (ruta 4→5) y1. y2. y5 = 0 El valor de z = 55 millas expresa la distancia más corta del nodo 1 al nodo 2. y4 – y3 = 10. la distancia máxima del nodo 1 al nodo 2 es 100. Puede ser menor si se puede llegar al nodo j desde el nodo i pasando por otros nodos que formen una ruta más corta. a partir de esta solución. Con la definición de yi como la distancia al nodo i. Este resultado identifica que la ruta más corta es 1→3→4→2. Con base en la explicación anterior. 3→4 y 4→2. que también es igual a y2 – y1 = 55 – 0 = 55. y3 = 30. 203 . el problema dual se define como sigue: Maximizar z = yt – ys Sujeta a: yj – yi ≤ cij para toda i y j factibles Signo no restringido para toda yi y yj Ejemplo de aplicación 7. y2 – y4 = 15. en realidad se puede interpretar el problema en una forma lógica. Por ejemplo. La determinación de la ruta misma. es algo ingenioso. se puede suponer que todas las variables son no negativas (en lugar de no tener restricción). esto es y3 – y1 = 30.Texto Guía – Sistemas de Ingeniería Capítulo 7 Como “s” y “t” son los nodos inicial y terminal de la red. También se puede suponer que y1 = 0 es la distancia la nodo 1. y suponiendo que todas las variables son no negativas. La restricción asociada con la ruta (i. Se ve que la solución satisface en forma de ecuación a las restricciones de las rutas 1→3. j) indica que la distancia del nodo i al nodo j no puede ser mayor que la longitud directa de esa ruta. y5 no restringida Aunque el problema dual anterior es una definición matemática pura derivada del problema primal. por que sus holguras son igual a cero. y2 = 55. y4 = 40.…. la solución óptima es: z = 55.4 Para aplicar la formulación “2” al ejemplo de aplicación 7.3. La tabla siguiente aparea las rutas (restricciones) con sus valores duales asociados.1 Solución con TORA Se puede usar TORA para generar iteraciones del algoritmo de Dijkstra y del Algoritmo de Floyd.3. Toda restricción que tenga un valor dual distinto de cero debe estar satisfecha en forma de ecuación. Especifique el modo de captura (archivo existente o problema nuevo) y el formato de captura.13 204 .3.3.12 Figura 7. Ruta (restricción) 1→2 1→3 2→3 3→4 3→5 4→2 4→5 Valor dual asociado 0 1 0 1 0 1 0 7. En problemas nuevos. Parta del MainMenú y escoja Network models → Shortest Route (Modelo de red → Ruta más corta). Y oprima SOLVE MENU (menú resolver) Figura 7.3 Solución por computadora de la ruta más corta 7.Texto Guía – Sistemas de Ingeniería Capítulo 7 Otra forma de identificar las restricciones que se satisfacen en forma de ecuación es consultar la solución del programa lineal de la formulación “2”. use la tabla de captura para ingresar datos. Texto Guía – Sistemas de Ingeniería Capítulo 7 Figura 7. Figura 7. y escoja uno de los dos métodos (Algoritmo de Dijkstra o el algoritmo de Floyd) para iniciar las iteraciones del modelo de red.14 Seleccione SOLVE PROBLEM = > Iterations.15 205 . Capítulo 7 Texto Guía – Sistemas de Ingeniería La figura 7.16 muestra las iteraciones del ejemplo de aplicación 7. Figura 7.1 con TORA 206 . con TORA.1.16 Solución de la ruta más corta del ejemplo de aplicación 7. por el algoritmo de Dijkstra. 17 Una vez hecha la selección de Network Modeling haga clic en New Problem.3.3. formato de los datos de entrada.Texto Guía – Sistemas de Ingeniería Capítulo 7 7.2 Solución con WinQSB Parta del menú Inicio = > Programas = > WinQSB = > Network Modeling. número de nodos) y haga clic en OK Figura 7. y escoja el tipo de problema en este caso Shortest Path Problem (Problema de camino más corto) y coloque los datos del problema (criterio de la función objetivo.18 207 . Figura 7. 208 . En la figura 7.21 se resuelve el ejemplo de aplicación 7. Figura 7. Hasta hallar el óptimo.Texto Guía – Sistemas de Ingeniería Capítulo 7 Proceda a ingresar los datos del problema de la siguiente manera: Figura 7. luego presione Iteration = > Next Iteration.19 Una vez ingresados los datos del problema haga clic en Solve and Analyse y haga clic en Solve and Display Steps – Network.1.20 Aparecerá la primera iteración. 22 Solución de la ruta más corta entre los nodos del ejemplo de aplicación 7. y esta diseñada para resolver problemas con un máximo de 10 nodos. La figura muestra la aplicación de la hoja de cálculo al ejemplo de aplicación 7. Figura 7. desarrollada para el modelo general de transporte se puede modificar fácilmente para determinar la ruta más corta entre dos nodos. 7. por ejemplo del nodo 1 al nodo 7.3. La matriz de distancias está en las celdas B6:K15.1 con WinQSB.3. Como se busca la ruta más corta entre los nodos 1 y los nodos restantes. La hoja se basa en la formulación “1”.Texto Guía – Sistemas de Ingeniería Capítulo 7 Y así sucesivamente hasta hallar el óptimo.2. sección 7. la cantidad suministrada al nodo 1 y la cantidad de demanda en el 209 . Para los arcos no existentes se ingresa una distancia infinita (=9999 o cualquier valor relativamente grande).21 Figura 7.3.3 Solución con hoja de cálculo de Excel La hoja de cálculo de Excel.1. Como se explico en la sección 6. para que coincidan con los datos. como se ve en las columnas resaltadas B. Los parámetros de SOLVER deben corresponder a los datos del problema. y en consecuencia son infinitas (=99999). La columna C especifica las capacidades de los arcos de la red (celdas C20:C39). Una vez ingresados los datos de costo unitario. La Celda Objetivo queda igual para todos los datos. se usa SUMIF (sumar si) para generar el flujo neto adecuado en cada nodo. el resto de la hoja (secciones de cálculos intermedios y de solución óptima) se genera en forma automática. todo lo que se debe hacer después de escribir los datos es actualizar las especificaciones Cambiando las Celdas y Restricciones de SOLVER. C. de oferta y de demanda. 210 .7. En el ejemplo de aplicación 7. La columna B especifica las celdas que cambian (flujos de arco) del problema (celdas B20:B39).23 El resultado de la figura 7.3. N5 – N7 = 1). y las celdas G19:G23 representan el lado derecho de las ecuaciones de flujo. F y G. Eso quiere decir que la ruta óptima es 1→2→5→7.Texto Guía – Sistemas de Ingeniería Capítulo 7 nodo 7 es 1 unidad.1 se tiene: Cambiando la celdas: B20:B61 Sujetas a las siguientes restricciones: F19:F25 = G19:G25 Figura 7. En el modelo de ruta más corta esas capacidades no desempeñan papel alguno en los cálculos.24 define la solución (N1 – N2 = 1. con la información de las columnas I y J. Se escribe cantidad cero en los elementos restantes de oferta y demanda. N2 – N5 = 1. con una distancia de 8. Las celdas F19:F23 definen el lado izquierdo. Así. La hoja de cálculo automatiza esas operaciones. Las restricciones del modelo representan la ecuación de balance para cada nodo. 1 con SOLVER de Excel 211 .N4 0 999999 3 N3 .N5 0 999999 4 N4 .N4 0 999999 7 N7 .N3 0 999999 2 N2 .N1 0 999999 2 N2 .N5 1 999999 2 N2 .Texto Guía – Sistemas de Ingeniería Capítulo 7 Modelo de la ruta mas corta con SOLVER Datos de Entrada Nº de Nodos 7 N1 N2 N3 N4 N5 N6 N7 N1 9999 2 9999 7 9999 9999 9999 <<Maximo 10 N2 2 9999 4 9999 1 9999 9999 Unit Cost Matrix(Costo unitario de la matriz) N3 N4 N5 N6 N7 9999 7 9999 9999 9999 4 9999 1 9999 9999 9999 3 5 6 9999 3 9999 9999 2 9999 5 9999 9999 8 5 6 2 8 9999 4 9999 9999 5 4 9999 Demanda 0 0 0 0 0 0 1 Solución óptima: Cálculos intermedios: Costo Total = 8 Nombre Nodo Flujo Demanda Desde Desde .N1 0 999999 6 N6 .N6 0 999999 Hasta 2 3 4 5 6 7 1 3 4 5 6 7 1 2 4 5 6 7 1 2 3 5 6 7 1 2 3 4 6 7 1 2 3 4 5 7 1 2 3 4 5 6 Costo uni 2 9999 7 9999 9999 9999 2 4 9999 1 9999 9999 9999 4 3 5 6 9999 7 9999 3 9999 2 9999 9999 1 5 9999 8 5 9999 9999 6 2 8 4 9999 9999 9999 9999 5 4 Figura 7.N5 0 999999 7 N7 .N1 0 999999 7 N7 .N6 0 999999 2 N2 .N2 0 999999 6 N6 .N2 1 999999 N2 2 0 0 1 N1 .N2 0 999999 3 N3 .N3 0 999999 4 N4 .hasta Flujo Capacidad N1 1 1 1 1 N1 .N6 0 999999 3 N3 .N5 0 999999 3 N3 .N4 0 999999 5 N5 .N3 0 999999 N3 3 0 0 1 N1 .N5 0 999999 6 N6 .N2 0 999999 4 N4 .N6 0 999999 5 N5 .N3 0 999999 5 N5 .N7 0 999999 4 N4 .N2 0 999999 5 N5 .N4 0 999999 N4 4 0 0 1 N1 .N7 1 999999 6 N6 .N1 0 999999 3 N3 .N2 0 999999 7 N7 .24 Solución de la ruta más corta entre los nodos 1 y 7 del ejemplo de aplicación 7.N3 0 999999 7 N7 .N4 0 999999 6 N6 .N6 0 999999 N6 6 0 0 1 N1 .N1 0 999999 4 N4 .N5 0 999999 N5 5 0 0 1 N1 .N6 0 999999 4 N4 .N7 0 999999 3 N3 .N4 0 999999 2 N2 .N7 0 999999 5 N5 .N7 0 999999 N7 7 -1 -1 2 N2 .N3 0 999999 6 N6 .N1 0 999999 5 N5 .N7 0 999999 7 N7 . El camino entre dos poblaciones puede pasar por uno o más poblaciones adicionales.Texto Guía – Sistemas de Ingeniería Capítulo 7 7. se agrega un arco entre ellos). Ejemplo de aplicación 7. Los pasos del procedimiento son los siguientes: Paso 1. Todas esas soluciones se pueden identificar si se buscan las demás formas de romper los empates hasta el final. Los empates para el nodo más cercano distinto (paso 1) o para el nodo no conectado más cercano (paso 2). el problema es encontrar el árbol de expansión con la longitud total mínima de sus arcos. Este paso se repite hasta que se hayan conectado todos los nodos. 212 . Para el problema de la ruta más corta esta propiedad es que el arco seleccionado debe proporcionar una trayectoria entre el origen y el destino. con la mínima longitud de las ramas enlazantes.25. Se describirá paso a paso la solución de este problema con base en los datos que se dan en la figura 7.2). etc. de manera arbitraria. Para el árbol de expansión mínima la propiedad requerida es que los arcos seleccionados deben proporcionar una trayectoria entre cada par de nodos. Los dos problemas involucran también el hecho de seleccionar un conjunto de arcos que tiene la longitud total más corta entre todos los conjuntos de arcos que satisfacen cierta propiedad.1 Algoritmo del árbol de expansión mínima El algoritmo de árbol de expansión mínima enlaza los nodos de una red. El diseño más económico del sistema de caminos indica que se minimice la distancia total de caminos pavimentados. Por lo tanto. costo. y se conectan estos dos nodos (es decir. estos empates son señales de que pueden existir (pero no necesariamente) soluciones óptimas múltiples. cualquier nodo y se conecta (es decir se pone un arco) al nodo más cercano distinto de éste.5 La administración de Comteco necesita determinar los caminos bajo los cuales se deben tender las líneas telefónicas para conectar todas las estaciones con una longitud mínima de cable. la longitud total de los arcos seleccionados. No obstante. se pueden romper en forma arbitraria y el algoritmo todavía debe llevar a una solución óptima. Una red con “n” nodos requiere solo (n – 1) arcos para proporcionar una trayectoria entre cada par de nodos. el resultado que se obtiene implementando el algoritmo de árbol de expansión mínima. Paso 3. Se selecciona. No deben usarse más arcos ya que esto aumentaría. Se identifica el nodo no conectado más cercano a un nodo conectado. Los (n – 1) arcos deben elegirse de tal manera que la red resultante (con solo los arcos resultantes) forme un árbol de expansión (según la definición dada en la sección 7. 7. En ambos casos se considera una red no dirigida y conexa. sin necesidad. Paso 2.4. La manera más rápida de ejecutar este algoritmo en forma manual es el enfoque gráfico que se ilustra enseguida. en la que la información dada incluye alguna medida de longitud positiva (distancia. tiempo. Una aplicación característica es en la construcción de carreteras pavimentadas que unen varias poblaciones.4 Problema del árbol de expansión mínima El problema del árbol de expansión mínima tiene algunas similitudes con la versión principal del problema de la ruta más corta que se presento en la sección anterior. en forma directa o indirecta.) asociada con cada arco. se conecta el nodo C al nodo B. A 2 7 D 2 5 O B 4 5 T 4 3 1 1 7 E 4 C Figura 7.25 En forma arbitraria.Texto Guía – Sistemas de Ingeniería Capítulo 7 A 2 7 D 2 5 O B 4 5 T 4 3 1 1 7 E 4 C Figura 7. El nodo no conectado más cercano a O es el nodo A. A 2 7 D 2 5 O 3 1 C T 4 B 4 5 1 7 E 4 Figura 7. A 2 7 D 2 5 O T 4 B 4 5 3 1 1 7 E 4 C Figura 7.27 El nodo no conectado más cercano a O. Se conecta el nodo A al nodo O.28 213 . A o B es el nodo C (más cercano a B).26 El nodo más cercano a cualesquiera de los nodos O o A es el nodo B (más cercano a A). se selecciona el nodo O para comenzar. se conecta el nodo B al nodo A. aplicando de nuevo el algoritmo. se conecta el nodo E al nodo B. B. La longitud total de las ramas es 14 km. Aunque con este procedimiento a primera vista puede parecer que la selección del nodo inicial afectaría la solución final (y la longitud de los arcos). Esta más cerca del nodo D.Texto Guía – Sistemas de Ingeniería Capítulo 7 El nodo no conectado más cercano a O. Se sugiere que se verifique este hecho para el ejemplo.30 El único nodo no conectado es el nodo T. se conecta el nodo D al nodo E. A 7 2 D 2 5 O B 4 5 T 4 3 1 1 7 E 4 C Figura 7. pero iniciando en un nodo distinto de O. por lo que ésta es la solución óptima que se buscaba. se conecta el nodo T al nodo D A 2 7 D 2 5 O 3 1 C T 4 B 4 5 1 7 E 4 Figura 7. B o C es el nodo E (más cercano a B). en realidad no es así. 214 . C o E es el nodo D (más cercano a E). A 7 2 D 2 5 O B 4 5 T 4 3 1 1 7 E 4 C Figura 7. A. A.29 El nodo no conectado más cercano a O.31 Todos los nodos han quedado conectados. 32 (a) Figura 7.Texto Guía – Sistemas de Ingeniería Capítulo 7 7.34 215 . Y oprima SOLVE MENU (menú resolver) Figura 7.1 Solución con TORA Se puede usar TORA para generar iteraciones del algoritmo del algoritmo del árbol de expansión mínima. Figura 7.33 Seleccione SOLVE PROBLEM.4. En problemas nuevos. Parta del MainMenú y escoja Network models → Minimal Spanning Tree (Modelo de red → Árbol de expansión mínima).2 Solución por computadora de expansión mínima 7. use la tabla de captura para ingresar datos.32 Figura 7.4. Especifique el modo de captura (archivo existente o problema nuevo) y el formato de captura.2. para iniciar las iteraciones del modelo de red. 35 muestra las iteraciones del ejemplo de aplicación 7.4.36 Una vez hecha la selección de Network Modeling haga clic en new Problem.2 Solución con WinQSB Parta del menú Inicio = > Programas = > WinQSB = > Network Modeling.5. formato de los datos de entrada.2. con TORA. Figura 7.Texto Guía – Sistemas de Ingeniería Capítulo 7 La figura 7. número de nodos) y haga clic en OK 216 .5 con TORA 7.35 Solución del árbol de expansión mínima del ejemplo de aplicación 7. y escoja el tipo de problema en este caso Minimal Spanning Tree (árbol de expansión mínima) y coloque los datos del problema (criterio de la función objetivo. Figura 7. En la figura 7.38 Aparecerá la primera iteración.5.Texto Guía – Sistemas de Ingeniería Capítulo 7 Figura 7. Hasta hallar el óptimo. luego presione Iteration = > Next Iteration. Figura 7.36 (a) Proceda a ingresar los datos del problema de la siguiente manera: Figura 7.37 Una vez ingresados los datos del problema haga clic en Solve and Analyse y haga clic en Solve and Display Steps – Network.39 se resuelve el ejemplo de aplicación 7. 217 . 39 Solución del árbol de expansión mínima del ejemplo de aplicación 7. 218 .5 con WinQSB.Capítulo 7 Texto Guía – Sistemas de Ingeniería Y así sucesivamente hasta hallar el óptimo. Figura 7. j)  xij = Flujo total de salida del nodo i. n  f si i  n  0  ij  xij  ij Donde: xij = Flujo por unidad de tiempo que cruza el arco (i. El flujo entra en la red únicamente por el nodo fuente. Matemáticamente se expresa. el total de flujo que entra en un cierto nodo es igual al total de flujo que sale del mismo. es decir: 0  ij  xij  ij . El flujo en un arco debe cumplir los requerimientos mínimos y las capacidades máximas del arco. n j 3. Si i = n j 4. petróleo. j x ji = Flujo total de entrada al nodo i j f = Flujo total de la red por unidad de tiempo  ij = Capacidad máxima de flujo ij = Capacidad mínima de flujo 219 . Hay conservación de flujo en un nodo intermedio. x x ij j ji   f .) que puede circular por la red en la unidad de tiempo. ij Por tanto la formulación matemática de este problema será: Max  = x 1j j Sujeto a:  f si i  1  j xij  j x ji  0 si i  1. En este problema deben tomarse en cuenta las siguientes consideraciones: 1. x x ij j ji  0 . agua.Texto Guía – Sistemas de Ingeniería Capítulo 7 7. es decir. Si i ≠ 1. Si i = 1 j 2. El objetivo es encontrar la máxima cantidad de flujo total (transito. El flujo sale de la red únicamente por el nodo destino. x x ij j ji  f . efectivo.5 Modelo de flujo máximo En el problema de flujo máximo hay un solo nodo fuente que es el productor del flujo y un solo nodo destino que es el consumidor del flujo. etc. Seleccionar ρmin como la capacidad de flujo mínimo de entre todos los arcos seleccionados en el paso 1. El algoritmo consta de los siguientes pasos: Paso 1.Texto Guía – Sistemas de Ingeniería Capítulo 7 De acuerdo a esta formulación. 7.1 Algoritmos del problema de flujo máximo El algoritmo que se emplea es el de Ford y Fulkerson.…. Se debe reducir la cantidad en a dirección del flujo asignado. en la cantidad de flujo. 7. en la cantidad ρmin.  A excepción de los nodos 1 y n. Para cualquier recorrido elegido debe cumplirse:  Que no se exceda la capacidad de ningún arco del recorrido. la mínima de las capacidades en la dirección del flujo debe ser positiva.1. m) tendrán una capacidad máxima de flujo igual a la oferta del lugar. Esto quiere decir que estamos aumentando el flujo existente a través de la red porque enviamos un flujo adicional de rmin sobre este recorrido. Paso 3. en la cantidad de flujo. Los arcos que van de los centros de oferta a los centros de consumo. tendrán una capacidad máxima igual a la capacidad disponible de transporte por unidad de tiempo entre estos puntos. Aumentar las capacidades en la dirección opuesta también en ρmin. se tiene en cuenta dos reglas: 1. tendrán una capacidad mínima igual a la demanda del entro. Se aumenta la cantidad en sentido opuesto. Los arcos de los “n” centros consumidores al nodo destino. se habrá llegado a la solución óptima. considerando todos los arcos del recorrido. 3. Volver al paso 1. Paso 4. Paso 2. es decir. 2. disminuir las capacidades en dirección del flujo en cada arco. Por el recorrido elegido.5.. que tenga CAPACIDAD DE FLUJO POSITIVA. debe cumplir la condición de conservación: Flujo de entrada al nodo = Flujo de salida del nodo. Si no hay recorridos con estas características. de la fuente al destino. Encuentre cualquier recorrido.5.1 Algoritmo de Ford y Fulkerson El algoritmo considera que la cantidad máxima de flujo que puede fluir de la fuente al destino a lo largo de un recorrido elegido. Siempre que se asigna un flujo a un arco particular. es igual a la menor de las capacidades de arco de dicho recorrido. los arcos del nodo productor a cada uno de los centros de oferta (2. el flujo de los otros nodos. 220 . Recorrido O → A → D → T ρmin= 3 3 A 3 6 0 3 0 O B 5 4 3 0 4 6 0 0 0 0 C D 2 3 3 0 0 E 2 D 2 T 3 T 5 2 Iteración 2ª. Recorrido O → C → E → T ρmin= 2 3 A 3 6 0 5 0 O B 3 4 3 0 4 6 0 2 0 2 C 3 3 2 0 E 0 0 221 .6 Dada la red con sus respectivos flujos.Texto Guía – Sistemas de Ingeniería Capítulo 7 Ejemplo de aplicación 7. hallar el flujo máximo: A 0 6 6 3 0 0 O B 5 4 6 0 0 0 0 E 0 C 5 3 4 0 0 D 0 T 2 2 Iteración 1ª. el flujo máximo que atraviesa a la red es 5. se calcula.Texto Guía – Sistemas de Ingeniería Capítulo 7 Como ya no existe un recorrido con capacidad de flujo positiva. siempre y cuando estas ultimas sen menores. entonces habremos llegado al óptimo. por ejemplo el nodo E: x Ej   x jE  0 j j x ET  xCE  0 2–2=0 La red resultante muestra el flujo máximo y puede ser cortada de diferentes maneras. A 3 3 5 O D 3 B T E 2 C 5 2 2 En esta última red se puede comprobar:  Para el nodo fuente O: 0 x Oj   x jO  f j j xOA  xOC  f 3+2=5  Para el nodo destino T: 0 x Tj   x jT   f j j  x DT  x ET   f –3 – 2 = –5  Para un nodo intermedio. se definen: 222 . de tal manera que se establece el siguiente teorema. El flujo total para cada arco. De acuerdo a esto. “EL FLUJO MÁXIMO DE CUALQUIER RED ES IGUAL A LA MÍNIMA CAPACIDAD DE CORTE” Para explicar este teorema. estableciendo diferencias entre las capacidades iniciales y finales. D. 7. que la partición C1 = {O. sin embargo. B. C} {D. el que tenga la capacidad menor permite el flujo máximo en la red. B. Entre todos los cortes posibles en la red. igual a 5. C. C. T} {O. E} {T} {O. A. D. A. C ji ). A} {B. C. T} {O. A. D. se actualizan los residuales (o capacidades 223 . Es la suma de las capacidades de los arcos que conectan a todos los nodos que van de C1 a Cn.2 Algoritmo de flujo máximo El algoritmo de flujo máximo se basa en determinar rutas de irrupción que tengan flujo neto positivo entre los nodos fuente y destino. T} ofrece una mínima capacidad de corte. E. B.6 se tiene: 0 A 6 6 3 0 O B 5 4 0 0 4 6 0 0 0 0 C D 5 3 0 0 0 E T 2 2 Clase 1 (C1) Clase n (Cn) {O} {A. T} {O. E. Considere el arco (i. esta mínima capacidad corresponde al flujo máximo encontrado por el algoritmo de Ford y Fulkerson.1. A medida que partes de esas capacidades contribuyen al flujo en el arco. D.Texto Guía – Sistemas de Ingeniería Capítulo 7  Corte.  Capacidad De Corte. A. la clase 1 contiene al nodo original y la clase n contiene al nodo destino.7 Por lo tanto para el ejemplo de aplicación 7. Cualquier partición del conjunto de nodos en dos clases ajenas: C1 y Cn. E. T} Capacidad de Corte XOA +XOC 3 + 5 =8 XOC + XAB + XAD 5 + 6 + 6 = 17 XOC + XAD + XBC + XBD + XBE 5 + 6 +4 + 4 + 6 = 25 XAD + XBD + XBE + XCE 6 + 4 + 6 + 2 = 18 XBE + XCE + XDE + XDT 6 + 2 + 3 + 5 = 16 XDE + XET 5 + 2 = 7 XOA + XCB + XEB + XED + XET 3 + 0 + 0 + 0 + 2 =5 Se pueden ir deduciendo más particiones y combinaciones posibles. T} {O. C. Se puede notar. D. E} {A. E} y Cn = {A. B. B.5. D. B. Cada ruta comunica parte o todas las capacidades de sus arcos al flujo total en la red. D} {E. E. B} {C. C. T} {O. j) con capacidades iniciales ( C ij . C. Ejemplo de aplicación 7. Sea a1 = ∞ y se etiqueta el nodo fuente 1 con [∞. (Determinación de la red residual). k2.…. Paso 4. Si ≠ Ø... ir al paso 5. el nodo sumidero se ha etiquetado y se ha encontrado una ruta de irrupción. Poner i = 1 y regresar al paso 2 para intentar una nueva ruta de irrupción. Entonces el flujo máximo por la ruta se calcula como: fp = mín {a1. ir al paso 3. respectivamente. sea r el nodo que se ha etiquetado inmediatamente antes del nodo actual i y quitar i del conjunto de nodos adyacentes a r. i]. n).Texto Guía – Sistemas de Ingeniería Capítulo 7 remanentes). si el flujo va de i a j b) ( Cij  f p . k1. con arcos con residuales positivos (esto es cij > 0 para toda j ε Si). an} La capacidad residual de cada arco a lo largo de la ruta de irrupción se disminuye en fp unidades en la dirección del flujo y se aumenta fp unidades en la dirección contraria. C ji ) y ( cij . ( cij . ir al paso 6. ak1.+ fm b) Como los residuales inicial y final del arco (i. ak2. Determinar Si. c ji ) = ( C ij . esto es. Los pasos del algoritmo son como sigue: Paso 1. Determinar k ε Si tal que cik  max{cij } j  Si Igualar ak = cik y etiquetar el nodo k con [ak. Para un nodo j que recibe flujo al nodo i. j) se calcula como sigue: 224 . no hay otras irrupciones posibles. c ji ) para representar esos residuales. Si i = 1. Se iguala i = 1 y se prosigue al paso 2. para todos los nodos i y j en la ruta. Sea Np = (1. el flujo máximo en la red es: F = f1 + f2 + . c ji ) ( Cij  f p . donde aj es el flujo del nodo i al nodo j. C ji ). Se usará la notación ( cij . …. Para todos los arcos (i. (Solución) a) Si se han determinado m rutas de irrupción. Paso 2. C ji  f p ). se define una etiqueta [aj.j) se obtienen con ( C ij . el flujo óptimo en el arco (i. el conjunto de nodos j no etiquetados que se pueden alcanzar directamente desde el nodo i. Si k = n. el flujo residual se cambia del actual ( cij . C ji  f p ). se definen los nodos de la p-ésima ruta de irrupción del nodo fuente 1 al nodo destino n. Igualar i = r y continuar en el paso 2. esto es. En caso contrario igualar i = k y seguir en el paso 2. c ji ) a a) ( cij . Paso 3. si el flujo va de j a i Se reinstalan todos los nodos que se hayan eliminado en el paso 4.i]. Paso 6. En caso contrario ir al paso 4. En caso contrario. Paso 5. La red con los residuales actualizados se llama red residual. j) se iguala la capacidad residual con la capacidad inicial. —]. (Retroceso). c ji ). Paso 2. T}y f1 = mín {aO. Tomar aE = cCE = 2 y etiquetar el nodo E [2. Igualar i = E y repetir el paso 2. Tomar aT = cET = 2 y etiquetar el nodo T [2. Ejemplo de aplicación 7. Así.  )  ( C ij  cij . 2} = 2. Paso 3. aT} = {∞. Las capacidades residuales a lo largo de la ruta N1 son: ( cij .8 Determinar el flujo máximo en la red del ejemplo de aplicación 7. Paso 2. 5} = 5. La ruta de irrupción se determina con las etiquetas comenzando en el nodo T y termina en el nodo O. SC = {B. cCO ) = ( COC  f1 . (T) → [2. Paso 5. 2} = 2. aE. C ji ). C] → (C) → [5. el flujo óptimo de i a j es α. Igualar aO = ∞ y etiquetar el nodo O con [∞. Igualar los residuales iniciales ( cij . c ji ) a) ( cOC .Texto Guía – Sistemas de Ingeniería Capítulo 7 Sea: ( .2) 225 . en un nodo intermedio.0  2)  (3. cCE}= max{0. c ji ) a las capacidades ( C ij . O] → (O). esto es. C}(≠Ø). Paso 1. Paso 2. k = E porque cCE = max {cCB. O]. Si β > 0. 2} = 2. CCO  f1 )  (5  2. SE = {D. C. k = T porque cET = max {cED. Se obtuvo una irrupción.6. SO = {A. E]. Tomar aC = cOC = 5 y etiquetar el nodo C [5. —]. Poner i = O. N1 = {O. Ir al paso 5. E} Paso 3. 5. k = C porque cOC = max {cOA. T} Paso 3. cOC}= max{3. C ji  c ji ) Si α > 0. (Es imposible que tanto α y β sean positivos). 2. E] → (E) → [2. cET}= max{0. antes de poder realizar una irrupción. aC. E. 0 A 6 6 3 0 O B 5 4 0 0 4 6 0 0 0 0 C D 5 3 0 0 0 E T 2 2 Iteración 1º. el flujo óptimo de i a j es β. Igualar i = C y repetir el paso 2. C]. Se invoca el proceso de retroceso del paso 4 cuando el algoritmo llega a un “punto ciego” por descuido. D.3) ( c AB . T}y f2 = mín {aO. 4. D]. SB = {C.2) ( c ET .. esto es. Tomar aT = cDT = 5 y etiquetar el nodo T [5. (T) → [5. C}(≠ Ø).(Aunque los empates se rompen en forma arbitraria. A]. cAD}= max{6. 6. Tomar aD = cBD = 4 y etiquetar el nodo D [4.3) 226 . cOC}= max{3.0  3)  (2. CTD  f 2 )  (5  3. A. Paso 2. C BA  f 2 )  (6  3. D. aT} = {∞.0  3)  (3. 5} = 5. c DB ) = ( C BD  f 2 . Igualar i = B y repetir el paso 2. SO = {A. c ji ) a) ( cOA . —]. Paso 3. aB. k = T porque cDT = max {cDE. CTE  f1 )  (2  2. C DB  f 2 )  (4  3. Igualar aO = ∞ y etiquetar el nodo O con [∞. aD. Igualar i = D y repetir el paso 2. Ir al paso 5.2) 0 A 6 6 3 0 O [o-o. k = A porque cOA = max {cOA. T} Paso 3. B] → (B) → [6. 6} = 4. Igualar i = A y repetir el paso 2. Paso 2. k = D porque cBD = max {cBC.C] 0 [5. B.) Tomar aA = cOA = 3 y etiquetar el nodo A [3. A] → (A) → [3. N2 = {O. Paso 2. cBE}= max{4. E} Paso 3. c BA ) = ( C AB  f 2 . Las capacidades residuales a lo largo de la ruta N2 son: ( cij .0  2)  (0. Tomar aB = cAB = 6 y etiquetar el nodo B [6.3) ( c BD .Texto Guía – Sistemas de Ingeniería Capítulo 7 ( cCE .O] Iteración 2º. La ruta de irrupción se determina con las etiquetas comenzando en el nodo T y termina en el nodo O. 6} = 6. 5} = 3. Se obtuvo una irrupción. cBD. O] → (O). Paso 5. aA. D} Paso 3. TORA selecciona siempre el nodo empatado que tenga el índice menor. 3. Así. k = B porque cAB = max {cAB. Paso 1.0  3)  (0. C EC  f1 )  (2  2. D] → (D) → [4. Paso 2.] B 3 4 0 0 4 6 0 2 0 2 C D 5 3 0 2 0 E T [2. O]. c EC ) = ( CCE  f1 .E] 0 [2. c AO ) = ( COA  f 2 .3) ( c DT . B]. 4. 3} = 3. SA = {B.0  2)  (0. cTE ) = ( C ET  f1 . cDT}= max{3. Poner i = O. SD = {E. C AO  f 2 )  (3  3. cTD ) = ( C DT  f 2 .0  3)  (1. E) (D.] 3 [6.0) – (2.0) = (0.0) – (0.T) (E. C ji ).0) – (3.–2) Flujo Dirección 3 O→A 2 O→C 3 A→B 0 ▬ 0 ▬ 3 B→D 0 ▬ 2 C→E 0 ▬ 3 D→T 2 E→T 227 . El flujo máximo en la red es F = f1 + f2 = 2 + 3 = 5 unidades. en consecuencia no hay irrupciones posibles.0) = (0. como el nodo C tiene residuales ceros.A) (O.0) – (3.D] 0 0 Iteración 3º.3) = (3.O] 3 A 6 3 0 O [o-o. C ji ) – ( cij . –2) (6.0) – (6.0) – (6. Todos los arcos que salen del nodo O tienen residuales ceros.0) – (3. Entonces pasaremos al paso 6 para determinar la solución.Texto Guía – Sistemas de Ingeniería Capítulo 7 [3. 0) (4.3) = (3.0) – (1.C) (A.B) (A.B] 0 D 2 3 3 2 0 E T [5. c ji ) en la iteración 2º de las capacidades iniciales ( C ij .0) = (0.T) ( C ij . c ji ) (3.. –3) (5.E) (C. como se ve en la tabla siguiente: Arco (O.2) = (2.D) (B. –3) (2.D) (B.3) = (3. –2) (3.3) = (3.A] 3 B 4 3 1 6 0 2 0 2 C [4. a excepción del arco OC.2) = (2. –3) (6. Paso 6.0) – (4.0) – (0.0) – (0.0) (2. El flujo en los distintos arcos se calcula restando los últimos residuales ( cij .C) (B. –3) (6.0) (5.0) = (0.E) (D.2) = (2. 0) (4. Las restricciones del problema conservan el flujo de entrada y salida en cada nodo.40. o el flujo total “que entra” al nodo terminal t. con sus capacidades). x25 = 20. Se supone que s y t son los nodos inicial y terminal entre los cuales se debe determinar el flujo máximo en la red capacitada (es decir. La función objetivo maximiza el flujo total “que sale” del nodo inicial s. es: x12 = 20.5.Texto Guía – Sistemas de Ingeniería Capítulo 7 7. que dependen de si se maximiza la salida del nodo 1 (= Z1) o la entrada al nodo 5 (= Z2).40 x12 x13 x14 x23 x25 x34 x35 x43 x45 Maximizar Z1 1 1 1 Maximizar Z2 1 1 1 Nodo 2 =0 Nodo 3 =0 Nodo 4 =0 Capacidad 20 30 10 40 30 10 20 5 20 La solución óptima.j) y sea cij la capacidad del mismo arco. x13 = 30. s = 1 y t = 5. 228 . Ejemplo de aplicación 7. 0 4 20 5 0 0 10 5 0 30 1 20 10 30 0 2 0 0 40 3 20 Figura 7. x45 = 20 El flujo máximo asociado es Z1 = Z2 = 60.9 En el modelo de flujo máximo de la figura 7. x35 = 20. con excepción de los nodos inicial y terminal.2 Formulación del problema de flujo máximo con programación lineal Se define xij como la cantidad de flujo en el arco (i. x23 = . usando cualquiera de las funciones objetivo. x14 = 10. x43 = . La tabla siguiente es un resumen del programa lineal correspondiente con dos funciones objetivos distintas. x34 = 10. Texto Guía – Sistemas de Ingeniería Capítulo 7 7.43 Seleccione SOLVE PROBLEM = > Iterations.5.44 229 .3 Solución por computadora del problema de flujo máximo 7. Especifique el modo de captura (archivo existente o problema nuevo) y el formato de captura.41 Figura 7. Y oprima SOLVE MENU (menú resolver) Figura 7.5. En problemas nuevos.1 Solución con TORA Puede usted usar Tora para resolver el modelo de flujo máximo en una forma automatizada.3. use la tabla de captura para ingresar datos. Figura 7.42 Figura 7. o para producir las iteraciones que se describieron arriba. Parta del MainMenú y escoja Network models → Maximal Flow (Modelo de red → Flujo máximo). 45 muestra las iteraciones del ejemplo de aplicación 7.3.2 Solución con WinQSB Parta del menú Inicio = > Programas = > WinQSB = > Network Modeling. Una vez hecha la selección de Network Modeling haga clic en new Problem. con TORA Figura 7. número de nodos) y haga clic en OK 230 .1 con TORA 7.1. formato de los datos de entrada.Capítulo 7 Texto Guía – Sistemas de Ingeniería La figura 7.45 Iteraciones de flujo máximo para el ejemplo de aplicación 7. y escoja el tipo de problema en este caso Maximal Flow Problem (Problema de flujo máximo) y coloque los datos del problema (criterio de la función objetivo.5. 1.47 Una vez ingresados los datos del problema haga clic en Solve and Analyse y haga clic en Solve and Display Steps – Network. En la figura 7.49 se resuelve el ejemplo de aplicación 7. 231 . Figura 7. luego presione Iteration = > Next Iteration.48 Aparecerá la primera iteración. Hasta hallar el óptimo.46 Proceda a ingresar los datos del problema de la siguiente manera: Figura 7.Texto Guía – Sistemas de Ingeniería Capítulo 7 Figura 7. La matriz de capacidades de flujo está en las celdas B6:K15.49 Solución del problema de flujo máximo del ejemplo de aplicación 7.7. Un elemento cero corresponde a un arco de flujo inexistente.3.3 Solución con hoja de cálculo de Excel La hoja de cálculo de Excel. La figura 7. El intervalo para Cambiando las Celdas debe abarcar todos los arcos especificados en la columna A (asegúrese de dar un nombre a cada nodo en la matriz de datos. Una vez capturados los datos de capacidad de flujo. 7.1 con WinQSB.Capítulo 7 Texto Guía – Sistemas de Ingeniería Figura 7.5. todos los arcos restantes deben tener capacidades finitas. o la columna A solo mostrara un guión en las celdas correspondientes). 232 . el resto de la hoja de cálculo (secciones de cálculos intermedios y de solución óptima) se crean en forma automática. Esta hoja de cálculo esta diseñada para problemas con un máximo de 10 nodos. las celdas B20:B61 proporcionan el intervalo de Cambiando las Celdas. que se desarrollo para el modelo de transporte (sección 6. La columna B especifica las celdas que cambian (flujos de arco) del problema. En este ejemplo. Todo lo que se necesita ahora es actualizar los parámetros de solver para que coincidan con datos del problema.50 muestra la aplicación de la hoja de cálculo al ejemplo de aplicación 7.1. En cualquier otro caso. La columna C especifica las capacidades de los arcos de la red (Celdas C20:C61).3) se modifica para determinar el flujo máximo en una red capacitada. Una celda vacía en la matriz de capacidades indica que el arco correspondiente tiene capacidad infinita. basada en la red. 4. N2 – N5 = 3. los parámetros de Solver para el ejemplo 7.Texto Guía – Sistemas de Ingeniería Capítulo 7 Las restricciones del modelo representan la ecuación de balance de cada nodo. N5 – N7 = 3. 233 . 3. 5 y 6) Nótese que La celda objetivo se automatiza y no necesita cambiarse. las celdas G20:G24 representan el lado derecho de las ecuaciones de flujo.51 define la solución (N1 – N2 = 3. Con base en esta información. indica que no es necesario formular nuevas ecuaciones de flujo para los nodos primero y ultimo de la red. Eso quiere decir que la ruta óptima es 1→ 2 → 5 → 7 y 1→ 4 → 6 → 7.50 El resultado de la figura 7. El parámetro Figura 7. de la sección 7. La formulación como programa lineal. N1 – N4 = 2. N6 – N7 = 2).1 se captura como sigue: Cambiando la celdas: B20:B61 Sujetas a las siguientes restricciones: B20:B61< = C20:C61 (capacidad de arco) F20:F24= G20:G24 (Ecuaciones de flujo para los nodos 2.5. N4 – N6 = 2.3. Así. con un flujo máximo de 5. N7 N6 .N3 N5 .N7 N4 .N5 N6 .N1 N3 .51 Solución de flujo máximo desde el nodo 1 hasta 7 del ejemplo de aplicación 7.1 con SOLVER de Excel 234 .N6 N2 .N5 N3 .N2 N4 .N5 N4 .Texto Guía – Sistemas de Ingeniería Capítulo 7 Modelo De Flujo Máximo Con SOLVER Datos de Entrada: Nº De Nodos 7 N1 N2 N3 N4 N5 N1 0 0 0 0 0 N6 0 0 0 0 0 0 2 N7 0 0 0 0 0 0 0 <<maximo 10 Matriz de Capacidades (la entrada en blanco = infinito) N2 N3 N4 N5 N6 N7 3 0 5 0 0 0 0 6 0 6 0 0 0 0 4 4 6 0 0 0 0 0 2 0 0 0 0 0 3 5 Solución óptima: Intermediate calculations: Costo Total = 5 Nombre Desde .N7 N2 .N1 N4 .N7 N7 .N1 N7 .N4 N3 .N5 N7 .N6 N5 .N2 N5 .N3 N1 .N2 N6 .N5 N1 .N4 N2 .N4 N7 .N4 N1 .N1 N6 .N2 N3 .N3 N7 .N6 Flujo Capacidad 3 3 0 0 2 5 0 0 0 0 0 0 0 0 0 6 0 0 3 6 0 0 0 0 0 0 0 0 0 4 0 4 0 6 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 3 3 5 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 N1 N2 N3 N4 N5 N6 N7 Nodo Flujo 1 2 3 4 5 6 7 5 0 0 0 0 0 -5 Demanda Desde 0 0 0 0 0 0 0 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4 5 5 5 5 5 5 6 6 6 6 6 6 7 7 7 7 7 7 Hasta 2 3 4 5 6 7 1 3 4 5 6 7 1 2 4 5 6 7 1 2 3 5 6 7 1 2 3 4 6 7 1 2 3 4 5 7 1 2 3 4 5 6 Flujo Unitario 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Figura 7.N2 N1 .N2 N7 .N1 N2 .N6 N4 .N4 N6 .N7 N3 .N3 N6 .N3 N2 .N6 N3 .N4 N5 .N6 N1 .N1 N5 .N7 N5 .N3 N4 .Hasta N1 .N5 N2 . Las cantidades de oferta en los tres plantas son 100. 200 y 50 m3. Coboce usa principalmente camiones hormigoneras para transportar el hormigón a los proyectos.Texto Guía – Sistemas de Ingeniería Capítulo 7 7. uij (lij) = capacidad máxima (mínima) del arco (i.6) son de camiones hormigoneras. [–80] y [–120]. y se definen: xij = cantidad de flujo del nodo i al nodo j. A cada arco se le asocia un costo de flujo unitario (no negativo).j). Los proyectos se representan con los nodos 4.52 Arco capacitado con flujo externo Ejemplo de aplicación 7. cuyas demandas son [–150]. Plantas se representan con los nodos 1.1 Representación en red Se tiene una red capacitada G = (N. en las que se usan otro tipo de transporte. 2 y 3. cij = costo de flujo unitario del nodo i al nodo j. La etiqueta [fi] supone un valor positivo (negativo) cuando hay una oferta o suministro neto (demanda) asociada al nodo i. representando el modelo de red y su formulación equivalente en programación lineal. La figura 7. Los arcos pueden tener límites inferiores positivos de capacidad. con capacidades mínimas y máximas.6. Figura 7. 5 y 6. En todas las demás rutas se usan otro tipo de transporte. (3. Las rutas permiten transbordos entre los plantas. de la red capacitada con costo mínimo. La figura 7. 7.10 Coboce abastece de hormigón a tres proyectos de caminos desde tres plantas. 2.52 muestra las definiciones en el arco (i.j). lo cual es la base que desarrolla el algoritmo símplex capacitado especial y por ultimo mostraremos una plantilla de hoja de calculo. El nuevo modelo determina los flujos en los distintos arcos.6 Problema del flujo capacitado a costo mínimo El problema del flujo capacitado a costo mínimo se basa en las hipótesis siguientes: 1. la capacidad de la ruta (1. Los arcos (1. a excepción de de tres rutas. A).4) y (4. respectivamente. 3.4) es de 50 a 80 m3.4). cuya capacidad máxima es 235 . Todo nodo en la red puede funcionar como fuente o como sumidero. que minimizan el costo total y a la vez satisfacen las restricciones de flujo y las cantidades de oferta y demanda en los nodos. [200] y [50].53 muestra las rutas disponibles entre las tres plantas y los tres proyectos. Por ejemplo. cuyas cantidades de suministro son [100]. fi = flujo neto en el nodo i. donde N es el conjunto de los nodos y A es el conjunto de los arcos. respectivamente. j ) A ij X ij Sujeta a: X jk k  X ij  fj. Los costos de transporte. Figura 7. Siempre se puede eliminar la cota inferior lij de las restricciones. por m3. 236 . Además. j i ( j .4. el programa lineal para la red capacitada es: Minimizar z =  C ( i . k ) A ( i .53 7.6. mediante la sustitución: . que presentaremos en la sección siguiente. xij  xij  lij .j) después de que ha salido por sustitución la cota inferior.6.Texto Guía – Sistemas de Ingeniería Capítulo 7 prácticamente ilimitada.54 muestra la transformación de la actividad (i. j ) A lij  X ij  uij La ecuación para el nodo j mide el flujo fj neto en el nodo j como siguen: (Flujo que sale del nodo j) – (Flujo que entra al nodo j) = fj El nodo j funciona como fuente si fj > 0 y como sumidero si fj < 0. tiene un limite superior igual a uij – lij. se indican en sus arcos respectivos. AL usar la notación descrita en la sección 7. La nueva variable de flujo x ij .2 Formulación con programación lineal La formulación de un modelo de red capacitada como programa lineal es la base del desarrollo del algoritmo símplex capacitado. La figura 7. el flujo neto en el nodo i se vuelve fi – lij y en el nodo j es fj + lij. Texto Guía – Sistemas de Ingeniería Capítulo 7 Figura 7.11 Escriba el programa lineal para la red de la figura 7.1 $3 6 [50] $5 [200] 00 $1 $4 $4 3 $2 $6 2 [-120] 5 [-80] Figura 7.55. El resto de los coeficientes es 0. La columna asociada con la variable xij tiene exactamente un +1 en el renglón i y un –1 en el renglón j. Las variables con cotas inferiores se sustituyen como sigue: x14 = x14 + 50 x34 = x34 + 70 x46 = x16 + 100 237 . antes y después de eliminar las cotas inferiores por sustitución.55 Las restricciones principales del programa lineal relacionan el flujo de entrada y salida en cada nodo. y así se obtiene el siguiente programa lineal: Minimizar Nodo 1 Nodo 2 Nodo 3 Nodo 4 Nodo 5 Nodo 6 Cotas inferiores Cotas superiores x12 x13 x14 x23 x25 3 4 1 5 6 1 1 1 –1 1 1 –1 –1 –1 –1 0 ∞ 0 ∞ 50 80 0 ∞ 0 ∞ x34 1 x35 2 x46 2 x56 4 = 100 = 200 1 1 = 50 –1 1 = -150 –1 1 = . [-150] [100] $1 1 4 (50.12 .80 –1 –1 = -120 70 0 100 0 120 ∞ 120 ∞ Observe el arreglo de los coeficientes de las restricciones. Esta estructura es característica de los modelos de flujo de red.54 Eliminación de la cota inferior en los arcos Ejemplo de aplicación 7.80) (1 $2 0) (70 ) 20 . 20 Nodo 4 –1 –1 1 = -130 Nodo 5 –1 –1 1 = . realiza los mismos pasos básicos con cada iteración – encontrar la variable básica entrante. como se definió en sección 7.56. Ya que i es el flujo neto en nodo i. después de eliminar por sustitución las cotas inferiores. Observe que la sustitución de la cota inferior se puede hacer en forma directa en la figura 7.56 7. Como tal. se ve en la figura 7.3 Algoritmo símplex de red capacitada El método de redes es una versión muy simplificada del método símplex para resolver problemas del flujo de costo mínimo. determinar la variable básica que sale y obtener la nueva solución Básica Factible – con el fin de mover la solución Básica Factible actual a una adyacente mejor.80 Nodo 6 –1 –1 = -20 Cotas superiores ∞ ∞ 30 ∞ ∞ 50 ∞ 20 ∞ La red correspondiente.2 lo cual estipula que la red debe satisfacer n f i 1 i 0 238 . No obstante ejecuta estos paso en una forma que explota la estructura especial de la red del problema sin necesidad alguna de la tabla símplex.6.6.54 y sin necesidad de expresar el problema primero como programa lineal.55.Texto Guía – Sistemas de Ingeniería Capítulo 7 El programa lineal que resulta es: x12 x13 x14 x23 x25 x34 x35 x46 x56 Minimizar 3 4 1 5 6 1 2 2 4 Nodo 1 1 1 1 = 50 Nodo 2 –1 1 1 = 200 Nodo 3 –1 –1 1 1 = . usando la sustitución de la figura 7. Figura 7. i = 1. 2. Lo cual puede demostrar que una solución básica le corresponde a un árbol de expansión de la red. esta fuente o destino ficticio sus características son:  Arcos de costo unitario cero. El cálculo de los coeficientes objetivo se basa en la dualidad. los coeficientes objetivo. n Según la teoría de la programación lineal. Cuando se aplica el programa lineal. exactamente como se hizo con el modelo de transporte. j )  A wi de signo no restringido. En caso contrario ir al paso 2. para el arco básico (i. Paso 1 Determinar un arco (variable) de entrada con la condición de optimalidad del método símplex. entonces. lo cual consiste en n-1 ecuaciones independientes de restricciones. Paso 2 Determinar el arco (variable) salida usando la condición de factibilidad del método símplex. Pero este balanceo no asegura que tenga el problema una solución factible. Si zij  cij ≤ 0 para todas i y j. se requiere el conocimiento del método símplex y con la teoría de la dualidad antes visto. e ir al paso 1. calculando zij  cij . detenerse. la base actual (la que se tiene en ese momento) es óptima. sea wi la variable dual asociada con la restricción del nodo i. En caso contrario se selecciona el arco no básico con la zij  cij más positivo para entrar en la base. Paso 0 Determinar una solución básica factible (conjunto de arcos) para la red. el problema dual (excluyendo las cotas superiores) es n Maximizar z   f i wi i 1 Sujeta a: wi  w j  cij (i. para todos los arcos no básicos actuales (i. El arco entrante lo que consiste en el paso 1 se determina. Una red con n nodos y flujo neto cero lo que quiere decir que 1 + 1 +… +n = 0. …. y complementariamente puede ayudar el saber el método símplex con cota superior. lo cual una solución básica asociadas debe incluir n-1 arcos. Si la solución es óptima. Determinar la nueva solución y continuar con el paso 1.  Y capacidad infinita. j).Texto Guía – Sistemas de Ingeniería Capítulo 7 Esto indica que la oferta en la red debe ser igual a la demanda total. lo cual se puede lograr aumentando una fuente o destino ficticio lo cual su objetivo es balancear y esta conectado con demás nodos de la red y así cumplir con esta condición. j) 239 . wi  w j  cij . Capacidad de arco Costo unitario Planta 1 150 $3 1 3 (200) (200) (150) $5 $2 5 (150) $7 $1 (oo) $3 $6 (400) Planta 2 400 2 250 Ciudad 1 (400) (200) $8 4 300 Ciudad 2 Figura 7. y las demandas diarias en las ciudades 1 y 2 son 250 y 300 millones de galones. Por comodidad de iguala w1 = 0.58 (indicados con arcos de línea llena) se obtiene por inspección. En el caso normal se usa una técnica de variable artificial para llegar a esa solución. El nodo 5 es una estación de bombeo entre las plantas y las ciudades. El modelo ya esta balanceado. De acuerdo con el método 2 de la sección 5. Los nodos 1 y 2 representan a las plantas y los nodos 3 y 4 representan a las ciudades 1 y 2. Determinación de una solución inicial básica factible: El árbol de expansión factible inicial de la figura 7. La figura 7. Las cantidades diarias de abastecimiento en las dos plantas son 150 a 400 millones de galones. Paso 0. A continuación se resuelven las ecuaciones (básicas) wi  w j  cij para determinar los valores duales restantes. Se sabe según esto que el coeficiente objetivo de la xij no básica es la diferencia entre el lado izquierdo y el lado derecho de la restricción dual correspondiente al dual.12 Una red de tuberías conecta dos plantas de tuberías a dos ciudades. Ejemplo de aplicación 7. A continuación.Texto Guía – Sistemas de Ingeniería Capítulo 7 Ya que por definición el programa lineal original tiene una restricción redundante. lo cual haremos con un ejemplo numérico. es decir: zij  cij  wi  w j  cij Lo único que queda por mostrar es la determinación de la variable de salid.57 Red para el ejemplo de aplicación Iteración 0.57 muestra la red asociada. porque la oferta en los nodos 1 y 2 es igual a la demanda en los nodos 3 y 4. 240 .5. se puede asignar un valor arbitrario a una de las variables duales (comparando con el algoritmo de transporte). 4). 400. el arco (3. por consiguiente w3 = –3 Arco (5.1): w2 – w1 – C21 = 2 – 0 – 7 = – 5 Arco (2.3) y (5. por consiguiente w5 = –1 Arco (2. con los flujos factibles de 150.5): w2 – w5 = 3. La notación x(c) en los arcos indica que se asigna un flujo de x unidades a un arco con capacidad c.3): w1 – w3 = 3. por consiguiente w4 = –7 Ahora se calculan zij – Cij para las variables no básicas. Los valores predeterminados para x y c son 0 y ∞.4): w3 – w4 – C34 = –3 – (–7) – 1 = 3 Por lo anterior. Determinación del arco entrante: Se obtienen los valores duales resolviendo las ecuaciones básicas actúales. (1.4): w2 – w4 – C24 = 2 – (–7) – 8 = 1 Arco (3. por consiguiente w2 = 2 Arco (5.58.5): w1 – w5 – C15 = 0 – (–1) – 5 = – 4 Arco (2.4) y (2.4): w5 – w4 = 6. Paso 1. (5.5). Iteración 1. la solución básica factible consiste en los arcos (línea llena) (1.Texto Guía – Sistemas de Ingeniería Capítulo 7 [150] $3 1 5 $1 (oo) 2 $6 0) 40 0 0 (4 (4 0 0 30 0) (150) $7 $3 [-250] 0) 20 ( 0 10 $2 (1 50 ) $5 [400] 3 150(200) (200) $8 4 [-300] Figura 7. w1 = 0 wi – wj = Cij Así se obtienen Arco (1. 100 y 300 unidades.5). respectivamente.1). (2.3): w5 – w3 = 2. Esto deja a los arcos (líneas interrumpida) (2.3). como sigue: Arco (1.58 Red para la iteración 0 En la figura 7.4) entra a la solución básica.4) para representar a las variables no básicas. 241 . (3. respectivamente. 3) y (5. Los nuevos flujos en el bucle son entonces 100 unidades en el arco (3. el cambio máximo de flujo en el bucle es mínimo [100. La condición dos estipula que los flujos en los arcos (5. Para lograrlo se identifica el flujo positivo (+) en el bucle. para. 0 ≤ x43 ≤ 100 242 . de 3 a 4). se basas en dos condiciones: 1.59 Red para la iteración 0 Paso 2. 300] = 100 unidades.4).4). el nuevo arco (3. El flujo nuevo en el arco entrante no puede exceder su capacidad. Determinación del arco saliente: En la figura 7. Como el flujo en el arco nuevo (3.4) puede aumentar cuando mucho hasta la capacidad del arco mínimo [100. 2. Sin embargo. con la dirección del arco entrante (es decir.4) no puede disminuir en más de 300 unidades.4). El flujo nuevo en los arcos básicos actuales del bucle no puede ser negativo. Estas convenciones de signo se muestran en la figura 7. ∞] = 100 unidades. X34 = 100 – x43.4) debe aumentar. 100 + 100 = 200 unidades en el arco (5. Entonces.4) forma un bucle con los arcos básicos (5.4). La determinación de la cantidad máxima de flujo en el arco entrante (3. A continuación se asigna (+) o (-) a los arcos restantes del bucle.3) y (3. para no manejar arcos no básicos que están en el valor de su capacidad (o cota superior) se implementara la sustitución.3) y 300 – 100 = 200 unidades en el arco (5. se ajusta el flujo en los arcos del bucle con una cantidad igual.Texto Guía – Sistemas de Ingeniería Capítulo 7 1 [150] 3 $3 1 0) 20 ( 0 10 $2 (1 50 ) $5 5 $3 2 [-250] + $1 (oo) w5= -1 0) 40 0( 30 40 0( 40 0) (150) $7 [400] 3 150(200) $6 + - (200) $8 4 [-300] Figura 7. Debido a que ninguno de los arcos básicos sale de la base a nivel cero. mantener la factibilidad de la nueva solución. ya no se puede formar otro bucle. De acuerdo con la definición del árbol de expansión.59. La aplicación de la condición 1 indica que el flujo en el arco (5.4) debe permanecer no básico en la cota superior.59 se ve que el arco (3. dependiendo de si el flujo en cada uno es en o contra la dirección del flujo del arco entrante. 243 . que era lo que se quería.61 resume los nuevos valores de zij – Cij Ahora se calculan zij – Cij para las variables no básicas. Indicaremos esta inversión de dirección en la red.60 Red para la iteración 1 Iteración 2 La figura 7. la sustitución x34 = 100 – x43 da como resultado: Nueva ecuación del flujo en el nodo 3: x13 + x53 = 350 – x43 Nueva ecuación del flujo en el nodo 4: x24 – x43 + x54 = 200 En la figura 7.4) entra a la solución básica. También define al bucle asociado con el nuevo arco entrante.Texto Guía – Sistemas de Ingeniería Capítulo 7 Esta sustitución se hace en las ecuaciones de flujos asociadas con los nodos 3 y 4 como sigue. La dirección de flujo en el arco (3.3): w4 – w3 – C43 = –7 – (–3) – (–1) = –3 Y muestra que el arco (2. como sigue: Arco (1. También la sustitución requiere cambiar el costo unitario del arco (4.3) a $-1. y así asigna signos a sus arcos.60 se ven los resultados de estos cambios. etiquetando el arco con un asterisco.4): w2 – w4 – C24 = 2 – (–7) – 8 = 1 Arco (4. Se tiene que: Ecuación actual del flujo en el nodo 3: x13 + x53 = x34 + 250 Ecuación actual del flujo en el nodo 4: x24 + x34 + x54 = 300 Entonces.1): w2 – w1 – C21 = 2 – 0 – 7 = – 5 Arco (2.4) queda invertida ahora a 4→3 con x34 = 0.5): w1 – w5 – C15 = 0 – (–1) – 5 = – 4 Arco (2. 1 1 (1 50 ) $5 5 $3 2 ) 00 2 0( 20 $2 + w5= -1 -$1 0) 40 0( 20 40 0( 40 0) (150) $7 [400] 3 150(200) [-350] 100(oo)* [150] 3 $3 $6 + - (200) 4 $8 w2= 2 [-200] w4= -7 Figura 7. La disminución máxima permisible en el arco (5. (2.5).4) será básico y forzará a que el arco básico (5. $3 1 3 150(200) ) 00 2 0( 20 $2 (1 50 ) $5 5 (150) $7 -$1 [-350] 100(oo)* [150] (4 40 0) - [400] 2 $6 ) 00 20 0( $3 200(200) $8 + 4 [-200] Figura 7. También.3) formando la solución (árbol de expansión) básica.4) se puede aumentar en la cantidad mínima de 1.4) = 200 2.4) y (5.4) agregara 200 unidades de entrada en cada nodo. El aumento máximo permisible en el arco entrante (2.62 Red para la iteración 2 244 .Texto Guía – Sistemas de Ingeniería Capítulo 7 w1= 0 1 3 150(200) ) 00 2 0( 20 $2 (1 50 ) $5 5 (150) $7 -$1 w5= -1 [-350] 100(oo)* [150] w3 = -3 $3 0) 40 0( 20 40 0( 40 0) - $3 [400] $6 - (200) 2 + $8 w2= 2 4 [-200] w4= -7 Figura 7.61 Red para la iteración 1 El flujo en el arco (2.62. (2. con los arcos (1.3). con lo cual (2. La disminución máxima permisible en el arco (2. Al usar la sustitución la red cambia como se ve en la figura 7. convénzase el lector de que la sustitución en las ecuaciones de flujo de los nodos (5.4) se puede aumentar a 200 unidades. el flujo en el arco (2.4) sea no básico en su cota superior (= 400).4) = 200 unidades Así.5) = 400 unidades 3. Texto Guía – Sistemas de Ingeniería Capítulo 7 Iteración 3. una celda en blanco representa un arco con capacidad infinita. como se ve en la figura 7.10. LA matriz de costos unitarios esta en las celdas B6:K15. En la matriz de capacidades celdas (N6:W15). Con un costo de $3150 Los valores de las variables originales se obtienen por sustitución en reversa. para el ejemplo 6. y el arco inexistente 3→4 se muestra con un elemento cero en la celda Q8. Los cálculos de las nuevas wi y zij – Cij de la figura 7.63 muestra que la solución es óptima.63 Red para la iteración 2 7.5. Como ilustración. En forma arbitraria se asignaron costos unitarios ceros a todos los arcos inexistentes. Un arco inexistente se representa con un elemento de capacidad cero.6.1): w2 – w1 – C21 = 2 – 0 – 7 = – 5 Arco (4.5.7. En forma especifica. el arco de capacidad infinita 1→2 se representa con un elemento en blanco en la celda O6.4 se tiene: 245 .3): w4 – w3 – C43 = –6 – (–3) – (–1) = –2 w1= 0 1 3 150(200) ) 00 2 0( 20 $2 (1 50 ) $5 5 (150) $7 -$1 w5= -1 [-350] 100(oo)* [150] w3 = -3 $3 20 0( 40 ) 00 (4 0) - $3 [400] 2 w2= 2 200(200) $8 $6 + 4 [-200] w4= -6 Figura 7.4 Solución del modelo de flujo capacitado a costo mínimo con hoja de calculo Excel Como en los casos de los modelos de ruta más corta y de flujo máximo.5): w1 – w5 – C15 = 0 – (–1) – 5 = – 4 Arco (2.64 muestra la aplicación al ejemplo 7.5): w4 – w5 – C45 = –6 – (–1) –6 = -11 Arco (4. el resto de la hoja de calculo (las secciones de cálculos intermedios y solución óptima) se crea en forma automática. Una vez que se crearon las matrices de costos unitarios y de capacidades. La hoja de cálculo esta diseñada para redes con 10 nodos como máximo. YA está definida la Celda Objetivo para cualquier red (con 10 nodos o menos).4. en el ejemplo 6. como sigue: Arco (1.63 Ahora se calculan zij – Cij para las variables no básicas. La figura 7. delineando las celdas necesarias para actualizar los parámetros de Solver para Cambiando las celdas y Restricciones. la hoja de cálculo Excel que se desarrollo para el modelo general de transporte (sección 6.3) se aplica con facilidad al modelo de flujo en red capacitada. N3 → N5 = 25 y N4 → N5 = 5. El costo total correspondiente es $490 246 . N1 → N4 = 35. N2 → N3 = 25. N2 → N5 = 30.Capítulo 7 Texto Guía – Sistemas de Ingeniería Cambiando la celdas: B20:B39 Sujetas a las siguientes restricciones: B20:B39< = C20:C39 (capacidad de arco) F19:F23= G19:G23 (Ecuaciones del flujo en nodo) La figura muestra la siguiente solución N1 → N2 = 5. N5 N1 .N1 N3 .N3 N4 .N2 N5 .N2 N1 .N5 N4 1 0 1 0 0 0 Matriz de costo unitario N5 N6 0 0 6 0 2 0 0 2 0 4 0 0 0 150 80 Cálculos intermedios: Nombre Flujo Capacidad 0 999999 20 999999 50 50 0 0 0 0 0 0 0 999999 0 0 80 999999 0 0 0 0 0 0 70 70 0 999999 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 0 0 0 0 0 999999 0 999999 0 999999 0 999999 0 999999 0 999999 N1 N2 N3 N4 N5 N6 N3 4 5 0 0 0 0 N1 N2 N3 N4 N5 N6 Nodo Flujo 1 2 3 4 5 6 70 80 50 -120 -80 0 Oferta 100 200 50 0 0 0 120 Demanda Desde 100 200 50 -150 -80 -120 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6 Costo unitario Hasta 2 3 4 5 6 1 3 4 5 6 1 2 4 5 6 1 2 3 5 6 1 2 3 4 6 1 2 3 4 5 3 4 1 0 0 0 5 0 6 0 0 0 1 2 0 0 0 0 0 2 0 0 0 0 4 0 0 0 0 0 matriz de capacidad (la celda en blanco = infinito) N1 N2 N3 N4 N5 N6 0 50 0 0 0 0 0 0 0 0 0 70 0 0 0 0 0 0 100 0 0 0 0 0 Figura 7.Texto Guía – Sistemas de Ingeniería Capítulo 7 General Capacitated Network Model with Solver Datos de entrada: Nº de nodos 6 <<máximo 10 N1 0 0 0 0 0 0 N2 3 0 0 0 0 0 Demanda 0 Solución óptima: 0 N1 N2 N3 N4 N5 N6 Costo Total = 680 Desde-Hasta N1 .N6 N3 .N5 N4 .10 con SOLVER 247 .N2 N4 .N2 N6 .N5 N2 .N5 N3 .N4 N6 .64 Solución del ejemplo de aplicación 7.N6 N5 .N3 N5 .N1 N5 .N2 N3 .N4 N2 .N3 N2 .N1 N2 .N4 N5 .N3 N1 .N4 N3 .N3 N6 .N6 N6 .N4 N1 .N6 N2 .N6 N4 .N1 N4 .N1 N6 . Texto Guía – Sistemas de Ingeniería Capítulo 7 7.7 Problemas propuestos 1. Considere la siguiente red dirigida. A C E B D F a) Encuentre una trayectoria dirigida del nodo A al nodo F y después identifique otras tres trayectorias no dirigidas del nodo A al nodo F. b) Encuentre tres ciclos dirigidos. Después identifique un ciclo no dirigido que incluya todos los nodos. c) Identifique un conjunto de arcos que formen un árbol de expansión mínima. 2. Utilice el algoritmo de Dijkstra para encontrar la ruta más corta a través de la red en donde los números representan las distancias reales entre los nodos correspondientes. A 4 7 D 1 5 (origen) 6 O B 6 T 1 4 2 8 E 5 (destino) 5 C 3. Utilice el algoritmo de Floyd para encontrar la ruta más corta a través de la red en donde los números representan las distancias reales entre los nodos correspondientes. 3 A 4 (origen) 5 6 O 3 2 C 5 6 G 2 2 4 B 4 D F 1 E 2 2 5 H 2 5 3 7 8 T (destino) 4 I 248 Texto Guía – Sistemas de Ingeniería Capítulo 7 4. Actualmente, todas las calles del barrio que aparece en la figura son de tierra. Se está desarrollando un proyecto de pavimentación para enviar a la Municipalidad. Se desea que al menos sea posible trasladarse entre los seis puntos más importantes del sector por calles pavimentadas. ¿Cuáles calles recomendaría usted pavimentar de modo de minimizar el costo del proyecto? 40 2 20 50 40 1 3 10 4 30 5 30 40 30 20 6 40 5. Suponga que las distancias entre cuatro ciudades vecinas son las que se presentan en el esquema. 2 A B 6 3 5 7 C D 6 Suponga que hay interés de pavimentar y conectar estas ciudades a un costo mínimo. Indique cuáles serían las rutas a pavimentar desde un punto de vista gubernamental o del estado y desde un punto de vista de los usuarios. 6. Debido a la construcción de un nuevo sistema de vías subterráneas en una ciudad, se han planeado dos redes de rutas alternas para el desvío del tránsito. Los diferentes límites de velocidad y las vías de tránsito producen diversas capacidades de flujo en los distintos arcos de las redes propuestas. ¿Cuál de las dos redes es la más adecuada? Fundamente su respuesta. Alternativa Nº1. (Inicio desvío) 5 1 6 5 0 2 2 0 3 2 3 3 7 3 0 0 5 8 1 1 0 6 7 0 0 7 0 (Fin desvío) 0 0 4 5 249 Texto Guía – Sistemas de Ingeniería Capítulo 7 Alternativa Nº2. (Inicio desvío) 6 0 2 2 0 4 1 6 0 4 6 0 3 0 3 4 01 0 5 2 0 6 0 (Fin desvío) 7. La empresa SEMAPA, cuenta con una red de cañerías muy heterogéneas en cuanto a años de servicio, y quiere llevar agua de la Planta potabilizadora en A hasta el barrio G, abasteciendo en el camino todos los demás barrios (B, C, D, E, F). Pretende que el caudal medido en decenas de litros por segundo sea máximo, pero debido a la edad avanzada de algunos tramos debió confeccionar un croquis de la ciudad en el cual consta el flujo máximo que soporta cada tramo. 0 B 2 2 7 0 6 A 0 4 C 3 0 0 5 2 0 0 0 0 D E 8 0 0 0 2 F G 5 5 Se pide: a) Asumiendo que la oferta esta solamente limitada por la capacidad actual de la Red de Distribución, identifique el flujo máximo a asignar en total y en cada tramo, usando el algoritmo de flujo máximo, de modo tal que la solución sea óptima. b) Verifique el resultado obtenido por medio del teorema de FLUJO MÁXIMO — Cortadura mínima. 7.8 Bibliografía  MODELOS LINEALES DE OPTIMIZACIÓN – Rafael Terrazas Pastor [Segunda Edición]  INVESTIGACIÓN DE OPERACIONES – Hamdy A. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz, Herbert; Wrigth, Gordon P.  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S. Hillier, Gerald J. Lieberman. [Sexta Edición] 7.9 Enlaces  http://home.ubalt.edu/ntsbarsh/opre640S/SpanishIN.htm#rmaxflpr 250 Capítulo 8 Texto Guía – Sistemas de Ingeniería CAPÍTULO 8 PROGRAMACIÓN DE ACTIVIDADES Y CONTROL DE PROYECTOS CPM Y PERT 8.1 Introducción a las redes de actividades Los proyectos en gran escala por una sola vez han existido desde tiempos antiguos; este hecho lo atestigua la construcción de las pirámides de Egipto y los acueductos de Roma. Pero sólo desde hace poco se han analizado por parte de los investigadores operacionales los problemas gerenciales asociados con dichos proyectos. El problema de la administración de proyectos surgió con el proyecto de armamentos del Polaris, empezando 1958. Con tantas componentes y sub-componentes juntos producidos por diversos fabricantes, se necesitaba una nueva herramienta para programar y controlar el proyecto. El PERT (evaluación de programa y técnica de revisión) fue desarrollado por científicos de la oficina Naval de Proyectos Especiales. Booz, Allen y Hamilton y la División de Sistemas de Armamentos de la Corporación Lockheed Aircraft. La técnica demostró tanta utilidad que ha ganado amplia aceptación tanto en el gobierno como en el sector privado. Casi al mismo tiempo, la Compañía DuPont, junto con la División UNIVAC de la Remington Rand, desarrolló el método de la ruta crítica (CPM) para controlar el mantenimiento de proyectos de plantas químicas de DuPont. El CPM es idéntico al PERT en concepto y metodología. La diferencia principal entre ellos es simplemente el método por medio del cual se realizan estimados de tiempo para las actividades del proyecto. Con CPM, los tiempos de las actividades son determinísticos. Con PERT, los tiempos de las actividades son probabilísticos o estocásticos. El PERT/CPM fue diseñado para proporcionar diversos elementos útiles de información para los administradores del proyecto. Primero, el PERT/CPM expone la "ruta crítica" de un proyecto. Estas son las actividades que limitan la duración del proyecto. En otras palabras, para lograr que el proyecto se realice pronto, las actividades de la ruta crítica deben realizarse pronto. Por otra parte, si una actividad de la ruta crítica se retarda, el proyecto como un todo se retarda en la misma cantidad. Las actividades que no están en la ruta crítica tienen una cierta cantidad de holgura; esto es, pueden empezarse más tarde, y permitir que el proyecto como un todo se mantenga en programa. El PERT/CPM identifica estas actividades y la cantidad de tiempo disponible para retardos. El PERT/CPM también considera los recursos necesarios para completar las actividades. En muchos proyectos, las limitaciones en mano de obra y equipos hacen que la programación sea difícil. El PERT/CPM identifica los instantes del proyecto en que estas restricciones causarán problemas y de acuerdo a la flexibilidad permitida por los tiempos de holgura de las actividades no críticas, permite que el gerente manipule ciertas actividades para aliviar estos problemas. 251 Capítulo 8 Texto Guía – Sistemas de Ingeniería Finalmente, el PERT/CPM proporciona una herramienta para controlar y monitorear el progreso del proyecto. Cada actividad tiene su propio papel en éste y su importancia en la terminación del proyecto se manifiesta inmediatamente para el director del mismo. Las actividades de la ruta crítica, permiten por consiguiente, recibir la mayor parte de la atención, debido a que la terminación del proyecto, depende fuertemente de ellas. Las actividades no críticas se manipularan y remplazaran en respuesta a la disponibilidad de recursos. 8.2 Antecedentes Dos son los orígenes del método del camino crítico: el método PERT (Program Evaluation and Review Technique) desarrollo por la Armada de los Estados Unidos de América, en 1957, para controlar los tiempos de ejecución de las diversas actividades integrantes de los proyectos espaciales, por la necesidad de terminar cada una de ellas dentro de los intervalos de tiempo disponibles. Fue utilizado originalmente por el control de tiempos del proyecto Polaris y actualmente se utiliza en todo el programa espacial. El método CPM (Crítical Path Method), el segundo origen del método actual, fue desarrollado también en 1957 en los Estados Unidos de América, por un centro de investigación de operaciones para la firma Dupont y Remington Rand, buscando el control y la optimización de los costos de operación mediante la planeación adecuada de las actividades componentes del proyecto. Ambos métodos aportaron los elementos administrativos necesarios para formar el método del camino crítico actual, utilizando el control de los tiempos de ejecución y los costos de operación, para buscar que el proyecto total sea ejecutado en el menor tiempo y al menor costo posible. Definición: El método del camino crítico es un proceso administrativo de planeación, programación, ejecución y control de todas y cada una de las actividades componentes de un proyecto que debe desarrollarse dentro de un tiempo crítico y al costo óptimo. Usos: El campo de acción de este método es muy amplio, dada su gran flexibilidad y adaptabilidad a cualquier proyecto grande o pequeño. Para obtener los mejores resultados debe aplicarse a los proyectos que posean las siguientes características: a. Que el proyecto sea único, no repetitivo, en algunas partes o en su totalidad. b. Que se deba ejecutar todo el proyecto o parte de el, en un tiempo mínimo, sin variaciones, es decir, en tiempo crítico. c. Que se desee el costo de operación más bajo posible dentro de un tiempo disponible. Dentro del ámbito aplicación, el método se ha estado usando para la planeación y control de diversas actividades, tales como construcción de presas, apertura de caminos, pavimentación, construcción de casas y edificios, reparación de barcos, investigación de mercados, movimientos de colonización, estudios económicos regionales, auditorias, planeación de carreras universitarias, distribución de tiempos de salas de operaciones, ampliaciones de fábrica, planeación de itinerarios para cobranzas, planes de venta, censos de población, etc. 252 Texto Guía – Sistemas de Ingeniería Capítulo 8 8.3 Diferencias entre PERT y CPM Como se indicó antes, la principal diferencia entre PERT y CPM es la manera en que se realizan los estimados de tiempo. El PERT supone que el tiempo para realizar cada una de las actividades es una variable aleatoria descrita por una distribución de probabilidad. El CPM por otra parte, infiere que los tiempos de las actividades se conocen en forma determinísticas y se pueden variar cambiando el nivel de recursos utilizados. La distribución de tiempo que supone el PERT para una actividad es una distribución beta. La distribución para cualquier actividad se define por tres estimados: 1. El estimado de tiempo más probable, m; 2. El estimado de tiempo más optimista, a; 3. El estimado de tiempo más pesimista, b. La forma de la distribución se muestra en la siguiente Figura. E1 tiempo más probable es el tiempo requerido para completar la actividad bajo condiciones normales. Los tiempos optimistas y pesimistas proporcionan una medida de la incertidumbre inherente en la actividad, incluyendo desperfectos en el equipo, disponibilidad de mano de obra, retardo en los materiales y otros factores. Con la distribución definida, la media (esperada) y la desviación estándar, respectivamente, del tiempo de la actividad para la actividad z puede calcularse por medio de las fórmulas de aproximación. a  4m  b 6 ba  (Z )  6 Te ( Z )  253 Texto Guía – Sistemas de Ingeniería Capítulo 8 El tiempo esperado de finalización de un proyecto es la suma de todos los tiempos esperados de las actividades sobre la ruta crítica. De modo similar, suponiendo que las distribuciones de los tiempos de las actividades son independientes (realísticamente, una suposición fuertemente cuestionable), la varianza del proyecto es la suma de las varianzas de las actividades en la ruta crítica. Estas propiedades se demostrarán posteriormente. En CPM solamente se requiere un estimado de tiempo. Todos los cálculos se hacen con la suposición de que los tiempos de actividad se conocen. A medida que el proyecto avanza, estos estimados se utilizan para controlar y monitorear el progreso. Si ocurre algún retardo en el proyecto, se hacen esfuerzos por lograr que el proyecto quede de nuevo en programa cambiando la asignación de recursos 8.4 Métodos CPM y PERT Los métodos CPM (método de la ruta crítica o del camino crítico, critical path method) y PERT (técnica de evaluación y revisión de programa, program evaluation and review technique) se basan en diagramas, y tienen por objeto auxiliar en la planeación, programación y control de proyectos. Se define un proyecto como conjunto de actividades interrelacionadas, en la que cada actividad consume tiempo y recursos. El objetivo del CPM y del PERT es contar con un método analítico para programar las actividades. En la figura 8.1 se resumen los pasos de estas técnicas. Primero se definen las actividades del proyecto, sus relaciones de precedencia y sus necesidades de tiempo. Figura 8.1 Fases de aplicación de un proyecto con CPM o PERT A continuación, el proyecto se traduce en un diagrama que muestre las relaciones de precedencia entre las actividades. El tercer paso implica cálculos específicos de diagramas, que forman la base del desarrollo del programa del proyecto en función del tiempo. Durante la ejecución del proyecto, podría no cumplirse el programa que estaba planeado, causando que algunas de las actividades se adelanten o se atrasen. En este caso será necesario actualizar el programa para que refleje la realidad. Esta es la razón de incluir un bucle, lazo o ciclo de retroalimentación entre la fase de programa y la fase de diagrama, como se ve en la figura 8.1. Las dos técnicas CPM y PERT, que se desarrollan en forma independiente, difieren en que el CPM se supone duraciones determinísticas de actividad, mientras que el PERT se suponen duraciones probabilísticas. Esta presentación comenzara con el CPM y después se presentaran los detalles del PERT. 254 no consume tiempo o recursos. mantiene la concurrencia de A y B. La inserción de una actividad ficticia en una de las cuatro formas que se ven en la figura 8. ¿Cuáles son las actividades que el proyecto requiere? 2. La figura 8.6 Diagrama de actividades tipo red Cada actividad del proyecto se representa con un arco que apunta en la dirección de avance del proyecto. El esfuerzo que se gaste para identificar la estructura del proyecto es de gran valor para la compresión de este. Regla 2. la actividad ficticia. Por definición. Cada actividad se debe identificar con dos nodos diferentes.) de cada actividad se establece de acuerdo al rendimiento de la mano de obra y del número de obreros asignados a cada actividad. 8. Los nodos del diagrama establecen las relaciones de precedencia entre las diferentes actividades del proyecto. horas. A y B. se requiere comprender completamente la estructura y requisitos del mismo. la duración de los tiempos estimados (días. En particular.2 muestra como se puede usar una actividad ficticia para representar dos actividades concurrentes.2 Uso de una actividad ficticia para tener representación única de las actividades concurrentes A y B 255 . y uno sólo. semanas. etc. se deben contestar cuatro preguntas para empezar el procedimiento de modelaje: 1.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. ¿Qué actividades pueden realizarse simultáneamente? 4. Cada actividad se representa con un arco. ¿Cuáles son los tiempos estimados para cada actividad? El primer paso para construir la diagrama CPM/PERT consiste en hacer una lista de cada una de las actividades y de las actividades que inmediatamente las debe preceder. Regla 1. y también proporciona nodos finales únicos para las dos actividades (para satisfacer la regla 2) Red A A B 1 1 2 2 B A 2 B 3 1 3 1 B A A 3 3 B 2 Figura 8.2. que normalmente se representa con un arco de línea interrumpida.5 Modelaje de sistemas CPM/PERT Para aplicar el CPM/PERT a un proyecto. ¿Cuáles son los requisitos de secuenciación o restricciones de estas actividades? 3. Para la pregunta 4. Figura 8. sino hasta haber terminado la de la sección anterior.1 256 . Las actividades de cada sección comprenden: 1º Excavación 2º Colocación de acero 3º Colocado del Hormigón No puede comenzar la excavación de una sección. se deben contestar las siguientes preguntas cuando se agrega a la diagrama cada actividad. Por ejemplo. Esta misma restricción se aplica a la colocación del hormigón. considere al siguiente segmento de un proyecto. 2. Formule el diagrama del proyecto. La actividad C comienza de inmediato después de haber terminado A y B.3 Uso de una actividad ficticia para asegurar una relación de precedencia correcta. Figura 8.4 Diagrama del proyecto para el ejemplo de aplicación 8.3 muestra la representación incorrecta de esta relación de precedencia. a) ¿Qué actividades deben anteceder inmediatamente a la actividad actual? b) ¿Qué actividades deben seguir inmediatamente a la actividad actual? c) ¿Qué actividades deben efectuarse en forma concurrente o simultanea con la actividad actual? Para contestar estas preguntas se podrá necesitar el uso de actividades ficticias.1 Las zapatas de cimentación de un edificio se pueden terminar en cuatro secciones conectadas. Para mantener las relaciones de precedencia correctas. para asegurar las precedencias correctas entre las actividades. Ejemplo de aplicación 8. 1. porque pide que A y B terminen antes de poder iniciar E. La actividad E se inicia después de que solo termino la actividad B La 1ª parte de la figura 8. En la 2ª parte se corrige la situación con el uso de la actividad ficticia.Texto Guía – Sistemas de Ingeniería Capítulo 8 Regla 3. La numeración de los nodos se hace en forma que indique el avance en el proyecto. Con las actividades ficticias (líneas segmentada). N S Duración (Días) 1 2 1 2 6 10 3 1 1 5 2 1 2 4 2 2 1 7 7 3 Tabla 8. Para este ejemplo se tomaron valores alcanzados de la experiencia de la construcción de una casa pequeña Actividad A B C D E F G H I J K L M N O P Q R S T Predecesor (es) Instalación de faenas Llevar servicios al sitio Excavar Vaciar cimientos Plomería exterior Muro de mampostería Instalación eléctrica Contrapiso Armar el techo Plomería interior Cubierta Recubrimiento aislante exterior Instalar ventanas y puertas exteriores Poner ladrillo Aislar paredes y techos Revoque interior Cielo raso Acabados interiores Acabados exteriores Limpieza y retiro de escombro — — A C B. J O I.Texto Guía – Sistemas de Ingeniería Capítulo 8 Ejemplo de aplicación 8.2 Las actividades de la tabla siguiente describen la construcción de una casa nueva.5 muestra el diagrama que describe las relaciones de precedencia entre las diferentes actividades.1 La figura 8. M G. H I F. C D F G F E. Formule la diagrama asociada al proyecto. J F L. 257 . P P I. se obtienen nodos finales únicos para las actividades de concurrentes. 2.5 Diagrama del proyecto para el ejemplo de aplicación 8.7 18 5 11 12 3 19 14 Q-1 -2 E-6 17 T- O-2 B 10 4 N-4 L-1 9 H-1 5 J- F .Texto Guía – Sistemas de Ingeniería Capítulo 8 K-2 7 I- S.10 -1 A C-1 D-2 -3 3 16 G 1 1 M-2 6 2 8 P-2 13 R-7 15 Figura 8. 258 . Tiempo total necesario para terminar el proyecto. Paso general j. ). de ocurrencia. (q. 259 . v + Dvj} El paso hacia delante se termina cuando se calcula n(final) en el nodo n. j representa la ruta (duración) más larga al nodo j. entonces se calcula el tiempo más temprano de ocurrencia del evento j como sigue: j = máx {p + Dpj. Dij =Duración de la actividad (i. y v ya se han calculado. Se dice que una actividad es crítica si no hay margen en la determinación de sus tiempos de inicio y de término. y el Paso hacia atrás..8 Calculo para la ruta crítica (CPM) Para efectuar los cálculos necesarios. q + Dqj. (v. los cálculos del paso hacia atrás comienzan en el nodo n y terminan en el nodo 1. para indicar que el proyecto se inicia cuando el tiempo es 0. Paso inicial. Paso hacia atrás (tiempos más tardíos de ocurrencia o tiempos más lejanos. determina los tiempos más tempranos o de ocurrencia de los eventos. 1. …. j). 2. …. Δ).7 Ruta crítica (CPM) El resultado final del CPM es la formulación o construcción del programa del proyecto (véase la figura 8. 8..……. Δj = Tiempo más tardío de ocurrencia del evento j. Los cálculos de la ruta crítica implican dos pasos: Paso hacia delante. Por definición. Las definiciones de los tiempos más temprano y más tardío del evento j se especifican en relación con las fechas de inicio y terminación de todo el proyecto. de ocurrencia. Para lograr este objetivo en una forma adecuada. calcula sus tiempos más tardíos de ocurrencia.1). q. Después de terminar el paso hacia delante. j) y que los tiempos más tempranos de ocurrencia de los eventos (nodos) p. se hacen cálculos especiales con los que se obtiene la siguiente información. sin afectar la fecha de terminación de todo el proyecto. se define lo siguiente: j = Tiempo más temprano de ocurrencia del vento j. Clasificación de las actividades del proyecto en críticas y no críticas. Los cálculos se inician en el nodo 1 (inicio) y avanzan en forma intuitiva hasta el nodo final n. Una actividad no crítica permite alguna holgura en su programación. Dado que los nodos p. j).…. Poner 1(inicio) = 0. y v están enlazados directamente con el nodo j por las actividades de entrada (p. de modo que el tiempo de inicio de la actividad se puede adelantar o retrasar dentro de ciertos límites. j). Paso hacia delante (tiempos más tempranos de ocurrencia o tiempos más próximos. q.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. Con base en los cálculos anteriores. y v.3 Determinar la ruta crítica para el diagrama del proyecto de la figura 8. Nodo 1. 9 + D9-11. Δj = j 3. 17 + 0. y v están enlazados en forma directa con el nodo j por actividades de salida (j. Δj – Δi = j – i = Dij Las tres condiciones indican que los tiempos más tempranos y más tardíos de ocurrencia de los nodos i y j son iguales. 18} = 18 Nodo 11. y que la duración Dij se ajusta exactamente al intervalo especificado de tiempo.……. 3 = 2 + D23 = 1 + 1 = 2 Nodo 4. desde el inicio hasta el final. Poner Δn(final) = n(final). v) y que ya se calcularon los tiempos más tardíos de los nodos p. Δi = i 2. 4 = máx. {2.. para indicar que las ocurrencias más temprano y más tardío del ultimo nodo en el proyecto son iguales. q. Ejemplo de aplicación 8. {2 + 6. {14. una actividad (i. Δv – Djv} El paso hacia atrás se termina cuando se calcula Δ1. 17. 2 + 0}= máx. Hacer o definir 1 = 0 Nodo 2. 7 = 6 + D67 = 14 + 1 = 15 Nodo 8. Dado que los nodos p.…. 9 = 6 + D69 = 14 + 3 = 17 Nodo 10. Paso hacia delante. {1 + D14.5. Paso general j.Texto Guía – Sistemas de Ingeniería Capítulo 8 Paso inicial. {6 + D6-11. 17 + 1} = máx. j) será crítica si satisface tres condiciones: 1. 6 = 5 + D56 = 4 + 10 = 14 Nodo 7. 3 + D34}= máx. …. 9 + D9-10}= máx. 2} = 2 Nodo 5. 18 + 5}= máx. Todas las duraciones están en días. {0 + 2. {4 + D4-10. Δq – Djq. 8 = 7 + D78 = 15 + 2 = 17 Nodo 9. …. 2 = 1 + D12 = 0 + 1 = 1 Nodo 3. (j. 11 = máx. Las actividades críticas de un diagrama deben formar una trayectoria no interrumpida que abarque toda la diagrama. el tiempo tardío del nodo j se calcula como sigue: Δj = mín {Δp – Djp. q). p). Una actividad que no satisface las tres condiciones es no crítica.. {8. 10 + D10-11} = máx. q. 23} = 23 260 . 10 = máx. 5 = 3 + D35 = 2 + 2 = 4 Nodo 6. (j. {14 + 0. 12 = 11 + D11-12 = 23 + 2 = 25 Nodo 13. {7 + D7-17. 24 – 1}= mín {27. Δ14 = Δ19 – D14-19 = 38 – 0 = 38 Nodo 13. Paso hacia atrás. 16 + D16-17}= máx. 12 + D12-13}= máx. 28. 23}= 23 Nodo 10. Δ10 = Δ11 – D10-11 = 23 – 5 = 18 Nodo 9. 31 – 0. Δ9 = mín {Δ10 – D9-10. 27} = 27 Nodo 14. 17 – 3. 14 + D14-19. Δ15 – D13-15} = mín {38 – 1. 31}= 31 Nodo 12. Δ13 = mín {Δ14 – D13-14. 24 – 2}= mín {27. 38 – 7}= mín {37. 23 – 0. 24} = 24 Nodo 17. Δ13 – D7-13. 15 = 13 + D13-15 = 27 + 7 = 34 Nodo 16. Δ15 = Δ19 – D15-19 = 38 – 0 = 38 Nodo 14. 22}= 14 261 . Δ8 = Δ19 – D8-19 = 38 – 0 = 38 Nodo 7. {16. Δ16 = Δ17 – D16-17 = 28 – 4 = 24 Nodo 15. Δ11 – D9-11} = mín {18 – 1. 24 + 4} = máx. {17. {15. 17 = máx. 19 = máx. 23. Δ17 = Δ18 – D17-18 = 35 – 7 = 28 Nodo 16. 31. {15 + 0. 34. 18 + D18-19} = máx. 38} = 38 Los cálculos indican que se puede acabar en 38 días. Nodo 19. 23 – 0}= mín {17. {15. Hacer o definir Δ19= 19 = 38 Nodo 18. 23}= 17 Nodo 8. 35 + 3} = máx. 28 + 0. {8 + D8-19. Δ7 = mín {Δ8 – D7-8. Δ16 – D11-16} = mín {29 – 2. Δ11 – D6-11. 23 + 1} = máx. 18 = 17 + D17-18 = 28 + 7 = 35 Nodo 19. 13 = {7 + D7-13. Δ18 = Δ19 – D18-19 = 38 – 3 = 35 Nodo 17. 14. Δ17 – D7-17} = mín {38 – 2. 28 – 0}= mín {36.Texto Guía – Sistemas de Ingeniería Capítulo 8 Nodo 12. Δ11 = mín {Δ12 – D11-12. 28} = 28 Nodo 18. 34 + 0. 16 = máx. Δ16 – D6-16} = mín {28 – 1. 28}= 28 Nodo 6. 14 = 13 + D13-14 = 27 + 1 = 28 Nodo 15. Δ6 = mín {Δ7 – D6-7. 25 + 2} = máx. 11 + D11-16}= máx. Δ12 = Δ13 – D12-13 = 31 – 2 = 29 Nodo 11. {17 + 0. {14 + 2. {15 + 0. {6 + D6-16. Δ9 – D6-9. 15 + D15-19. pero Δj – Δi = j – i = Dij 24 – 14 = 24 – 14 = 2 Δ9 = 9 = 17. esas actividades no son críticas. Δ11 = 11 = 23. (2. Δ3 = mín {Δ4 – D3-4.18). 2}= 2 Nodo 2. Δ4 = Δ10 – D4-10 = 18 – 6= 12 Nodo 3.6.11). Por consiguiente. (18. 262 .9). Δ11 = 11 = 23. Las reglas para determinar las actividades críticas indican que la ruta crítica es 1→2→3→5→6→9→10→11→16→17→18→19.3). (9.2). (16. 10}= 0 Si los cálculos fueron correctos. pero Δj – Δi = j – i = Dij 23 – 14 = 23 – 14 = 0 Δ6 = 6 = 14. (5. Δ2 = Δ3 – D2-3 = 2 – 1= 1 Nodo 1.16). siempre terminaran con Δ1 = 0.5). (11. pero Δj – Δi = j – i = Dij 23 – 17 = 23 – 17 = 0. que abarca la diagrama desde el inicio (nodo 1) hasta el fin (nodo 19). 12 – 2}= mín {0. 4 – 2}= mín {12. La suma de las duraciones de las actividades críticas [(1. Δ1 = mín {Δ2 – D1-2.11). Δ5 = Δ6 – D5-6 = 14 – 10= 4 Nodo 4. (6. Δ4 – D1-4} = mín {1 – 1. (3.19)] es igual a la duración del proyecto (= 38 días).Texto Guía – Sistemas de Ingeniería Capítulo 8 Nodo 5. (17.11) satisfacen las dos primeras condiciones para que la actividad sea crítica Δ6 = 6 = 14. Δ16 = 16 = 24.6).16) y (9. (6. Δ5 – D3-5} = mín {12 – 0. Los cálculos en los pasos hacia delante y hacia atrás se resumen en la figura 8. Observe que la actividad (6. (10.10).17). 6 Cálculos de los pasos hacia delante y hacia atrás para el proyecto del ejemplo de aplicación 8.2.10 D-2 M-2 5 28 28 24 24 5 3 1 J- 6 I- H-1 22 C-1 14 14 B Inicio del paso hacia adelante 1 1 -3 2 2 1 K-2 7 G Fin del paso hacia atrás 0 0 j i Ruta critica 38 17 R-7 15 38 34 Figura 8.7 18 T- 23 23 3 P-2 Inicio del paso hacia atrás 38 28 19 14 13 31 27 38 38 Fin del paso hacia adelante Q-1 4 4 N-4 L-1 16 O-2 -1 A F .Texto Guía – Sistemas de Ingeniería Capítulo 8 Leyenda Paso hacia adelante 28 15 Paso hacia atrás: 9 -2 4 17 17 11 10 12 18 18 29 25 E-6 12 2 17 8 35 35 S. 263 . 2. Ejemplo de aplicación 8.6) Se puede tener un cronograma preliminar para las distintas actividades del proyecto poniendo sus intervalos de tiempo respectivos como se ve en la figura 8. para asegurar que el proyecto se termine en la duración especificada de 38 días. Se reconoce que i representa el tiempo más temprano de iniciación de una actividad (i. Se ilustrara con un ejemplo el método para construir un cronograma preliminar. j).2 264 .7 para desarrollar el programa de tiempo.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. o cronograma. Es necesario hacer dos observaciones.7 Cronograma preliminar para el proyecto del ejemplo de aplicación 8. Δj) limita el intervalo máximo de tiempo durante el cual se puede programar la actividad (i.9 Construcción del cronograma preliminar Se indica como se puede usar la información obtenida con los cálculos de la sección 8. Figura 8.7. Las actividades no críticas (representadas por líneas segmentadas) abarcan intervalos que tienen duraciones mayores y que por tanto permiten holguras en su programación dentro de sus intervalos asignados. Construcción de un cronograma preliminar.4 Determinar el cronograma para el proyecto del ejemplo de aplicación 8. Esto quiere decir que (i. j). 1.3 (figura 8. Las actividades críticas (representadas por las líneas llenas) se deben programar una inmediatamente después de la otra. y que Δj representa el tiempo más tardío de terminación. j) no crítica: a. esto es: FFij  j  i  Dij Por definición. la holgura total es el exceso del intervalo de tiempo definido por el tiempo más temprano de ocurrencia del evento i hasta el tiempo más tardío de ocurrencia del evento j en la duración de (i. Si FFij  TFij .8 Calculo de las holguras totales y libres La holgura libre es el exceso del intervalo de tiempo definido desde el tiempo más temprano de ocurrencia del evento i hasta el tiempo más temprano de ocurrencia del elemento j durante la duración de (i. 2) Holgura libre: Representa el número de unidades de tiempo de que disponemos para retrasar el comienzo de la actividad o aumentar la duración de la actividad sin alterar el comienzo de las siguientes. para una actividad (i. entonces se puede programar la actividad en cualquier lugar dentro de su intervalo (i. Las dos más comunes son la holgura total y la holgura libre.8 se ve un resumen adecuado para calcular la holgura total (TFij) y la holgura libre (FFij) de la actividad (i.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. 3) Holgura independiente: Refleja las unidades disponibles para que habiéndose alcanzado un suceso en el tiempo límite pasemos al tiempo lo más pronto posible del suceso siguiente. esto es: TFij   j  i  Dij Figura 8. En la siguiente figura 8.  j ) sin causar conflicto con el programa. 265 . j).10 Determinación de las holguras Son las holguras de tiempo disponibles dentro del intervalo asignado para la actividad no crítica. j). FFij  TFij Regla de la bandera roja. Interpretación Práctica: 1) Holgura total: Representa el número de unidades de tiempo de que disponemos para retrasar el comienzo de la actividad o aumentar la duración de la actividad sin alterar los tiempos límite u en principio la programación. j). 7). En cuanto a la actividad I con bandera roja.2 Los cálculos ponen bandera roja en las actividades B (1.13). Eso quiere decir que cualquier demora en el inicio de I después de su tiempo más temprano de inicio (= 14) se debe acoplar con una demora al menos igual en el inicio de sus actividades posteriores E y F. La implicación de la regla es que una actividad (i. usando el procedimiento de la figura 8.19) y FIC (15.17). FIC (7. FIC (14. Ejemplo de aplicación 8. Las actividades restantes FIC (6.19). FIC (3. M (6. se ve que FF = 0. en cuyo caso se debe poner atención a los tiempos de inicio de las actividades que salen del nodo j. Si FFij  TFij .15). j) se puede demorar cuando mucho hasta FFij a partir de su tiempo más temprano de inicio (i) sin causar conflicto con el programa. P (12.5. entonces el inicio de la actividad (i. tienen FF = TF.12).13).14) y R (13. O (11. Conviene más hacer los cálculos en forma directa sobre la diagrama.Texto Guía – Sistemas de Ingeniería Capítulo 8 b.16). para evitar conflictos en el programa. FIC (9. 266 .4).8).6 Actividad Holgura total Holgura libre Duración no crítica (TF) (FF) B 1→4 2 12 – 0 – 2 = 10 2–0–2=0 FIC 3→4 0 12 – 2 – 0 = 10 2–2–0=0 I 6→7 1 28 – 14 – 1 = 13 15 – 14 – 1 = 0 FIC 6 → 11 0 23 – 14 – 0 = 9 23 – 14 – 0 = 9 M 6 → 16 2 24 – 14 – 2 = 8 24 – 14 – 2 =8 K 7→8 2 38 – 15 – 2 = 11 17 – 15 – 2 = 0 FIC 7 → 13 0 31 – 15 – 0 = 16 27 – 15 – 0 = 12 FIC 7 → 17 0 28 – 15 – 0 = 13 28 – 15 – 0 = 13 FIC 8 → 19 0 38 – 17 – 0 = 21 38 – 17 – 0 = 21 FIC 9 → 11 0 23 – 17 – 0 = 6 23 – 17 – 0 = 6 O 11 → 12 2 29 – 23 – 2 = 4 25 – 23 – 2 = 0 P 12 → 13 2 31 – 25 – 2 = 4 27 – 25 – 2 = 0 Q 13 → 14 1 38 – 27 – 1 = 10 28 – 27 – 1 = 0 R 13 → 15 7 38 – 27 – 7 = 4 34 – 27 – 7 = 0 FIC 14 → 19 0 38 – 28 – 0 = 10 38 – 28 – 0 = 10 FIC 15 → 19 0 38 – 34 – 0 = 4 38 – 34 – 0 = 4 Tabla 8. porque sus FF < TF. Esta bandera roja solo importa si se decide demorar el inicio de la actividad respecto a su tiempo temprano de inicio i. Q (13. K (7. Toda demora mayor que FFij (pero no mayor que TFij) se debe acompañar por una demora igual a partir de j en el tiempo de iniciación de todas las actividades que salen del nodo j. por lo que se pueden programar en cualquier momento entre su inicio más temprano y su terminación más tardía.5 Calcular las holguras de las actividades no críticas del diagrama en el ejemplo 8.11). I (6. FIC (8. La tabla siguiente resume los cálculos de las holguras totales y libres.4).19). y describir su uso en la finalización de un cronograma para el proyecto. FIC (7. j) no crítica tendrá bandera roja si su FFij  TFij .11). Se definen.3. donde se minimiza la función objetivo). como en el problema de ruta más corta. todas las variables xij son no negativas. j) para toda i y j definida. j) para toda i y j definida.2. en la sección 7. En consecuencia se puede aplicar la formulación como programa lineal de ruta más corta.11 Formulación del método de la ruta crítica con programación lineal Se puede concebir un problema de ruta más crítica como lo contrario del problema de ruta más corta sección 7. Supondremos que un flujo unitario entra a la diagrama en el nodo inicio y sale en el nodo final. como sigue.3. a la ruta crítica. para todo nodo j. xij = cantidad de flujo en la actividad (i. la función objetivo del programa lineal se transforma en Maximizar z  D x ij ij todaslas actividade s definidasi .Texto Guía – Sistemas de Ingeniería Capítulo 8 8. El ejemplo que sigue aplica las dos formulaciones al proyecto del ejemplo 267 . j  (Compárese con la formulación del programa lineal de ruta más corta en la sección 7.3 en el sentido de que interesa determinar la ruta más larga desde el inicio hasta el fin. esto es. se puede usar el dual del programa lineal para resolver el problema CPM (de ruta crítica). Así. Hay una restricción que representa la conservación del flujo en cada nodo. Observe que una de las restricciones es redundante. Flujo total que entra = Flujo total que sale Naturalmente. Dij = duración de la actividad (i. De nuevo.2. Max z= Nodo 1 Nodo 2 Nodo 3 Nodo 4 Nodo 5 Nodo 6 Nodo 7 Nodo 8 Nodo 9 Nodo 10 Nodo 11 Nodo 12 Nodo 13 Nodo 14 Nodo 15 Nodo 16 Nodo 17 Nodo 18 Nodo 19 A X12 1 -1 1 B X14 2 -1 C X23 1 -1 1 1 Fict. 268 .6) se ve abajo. todas las demás = 0. Nótese que los nodos 1 y 20 son los de inicio y de termino. X911 0 I X67 1 J X1011 5 K X78 2 Fict. X713 0 L X1116 1 M X616 2 N X1617 4 O X1112 2 P X1213 2 Q X1314 1 R X1315 7 S X1718 7 T X1819 3 Fict. X34 0 -1 1 D X35 2 E X410 6 F X56 10 G X69 3 Fict. X717 0 Fict. x1116(L). X1519 0 -1 -1 1 -1 1 -1 -1 1 -1 1 -1 1 1 1 -1 -1 1 -1 -1 -1 -1 1 -1 1 -1 -1 1 1 -1 1 -1 1 -1 -1 1 1 1 1 -1 1 -1 -1 1 -1 1 1 1 1 = -1 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =0 =1 Tabla 8. x1011(J). X1419 0 Fict. x1617(N).6 La formulación en programación lineal del ejemplo 8. X611 0 H X910 1 Fict. x910(H). y la duración del proyecto es 38 días. La solución define la ruta crítica la ruta crítica como A → C → D → F → G → H → J → L → N → S → T.3 (figura 8. x35(D). x69(G). x12(A). X819 0 Fict. x56(F). x23(C). x1718(S). respectivamente.3 TORA obtiene la siguiente solución óptima de la programación lineal propuesta para la ruta crítica CPM en la tabla siguiente: Z = 38.Texto Guía – Sistemas de Ingeniería Capítulo 8 Ejemplo de aplicación 8. x1819(T) = 1. el valor esperado del tiempo de una actividad es aproximadamente 269 . se consideran tres clases de tiempos estimados: 1. 2. falta de suministros.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. Para obtener la estimación del valor esperado Te. se ajusta bien a las definiciones de los tres tiempos estimados. en muchas ocasiones este supuesto no es valido. con una sola moda (m) y dos puntos terminales (a y b). En consecuencia. es decir. en donde se supone que 0 ≤ a ≤ b. considerando algunos retrasos debidos a imprevistos.12 Redes PERT En CPM se asume que la duración de cada actividad es conocida con certeza. es un tiempo excepcionalmente grande que pudiera presentarse ocasionalmente como consecuencia de accidentes. PERT intenta corregir este error suponiendo que la duración de cada actividad es una variable aleatoria de la que conocemos su ley de distribución (Distribución ). Tiempo Optimista “a”. Suposición 2: la distribución de probabilidad de cada actividad es (al menos aproximadamente) una distribución beta .9. Bajo estas suposiciones. Suposición 1: la distribución entre a y b es 6 desviaciones estándar. Esta estimación debe tener en cuenta las circunstancias normales. En la figura 8. donde se supone que la ejecución se hace bajo condiciones normales. donde se supone que la ejecución va extremadamente bien. y debe estar basada en la mejor información de que pueda disponerse. Tiempo pesimista “b”. En la mayoría de los casos la probabilidad de realizar la actividad en este tiempo es pequeña. es el que representa el tiempo mínimo posible sin importar el costo o cuantía de elementos materiales y humanos que se requieran. causas no previstas. Este tipo de distribución tiene la forma que se muestra en la figura 8. 3. Así. y da una forma razonable para la distribución de los tiempos de las actividades. donde se supone que la ejecución va extremadamente mal. de manera que existe una dispersión de alrededor de 6 desviaciones estándar entre las colas. retardos involuntarios. la varianza del tiempo de una actividad es    2  16 b  a  2 El razonamiento para hacer esta suposición es que se considera que las colas de muchas distribuciones de probabilidad (como en la distribución normal) están más o menos a 3 desviaciones estándar de la media. a y b en estimaciones del valor esperado Te y la varianza ν = σ2 del tiempo que requiere la actividad. Tiempo más probable “m”. claramente. también es necesaria una suposición sobre la forma de la distribución de probabilidad. la probabilidad de realizar la actividad en este tiempo es grande. 6σ = b – a.9 se muestra la localización ideal de estas tres estimaciones con respecto a la distribución de probabilidad. Se hacen dos suposiciones para convertir m. etc. sustituyendo la estimación única D por D . con un peso de dos tercios para la moda. sirve para el propósito de localizar el valor esperado respecto a m. el tiempo promedio de duración D . Con base en los estimados (o estimaciones). var e j  como sigue. y la varianza es la suma de las varianza  de las mismas actividades. Si hay dos o más rutas que tienen 270 . Este problema es bastante difícil. de manera que Te es la media aritmética ponderada de la moda y la mitad del intervalo. a y b de una manera razonable. Ahora es posible estimar la probabilidad de que un nodo j en la diagrama suceda en un tiempo programado especificado con anterioridad.8 se puede aplicar en forma directa. S j . Ee j  y la varianza. como las duraciones de las actividades que van del nodo de inicio al nodo j son variables aleatorias. de acuerdo a la distribución que se calculan como sigue: a  4m  b D 6 2 ba v   6  Los cálculos de ruta crítica (CPM) que se describieron en la secciones 8. Por otra parte. será necesario calcular primero la distribución estadística de la duración de la ruta más larga. Sea e j el tiempo más temprano de ocurrencia del nodo j. Aunque la suposición de una distribución beta es arbitraria. estará en el intervalo [a. Suponiendo que todas las actividades en la diagrama sean estadísticamente independientes. para todas las actividades a lo largo de esa ruta. si hay más de una ruta que llegue al nodo j . una hipótesis simplificadora es calcular la media y la varianza.Texto Guía – Sistemas de Ingeniería Capítulo 8 Te  1 1  2m  a  b   3 2  Figura 8.7 y 8.9 Modelo de la distribución de probabilidad para los tiempos de las actividades en el enfoque de tres estimaciones de pert: m=estimación más probable. a=estimación optimista y b=estimación pesimista Note que el medio del intervalo (a+b)/2 se encuentra a la mitad entre a y b. antes de calcular la media y la varianza correctas. se puede determinar la media. Ee j  y var e j . como el de la ruta al nodo j que tenga la suma mayor de duraciones esperadas de las actividades. e j también debe ser una variable aleatoria. por que equivale a determinar la distribución del máximo de varias variables aleatorias. b] y su varianza  . la media es la suma de las duraciones esperadas D . si solo hay una ruta desde el nodo de inicio hasta el nodo j. Por consiguiente. Texto Guía – Sistemas de Ingeniería Capítulo 8 la misma media (o promedio). Para evitar repetir los cálculos de ruta crítica.7 Se tiene el proyecto del ejemplo 8. Ejemplo de aplicación 8. La justificación para usar la distribución normal es que e j es la suma de variables aleatorias independientes. 2 Los valores estimados más probables son tomados en función a los rendimientos de la mano de obra en condiciones normales. se seleccionaron los valores de a. de tal modo que Dij  Dij para toda i y j en el ejemplo 8. 271 .3. por que refleja la máxima incertidumbre y en consecuencia conduce a un estimado más conservador de las probabilidades. se selecciona la que tenga la varianza mayor. Una vez calculados la media y la varianza Ee j  y var e j  de la ruta al nodo j. 3 Los valores estimados pesimistas son tomados en función a los rendimientos de la mano de obra en condiciones adversas presentándose varios contratiempos.3 Actividad i-j A B C D E F G H I J K L M N O P Q R S T 1-2 1-4 2-3 3-5 4-10 5-6 6-9 9-10 6-7 10-11 7-8 11-16 6-16 16-17 11-12 12-13 13-14 13-15 17-18 18-19 Optimista1 (a) 1 1 1 1 4 8 1 1 1 3 1 1 1 2 1 1 1 5 5 1 Más probable2 (m) 1 2 1 2 6 10 3 1 1 5 2 1 2 4 2 2 1 7 7 3 Pesimista3 (b) 3 4 3 4 8 12 5 3 3 8 4 3 4 6 4 5 3 9 10 5 Tabla 8. m y b en la tabla siguiente.4 1 Los valores estimados optimistas son tomados en función a los rendimientos de la mano de obra en condiciones favorables sin que se presente ningún contratiempo. la probabilidad que se realice el nodo j a un tiempo S j preestablecido. se calcula con la siguiente formula:   e j  Ee j  S j  Ee j   Pe j  S j   P    Pz  K j      var e var e   j j   En donde z = Variable aleatoria normal estándar S j  Ee j  Kj  var e j  La variable aleatoria normal estándar z tiene media 0 y desviación estándar 1. 33 2. b.33 1-2-3-5-6-9-10-11-12 26.25 0.17 6. junto con su media y su varianza asociados.00 2.66 1-4 2.33 2.16 1-2-3-5-6-7-8 18. 0.83 1-2-3-5-6-9-10-11-16-17-18-19 39.415 19.11 0.00 1.080 17.165 8.11 0.17 1. Observe que para una actividad ficticia (a.415 7.00 0.415 15.250 14.44 0.33 1-2-3-5-6-9 17.415 8.085 2.6 0.44 Tabla 8.25 0.00 7.83 Tabla 8.69 0.17 4. Nodo 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Ruta más larga basada en duraciones medias Media de Desviación estándar la ruta de la ruta 1-2 1.25 0. m) = (0.915 12.33 5.915 272 .Texto Guía – Sistemas de Ingeniería Capítulo 8 La media Dij y la varianza Vij de las distancias actividades se ve en la tabla de abajo.11 0.33 2.665 1.16 1-2-3-5-6-9-10-11-12-13-15 35.33 7.44 0.580 12.33 1-2-3 2.17 3.44 0.5 La tabla siguiente muestra la trayectoria más larga del nodo 1 a los distintos nodos.17 2.080 9.830 18.5 1-2-3-5-6-9-10-11-12-13 28.66 1-2-3-5-6-9-10-11-16-17-18 36.69 0.165 13.25 0.44 0.44 0.17 1.83 1-2-3-5-6-7 16.33 1.16 1-2-3-5-6-9-10-11 24.17 1-2-3-5 4.83 1-2-3-5-6-9-10 19.83 1-2-3-5-6 14.830 14.330 1.915 9.83 1-2-3-5-6-9-10-11-12-13-14 30.00 3.11 0.25 0. Dij Vij Actividad i-j A B C D E F G H I J K L M N O P Q R S T 1-2 1-4 2-3 3-5 4-10 5-6 6-9 9-10 6-7 10-11 7-8 11-16 6-16 16-17 11-12 12-13 13-14 13-15 17-18 18-19 1.83 1-2-3-5-6-9-10-11-16 25.17 2.44 0.66 1-2-3-5-6-9-10-11-16-17 29.00 10. y en consecuencia su media y su varianza también son iguales a cero.11 0.33 1. 0).11 0. 07 -0.45 0.07 -0.57 0.51 0.7 en la ruta crítica 1-2-3-5-6-9-10-11-16-17-18-19.44 0.16 -0.05 0.45 0.7 Como vemos en la tabla 8.45 0.13 Dificultades de PERT Existen varias dificultades en la aplicación de PERT: 1.01 0. 3.44 0.35 0.48 0.Texto Guía – Sistemas de Ingeniería Capítulo 8 Por ultimo.5 0.66 14.33 12.31 0.830 18 1-2-3-5-6-9-10-11-16-17-18 36.66 12.44 0.5 13.33 0.34 0. especificado por el analista.04 0. De todas las dificultades.4% y en 38 días es de 46 % 8.16 9.415 6 1-2-3-5-6 14.83 días para finalizar y la probabilidad de acabar en 40 días es de 50.32 0.06 -0.83 8.16 8.53 0.04 0.11 0.39 0.24 -0.84 0.56 0. 4 Para la probabilidad correspondiente actividad ver ANEXO B.17 1.83 7.415 14 1-2-3-5-6-9-10-11-12-13-14 30.83 2.16 15.16 0. El supuesto de que la duración de las actividades es independiente es difícil de justificar.01 0.06 -0.50 1.83 14.6 0. su media es de 39.165 9 1-2-3-5-6-9 17. Ruta más larga basada en duraciones medias Nodo Media de la ruta Desviación estándar de la ruta 2 1-2 1.48 0.23 -0.46 0.66 1.78 0.330 4 1-4 2.16 0. 273 . La duración de las actividades puede no seguir una distribución Beta.83 17.085 5 1-2-3-5 4.08 -0.504 Tabla 8.04 -0.76 -0.52 0.59 0.57 0.18 -0.50 0.504 0.915 16 1-2-3-5-6-9-10-11-16 25.27 0.915 10 1-2-3-5-6-9-10 19.53 0.37 0.02 -0.580 11 1-2-3-5-6-9-10-11 24.01 -0. El supuesto de que la ruta crítica encontrada con CPM es siempre la misma no es justificable.38 0.33 9.665 3 1-2-3 2.165 12 1-2-3-5-6-9-10-11-12 26.46 0.15 0.13 0. la última es la más complicada debido a la fuerte variabilidad que podría tener la duración de las actividades en un proyecto.52 0. 2.54 0.26 -0.10 -0.19 -0.53 0.250 13 1-2-3-5-6-9-10-11-12-13 28.915 Sj Kj P  z  K j 4 1 2 2 3 2 3 4 5 12 16 14 18 18 20 15 20 18 21 23 25 26 27 27 30 30 31 33 37 25 27 28 30 34 37 38 40 -0.415 19 1-2-3-5-6-9-10-11-16-17-18-19 39.59 0.37 0.83 18.830 17 1-2-3-5-6-9-10-11-16-17 29.415 7 1-2-3-5-6-7 16.09 0.01 -0.52 0.31 0.080 15 1-2-3-5-6-9-10-11-12-13-15 35. en la tabla siguiente se calcula la probabilidad de que cada nodo se realice en un tiempo S j preestablecido.12 0.11 0.080 8 1-2-3-5-6-7-8 18.48 0.83 19. 9 Posteriormente proceda a colocar los datos del problema a partir de la representación en diagrama para ambos casos para nuestro caso ver figura 8. seleccione Project Planning y escoja CPM – Critical Path Method ó PERT-Program Evaluation & Review Technique.2. Si el lector quiere generar los resultados con la opción Next Step.1Solución CPM/PERT con TORA TORA tiene poderosas herramientas tutoriales para cálculos de ruta crítica y para formular el cronograma. La figura 8.14 Solución por computadora 8. 8. así como la probabilidad de que una actividad sea crítica.2 para el cálculo de la ruta crítica. El diagrama de barras predetermina el cronograma en forma automática todas las actividades no críticas lo más pronto posible.14.10 muestra los resultados de TORA para los cálculos de ruta crítica del ejemplo 8. TORA lo guía en los detalles de los cálculos para los pasos hacia delante y hacia atrás.5 del ejemplo 8.3. y para hacer cálculos de PERT Para usarlas. La figura 8. Figura 8. Puede usted estudiar el impacto de 274 .11 muestra el programa TORA para los cálculos de ruta crítica del ejemplo 8.Texto Guía – Sistemas de Ingeniería Capítulo 8 Una de las formas de corregir las falencias de PERT es mediante el empleo de simulación (MonteCarlo) para el cálculo de la media y la varianza de la duración del proyecto. El impacto de una demora de una actividad no crítica se vera en forma directa en el cronograma.Texto Guía – Sistemas de Ingeniería Capítulo 8 demorar el tiempo de inicio de una actividad no crítico. que se explican por si solas.10 Figura 8.12 y 8. usando las listas desplegables. La figura 8.13 muestran los resultados obtenidos de los cálculos de PERT en esos cuadros se pueden ver la media y la varianza de cada actividad o bien se puede ver también la media y la varianza de la ruta más larga a cada nodo de la red. dentro del cuadro inferior izquierdo de la pantalla.11 275 . Figura 8. junto con una explicación. Texto Guía – Sistemas de Ingeniería Capítulo 8 Figura 8.12 Figura 8.13 276 . numero de actividades.13 277 .Texto Guía – Sistemas de Ingeniería Capítulo 8 8. unidad de tiempo y formato de entrada de datos) y haga clic en OK.12 Una vez hecha la selección de PERT_CPM haga clic en new Problem.12 Figura 8. y escoja el tipo de problema (Deterministic CPM o Probabilistic PERT) en este caso Deterministic CPM y coloque los datos del problema (titulo del problema.2 Solución CPM/PERT con WINQSB Parta del menú Inicio = > Programas = > WinQSB = > PERT_CPM. como se muestra en la figura 8.13 Figura 8. Como se muestra en la figura 8.14. 16) y también se podrá ver el Programa Preliminar para el proyecto del ejemplo de aplicación 8.17 278 .15 Inmediatamente aparecerá la solución de la ruta crítica (figura 8.Texto Guía – Sistemas de Ingeniería Capítulo 8 Proceda a ingresar los datos del problema de la siguiente manera (figura 8. figura 8. Figura 8.14): Figura 8.14 Una vez ingresados los datos del problema haga clic en Solve and Analyse y haga clic en Solve Critical Path.2. Texto Guía – Sistemas de Ingeniería Capítulo 8 Figura 8.17 279 .16 Figura 8. fecha de principio. haga clic y arrastre en el espacio vacío para crear una nueva tarea. Doubleclick en una tarea para añadir la información de horario como duración. PERT Chart EXPERT puede ser usado con Microsoft Project PERT Chart EXPERT puede estar acostumbrado a generar diagramas de evaluación y revisión del funcionamiento directamente de existir el archivo Microsoft Project.3 Solución CPM/PERT con PERT Chart EXPERT PERT Chart EXPERT es una aplicación de software de manejo de proyecto basada en Windows que está acostumbrado a crear y mostrar los proyectos usando un diagrama de evaluación y revisión del funcionamiento. O 280 . etc.… los diagramas de evaluación y revisión del funcionamiento pueden ser mostrados en muchos estilos y colores diferentes. En un mapa con tareas. En un mapa con tareas. haga clic y arrastre en cualquier parte en el mapa para añadir una nueva tarea. Un ejemplo de un diagrama de evaluación y revisión del funcionamiento es mostrado abajo: Los planos creados en el experto de diagrama de evaluación y revisión del funcionamiento se pueden mantener y administrar separadamente o transferir a Microsoft Project o cualquier programe que pueda leer el “MPX” Formato de archivo de Microsoft Project. costo de trabajo.14. una caja de tarea aparecerá en la esquina superior izquierda. 3. fecha de fin. Crear tareas Para añadir una nueva tarea en un mapa. Un diagrama de PERT Chart EXPERT es instalado en Microsoft Project para transferencia fácil de los datos. use PERT Chart EXPERT para proyectar rápidamente un plano de proyecto en la pantalla dando un golpecito a y arrastrando para crear tareas y dependencia entre tareas.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. 2. haga clic dentro de una tarea y agregue un espacio vacío para crear una nueva tarea que es dependiente de la primera tarea. PERT Chart EXPERT puede ser usado para planificación de proyecto como una herramienta de planificación. En un mapa vacío. PERT Chart EXPERT usa las tareas y predecesores creados en Microsoft Project para generar una vista con base en dependencia de los datos. haga clic y arrastre con su ratón: 1.  La otra vía para entrar la información es el “doubleclick” en una tarea e ingrese la información en la información de tarea. existen muchos campos que se mostraron en el mapa. 281 . Ambas opciones son descritas abajo: Información que entra que usa la tarea boxea en la pantalla Puede entrar información sobre una tarea simplemente escogiendo una tarea en la información de pantalla y mecanografía directamente en el campo escogido para esa tarea. Por ejemplo.  Ingresar la información de tarea directamente en la caja de tarea escogiendo la tarea en la pantalla y mecanografiando la información directamente. con este diagrama de evaluación y revisión del funcionamiento. sólo el nombre de tarea es mostrado así puede cambiar sólo el nombre de la tarea directamente en la pantalla: Sin embargo. en el diagrama de evaluación y revisión del funcionamiento de abajo. Dé un golpecito al campo que desee e cambiar y teclee la nueva información.Capítulo 8 Texto Guía – Sistemas de Ingeniería Información que entra Existen dos vías para ingresar información en las tareas en PERT Chart. La información que usted puede entrar es dependiente de que los campos se muestran corrientemente en la pantalla. O 2. El botón de barra de herramientas de información de tarea (Task Information) La forma de información de tarea le permite ingresar datos para la tarea escogida como es mostrado abajo: Dependencias Una dependencia es una relación entre dos tareas. Para especificar que las tareas en su proyecto ocurren en cierta orden. crea dependencias entre estas tareas dando un golpecito a una tarea y arrastre entre tareas. Haga clic y arrastre de una tarea a espacio vacío en el mapa para crear una nueva tarea que es dependiente de la primera tarea. Para modificar una dependencia entre dos tareas: 282 . Crear dependencias Para crear una dependencia: 1. Haga clic y arrastre de una tarea a otra para crear un fin para empezar la dependencia (la primera tarea deba terminar antes del segundo pueda empezar).Texto Guía – Sistemas de Ingeniería Capítulo 8 Información que ingresa usando la forma del “doubleclick” Haciendo clic en el botón de barra de herramientas de información de tarea. Una dependencia dice que una tarea debe seguir otra tarea de alguna. La fecha de fin de cada tarea es determinada por la fecha de principio más la duración usted entra la toma en la cuenta el calendario (trabajando y los días. 3. Estas exhibiciones una forma que muestra la dependencia que existen entre estas dos tareas. Por fecha de principio de proyecto... Más abajo está una explicación de cómo se fijan la hora de las tareas. O 2. Escoja del menú Tools-Chart. Por Dependencias.. la duración. Las tareas son programadas basadas en lo siguiente: 1. Por fecha de limitación. escoja el horario del proyecto empieza opción de fecha y entra una fecha en la fecha de fin de proyecto.Si una tarea no tiene una dependencia. Programación PERT Chart EXPERT fija la hora de las tareas basadas en la información que entre. horas no de trabajo por día. PERT Chart EXPERT calcula también el camino crítico. fecha de limitación o principio real entonces la tarea es fijada la hora para empezar en la fecha de principio de proyecto y su fin es determinado por la duración de la tarea. 283 . 5. la fecha de principio de proyecto es poner a la fecha actual cuando abre un nuevo archivo. Cuando fija la hora de del fin de proyecto. 2. etc. Ingrese una fecha en la fecha de principio de proyecto en el campo. Por Inicio/Final. fechas de limitación o un principio real. Usa la fecha de principio de proyecto (o proyecte la fecha de fin al fijar la hora del fin de proyecto).. Haga clic y arrastre entre cualquier dos tareas de dependiente. 2. En defecto. Al horario del fin del proyecto. dependencias y limitaciones para hacer cálculos cuando cada tarea debe empezar y terminar. Por Duración.Si una tarea tiene un principio real o fin real será programado basado en estas fechas. 4. Para cambiar la fecha de principio de proyecto: 1. todo tareas se da un tan tarde como sea posible limitación y es el horario hacia atrás de la fecha entra. Cada uno de estos conceptos es explicado abajo: Proyecte el principio fecha y proyecta fecha de fin La fecha de principio de proyecto en el PERT Chart EXPERT es más entonces justa la fecha en que el proyecto empieza.Si una tarea tiene una dependencia pero no tiene una fecha de limitación o principio real entonces la tarea es programada basado en la dependencia.).. Doubleclick la dependencia se alinea entre dos tareas.Si una tarea tiene una limitación fecha entonces fija la hora de la tarea basada en la limitación fecha y limitación teclea. Estas exhibiciones una forma que muestra la dependencia que existen entre estas dos tareas. La fecha de principio de proyecto está acostumbrada a definir la fecha de principio para todas las tareas que no tenga dependencias.Texto Guía – Sistemas de Ingeniería Capítulo 8 1. 3. Escoja horario del proyecto y la fecha de inicio. PERT Chart EXPERT proporciona unas horas trabajadas en una semana de 5 días estándares. PERT Chart EXPERT son la habilidad para hacer clic y arrastrar para crear fácilmente dependencias entre tareas. Así: 284 . 7 días una semana sin días no de trabajo. Nota: Las unidades de duración anteriores toman en cuenta el calendario (trabajando y el tiempo no de trabajo). el calendario cotidiano de las 8 horas. horas. La duración que usted entra trabajará alrededor de este calendario y como cambia este calendario su horario cambiará en conformidad.Texto Guía – Sistemas de Ingeniería Capítulo 8 Duración La duración es la cantidad del tiempo que toma para completar una tarea. Las duraciones se pueden entrar también en los días pasados. Al fijar la hora de del fin del proyecto (desmarque la opción “El horario del proyecto empieza fecha” bajo el mapa de herramientas tome forma). haga clic en este campo y represente la duración. 12eh para 12 las horas pasados o 5ed para 5 los días pasados. Esto significa que no puede empezar una tarea hasta uno se termina. Dependencias Unas de las características principales del. Si el campo de duración es mostrado en la caja de tarea en la pantalla. Los días pasados ignoran el calendario y horarios basado en un día de 24 horas. O 2. Para entrar la duración: 1. Por ejemplo. semanas. Una duración para una tarea se puede ingresar en minutos. En defecto. Pase las unidades de duración se definen por entrar una e antes de la unidad de duración. meses o años. El tipo básico de la dependencia es el fin para empezar dependencia. días. la duración está acostumbrado a calcular la fecha de principio de una tarea. Existen varios tipos diferentes de dependencias. Doubleclick la tarea y represente la duración en el campo de duración. Una duración se puede entrar en el campo de duración usando el formato siguiente: M = Minutos H = Horas D = Dias W = Semanas MO = Meses Y = Años Al fijar la hora de desde el principio del proyecto (verifique la opción “El horario del proyecto empieza fecha” bajo el mapa de herramientas tome forma). la duración está acostumbrado a calcular la fecha de fin de una tarea. Una duración de 5 pasó los días del miércoles harían el fin de una tarea ocurre el domingo por la tarde. En defecto. arrastre a otro y suelte para crear la dependencia. Estas exhibiciones una forma que muestra la dependencia que existen entre estas dos tareas. Entonces será programado basado en las dependencias. 285 . deba terminar en.. requiera todo que entra una fecha exceptúe cuanto antes y como tarde como sea posible. la duración de la tarea y la fecha de principio de proyecto. Tipo de limitación El campo de tipo de limitación le permite para entrar el tipo de limitación. Fechas de limitación (Constraint Dates) Una fecha de limitación es una fecha específica que usted cesionario a una tarea. Cuando existe una cantidad del tiempo que debe transpirar antes de la tarea de segundo deba ocurrir puede usar A “retraso” para esto. Use el ratón para hacer clic de adentro un tarea. Lag (Retraso) La mayor parte de las tareas en un proyecto empiece haya terminado inmediatamente al gusto de uno pero ocasionalmente puede necesitar entrar una demora. Haga clic y arrastre entre cualquier dos tareas de dependiente. Conjuntamente con esta fecha es un tipo de limitación que determina cómo la fecha es usada (deba empezar en.Los horarios la tarea para suceder tan pronto como que ello puede basado en dependencias que preceden la tarea. Ponga la limitación teclee para cuanto antes si ya no desee para tener una fecha de limitación asociada con una tarea. Para modificar una dependencia entre dos tareas: 1. Un retraso es la cantidad del tiempo que la tarea de segundo debe esperar después del primero ataree principios o fines. El “Cuanto antes” la limitación hace no limite en realidad una tarea para una fecha particular.Texto Guía – Sistemas de Ingeniería Capítulo 8 Para crear un fin para empezar dependencia en PERT Chart EXPERT 1. esto crea un fin para empezar dependencia entre la primera tarea usted escogió y la segunda tarea. etc.). Escoja de uno del siguiente: Lo antes posible. empiece ningún más temprano entonces. Existe varios tipos diferentes de limitaciones. No terminar antes del. 286 .Los horarios la tarea para terminar en la fecha listado en el campo de fecha de limitación. Una tarea con una necesidad empieza en o deba terminar en la limitación de fecha está considerado crítico y una tarea que está completo es siempre Noncritical considerado..Los horarios la tarea para suceder tan tarde como ello puede basado en las dependencias que siguen la tarea. . No terminar después del – coloque el horario y la fecha de la tarea para no terminar después de la fecha en el campo de fecha de limitación.. Deba empezar en.Todas las tareas son comparadas con la última tarea en el proyecto.Los horarios la tarea para empezar en la fecha listado en el campo de fecha de limitación.coloque el horario y la fecha de la tarea para no terminar antes de la fecha en el campo de fecha de limitación. No comenzar después del. Fecha de limitación (Constraint Date) La fecha de limitación es usada conjuntamente con el tipo de limitación para fijar la hora de tareas. la duración de la tarea y la fecha de fin de proyecto. El cuanto antes y tan tarde como sea posible los tipos de limitación no usar una limitación fecha así permitiendo la tarea para ser programado basado en las dependencias asociadas con una tarea.. Al fin de cada conjunto de tareas (o la tarea) – Cada red de tareas calcula el camino crítico separadamente dentro de su propio conjunto de tareas. El “Como tarde como sea posible” la limitación hace no limite en realidad una tarea para una fecha particular. El ejemplo debajo de exhibiciones dos separe la red de tareas unidas.. No comenzar antes del – coloque el horario y la fecha de la tarea para no comenzar antes de la fecha en el campo de fecha de limitación.coloque el horario y la fecha de la tarea para no comenzar antes de la fecha en el campo de fecha de limitación.. Una tarea es considerado crítica si ello impacta el fin de su red de tareas (una tarea sencilla es aún considerada su propia red y es por lo tanto crítico). Las dos excepciones para esto es obligación empezar On/Must Finish en limitaciones de fecha y las tareas completados (Start On/Must Finish On date constraints and Completed Tasks).Capítulo 8 Texto Guía – Sistemas de Ingeniería Lo más tarde posible. Si una demora en una tarea impactaría esta fecha entonces la tarea es considerada crítica. Deba terminar en. El ejemplo debajo de las exhibiciones el camino crítico al fin del proyecto.. Ruta Crítica La ruta crítica es un cálculo de horario que determina el camino larguísimo para el fin de un proyecto o al fin de un conjunto de tareas. Estos son: Al fin del proyecto (To the end of the project). cada camino crítico calculador dentro de su propio conjunto de tareas. PERT Chart EXPERT puede calcular el camino crítico en dos vías.. Para transferir el diagrama de evaluación y revisión del funcionamiento (PERT Chart EXPERT) actual a Microsoft Project.Texto Guía – Sistemas de Ingeniería Capítulo 8 Para cambiarse entre los dos métodos de calcular el camino crítico: 1. PERT Chart EXPERT contiene un sistema de programación simple. es considerado “autónomo” PERT Chart EXPERT. Si crea un nuevo mapa en PERT Chart EXPERT. etc. configure este mapa y salve este mapa. para manejar recursos. . puede transferir el diagrama de evaluación y revisión del funcionamiento para Microsoft Project. Para la programación más elaborada. escoja el botón de barra de herramientas de Goto Project como se ve en la figura. Transferir un diagrama de evaluación y revisión del funcionamiento para Microsoft Project El PERT Chart EXPERT de uso para crear sus proyectos primero y entonces transferencia estos mapas a Microsoft Project para programación adicional. haga la nivelación de recurso. En el PERT Chart EXPERT usted puede hacer dependencias entre tareas y modificar varios campos de la información sobre las tareas en su proyecto. 287 . Escoja Tools-Chart Settings. Esto significa que el archivo de diagrama de evaluación y revisión del funcionamiento es un archivo autónomo con todos los datos y formato dentro de este archivo. empiezan fechas.). el archivo Microsoft Project que contiene los datos (la información quiera nombres. Puede abrir también el primero de plano de Microsoft Project y escoja el botón de Goto pert chart EXPERT para abrir el diagrama de evaluación y revisión del funcionamiento salvado correspondiente al plano de Microsoft Project. 288 . colocación de caja. el la próxima vez usted abre el diagrama de evaluación y revisión del funcionamiento ello abre no solo el diagrama de evaluación y revisión del funcionamiento con todo el formato sino también abren el archivo Microsoft Project correspondiente al que es ahora asociado. etc. Tendrá entonces dos archivos.). etc. Se impulsa para salvar el plano de Microsoft Project y usted debe entrar un nombre de archivo para este Microsoft Project proponga continuar transfiriendo el diagrama de evaluación y revisión del funcionamiento a Microsoft Project. y el archivo de diagrama de evaluación y revisión del funcionamiento que contiene las opciones de formato que es de mapa específico atrevido (tales como colores a la medida. terminan fechas. cuestan. Después de transferir los datos a Microsoft Project. El diagrama de evaluación y revisión del funcionamiento entonces llega a ser asociado a este Microsoft Project planea.Capítulo 8 Texto Guía – Sistemas de Ingeniería Transferir un diagrama de evaluación y revisión del funcionamiento autónomo para Microsoft Project significa que los datos que existen en el diagrama de evaluación y revisión del funcionamiento serán apartados del diagrama de evaluación y revisión del funcionamiento y puso en un plano de proyecto de Microsoft. Por otra parte.15 Conclusiones El PERT y CPM han sido aplicados a numerosos proyectos. para los tiempos de las actividades). basado en el principio de administración por excepción. el costo de actualizar y mantener la información del proyecto con el tiempo en ambientes tan dinámicos. puede ser excesivamente prohibitivo. sobre los planes y proyectos del trabajo actual y monitorear el progreso del proyecto. Por otra parte. hoy ellos (y sus variantes) se aplican a la construcción de carreteras y de edificios. Obviamente. Estas son las actividades que limitan la duración del proyecto. las actividades de la ruta crítica deben realizarse pronto. aun cuando dos proyectos puede que no sean iguales. sus matices hacen cada uno aplicable más que el otro en situaciones diferentes. Además. el CPM se desarrolló para manejar proyectos repetitivos o similares (e. vehículos espaciales.Capítulo 8 Texto Guía – Sistemas de Ingeniería 8. si una actividad de la ruta crítica se retarda. En otras palabras. y al desarrollo y producción de artículos de alta tecnología tales como aviones. Empezando con su aplicación inicial al proyecto Polaris y al mantenimiento de plantas químicas. se gana gran cantidad de experiencia con el tiempo en tales circunstancias. debido a los tres estimados de tiempo que se requieren en cada actividad y a la capacidad limitada de los computadores actuales. Primero.. El PERT/CPM identifica estas actividades y la cantidad de tiempo disponible para retardos 289 . mantenimiento de plantas químicas). para almacenar esta vasta cantidad de datos. esto es. el PERT ha constituido una herramienta útil para la administración de proyectos. 8. Estas. Mientras que en PERT los estimados de tiempo y sus distribuciones han sido de controversia. barcos y computadores. Esto condujo al enfoque probabilístico que se tomó. le permiten al director del proyecto hacer decisiones con base a información.16 Resumen El PERT/CPM fue diseñado para proporcionar diversos elementos útiles de información para los administradores del proyecto. La principal desventaja es que no es funcional para grandes proyectos. Esta experiencia llevó al análisis de técnicas de colisión utilizadas en los diagramas CPM. el PERT/CPM expone la "ruta crítica" de un proyecto.j. el proyecto como un todo se retarda en la misma cantidad. El PERT se desarrolló para proyectos en donde hubiera incertidumbre en el tiempo de las actividades (usualmente debido a que el proyecto nunca se había intentado antes y por tanto no había bases de datos. Las actividades que no están en la ruta crítica tienen una cierta cantidad de holgura. En ambos métodos la información esencial deseada es la ruta crítica y las holguras. y permitir que el proyecto como un todo se mantenga en programa. para lograr que el proyecto se realice pronto. pueden empezarse más tarde. Mientras que el CPM y PERT son esencialmente lo mismo. B → D. D → G 6 a) Hallar la ruta crítica por “CPM” b) Hallar las holguras libres c) ¿Que sucede si la actividad “D → F” se modifica a dos días de duración? 290 .17 Problemas propuestos 1. B → C 4 C→D A → C. D → F. E → F 2 F→G C → F. D → F. 2. B → D. C → E 8 D → F C → D. F → G. E → D 3 D → G C → D. E → F 5 G → H E → G. Programación de actividades (Tiempo en días) 1 4 (6) (2) (3) (5) (4) A (4) (0) 3 (6) (7) (4) 2 B (7) (2) (2) (5) 5 Determinar la Ruta Crítica y las holguras libres y totales. B → C 2 E→D B → E. E → D 7 F→H C → F. B → C 1 C→E A → C. Programación de actividades Actividad Precedencia Duración (días) A→B — 1 A→C — 2 B→C A→B 1 B→D A→B 2 B→E A→B 5 C→F A → C. Determinar el diagrama de tiempos de A a B. C → E 6 E→G B → E. C → E 3 E→F B → E.Texto Guía – Sistemas de Ingeniería Capítulo 8 8. Luego viene la excavación. Antes de poder introducir un nuevo producto al mercado se deben realizar todas las actividades que se muestran en la tabla (todos los tiempos están en semanas). unos 6 para ser más preciso. Y es que hasta que esto no esté listo no puedo empezar con la instalación eléctrica. 11 o 12 días. Cuando eso esté listo puedo empezar con el levantado de las paredes y las vigas. determine la probabilidad de que el proyecto esté listo para el 18 de diciembre 4. entonces queda la 291 . en eso se duran de 6 a 10 días. digamos que 8. no más. tal vez 4 días. D B E F. que puedo durar de 2 a 7 días.Texto Guía – Sistemas de Ingeniería Capítulo 8 3. en eso se puede durar unos 2 días. G Optimista Más probable Pesimista (a) (m) (b) 2 4 2 1 1 3 2 0 6 5 3 2 3 4 4 2 10 6 4 3 5 5 6 4 Determine la duración mínima del proyecto. Por último. seguramente duro unos 4 días. pero si no. En los cielorrasos se tarda de 4 a 10 días. suponga que hoy es 15 de julio y comienza el proyecto. Se tiene la siguiente programación de actividades: Actividad Predecesor A B C D E F G H A C A. Y es que sino están listos no puedo poner los pisos. Cuando se termina de pintar. tienen que estar terminados los pisos y el cielo raso. Después vienen los techos. ¿qué falta? La carpintería. pero si llueve duraría 12 días. desea construir una casa. que duramos de 7 a 12 días. y en eso se me van unos 8 días siendo optimista. que me demora unos 7 días. para el tamaño de la casa que Ud. podría retrasarme dos días. que también puede durar otros dos días. Suponga que Ud. Veamos. Ud. unos 10 días mejor. la ruta crítica e interprete el tiempo de holgura. y entonces contrata un constructor. Si todo sale bien cada una de estas dos actividades las terminaría en un día. ahí no hay retraso. pero adentro debe haberse finalizado toda la carpintería y la electricidad. de 5 a 10 días. En lo eléctrico se duran 2 días. quiere saber si la casa podrá estar terminada dentro de 4 meses. eso está entre 18 a 30 días. lo más probable es que se tarde 21 días. para luego iniciar con los cimientos. si el clima es bueno. en realidad no más de 12. que es rápido. y de acuerdo con sus muchos años de experiencia el constructor le responde: "Todo empieza con la limpieza del terreno. realice un programa para determinar la duración mínima del proyecto. quiere. Para finalmente empezar a pintar. ni los cielorrasos ni terminar los muros. la parte de afuera se podía haber pintado una vez que estuvieran listos los techos. porque los muros deben estar listos para chorrear los contrapisos. luego viene el trazado. tal vez 10. unos 8. Terminando los muros duro de 10. 18 Bibliografía  INVESTIGACIÓN DE OPERACIONES – Hamdy A. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz. ¿Qué ocurre con el tiempo de terminación del proyecto si en la instalación eléctrica se dura tres días más de lo previsto? j. Elabore una tabla en la que muestre la lista de actividades.htm#pertcpm  http://www. La limpieza tarda unos 3. o 4.shtml#pl  http://www.com/trabajos13/planeco/planeco. Calcule el tiempo esperado y la variancia de cada actividad.Texto Guía – Sistemas de Ingeniería Capítulo 8 limpieza final. sus tiempos y sus precedencias. Gordon P.htm#pertcpm 292 .com/apuntes/ingenieria_industrial/cpmpert/default1.  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S. e. Con base en esa información: a. d. Calcule la ruta crítica. ¿Cuál es la probabilidad de terminar antes de 16 semanas. quiere terminar el proyecto una semana antes ¿Qué podría hacer? ¿Qué implicación tiene esa decisión? 8. Herbert.com/metcuant-practicas. ¿Cuál es la probabilidad de durar más de 20 semanas? h. En pintar adentro se gasta de 2 a 6 días.com/metcuant-material.auladeeconomia. [Sexta Edición] 8.monografias. Gerald J. Lieberman. ¿Valdrá la pena contratar obreros extra para pintar el exterior? i.auladeeconomia.elprisma.asp  http://www. Si Ud. c.19 Enlaces  http://www. unos 4 en promedio. ¿Cuántas semanas se dura construyendo la casa? f. Construya el diagrama de actividades tipo CPM. o 5 días". y afuera igual. b. Wrigth. Hillier. si se trabajan 5 días a la semana? g. Un proyecto siempre tiene una duración y un trabajo a realizar. 4. concatenadas y/o quizás solapadas en el tiempo. Al final.. Cerrar el proyecto (terminarlo). Hito: Tarea de duración cero que sirve para evaluar objetivos parciales dentro del proyecto antes de que éste concluya. Todos los proyectos constan de cuatro fases principales: 1. se obtienen los objetivos fruto del proyecto. coinciden en que la definición de proyecto es: "Un esfuerzo temporal para la creación de un producto o servicio único". el objetivo del proyecto es el fin a alcanzar con mayor o menor desviación respecto a lo planificado inicialmente. Realizar el seguimiento del proyecto (observar como marcha). Efectuadas las tareas. Tarea: Actividad que tiene un comienzo y un final. Por lo tanto. Existen objetivos no cuantificables directamente tales como la satisfacción del cliente. se enlazan. Todo proyecto esta compuesto por tareas. El objetivo final de todo proyecto es un producto terminal obtenido. A lo largo del proyecto se pueden establecer unos hitos. Añadir también que un proyecto utiliza un conjunto de recursos de diferentes naturalezas que son utilizados para la consecución de una serie de tareas debidamente enlazadas. se concatenan en el tiempo hasta alcanzar una tras otra. con un objetivo marcado". medidas de costo. dado que el éxito de un proyecto no es algo que sucede de modo espontáneo.. 3. Administrar el proyecto (desarrollar el proyecto introduciendo correctamente todos los datos). Aunque podríamos afirmar que "un proyecto es un evento o secuencia de eventos planificados. existen tareas a realizar y para realizar esas tareas se utilizan distintos recursos que posibilitan su ejecución.. lo primero y más importante es planificar: Crear un plan de proyecto. Crear el plan (planificación).2 Fases de un proyecto. Vamos a desgranar los conceptos fundamentales de dicha definición para irnos adentrando en qué es y en qué consiste un proyecto: 293 . equipamiento y materiales empleados en la realización de las tareas. Son como puntos de control o marcadores situados estratégicamente en momentos importantes del proyecto. 9. Los criterios a cumplir pueden ser la calidad del producto. una planificación y análisis previos son fundamentales. Recurso: Conjunto de personas. Las tareas se solapan.Texto Guía – Sistemas de Ingeniería Capítulo 9 CAPITULO 9 TUTORIAL DE MS PROJECT 9. la finalización del proyecto. único y de calidad. Objetivo: Criterio cuantificable que debe cumplirse para que el proyecto se considere concluido.1 Introducción . En resumen.Definiciones iniciales. programación.. la mayoría de los textos y libros experimentados en esta materia y basados en las ideas del párrafo anterior. pero. 2. d. ya tengan nombre y apellidos (por ejemplo María Gil o Alberto Fernández). días. paneles. Los recursos mencionados (los que acabamos de nombrar) se engloban en los recursos de carácter de trabajo y/o recursos materiales. 3. de equipamiento. m)... cable. Están conformados por: 1. es un factor que diferencia a los proyectos de las llamadas "operaciones en curso". s. espacios de trabajo. Para la elaboración de un proyecto siempre se tendrá que fijar o bien una fecha de comienzo a partir de la cual desarrollar el proyecto hasta alcanzar una fecha de finalización. h. son artículos de consumo que se agotan a medida que avanza el proyecto. Los recursos de TRABAJO están conformados por: 1.. un taladro. Grupos de profesionales identificados por su actividad (por ejemplo encofradores o instaladores eléctricos). Las personas identificadas por su puesto o cargo (por ejemplo gerente o bien jefe de personal). dos años. Sin embargo el objetivo de contratar a dos expertos en ventas puede constituir un proyecto ya que dichas personas deberán estar contratadas para tal fecha. Las instalaciones (locales.. El que exista una fecha de comienzo y una fecha de finalización.. Las personas que participan en el proyecto.Capítulo 9 Texto Guía – Sistemas de Ingeniería Se dice que un proyecto es Temporal porque tiene una duración determinada (una semana. Por ejemplo las actividades cotidianas de un departamento de recursos humanos.) 294 . Estas suelen transcurrir de manera indefinida. 4. En MS Project. Los recursos de equipamiento (por ejemplo una pala excavadora. clavos. 2. semanas. la duración de las tareas se puede fijar en meses. El factor tiempo es muy importante en la gestión de proyectos.) 5...). de materiales generalmente) que son los encargados de llevar a buen puerto el proyecto.. o bien lo contrario: Se fijará una fecha de terminación a partir de la cual y retrospectivamente (para atrás) se vayan "retrocediendo" las tareas a realizar (con sus duraciones) hasta alcanzar la fecha de comienzo. sino que tienen una fecha de finalización y/o de inicio.) requeridas para realizar las tareas. Los recursos MATERIALES por su parte. Esto significa que para su consecución se implican una serie de recursos (de personal.. horas o minutos (las siglas respectivas son: ms. una grúa. Los recursos materiales (por ejemplo el cemento. de un departamento contable. Un proyecto conlleva también un Esfuerzo. salas de reunión. Los proyectos no son indefinidos.. A esto. De los productos obtenidos. con otros programas. MS Project es la solución ideal para la administración de proyectos. Con MS Project. Hoy esta forma de representación la utiliza MS Project en su vista denominada Diagrama de Gantt.. todo proyecto se puede gestionar sin un programa informático. En 1. Entre muchas posibilidades de trabajo. podemos dominar con rapidez el proceso de administración de proyectos mediante la Guía de proyectos. así como en el Control y Seguimiento del Proyecto durante su realización. periodos vacacionales. la disponibilidad de algunos recursos debe ser considerada. a esta gestión de Proyectos nos ayuda Microsoft Project. MS Project nos permite:  Planificar y programar tareas así como asignar recursos a dichas tareas de manera adecuada y sencilla. Se trata de una ayuda interactiva paso a paso que nos ayuda a configurar proyectos (mediante asistentes).  Establecer escenarios dentro del proyecto para crear análisis de hipótesis. duración de las jornadas laborales.3 Gestión de Proyectos con Microsoft Project."  Intercambiar información de proyecto con todos sus participantes a través de una red local.. pero individualmente. Planteamientos del tipo "Que pasaría si. horarios de acceso a instalaciones.  Realizar un control. 295 . La herramienta MS Project facilitará el modo de llevar a cabo de manera CONJUNTA las siguientes acciones que bien podrían realizarse. administrar tareas y recursos. Estas gestiones van encaminadas a evitar desviaciones sobre los objetivos planteados en dicho proyecto.  Visualizar el Plan de Proyecto en formatos estándar y con un diseño de diagramas muy apropiados y fáciles de interpretar. Internet o de una Intranet. que a lo largo de los años han ido surgiendo: En 1. la duración y los recursos asignados a las diferentes tareas. Sin duda. etc. Desde luego. Este es el objetivo de todo proyecto. organización y seguimiento. Información: Con Microsoft Office Project Standard 2003. Por otro lado. Gantt desarrolla un sistema de representación gráfica donde se plasman las tareas o actividades a realizar frente a una escala de tiempo (en MS Project.Capítulo 9 Texto Guía – Sistemas de Ingeniería En MS Project. realizar un seguimiento de los procesos así como crear informes a partir de la información de los proyectos. el Administrador del proyecto posee un control total del proyecto.950 las empresas buscaban expertos capaces de coordinar las tareas y relacionarlas. la razón de ser del proyecto. se deriva la obtención de un beneficio adecuado. así como coordinar toda la información que conlleva los requisitos del proyecto. la buena experiencia y saber hacer del Administrador del proyecto es quien aporta el ingrediente más importante. 9. Por ejemplo. La gestión de proyectos requiere la aplicación de una serie de técnicas. hoy se denomina escala temporal).917 Henry L. la Gestión de Proyectos consiste en el Estudio y Planificación de un Proyecto en función de sus alcances. Cada proyecto crea un Producto o Servicio Único. 5. De la duración de las tareas. Optimizar la estructura. Las tareas habrá que definirlas como algo concreto y no como algo general.. Ya se ha comentado en este capítulo como estimar la duración de las tareas. los pasos a seguir inicialmente. En 1. es el periodo de tiempo entre la fecha de comienzo de una tarea y su fecha de finalización. Tendrán una descripción razonable (ni demasiado general ni demasiado específica).Capítulo 9 Texto Guía – Sistemas de Ingeniería En 1. se pueden organizar y así como realizar un seguimiento de las tareas de forma eficaz para evitar retrasos y no salirse del presupuesto. Demoras. Para ello. Pert y CPM en su forma de trabajar. la planificación es el paso vital para que el proyecto se desarrolle bien. 3. MS Project conjuga estas tres técnicas: Gantt. Si el margen de demora NO afecta a la duración de otras tareas. sin que ello afecte a las fechas de otra tarea o bien a la fecha final del proyecto.. bien pueden ser los siguientes: 1. Existen por lo tanto márgenes de demora dentro de los proyectos. Es. el gobierno americano crea el diagrama de Pert (Program Evaluation and Review Technique) que relaciona las tareas.Estimar la duración de cada tarea. Evaluación de los recursos del proyecto.. 2. Va a pasar. Construir la estructura de descomposición de trabajo (WBS). 6. Para conseguir esto. Estimar la duración de cada tarea. la cantidad de tiempo que se puede posponer una tarea sin que ello suponga un retraso en otras tareas. Siempre debemos tener en cuenta la máxima que dice: "Todo lo que pueda pasar. es decir.957 Surge el CPM (Critical Path Method) o método de ruta crítica que permite calcular la duración de un proyecto en virtud de las tareas que lo componen y su encadenamiento y/o simultaneidad (que varias tareas se pueden desarrollar al tiempo o bien una cuando acabe la anterior. Mas tarde detallaremos que es eso de la ruta crítica. Microsoft Project crea una programación: 1. Con esta información. 7. Consiste en acotar los trabajos a realizar. dicho margen de demora se denomina margen de demora permisible (que no pasa nada si se da.. A esa alteración en la duración y calendario de las tareas (fecha de comienzo y/o finalización de la tarea) se le denomina demora. Como ya se ha comentado y para resumir. se derivará la duración del proyecto.. 4. que la fecha de finalización de una tarea puede verse alterada. Determinar las relaciones entre las tareas. Para realizar los trabajos se necesitan unos recursos. se dice que existe un retraso. Existen duraciones que pueden verse modificadas. Asignación de recursos a las tareas. se puede permitir). 2.Definir la lista de tareas e hitos. Ese mismo año. Con MS Project. pueden ser adelantados 296 . se demuestra la relación entre el diagrama de Pert y del CPM y bajo esta relación se establece que cualquier modificación en la duración en una tarea situada la ruta crítica repercute en la modificación de la fecha de terminación del proyecto. Cuando la fecha de comienzo de una tarea se pospone respecto a la prevista. los plazos a los que están sujetos los vínculos. por lo tanto. que una tarea no se vea afectada por una demora permisible de otra tarea anterior. La duración de una tarea. Definir la lista de tareas e Hitos." Margen de demora: Es la cantidad de tiempo que una tarea se puede posponer respecto a la fecha inicial prevista.).958.. Es la diferencia entre la fecha de comienzo más tarde y la fecha de comienzo más pronto de una tarea. 3. Existen tareas cuyo margen de demora tiene que ser cero. Si el margen de demora NO afecta a la duración total del proyecto. es decir. la fecha final del proyecto se verá retrasada en consecuencia. una tarea puede comenzar entre tal y tal fecha.Determinar las relaciones entre las tareas. es decir que no admiten demoras en absoluto ya que dichos márgenes incidirían en la duración final y total del proyecto. Las tareas que definen dicha ruta crítica se denominan TAREAS CRÍTICAS. Las tareas se tienen que ejecutar en un determinado orden. tienen que tener un vínculo.Capítulo 9 Texto Guía – Sistemas de Ingeniería y/o retrasados o pospuestos. Comienza la tarea actual. Estas tareas definen lo que MS Project denomina RUTA CRÍTICA. dicho margen de demora se denomina margen de demora total. Por ejemplo. la tarea actual Comienza (este tipo de vínculo es el mas común y el que MS Project establece de forma predeterminada cuando se vinculan dos tareas).  COMIENZO A COMIENZO (CC): Cuando Comienza una tarea. Son demoras totales. es decir. se puede adelantar y comenzar sin que haya terminado la anterior con lo cual se produce un solapamiento que no incide negativamente en el desarrollo del proyecto.. Los vínculos establecen relaciones de orden entre las tareas. Ese es el margen. 297 . Las tareas de un proyecto tienen que estar vinculadas entre ellas. una tarea que debería comenzar al terminar la predecesora. Pero si todas o varias de las tareas comienzan en el umbral de sus fechas de más tarde. MS Project establece cuatro posibles tipos de vínculos entre las tareas:  FIN A COMIENZO (FC): Cuando Finaliza la tarea predecesora. Para que esta estructura quede representada gráficamente MS Project dispone de la vista de diagrama de PERT (además de otras vistas). 4. En este 298 . Mediante este diagrama.. Finaliza la actual.Capítulo 9 Texto Guía – Sistemas de Ingeniería  FIN A FIN (FF): Cuando Finaliza una tarea. Finaliza la tarea actual.  COMIENZO A FIN (CF): Cuando Comienza una tarea. las tareas se representan en rectángulos relacionados mediante flechas de enlace que identifican las relaciones.Construir la estructura de descomposición de trabajo (WBS). 1 Datos generales del proyecto. 6. 7. las pantallas y las opciones. También es posible cuantificar económicamente cada uno de los recursos (cuanto cuesta cada uno). aunque no es estrictamente necesario.Crear un archivo nuevo de proyecto: Tras ejecutar el programa MS Project. las personas que lo administrarán y que se encargarán del mantenimiento del archivo de proyecto. Inmediatamente.mpp. entraremos directamente a: Menú de Archivo . las tareas que constituyen la ruta crítica aparecen con un formato diferente para destacar (generalmente en color rojo). el guión de trabajo y acciones a seguir bien podría ser el siguiente: 9.Optimizar la estructura.. es preciso determinar y modificar los márgenes de demora de las tareas. es normal. A nivel de administración con el programa MS Project. . En este caso el archivo se llamará Tienda Calahorra. Para optimizar la estructura del proyecto. se mejora y optimiza el proyecto. 9. por ejemplo. el objetivo del proyecto. Guardarlo con un nombre de archivo (la extensión para todos los archivos de proyecto va a ser *. el equipamiento necesario para cada tarea así como las instalaciones necesarias para la realización de cada tarea.mpp cuyas siglas vienen de "Proyecto de Microsoft Project").Propiedades (del archivo): Se introduce información acerca del proyecto. A continuación y desde Menú de Archivo . los menús. etc. todavía es pronto.Nuevo o bien pulsando el botón de nuevo proyecto. De este modo..Asignación de recursos a las tareas. Se trata de asociar a cada tarea los materiales. Ver imagen: 5. las limitaciones que pueden dificultar el logro de ese objetivo y otras notas de tipo general relativas al proyecto (las que se quieran). Identificar personas o grupos de personas. 299 . .. personal y equipamiento de que se dispone.4 Datos del proyecto Consejo: Los siguientes apartados de este capítulo sería interesante recorrerlos sobre el propio programa MS Project para tomar contacto poquito a poquito con los conceptos.Evaluación de los recursos. ¿existe flexibilidad de plazos? ¿Mas de una tarea se puede solapar en el tiempo?. Si algo no se comprende o no damos con ello. es decir los recursos anteriormente definidos. Con que recursos se va a contar para llevar a cabo las tareas. de querer hacer un seguimiento económico y presupuestario del proyecto. desde el principio conviene guardarlo. para que el proyecto tenga nombre y ubicación.Capítulo 9 Texto Guía – Sistemas de Ingeniería tipo de vista (diagrama de Pert).4. .. Si necesita de 3 días. es el periodo total de trabajo activo necesario para completar una tarea. . periodos vacacionales. domingo.Diagrama de Gantt .Herramientas . sin contar los períodos no laborables. . El tiempo asignado a esa tarea será por lo tanto cifrado en un periodo de tiempo transcurrido. según se defina en el calendario del proyecto y en el calendario de recursos (a un recurso se le puede asociar un calendario diferente del general como caso excepcional). y una semana de 7 días.2 Tareas. Por ejemplo 3d? representa una duración estimada de 3 días. En principio la duración de cada tarea es de un día. domingos. Recordemos: La duración. no es preciso que esos días sean laborables. es decir todo el tiempo (día y noche).m. Otro concepto bien distinto es la duración transcurrida que es el periodo de tiempo necesario para completar una tarea. Podemos utilizar las abreviaturas siguientes: Meses = ms.. minutos = m.Definir la fecha de comienzo o bien la fecha de finalización: Desde el Menú de Proyecto ... Generalmente es el periodo de tiempo de trabajo desde el comienzo hasta el final de una tarea. Si la duración es estimada (no definitiva) se acompaña del signo de interrogación (? -el derecho. incluyendo. Así por 300 . Las siglas utilizadas para especificar los periodos de tiempo transcurrido asociados a las tareas terminan con la letra t. con una hora de descanso para el almuerzo) para cada uno de los participantes. MS Project lo representa con un 1? Para las duraciones. escribir la cantidad de tiempo que llevará cada tarea expresándola en meses. En la tabla izquierda. a 5:00 p. Esto se hace desde el Menú Ver .Capítulo 9 Texto Guía – Sistemas de Ingeniería . semanas = s. 9. horas = h.Información del proyecto.m.Diagrama de Gantt.4.Cambiar calendario laboral. festivos así como otros días no laborables.Establecer el calendario de trabajo: Especificar los días laborables (L a V) y horario laboral (de 8:00 a. tomando como base una jornada de 24 horas. Por ejemplo el tiempo de fraguado de un hormigón para el suelo de una obra puede ser considerado en sábado. horas o minutos. Se pueden marcar periodos no laborables como fiestas. introducir las tareas en secuencia y hacia abajo. el que se utiliza en inglés). semanas.Introducir las tareas y sus duraciones: Menú de Ver . días. días = d. es decir 0d (cero días). y la solapa de avanzado. . desde sus propiedades. . reunión en la sala de juntas para evaluar la marcha del proyecto. Filtro: Mecanismo que permite visualizar solamente ciertos elementos del proyecto permitiendo al usuario hacer un estudio minucioso de ciertas partes del mismo desenfocando o no visualizando el resto. es posible modificar el orden de las tareas ya que los procesos de Copiar.Texto Guía – Sistemas de Ingeniería Capítulo 9 ejemplo si una tarea es "fraguado del suelo" su duración será de 3dt. Para los usuarios que hayan manejado Microsoft Excel o Microsoft Access decir que el sistema de filtros es similar al que utilizan estos programas. Situándonos en nombre de tarea (por ejemplo en vista diagrama de Gantt) Menú de Insertar . Las tareas repetitivas se pueden desplegar desde un signo + como en el caso de las carpetas de Windows. todos los lunes.Terminar (después de cuantas veces o bien en una fecha dada). Mensualmente o Anualmente) . Se especifica el día para dicha tarea y. marcar como hito (Marcar la tarea como hito). Los hitos se representan mediante rombos negros en la vista del diagrama de Gantt. Desde la barra de herramientas (también llamada barra e botones) de Formato. como una estructura de carpetas en el disco duro de un ordenador todas en el mismo nivel o bien creando unas dentro de otras y definiendo así una estructura de ordenación mas esquemática y comprensible para quien las maneja. Viéndolas en jerarquía. Por ejemplo. solo que.Modificar la lista de tareas: En un proyecto. aplicados a los elementos propios de un proyecto. Es. ahora.Estructuración de tareas: Consiste en tabular unas tareas respecto a otras para definir una estructura de tareas y subtareas de cara a una mejor visión del trabajo. esta estructuración de tareas y subtareas la podemos diseñar mediante los botones de .Duración . Por ejemplo: Deseamos visualizar solamente en la ruta de tareas de un proyecto. . o bien cuantas veces se repite o bien hasta cuando dura. se comprende mejor el proyecto.Crear los hitos: Se tratan de tareas estratégicas que suponen unas marcas importantes en las fases y evolución del proyecto. También es posible que una tarea de duración determinada la podamos. Cortar y Pegar están admitidos para el manejo de las tareas. . Son tareas que tienen una duración cero.Crear tareas repetitivas: Una tarea repetitiva es aquella que acontece con cierta periodicidad en el proyecto. por comparar.Tarea repetitiva . las que constituyen los hitos. Semanalmente. que se repite cronológicamente (en el tiempo). Posteriormente va a ser posible visualizar todas las tareas o bien simplemente los hitos realizando filtros que solo nos permiten ver del proyecto ciertos elementos que en un momento merecen un estudio separadas del resto. 301 .Patrón de repetición (Diariamente. es preciso especificar los vínculos entre ellas. Cuándo se vinculan tareas. Vínculos entre tareas: Cuando se tiene la lista de tareas ya debidamente estructurada. existe otro botón que permite desvincular tareas: Desvincular tareas .Programación de tareas. En vista diagrama de Gantt .Texto Guía – Sistemas de Ingeniería Capítulo 9 9. .Seleccionar las dos tareas a relacionar . Dependencias.. En ocasiones aparecen las llamadas delimitaciones. La operación de vincular tareas se realiza mediante el botón de la barra de herramientas estándar ...Vincular tareas. Si la duración de una de ellas cambia.Establecer relaciones entre tareas: Por defecto MS Project define entre tareas el vínculo o relación de fin a comienzo FC (que es la más habitual). Esto ya se ha comentado en este capítulo.4.3 Programación de tareas. En la línea negra con flecha que vincula las tareas se puede hacer doble clic para modificar el tipo de relación a cualquiera de las ya explicadas en este capítulo y que de nuevo se resumen en el siguiente cuadro para sellar conceptos: Lo mismo que para establecer vínculos existe un botón. En un proyecto. es muy frecuente tener que modificar los plazos de las tareas y tener que reprogramar. Las delimitaciones son 302 . . se deberán reprogramar las fechas de las demás tareas que la sucedan (tareas sucesoras). es decir sus dependencias entre tareas: Cuándo comienza una tarea respecto a su predecesora.. son valores siempre positivos. Se denomina tiempo de posposición al periodo de tiempo que se define entre dos tareas vinculadas.. en principio.Información de la tarea . ¿Como se indica?: Para una tarea . Otras delimitaciones que se pueden adjudicar a una tarea son las siguientes: .NCDD: No comenzar después del.Superponer tareas o agregar tiempo de posposición entre ellas: Después de especificada la secuencia de tareas.NFDD: No finalizar después del.Tipo de delimitación . También desde el botón de información de la tarea. MS Project le asocia una delimitación por defecto. Generalmente estas divisiones de deben a causas imprevistas como por ejemplo la enfermedad de un trabajador para el que no se dispone de sustituto. puede comenzar unos días antes.Capítulo 9 Texto Guía – Sistemas de Ingeniería restricciones que se fijan respecto a cuando tiene que comenzar una tarea o bien para cuando tiene que estar concluida. A esto se le denomina tiempo de adelanto. se dice que aparece una restricción o delimitación inflexible. Los tiempos de posposición o de adelanto se pueden especificar como valores absolutos o bien como valores porcentuales de la duración de la tarea en la ficha predecesora de propiedades de la tarea. Sin embargo si la relación entre dos tareas es de FC pero la segunda tarea. es posible que indiquemos retrasos o posposiciones en la fecha de comienzo de alguna de ellas.Establecer fechas fijas para el comienzo o final de una tarea: Cuando se desea. . Si la fecha del proyecto ha sido programada a partir de una fecha de comienzo. Estos tiempos de posposición.solapa avanzado . se va a producir un solapamiento en el tiempo con la tarea predecesora. . Esto se indica en MS Project como una posposición de valor negativo. . que una de ellas comience en una determinada fecha. En el caso de que el proyecto esté programado a partir de una fecha de finalización.. . queda en la primera una especie de laguna o interrupción. esto significará que la segunda de esas dos tareas comenzará 2 días mas tarde de que finalice la primera de ellas. Queda dividida para ser continuada mas tarde. independientemente de las relaciones entre las tareas. 303 . Siempre que se une una tarea a un proyecto. .. (Por ejemplo. la sucesora.Fecha de delimitación. la delimitación para las tareas es que comiencen lo antes posible (LAP). Por ejemplo: Si entre 2 tareas con una vinculación del tipo FC (fin a comienzo) establecemos una posposición de 2 días.. de forma predeterminada. al insertar una tarea. esa tarea va a tener la delimitación de que comience lo mas tarde posible (LMTP).Dividir tareas: En ocasiones una tarea es preciso interrumpirla para acometer otras tareas con lo cual. la tarea estará concluida para antes de tal fecha o bien para tal fecha). Hoja de recursos . A continuación se asigna a cada recurso su tipo según ya se ha comentado (material o trabajo). Ver .Información del recurso . Si además. es posible. en la información de los recursos (de cada recurso) asociar un calendario especial asociado a un recurso por si un determinado recurso no va a estar disponible unos días o bien si lo estará en festivos.Capítulo 9 Texto Guía – Sistemas de Ingeniería Si mediante arrastres reducimos la división hasta "cerrarla". se asume el calendario estándar de MS Project que fue establecido al principio del todo).En el calendario deberemos señalar los días que se desean modificar. Información: En cuanto a calendarios. De cara a poder filtrar (aplicar filtros) posteriormente las tareas que pertenecen a un determinado aspecto. Es interesante asignar recursos cuando se quiere controlar como intervienen las personas. habremos eliminado esa división. Periodo no laborable o bien Periodo laborable no predeterminado. a los recursos les asignamos unos costos. etc. y cada uno con su nombre).ficha Horario del trabajo. (eligiendo predeterminadas.. Recordemos: Podemos definir grupos de recursos pero a las tareas se les asocian recursos. basadas en las dependencias entre las tareas. elegiremos o bien Predeterminadas.. y/o los materiales en las diversas tareas del proyecto. En cuanto a los calendarios. el equipamiento.y seleccionamos el recurso cuyo calendario deseamos modificar. Por lo tanto y como resumen.Tabla . a niveles económicos. desde MS Project se podrá hacer un seguimiento mas detallado de todo. de este modo.Hoja de recursos. en principio todos los recursos se acogen al calendario general establecido para todo el proyecto. 9.Entrada.En el Menú Ver .Después. MS Project solo considerará las duraciones de las fases del proyecto. Si por parte del administrador del proyecto no se introduce información de costos sobre los recursos. Se irán introduciendo los recursos en la tabla de recursos: Menú de Ver ..4 Asignar recursos. 4. aunque a las tareas se asocian recursos y no grupos de recursos. sin embargo. es posible desde el Menú Herramientas de MS Project definir unos nuevos calendarios base con sus horarios y un nombre (diferentes calendarios cada uno con sus franjas horarias. 2.4. quedémonos con estos tres botones: .. se pueden definir grupos de recursos. 304 .En el Menú Proyecto . si varios recursos se acogen a uno de esos calendarios. 3. bastará con asociar esos recursos a ese calendario base. 1... Si el nombre del recurso aparece en rojo es que se encuentra sobre asignado. Esto sucede porque predeterminadamente. se selecciona una tarea y se le asignan los recursos correspondientes teniendo en cuenta que a una tarea se la puede asignar mas de un recurso. . MS Project. la duración de la tarea del ejemplo seguiría siendo de 2 días pese a tener el doble de recursos para efectuarse. Requeriría 2 recursos de a 8 horas: 16 horas sí. Un 100% significa que ese recurso se involucra a jornada completa en el proyecto y en esa tarea concreta. es decir en un día. así. se seleccionarían varios mediante los métodos de selección que conocemos (los propios de Windows utilizando las teclas del teclado Control y Mayús).Capítulo 9 Texto Guía – Sistemas de Ingeniería Para asignar los recursos a las tareas. Si a una tarea se le asocian mas recursos para su ejecución.Duración de las tareas: Una tarea tiene una duración establecida inicialmente en la tabla de tareas. Nota: Si se desea que para todas las nuevas tareas que se definan en el proyecto a partir de un determinado momento se desea tener esa opción desactivada. automáticamente le reduce la duración. En este caso. Desde el Menú desplegable Ver . tiene marcada una casilla de verificación denominada Programación condicionada por el esfuerzo. es decir las 8 horas diarias).Comprobación y modificación de las asignaciones de los recursos. en sus propiedades. 305 . A los recursos se les asigna un trabajo que realizan y ese trabajo. Para asignar recursos tenemos el botón: Asignar recursos . las nuevas tareas no estarán condicionadas por el esfuerzo (inicialmente está activada). es decir. al asignarle ese recurso dicha tarea se realizará en 2 días (8 horas X 2 días = 16 horas). acudiremos a la solapa Programación y desactivaremos esta casilla. estando en la vista de diagrama de Gantt. se expresa en unidades porcentuales. la tarea se llevaría a cabo en la mitad de tiempo. Es muy conveniente revisar esas asignaciones. Pero si además de ese recurso se le asigna después otro recurso igual (o sea 2 fontaneros a jornada completa). y si la jornada laboral es de 8 horas diarias. solapa Avanzado . Por ejemplo: Si a una tarea se le asigna un recurso que resuelve un trabajo al 100% (por ejemplo un fontanero que trabaja a jornada completa. desde Menú Herramientas Opciones. si la duración estipulada para la tarea es de 2 días. pero la duración de la tarea se reduciría a 1 día. Esta opción se encuentra en Información de la tarea. Si se desmarca esa casilla.Uso de recursos podremos ver las asignaciones de recursos a tareas así como comprobar la sobre asignación de recursos. desde el lugar desde donde se configuran todos los productos Microsoft. MS Project para cada tarea. . Hasta aquí normal. de horas extras o tasas por uso. Para los recursos de tipo material.. Nota: Las tasas se asocian a los recursos y los costos fijos a las tareas..Capítulo 9 Texto Guía – Sistemas de Ingeniería 9. En Microsoft Project. En el Menú de Proyecto .Hoja de recursos . Nota: Si se desea que para todos los nuevos recursos de tipo general o de horas extra las tasas sean unas predeterminadas. desde el lugar desde donde se configuran todos los productos Microsoft.) así como la tasa correspondiente. ubicarse en la columna Nombre del recurso en la fila correspondiente al nuevo recurso y escribir el nombre para ese recurso.. es decir desde Menú Herramientas . gráficas de recursos. un seguimiento económico del mismo..cuando estamos viendo los recursos en forma de tabla (Ver Tabla) . Las tasas pueden ser de tipo estándar. Luego. . Existen algunas tareas que presentan siempre un costo fijo. se deberá especificar una etiqueta (siglas que identifican ese material). como por ejemplo los de equipamiento o una subcontrata a destajo (se paga tanto por hacer una tarea de forma cerrada y fija). pero en ese caso no podrá hacerse. es posible no asociar costos en un proyecto. Se pueden mostrar hojas de costos. como es lógico. los tres tipos de tasa están disponibles.Acumular.Hoja de recursos .Costos fijos. puede cambiar el método de acumulación para que los costos de recursos tengan efecto o bien al comienzo o bien al final de la tarea. La tasa de horas extra no está disponible para los recursos materiales.(para introducir un nuevo recurso. docena. costos acumulados.Información del proyecto . Sin embargo. asociar el tipo de recurso: Trabajo o material) .1 Costos. Desde luego. metro lineal. los costos de recursos se prorratean de forma predeterminada. . MS Project permite asociar tasas a los recursos tanto de trabajo como materiales. Ver .. Para los recursos de trabajo. las tareas se cuantifican económicamente y en consecuencia se puede saber cuanto cuesta cada tarea y en definitiva todo el proyecto.Hoja de recursos . Menú Ver . deberemos asociar costos mediante unas tasas a cada uno de los recursos implicados (a su trabajo).. una unidad de medida (Tonelada. De esta forma. Su acumulación se distribuye a lo largo de la duración.Opciones. . acudiremos a la solapa General y desde ese lugar especificaremos las tasas (la estándar predeterminada y la predeterminada para horas extras).Acumulación de costos.Tabla de costos. Si se desea hacer un seguimiento económico de cara a saber si el proyecto se ajusta a un presupuesto fijado para su ejecución. Para concluir las predeterminaremos desde el botón correspondiente de Predeterminar. se podrán calcular desviaciones respecto al presupuesto inicial.5. Se pueden comparar el campo previsto y el campo real para ver las diferencias entre lo previsto y lo 306 . Desde el Menú de Ver .Costo actual.Estadísticas .5 Costos con Ms Project 9.Estudio de costos. . Esto es posible desde Menú Ver . Como ya se ha comentado. Revisar. La ruta crítica se manifiesta como unas tareas con un formato diferente.Identificar la ruta crítica. Aparecen las fechas de comienzo y fin del proyecto. . También se puede ajustar el zoom desde los botones correspondientes de acercar o alejar. podemos aplicar un filtro a dicha vista.Diagrama de Gantt // Menú Ver . tras modificar los parámetros del proyecto. . revisaremos las tareas y los recursos desde sus tablas correspondientes. así como el trabajo y el costo total. .Zoom.Información del proyecto .Mas vistas así como Menú de Ver . Nota: No se pueden aplicar filtros de tareas a vistas de recursos o aplicar filtros de recursos a vistas de tareas.Filtro para . después de haber introducido los recursos y de haber asignado a éstos los costos correspondientes. .6 Revisión del proyecto.. Si deseamos concentrarnos únicamente en determinadas tareas o recursos de la vista activa. Igual que en Access o Excel (si se conocen). Asistente para diagramas de Gantt . Revisar el proyecto para cada uno de los momentos estratégicos llamados hitos. Después de introducidas las tareas.Estadísticas. Menú Proyecto . 307 . También desde ese punto. de ese modo se podrá comprobar si se dispone de liquidez para acometer el resto del proyecto hasta el final del mismo.Vistas . es necesario revisar si por ejemplo los plazos están bien definidos. Si la fecha final del proyecto se ajusta a la real. Podemos obtener información general acerca de las fechas de comienzo y final del proyecto y ver cuándo se realizarán las fases principales. de haber sido relacionadas unas con otras y engarzadas en el tiempo. Existen Autofiltros que mediante unos triangulitos a la derecha de cada titulo de campo nos permiten establecer las condiciones o criterios "in situ" de forma cómoda. las fechas de inicio y finalización es muy conveniente.Capítulo 9 Texto Guía – Sistemas de Ingeniería que realmente acontece en el aspecto económico en un determinado momento del proyecto. Recorriendo las diversas vistas que MS Project proporciona. Dicho formato se puede modificar mediante el asistente para diagramas de Gantt que tiene el programa MS Project. es decir si se ajuntan a las previsiones.Mas tablas.Utilizar las vistas diferentes. se pueden comparar los valores del campo actual y el campo restante. Los filtros de establecen desde el Menú de Proyecto . la ruta crítica es la marcada por aquellas tareas cuya modificación en su duración (recordemos que pueden existir demoras) afecta directamente sobre la fecha de finalización del proyecto. Es importante mimar el seguimiento de estas tareas y para ello MS Project cuenta con la posibilidad de realizar un filtrado de tal manera que solamente se vean como protagonistas dichas tareas: Menú Ver ..Filtrado de información.Diagrama de Gantt.Tareas críticas.Personalizar las vistas. Podemos especificar que el filtro muestre o resalte sólo aquellas tareas o recursos que cumplan los criterios que establezcamos. 9. acercando y alejando el Diagrama de Gantt mediante los zooms. Se hará un seguimiento de la ruta crítica. Menú Ver .Tabla . nuevo programa. proyectos y recursos para obtener mejores resultados empresariales. Nos familiarizaremos con sus vistas principales y sus barras de herramientas. es el momento de conocer de cerca sus pantallas. por lo tanto. .8 Generalidades. idéntica.Ordenar . Desde el Menú de Proyecto . es prácticamente total. hasta un entorno de trabajo basado en intranets donde se comparten las informaciones entre un equipo de personas colaboradoras. si cabe. Mediante las flexibles capacidades de informes y análisis de la solución EPM. son los siguientes: . para algunos.Project Standard 2003 es la nueva versión del programa central de administración de proyectos de Microsoft.Ordenación de los datos. afortunadamente para nosotros. Aprenderemos a desenvolvernos con el entorno y tomar confianza con este. 308 . Project Standard nos permite administrar proyectos de forma independiente en el escritorio de un entorno monousuario. 9. Project Server 2003 y Project Web Access están diseñados para trabajar conjuntamente para formar la solución de Microsoft para la Administración de proyectos empresariales (EPM.Ordenar por. Ánimo por lo tanto. su aspecto (también llamado interfaz). se mantiene como en el resto de los productos Microsoft.Capítulo 9 Texto Guía – Sistemas de Ingeniería . podemos planear. Los productos de Microsoft Office Project 2003. El programa MS Project se instala desde el CD correspondiente.7 Introducción a Microsoft Project 2003 La nueva familia de productos Microsoft Office Project 2003 incluye los programas fundamentales para cubrir necesidades de trabajo que van desde un entorno monousuario desde el que planificar los proyectos. Esta solución permite que las organizaciones sincronicen y compartan las iniciativas empresariales. Una vez conocidos los términos y posibilidades que este programa pone a nuestro alcance como administradores de proyectos. No existe. las empresas disponen de información sobre la que se puede actuar para ayudar a optimizar los recursos. sus barras de botones. Como ya hemos comentado. administrar y comunicar información de los proyectos. 9.Project Professional 2003 (con el que vamos a desarrollar este curso). La versión con la que vamos a realizar este curso es la del reciente MS Project 2003 pero la compatibilidad con las versiones anteriores. Dispone de herramientas conocidas y sencillas de utilizar. Enterprise Project Management). ahora como producto integrado en el conjunto de aplicaciones informáticas de oficina Microsoft Office Project 2003. la filosofía de trabajo y ubicación de las operaciones generales a lo largo de los menús desplegables. con más eficacia que antes. La forma de trabajar es. En este capítulo tomaremos contacto con las principales pantallas de MS Project (a partir de ahora nos referiremos de este modo a MS Project Professional 2003). de no disponer de la versión 2003. así como con sus diferentes elementos. etc. Existen múltiples posibilidades de ordenación que serán estudiadas a fondo en el capítulo correspondiente de este curso. inconveniente en poder seguir este curso si disponemos de otras versiones anteriores tales como MS Project 2000 o bien MS Project 98. Con Project Standard. asignar prioridad al trabajo y alinear los proyectos como una cartera con los objetivos generales de la empresa. Veamos: En el caso de la instalación de MS Project 2003.EXE que aparece en primer lugar en la lista de archivos de la siguiente pantalla (a la derecha): Después de la instalación. para empezar. Cuando ejecutamos el programa mediante un doble clic en el acceso directo del escritorio. Es el que aparece en segundo lugar en la siguiente pantalla (a la derecha). y el archivo principal del programa es en este caso WINPROJ. Es en el proceso de instalación donde se decide en que carpeta ubicarlo. es la carpeta señalada en Dirección (de la siguiente imagen). y tras aparecer en pantalla unos instantes el logotipo de Project Professional 2003 "aterrizamos" en la pantalla principal del programa. y el archivo principal del programa se llama WINPROJ.Capítulo 9 Texto Guía – Sistemas de Ingeniería Es posible tener instaladas simultáneamente dos versiones diferentes del programa en el disco duro del ordenador.9 El entorno de trabajo. La vista corresponde al Explorador de Windows. es la carpeta señalada en Dirección.Salir).EXE. puede ser cerrar el panel de tareas Inicio como indica la siguiente figura: 309 . Una buena opción. En el caso de que la instalación sea de MS Project versión 2000. la ubicación. la ubicación por ejemplo. evidentemente en carpetas distintas. Para salir del mismo deberemos hacer un clic sobre la X de la ventana más exterior (arriba del todo a la derecha) o bien pulsando sobre la opción Salir del menú de Archivo (Menú Archivo . por ejemplo. Inmediatamente nos encontramos con el entorno de trabajo de MS Project: Su pantalla principal. aparecen en el escritorio los iconos de nos proporcionan acceso directo al programa: 9. las podremos realizar desde el Menú desplegable de Archivo Abrir. los menús desplegables (a no ser que configuremos lo contrario desde Menú Ver .Capítulo 9 Texto Guía – Sistemas de Ingeniería El que dicho panel aparezca o no aparezca al comienzo de la sesión es responsabilidad de la casilla de verificación que se encuentra tras el Menú de Herramientas . o bien crear un proyecto nuevo: Estas últimas opciones. Esto puede. haciendo doble clic en el título del menú (por ejemplo en Herramientas.Personalizar . o bien abrir alguno de los archivos de proyecto recientemente utilizados.Barras de Herramientas .Solapa Opciones) solo muestran las opciones mas utilizadas del menú (las mas recientemente usadas). buscar ayuda sobre el tema que tecleemos en el panel de buscar que presenta. arriba) conseguimos que el menú se despliegue por completo.Opciones (desde donde se configuran todos los productos Microsoft). Información: En las nuevas versiones de las aplicaciones Microsoft. Por lo tanto. De este modo no es preciso tener que esperar unos segundos con el puntero posicionado sobre la doble flechita que aparece como última opción del menú resumido que surge inicialmente. 310 . para no "comer pantalla" es aconsejable cerrar este panel. solapa General: ¿Por qué cerrarlo? Porque ofrece posibilidades tales como acceder a la ayuda on-line (si estamos con conexión permanente a Internet) sobre el programa. desorientar. Pues bien. en un primer despliegue de los menús. no desplegando el menú con todos los elementos disponibles. es como para cualquier programa. La barra de vistas se visualiza o no visualiza cambiando el estado de la opción siguiente: Menú Ver .MPT 311 .9.1 Barra de título. el propio programa le adjudica la extensión . Si se encuentra marcada es que se está visualizando dicha barra. Se trata de una franja vertical en el borde izquierdo de la pantalla en la que mediante iconos es sencillo cambiar el modo en que se ven las informaciones que brinda el programa. Así por ejemplo "Mi proyecto1.MPP (Microsoft Project Proyecto). el nombre por defecto que se le asigna es Project1 (recordemos que en Word es Documento1. A la derecha de la barra de titulo disponemos de los botones de minimizar.Capítulo 9 Texto Guía – Sistemas de Ingeniería Una vez cerrado el Panel de Tareas Inicio .. Información: De desear almacenar un archivo como plantilla (con la misma idea de plantillas que en el resto de las aplicaciones Microsoft). acciones que también podemos efectuar desde el menú de control que se despliega haciendo clic en el botón de control que está a la izquierda del todo de la barra de título . La pantalla mostrada debería ser la inicial que se recomienda tener al comienzo de una sesión de trabajo: 9.).. la que presenta el nombre del programa así como el nombre del archivo actual de trabajo. restaurar y cerrar el programa respectivamente . que en Excel es Libro1.mpp" es un nombre correcto de archivo de proyecto creado con MS Project. es aconsejable visualizar en el lateral izquierdo de la pantalla de MS Project la barra de vistas. De desear archivar el proyecto con ese u otro nombre en la carpeta deseada de la unidad de disco deseada. Cuando el usuario aún no ha guardado con ningún nombre un archivo de proyecto.Barra de vistas: . Vamos a realizar una breve descripción de las partes principales de la pantalla inicial de MS Project. la extensión adjudicada será . La barra de título. Son opciones que al elegirlas ofrecen otro submenú .Capítulo 9 Texto Guía – Sistemas de Ingeniería (Microsoft Project Template) -Template significa plantilla en inglés-. la carpeta por defecto para archivar la plantilla de proyecto será la carpeta Plantillas de Microsoft Office y dependiendo de la versión de MS Project. Una opción activada tiene un símbolo de verificado . Se podría decir que el menú contextual tiene las opciones que se pueden aplicar sobre el objeto o lugar en que nos encontramos. La sintaxis de los menús de MS Project es la siguiente: Menú con clic de punta de flecha hacia la izquierda. En este caso. acceder al menú de Ver bastará con pulsar simultáneamente la tecla ALT y la tecla V. (Los puntos suspensivos significan que hay algo mas. Al hacer un clic sobre esta opción se llevará a cabo la operación concreta. En este caso el usuario puede hacer un clic en la casilla a la izquierda de la opción y activarla o desactivarla. Esto lo representaremos desde ahora con ALT+V.) Opciones sin puntos suspensivos.. por ejemplo. En el caso de la versión 2003 la ruta para la carpeta plantillas es la siguiente para un usuario llamado Luís (sesión de Windows iniciada para el usuario Luís): 9. Opciones con triangulito por la derecha.9. Otro método para acceder a los menús desde el teclado es activar la barra de menús pulsando la tecla de función F10 (del teclado del ordenador) y desplazarse por ellos mediante la flechas de movimiento (también del teclado del ordenador). la ruta en el disco duro será una u otra. aparece un pequeño panel (que muestra el mensaje: "Escriba una pregunta" en gris) que nos permite escribir alguna pregunta sobre el programa 312 . Opción de menú con puntos suspensivos. Opciones con una ventana izquierda sensible. La barra de menús desplegables es desde la cual. Si en algún caso se desea activar una opción del menú utilizando el teclado se deben pulsar simultáneamente las teclas ALT y la letra subrayada del menú al cual se quiere acceder. Al hacer un clic sobre esta opción aparecerá un cuadro de diálogo en el que es posible llevar a cabo distintas operaciones . el menú contendrá unas opciones u otras.2 Barra de menús y menús contextuales. Dependiendo de la posición del puntero del ratón. . disponemos de todas las opciones y posibilidades del programa. para acceder a una de las opciones pulsaremos la tecla ENTER cuando estemos sobre la opción. A la derecha de la barra de menús. Menús contextuales. Si queremos.. Al hacer un clic sobre una opción se desplegará el menú de Project . desplegando sus menús mediante clic o doble clic. El método más rápido para acceder a los menús de MS Project es hacer un clic con el ratón sobre las distintas opciones. Los menús contextuales o rápidos aparecen al pulsar el botón derecho del ratón en un lugar de la pantalla. Menú de Proyecto: Sus opciones aportan informaciones sobre el proyecto.Menú de Insertar: Desde él insertaremos tareas.Menú de Archivo: Contiene las acciones a realizar con el proyecto en uso (los proyectos se almacenan en disco como archivos. manejo y personalización de barras de herramientas. otro botón de cerrar sirve para cerrar el proyecto con el que estemos trabajando ahora (documento actual)... enviarlo por correo electrónico a un destinatario. . . cambiar de uno a otro.Capítulo 9 Texto Guía – Sistemas de Ingeniería en caso de dudas. buscar.. .Menú de Ventana: Simultanear la visualización de varios proyectos abiertos en mosaico.Menú de Herramientas: Desde aquí se configura el programa como ya hemos visto en alguna acción. pegados especiales.. compartir la información del proyecto con otros miembros del equipo del proyecto. . ....Menú de Colaborar: Permite trabajando con una aplicación complementaria a MS Project llamada MS Project Server.. esquematizar (hacer esquemas) tareas.. Estos aspectos se realizan mediante opciones de este menú.. agrupar tareas. reemplazar. Esto enlazará con la ayuda del programa para tratar de responder a dicha pregunta. . Se configura y gestiona el asistente del Office (el muñequito ayudante en forma de clip que suele aparecer por pantalla ofreciéndonos sus servicios de ayuda)..Menú de Ver: Permite cambiar las vistas (cosa que también se puede hacer desde la barra de vistas de la izquierda -de tenerla mostrada-). Cada proyecto será un archivo).. permite insertar objetos varios. cambiar los zooms. de hacer esto. estilos. pegar.. se establecen los calendarios del proyecto. A la derecha del todo de la barra de menús.Menú de Formato: Operaciones que tienen que ver con la forma estética (formatos) de las vistas tales como fuentes. permite ordenar. por ejemplo un diagrama de Gantt. ir a. encabezados y pies de cara a imprimir. Por lo tanto uno cierra el programa (el de arriba del todo) y el otro cierra el proyecto vigente o actual dentro del programa. Los menús desplegables de MS Project son los siguientes: . insertaremos un proyecto dentro del actual (con vinculación o sin vinculación ) reorganizándose todo el proyecto. vincular y desvincular tareas.. copiar. Trae una novedosa herramienta para detectar y reparar posibles problemas con el propio programa MS Project. se configuran y asignan los recursos. Abrir un proyecto. Es el botón de cerrar de arriba del todo a la derecha (como hemos visto) el que cierra el programa MS Project.. guardar el proyecto actual. . nos quedaríamos dentro del programa: Cerramos al documento pero no el programa. .Menú de Ayuda (?): Presenta las posibilidades para buscar ayudas sobre aspectos del programa. se establecen los seguimientos sobre el proyecto actual. hipervínculos. imprimirlo.Menú de Edición: Operaciones tales como cortar. propiedades del proyecto en uso. columnas en la hoja de la vista actual. 313 . dividir tareas.. establecer y aplicar filtros. colores. tareas repetitivas (que se repiten a intervalos de tiempo regulares). (como siempre se ha actuado con este menú). recursos. . Pero. Estos botones sirven para agilizar la realización de estas tareas mediante un simple clic con el ratón (tenerlas mas "a mano"). 9. aparece una flecha cuádruple. que llamaremos cuatriflecha.Desde el Menú de Ver . Mover una barra de herramientas. "aparcarlas" o 314 . Si las dejamos flotantes.). y desde donde como con todas las ventanas de Windows. También se puede ocultar una barra pulsando el botón cerrar de la misma cuando no está fusionada o "aparcada" con los bordes de la ventana de documento. Visualizar una barra de herramientas. También llamadas barras de botones. Al sobrevolar dicho relieve.Barra de herramientas. de color azul marino o gris (según versión de Word) con el nombre de la barra de herramientas. eliminar botones que nosotros no utilizamos. Desactivar con un clic la casilla a la izquierda de la barra de herramientas elegida en el Menú de Ver . tiene a su izquierda del todo. (agregar botones. la estándar. presentarán una pequeña barra de título. lo cual manifiesta la posibilidad de arrastrar en cualquier dirección de la pantalla dicha barra de botones. decir que podemos arrastrarlas (las barras de herramientas) a cualquier posición de la pantalla o bien dejarlas "flotantes" a modo de pequeña ventana por el medio de la pantalla.9.9. para comprobar que barras de herramientas tenemos "sacadas". En principio las mas normales para tener en pantalla son la Estándar y la de Formato.. tiene en su zona central los botones que permiten dar forma a los textos es decir. comienza con un botón que tiene dibujado un folio en blanco y la segunda. podremos desplazarla arrastrando hacia donde queramos incluso "arrimando" a un lateral o zona de la pantalla. A partir de ahí.Barra de herramientas. Las barras de botones que se recomienda inicialmente tener debajo de la de menús desplegables son la Estándar y la de Formato (como en la imagen).Capítulo 9 Texto Guía – Sistemas de Ingeniería 9. Activar la casilla izquierda (mediante clic) de la barra de herramientas elegida en el Menú desplegable de Ver .4 Gestión de barras de herramientas. la de formato. 2.3 Barras de herramientas.Barras de Herramientas (las que estén marcadas son las que están visualizadas). En resumen. cambiarlos de posición. desde donde podemos arrastrar dicha barra de botones a otro "flanco" de la pantalla. las barras de herramientas también se pueden personalizar. cursiva: K y subrayado: S. La primera. Cualquier barra de herramientas o botones. El número de barras de herramientas visibles en pantalla es variable. permiten realizar de una forma rápida y por medio del ratón algunas de las opciones de uso mas frecuente de Word. formato a los textos: negrita: N.Haciendo clic con el botón derecho del ratón en cualquier botón de cualquier barra (llegamos al mismo panel). lo podemos hacer de dos formas: 1. un pequeño "nervio" gris o "palito" en relieve (en la versión 2003 es una pequeña línea vertical punteada ).. Ocultar una barra de herramientas. ver todas las acciones o comandos (a la derecha) 315 .Capítulo 9 Texto Guía – Sistemas de Ingeniería fusionarlas debidamente.9. La barra de herramienta según su posición pueden ser flotantes o estar fusionadas con los contornos de la ventana de documento. Aviso: En ocasiones. bastará con hacer un arrastre sobre el borde de la barra. el aspecto de la ventana de MS Project puede variar mucho. que entre otras posibilidades. las barras de herramientas que se encuentran fusionadas o "aparcadas" en vez de encontrarse "en paralelo". Si se desea añadir o quitar de cierta barra de herramientas cualquier botón sea de la naturaleza que sea. picamos sobre el pequeño triángulo de la esquina derecha de su barra de título. Personalizar nos da paso al siguiente panel. por este motivo. Solo se puede hacer con barras flotantes (cuando se ve el título de la barra). esté aparcada o no. Accederemos a un menú de botones como el anterior. para añadir o eliminar botones.5 Propiedades de la barra de menú Cambiar el tamaño de una barra. En el caso de las barras de herramientas flotantes (como la de la figura anterior). ¿Que hacer? Deberemos arrastrar una de ellas posicionándola en paralelo debajo de la otra. en el que se puede hacer clic sobre cualquier elemento para añadirlo o eliminarlo de la barra de herramientas. abajo del todo podemos encontramos la opción de Personalizar. provocando de este modo desconcierto al no ser encontrados ciertos botones.. Comprobamos que se acoplan automáticamente. En el menú que se despliega mostrando las barras de herramientas disponibles así como las que se encuentran visualizadas y las que no. 9. se encuentran "empalmadas" una a continuación de la otra (en la misma horizontal). nos permite desde la solapa superior de Comandos. También podemos variar el tamaño vertical u horizontalmente arrastrando desde sus bordes como cualquier ventana Windows. Añadir o quitar botones de una barra de herramientas. alguna de las dos barras no se muestra completa (con todos los botones que el usuario espera de ella).. el puntero del ratón cambia de forma y adquiere la de una doble flecha. En función de las barras de herramientas visibles y su posición. mediante el menú de contexto (clic con el botón derecho del ratón) sobre cualquier botón de cualquier barra. Elegir ahora agregar o quitar botones y en este caso la opción Formato. Se trata de un panel.Texto Guía – Sistemas de Ingeniería Capítulo 9 clasificados por categorías (a la izquierda).9. También tener acceso a los diversos tipos de informe de que dispone el programa. 316 . Con lo cual dicho comando. Para eliminar un botón cualquiera de una barra de herramientas (quitar un botón) basta con arrastrarlo fuera de la barra mientras se mantiene pulsada la tecla ALT. en forma de botón queda en la barra a la que lo hemos arrastrado. desde el que a modo de guión y a modo de asistente nos permite seguir unos pasos en secuencia. Se trata de una barra de herramientas (visualizable o no) que cuando se tiene cierto rodaje con el programa nos permite acceder rápidamente a las operaciones mas habituales relativas a tareas y recursos así como las que nos posibilitan realizar un seguimiento de los proyectos. . 2. Para añadir alguno de esos comandos a una de las barras de herramientas visualizadas basta con arrastrar ese comando (su icono) hasta la posición en la barra de herramientas deseada siguiendo estos 3 pasos: 1. nos coloca en el lateral izquierdo de la vista actual del programa el panel de Guía de proyectos. idóneos para una buena planificación de un proyecto. Así por ejemplo en la categoría Archivo encontramos todas las acciones o comandos de manejo de archivos de que dispone MS Project. 9. 3.6 Guía de proyectos. El primer botón de esta barra. Coloca en el lateral izquierdo de la pantalla de MS Project una tira vertical de elementos (en forma de iconos) que permiten de forma rápida cambiar el aspecto. aquí llamado vistas. 9... 317 . . las hojas de recursos. Podemos pasar rápidamente a ver el calendario.Uso de recursos: Vista que muestra las tareas agrupadas bajo cada recurso. . . la vista diagrama de Gantt. Muestra las tareas y sus dependencias en forma de rectángulos relacionados.Mas vistas: Otras vistas de las que dispone MS Project.Capítulo 9 Texto Guía – Sistemas de Ingeniería Presenta . Se activa o no desde la opción correspondiente del Menú Ver.9. Nota: La vista con la desarrollaremos el trabajo inicialmente a través del programa MS Project va a ser la vista DIAGRAMA DE GANTT. Visualiza recursos frente a tareas. Desde aquí se programan las listas de tareas. Recursos y grupos de recursos a lo largo del tiempo en forma de gráfica. . del programa. así como las cargas de trabajo para los distintos recursos.Hoja de recursos: Todo lo relativo a los recursos se gestiona desde esta vista. . Nota: El que la barra de herramientas llamada Guía de proyectos aparezca o no. Las vistas que podemos alternar en pantalla mediante esta barra de vistas son las siguientes: . Permite estudiar los costos de los recursos.Opciones.. Desde luego hay usuarios que la desactivan porque a sus posibilidades tenemos acceso desde otros menús del programa y sin embargo no "les come" sitio en pantalla. Permite comparar lo programado (línea base) con la programación actual en un proyecto en modo diagrama de Gantt.. Desde esta vista se puede apreciar la ruta crítica de un proyecto. el diagrama de red.Diagrama de red: Antes llamado diagrama de Pert.Gráfico de recursos: Vista que muestra las asignaciones y costos de los recursos del proyecto.Calendario: Calendario temporal que muestra las tareas y sus duraciones. .Uso de tareas: Lista de tareas con los recursos asignados para cada tarea.Gantt de seguimiento: Muestra la línea base del proyecto. . inicialmente en pantalla al ejecutar el programa MS Project. depende del estado de la casilla de verificación que se encuentra bajo la solapa Interfaz del panel accedido desde Menú de Herramientas .7 Barra de vistas. .Diagrama de Gantt: Listado de tareas a la izquierda y diagrama de barras horizontales (de Gantt) a la derecha. 10Barra de estado. 9. se puede optar por visualizar unos u otros detalles o campos en ella (Menú de Formato . Las vistas las podemos también cambiar desde el las posibilidades del menú de Ver.. filas y columnas. en celdas. para otras vistas menos utilizadas pero que también están en el programa. Esta es una sencilla manera de mostrar mas información en pantalla para un proyecto. El espacio de trabajo en MS Project se denomina vista. la podemos arrastrar como siempre en Windows para dar mas anchura a la zona que se desee (bien zona izquierda o bien zona derecha).9. En la zona inferior de la pantalla aparece esta barra indicando aspectos como si se tienen bloqueadas las teclas mayúsculas. podemos desde Excel. la hoja de recursos. De esta forma. a guardarlo. 9. revisar sus propiedades e información asociada. Las barras de desplazamiento horizontal son independientes para cada tabla o zona de pantalla. Información: Si tenemos en una hoja de Excel. dependiendo de la que sea. primero se elige una vista (por ejemplo desde la barra de vistas). Nada especial que mencionar. traer datos a la tabla correspondiente de la vista actual en MS Project. cerrarlo.Dividir. Desplaza ambas zonas simultáneamente y de forma sincronizada. La línea separadora entre la zona izquierda y zona derecha. El programa dispone de numerosas vistas y cada una permite la entrada. En este menú tenemos la opción de Mas vistas.8 Zona de vista. visualización y análisis de datos del proyecto. 318 . podremos dividir horizontalmente la vista actual en dos zonas: La parte superior y la zona inferior. En dichas tablas. se decide visualizar una determinada tabla (Menú de Ver .11 Combinaciones de vistas. Las tablas de las vistas se recorren visualmente en pantalla ayudados de las barras de desplazamiento. en esa vista. Mediante la opción del Menú Ventana . mediante la barra de vistas y tras posicionarnos en una de las dos zonas (arriba o abajo) podremos visualizar.. y una vez visualizada una tabla. edición de información. la información se ubica. a modo de hoja de cálculo. 9.9. por ejemplo recibida mediante e-mail.. mientras la gráfica de las tareas (a la derecha) permanece inmóvil. Para deshacer la división (para quitarla).9. una relación de tareas o recursos.10 Creación de un Proyecto Comenzamos aquí. En este capítulo aprenderemos a crear un archivo de proyecto. En resumen. La vista predeterminada y mas práctica en principio es la vista de diagrama de Gantt. la barra de desplazamiento vertical de la derecha es común para la zona izquierda y derecha de la vista. el trabajo real con MS Project.Capítulo 9 Texto Guía – Sistemas de Ingeniería 9.9 Barras de desplazamiento. por ejemplo en la parte superior de la pantalla de nuestro proyecto la vista diagrama de Gantt mientras que en la zona inferior de la división. Las vistas muestran en pantalla la información en forma de tabla.Tabla). tan sencillamente como copiando y pegando. Por ejemplo en la vista diagrama de Gantt podemos desplazar horizontalmente la barra de desplazamiento de la tabla de las tareas (a la izquierda).Detalles). Sin embargo. si estamos para editar en modo insertar o en modo sobrescribir.9.. bastará con colocarse en la vista que se desea mantener y entrar de nuevo a Menú ventana 9. . es decir. 9. Tras ejecutar el programa. ¿Que significa esto? Que en la barra de tareas inferior de Windows aparecen 2 tareas de Project.mpp abriendo en pantalla una nueva sesión de MS Project... crear un nuevo proyecto en blanco (Crear un proyecto nuevo. se creará un nuevo archivo de proyecto llamado Project2.1 Creación de un archivo de proyecto. o bien crear un archivo de proyecto nuevo..10. O bien.  A partir de la nada. una con un proyecto llamado Project1 y otra con otro proyecto en blanco llamado Project2. abrir un archivo de proyecto ya existente y almacenado en disco.Capítulo 9 Texto Guía – Sistemas de Ingeniería abrirlo así como protegerlo mediante contraseña (entre otras cosas). También aparece el panel de tareas inicio que nos permite... En este segundo caso (el de crear un archivo de proyecto nuevo) podremos optar por crear un proyecto nuevo bajo dos posibilidades:  A partir de un proyecto ya existente (archivo . A continuación aparece la vista de un panel de tareas (junto al lateral izquierdo de la pantalla) donde en su parte inferior y a modo de guión de textos azules. en su parte inferior. vamos a cerrar ese panel y comenzar desde cero.. Para comenzar. Muestra los nombres de los mas recientes proyectos utilizados y permite mediante la opción Mas. También hablaremos de conceptos de Windows fundamentales para el correcto uso de los archivos y también de los archivos de plantilla. examinar en los discos en busca del archivo deseado que se utilizará como base de partida.). Si decidimos crear un nuevo proyecto en blanco (Crear un proyecto nuevo. aparece en pantalla una vista diagrama de Gantt (la vista por defecto en MS Project) con un proyecto vacío nuevo y en blanco como base para empezar a trabajar en un nuevo proyecto (este proyecto inicial es llamado Project1. y aprender a realizar las opciones y todos los pasos por nosotros mismos.. ..).MPP en disco). con asistentes nos va a guiar en las fases propias de elaboración de un proyecto (desde el principio). 319 . Comenzamos.mpp inicialmente).. ¿De que depende todo esto? Como todos los programas Microsoft. la fecha de comienzo del proyecto entre otros datos. entre otros parámetros podemos establecer que la vista inicial sea diagrama de Gantt u otra. Desde la solapa Vista. El que inicialmente también aparezca el panel de tareas del que ya hemos hablado es algo que puede suceder o no.Cerrar el proyecto llamado Project1 inicial que aparece en pantalla (sin guardar los cambios en el caso de que sea preguntado) y desde el propio Menú de Archivo . También se define el nombre de usuario del programa y el número de archivos recientes que aparecen en la parte inferior del menú desplegable de archivo para poder abrir de forma rápida proyectos recientes (entre otras 320 .Nuevo. También podría suceder que la vista inicial con la que nos encontramos al crear un nuevo proyecto no fuera la vista diagrama de Gantt. Esto nos dejaría en la misma situación anterior de un nuevo proyecto vacío como punto de partida para trabajar. MS Project se configura desde Menú Herramientas Opciones. crearemos un nuevo proyecto en blanco. También se configura desde este panel el formato de fechas que va a utilizar el programa y algunos detalles mas que se activan o no mediante casillas de verificación: Desde la solapa General de ese mismo panel podemos establecer que aparezca o no la vista de tareas al inicio de un nuevo proyecto y si aparecerá o no de forma automática el panel de propiedades del proyecto al crear uno nuevo. ubicándonos en la vista diagrama de Gantt.Capítulo 9 Texto Guía – Sistemas de Ingeniería Otra forma de comenzar un proyecto es cerrar mediante Menú Archivo . aparezca de forma automática el panel (cuadro de diálogo) de información del proyecto para establecer en él. Información: Es posible que al crear un proyecto nuevo. y por este motivo la fecha de finalización aparece atenuada ya que no se puede fijar en este momento. aparece un calendario Windows desde el cual podemos avanzar o retroceder meses (con sendos botones con triangulito negro en la parte superior). Por defecto MS Project propone como fecha de comienzo la fecha actual del sistema. 9. En cualquier caso. hayamos elegido el camino que hayamos elegido para crear un nuevo proyecto. Desde aquí se establece si las fechas iniciales del proyecto se fijan a partir de la fecha de comienzo o bien a partir de la fecha de finalización (ver explicación en capítulo-1). En ese mismo panel. años y de este modo indicar el día de la fecha deseada como fecha de inicio del proyecto. Al aceptar el panel. Al señalar una fecha queda fijada como fecha de inicio del proyecto.Capítulo 9 Texto Guía – Sistemas de Ingeniería cosas). Desplegando en el cuadro de Fecha de comienzo mediante el triangulito derecho. 321 .11 Información del proyecto. el de la fecha de comienzo. Para ello. abriremos el panel de información del proyecto desde Menú de Proyecto . aparece inmediatamente debajo un cuadro donde se fija Programar a partir.Información del proyecto. el panel derecho de la vista diagrama de Gantt se desplaza hasta aparecer dicha fecha en pantalla. Para nuestro ejemplo fijaremos la fecha 1 de junio de 2004. el cuadro que aparece atenuado es el contrario. la fecha de finalización por lo tanto quedará supeditada a la duración de las tareas que compongan el proyecto. lo primero que conviene especificar es la fecha de comienzo del proyecto. Si se programa a partir de la fecha de finalización. Por defecto aparece fijado este cuadro en Programar a partir de la fecha de comienzo: Así. Palabras clave: Podemos especificar palabras que permitan buscar mas tarde los proyectos que contengan ciertas palabras como clave. Un título. de esa categoría. almacena junto al archivo de proyecto una imagen con el contenido de la vista diagrama de Gantt. Base del hipervínculo: Es la ruta inicial que aparecerá en todos los cuadros del programa en donde el usuario pueda introducir una ruta en disco o bien un hipervínculo de Internet. Por ejemplo: tiendas.. En éste panel.Propiedades. Como vemos. permitirían bajo estos términos buscar un archivo de proyecto desde el Explorador de Windows mediante la opción Buscar. Administrador: Persona encargada de administrar el proyecto "a pie de campo". Sobre el terreno. Categoría: Podemos utilizar este cuadro para encuadrar este proyecto en una categoría.. Al igual que en los demás programas de la familia Office de Microsoft (Word. un nombre de autor o administrador del proyecto. la solapa activa inicialmente es la solapa Resumen. se recomienda introducir: Título para el proyecto: Un nombre representativo y corto. desde el panel de abrir un proyecto.. Por ejemplo las siguientes palabras clave: tienda Calahorra telefonía. datos estadísticos. una descripción. al seleccionar el tipo de vista bajo el cual se 322 . Comentarios: Texto con información interesante sobre el proyecto.. Autor: Quien gestiona el proyecto desde MS Project. Para acceder al cuadro de diálogo de propiedades del proyecto debemos abrir el Menú de Archivo . De este modo.. Asunto: Frase que describe brevemente de que trata el proyecto. si es marcada.. Access. Excel. Organización: Nombre de la empresa para la que se hace el proyecto.12 Propiedades de un proyecto. De este modo podremos buscar mas tarde todos los proyectos de características similares. De este modo y gracias a estas informaciones será mas fácil localizar y buscar un archivo de proyecto en un futuro. Guardar vista previa: Esta casilla de verificación.Capítulo 9 Texto Guía – Sistemas de Ingeniería 9. Facilita la búsqueda de todos los proyectos con un mismo administrador.) es posible fijar una serie de informaciones junto al archivo de proyecto. 323 . Es una opción interesante pero hace que "engorde" el tamaño de los archivos de proyecto.Capítulo 9 Texto Guía – Sistemas de Ingeniería desean ver los archivos en esta ventana como Vista previa. podamos visualizar en la mitad derecha del panel una pequeña parte del contenido de los archivos (así sabremos mas sobre si es ese o no el proyecto que deseamos abrir). esto se ve siempre al esperar un servicio. 324 .Texto Guía – Sistemas de Ingeniería Capítulo 10 CAPÍTULO 10 SISTEMAS DE COLAS 10. Los modelos sirven para encontrar el comportamiento de estado estable. no se sabe con exactitud en que momento llegarán los clientes. es decir. en la misma construcción el hecho de empezar algún ítem requiere la espera de la finalización de uno o varios ítems. “hacemos colas” en la caja de un supermercado y nos formamos para recibir el servicio en la oficina de correos. El ejemplo que sigue demuestra como se usan medidas para diseñar una instalación de servicio. Una Cola es una línea de espera y la teoría de colas es una colección de modelos matemáticos que describen sistemas de líneas de espera particulares o sistemas de colas. todo lo que cabe esperar es reducir el impacto desfavorable a niveles tolerables. Esta información. puede ser los trabajos que esperan ser procesados en una máquina. En este capítulo se aplica la teoría de colas. También el tiempo de servicio no tiene un horario fijo. se usa. ya que el cliente no llega a un horario fijo.3 ¿Por qué estudiar sistemas de colas? El estudio de las líneas de espera trata de cuantificar el fenómeno de esperar formando colas. como la longitud promedio de la cola. Esto no es sencillo. para determinar la capacidad de servicio apropiada.1 Introducción a sistemas de colas El sistema de colas es parte de la vida diaria. De hecho. la espera de los automóviles en luz roja. 10. El problema es determinar que capacidad o tasa de servicio proporciona el balance correcto. y la utilización promedio de las instalaciones. Y este fenómeno no se limita a los humanos. 10.2 Definición. el tiempo promedio de espera en ella. los cronogramas de vuelos. junto con los costos pertinentes. como la longitud promedio de la línea y el tiempo de espera promedio para un sistema dado. Esperamos para entrar a un restaurante. Desafortunadamente no se puede eliminar la espera sin incurrir en gastos desmesurados. mediante medidas representativas de eficiencia. entonces. o determinístico. El estudio indica la siguiente relación entre la cantidad de depósitos de escombros y el tiempo de espera de las volquetas: 1 2 3 4 5 6 7 Cantidad de depósitos Tiempo de espera promedio (min. 10. sí permite (por extraño que parezca) resolver de forma más sencilla muchas situaciones en las que..6 15.. de los clientes sucesivos. resultado que solo se puede alcanzar con 6 o más depósitos. en realidad. Al llegar a la instalación pueden recibir servicio de inmediato. será importante conocer el patrón de probabilidad según el cual la fuente de entrada genera clientes.7 24. o esperar en una cola o línea de espera. la población es finita pero muy grande.1 Bartos es una empresa constructora. aún siendo finita la población potencial. Podemos considerarla finita o infinita. El gerente desea reducirlo a unos 21 minutos. Por lo general. como en el funcionamiento de una oficina de correos. Dicha suposición de infinitud no resulta restrictiva cuando. con 4 depósitos de escombros.7 27.5 40. en forma automática se “atrae” a un cliente que espera.2 20. Desde punto de vista del análisis de las colas. como en la llegada de solicitantes a la entrevistas de trabajo.Capítulo 10 Texto Guía – Sistemas de Ingeniería Ejemplo de aplicación 10. fijando su distribución de probabilidad. Fuente de entrada o población potencial: Es un conjunto de individuos (no necesariamente seres vivos) que pueden llegar a solicitar el servicio en cuestión. si la instalación esta ocupada. los tiempos entre llegadas y de servicio pueden ser probabilísticos. su número de elementos es tan grande que el número de individuos que ya están solicitando el citado servicio prácticamente no afecta a la frecuencia con la que la población potencial genera nuevas peticiones de servicio. Suponiendo que los tiempos de llegada de clientes consecutivos son 0<t1<t2<. Aunque el caso de infinitud no es realista. la instalación se vuelve inactiva hasta que llega un cliente nuevo.4 Elementos de un modelo de cola Los actores principales en una línea de espera o cola son el cliente y el servidor. el proceso de llegada se representa con el tiempo entre llegadas.2 32. para una obra de construcción civil que consta en demoler un edificio de gran envergadura y construir ahí mismo otro edificio. si lo hay.tk-1. Cuando en una instalación se termina un servicio.) 44. de la cola. Los clientes se generan en una fuente. Lo más habitual es tomar como referencia los tiempos entre las llegadas de dos clientes consecutivos: T{k} = tk .. Si la cola esta vacía. El gerente encarga que se haga un estudio para investigar las quejas que existen de las diferentes volquetas al querer botar los escombros después de la demolición debido a que cuando esta botando una volqueta en un depósito se acumula o hacen colas otras volquetas que también necesitan botar escombro. y el servicio se describe con el tiempo de servicio por cada cliente.2 Al examinar esos datos se ve que hay un tiempo promedio de espera de 28 minutos para el caso actual de 4 depósitos. Cliente: Es todo individuo de la población potencial que solicita servicio. 325 . La de dar servicio en orden aleatorio SEOA o SIRO (service in random order). primero en servirse PLPS o FIFO (first in first out). Una vez que se completa el servicio. Disciplina de la cola: que representa el orden en el que se seleccionan los clientes de una cola. Aunque es obvio que en la mayor parte de los casos reales la capacidad de la cola es finita. primero en servirse ULPS o LIFO (last in first out). las llegadas se convierten en salidas. a efectos de simplicidad en los cálculos. Lo más sencillo. Capacidad de la cola: Es el máximo número de clientes que pueden estar haciendo cola (antes de comenzar a ser servidos). 326 . tratando de reducir la espera. o es el modo en el que los clientes son seleccionados para ser servidos. también conocida como LCFS (last come first served) o pila: que consiste en atender primero al cliente que ha llegado el último. es suponerla infinita. El primero en llegar primero en ser servido es una regla común. pero podría servir con prioridades o siguiendo alguna otra regla. los trabajos urgentes en una construcción se realizan antes que los trabajos normales. Las llegadas son las unidades que entran en el modelo para recibir el servicio. Siempre se unen primero a la cola. También. es decir. También pueden rehusar totalmente a la cola por haber esperado demasiado. Un modelo de colas puede dividirse en sus dos componentes de mayor importancia. El comportamiento de los clientes en espera juega un papel en el análisis de las líneas de espera.Capítulo 10 Texto Guía – Sistemas de Ingeniería Normalmente. si no hay línea de espera se dice que la cola esta vacía. la cola y la instalación de servicio. mientras que en el caso de que la fuente de entrada sea finita. también llamada FCFS (first come first served): según la cual se atiende primero al cliente que antes haya llegado. Los clientes “humanos” se pueden saltar de una cola a otra. que selecciona a los clientes de forma aleatoria. puede suponerse finita o infinita. los clientes o servicios se pueden seleccionar en la cola con base en cierto orden de prioridad. De la cola. 10. no es una gran restricción el suponerla infinita si es extremadamente improbable que no puedan entrar clientes a la cola por haberse llegado a ese número límite en la misma. de acuerdo con la regla para decidir cuál de las llegadas se sirve después. cuando la población potencial es infinita se supone que la distribución de probabilidad de los Tk (que será la llamada distribución de los tiempos entre llegadas) no depende del número de clientes que estén en espera de completar su servicio. La disciplina de último en llegar. las llegadas van a la instalación de servicio de acuerdo con la disciplina de la cola. es un factor importante en el análisis de los modelos de colas. la distribución de los Tk variará según el número de clientes en proceso de ser atendidos. Las disciplinas más habituales son: La disciplina es la de primero en llegar.5 Costos de los modelos de colas. Por ejemplo. De nuevo. Como se puede ver análogamente en los “clientes” o actividades en una construcción. Entonces el propósito es encontrar el balance adecuado para que el costo total sea el mínimo. 10. 10. Figura 10. pero aumenta el costo de servicio y el costo total disminuye.Texto Guía – Sistemas de Ingeniería Capítulo 10 Ambas componentes del sistema tienen costos asociados que deben de considerarse. Conforme aumenta el servicio disminuyen los costos de espera. Esperar significa desperdicio de algún recurso activo que bien se puede aprovechar en otra cosa y esta dado por: Costo total de espera = Cw × L Donde Cw = costo de espera por hora (en Bolivianos) por llegada por unidad de tiempo y L= longitud promedio de la línea. Aquí hay que tomar en cuenta que para tasas bajas de servicio.1 Modelo de decisión para línea de espera basado en costo 327 . sin embargo. se experimenta largas colas y costos de espera muy altos. finalmente se llega a un punto de disminución en el rendimiento.6 Costo de espera.7 Sistema de costo mínimo. Secretaria Copiadoras Hospital 328 . cartas. ensambles intermedios en una fábrica. 10. Ejemplos de sistemas de colas: Situación Llegadas Aeropuerto Aviones Aeropuerto Depto.1 representa un modelo característico de costo (en Bolivianos por unidad de tiempo). incendios. en especial cuando el comportamiento humano influye sobre el funcionamiento del caso. en el que el costo del servicio aumenta al incrementar el nivel del servicio. de bomberos Compañía telefónica Lavado de carros Pasajeros Alarmas de incendio Números marcados La corte Casos Panadería Clientes Carga de camiones Oficina de correos Crucero Autos Camiones Cola Aviones en carreteo Sala de espera Incendios Pista Avión Depto. Las llegadas pueden ser personas.8 Estructuras típicas. En la siguiente tabla se muestran algunos ejemplos de varios sistemas de colas. De Bomberos. Llamadas Conmutador Autos sucios Mecanismo de lavado Casos atrasados Clientes con números Camiones en espera Cartas Buzón Cartas de negocios Reproducción Autos Subensamble Notas de dictado Pedidos Hospital Pacientes Autos en línea Inventario en proceso Cartas para mecanografiar Trabajos Personas enfermas Fábrica Mecanismo de Servicio Juez Vendedor Muelle de carga Empleados por correos Crucero Estación de trabajo. El obstáculo principal para implementar los modelos de costo es que se pude dificultar la obtención de una estimado fiable del costo unitario de espera. La figura 10. carros. etc.Texto Guía – Sistemas de Ingeniería Capítulo 10 Se puede analizar los resultados del análisis de colas en el contexto de un modelo de optimización de costos. en el que la suma de los costos de ofrecer el servicio y de esperar se reduzca al mínimo. una línea con múltiples servidores. 329 . Aleatoriedad quiere decir que la ocurrencia de un evento (por ejemplo. es característico de los bancos y las tiendas de autoservicio.2.Texto Guía – Sistemas de Ingeniería Capítulo 10 Permitiendo que varíen el número de colas y el número de servidores. aquél en que cada servidor tiene una línea de separada. es una línea con servidores en serie. puede describir una fábrica o una construcción. Figura 10. El tercer sistema.2. el inicio o “llegada” de un evento o la terminación de un servicio) no esta influido por el tiempo que haya transcurrido desde la ocurrencia del evento anterior. El cuarto sistema. la llegada de los clientes se hace en una forma totalmente aleatoria. se llama un sistema de un servidor y una cola o puede describir un lavado de carros automático o un muelle de descarga de un solo lugar. es típico de una peluquería o una panadería en donde los clientes toman un número al entrar y se les sirve cuando llega el turno. El primer sistema que se muestra en la figura 10.9 Papel de la distribución exponencial En la mayor parte de los casos de colas. Cada línea de espera individual y cada servidor individual se muestran por separado.2 Modelos de sistemas de colas 10. pueden hacerse los diagramas de los cuatro tipos de sistemas en la figura 10. El segundo. El operador de la máquina dice que esta “tiene la costumbre” de descomponerse cada noche a eso de las 8:30 p. t  0 También se sabe que para la distribución exponencial E t   Pt  T   T 1   e  t dt 0  1  e  T El hecho de de que la distribución exponencial sea totalmente aleatoria se ilustra con el ejemplo siguiente: si ahora son las 8:20 AM y la última fue a las 8:02 A. 330 .Texto Guía – Sistemas de Ingeniería Capítulo 10 Los tiempos aleatorios entre llegadas se describen en forma cuantitativa. t  S  Pt  T  S   Pt  S  Pt  S  e   (T  S )  e  s  e T  Pt  T  Ejemplo de aplicación 10. A este resultado se le llama amnesia o falta de memoria de la exponencial. Dada la distribución exponencial f (t ) que representa el tiempo t entre eventos sucesivos. Pt  T  S . con la distribución exponencial. en los modelos de colas. El “tiempo a la falla” (tiempo entre fallas) de la máquina (o de su unidad de reserva) es exponencial y sucede cada 40 minutos. la cual se define a continuación: f (t )  e  t .M..m. y es totalmente independiente del tiempo que haya transcurrido desde la ocurrencia del último evento (de las 8:02 a las 8:20). si S es el intervalo desde la ocurrencia del último evento. la propiedad de amnesia implica que Pt  T  S t  S   Pt  T  Para demostrar este resultado se observa que la exponencial con media Pt  Y   1  Pt  Y   e  Y Así. Pt  T  S t  S   1  . la probabilidad de que la siguiente llegada sea a las 8:29 es una función solo de las 8:20 a las 8:29. analizar lo que dice el operador. en promedio.2 Una máquina en servicio para una constructora tiene una unidad de reserva para sustituirla de inmediato cuando falle. la probabilidad de que suceda una falla a las 8:30 P. ya se que no puede ser correcto. t  0 En cuanto a lo que dice el operador.10.M. h 2    1  h  0(h 2 ) Po (h)  e  h  1  h  2! 331 . 10.5t .5  10    60  f t   0. la probabilidad de que lo que dice el operador se cierto esta noche es:  10  1. la 40 distribución exponencial del tiempo a la falla es f t   1.22   1 e 60   Que es baja. La probabilidad de que una falla suceda a las 8:30 P. Si en este momento son las 7:00 P.M.. aumenta hasta aproximadamente 0. si ahora son las 8:20 P. La distribución exponencial se usa para describir el tiempo entre llegadas en el modelo de nacimiento puro. y la frecuencia de llagadas es λ clientes por unidad de tiempo.5e 1.1 Modelos de nacimientos puros Se define: Po (t) = probabilidad de que no haya llegadas durante un espacio de tiempo t Como el tiempo entre llegadas es exponencial.9 (compruébelo). Así. Por ejemplo. en el que solo permiten llegadas y el segundo es el modelo de muertes(s) pura(s). es totalmente aleatorio.M.10 Modelos con nacimientos puros y muertes puras (relación entre las distribuciones exponenciales y de poisson) En esta sección se describen dos situaciones en las colas: la primera es un modelo de nacimientos(s) puro(s).M.. no se puede usar para respaldar ni refutar esa afirmación.5 fallas por hora. entonces Po (t) = P {tiempo entre llegadas ≥ t} = 1 – P {tiempo entre llegadas ≤ t} = 1  (1  e  t )  t = e Para un intervalo suficientemente pequeño h > 0. en el que solo se permiten salidas. por el valor de esa probabilidad depende de la hora del día (en relación con las 8:30 P. por que se opone al hecho de que el tiempo entre fallas es exponencial y. y que se debe confiar en las características de la distribución exponencial (aleatoriedad total) para refutar la afirmación.Texto Guía – Sistemas de Ingeniería Capítulo 10 La tasa promedio de fallas de la máquina es   60 = 1. Estos 2 valores extremos indican que no se puede analizar la afirmación del operador con base en estimaciones de probabilidad. 10..M. y el tiempo entre salidas con el modelo de muerte pura.) con la que se calcula. en consecuencia. solo puede haber cero llegadas durante t + h si no hay llegadas durante t y durante h.Texto Guía – Sistemas de Ingeniería Capítulo 10 La distribución exponencial se basa en la hipótesis que durante un tiempo suficientemente pequeño h > 0. n  0 h Po (t  h)  Po (t )  Po (t ). se obtiene Pn` (t )  lim h0 Po` (t )  lim h0 En donde Pn (t  h)  Pn (t )  Pn (t )  Pn 1 (t ). según la distribución exponencial. cuando h→0. Para deducir la distribución de la cantidad de llegadas durante un periodo t. Para la segunda ecuación.1. y que la frecuencia de llegadas λ es la constante de proporcionalidad. si hay n llegadas durante t y no haya llegadas durante h. 332 . cuando 1 el tiempo entre llegadas es exponencial con promedio . n  0 En la primera ecuación se realizan n llegadas durante t  h . Pn (t  h)  Pn (t )(1  h)  Pn 1 (t )h.2  n! Es una distribución de Poisson. P1 (h)  1  Po (h)  h Este resultado indica que la probabilidad de una llegada durante h es directamente proporcional a h. n  0 P0 (t  h)  Po (t )(1  h). La ley de producto de probabilidades se puede aplicar al lado derecho de la ecuación. cuando mucho puede haber una llegada durante un periodo h muy pequeño. Al rearreglar los términos y tender limites cuando h → 0. con media En t  t llegadas durante t. La solución de estas ecuaciones en diferencias y diferenciales es (  t ) n e  t Pn (t )  . Este resultado indica que si el tiempo entre llegadas es exponencial con media 1  la cantidad de llagadas durante un periodo t especifico tiene distribución de Poisson con media t . no se permite ninguna otra combinación porque. Así. puede presentarse cuando mucho una llegada. n  0 h Pn` (t ) es la primera derivada de Pn (t ) con respecto a t. También es cierto lo contrario. o n – 1 llegadas durante t y una llegada durante h. se define a:  Pn (t )  Probabilidad de n llegadas durante t Para una h  0 suficientemente pequeña. por que las llegadas son independientes. n  0. 3 Los niños nacen en una población poco poblado. 1.800 Nacimientos /día. Determinar lo siguiente a. con una frecuencia de un nacimiento cada 12 minutos. b.. para una frecuencia de λ llegadas por unidad de tiempo se pueden resumir como sigue: Exponencial Tiempo t entre llegadas sucesivas t0 De Poisson Cantidad n de llegadas durante un periodo especifico T. t  0 p n (T )  . n = 0. n! Variable aleatoria Intervalo Función de densidad 1  Valor de la media Probabilidad acumulada unidades de  T llegadas durante T. cuando se emitieron 40 certificados durante las primeras 2 horas del periodo de 3 horas. … (  T ) n e  T f (t )  e  t .. 2. La probabilidad de que no haya nacimientos en algún día se calcula con la distribución de Poisson: po 0  120  1 e 1201 1  0! 0 333 . El tiempo entre nacimiento sigue una distribución exponencial. 1. 2. La probabilidad de que no haya nacimientos en cualquier día. La cantidad promedio de nacimientos por año. 12 Los nacimientos anuales en la población son:  t  120  265  43. La tasa diaria de nacimientos se calcula como sigue: 24  60  120 Nacimientos/día.Texto Guía – Sistemas de Ingeniería Capítulo 10 Las fuertes relaciones entre las distribuciones exponenciales y de poisson. c. tiempo Pt  A  1  e  A Pn  N (T )  p o (T )  p1 (T )    p N (T ) Pt  A  e  A P (no haya llegadas durante el periodo A) po ( A)  e A Ejemplo de aplicación 10. La probabilidad de emitir 50 certificados de nacimientos en 3 horas. n  0. equivale atener 10 (= 50 – 40) 60 nacimientos en (= 3 – 2) hora. Pn 5 (t )  P0 (t )  P1 (t )  .  P5 (t ) 334 .2.. Por la naturaleza de la mercancía. N ( N  n)! p o (t )  1  N p n 1 n (t ) Ejemplo de aplicación 10.. p N (t  h)  p N (t )(1  h) p N (t  h)  p N (t )(1  h)  p n 1 (t ) h.0  n  N p o` (t )  p1 (t ) La solución de esas ecuaciones es la distribución truncada de poisson: ( t ) N  n e  t p n (t )  . Como   = 5 nacimientos por hora. la cantera vende 3 m3 por día. Para deducir las ecuaciones en diferencias y diferenciales para la probabilidad p n (t ) de n clientes remanentes a las t unidades de tiempo.4 La cantera Florero en Punata vende 18 m3 de arena cada semana.2 Modelos de muertes puras En el modelo de muerte(s) pura(s). 0  n  N p N (t  h)  p o (t )(1)  p1 (t ) h Cuando h→0. n  1.  .10..01813 p10 (1)  10! 10. la probabilidad de colocar un pedido al final del día t es. se coloca un pedido nuevo de 18 m3 para la entrega al principio de la semana siguiente. se obtiene p N` (t )   p N (t ) p n` (t )   p n (t )  p n 1 (t ).. Entonces. se seguirán los argumentos que se usaron en el modelo de nacimientos puros. el sistema comienza con N clientes cuando el tiempo es 0. pero la demanda sigue en realidad una distribución de Poisson. b) La cantidad promedio de m3 de arena que se acumulan al final de la semana. Determinar lo siguiente: a) La probabilidad de colocar un pedido en cualquier día de la semana. Como las compras se hacen con una frecuencia de µ = 3 docenas diarias. y no se permiten más llegadas. Las salidas se hacen con la frecuencia de µ clientes por unidad de tiempo. En promedio. toda la arena que queda al final de la semana se acumula. Siempre que la existencia llega a 5 m3 (o menos).. cuando se han emitido ya 40 certificados en las 2 primeras horas. entonces 12 5  110 e 51  0.Texto Guía – Sistemas de Ingeniería Capítulo 10 Para calcular la probabilidad de emitir 50 certificados en 3 horas. de cola. se calcula con Tora como sigue: 18 E{n!t  7}   nPn (7)  0.11 Modelo generalizado de cola de Poisson En esta sección se enuncia un modelo general de cola donde se combinan llegadas y salidas. con determinada cantidad de máquinas. basándose en la hipótesis de Poisson: los tiempos entre llegadas y de servicio tienen una distribución exponencial. 2.. Otra es que el estudio de la mayor parte de los casos de líneas de espera sucede bajo condiciones de estado estable. 2. 7 n 1 (18  n)! 5 Al usar la opción de escenarios múltiple de TORA.….. En el modelo generalizado supone que las frecuencias tanto de llegada como de salida dependen del estado. El desarrollo del modelo generalizado se basa en el comportamiento a largo plazo. t  1. que se verán en la sección 10. La cantidad promedio de m3 de arena que se acumulan al final de la semana (t = 7). Por ejemplo. que se alcanza después de que el sistema ha estado funcionando durante un tiempo suficientemente largo.12. o de estado estable. Una razón para no describir el comportamiento transitorio en este capítulo es su complejidad analítica. se da en un taller. cuando se disminuye la frecuencia de descomposturas. los empleados tienden a acelerar el cobro durante las horas pico.Texto Guía – Sistemas de Ingeniería Capítulo 10 (3t )18 n e 3t P0(t )   . 335 . Otro ejemplo.664 m3 n 0 10. cuando aumenta la cantidad de máquinas descompuestas (porque solo las máquinas que trabajan son capaces de generar descomposturas nuevas). los datos correspondientes al modelo de muertes puras que corresponden a t = 1. Esta clase de análisis contrasta con el comportamiento transitorio (de calentamiento) que prevalece durante el inicio de funcionamiento del sistema.y 7 se capturan como sigue Escenario 1 2 3 4 5 6 7 Lambda 0 0 0 0 0 0 0 Mu 3 6 9 12 45 18 21 c 1 1 1 1 1 1 1 Límite del sistema 18 1 18 18 18 18 18 Límite de la fuente 18 18 18 18 18 18 18 Los resultados que se buscan se resumen como sigue en TORA. y eso quiere decir que dependen de la cantidad de clientes en la instalación de servicio... El modelo es la base para deducir modelos de Poisson especializados.. en la caseta de cobro de una autopista. El sistema de cola está en el estado n cuando la cantidad de clientes en él es n. Las probabilidades Pn se calculan usando el diagrama de frecuencia de transición (o “rapidez” o “tasa” de transición) de la figura 10. para n = 1. se obtiene:  Tasa esperadade     n1 Pn1   n 1 Pn1  flujo hacia el estado n  De igual manera. la probabilidad de que suceda más de un evento durante un intervalo pequeño h..3.3 Diagrama de transición en colas de poisson Bajo condiciones de estado estable. n = 1. como la longitud promedio de la cola..3 se ve que la ecuación de balance asociada con n = 0 es 0 P0  1 P1 Las ecuaciones de balance se resuelven recursivamente en función de P0 como sigue: para n = 0. Después se usan esas probabilidades para determinar las medidas de funcionamiento del sistema. 0 P0   2 P2  (1  1 ) P1 336 . Con base en el hecho que el estado n sólo puede cambiar a los estados n – 1 y n + 1. El estado 0 sólo puede cambiar al estado 1 cuando hay una llegada con la frecuencia λ0.   P1   0  P0  1  Después. el estado n solo puede cambiar a dos estados posibles: n – 1 cuando hay una salida de frecuencia μn. tiende a cero cuando h→0.9.. para n > 0. Como se explicó en la sección 10. el tiempo promedio de espera y la utilización promedio de la instalación. Eso quiere decir que para n > 0.Capítulo 10 Texto Guía – Sistemas de Ingeniería Se definirá lo siguiente: n  Cantidad de clientes en el sistema (en la cola y en el servicio) n  Frecuenciade llegada cuandohay n clientes en el sistema  n  Frecuenciade salida cuandohay n clientes en el sistema Pn  Pr obalidad de estado estable de que haya n clientes en el sistema El modelo generalizado define a Pn como función de λn y Pn. Observe que μ0 no esta definida.  Tasa esperadade     (n   n ) Pn  flujo que sale del estado n  Al igualar las dos frecuencias se obtiene la siguiente ecuación de balance:  n 1 Pn 1   n 1 Pn 1  ( n   n ) Pn . 2. Figura 10. porque no pueden haber salidas si el sistema está vació. En la figura 10. y n + 1 cuando hay una llegada con la frecuencia λn. las tasas esperadas de flujo de entrada y de salida del estado n deben ser iguales. ... El supervisor en obra usas el siguiente programa para determinar la cantidad de operarios de mixers.  1    P2   1 0  P0   2 1  Se puede demostrar por inducción que.1   P0 . 5. n  0..  60 12  5... 337 .. 2. en función de la cantidad de m3 a necesitarse: Cantidad de m3 a necesitarse Cantidad de operarios de mixers 1a3 1 4a6 2 más de 6 3 La cantidad de m3 a necesitarse sigue una distribución de Poisson con una frecuencia media de 10 por hora.. n = 1.. n  4.. con 12 minutos de promedio.0 Pn   n 1 n  2   n  n 1 ... 8..5 Coboce opera con tres mixers..Texto Guía – Sistemas de Ingeniería Capítulo 10   Se sustituyen P1   0  P0 y se simplifica.... para obtener (¡compruébelo!).   Entonces:  10  P1    P0  2 P0 5 2  10  P2    P0  4 P0 5 3  10  P3    P0  8 P0 5 3  10   10  P4      P0  8 P0  5   10  3 2  10   10  P5      P0  8 P0  5   10   10  P6    5 3  10    P0  8 P0  10  3  10  Pn    5 3  10     10  3  10     15  n 6 2 P0  8  3 n 6 P0 . n  7.    . 6 3  5  15. n = 0. m3 a necesitarse por hora. El tiempo promedio de mezclado de un m3 a necesitarse es exponencial. 3   n  2  5  10... m3 a necesitarse por hora. 1. 2.  El valor de P0 se determina con la ecuación   n 0 Pn  1 Ejemplo de aplicación 10. 8. Calcular la probabilidad P de estado estable de que haya n m3 a necesitarse. m3 a necesitarse por hora. . n  7. De la información del problema se tiene que: n    10 m3 a necesitarse por hora. en general.. 1. Un cliente en espera se selecciona de la cola para iniciar su servicio en el primer servidor disponible.  1   3 3 3 O bien.Texto Guía – Sistemas de Ingeniería Capítulo 10 El valor de P0 se determina con la ecuación. La cantidad de clientes en el sistema incluye.  Cantidad esperada     3P0  2( P1  P2  P3 )  1( P4  P5  P6 )  0( P7  P8  .. Todos los servidores están en paralelo y son idénticos. ya se puede determinar cualquiera de las probabilidades del problema.. lo que quiere decir que la tasa de servicio en cualquier servidor es μ clientes por unidad de tiempo. o de eficiencia. para determinar medidas de funcionamiento. la probabilidad de que solo haya un mixer funcionado se calcula como la de que haya 1 y 3 m3 a necesitarse en el sistema..4 muestra el caso especial de colas de Poisson cunado hay c servidores en paralelo. esto es En consecuencia P0 =  1  P1  P2  P3  (1  4  8)   0.. Por ejemplo. los que hay en el servicio y los que esperan en la cola.)  de mixers sin funcionar   1 Mixer 10.. La frecuencia de llegadas al sistema es λ clientes por unidad de tiempo. por definición..255  55  Se puede usar Pn.. Por ejemplo.... 2      2 2  P0 31  8 1        . 2 3   2 2 2 P0  P0 2  4  8  8  8  8  8   8   8   . x 1  1 x i 0 Para obtener:     1     1 P0 31  8 2    1    3   1 . para el caso de Coboce.  1   3 3      Se aplica la fórmula de la suma de unas serie geométrica  1 xi  .12 Colas especializadas de Poisson La figura 10.. lo que es igual. 55 Conocida P0. 338 . 2..... distribución exponencial del tiempo entre llegadas o tiempo de servicio) D = Tiempo constante (determinístico) Ek = Distribución de Erlang o gamma del tiempo (o bien. ∞) d = Disciplina de la cola e = Cantidad máxima (finita o infinita) admisible en el sistema (en la cola más en servicio) f = Tamaño de la fuente (finito o infinito) Las notaciones normales o estándar para representar las distribuciones de llegadas y de salidas (símbolos a y b) son: M = Distribución de Markov (o de Poisson) de las llegadas o de las salidas (o lo que es igual.4 Esquema de un sistema de cola con c servidores en paralelo Una notación cómoda para resumir las características de la cola son las que se muestra en la figura 10. la suma de distribuciones exponenciales independientes) GI = Distribución general del tiempo entre llegadas G = Distribución general del tiempo de servicio Entre la notación de disciplinas de cola (símbolo d) están: 339 .Capítulo 10 Texto Guía – Sistemas de Ingeniería Figura 10.4 y tiene el siguiente formato: (a/b/c) : (d/e/f) En donde: a = Distribución de las llegadas b = Distribución de las salidas (o del tiempo de servicio) c = Cantidad de servidores en paralelo (= 1. Ahora indicaremos como se deducen (en forma directa o indirecta) esas medidas a partir de la probabilidad Pn de estado estable de que haya n en el sistema. Más adelante mostraremos cómo determinar λef. Antes de presentar los detalles de las colas de Poisson especializadas.11.12. En forma especifica. Como nota histórica. y es la siguiente: Ls  ef Ws Lq  ef Wq Estas relaciones son validas bajo condiciones bastante generales.G. Yo agregué el último elemento. cualquier tipo de disciplina) Para ilustrar el empleo de la notación. si algunos clientes no se pueden unir porque el sistema está lleno (por ejemplo. entonces λef < λ. del modelo (M/D/10): (DG/20/∞) se usa llegada de Poisson (o tiempo entre llegadas exponencial). eficiencia o funcionamiento de una cola son: Ls = Cantidad esperada de clientes en el sistema Lq = Cantidad esperada de clientes en la cola Ws = Tiempo esperado de espera en el sistema Wq = Tiempo esperado de espera en la cola c = Cantidad esperada de servidores ocupados Recuerde que el sistema abarca tanto a la cola como a la instalación de servicio. y en las publicaciones se llaman notación de Kendall. En caso contrario. el símbolo f. descritas en la sección 10. También hay una relación directa entre Ws y Wq. primero en ser servido. tiempo constante de servicio y 10 servidores en paralelo. los tres primeros elementos de la notación (a/b/c) fueron inventados por D. La disciplina de la cola es DG y hay un límite de 20 clientes en todo el sistema. El parámetro λef es la frecuencia efectiva de llegada al sistema.Texto Guía – Sistemas de Ingeniería Capítulo 10 PLPS = Primero en llegar. Es igual a la tasa (nominal) de llegada λ cuando todos los clientes que llegan se unen al sistema. primero en ser servido SEOA = Servicio en orden aleatorio DG = Disciplina en general (es decir. Por definición. indicaremos cómo se pueden deducir las medidas de eficiencia en estado estable. Lee agregó los símbolos d y e. un estacionamiento). 10. a partir de las probabilidades de estado estable Pn. Kendall en 1953. son:  Ls   nPn n 1 Lq    (n  c) P n  c 1 n La relación entre Ls y Ws (también Lq y Wq) se llama fórmula de Little. en 1969. en 1966 A.1 Medidas de desempeño en estado estacionario Las mediadas de desempeño. El tamaño de la fuente desde donde llegan los clientes es infinito. Después. 340 .M. ULPS = Último en llegar. para el caso de colas generalizadas. multiplicando ambos lados de la última ecuación por λef. Ls y la cantidad promedio en la cola.Texto Guía – Sistemas de Ingeniería Capítulo 10  Tiempo de espera   Tiempo de espera   Tiempo esperado          en el sistema promedio en la cola de servicio       Esto se traduce a Ws  Wq  1  A continuación se puede relacionar Ls con Lq. La probabilidad Pn de que haya n automóviles en el sistema. c. y entonces el sistema tiene un total de c = 5 servidores en paralelo. b. Otros vehículos que no se puedan estacionar ni encontrar un espacio de espera temporal se deben ir a otra parte. d.N. que la capacidad máxima del sistema es 5 + 3 = 8 automóviles. Primero se observa que un cajón de estacionamiento funciona como servidor. c  Ls  Lq  ef  Por lo anterior. Lq. Los automóviles que lo usan llegan siguiendo una distribución de Poisson con frecuencia de cinco por hora. El tiempo promedio que espera un automóvil hasta que haya un cajón libre dentro el estacionamiento. debe ser igual a la cantidad promedio de servidores ocupados. c. Utilizacio n de la instalacio n   c c Ejemplo de aplicación 10. f.6 El estacionamiento de las visitas de S. La cantidad promedio de puestos de estacionamiento ocupados. Entonces. 341 . y junto con la fórmula de Little se obtiene Ls  Lq  ef  Por definición. El tiempo de estacionamiento tiene distribución exponencial con 30 minutos de promedio. La frecuencia efectiva de llegada para automóviles que usen en realidad el estacionamiento. También. La utilización promedio de ese estacionamiento. La cantidad promedio de automóviles en el estacionamiento. la diferencia entre la cantidad promedio en el sistema. Los puestos provisionales solo pueden contener tres vehículos. entonces. se limita sólo a cinco puestos. Las visitas que no pueden encontrar un lugar vació inmediatamente cuando llegan pueden esperar provisionalmente dentro del estacionamiento hasta que salga un automóvil estacionado.C. e. Determinar lo siguiente: a. 1..21654 0.1263 automóvile s por hora 342 . lo que significa que λ = λef + λperdido..03508 0. automóvile s/hora.02105 La tasa efectiva de llegada λef. 2...  perdido  P8  6  0. 2...21654 0.Texto Guía – Sistemas de Ingeniería Capítulo 10 Se puede calcular la probabilidad Pn como caso especial del modelo generalizado de la sección 10.. 8 0   5!5 n 5 Figura 10.5. Entonces.  P8  1 o sea  3 3 2 33 3 4 35 3 6 37 38  P0  P0        2  3   1 5!5   1! 2! 3! 4! 5! 5!5 5!5 Esto da como resultado P0 = 0. Un auto que llega puede entrar al estacionamiento o irse a otro lado.  3n P. Un automóvil no podrá entrar al estacionamiento si ya están 8 automóviles en él... . n  0.5    n   5 60   10. A partir de P0 ya se pueden calcular P1 a P8. 8   60  n 30   2n. n  6. n = 0. ef . 5   n! 0 Pn   n  3 P. n  1.. Eso quiere decir que la proporción de vehículos que no pueden entrar al lote es P8. n  6..14436 0.09744 0. automóvile s/hora.  perdido El valor de P0 se calcula sustituyendo Pn..04812 (¡compruébelo!). donde los clientes llegan desde la fuente con la frecuencia λ automóviles por hora. En forma especifica se tiene que n  6 Automóviles/hora. en la siguiente ecuación: P0  P1  . 2.02105  0. se puede calcular si se observa el esquema de la figura 10.5 Relación entre . 7. 1... y los resultados son n 1 2 3 4 5 6 7 8 Pn 0.05847 0.11. n = 1. con las frecuencias respectivas λef o λperdido.. 2... 8.. 8    30  De acuerdo con la sección 10.. 7..16240 0.11. 8737 c  Ls  Lq    2. 343 . la cantidad promedio en el sistema. Las llegadas suceden con la frecuencia de λ clientes por unidad de tiempo. Ambos modelos suponen una fuente de capacidad infinita.. y la tasa de servicio es μ clientes por unidad de tiempo. Los resultados de los dos modelos (y en realidad de todos los modelos restantes de la sección 10. 8P8  3. Como las deducciones de Pn en la sección 10.. 1.. porque todos los clientes que llegan pueden entrar al sistema. Se puede calcular Ls a partir de Pn como sigue: Ls  0 P0  1P1  .. ef 5. En el primer modelo no se establece limite para la cantidad máxima en le sistema..1263  5.2 Modelos con un supervisor En esta sección se presentan dos modelos para el caso en que hay un solo servidor (c = 1). λef = λ y λperdido = 0. (M/M/1) : (DG/∞/∞).53265 - 10.. n    También.1 son totalmente independientes son de determinada disciplina de cola.12.8737 1  0. se usará el símbolo DG (disciplina general) con la notación....03265 hora 2 La cantidad promedio de puestos ocupados es la misma que la cantidad promedio de servidores ocupados. Se usará la notación de Kendall para resumir las características de cada caso.9368 puestos  2 De c se obtiene c 2.Texto Guía – Sistemas de Ingeniería Capítulo 10 ef     perdido  6  0.1286  0.11 y de todas las medidas de desempeño en la sección 10. ..737 automóvile s por hora La cantidad promedio de vehículos en el estacionamiento (lo que esperan o los que ocupan un cajón) es iguala Ls.12) se deducen como casos especiales del modelo generalizado de la sección 10.11. 2. Para determinar Wq se usara la ecuación 1 Wq  W s   Así. y en el segundo se supone un limite finito del sistema.12. n  0. Con la notación del modelo generalizado se tiene que n    . Entonces. Ws  Ls ef  3..1286 automóvile s Un automóvil que espera en los puestos provisionales en realidad es uno en una línea de espera.58736 c 5 Wq  0.53265 hora 5.9368 Utilizació n de cajones    0. su tiempo de espera a que haya un cajón vació es Wq. Ws  Ls   1 1   (1   )    Wq  Ws  1   Lq  Wq    (1   ) 2 1  c  Ls  Lq   Ejemplo de aplicación 10. 1   P0  1   . si el lugar del carga esta ocupado. (   1) La deducción matemática de Pn impone la condición que ρ < 1 o que λ < μ. porque a menos que la tasa de servicio sea mayor que la frecuencia de llegada....7 En la construcción de un camino vecinal solo tiene un banco de préstamo de arena y grava.. cargar y salir de 344 . Este resultado tiene sentido. Las volquetas llegan siguiendo una distribución de Poisson. Si λ ≥ μ. la serie geométrica no converge. la ecuación de Pn en el modelo generalizado se reduce entonces a:  Pn   n Po . 2.12.. con 4 volquetas por hora que pueden aguardar en un lugar de estacionamiento. n  1. el cual cuenta con una retroexcavadora. 2.. Si   P0 (1     2  . las medidas restantes de desempeño se calculan con las ecuaciones de la sección 10. la cola crece en forma indefinida. la serie geométrica tiene la suma finita   . . La medida de desempeño Lq se puede deducir como sigue:   n 0 n 0 Ls   nPn   n(1   )  n  (1   )   (1   )  d  n  d n 0 d  1      d  1    1   Como λef = λ para este caso.)  1  1  Suponiendo que ρ < 1. intuitivamente. y entonces. Para determinar el valor de P0 se usa la identidad.. siempre que   1 La fórmula general de Pn es entonces la de la siguiente distribución geométrica: Pn  (1   )  n .. Así. n  0..Texto Guía – Sistemas de Ingeniería Capítulo 10  .1.. 1. El tiempo para entrar. y no existirán las probabilidades de Pn de estado estable.. 33. porque le diseño debe reflejar hasta cierto punto. el sistema puede funcionar en condiciones de estado estable.Texto Guía – Sistemas de Ingeniería Capítulo 10 una volqueta es exponencial.6 se ven los resultados de este problema. Las volquetas que no se pueden estacionar en la instalación pueden esperar en el arroyo junto al camino. No recomendamos usar Lq como única base para determinar los puestos de estacionamiento.6 Resultados del ejemplo de aplicación obtenidos con TORA Por ejemplo. Tener K puestos equivale a tener K + 1 lugares en el sistema (en la cola y en la cola de carga). Eso quiere decir que para todo fin práctico no hay límite del tamaño del sistema. con 10 minutos de promedio. la longitud máxima posible de la cola. El residente de obra de la construcción desea determinar el tamaño del estacionamiento. Figura 10. es 1. 60 Para este caso λ = 4 volquetas por hora y μ =  6 volquetas por hora. Sea K la cantidad de puestos de estacionamiento. Una volqueta que llega 345 . podrá ser más factible diseñar el estacionamiento de tal modo que una volqueta que llegue encuentre lugar al menos el 90% de las veces. Estos resultados indican que la cantidad promedio de volquetas en la cola Lq. 10 Como     1 .  Los datos de este modelo para TORA son Lambda Mu c Limite del sistema Limite de la fuente 4 6 1 infinito infinito En la figura 10. La cantidad K de espacios también se puede determinar usando la definición matemática de Pn.1 Modelos de costos... Entonces.86831 y 0.. forman una parte importante de este campo. se puede expresar como sigue el modelo de costo: ETC ( x)  EOC( x)  EWC ( x) En donde: 346 . de nivel de servicio y de espera 10.. las colas con prioridad de servicio. Eso quiere decir que la condición se satisface con K ≥ 5 puestos de estacionamiento. En los modelos de costo se trata de balancear dos costos opuestos: 1.13 Otros modelos de cola Las secciones anteriores se concentraron en modelos de colas de Poisson. El costo de ofrecer el servicio 2.. El costo de demorar la oferta del servicio (el tiempo de espera del cliente) Las dos clases de costo se contraponen.14 Modelos de decisión con colas El nivel de servicio de una instalación con líneas de espera es una función de la tasa de servicio μ y de la cantidad de servidores en paralelo c.1. respectivamente. como se ve en la figura 10. En ambos modelos se reconoce que los mayores niveles de servicio reducen el tiempo de espera en el sistema. Los dos modelos tratan de llegar a un notable balance entre los factores opuestos. 1   1     2  .6 se ve que los valores acumulados de Pn son 0. Si x = (μ o c) representa el nivel de servicio... En esta sección se presentan dos modelos de decisión para determinar los niveles de servicio “adecuados” para sistemas de colas: 1) un modelo de costo y 2) un modelo de nivel de aspiración.14.91221 para n = 4 y n = 5. la condición 1  se reduce a 1   K 1  0. porque al aumentar una se reduce la otra automáticamente.9 En la figura 10.1 10.9 1   K 1 La suma de la serie geométrica truncada es igual a . En especial. esto es. 10..  K   0..  PK  0.9 Al simplificar la desigualdad se obtiene  K 1  0.... Las publicaciones sobre las colas contienen abundancia de otros modelos. Esta condición equivale al siguiente enunciado de probabilidades: P0  P1  .Texto Guía – Sistemas de Ingeniería Capítulo 10 encontrara un cajón el 90 % de las veces si hay cuando mucho K volquetas en el sistema. colas de red y colas no de Poisson. Esos modelos se pueden encontrar en la mayor parte de los libros especializados en teoría de colas. El valor de Ws se puede calcular usando TORA. La idea es determinar un intervalo aceptable de nivel de servicio (μ o c) especificando limites razonables de medidas contrapuestas de desempeño. En general es difícil estimarlo.14. Esos límites son los niveles de aspiración que desea lograr quien toma las decisiones. 10.Texto Guía – Sistemas de Ingeniería Capítulo 10 ETC = Costo total esperado por unidad de tiempo EOC = Costo esperado del funcionamiento de la instalación por unidad de tiempo EWC = Costo esperado de la espera por unidad de tiempo. en especial el relacionado con el tiempo de espera de los clientes. El porcentaje de inactividad se puede calcular como sigue: X c  ( Ls  Lq )  ef cc  100   100  1  c c  c    100  347 . El porcentaje de inactividad de los servidores. X. Esto se hace teniendo en cuenta las dos medidas (contrapuestas) de desempeño. 2. Ilustraremos el procedimiento aplicándolo al modelo de varios servidores donde se desea determinar una cantidad c “Aceptable” de servidores. y en el segundo se supone que x es igual a la cantidad de servidores en paralelo. El tiempo promedio en el sistema Ws.2 Modelo de nivel de aspiración La viabilidad del modelo de costo depende de lo bien que se pueda estimar los parámetros de costo. En el primero se supone que x es igual a la tasa de servicio μ. c. 1. El modelo de aspiración alivia esta dificultad al trabajar en forma directa con las medidas de desempeño de la cola que se trate. Las formas más sencillas de EOC y EWC son las siguientes funciones lineales: EOC ( x)  C1 x EWC ( x )  C 2 Ls En donde C1 = Costo por unidad de x por unidad de tiempo C2 = Costo de la espera por unidad de tiempo por cada cliente que espera En los dos ejemplos que siguen se explica el uso del modelo de costo. ¿Dos o más? d) Supongamos que a la 1:00pm ambos sirvientes están atendiendo clientes. ¿Antes de la 1:01pm? 2. a) ¿Cuál es la probabilidad de que la siguiente llegada sea antes de la 1:00pm?.Texto Guía – Sistemas de Ingeniería Capítulo 10 Figura 10. Sabemos que un cliente ha llegado a las 12:00 de mediodía. El Servicio Hidrológico de la Comunidad Autónoma de X planea construir un embalse para regular la cuenca de uno de sus ríos con el objetivo de satisfacer los requerimientos de agua para regadío.000. distribución de tiempo entre llegadas exponenciales. ¿Entre 1:00 PM y 2:00 PM?. Se puede determinar la solución del problema haciendo una gráfica de Ws y X en función de c.000 m3). de manera abreviada 4 unidades de agua (1 unidad de agua = 1. Por ejemplo.15 Problemas propuestos 1. de media 2 horas.7.7 Aplicación de niveles de aspiracion En la toma de decisiones en línea de espera El problema se reduce a determinar la cantidad c de servidores tal que: Ws   y X  En donde α y β son los niveles de aspiración especificados por quien toma las decisiones. 10. 348 . Si no se pueden satisfacer las dos condiciones al mismo tiempo. ¿Uno?. para poder determinar un intervalo factible.000 m3. La capacidad máxima del embalse previsto será de 4. ¿Antes de la 1:10pm?. o. ¿Después de las 2:00pm? b) Supongamos que no llegan más clientes antes de la 1:00 PM ¿Cuál es la probabilidad de que la siguiente llegada sea entre 1:00pm y 2:00pm? c) ¿Cual es la probabilidad de que el número de llegadas entre 1:00pm y 2:00pm sea cero?. habrá que aflojar una o ambas. ¿Cual es la probabilidad de que ninguno de los 2 clientes haya completado su servicio antes de las 2:00 PM?. se puede estipular que α = 3 y β = 10 por ciento.000. y distribución de tiempos de servicio exponencial de media 2 horas. como la de la figura 10. Supongamos que un sistema de colas tiene dos sirvientes. Al ubicar α y β en la gráfica se puede determinar de inmediato un intervalo aceptable c*. Si el embalse está lleno. b) Supuesto el embalse en el estado mínimo con 1 unidad de agua. Por lo tanto el objetivo semanal será dejar salir 3 unidades de agua. En particular. pero adicionalmente. y comprobar que se trata de un proceso markoviano.3. a) Representar el diagrama de transiciones. deberá dejar salir al menos 1 unidad de agua por semana. cualquier exceso será vertido por los aliviaderos. El tiempo requerido para servir un coche es de 3 minutos.4. Una estación de servicio tiene una bomba de gasolina. en volver a estar en la misma situación? c) Suponiendo que la primera semana partimos de una situación en la que se embalsaban 3 unidades de agua ¿Cual es la probabilidad de que dos semanas después se encuentre al mínimo? 4.Texto Guía – Sistemas de Ingeniería Capítulo 10 Antes de proceder a la construcción el Servicio desearía tener alguna idea sobre la efectividad del mismo a largo plazo. Los coches que requieren servicio llegan según un proceso de Poisson con una tasa media de 20 vehículos por hora.4 0. si hay n coches en la estación.1 3. afectando la carencia a los regadíos.2. Si la bomba está ocupada los clientes potenciales pueden marcharse para ser atendidos en otra estación. El nivel mínimo admitido del embalse (estado mínimo) no podrá ser inferior a una unidad de agua. en promedio.2 0. b) Calcular el tiempo medio de permanencia en el sistema c) ¿Cual sería la ventaja si hubiesen 2 bombas de gasolina? 349 . Para ello se ha llevado a cabo un estudio sobre los volúmenes semanales de agua aportados por el río. para mantener los estándares de calidad del agua para otros usos. El Servicio está considerando la posibilidad de contratos de regadío que requerirán el consumo de 2 unidades de agua por semana.3 0. encontrándose con que pueden aproximarse por medio de la siguiente distribución de probabilidad discreta: Aportación semanal en unidades de agua Probabilidad 2 3 4 5 0. la probabilidad de que un cliente potencial se marche es de n / 5 para n = 1.5. a) Identificar el modelo de colas y calcular el porcentaje de clientes perdidos. ¿Cuántas semanas tardará. encontrar la matriz de probabilidades de transición. Si el estado del embalse (nivel del embalse) más la aportación de agua del rió es menor que esta cantidad se tendrá que dejar salir menos agua. exponencialmente distribuidos. en promedio. Hillier.asp?page=22&categoria=604  http://www. [Sexta Edición] 10.elprisma. Taha [Séptima Edición]  INVESTIGACIÓN DE OPERACIONES – Moskowitz. Wrigth.Capítulo 10 Texto Guía – Sistemas de Ingeniería 10.com/apuntes/curso.mx/publica/tutoriales/investoper2/  http://www. Gordon P. Gerald J.  INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES – Frederick S.com/apuntes/apuntes. Herbert.16 Bibliografía  INVESTIGACIÓN DE OPERACIONES – Hamdy A.asp?id=5892 350 .17 Enlaces  http://www.itlp. Lieberman.elprisma.asp?id=8921  http://www.elprisma.com/apuntes/curso.edu. Capítulo 10 Texto Guía – Sistemas de Ingeniería 351 . Anexo A Texto Guía – Sistemas de Ingeniería ANEXO A Operaciones Matriciales 350 . La matriz AT es la transpuesta de A. Por ejemplo. solo si. Por ejemplo una matriz indentidad de (3×3). Por ejemplo. la siguiente matriz es de tamaño (4×3). 1 0 0    I 3   0 1 0  0 0 1   3. Una matriz cuadrada tiene m = n. dos matrices A = a ij y B = bij son iguales si. por ejemplo. Un vector renglón es una matriz con un renglón y n columnas. 1 4    1 2 3   A   2 5   AT   4 5 6   3 6   6. Una matriz inversa es una matriz cuadrada en la que los elementos de la diagonal principal son 1 y los elementos diagonales 1 y los elementos no diagonales son cero. si el elemento aij de la matriz A es igual al elemento aji de AT para toda i y j.  a11 a12 a13    a a a  21 22 23  A  a ij a 31 a 32 a 33    a a a   41 42 43  4 x3 Tipo de matrices 1. Se dice que una matriz con m renglones y n columnas es de tamaño (o orden) m×n. Matrices no singulares Una matriz es de rango r si el mayor ordenamiento cuadrado en ella que tiene determinante distinto de cero es del tamaño r.Texto Guía – Sistemas de Ingeniería Anexo A Matrices Definición de una matriz Una matriz es un ordenamiento rectangular de elementos. 4. Un vector columna es una matriz con m renglones y una columna. son del mismo tamaño y aij = bij para toda i y j. 5. Matriz cuadrada con determinante distinto de cero se llama matriz no singular o de rango total. 7. Una matriz B = 0 es una matriz cero si cada elemento de B es cero. 1 2 3    A   2 3 4 3 5 7    351 . El elemento aij de la matriz A ocupa el i-esimo renglón y la j-esima columna del conjunto. 2. aplicar una secuencia especifica de transformaciones de renglones. Al premultiplicar por A-1 se obtiene A 1   A A 1 I  I A 1  Entonces. Se tiene la matriz separada A I  donde A es no singular. Iteración 0 1 2 3 1 0 0 3     2 3 2 0 1 0 4 3 3 3 0 0 1 5   Iteración 1 1 2 3 1 0 0 3     0  1  4  2 1 0  2  0  3  5  3 0 1  4   Iteración 2  1 0  5  3 2 0  1   1 1 4 2 1 0 2  0 0 7 3  3 1 2    352 . A conviene en I e I se convierte en A-1. porque A  1  21  20   2  14  12   3  10  9  0 Pero el rango de A es r = 2. se considera el sistema de ecuaciones: 1 2 3   x1   3         2 3 2    x2    4  3 3 4   x  5    3   La solución de X y la inversa de la matriz de base se pueden obtener directamente con la ecuación  A 1 A I b   I A 1 A 1b  Las siguientes iteraciones detallan las operaciones de transformación. Para ilustrar el procedimiento. porque 1 2     1  0  2 3 Método para calcular la inversa de una matriz – método de operaciones de renglón (Gauss – Jordan).Texto Guía – Sistemas de Ingeniería Anexo A A es una matriz singular. entonces Bsiguiente  BF Así. entonces B-1siguiente no existe: Para demostrar la validez de la formula B-1siguiente se define F como una matriz identidad de m cuya r-ésima columna se reemplaza por B-1Pj. B 1 P j  1    1 B Pj m  1 1 Pj 1    r 0  Si B 1 Pj r  0 . Si el vector de columna Pj en B se sustituye por el vector columna P para producir Bsiguiente. em  Ya que Bsiguiente difiere de B solo por que r-ésima columna se sustituye con Pj.  F  e1 . la inversa B-1siguiente se puede calcular con la formula B-1siguiente=EB-1 La matriz E se calcula en la siguiente forma. La inversa de A es la matriz del lado 7 7 7 derecho. Supongase q ue dos matrices no singulares. esto es. A continuación se forma B1 como matriz identidad cuya primera columna esta sustituida con la primera columna de B. B11  E1 Bo1  E1 I  E1 I  E1 353 . Entonces. Forma de producto de la inversa. er 1 . 1 Bsiguiente  BF   F 1 B 1 1 La formula es consecuencia de hacer que E = F-1 Se puede usar la forma de producto para invertir cualquier matriz B no singular. B 1 Pj . . B y Bsiguiente difieren exactamente en una columna. entonces E se forma como una matriz identidad de m con su r-esima columna sustituida por  1 B 1 Pj   r           B B  P   j 2      lugar r .Texto Guía – Sistemas de Ingeniería Anexo A Iteración 3  6   1 0 0 7 0 1 0 2  7 0 0 1 3  7  1 7 5 7 3  7  5 7 4  7 1 7 3  7 6 7 2  7 3 6 2 Esto da como resultado x1  . Se comienza con Bo=I=Bo-1. Entonces. er 1 . x2  y x3  . que es la misma que se obtiene con el método de la matriz adjunta. Supongase ademas que B-1 es dato. B 1  Em Em1  E1 El ejemplo siguiente ilustra la aplicación de la forma de producto de la inversa.Texto Guía – Sistemas de Ingeniería Anexo A Esto quiere decir que para la matriz original B. Se tiene  2 1 0   B   0 2 0  4 0 1   Iteración 0 Bo  B 1 o  1 0 0     0 1 0 0 0 1   Iteración 1  2 0 0   B1   0 1 0   4 0 1    2   1 Bo P1  P1   0   4    r 1  1  0 0   2  0 E 1    1 0  2   4  0 1   2  B11  1  0 0   2    0 1 0   2 0 1     Iteración 2  2 1 0   B2   0 2 0   B  4 0 1    1   1  0 0  1      2    2  B11 P2   0 1 0  2    2   r  2   2 0 1  0    2           354 . una matriz A. VA). vm . de tamaño (m  n). 30) 3 4   1  10  3  20  5  30. un vector columna P. A   . 20.. Y estas definiciones se presentan en forma matemática como sigue:  a11 a12  a1n   p1       a21 a22  a2 n  p  V  v1 .Texto Guía – Sistemas de Ingeniería Anexo A   1   E2   0  0    B 1  B21  E 2 B11 1     1  2  1   2 4 0  1  1   0  0  2  2   2   1  0 1  2     1  1  4  1  0  2 0 1    0  0  1   1   1  0  1  0   4  2 0 0   2    1   0  0 1 0  0 0    2 1   2 0 1    2 1 1         Relación de operaciones matriciales sencillas En los cálculos de la tabla símplex solo es necesaria la utilización de tres operaciones matriciales de lo más elemental las cuales son:  (vector renglón)  (matriz)  (matriz)  (vector columna)  (escalar)  (matriz) Por lo cual se debe presentar algunas definiciones de matrices: 1. 3. un vector renglón V. de tamaño m. 2. es un arreglo rectangular de m renglones y n columnas. 2  10  4  20  6  30   220 . es una matriz (1  m). v2 . vi ai 2 . La operación solo se define si el tamaño del vector renglón V es igual a la cantidad de reglones de A lo cual se da: m m  m  VA    vi ai1 . de tamaño n.  vi ain  i 1 i 1  i 1  Se puede dar un ejemplo: 1 2    (10. 280  5 6   355 . (Vector renglón  matriz.P  2            p  a a  a  mn   m  m1 m 2 1.  . es una matriz (n  1). 20. (Escalar  Matriz. 120  En general A=A. 60       40. Dada la cantidad del escalar (o constante. 30   1  10  2  20  3  30  120    2         40. ctte. 50. A). Se puede dar un ejemplo: 2 10. 60   80. dará como resultado una matriz del mismo tamaño de A. 40. 20. 50.Texto Guía – Sistemas de Ingeniería Anexo A 2. 30   20. 60  3  1  40  2  50  3  60   320    3.).  n   a1 j p j  j 1  n   a 2 j pj A   j 1     n   a mj pj  j 1            Se puede dar un ejemplo: 1  10. cuyo elemento (i-j)-ésimo es igual a aij. Por ejemplo P=P y V=V. La operación se define si la cantidad de columnas de A es igual al tamaño del vector columna P. AP). (Matriz  vector columna. 356 . lo mismo se puede deducir para la multiplicación de vectores por escalares. la operación de multiplicación A. 100 . lo cual en este caso. Anexo B Texto Guía – Sistemas de Ingeniería ANEXO B Tabla de Distribución Normal 356 . 57926 0.99520 0.74537 0.91621 0.99996 0.50399 0.58706 0.98341 0.1 1.50000 0.95907 0.99999 0.99975 0.95728 0.99807 0.99985 0.99379 0.2 2.99994 0.87076 0.99997 0.87698 0.92364 0.79389 0.98537 0.81057 0.99992 0.00000 0'04 0.65173 0.00000 0'09 0.94845 0.99361 0.6 3.99856 0.97128 0.99996 0.0 2.53983 0.99979 0.00000 0'03 0.99999 0.71226 0.99997 0.95637 0.96995 0.7 0.97882 0.99774 0.83398 0.99989 0.99819 0.99767 0.99760 0.62552 0.94738 0.99430 0.82639 0.98870 0.6 1.8 1.97257 0.3 0.2 4.6 0.99865 0.99926 0.99801 0.99999 1.90658 0.85543 0.99396 0.55172 0.52392 0.99492 0.99831 0.99998 0.99987 0.9 4.99996 0.84134 0.99983 0.99061 0.99998 0.4 3.99976 0.99999 0.99991 0.53188 0.97558 0.94062 0.71566 0.99962 0.99998 0.99999 0.94950 0.94630 0.96712 0.95543 0.99343 0.82381 0.81594 0.99940 0.99993 0.64058 0.99971 0.99929 0.57142 0.1 0.1) z 0.82121 0.99609 0.99953 0.99999 0.52790 0.99981 0.97062 0.00000 0'07 0.97193 0.99934 0.66640 0.77337 0.99266 0.86650 0.85993 0.96637 0.99621 0.96784 0.89251 0.78814 0.77637 0.93943 0.98124 0.99461 0.99683 0.1 4.94179 0.98645 0.99506 0.96562 0.96407 0.99795 0.99134 0.67364 0.4 0.54380 0.85314 0.99825 0.00000 0'05 0.85769 0.51994 0.99984 0.3 2.65542 0.99913 0.83147 0.00000 0'08 0.69847 0.99996 0.91466 0.98840 0.74857 0.68793 0.Texto Guía – Sistemas de Ingeniería Anexo B Tabla de la distribución normal tipificada N(0.99996 0.99286 0.69146 0.51197 0.99982 0.99978 0.00000 357 .99957 0.5 3.99958 0.80785 0.64803 0.99999 0.99992 0.99960 0.86433 0.98461 0.99111 0.93448 0.90824 0.72240 0.99999 0.99882 0.99736 0.99851 0.99999 1.0 0.99988 0.96164 0.79673 0.99970 0.90320 0.95449 0.98809 0.99010 0.88686 0.99158 0.99999 1.83646 0.99990 0.99560 0.99874 0.99999 0'01 0.56749 0.99324 0.93319 0.99995 0.99995 0.55962 0.2 1.97932 0.99972 0.99906 0.99752 0.92647 0.99744 0.99180 0.99999 1.99991 0.61026 0.0 1.99861 0.79103 0.95154 0.99990 0.75490 0.74215 0.54776 0.96246 0.98500 0.99961 0.99969 0.68439 0.73565 0.56356 0.4 1.84375 0.5 2.99886 0.99988 0.60642 0.99936 0.99985 0.89617 0.76424 0.99986 0.9 2.98679 0.78230 0.99245 0.75804 0.99573 0.99946 0.70884 0.68082 0.2 3.98214 0.4 0'00 0.63307 0.71904 0.95352 0.99995 0.97320 0.98300 0.99999 0'02 0.99846 0.73891 0.99990 0.87493 0.76730 0.59095 0.99981 0.83891 0.99305 0.88298 0.9 3.80234 0.99991 0.59483 0.99997 0.98077 0.99993 0.99993 0.3 4.91774 0.55567 0.64431 0.99202 0.99997 0.99992 0.75175 0.99968 0.97982 0.88493 0.99910 0.99674 0.99948 0.99693 0.98983 0.87286 0.99477 0.8 0.70540 0.99534 0.81859 0.84614 0.5 0.87900 0.99924 0.97670 0.8 3.7 3.98382 0.93056 0.78524 0.99986 0.98030 0.98610 0.99994 0.93699 0.99999 0.82894 0.97615 0.99989 0.99983 0.90490 0.99711 0.99938 0.95053 0.90988 0.99999 1.98713 0.92220 0.99997 0.89065 0.98574 0.99728 0.95254 0.99997 0.50798 0.98899 0.99999 1.86864 0.99720 0.94408 0.99653 0.3 3.99980 0.92786 0.99893 0.98956 0.76115 0.99918 0.99944 0.57535 0.98257 0.99788 0.65910 0.4 2.90147 0.99999 0.98778 0.63683 0.99813 0.97500 0.58317 0.94520 0.97381 0.96327 0.77035 0.1 2.86214 0.99999 0.0 4.98422 0.89796 0.99995 0.99036 0.97778 0.98928 0.99998 0.94295 0.77935 0.99950 0.99900 0.95994 0.99999 1.99998 0.72575 0.96080 0.59871 0.0 3.99836 0.99987 0.6 2.98169 0.99664 0.99931 0.96856 0.99994 0.99998 0.62930 0.99965 0.91149 0.99952 0.99598 0.99974 0.99994 0.99998 0.99632 0.99955 0.99878 0.99966 0.99999 0.99999 1.2 0.81327 0.99702 0.97831 0.89973 0.51595 0.99964 0.96926 0.99997 0.99999 0.91924 0.99998 0.67724 0.97725 0.88877 0.73237 0.92507 0.8 2.96485 0.99897 0.00000 0'06 0.66276 0.85083 0.80511 0.3 1.99781 0.67003 0.93574 0.99998 0.53586 0.9 1.88100 0.99585 0.5 1.99841 0.61791 0.99921 0.99224 0.99446 0.89435 0.7 1.1 3.99996 0.99973 0.98745 0.99643 0.91309 0.99978 0.7 2.99999 0.99916 0.99086 0.60257 0.99413 0.69497 0.97441 0.84849 0.93822 0.72907 0.92922 0.99995 0.93189 0.61409 0.99998 0.79955 0.99869 0.99942 0.99998 0.95818 0.99998 0.62172 0.99997 0.99999 0.92073 0.70194 0.99547 0.99903 0.99889 0.99977 0. Anexo B Texto Guía – Sistemas de Ingeniería 358 .
Copyright © 2024 DOKUMEN.SITE Inc.