antología de investigación de operaciones sistemas computacionales

176
Antología de Investigación de Operaciones Ingeniería en Sistemas Computacionales Instituto Tecnológico Superior de Xalapa Antología Investigación de Operaciones Ing. René Zahorí Torres Becerra 1

Upload: samuel-barrios

Post on 25-Oct-2015

277 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Instituto Tecnológico Superior de Xalapa

Antología

Investigación de

Operaciones

Docente:

ISC René Zahorí Torres Becerra

Ing. René Zahorí Torres Becerra 1

Page 2: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Temario

1. Programación Lineal1.1. Definición, desarrollo y tipos de modelos de Investigación de Operaciones1.2. Formulación de Modelos1.3. Método Gráfico1.4. Fundamentos del Método Símplex1.5. Aplicaciones diversas de programación lineal

2. Análisis de Redes2.1. Conceptos básicos2.2. Problema de Transporte2.3. Problema de Asignación2.4. Problema de la ruta más corta2.5. Programación de Proyectos (PERT-CPM)

3. Programación no Lineal3.1. Conceptos básicos de problemas de programación no lineal3.2. Ilustración gráfica de problemas de programación no lineal3.3. Tipos de problemas de programación no lineal3.4. Optimización clásica

3.4.1. Puntos de inflexión3.4.2. Máximos y mínimos

4. Teoría de Inventarios4.1. Sistemas de Administración y control4.2. Modelos Determinísticos

4.2.1. Lote económico sin déficit4.2.2. Lote económico con déficit

4.3. Lote Económico de producción

5. Líneas de espera5.1. Definiciones, características y suposiciones.5.2. Terminología y notación5.3. Proceso de nacimiento o muerte5.4. Modelos de Poisson

5.4.1. Un servidor5.4.2. Múltiples Servidores

5.5. Análisis de Costos

Ing. René Zahorí Torres Becerra 2

Page 3: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Unidad 1Programación Lineal

1.1. Definición, desarrollo y tipos de modelos de Investigación de Operaciones

Investigación de Operaciones o Investigación Operacional. Se puede definir de la siguiente manera: “La Investigación de Operaciones es la aplicación por grupos interdisciplinarios del método científico a problemas relacionados con el control de las organizaciones o sistemas a fin de que se produzcan soluciones que mejor sirvan a los objetivos de toda la organización”.

Historia de la Investigación de Operaciones.

La primera actividad de Investigación de Operaciones se dio durante la Segunda Guerra Mundial en Gran Bretaña, donde la Administración Militar llamó a un grupo de científicos de distintas áreas del saber para que estudiaran los problemas tácticos y estratégicos asociados a la defensa del país.

El nombre de Investigación de Operaciones fue dado aparentemente porque el equipo estaba llevando a cabo la actividad de investigar operaciones (militares).

Motivados por los resultados alentadores obtenidos por los equipos británicos, los administradores militares de Estados Unidos comenzaron a realizar investigaciones similares. Para eso reunieron a un grupo selecto de especialistas, los cuales empezaron a tener buenos resultados y en sus estudios incluyeron problemas logísticos complejos, la planeación de minas en el mar y la utilización efectiva del equipo electrónico.

Al término de la guerra y atraídos por los buenos resultados obtenidos por los estrategas militares, los administradores industriales empezaron a aplicar las herramientas de la Investigación de Operaciones a la resolución de sus problemas que empezaron a originarse debido al crecimiento del tamaño y la complejidad de las industrias.

Aunque se ha acreditado a Gran Bretaña la iniciación de la Investigación de Operaciones como una nueva disciplina, los Estados Unidos tomaron pronto el liderazgo en este campo rápidamente creciente. La primera técnica matemática ampliamente aceptada en el medio de Investigación de Operaciones fue el Método Símplex de Programación Lineal, desarrollado en 1947 por el matemático norteamericano George B. Dantzig. Desde entonces las nuevas técnicas se han desarrollado gracias al esfuerzo y cooperación de las personas interesadas tanto en el área académica como en el área industrial.

Un segundo factor en el progreso impresionante de la Investigación de Operaciones fue el desarrollo de la computadora digital, que con sus tremendas capacidades de velocidad de cómputo y de almacenamiento y recuperación de información, permitieron al tomador de decisiones rapidez y precisión.

Si no hubiera sido por la computadora digital, la Investigación de Operaciones con sus grandes problemas de computación no hubiera crecido al nivel de hoy en día.

Actualmente la Investigación de Operaciones se está aplicando en muchas actividades. Estas actividades han ido más allá de las aplicaciones militares e industriales, para incluir hospitales, instituciones financieras, bibliotecas, planeación urbana, sistemas de transporte y sistemas de comercialización.

Ing. René Zahorí Torres Becerra 3

Page 4: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Características de la Investigación de Operaciones.

Es muy notable el rápido crecimiento del tamaño y la complejidad de las organizaciones (empresas) humanas que se ha dado en estos últimos tiempos. Tal tamaño y complejidad nos hace pensar que una sola decisión equivocada puede repercutir grandemente en los intereses y objetivos de la organización y en ocasiones pueden pasar años para rectificar tal error. También el ritmo de la empresa de hoy implica que las DECISIONES se tomen más rápidamente que nunca, pues el hecho de posponer la acción puede dar una decisiva ventaja al contrario en este mundo de la competencia.

La palpable dificultad de tomar decisiones ha hecho que el hombre se aboque en la búsqueda de una herramienta o método que le permita tomar las mejores decisiones de acuerdo a los recursos disponibles y a los objetivos que persigue. Tal herramienta recibió el nombre de Investigación de Operaciones.

De la definición de Investigación de Operaciones, como veremos en el siguiente apartado, podemos resaltar los siguientes términos: organización, sistema, grupos interdisciplinarios, objetivo y metodología científica.

Una organización puede entenderse como un sistema, en el cual existen componentes; canales que comunican tales componentes e información que fluye por dichos canales. En todo sistema las componentes interactúan unas con otras y tales interacciones pueden ser controlables e incontrolables. En un sistema grande, las componentes se relacionan de muchas maneras, pero no todas son importantes, o mejor dicho, no todas las interacciones tienen efectos importantes en las componentes del sistema.

Por lo tanto es necesario que exista un procedimiento sistemático que identifique a quienes toman decisiones y a las interacciones que tengan importancia para los objetivos de la organización o sistema. Uno de esos procedimientos es precisamente la Investigación de Operaciones.

Una estructura por la que no fluye información, no es dinámica, es decir, no podemos considerarla como un sistema. Por lo tanto podemos decir que la información es lo que da “vida” a las estructuras u organizaciones humanas.

Los objetivos de toda organización serán siempre alcanzar el liderato en su rama, controlando la eficiencia y efectividad de todas sus componentes por medio de métodos que permitan encontrar las relaciones óptimas que mejor operen el sistema, dado un objetivo específico.

Ante el tremendo avance que se ha dado en casi todas las ciencias en las últimas décadas, ya no es factible querer saber un poco de todo, sino más bien especializarse en alguna rama de la ciencia. Los problemas que se presentan en las organizaciones no fácilmente se pueden resolver por un sólo especialista. Por el contrario son problemas multidisciplinarios, cuyo análisis y solución requieren de la participación de varios especialistas. Estos grupos interdisciplinarios necesariamente requieren de un lenguaje común para poder entenderse y comunicarse, donde la Investigación de Operaciones viene a ser ese puente de comunicación.

El enfoque de la Investigación de Operaciones es el mismo del método científico. En particular, el proceso comienza por la observación cuidadosa y la formulación del problema y sigue con la construcción de un modelo científico (por lo general matemático) que intenta abstraer la esencia del problema real. En este punto se propone la hipótesis de que el modelo es una representación lo suficientemente precisa de las características esenciales de la situación como para que las conclusiones (soluciones) obtenidas sean válidas también para el problema real. Esta hipótesis se verifica y modifica mediante las pruebas adecuadas. Entonces, en cierto modo, la Investigación de Operaciones incluye la investigación científica creativa de las propiedades fundamentales de las operaciones. Sin embargo, existe más que esto. En particular, la Investigación de Operaciones se ocupa también de la administración práctica de la organización. Así, para tener éxito, deberá también proporcionar conclusiones positivas y claras que pueda usar el tomador de decisiones cuando las necesite.

Ing. René Zahorí Torres Becerra 4

Page 5: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

La contribución del enfoque de Investigación de Operaciones proviene principalmente de:

1. La estructuración de una situación de la vida real como un modelo matemático, logrando una abstracción de los elementos esenciales para que pueda buscarse una solución que concuerde con los objetivos del tomador de decisiones. Esto implica tomar en cuenta el problema dentro del contexto del sistema completo.

2. El análisis de la estructura de tales soluciones y el desarrollo de procedimientos sistemáticos para obtenerlas.

3. El desarrollo de una solución, incluyendo la teoría matemática si es necesario, que lleva al valor óptimo de la medida de lo que se espera del sistema (o quizá que compare los cursos de acción opcionales evaluando esta medida para cada uno).

Metodología de la Investigación de Operaciones.

El proceso de la Investigación de Operaciones comprende las siguientes fases:1. Formulación y definición del problema.2. Construcción del modelo.3. Solución del modelo.4. Validación del modelo.5. Implementación de resultados.

Demos una explicación de cada una de las fases:

1.   Formulación y definición del problema. En esta fase del proceso se necesita: una descripción de los objetivos del sistema, es decir, qué se desea optimizar; identificar las variables implicadas, ya sean controlables o no; determinar las restricciones del sistema. También hay que tener en cuenta las alternativas posibles de decisión y las restricciones para producir una solución adecuada.

2.   Construcción del modelo. En esta fase, el investigador de operaciones debe decidir el modelo a utilizar para representar el sistema. Debe ser un modelo tal que relacione a las variables de decisión con los parámetros y restricciones del sistema. Los parámetros (o cantidades conocidas) se pueden obtener ya sea a partir de datos pasados o ser estimados por medio de algún método estadístico. Es recomendable determinar si el modelo es probabilístico o determinístico. El modelo puede ser matemático, de simulación o heurístico, dependiendo de la complejidad de los cálculos matemáticos que se requieran.

3.   Solución del modelo. Una vez que se tiene el modelo, se procede a derivar una solución matemática empleando las diversas técnicas y métodos matemáticos para resolver problemas y ecuaciones. Debemos tener en cuenta que las soluciones que se obtienen en este punto del proceso, son matemáticas y debemos interpretarlas en el mundo real. Además, para la solución del modelo, se deben realizar análisis de sensibilidad, es decir, ver cómo se comporta el modelo a cambios en las especificaciones y parámetros del sistema. Esto se hace, debido a que los parámetros no necesariamente son precisos y las restricciones pueden estar equivocadas.

4.   Validación del modelo. La validación de un modelo requiere que se determine si dicho modelo puede predecir con certeza el comportamiento del sistema. Un método común para probar la validez del modelo, es someterlo a datos pasados disponibles del sistema actual y observar si reproduce las situaciones pasadas del sistema. Pero como no hay seguridad de que el comportamiento futuro del

Ing. René Zahorí Torres Becerra 5

Page 6: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

sistema continúe replicando el comportamiento pasado, entonces siempre debemos estar atentos de cambios posibles del sistema con el tiempo, para poder ajustar adecuadamente el modelo.

5.   Implementación de resultados. Una vez que hayamos obtenido la solución o soluciones del modelo, el siguiente y último paso del proceso es interpretar esos resultados y dar conclusiones y cursos de acción para la optimización del sistema. Si el modelo utilizado puede servir a otro problema, es necesario revisar, documentar y actualizar el modelo para sus nuevas aplicaciones.

 Tipos de Modelos de la Investigación de Operaciones

1. Determinísticos1.1. Programación matemática

1.1.1. Programación lineal1.1.2. Programación entera1.1.3. Programación dinámica1.1.4. Programación no lineal1.1.5. Programación multiobjetivo

1.2. Modelos de transporte1.3. Modelos de redes

2. Probabilísticos2.1. Programación estocástica2.2. Gestión de inventarios2.3. Fenómenos de espera (colas)2.4. Teoría de juegos2.5. Simulación

Concepto de optimización.

            Una característica adicional, que se mencionó como de pasada, es que la Investigación de Operaciones intenta encontrar la mejor solución, o la solución óptima, al problema bajo consideración. En lugar de contentarse con sólo mejorar el estado de las cosas, la meta es identificar el mejor curso de acción posible. Aún cuando debe interpretarse con todo cuidado, esta “búsqueda de la optimalidad” es un aspecto muy importante dentro de la Investigación de Operaciones. 

Áreas de aplicación de la Investigación de Operaciones.

            Como su nombre lo dice, Investigación de Operaciones significa “hacer investigación sobre las operaciones”. Esto dice algo del enfoque como del área de aplicación. Entonces, la Investigación de Operaciones se aplica a problemas que se refieren a la conducción y coordinación de operaciones o actividades dentro de una organización. La naturaleza de la organización es esencialmente inmaterial y, de hecho, la Investigación de Operaciones se ha aplicado en los negocios, la industria, la milicia, el gobierno, los hospitales, etc. Así, la gama de aplicaciones es extraordinariamente amplia. Casi todas las organizaciones más grandes del mundo (alrededor de una docena) y una buena proporción de las industrias más pequeñas cuentan con grupos bien establecidos de Investigación de Operaciones. Muchas industrias,

Ing. René Zahorí Torres Becerra 6

Page 7: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

incluyendo la aérea y de proyectiles, la automotriz, la de comunicaciones, computación, energía eléctrica, electrónica, alimenticia, metalúrgica, minera, del papel, del petróleo y del transporte, han empleado la Investigación de Operaciones. Las instituciones financieras, gubernamentales y de salud están incluyendo cada vez más estas técnicas.

Ing. René Zahorí Torres Becerra 7

Page 8: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

             Para ser más específicos, se consideran algunos problemas que se han resuelto mediante algunas técnicas de Investigación de Operaciones. La programación lineal se ha usado con éxito en la solución de problemas referentes a la asignación de personal, la mezcla de materiales, la distribución y el transporte y las carteras de inversión. La programación dinámica se ha aplicado con buenos resultados en áreas tales como la planeación de los gastos de comercialización, la estrategia de ventas y la planeación de la producción. La teoría de colas ha tenido aplicaciones en la solución de problemas referentes al congestionamiento del tráfico, al servicio de máquinas sujetas a descomposturas, a la determinación del nivel de la mano de obra, a la programación del tráfico aéreo, al diseño de presas, a la programación de la producción y a la administración de hospitales. Otras técnicas de Investigación de Operaciones, como la teoría de inventarios, la teoría de juegos y la simulación, han tenido exitosas aplicaciones en una gran variedad de contextos.1

1.2. Formulación de Modelos

Para llevar a cabo la Formulación de un Modelo es necesario seguir los siguientes puntos:

1. Identificar los elementos de decisión1. Alternativas (Variables de decisión)2. Limitaciones del sistema (Restricciones)3. Objetivos (uno o varios, optimizar o satisfacer)

2. Hay que recoger información relevante (los datos pueden ser un grave problema)

Es la etapa fundamental para que las decisiones sean útiles

Estructura de los modelos empleados en la Investigación de Operaciones.

            El enfoque de la Investigación de Operaciones es el modelaje. Un modelo es una herramienta que nos sirve para lograr una visión bien estructurada de la realidad. Así, el propósito del modelo es proporcionar un medio para analizar el comportamiento de las componentes de un sistema con el fin de optimizar su desempeño. La ventaja que tiene el sacar un modelo que represente una situación real, es que nos permite analizar tal situación sin interferir en la operación que se realiza, ya que el modelo es como si fuera “un espejo” de lo que ocurre.            Para aumentar la abstracción del mundo real, los modelos se clasifican como 1) icónicos, 2) análogos, 3) simbólicos.            Los modelos icónicos son la representación física, a escala reducida o aumentada de un sistema real.            Los modelos análogos esencialmente requieren la sustitución de una propiedad por otra con el fin de permitir la manipulación del modelo. Después de resolver el problema, la solución se reinterpreta de acuerdo al sistema original.            Los modelos más importantes para la investigación de operaciones, son los modelos simbólicos o matemáticos, que emplean un conjunto de símbolos y funciones para representar las variables de decisión y sus relaciones para describir el comportamiento del sistema. El uso de las matemáticas para representar el modelo, el cual es una representación aproximada de la realidad, nos permite aprovechar las computadoras de alta velocidad y técnicas de solución con matemáticas avanzadas.            Un modelo matemático comprende principalmente tres conjuntos básicos de elementos que son:

1 Semana 1: Tarea de investigación: a) Realizar un mapa conceptual del tema 1.1

Ing. René Zahorí Torres Becerra 8

Page 9: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

1. Variables y parámetros de decisión.deben determinarse resolviendo el modelo. Los parámetros son los valores conocidos que relacionan las variables de decisión con las restricciones y función objetivo. Los parámetros del modelo pueden ser determinísticos o probabilísticos.

2. Restricciones. Para tener en cuenta las limitaciones tecnológicas, económicas y otras del sistema, el modelo debe incluir restricciones (implícitas o explícitas) que restrinjan las variables de decisión a un rango de valores factibles.

3. Función objetivo. La función objetivo define la medida de efectividad del sistema como una función matemática de las variables de decisión. Se Maximiza “Ganancia” y se Minimiza “Costos”.

            La solución óptima será aquella que produzca el mejor valor de la función objetivo, sujeta a las restricciones.

Ejemplos

1. La WYNDOR GLASS CO. Produce artículos de vidrio de Alta calidad, entre ellos ventanas y puertas de vidrio. Tiene tres plantas. Los marcos y molduras de aluminio se hacen en la planta 1, los de madera en la planta 2 y la 3 produce el vidrio y ensambla los productos.Debido a una reducción de las ganancias, la alta administración ha decidido reorganizar la línea de producción de la compañía. Se descontinuarán varios productos no rentables y se dejará libre una parte de la capacidad de la producción para emprender la fabricación de los 2 productos nuevos que tienen ventas potenciales grandes:

Producto 1: Una puerta de vidrio de 8 pies con marco de aluminio.Producto 2: Una ventana corrediza con marco de madera de 4 pies por 6.

El producto 1 requiere parte de la capacidad de producción en las plantas 1 y 3 y nada en la planta 2. El producto 2 solo necesita trabajo en las plantas 2 y 3. La división de comercialización ha concluido que la compañía puede vender todos los productos que se puedan fabricar en las plantas. Sin embargo, como ambos productos competirán por la misma capacidad de producción en la planta 3, no está claro que mezcla de productos sería la más rentable. Por lo tanto se ha formado un equipo de IO para estudiar este problema.Después de hacer una investigación, el depto. De IO determinó:El porcentaje de la capacidad de producción en cada planta que estará disponible para estos productos.El porcentaje de esta capacidad que requiere cada unidad producida por minuto.La ganancia unitaria por cada minuto.

Esta información se ve reflejada en la siguiente tabla:

PlataTiempo de producción por lote, horas

Tiempo de producción disponible a la semana en hrs.

Producto1 2

1 1 0 42 0 2 123 3 2 18

Ganancia por Lote $3,000.00 $5,000.00

Ing. René Zahorí Torres Becerra 9

Page 10: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Solución del problema

Definición de variables:

X1 = Cantidad a producir del producto 1 X2 = Cantidad a producir del producto 2

Formulación del modelo:

Max Z = 3X1 + 5X2 s.a.

X1 <= 4 2X2 <= 123X1 + 2X2 <= 18

Xi >= 0 para todo valor de ( ) i

2. La compañía XYZ fabrica zapatos de dos clases: Normales y de Lujo, se desea determinar su producción de cada clase de zapatos en tal forma que maximice sus utilidades diarias durante el mes siguiente. El tiempo empleado en producir un par de zapatos de lujo, es el doble del necesario para un par estándar. Si todos los zapatos fuesen de clase estándar la compañía tendría la capacidad de producir 1200 pares por día. El suministro de piel es suficiente para 900 pares por día sin importar la clase de zapatos. De los otros materiales necesarios se tiene la capacidad de producir 600 pares de lujo por día y 1300 pares estándar por día. Las utilidades netas son de $60.00 y $30.00 para zapatos de Lujo y estándar respectivamente.

Solución del problema

Definición de variables:

X1 = Cantidad de zapatos de lujo a producir X2 = Cantidad de zapatos estándar a producir

Formulación del modelo:

Max Z = 60X1 + 30X2 s.a.

2X1 + X2 <= 1200 } Capacidad de producción X1 + X2 <= 900 } Piel X1 <= 600 Otros Materiales X2 <= 1300

Xi >= 0 i

Ing. René Zahorí Torres Becerra 10

Page 11: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

3. Una fábrica de televisores desea maximizar sus utilidades en la venta de sus dos artículos principales: televisores a color y televisores de plasma. Una televisión a color requiere en promedio 4 horas-hombre en producción de partes, 2 horas-hombre para ensamble y 0.5 horas-hombre para inspección. Una televisión de plasma requiere en promedio 6 horas-hombre en producción de partes, 3 horas-hombre para ensamble y 1 horas-hombre para inspección. Durante cada periodo de producción hay disponibles 2500 horas-hombre para producción de partes, 1100 horas-hombre para ensamble y 600 horas-hombre para inspección. La utilidad neta para cada televisor de plasma y color es de $2500.00 y $1000.00 respectivamente.

Solución del problema

Definición de variables:

X1 = Cantidad de televisores de plasma X2 = Cantidad de televisores a color

Formulación del modelo:

Max Z = 2500X1 + 1000X2 s.a.6X1 + 4X2 <= 25003X1 + 2X2 <= 1100 X1 + .5X2 <= 600

Xi >= 0 i

4. Un experimento social interesante en la región del mediterráneo es el sistema kibbutzim, también conocido como comunidades agrícolas comunales, en Israel. Es usual que los grupos de kibbutzim se unan para compartir los servicios técnicos comunes y coordinar su producción. El primer grupo se refiere a 3 subgrupos de kibbutzim el cual se llamará la Confederación Sur de kibbutzim. La planeación global de la Confederación Sur de kibbutzim se hace en su oficina de coordinación técnica. En la actualidad están planeando la producción agrícola para el año próximo. La producción agrícola está limitada tanto por la extensión de la tierra disponible para la irrigación como por la cantidad de agua que la comisión de aguas asigna para irrigarlo. El tipo de cosecha apropiada para la región incluye: remolacha, algodón y sorgo, y son estos los 3 tipos de cosechas los que se están estudiando para la estación venidera. Las cosechas difieren primordialmente en su rendimiento por acre esperado y en su consumo de agua, además el ministerio de cultura ha establecido una cantidad máxima de acres que la Confederación Sur de kibbutzim puede dedicar a estas cosechas. Los 3 kibbutzim que pertenecen a Confederación Sur están de acuerdo en sembrar la misma proporción de sus tierras irrigables disponibles. Cualquier combinación de estas cosechas se puede sembrar en cualquiera de los kibbutzim. El trabajo al que se enfrentó la oficina de coordinación técnica consiste en planear cuantos acres deben asignarse a cada tipo de cosecha para cada kibbutzim.

Ing. René Zahorí Torres Becerra 11

Page 12: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Los datos de recursos para la Confederación Sur de kibbutzim son los siguientes:

No. de KibbutzimTerreno para uso

(Acres)Asignación de Agua

(pies –Acre)1 400 6002 600 8003 300 375

Los datos de cosechas para la Confederación Sur de kibbutzim son los siguientes:

CosechaCantidad Máxima

(Acres)Consumo de agua (pies-acre/acres)

Rendimiento Neto ($/acre)

1 600 3 4002 500 2 3003 325 1 100

Cumpliendo con las restricciones dadas el objetivo es maximizar el rendimiento total para la Confederación Sur.

Solución del problema

Definición de variables: Xi es la cantidad de cosecha sembrada en cada kibbutzim

X1 = Remolacha en el kibbutzim 1X2 = Algodón en el kibbutzim 1X3 = Sorgo en el kibbutzim 1

X4 = Remolacha en el kibbutzim 2X5 = Algodón en el kibbutzim 2X6 = Sorgo en el kibbutzim 2

X7 = Remolacha en el kibbutzim 3X8 = Algodón en el kibbutzim 3X9 = Sorgo en el kibbutzim 3

Formulación del modelo:

Max Z = 400(X1 + X4 + X7) + 300(X2+ X5+ X8) + 100(X3+ X6+ X9)

s.a.Terreno: X1 + X2 + X3 <= 400 X4 + X5 + X6 <= 600 X7 + X8 + X9 <= 300

Agua: 3X1 + 2X2 + X3 <= 600 3X4 + 2X5 + X6 <= 800

3X7 + 2X8 + X9 <= 375Cosecha: X1 + X4 + X7 <= 600

X2 + X5 + X8 <= 500 X3 + X6 + X9 <= 325

Proporción: X1+X2+X3

400=

X 4+X5+X6

600=

X7+ X8+X9

300

Xi >= 0 i

Ing. René Zahorí Torres Becerra 12

Page 13: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

5. Cierta compañía tiene 3 plantas con un exceso en su capacidad de producción. Las 3 plantas pueden fabricar un determinado producto y la gerencia ha decidido usar parte de la capacidad adicional para este fin. El producto puede fabricarse en 3 tamaños que son: chico, mediano y grande los cuales darán una ganancia neta de $275.00, $330.00 y $375.0 respectivamente. Las plantas 1, 2 y 3 tienen capacidad de mano de obra y equipo para producir 750, 900 y 450 unidades diarias cada una, sin importar el tamaño o la combinación de tamaños que se pidan. Sin embargo, la cantidad de espacio disponible para almacenar material en el proceso impone una limitación en las tasas de producción. Se cuenta con 13000, 12000 y 5000 pies2 de espacio en las plantas, para los materiales en proceso de producción diaria de este producto. Cada unidad chica, mediana y grande que se produce requiere 12, 15 y 20 pies2 respectivamente. Los pronósticos de mercado indican que se pueden vender 750, 1200 y 900 unidades diarias, correspondientes a los tamaños chico, mediano y grande. Con el fin de mantener una carga de trabajo uniforme entre las plantas y para conservar alguna flexibilidad, la gerencia ha decidido que la producción adicional que se asigne emplee el mismo porcentaje de la capacidad adicional con que cuenta la fábrica. El gerente quiere saber cuántas unidades de cada tamaño debe producir en la planta para maximizar la ganancia.

Solución del problema

Definición de variables: Xi es la cantidad de producto i en cada planta

X1 = Chico en la planta 1X2 = Mediano en la planta 1X3 = Grande en la planta 1

X4 = Chico en la planta 2X5 = Mediano en la planta 2X6 = Grande en la planta 2

X7 = Chico en la planta 3X8 = Mediano en la planta 3X9 = Grande en la planta 3

Formulación del modelo:

Max Z = 275(X1 + X4 + X7) + 330(X2+ X5+ X8) + 375(X3+ X6+ X9)

s.a.Capacidad: X1 + X2 + X3 <= 750 X4 + X5 + X6 <= 900 X7 + X8 + X9 <= 450

Cap.esp.dis.:12X1+15X2+20X3 <= 13000 12X4 + 15X5 + 20X6 <= 12000

12X7 + 15X8 + 20X9 <= 5000

Demanda: X1 + X4 + X7 >= 750 X2 + X5 + X8 >= 1200 X3 + X6 + X9 >= 900

Proporción: X1+X2+X3

750=

X 4+X5+X6

900=

X7+ X8+X9

450

Xi >= 0 i

Ing. René Zahorí Torres Becerra

Page 14: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

6. Una familia es propietaria de 125 acres y tiene fondos por $40,000.00 para invertir. Sus miembros pueden producir un total de 3500 Hrs-Hombre. De mano de obra durante el invierno y 4000 Hrs-Hombre durante el verano. En caso de que no se necesite una parte de esas Hrs-Hombre, los jóvenes de la familia las emplean para trabajar en el campo vecino por $5.00 la hora durante los meses de invierno y por $6.00 la hora en el verano. La familia puede obtener el ingreso en efectivo a partir de 3 tipos de cosecha y dos tipos de animales de granja; Vacas lecheras y gallinas ponedoras. Para la cosecha no se necesita inversión, pero cada vaca requerirá un desembolso de $1,200.00 y cada gallina costaría $9.00. Cada vaca necesita 1.5 acres, 100 Hrs-Hombre durante el invierno y otras 50 Hrs-Hombre en el verano; cada una producirá un ingreso anual neto de $1,000.00 para la familia. Las cifras correspondientes para cada gallina son: nada de terreno, 0.6 Hrs-Hombre en el invierno, 0.3 Hrs-Hombre en el verano y un ingreso anual neto de $5.00. Caben 3000 gallinas por gallinero y el corral limita el ganado a un máximo de 32 vacas. Las estimaciones de las Hrs-Hombre y el ingreso por acres planteado con cada tipo de cosecha son:

Soya Maíz AvenaHrs-Hombre en Invierno 20 35 10

Hrs-Hombre en el Verano 50 75 40Ingreso neto anual ($) 500 750 350

La familia quiere determinar cuántos acres debe sembrar con cada tipo de cosecha y cuantas vacas y gallinas debe mantener para maximizar su ingreso neto.

Solución del problema

Definición de variables: Xi es la cantidad de producto i a sembrar o mantener.

X1 = Cantidad de Soya a sembrar por acreX2 = Cantidad de Maíz a sembrar por acreX3 = Cantidad de Avena a sembrar por acreX4 = Cantidad de vacas a mantener por acre

X5 = Cantidad de gallinas a mantener por acreX5 = Cantidad ganada en InviernoX6 = Cantidad ganada en Verano

Formulación del modelo:

Max Z = 500X1 + 750X2 + 350X3+ 1000X4+ 5X5+ 5X6+ 6X7

s.a.Terreno: X1 + X2 + X3 + 1.5X4 <= 125

Inversión: 1200X4+9X5 <= 40,000

Hrs.-Hombre Invierno:

20X1 + 35X2 + 10X3 + 100X4 + 0.6X5 <= 3500

Hrs.-Hombre Verano:

50X1 + 75X2 + 40X3 + 50X4 + 0.3X5 <= 4000

Capacidad: X4 <= 32X5 <= 3,000

Xi >= 0 i

Ing. René Zahorí Torres Becerra 14

Page 15: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

7. Se tienen 4 proyectos con sus respectivos costos durante un periodo de 3 años, así como la utilidad total en el periodo de los 3 años. Se desea maximizar la utilidad total si se dispone de $30,000.00, $28,000.00 y $25,000.00 en cada uno de los años según la siguiente tabla:

ProyectoCostos Utilidad

TotalAño 1 Año 2 Año 31 7 10 3 952 3 13 7 503 16 12 16 1304 12 8 15 100

Solución del problema

Definición de variables:

X1 = Proyecto 1 X2 = Proyecto 2X3 = Proyecto 3 X4 = Proyecto 4

Formulación del modelo:

Max Z = 95X1 + 50X2 + 130X3 + 100X4 s.a. 7X1 + 3X2 + 16X3 + 12X4 <= 30,00010X1 + 13X2 + 12X3 + 8X4 <= 28,000

3X1 + 7X2 + 16X3 + 15X4 <= 25,000

Xi >= 0 i

8. Una compañía distribuidora de cerveza desea saber que política de distribución minimizará sus costos de distribución, si cuenta con depósitos en: Monterrey, México y Guadalajara, y los centros de consumo a los que tiene que surtir son: Tecate, Culiacán, Durango y Mérida. Los costos de distribución entre centros de consumo y depósitos, así como las capacidades y demandas por periodos son:

Tecate Culiacán Durango Mérida CapacidadMonterrey 8+ 3+ 4+ 5+ 550

México 7+ 6+ 5+ 2+ 300Guadalajara 2+ 4+ 3+ 5+ 250

Demanda 250* 300* 200* 160* + Miles de cartones* Costo/km en cartones

Formule el problema de programación lineal.

Solución del problema

Definición de variables: Xij Cantidad de miles de cartones que se van a mandar del centro de producción i al lugar de consumo j. (i=1, 2, 3 y j=1, 2, 3, 4).

Formulación del modelo:

Ing. René Zahorí Torres Becerra 15

Page 16: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Min Z = 8X11 + 3X12 + 4X13 + 5X14 + 7X21 + 6X22 + 5X23 + 2X24 + 2X31 + 4X32 + 3X33 + 3X34

s.a.Capacidad: X11 + X12 + X13 + X14 <= 550

X21 + X22 + X23 + X24 <= 300X31 + X32 + X33 + X34 <= 200

Demanda: X11 + X21 + X31 <= 250X12 + X22 + X32 <= 300

X13 + X23 + X33 <= 200X14 + X24 + X34 <= 160

Xij >= 0 ij

9. Una granja desea encontrar la fórmula de una dieta para pollos que suponga una mezcla de 100 lbs. que es el lote diario requerido. La dieta debe contener al menos 0.8% pero no más de 1.2% de calcio, al menos 22% de proteínas, a lo más 5% de fibra cruda. Suponga que los principales ingredientes utilizados contienen maíz, soya y caliza. El contenido nutritivo de estos ingredientes se resume a continuación:

ProductoIngredientes (lbs * lb de ingrediente)

Costo /lbCalcio Proteínas Fibra

Piedra caliza 0.380 0.00 0.00 0.0164Maíz 0.001 0.09 0.02 0.0463Soya 0.002 0.50 0.08 0.1250

Solución del problema

Definición de variables: Xi Cantidad de ingredientes que debe contener la mezcla.

X1 = Piedra Caliza X2 = MaízX3 = Soya

Formulación del modelo:

Min Z = 0.0164X1 + 0.0463X2 + 0.1250X3 s.a.0.380X1 + 0.001X2 + 0.002X3 >= 0.008 * 100 (Libras de la mezcla)0.380X1 + 0.001X2 + 0.002X3 <= 0.012 * 100

0.009X2 + 0.500X3 >= 0.220 * 100 0.020X2 + 0.080X3 <= 0.050 * 100

Xi >= 0 i

Ing. René Zahorí Torres Becerra 16

Page 17: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

10. Una fabrica produce 3 modelos (I, II y III) de un cierto producto y usa 2 tipos de materia prima (A y B) de los cuales se tienen disponibles 2,000 y 3,000 unidades respectivamente. Los requisitos de materia prima por unidad de los 3 modelos son:

Materia PrimaRequisitos por unidad de modelo

DisponibilidadI II III

A 2 3 5 2,000B 4 2 7 3,000

El tiempo de mano de obra para cada unidad del modelo I es 2 veces el del modelo II y 3 veces el del modelo III. La fuerza laboral completa de la fábrica puede producir el equivalente de 700 unidades del modelo I. En una encuesta de mercado se indica que la demanda mínima de los 3 modelos es de 200, 250 y 150 unidades respectivamente, sin embargo las relaciones del no. unidades producidas debe ser igual a 3:2:5. Suponga que los beneficios pos unidad de los modelos I, II y III son: 30, 20 y 50 unidades monetarias. Formule el problema por medio de un modelo de programación lineal.

Solución del problema

Definición de variables: Xi Cantidad de artículos a producirse de cada modelo.

X1 = Modelo I X2 = Modelo IIX3 = Modelo III

Formulación del modelo:

Max Z = 30X1 + 20X2 + 50X3 s.a.Materia Prima:2X1 + 3X2 + 5X3 <= 2000

4X1 + 2X2 + 7X3 <= 3000

Demanda: X1 >= 200, X2 >= 250, X3 >= 150

Cap. Disponible: X1 + 2X2 + 3X3 <= 700

Xi >= 0 i

11. Se procesan 4 productos sucesivamente en 2 maquinas. Los tiempos de manufactura en hrs. por unidad de cada producto se tabulan a continuación para las 2 maquinas:

MaquinariaTiempo por unidades (horas)

DisponibilidadProducto 1 Producto 2 Producto 3 Producto 4

A 2 3 4 2 $10.00B 3 2 1 2 $15.00

Ing. René Zahorí Torres Becerra 17

Page 18: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

El costo total de producir una unidad de cada producto está basado directamente en el tiempo de máquina. Suponga que le costo por hora de las maquinas 1 y 2 es de 10 y 15 horas. Las horas totales presupuestadas para todos los productos en las maquinas 1 y 2 son 500 y 380. Si el precio de venta por unidad para los productos 1, 2, 3 y 4 es de 65, 70, 55 y 45 respectivamente, formúle el problema como un modelo de programación lineal para maximizar el beneficio neto total.

Solución del problema

Definición de variables: Xi Cantidad de artículos a producirse de cada producto

X1 = Producto 1 X2 = Producto 2X3 = Producto 3 X4 = Producto 4

Utilidad: Precio de Venta – Costo, por lo tanto:

Producto 1 = 65 – 2(10) – 3(15) = 0Producto 2 = 70 – 3(10) – 2(15) = 10Producto 3 = 55 – 4(10) – 1(15) = 0Producto 4 = 45 – 2(10) – 2(15) = 5

Formulación del modelo:

Max Z = 0X1 + 10X2 + 0X3 – 5X4 s.a.2X1 + 3X2 + 4X3 + 2X4 <= 5003X1 + 2X2 + X3 + 2X4 <= 380

Xi >= 0 i

12. Para una cafetería que trabaja 24 horas se requieren las siguientes meseras:

Horarios del día No. de meseras requeridas02 – 06 406 – 10 810 – 14 1014 – 18 718 – 22 1222 – 02 4

Cada mesera trabaja turnos de 8 horas consecutivas por día. El objetivo es encontrar el número más pequeño de meseras requerido para cumplir los requisitos anteriores. Formule el problema con un modelo de programación lineal.

Ing. René Zahorí Torres Becerra 18

Page 19: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Solución del problema

Definición de variables: Xi no de meseras que inician su turno

Formulación del modelo:

Min Z = X1 + X2 + X3 + X4 + X5+ X6 + X0

s.a.X0 + X1 >= 4 (Turno de 02 – 06)X1 + X2 >= 8 (Turno de 06 – 10)X2 + X3 >= 10 (Turno de 10 – 14)X3 + X4 >= 7 (Turno de 14 – 18)X4 + X5 >= 12 (Turno de 18 – 22)X5 + X0 >= 4 (Turno de 22 – 02)

Xi >= 0 i

13. Dos aleaciones A y B se hacen de materiales (I, II, III y IV) de acuerdo con las siguientes

especificaciones:

Aleación A:A lo más 80% de IA lo más 30% de IIAl menos 50% de IV

Aleación B:Entre 40% y un 60% de IIAl menos 30% de IIIA lo menos 70% de IV

Los 4 metales se extraen de diferentes minerales cuyos constituyentes en % de éstos metales, cantidad máxima disponible y costo por tonelada se tabulan como sigue:

MaterialCantidad

Máxima(tons)Constituyentes (%) Precio

($/Ton)I II III IV Otros1 1,000 20 10 30 30 10 302 2,000 10 20 30 30 10 403 3,000 5 5 70 20 0 50

Suponiendo que los precios de venta de las aleaciones A y B son $200.00 y $300.00 pesos por tonelada. Formule un modelo de programación lineal para resolver este problema.

Solución del problema

Definición de variables: Xijk Cantidad de minerales necesarios para extraer los metales (Aleación i=1,2, Mineral j=1,2,3 y Constituyente k=1,2,3,4).

Formulación del modelo:

Min Z = 30(X111 + X112 + X113 + X114 + X211 + X212 + X213 + X214) + 40(X121 + X122 + X123 + X124 + X221 + X222 + X223 + X224) + 50(X131 + X132 + X133 + X134 + X231 + X232 + X233 + X234)

Ing. René Zahorí Torres Becerra 19

Page 20: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

s.a.Aleación 1: 0.20X111 + 0.10X121 + 0.05X131 <= .80

0.10X112 + 0.20X122 + 0.05X132 <= .300.30X114 + 0.30X123 + 0.20X134 <= .50

Aleación 2: 0.10X212 + 0.20X222 + 0.05X232 >= .400.10X212 + 0.20X222 + 0.05X232 <= .60

0.30X213 + 0.30X223 + 0.70X233 >= .300.30X214 + 0.30X224 + 0.20X234 <= .70

Toneladas por mineral: ∑Xi1k <= 1,000, ∑Xi2k <= 2,000, ∑Xi3k <= 3,000

Xi >= 0 i 2

1.3. Método Gráfico

El método gráfico se utiliza para la solución de problemas de PL, representando geométricamente a las restricciones, condiciones técnicas y el objetivo.

El modelo se puede resolver en forma gráfica si sólo tiene dos variables. Para modelos con tres o más variables, el método gráfico es impráctico o imposible.

Cuando los ejes son relacionados con las variables del problema, el método es llamado método gráfico en actividad. Cuando se relacionan las restricciones tecnológicas se denomina método gráfico en recursos.

Los pasos necesarios para realizar el método son nueve:

1. Graficar las soluciones factibles, o el espacio de  soluciones (factible), que satisfagan todas las restricciones en forma simultánea.

2. Las restricciones de no negatividad  Xi>= 0 confían todos los valores posibles.

3. El espacio encerrado por las restricciones restantes se determinan sustituyendo en primer término <= por (=) para cada restricción, con lo cual se produce la ecuación de una línea recta.

4. Trazar cada línea recta en el plano y la región en cual se encuentra cada restricción cuando se considera la desigualdad lo indica la dirección de la flecha situada sobre la línea recta asociada.

5. Cada punto contenido o situado en la frontera del espacio de soluciones satisfacen todas las restricciones y por consiguiente, representa un punto factible.

6. Aunque hay un número infinito de puntos factibles en el espacio de soluciones, la solución óptima puede determinarse al observar la dirección en la cual aumenta la función objetivo.

7. Las líneas paralelas que representan la función objetivo se trazan mediante la asignación de valores arbitrarios a fin de determinar la pendiente y la dirección en la cual crece o decrece el valor de la función objetivo.

2 Semana 2: Tarea en equipo b) Resolver los ejercicios de planteamiento designados por el docente y realizar una documentación explicita (tema 1.2)

Ing. René Zahorí Torres Becerra 20

Page 21: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ejemplo

La WYNDOR GLASS CO. Produce (…)

Formulación del problema

Max Z = 3X1 + 5X2 s.a.

X1 <= 4 ….(1) 2X2 <= 12 ….(2)3X1 + 2X2 <= 18 ….(3)

Xi >= 0 para todo valor de ( ) i

Solución del problema

Para (1)Si X1 = 0, X2 = 0y X2 = 0, X1 = 4

Para (2)Si X1 = 0, X2 = 6y X2 = 0, X1 = 0

Para (3)Si X1 = 0, X2 = 9y X2 = 0, X1 = 6

Para (Z)3X1 + 5X2 = 15Si X1 = 0, X2 = 3y X2 = 0, X1 = 5

Ing. René Zahorí Torres Becerra 21

Z

Punto Optimo (2,6)

X2

1110

(1)

98 (3

)

7 (2)

6543210 1 2 3 4 5 6 7 8 9 X

1

Región Factible

Page 22: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Resuelve los siguientes problemas por el método Gráfico

1. Max Z = 6X1 + 3X2 s.a.2X1 + X2 <= 12 X1 + X2 <= 9 X1 <= 6 X2 <= 13

Xi >= 0 i

2. Max Z = 25X1 + 10X2 s.a.6X1 + 4X2 <= 253X1 + 2X2 <= 11

X1 + .5X2 <= 6

Xi >= 0 i

3. Min Z = 4X1 + 3X2 s.a.

2X1 + X2 <= 10-3X1 + 2X2 <= 6 X1 + X2 >= 6

Xi >= 0 i

4. Min Z = 3X1 + 2X2 s.a.

X1 >= 9X1 + X2 >= 12

Xi >= 0 i

5. Max Z = 3X1 + 2X2 s.a.

X1 = 6 X2 <= 6X1 + X2 <= 9

Xi >= 0 I

3

Introducción a la programación lineal

Muchas personas clasifican el desarrollo de la programación lineal entre los avances científicos más importantes de mediados del siglo XX, su impacto desde 1950 ha sido extraordinario. En la actualidad es una herramienta de uso normal que ha ahorrado miles o millones de pesos a muchas compañías o negocios, incluyendo empresas medianas en los distintos países industrializados del mundo; su aplicación a otros sectores de la sociedad se está ampliando con rapidez. Una proporción muy grande de los cálculos científicos en computadoras está dedicada al uso de la programación lineal.

¿Cuál es la naturaleza de esta notable herramienta y qué tipos de problemas puede manejar. Expresado brevemente, el tipo más común de aplicación abarca el problema general de asignar recursos limitados entre actividades competitivas de la mejor manera posible (es decir, en forma óptima). Con más precisión, este problema incluye elegir el nivel de ciertas actividades que compiten por recursos escasos necesarios para realizarlas. Después, los niveles de actividad elegidos dictan la cantidad de cada recurso que consumirá cada una de ellas. La variedad de situaciones a las que se puede aplicar esta descripción es sin duda muy grande, y va desde la asignación de instalaciones de producción a los productos, hasta la asignación de los recursos nacionales a las necesidades de un país; desde la selección de una cartera de inversiones, hasta la selección de los patrones de envío; desde la planeación agrícola, hasta el diseño de una terapia de radiación, etc. No obstante, el ingrediente común de todas estas situaciones es la necesidad de asignar recursos a las actividades eligiendo los niveles de las mismas.

La programación lineal utiliza un modelo matemático para describir el problema. El adjetivo lineal significa que todas las funciones matemáticas del modelo deber ser funciones lineales. En este caso, las palabra programación no se refiere a programación en computadoras; en esencia es un sinónimo de planeación. Así, la programación lineal trata la planeación de las actividades para obtener un resultado óptimo, esto es, el resultado que mejor alcance la meta especificada (según el modelo matemático) entre todas las alternativas de solución.

Aunque la asignación de recursos a las actividades es la aplicación más frecuente, la programación lineal tiene muchas otras posibilidades. de hecho, cualquier problema cuyo modelo matemático se ajuste al 3 Semana 3: Tarea en equipo: c) Resolver los ejercicios del 1 al 5 del método gráficos (tema 1.3)

Ing. René Zahorí Torres Becerra 22

Page 23: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

formato general del modelo de programación lineal es un problema de programación lineal. Aún más, se dispone de un procedimiento de solución extraordinariamente eficiente llamado método símplex, para resolver estos problemas, incluso los de gran tamaño. Estas son algunas causas del tremendo auge de la programación lineal en las últimas décadas. 

MODELO DE PROGRAMACIÓN LINEAL

Los términos clave son recursos y actividades, en donde m denota el número de distintos tipos de recursos que se pueden usar y n denota el número de actividades bajo consideración. Algunos ejemplos de recursos son dinero y tipos especiales de maquinaria, equipo, vehículos y personal. Los ejemplos de actividades incluyen inversión en proyectos específicos, publicidad en un medio determinado y el envío de bienes de cierta fuente a cierto destino. En cualquier aplicación de programación lineal, puede ser que todas las actividades sean de un tipo general (como cualquiera de los ejemplos), y entonces cada una correspondería en forma individual a las alternativas específicas dentro de esta categoría general.

El tipo más usual de aplicación de programación lineal involucra la asignación de recursos a ciertas actividades. La cantidad disponible de cada recurso está limitada, de forma que deben asignarse con todo cuidado. La determinación de esta asignación incluye elegir los niveles de las actividades que lograrán el mejor valor posible de la medida global de efectividad.

Ciertos símbolos se usan de manera convencional para denotar las distintas componentes de un modelo de programación lineal. Estos símbolos se enumeran a continuación, junto con su interpretación para el problema general de asignación de recursos a actividades.

Z  =    valor de la medida global de efectividadxj =     nivel de la actividad j (para j = 1,2,...,n)cj =     incremento en Z que resulta al aumentar una unidad en el nivel de la actividad jbi =     cantidad de recurso i disponible para asignar a las actividades (para i = 1,2,...,m)aij =    cantidad del recurso i consumido por cada unidad de la actividad j

 El modelo establece el problema en términos de tomar decisiones sobre los niveles de las

actividades, por lo que x1,x2,....,xn se llaman variables de decisión. Los valores de cj, bi y aij (para i = 1,2,....,m y j = 1,2,....,n) son las constantes de entrada al modelo. Las cj, bi y aij también se conocen como parámetros del modelo.

Forma Canónica

La forma canónica de un problema de programación lineal es:

Ing. René Zahorí Torres Becerra 23

Page 24: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Todas las variables de decisión son no negativas.Todas las restricciones son del tipo menor o igual.La función objetivo es de tipo de maximización.

Forma estándar del modelo

Ahora se puede formular al modelo matemático para este problema general de asignación de recursos a actividades. En  Datos necesarios para un modelo de programación lineal que maneja la asignación de recursos a actividades particular, este modelo consiste en elegir valores de x1,x2,....,xn para: Optimizar (maximizar o minimizar) Z = c1x1 + c2x2 +....+ cnxn,Sujeta a las restricciones:

            a11x1 + a12x2 +....+ a1nxn < b1

            a21x1 + a22x2 +....+ a2nxn < b2

                                       .                                        .                                       .            am1x1 + am2x2 +....+ amnxn < bm

  X1  ³ 0,           X2 ³0,     ...,      Xn ³0.

 Suposiciones del Modelo de Programación Lineal

ProporcionalidadLa contribución de cada actividad al valor de la función objetivo Z es proporcional al nivel de

actividad xj, como lo representa el término cjxj en la función objetivo. De manera similar, la contribución de cada actividad al lado izquierdo de cada restricción funcional es proporcional al nivel de la actividad xj, en la forma en que lo representa el término aijxj en la restricción. En consecuencia, esta suposición elimina cualquier exponente diferente a 1 para las variables en cualquier término de las funciones (ya sea la función objetivo o la función en el lado izquierdo de las restricciones funcionales) en un modelo de programación lineal. Actividad

Establece que la entrada y salida de un recurso en particular al conjunto de actividades, deben ser la misma cantidad; o sea, que las actividades transforman los recursos y no los crean o destruyen. Esta suposición garantiza que la contribución total tanto a la función objetivo como a las restricciones, es igual a la suma de las contribuciones individuales. Cuando en un problema dado no se tenga la aditividad puede recurrirse al empleo de otras técnicas de la programación matemática, dependiendo de cada caso en particular. Aditividad

Cada función en un modelo de programación lineal (ya sea la función objetivo o el lado izquierdo de las restricciones funcionales) es la suma de las contribuciones individuales de las actividades respectivas. 

Ing. René Zahorí Torres Becerra 24

Page 25: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

DivisibilidadLas variables de decisión en un modelo de programación lineal pueden tomar cualquier valor,

incluyendo valores no enteros, que satisfagan las restricciones funcionales y de no negatividad. Así, estas variables no están restringidas a sólo valores enteros. Como cada variable de decisión representa el nivel de alguna actividad, se supondrá que las actividades se pueden realizar a niveles fracciónales. Limitaciones del modelo de programación lineal

Modelo DeterminísticoEl modelo de PL involucra únicamente tres tipos de parámetros: C j, aij y bi; de ahí su sencillez y

gran aplicación. Sin embargo, el valor de dichos parámetros debe ser conocido y constante. Cuando el valor de los parámetros tiene un cierto riesgo o incertidumbre, pude utilizarse la programación paramédica, la programación estocástica, o realizarse un análisis de sensibilidad. Modelo Estático

En algunos modelos matemáticos se han empleado con éxito las ecuaciones diferenciales, para inducir la variable tiempo en ellos. En este sentido, puede decidirse que la PL utiliza un modelo estático, ya que la variable tiempo no se involucra formalmente. Adquiriendo un poco de experiencia en la formulación de modelos de PL, puede imbuirse la temporabilidad mencionada, con el uso de subíndices en las variables.  Modelo que no suboptimiza

Debido a la forma que se plantea el modelo de PL, o encuentra la solución óptima o declara que ésta no existe. Cuando no es posible obtener una solución óptima y se debe obtener alguna, se recurre a otra técnica más avanzada que la PL, la cual se denomina programación lineal por metas.

Riesgo al aplicar la Investigación de Operaciones

Al aplicar la I de O 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, modelos de algoritmos establecidos en lugar de analizar los problemas y buscar resolverlos obteniendo las soluciones mejores, utilizando los métodos apropiados, 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.Para llegar a hacer un uso apropiado de la I de O, es necesario primero comprender la metodología para resolver los problemas, 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.

Limitaciones de la Investigación de Operaciones

1.   Frecuentemente es necesario hacer simplificaciones del problema original para poder manipularlo y detener una solución.

2.   La mayoría de los modelos sólo considera un solo objetivo y frecuentemente en las organizaciones se tienen objetivos múltiples.

3.   Existe la tendencia a no considerar la totalidad de las restricciones en un problema práctico, debido a que los métodos de enseñanza y entrenamiento dan la aplicación de esta ciencia centralmente se basan en problemas pequeños para razones de índole práctico, por lo que se

Ing. René Zahorí Torres Becerra 25

Page 26: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

desarrolla en los alumnos una opinión muy simplista e ingenua sobre la aplicación de estas técnicas a problemas reales.

4.   Casi nunca se realizan análisis costo-beneficio de la implantación de soluciones definidas por medio de la I de O, en ocasiones los beneficios potenciales se van superados por los costos ocasionados por el desarrollo e implantación de un modelo.

1.4.Método Símplex

En la solución gráfica observamos que la solución óptima está asociada siempre con un punto extremo del espacio de soluciones. El método símplex está basado fundamentalmente en este concepto. Careciendo de la ventaja visual asociada con la representación gráfica del espacio de soluciones, el método símplex emplea un proceso iterativo que principia en un punto extremo factible, normalmente el origen, y se desplaza sistemáticamente de un punto extremo factible a otro, hasta que se llega por último al punto óptimo. En otras palabras Es un procedimiento iterativo que permite ir mejorando la solución a cada paso. El proceso concluye cuando no es posible seguir mejorando más dicha solución.

Existen reglas que rigen la selección del siguiente punto extremo del método símplex: 1.  El siguiente punto extremo debe ser adyacente al actual. 2. La solución no puede regresar nunca a un punto extremo considerado con la anterioridad.

El algoritmo símplex da inicio en el origen, que suele llamarse solución inicial. Después se desplaza a un punto extremo adyacente. La elección específica de uno a otro punto depende de los coeficientes de la función objetivo hasta encontrar el punto óptimo. Al aplicar la condición de optimidad a la tabla inicial  seleccionamos a Xi como la variable que entra. En este punto la variable que sale debe ser una de las variables artificiales.

Para comprender mejor realicemos el siguiente ejemplo:

Max Z = 3X1 + 5X2 s.a.

X1 <= 4 2X2 <= 123X1 + 2X2 <= 18

Xi >= 0 i

Se consideran los siguientes pasos:

1. Convertir las desigualdades en igualdades

Se introduce una variable de holgura (S) por cada una de las restricciones, para convertirlas en igualdades, tomando en cuenta que si la restricción es (<=), la variable de holgura se suma y si es (>= o =) la variable de hogula se resta y el lado derecho puede hacerse siempre positico multiplicando ambos lados por -1. El resultado de esto da el siguiente sistema de ecuaciones lineales: 

X1 + S1 = 4 2X2 + S2 = 123X1 + 2X2 + S3 = 18

Ing. René Zahorí Torres Becerra 26

Page 27: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

2. Igualar la función objetivo a cero, agregando las variables de Holgura

- 3X1 - 5X2 + 0S1 + 0S2 + 0S3 = 0

3. Escribir la tabla inicial símplex

En las columnas aparecerán todas las variables del problema y, en las filas, los coeficientes de las igualdades obtenidas (restricciones), una fila para cada restricción y la última fila con los coeficientes de la función objetivo:

X1 X2 S1 S2 S3

Z - 3 - 5 0 0 0S1 1 0 1 0 0 4S2 0 2 0 1 0 12S3 3 2 0 0 1 18

4. Encontrar la variable de decisión que entra en la base y la variable de holgura que sale de la base

1. Para escoger la variable de decisión que entra en la base, nos fijamos en la fila (Z), la de los coeficientes de la función objetivo y escogemos la variable con el coeficiente negativo mayor (en valor absoluto), para el caso de Maximizar. En el caso de la Miminizar la variable de desición que entra en la base, es la variable con el coeficiente positivo mayor (en valor absoluto), esto es conocido como CONDICIÓN DE OPTIMALIDAD.

2. En nuestro caso, la variable X2 de coeficiente - 5. Si existiesen dos o más coeficientes iguales que cumplan la condición anterior, entonces se elige uno cualquiera de ellos. Si en la última fila no existiese ningún coeficiente negativo, significa que se ha alcanzado la solución óptima. Por tanto, lo que va a determinar el final del proceso de aplicación del método del símplex, es que en la última fila no haya elementos negativos. La columna de la variable que entra en la base se llama columna pivote (Flecha Azul).

3. Para encontrar la variable de holgura que tiene que salir de la base, se divide cada término de la última columna (vector solución) por el término correspondiente de la columna pivote, siempre que estos últimos sean mayores que cero. En nuestro caso:

4/0 [=Error] 12/2 [=6] 18/2 [=9]

Como hay algún elemento menor o igual que cero no se toma en cuenta cociente. En el caso de que todos los elementos fuesen menores o iguales a cero, entonces tendríamos una solución no acotada y no se puede seguir. El término de la columna pivote que en la división anterior dé lugar al menor cociente positivo, indica la fila de la variable de holgura que sale de la base. Esta fila se llama fila pivote (Flecha rojo) y corresponde al numero 6. Recuerde ceros y negativos no son tomados en cuenta. Esto se conoce como CONDICIÓN DE FACTIBILIDAD.

Ing. René Zahorí Torres Becerra 27

Page 28: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Si al calcular los cocientes, dos o más son iguales, indica que cualquiera de las variables correspondientes pueden salir de la base.

4. En la intersección de la fila pivote y columna pivote tenemos el elemento pivote operacional, 2.

5. Encontrar los coeficientes de la nueva tabla.

Los nuevos coeficientes de X2 se obtienen dividiendo todos los coeficientes de la fila por el pivote operacional, 2, que es el que hay que convertir en 1.

A continuación mediante la reducción gaussiana hacemos ceros los restantes términos de su columna, con lo que obtenemos los nuevos coeficientes de las otras filas incluyendo los de la función objetivo Z. 

También se puede hacer utilizando el siguiente esquema:

Fila del pivote: Nueva fila del pivote= (Vieja fila del pivote) : (Pivote)

Resto de las filas: Nueva fila= (Vieja fila) - (Coeficiente de la vieja fila en la columna de la variable entrante) X

(Nueva fila del pivote) Veámoslo con un ejemplo una vez calculada la fila del pivote (fila de x en la Tabla II):

X1 X2 S1 S2 S3

Z - 3 - 5 0 0 0S1 1 0 1 0 0 4S2 0 2 0 1 0 12S3 3 2 0 0 1 18

Fila/2=

(0 1 0 1/2 0 6)

Se obtiene una nueva Iteración en la nueva tabla (tabla II):X1 X2 S1 S2 S3

Z -3 0 0 5/2 0 30S1 1 0 1 0 0 4X2 0 1 0 1/2 0 6S3 3 0 0 -1 1 6

Fila/3=

1 0 0 -1/3 1/3 2

Como en los elementos de la fila Z hay uno negativo, -3, significa que no hemos llegado todavía a la solución óptima. Hay que repetir el proceso: 1. La variable que entra en la base es X1, por ser la variable que corresponde al coeficiente -3. 2. Para calcular la variable que sale, dividimos los términos de la última columna entre los términos

correspondientes de la nueva columna pivote:

Ing. René Zahorí Torres Becerra 28

Fila/2

Para Z en nueva tabla = ((Fila/2)*5) +Z

Para S1 en nueva tabla = “ya tiene 0” se copia igual

Para S3 en nueva tabla =((Fila/2)*-2) + S3

Fila/3

Page 29: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

4/1 [=4] 6/0 [=Error] 6/3 [=3]

y como el menor cociente positivo es 3, tenemos que la variable de holgura que sale es S3. El elemento pivote, que ahora hay que hacer 1, es 3.

Tabla IIX1 X2 S1 S2 S3

Z -3 0 0 5/2 0 30S1 1 0 1 0 0 4X2 0 1 0 1/2 0 6S3 3 0 0 -1 1 6

Fila/3=

(1 0 0 -1/3 1/32)

Se obtiene una nueva Iteración en la nueva tabla (tabla III):X1 X2 S1 S2 S3

Z 0 0 0 3/2 1 36S1 0 0 1 1/3 -1/3 2X2 0 1 0 1/2 0 6X1 1 0 0 -1/3 1/3 2

Como todos los coeficientes de la fila de la función objetivo son positivos, hemos llegado a la solución óptima.

La solución óptima viene dada por el valor de Z en la columna de los valores solución, en nuestro caso el valor de Z es: 36. En la misma columna se puede observar el vértice donde se alcanza, observando las filas correspondientes a las variables de decisión que han entrado en la base: Sol(2,6).

Nota:* Si en el problema de maximizar apareciesen como restricciones inecuaciones de la forma: ax + by   c; multiplicándolas por - 1 se

transforman en inecuaciones de la forma - ax - by  - c y estamos en el caso anterior. * Si en lugar de maximizar se trata de un problema de minimizar se sigue el mismo proceso, pero cambiando el sentido del criterio, es decir, para entrar en la base se elige la variable cuyo valor, en la fila de la función objetivo, sea el mayor de los positivos y se finalizan las iteraciones cuando todos los coeficientes de la fila de la función objetivo son negativos. 

Ing. René Zahorí Torres Becerra 29

Fila/3Para Z en nueva tabla = ((Fila/3)*3) +Z

Para S1 en nueva tabla = ((Fila/3)*-1) + S3

Para S3 en nueva tabla =“ya tiene 0” se copia igual

Page 30: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Para comprender mejor realicemos el siguiente ejemplo2:

Min Z = - 3X1 - 5X2 s.a.

X1 <= 4 2X2 <= 123X1 + 2X2 <= 18

Xi >= 0 i

Se consideran los siguientes pasos:

1. Convertir las desigualdades en igualdades

Se introduce una variable de holgura (S) por cada una de las restricciones, para convertirlas en igualdades, tomando en cuenta que si la restricción es (<=), la variable de holgura se suma y si es (>= o =) la variable de hogula se resta y el lado derecho puede hacerse siempre positico multiplicando ambos lados por -1. El resultado de esto da el siguiente sistema de ecuaciones lineales: 

X1 + S1 = 4 2X2 + S2 = 123X1 + 2X2 + S3 = 18

2. Igualar la función objetivo a cero, agregando las variables de Holgura

3X1 + 5X2 + 0S1 + 0S2 + 0S3 = 0

3. Escribir la tabla inicial símplex

En las columnas aparecerán todas las variables del problema y, en las filas, los coeficientes de las igualdades obtenidas (restricciones), una fila para cada restricción y la última fila con los coeficientes de la función objetivo:

X1 X2 S1 S2 S3

Z 3 5 0 0 0S1 1 0 1 0 0 4S2 0 2 0 1 0 12S3 3 2 0 0 1 18

4. Encontrar la variable de decisión que entra en la base y la variable de holgura que sale de la base

1. Para escoger la variable de decisión que entra en la base, nos fijamos en la fila (Z), la de los coeficientes de la función objetivo y escogemos la variable con el coeficiente negativo mayor (en valor absoluto), para el caso de Maximizar. En el caso de la Miminizar la variable de desición que entra en la base, es la variable con el coeficiente positivo mayor (en valor absoluto), esto es conocido como CONDICIÓN DE OPTIMALIDAD.

2. En nuestro caso, la variable X2 de coeficiente 5.

Ing. René Zahorí Torres Becerra 30

Page 31: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Si existiesen dos o más coeficientes iguales que cumplan la condición anterior, entonces se elige uno cualquiera de ellos. Si en la última fila no existiese ningún coeficiente positivo, significa que se ha alcanzado la solución óptima. Por tanto, lo que va a determinar el final del proceso de aplicación del método del símplex, es que en la última fila no haya elementos negativos. La columna de la variable que entra en la base se llama columna pivote (Flecha Azul).

3. Para encontrar la variable de holgura que tiene que salir de la base, se divide cada término de la última columna (vector solución) por el término correspondiente de la columna pivote, siempre que estos últimos sean mayores que cero. En nuestro caso:

4/0 [=Error] 12/2 [=6] 18/2 [=9]

Como hay algún elemento menor o igual que cero no se toma en cuenta cociente. En el caso de que todos los elementos fuesen menores o iguales a cero, entonces tendríamos una solución no acotada y no se puede seguir. El término de la columna pivote que en la división anterior dé lugar al menor cociente positivo, indica la fila de la variable de holgura que sale de la base. Esta fila se llama fila pivote (Flecha rojo) y corresponde al numero 6. Recuerde ceros y negativos no son tomados en cuenta. Esto se conoce como CONDICIÓN DE FACTIBILIDAD.Si al calcular los cocientes, dos o más son iguales, indica que cualquiera de las variables correspondientes pueden salir de la base.

4. En la intersección de la fila pivote y columna pivote tenemos el elemento pivote operacional, 2.

5. Encontrar los coeficientes de la nueva tabla.

Los nuevos coeficientes de X2 se obtienen dividiendo todos los coeficientes de la fila por el pivote operacional, 2, que es el que hay que convertir en 1.

A continuación mediante la reducción gaussiana hacemos ceros los restantes términos de su columna, con lo que obtenemos los nuevos coeficientes de las otras filas incluyendo los de la función objetivo Z. 

También se puede hacer utilizando el siguiente esquema:

Fila del pivote: Nueva fila del pivote= (Vieja fila del pivote) : (Pivote)

Resto de las filas: Nueva fila= (Vieja fila) - (Coeficiente de la vieja fila en la columna de la variable entrante) X

(Nueva fila del pivote)

Ing. René Zahorí Torres Becerra 31

Page 32: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Veámoslo con un ejemplo una vez calculada la fila del pivote (fila de x en la Tabla II):

X1 X2 S1 S2 S3

Z 3 5 0 0 0S1 1 0 1 0 0 4S2 0 2 0 1 0 12S3 3 2 0 0 1 18

Fila/2=

(0 1 0 1/2 0 6)

Se obtiene una nueva Iteración en la nueva tabla (tabla II):X1 X2 S1 S2 S3

Z 3 0 0 -5/2 0 -30S1 1 0 1 0 0 4X2 0 1 0 1/2 0 6S3 3 0 0 -1 1 6

Fila/3=

1 0 0 -1/3 1/3 2

Como en los elementos de la fila Z hay uno positivo, 3, significa que no hemos llegado todavía a la solución óptima. Hay que repetir el proceso:

1. La variable que entra en la base es X1, por ser la variable que corresponde al coeficiente 3. 2. Para calcular la variable que sale, dividimos los términos de la última columna entre los términos

correspondientes de la nueva columna pivote:

4/1 [=4] 6/0 [=Error] 6/3 [=3]

y como el menor cociente positivo es 3, tenemos que la variable de holgura que sale es S3.

3. El elemento pivote, que ahora hay que hacer 1, es 3.

Tabla IIX1 X2 S1 S2 S3

Z 3 0 0 -5/2 0 -30S1 1 0 1 0 0 4X2 0 1 0 1/2 0 6S3 3 0 0 -1 1 6

Fila/3=

(1 0 0 -1/3 1/32)

Ing. René Zahorí Torres Becerra 32

Fila/2

Para Z en nueva tabla = ((Fila/2)*-5) +Z

Para S1 en nueva tabla = “ya tiene 0” se copia igual

Para S3 en nueva tabla =((Fila/2)*-2) + S3

Fila/3

Fila/3Para Z en nueva tabla = ((Fila/3)*-3) +Z

Para S1 en nueva tabla = ((Fila/3)*-1) + S3

Para S3 en nueva tabla =“ya tiene 0” se copia igual

Page 33: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Se obtiene una nueva Iteración en la nueva tabla (tabla III):X1 X2 S1 S2 S3

Z 0 0 0 -3/2 -1 -36S1 0 0 1 1/3 -1/3 2X2 0 1 0 1/2 0 6X1 1 0 0 -1/3 1/3 2

Como todos los coeficientes de la fila de la función objetivo son negativos o ceros, hemos llegado a la solución óptima.

La solución óptima viene dada por el valor de Z en la columna de los valores solución, en nuestro caso el valor de Z es: -36. En la misma columna se puede observar el vértice donde se alcanza, observando las filas correspondientes a las variables de decisión que han entrado en la base: Sol(2,6).

Ejemplos para el curso:

Max Z = 3X1 + 4X2 s.a.

2X1 + 7X2 <= 21 7X1 + 2X2 <= 49

Xi >= 0 i

Max Z = 3X1 + 2X2 + 5X3

s.a. X1 + 2X2 + X3 <= 4303X1 + 2X3 <= 460 X1 + 4X2 <= 420

Xi >= 0 i

Min Z = - 5X1 - 3X2 s.a.

2X1 + 4X2 <= 4006X1 + X2 <= 1004X1 + 3X2 <= 400

Xi >= 0 i

Min Z = 2X1 - 2X2 + 4X3

s.a.- X1 + X2 + X3 <= 202X1 - X2 + X3 <= 10 X1 + X2 +3X3 <= 60

Xi >= 0 i

4

http://www.investigacion-operaciones.com/SÍMPLEX_analitico.htm

4 Semana 4: Tarea en equipo: d) Resolver los ejercicios del 1 al 5 del método simplex (tema 1.4)

Ing. René Zahorí Torres Becerra 33

Page 34: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Unidad 2Análisis de Redes

2.1. Conceptos Básicos

El análisis de redes es el área encargada de analizar las redes mediante la teoría de redes (conocida más genéricamente como teoría de grafos).

Las redes pueden ser de diversos tipos:

Social Transporte Eléctrica Biológica Internet Información Epidemiología

Cuando se habla de una red, se entiende como un grupo de individuos que, en forma agrupada o individual, se relacionan con otros con un fin especifico, caracterizado por la existencia de flujo de informacion. Las redes pueden tener muchos o pocos actores y una o más clases de relaciones entre pares de actores.

Terminología de Redes

Flujo: Corresponde a la cantidad que debe transportarse desde un nodo i a un nodo j a través de un arco que los conecta. La siguiente notación es usada: Xij= cantidad de flujo Uij= cota mínima de flujo que se debe transportar Lij= cota maxíma de flujo que se puede transportar.

Arcos dirigidos /no dirigidos: Cuando el flujo puede transportarse en una sola dirección se tiene un arco dirigido (la flecha indica la dirección). Si el flujo puede transportarse en ambas direcciones existe un arco no dirigido (sin flecha).

Nodos adyacentes: Un nodo j es adyacente con un nodo i si existe un arco que une el nodo j con el nodo i.

Rutas/Conexión entre nodos

Ing. René Zahorí Torres Becerra 34

Page 35: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ruta: Una colección de arcos formados por una serie de nodos adyacentes; los nodos están conectados si existe una ruta entre ellos.

Ciclos / Arboles /Arboles expandidos

Ciclos: Un ciclo se produce cuando al partir de un nodo por un cierto camino se vuelve al mismo nodo por otra ruta.

Árbol: Una serie de nodos que no contienen ciclos.

Árbol expandido: Es un árbol que conecta todos lo nodos de la red (contiene n-1 arcos).

2.2. Problema de Transporte

El modelo de transporte busca determinar un plan de transporte de una mercancía de varias fuentes a varios destinos. Los datos del modelo son:

1. Nivel de oferta en cada fuente y la cantidad de demanda en cada destino.2. El costo de transporte unitario de la mercancía a cada destino.

Como solo hay una mercancía un destino puede recibir su demanda de una o más fuentes. El objetivo del modelo es el de determinar la cantidad que se enviará de cada fuente a cada destino, tal que se minimice el costo del transporte total.

La suposición básica del modelo es que el costo del transporte en una ruta es directamente proporcional al número de unidades transportadas. La definición de “unidad de transporte” variará dependiendo de la “mercancía” que se transporte.

El esquema siguiente representa el modelo de transporte como una red con m fuentes y n destinos. Una fuente o un destino está representado por un nodo, el arco que une fuente y un destino, representa la ruta por la cual se transporta la mercancía. La cantidad de la oferta en la fuente i es ai, y la demanda en el destino j es bj. El costo de transporte unitario entre la fuente i y el destino j es Cij.

Ing. René Zahorí Torres Becerra 35

Page 36: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Si Xi j representa la cantidad transportada desde la fuente i al destino j, entonces, el modelo general de PL que representa el modelo de transporte es:

Minimiza Z= S i=1 m S j=1 n C i j X i j

Sujeta a:

S j=1 n X i j <= ai , i=1,2,…, m S i=1 m X I j >= bj , j=1,2,…, n

X i j >=0 para todas las i y j

El primer conjunto de restricciones estipula que la suma de los envíos desde una fuente no puede ser mayor que su oferta; en forma análoga, el segundo conjunto requiere que la suma de los envíos a un destino satisfaga su demanda.

El modelo que se acaba de escribir implica que la oferta total Si=1 m ai debe ser cuando menos igual a la demanda total Sj=1 n bj. Cuando la oferta total es igual a la demanda total, la formulación resultante recibe el nombre de modelo de transporte equilibrado. Este difiere del modelo solo en el hecho de que todas las restricciones son ecuaciones, es decir: 

SX i j = ai, i=1,2,..., mSX i j = bj, j=1,2,..., n 

En el mundo real, no necesariamente la oferta debe ser igual a la demanda o mayor que ella. Sin embargo, un modelo de transporte siempre puede equilibrarse. El equilibrio, además de su utilidad en la representación a través de modelos de ciertas situaciones prácticas, es importante para el desarrollo del método de solución que explote completamente la estructura especial del modelo de transporte. Los dos ejemplos que siguen presentan la idea del equilibrio y también sus implicaciones prácticas.

Ejemplo 1 (Modelo de transporte estándar)

MG Auto Company tiene plantas en Los Ángeles, Detroit y Nueva Orleáns. Sus centros de distribución principales son Denver y Miami. Las capacidades de las plantas durante el trimestre próximo son 1 000, 1 500, y 1 200 automóviles. Las demandas trimestrales en los dos centros de distribución son de 2 300 y 1 400 vehículos. El costo del transporte de un automóvil por tren es de 8 centavos por milla. El diagrama de las distancias recorridas entre las plantas y los centros de distribución son:

  Denver MiamiLos Ángeles 1 000 1 690

Detroit 1 250 1 350Nueva Orleans 1 275 850

Ing. René Zahorí Torres Becerra 36

Page 37: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Esto produce en costo por automóvil a razón de 8 centavos por milla recorrida. Produce los costos siguientes (redondeados a enteros), que representan a C i j del modelo original:

Mediante el uso de códigos numéricos que representan las plantas y centros de distribución, hacemos que X i j represente el número de automóviles transportados de la fuente i al destino j. Como la oferta total (= 1 000 + 1 500 + 1 200 = 3 700) es igual a la demanda ( = 2 300 + 1 400 = 3 700), el modelo de transporte resultante está equilibrado. Por lo tanto, el siguiente modelo de PL que representa el problema tiene todas las restricciones de igualdad. 

Minimizar Z = 80X 11 + 215X 12 + 100X 21 + 108X 22 + 102X 31 + 68X 32

Sujeto a:

X 11 X 12         = 1 000    X 21 X 22     = 1 500        X 31 X 32 = 1 200X 11   X 21   X 31   = 2 300  X 12   X 22   X 32 = 1 400     X i j >= 0 para todas las i y j

Un método más resumido para representar el modelo de transporte consiste en utilizar lo que se llama tabla de transporte. Esta es una forma de matriz donde sus renglones representan las fuentes y sus columnas los destinos. Los elementos de costo C i j se resumen en la esquina noroeste de la celda de la matriz (i, j). Por lo tanto, el modelo de MG se puede resumir en la tabla siguiente:

Ing. René Zahorí Torres Becerra 37

  Denver MiamiLos Ángeles 80 215

Detroit 100 108Nueva Orleans 102 68

Page 38: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ejemplo 2 (Modelo de transporte con equilibrio)

En el ejemplo anterior suponga que la capacidad de la planta de Detroit es de 1 300 automóviles (en vez de 1 500). Se dice que la situación esta desequilibrada debido a que la oferta total (=3 500) no es igual a la demanda total (=3 700).Nuestro objetivo consiste en volver a formular el modelo de transporte de manera que distribuya la cantidad faltante(=3 700 – 3 500 = 200) en forma optima entre los centros de distribución.

Como la demanda es mayor que la oferta se puede agregar una planta ficticia con una capacidad de 200. Se permite que dicha planta, en condiciones normales, envíe su “producción“ a todos los centros de distribución. Físicamente, la cantidad de unidades enviadas a un destino desde una planta ficticia representará la cantidad faltante en ese destino.

La única información que falta para completar el modelo son los “costos de transporte” unitarios de la planta ficticia a los destinos. Como la planta no existe, no habrá ningún envío físico y el costo de transporte unitario es cero. Sin embargo, podemos enfocar la situación desde otro ángulo diciendo que se incurre en un costo de penalización por cada unidad de demanda insatisfecha en los centros de distribución. En este caso los costos de transporte unitarios serán iguales a los costos de penalización unitarios en los diversos destinos.

  Denver Miami  Los Ángeles 80 215 1 000Detroit 100 108 1 300Nueva Orleáns 102 68 1 200Planta ficticia 0 0 200

De manera análoga, si la oferta en mayor que la demanda podemos añadir un destino ficticio que absolverá la diferencia. Por ejemplo, suponga que la demanda en Denver disminuye a 1 900cualquier automóvil enviado de una planta a un centro de distribución ficticio representa un excedente en la planta.

  Denver Miami DestinoFicticio

 

Los Ángeles 80 215 0 1 000Detroit 100 108 0 1 500Nueva Orleans 102 68 0 1 200

La aplicación del modelo de transporte no se limita al problema de “transporte”.

El siguiente ejemplo ilustra el uso del modelo del transporte en otros campos.  

Ing. René Zahorí Torres Becerra 38

Page 39: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

En otras palabras cuando la Demanda es mayor que la Oferta se crea una fila ficticia a la Oferta y se le agrega el valor faltante para balancear el ejercicio.

Destino1 2 3 4

Origen

1               

10

Oferta

               

2               

30               

3               

20               

4               

15               

5               

10               

20 25 15 25Demanda

Otro caso es cuando la Demanda es menor que la Oferta se crea una columna ficticia a la Demanda y se le agrega el valor faltante para balancear el ejercicio.

Destino1 2 3 4

Origen

1               

50

Oferta

               

2               

50               

3               

20               

4               

30               

5               

20               

30 20 70 50Demanda

Nota. Los costos deben ser ceros (0) y cuando queda un valor en la casilla ficticia se interpreta como que falta por vender un no. de productos.

Ing. René Zahorí Torres Becerra 39

Page 40: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Métodos para hallar una solución básica factible a los problemas de transporte.

Estos métodos parten de un modelo balanceado y generan una solución básica factible con n+m-1 asignaciones, es decir valores >= 0. El costo total del envío se obtiene a través de la siguiente fórmula:

CostoTotal=∑i=1

m

∑j=1

n

Cij x ij

Método de la Esquina Noroeste

1) Asignar a la casilla (1,1) tantas unidades como lo permita la demanda y la oferta. Actualizar valores de ambas.

2) Tachar columna o renglón que haya sido satisfecho (demanda u oferta), pero no ambas en caso de haber sido satisfechas ambas.

3) Continuar asignando en las demás casillas continuas a la columna o renglón tachados siempre considerando que este se encuentre en la esquina Noroeste, siga con el paso 2.

4) El problema terminará cuando exista solo una columna o solo un renglón sin tachar.

Método de Costo Mínimo

1) Seleccione la casilla con el menor costo de envío y asignar tanto tantas unidades como lo permita la demanda y la oferta.

2) Actualizar la demanda y la oferta.3) Tachar columna o renglón que haya sido satisfecho (demanda u oferta), pero no ambas en caso de

haber sido satisfechas ambas.4) Continuar asignando de acuerdo al paso 2 hasta que quede un renglón o columna sin marcar.

Método de Vogel

1) Se calcula la diferencia de fila y columna entre El mayor y el menor costo que exista en cada fila y columna.

2) Seleccione aquella columna o renglón que presente la mayor diferencia (los empates se rompen arbitrariamente).

3) Localice el costo más pequeño de la matriz de costos en la columna o renglón elegidos por el paso anterior.

4) Asigne tantas unidades como lo permita la oferta y la demanda.5) Actualizar la demanda y la oferta.6) Tachar columna o renglón que haya sido satisfecho (demanda u oferta), pero no ambas en caso de

haber sido satisfechas ambas.7) Retornar al paso 2 hasta que quede un renglón o columna sin marcar.

Ing. René Zahorí Torres Becerra 40

Page 41: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ejemplos:

Resolver los siguientes ejemplos aplicando los tres métodos de solución del modelo de transporte:

Ejercicio 1)Destino

1 2 3 4

Origen

1  7   4   2   6

20Oferta

               

2  8   3   5   6

35               

3  1   2   0   4

40               

30 19 25 21Demanda

Ejercicio 2)Destino

1 2 3 4

Origen

1  5   6   2   4

35Oferta

               

2  3   6   8   62

42               

3  4   1   9   10

23               

20 10 40 30Demanda

Ejercicio 3)Destino

1 2 3 4

Origen

1  9   12   9   6

50Oferta

               

2  7   3   7   7

60               

3  6   5   9   11

20               20 40 40 60

Demanda5

5 Semana 5: Tarea en equipo: e) Resolver los ejercicios del 1 al 3 por los 3 métodos de transporte (tema 2.1 y 2.2)

Ing. René Zahorí Torres Becerra 41

Page 42: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

2.3. Problemas de Asignación

Hay una multitud de situaciones, en investigación de operaciones, que se pueden modelar y resolver como redes (nadas conectados por ramas). Algunas encuestas recientes informan que hasta el 70% de los problemas de programación matemática en el mundo real se pueden representar como modelos relacionados con redes. La lista siguiente ilustra algunas aplicaciones posibles de las redes.

1. Diseño de una red de gasoductos marinos para conectar bocas de pozos en el Golfo de México con un punto de entrega en tierra. El objetivo del modelo es minimizar el costo de construcción del gasoducto.

2. Determinación de la ruta más corta entre dos ciudades, en una red de Carreteras. 3. Determinación de la capacidad máxima (en toneladas anuales) de una red de tubería para lodo

de carbón que une las minas en Wyoming con las centrales eléctricas en Houston. (Las tuberías de lodo de carbón transportan el carbón suspendido en agua a través de tubos de diseño especial.)

4. Determinación del programa de flujo con costo mínimo desde los campos petroleros hasta las refinerías a través de una red de oleoductos.

5. Determinación del cronograma (fechas de inicio y terminación) de las actividades en la construcción de un proyecto.

La solución de esas situaciones y otras parecidas se logra con una variedad de algoritmos de optimización de redes. Este capítulo presentará cinco de esos algoritmos:

1. Algoritmo de la ruta más corta (situación 2). 2. Algoritmo del flujo máximo (situación 3). 3. Algoritmo de la ruta crítica (situación 5).

Las situaciones en las que se pueden aplicar estos algoritmos también se pueden fallar y resolver en forma de programas lineales explícitos. Sin embargo, los algoritmos puestos, basados en redes, son más eficientes que el método símplex.

Definiciones para redes

Una red consiste en una serie de nodos enlazados con arcos (o ramas). La notación para des-cribir una red es (N, A), donde N es el conjunto de nadas y A es el conjunto de arcos. Por ejemplo, la red de la figura 2.2.1 se describe como sigue:

N = {1,2,3,4,5}

A = {(1,2), (1,3), (2,3), (2,5),(3,4), (3,5), (4,2), (4,5)}

Ing. René Zahorí Torres Becerra 42

Page 43: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Figura 2.2.1. Ejemplo de una red (N,A)

Con cada red se asocia algún tipo de flujo (por ejemplo, flujo de productos petrolero en un oleoducto y flujos de tráfico de automóviles en carreteras). En general, el flujo en una red está limitado por la capacidad de sus arcos, que pueden ser finitos o infinitos.

Se dice que un arco es dirigido u orientado si permite un flujo positivo en una dirección, y flujo cero en la dirección opuesta. Una red dirigida tiene todos sus arcos dirigidos.

Una ruta es una sucesión de arcos distintos que unen dos nodos pasando por otros nodos, independientemente de la dirección de flujo en cada arco. Una ruta forma un ciclo si conecta un nodo consigo mismo, pasando por otros nodos. Por ejemplo, en la figura 2.2.1, los arcos (2,3), (3,5) y (5,2) forman un bucle o circuito cerrado. Un ciclo es dirigido si consiste en una ruta dirigida, por ejemplo (2,3), (3,4).y (4,2) en la figura anterior.

Una red conectada es aquella en que cada dos nadas distintos están enlazados al menos por una ruta. La red de la figura 2.2.2 es un ejemplo de este tipo. Un árbol es una red conectada que puede consistir sólo en un subconjunto de todos los nadas en ella, donde no se permiten ciclos, y un árbol de expansión es un árbol que enlaza todos los nadas de la red, también sin permitir ciclos. En la figura 2.2.2. se ven ejemplos de un árbol y de un árbol de expansión para la red de la figura 2.2.1

FIGURA 2.2.2 Ejemplos de un árbol y de un árbol de expansión, para la red de la figura 2.2.1

Árbol Árbol de expansión 6

6 Semana 6: Tarea de investigación: f) Realizar una investigación del uso y aplicación e los modelos de redes

Ing. René Zahorí Torres Becerra 43

Page 44: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

2.4.Problema de la ruta más corta.

Aunque existen muchas versiones de problemas de la ruta más corta, la atención se centrará en la versión sencilla. Considere una red conexa y no dirigida con 2 nodos especialmente llamados origen y destino. A cada ligadura (arco no dirigido) se asocia una distancia no negativa. El objetivo es encontrar la ruta más corta del origen al destino.

Se dispone de un algoritmo relativamente sencillo para manejar este problema. La esencia del procedimiento es que analiza toda la red a partir del origen; identifica de manera sucesiva la ruta más corta a cada uno de los nodos en orden ascendente de sus distancias (más cortas), desde el origen; el problema queda resuelto en el momento de llegar al nodo destino. Primero se describirá el método y después se ejemplificará con la solución del problema de la ruta más corta que enfrenta la administración de Seervada Park en la siguiente sección.

Algoritmo de la Ruta más Corta

Objetivo de la n-ésima iteración: Encontrar el n-ésimo nodo más cercano al origen (Este paso se repetirá para n = 1, 2, …hasta que el n-ésimo nodo más cercano sea el nodo destino).

Datos de la n-ésima iteración: n – 1 nodos más cercanos al origen – que se encontró enlas iteraciones previas -, incluida su ruta más corta y la distancia desde el origen. (Estos nodos y el origen se llaman nodos resueltos; el resto son nodos no resueltos).

Candidatos para n-ésimo nodo más cercano: cada nodo resuelto que tiene conexión directa por una ligadura con uno o más nodos no resueltos proporcionan un candidato – esto es, el nodo no resuelto que tiene la ligadura más corta -. (Los empates proporcionan candidatos adicionales).

Cálculo del n-ésimo nodo más cercano: para cada nodo resuelto y sus candidatos, se suma la distancia entre ellos y la distancia de la ruta más corta desde el origen a este nodo resuelto. El candidato con la distancia total más pequeña es el n-ésimo nodo más cercano – los empates proporcionan nodos resueltos adicionales -, y su ruta más corta es la que genera esta distancia.

Aplicación del algoritmo al problema de Seervada Park

La administración de Seervada Park necesita encontrar la ruta más corta desde la entrada del parque (nodo O) hasta el mirador (nodo T) a través del sistema de caminos que se presenta en la siguiente figura. En la tabla se encuentran los resultados obtenidos al aplicar el algoritmo anterior – donde el empate del segundo nodo más cercano permite pasar directo a buscar el cuarto nodo más cercano -. La primera columna (n) indica el número de la iteración, después de quitar los que no sirven – los que no tienen conexión directa con nodos no resueltos -. La tercera columna da los candidatos para el n-ésimo nodo más cercano – nodos no resueltos con la ligadura más corta al nodo resuelto -. La cuarta columna calcula la distancia de la ruta más corta desde el origen a cada candidato – esto es, la distancia al nodo resuelto más la de la ligadura que va al candidato -. El candidato con la suma de distancias más pequeñas es el n-ésimo nodo más cercano al origen, según se indica en la quinta columna. Las dos últimas columnas resumen la información de este último nodo resuelto necesitaría para pasar a las iteraciones siguientes – es decir, la distancia de la ruta más corta del origen a este nodo y la última rama en esta ruta -.

Ing. René Zahorí Torres Becerra 44

Page 45: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Tabla de datos

nNodos resueltos

conectados directamente a nodos

no resueltos

Nodo no resuelto más cercano conectado

Distancia total involucrada

n-ésimo nodo más cercano

Distancia mínima

Última conexión

1 O A 2 A 2 OA

2,3OA

CB

42+2=4

CB

44

OCAB

4ABC

DEE

2+7=94+3=74+4=8

E 7 BE

5ABE

DDD

2+7=94+4=87+1=8

DD

88

BDED

6DE

TT

8+5=137+7=14

T 13 DT

Ahora se debe relacionar las columnas con la descripción del algoritmo. La entrada para la n-ésima iteración se encuentra en las columnas 5 y 6 de las iteraciones anteriores, donde los nodos resueltos de la quinta columna se enumeran después en la segunda par la iteración actual después de eliminar los que no tienen conexión directa con nodos no resueltos. Los candidatos, para el n-ésimo nodo más cercano se realiza en la columna 4 y los resultados se registran en las última tres columnas de la iteración actual.

La ruta más corta desde el nodo destino hasta el origen se puede rastrear hacia atrás en la última columna de la tabla, con lo que se obtiene T→D→E→B→A→O o bien T→D→B→A→O. Por lo tanto, se identificaron las dos opciones de ruta más corta desde el origen hasta el destino como O→A→B→E→D→T y O→A→B→D→T, con una distancia total de 13 millas en cualquiera de las dos.

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. En ambos casos se considera una red no dirigida y conexa, en la que la información dada incluye alguna medida de longitud positiva – distancia, costo, tiempo, etc. – asociada con la ligadura. Los dos problemas involucran también el hecho de seleccionar un conjunto de ligaduras con la longitud más corta entre los dos conjuntos de ligaduras que satisfacen cierta propiedad. En el caso del problema de la ruta más corta, esta propiedad es que la ligadura seleccionada debe proporcionar una trayectoria entre el origen y el destino. Para el árbol de expansión mínima la propiedad requerida es que las ligaduras seleccionadas deben proporcionar una trayectoria entre cada par de nodos.

El problema del árbol de expansión mínima se puede resumir de la siguiente manera:

1. Se tiene los nodos de una red pero no las ligaduras. En su lugar se proporcionan las ligaduras potenciales y la longitud positiva de cada una si s inserta en la red. (Las medidas alternativas para la longitud de una ligadura incluyen distancia, costo y tiempo).

2. Se desea diseñar la red con suficientes ligaduras para satisfacer el requisito de que haya un camino entre cada par de nodos.

3. El objetivo es satisfacer este requisito de manera que se minimice la longitud total de las ligaduras insertadas en la red.

Ing. René Zahorí Torres Becerra 45

Page 46: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Una red con n nodos requiere de sólo (n-1) ligaduras para proporcionar una trayectoria entre cada par de nodos. No debe usarse más ligaduras puesto que ello aumentaría, sin necesidad, la longitud total de las ligaduras seleccionadas. Las (n-1) ligaduras deben elegirse de tal manera que la red resultante – con solo las ligaduras seleccionadas – forme un árbol de expansión – según la definición que se presentó anteriormente - . Por lo tanto, el problema es encontrar el árbol de expansión con la longitud total mínima de sus ligaduras.

La figura de 2.3. (a) se ilustra el concepto de árbol de expansión, pues los nodos O, A,B y C no están conectados con los nodos D, E y T. Se necesita una ligadura más para hacer esta conexión. En realidad, esta red consta de dos árboles, uno para cada uno de dos conjuntos de nodos. Las ligaduras de la figura 2.3. (b), sí se expanden por toda la red – es decir, es una gráfica conexión según la definición de redes -, pero no es un árbol porque tiene dos ciclos (O-A-B-C-O y D-T-E-D), esto es, tiene demasiadas ligaduras. Como el problema de Seervada Park tiene n = 7 nodos, en la definición de redes se indicó que una red debe tener exactamente n-1 = 6 ligaduras y ningún ciclo para calificar como árbol de expansión. Esta condición se logra en la figura 2.3. (c), por lo que esta red es una solución factible – con una longitud total de 24 millas en las ramas o ligaduras – para el problema del árbol de expansión mínima (Se verá que esta solución no es óptima, puesto que es posible construir un árbol de expansión con sólo 14 millas es sus ramas).

Figura 2.3. (a)

Figura 2.3. (b)

Figura 2.3. (c)

Ing. René Zahorí Torres Becerra 46

Page 47: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Algunas aplicaciones

A continuación se proporciona una lista de algunos tipos importantes de aplicaciones de este

1. Diseño e redes de telecomunicaciones – redes de fibra óptica, de computadoras, telefónicas, de televisión por cable, etcétera - .

2. Diseño de redes de transporte para minimizar el costo total de proporcionar las ligaduras – vías ferroviarias, carreteras, etcétera -.

3. Diseño de una red de líneas de transmisión de energía eléctrica de alto voltaje.4. Diseño de una red de cableado de equipo eléctrico – como sistemas de cómputo – para

minimizar la longitud total del cable.5. Diseño de una red de tuberías para conectar varias localidades.

Un Algoritmo

El problema del árbol de expansión mínima se puede resolver una forma bastante directa, puesto que se trata de uno de los pocos problemas de la IO en el que se puede ser codicioso en cada etapa del procedimiento de solución conduce al final de una solución óptima. Así, con el inicio en cualquier nodo, la primera etapa consiste en elegir la rama más corta posible a otro nodo, sin preocuparse del efecto que esta elección pueda tener en las decisiones posteriores. En la segunda etapa se trata de identificar el nodo no conectado que esté más cerca de cualquiera de los dos que se acaban de conectar y después agregar la ligadura correspondiente a la red. Este proceso se repite, según el resumen que se presenta a continuación, hasta conectar todos los nodos. (Obsérvese que este proceso se ilustró en la figura 2.3. para construir el árbol de expansión, pero ahora con la regla específica para seleccionar cada ligadura nueva.) Se garantiza que la red resultante es un árbol de expansión mínima.

Algoritmo del problema del árbol de expansión mínima

1. Se selecciona, de manera arbitraria, cualquier nodo y se conecta – es decir, se agrega una ligadura – al nodo distinto más cercano.

2. Se identifica el nodo no conectado más cercano a un nodo conectado y se conecta estos dos nodos – es decir, se agrega una ligadura entre ellos -. Este paso se repite hasta que todos los nodos están conectados.

3. Rompimiento de empates: los empates para el nodo más cercano distinto (paso 1) o para el nodo conectado más cercano (paso 2), se pueden romper en forma arbitraria, pero el algoritmo debe llegar a una solución óptima. No obstante, estos empates son señal de que puede existir (pero no necesariamente) soluciones óptimas múltiples. Todas esas soluciones se pueden identificar si se trabaja con las demás formas de romper los empates al final.

La manera más rápida de ejecutar este algoritmo en forma manual es el enfoque gráfico (ver ejemplo).

La administración de Seervada Park necesita determinar los caminos bajo los cuales se deben tender las líneas telefónicas para conectar todas las estaciones con una longitud total mínima de cable. Se describirá paso a paso la solución de este problema con base en los datos que se proporcionan en la figura, en donde todas las líneas delgadas ahora representan las ligaduras potenciales

Ing. René Zahorí Torres Becerra 47

Page 48: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Figura Sistema de caminos para Seervada Park

En forma arbitraria se selecciona el nodo O como inicio. El nodo no conectado más cercano a O es A. Se conecta el nodo A con el nodo O

El nodo no conectado más cercano a cualquiera de los nodos O o A es el nodo B (más cerca a A). Se conecta el nodo B con el nodo A

El nodo no conectado más cercano a O, A o B es el nodo C (más cercano a B). Se conecta el nodo C con el nodo B.

Ing. René Zahorí Torres Becerra 48

Page 49: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

El nodo no conectado más cercano a O, A o B es el nodo E (más cercano a B). Se conecta el nodo E con el nodo B.

El nodo no conectado más cercano a O, A, B, C o E es el nodo D (más cercano a E). Se conecta el nodo D con el nodo E.

El único nodo no conectado es T. Está más cerca del nodo D. Se conecta el nodo T con el nodo D.

Todos los nodos han quedado conectados, por lo que ésta solución (óptima) que se buscaba. La longitud total de las ramas es 14 millas.

Aunque con este procedimiento a primera vista puede parecer que la elección del nodo inicial afectará la solución final – y la longitud total de las ligaduras -, en realidad no es así. Se sugiere verificar este hecho en el caso del ejemplo, mediante otra aplicación del algoritmo, pero con un nodo distinto de O.

El tercer problema al que se enfrenta el administrador de Seervada Park durante la temporada pico es determinar la ruta de algunos viajes de tranvía desde la entrada del parque (estación O) hasta el mirador (estación T), de manera que el número de viajes diarios sea el máximo (cada camioneta debe regresar por la misma ruta que tomó de ida, por lo que el análisis se harpa sólo sobre los viajes de ida). Para evitar perturbaciones innecesarias a la ecología y a la vida silvestre se impusieron límites superiores estrictos sobre el número de viajes de salida permitidos hacia el mirador para cada camino individual en la dirección de ida. Para cada camino, la dirección del viaje de ida se indica mediante una flecha en la siguiente figura.

Ing. René Zahorí Torres Becerra 49

Page 50: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

El número que aparece en la base de la flecha proporciona el límite superior de ese camino en la dirección de salida de la estación. Dados los límites, una solución factible es mandar 7 camiones al día, 5 por la rutaO→B→E→T, 1 por la ruta O→B→C→E→T y 1 por la ruta O→B→C→E→D→T. Esta solución bloquea el uso de cualquier ruta que comience con O→C – por que las capacidades de E→T y E→D están saturadas-. Es sencillo encontrar mejores soluciones factibles. Es necesario considerar muchas combinaciones de rutas – y el número de viajes asignados a cada una – para encontrar la(s) ruta(s) que maximicen el número de viajes al día. Este tipo de problemas se conoce como problemas del flujo máximo.

En términos generales, el problema de flujo máximo se puede describir de la siguiente manera.

1. Todo flujo a través de una red conexa dirigida se origina en un nodo, llamado Fuente, y termina en otro nodo llamado destino – la fuente y el destino en Seervada Park son la entrada en el noo O y el morador en el nodo T, respectivamente -.

2. Los nodos restantes son nodos de trasbordo – en el problema de Seervada Park son los nodos A, B, C, D y E –

3. Se permite el flujo a través de un arco sólo en la dirección indicada por la flecha, donde la cantidad máxima de flujo está dada por la capacidad del arco. En la fuente, todos los arcos señalan hacia afuera. En el destino, todos los arcos señalan hacia el nodo.

4. El objetivo es maximizar la cantidad total de flujo de la fuente al destino. Esta cantidad se mide en cualquiera de las dos maneras equivalentes, esto es, la cantidad que sale de la fuente o la cantidad que entra al destino.

Algunas aplicaciones

A continuación se mencionan algunos tipos de aplicaciones comunes del problema del flujo

1. Maximizar el flujo a través de la red de distribución de una compañía desde sus fábricas hasta sus clientes.

2. Maximizar el flujo a través de la red de suministros de una compañía de proveedores a las fábricas.

3. Maximizar el flujo de petróleo por un sistema de tuberías.4. Maximizar el flujo de agua a través de un sistema de acueductos.5. Maximizar el flujo de vehículos por una red de transporte.

En algunas de estas aplicaciones, el flujo a través de la red se puede originar en más de un nodo y también puede terminar en más de uno, aunque en el problema de flujo máximo puede tener sólo un origen y un destino. Por ejemplo, una red de distribución de una compañía tiene varias fábricas y múltiples clientes. En este caso se recurre a una reformulación ingeniosa para ajustar esta situación al problema. Se trata de aumentar la red original para que incluya una fuente ficticia, un destino ficticio y algunos arcos nuevos. La fuente ficticia se maneja como el nodo que da origen a todo el flujo que en realidad se origina en algunos otros nodos. En cada uno de estos otros nodos se inserta un nuevo arco que va desde la fuente ficticia hasta este nodo, donde la capacidad del arco es igual al flujo máximo que puede originar en este nodo. De manera similar, el destino ficticio se trata como al nodo que absorbe todo el flujo que, en realidad, termina en algún otro nodo. Por lo tanto, s coloca un nuevo arco desde cada uno de los otros nodos hasta el destino ficticio con capacidad igual al máximo que en realidad termina en este nodo. Debido a estos cambios, todos los nodos de la red original se convierten en nodos de trasbordo para que la red aumentada

Ing. René Zahorí Torres Becerra 50

Page 51: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

tenga un solo origen (la fuente ficticia) y un solo destino (el destino ficticio) y se ajuste al problema del flujo máximo.

Un Algoritmo

Como el problema de flujo máximo se puede formular como un problema de programación lineal, se puede resolver con el método símplex. Sin embargo s dispone de un algoritmo de trayectorias aumentadas mucho más eficiente. Este algoritmo se basa en dos conceptos intuitivos, el de una red residual y el de una trayectoria aumentada.

Una vez que se han asignado flujos a los arcos de la red original, la red residual muestra las capacidades restantes – llamados capacidades residuales – para asignar flujos adicionales. Por ejemplo, considere el arco O→B de la figura que tiene una capacidad de 7. Ahora suponga que los flujos asignados incluyen un flujo de 5 a través de este arco, lo que deja una capacidad residual de 7-5 = 2 para cualquier asignación de flujo adicional a través de O→B. Este estado se describe en la red residual de la siguiente manera

El número sobre el arco junto a u nodo señala la capacidad residual del flujo desde ese nodo hasta el otro. Por lo tanto, además de que la capacidad residual de 2 del flujo de O a B, el 5 de la derecha indica una capacidad residual de 5 para asignar un flujo desde B hasta O – es decir, para cancelar algún flujo asignado antes de O a B -.

De inicio, antes de asignar cualquier flujo, la red residual tiene la apariencia que se muestra en la figura 2.4. Todos los arcos de la red original se cambiaron de un arco dirigido a un arco no dirigido. No obstante, las capacidades en la dirección original son las mismas y las capacidades en la dirección opuesta son cero, de manera que las restricciones sobre los flujos no cambian.

Después, siempre que se asigna una capacidad de flujo a un arco, esa cantidad se resta de la capacidad residual en la misma dirección y se suma la capacidad residual en la dirección opuesta.

Una trayectoria de aumento es una trayectoria dirigida del nodo fuente al nodo destino en la red residual, tal que todos los arcos es esta trayectoria tienen capacidad residual estrictamente positiva. El mínimo de estas capacidades residuales se llama capacidad residual de la trayectoria de aumento porque representa la cantidad de flujo que es factible agregar en todo flujo a través de la red original.

El algoritmo de la trayectoria de aumento selecciona varias veces una trayectoria de aumento y agrega un flujo igual a su capacidad residual a la trayectoria en la red original. Este proceso continúa hasta que no hay trayectorias de aumento, con lo que el flujo del nodo fuente al nodo destino no puede crecer. La clave para asegurar que la solución final es óptima por necesidad es el hecho de que las trayectorias de aumento puedan cancelar flujos asignados con anterioridad en la red original; así, una selección indiscriminada de trayectorias para asignar flujos no puede evitar el uso de una combinación mejor de asignaciones de flujos.

Algoritmo de la trayectoria de aumento del problema de flujo máximo

Ing. René Zahorí Torres Becerra 51

Page 52: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

1. Se identifica una trayectoria de aumento cuando se encuentra alguna trayectoria dirigida del origen al destino en la red residual, tal que cada arco sobre ella tenga capacidad residual estrictamente positiva. (si no existe una, los flujos netos asignados constituyen un patrón de flujo óptimo)

2. Cuando se encuentra el mínimo de las capacidades residuales de los arcos sobre esta trayectoria se identifica la capacidad residual c* de esta trayectoria de aumento. Se aumenta en c* el flujo de esta trayectoria.

3. Se disminuye en c* la capacidad residual de cada arco en esta trayectoria de aumento. Se aumenta en c* la capacidad residual de cada arco en la dirección opuesta en esta trayectoria. Se regresa al paso 1.

Cuando se lleva a cabo el paso 1, con frecuencia habrá varias alternativas de trayectorias de aumento entre las cuales se podrá escoger. Aunque la estrategia algorítmica para elegir es importante para elevar la eficiencia de las aplicaciones a gran escala, no se profundizará en este tema relativamente especializado. En consecuencia, en el siguiente ejemplo, la selección se hará en forma arbitraria.

Aplicación del algoritmo al problema de Flujo Máximo de Seervada park

La aplicación de este algoritmo al problema de Seervada Park conduce a los siguientes resultados. A partir de la red residual inicial de la siguiente figura 2.4, se proporciona la nueva red residual después de una o dos iteraciones, donde la cantidad total de flujo de O a T logrado hasta el momento se muestra en negritas (junto a los nodos O y T).

Figura 2.4. Red residual del problema de Flujo Máximo de Seervada park

Iteración 1: en la figura 2.4, una trayectoria de aumento en O→B→E→T que tiene la capacidad residual igual al min {7,5,6} = 5. Si se asigna un flujo de 5 a esta trayectoria, la red residual que resulta es:

Ing. René Zahorí Torres Becerra 52

Page 53: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Iteración 2: Se asigna un flujo de 3 a la trayectoria de aumento en O→A. La red residual que resulta

Iteración 3: Se asigna un flujo de 1 a la trayectoria de aumento en O→A→B→D→T.Iteración 4: Se asigna un flujo de 2 a la trayectoria de aumento en O→B→D→T. La red residual

que resulta es:

Iteración 5: Se asigna un flujo de 1 a la trayectoria de aumento en O→C→E→D→T.Iteración 6: Se asigna un flujo de 1 a la trayectoria de aumento en O→C→E→T. La red residual

que resulta es:

Iteración 7: Se asigna un flujo de 1 a la trayectoria de aumento en O→C→E→B→D→T. La red residual que resulta es:

Ing. René Zahorí Torres Becerra 53

Page 54: Antología de Investigación de Operaciones Sistemas Computacionales

IP TP

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ya no existe trayectoria de aumento por lo que el patrón de flujo actual es óptimo.

El patrón de flujo actual se puede identificar ya sea por la acumulación de las asignaciones de flujo o mediante la comparación de las capacidades residuales finales con las capacidades originales de los arcos. Si se emplea este método, existe un flujo a través de un arco si la capacidad residual final es menor que la capacidad original. La magnitud de este flujo es igual a la diferencia entre las capacidades. Al aplicar este método de comparación de la red residual obtenida en la última iteración, se obtiene el patrón de flujo que se muestra en la siguiente figura:

2.5.Programación de Proyectos (PERT-CPM)

Una actividad es crítica si su retraso cusa retraso en el proyecto. Una no crítica es aquella que su retraso no retrasa el proyecto, es decir tiene tiempo de holgura. La holgura puede definirse como el tiempo de inicio más tardío (I.T.) menos su tiempo de inicio más próximo (I.P.).

La Ruta crítica de un proyecto es una cadena de actividades críticas. Los cálculos para obtenerla se realizan en dos fases, y por ello se considera a dij como la duración de la catividad que va del nodo i al nodo j.

Primera Fase: Cálculos hacia adelante.

1. Calcular el tiempo de inicio más proximo(IP).

IPj = Max { IPi + dij } para toda actividad (i,j) {IP0 = 0}

2. Tiempo de terminación más proximo(TP).

TPi = IPj + dij

Ing. René Zahorí Torres Becerra 54

Page 55: Antología de Investigación de Operaciones Sistemas Computacionales

IT TT

1

2

3

4

5

6 8

7

3

12 20 6

13

18

8 15

64 4

Inicia el día 0 y Termina el día 3

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Segunda Fase: Cálculos hacia atrás.

1. Calcular el tiempo de terminación más tardío(TT).

TTi = Min { TTj - dij }

2. Tiempo de terminación más proximo(TP).

ITi = TTi - dij

Cálculo de HolguraHolgura = TT-TP

= IT - IP

De donde la RUTA CRÍTICA será la actividad en la que se presenta una HOLGURA CERO

Ejemplo:

Hallar la ruta crítica del siguiente ejemplo:

Primera Fase: Hacia adelante (→)

Del Nodo 1 al 2 = (0,3)Del Nodo 1 al 3 = (0,12)Del Nodo 1 al 4 = (0,4)Del Nodo 2 al 4 = (3,11)

Del Nodo 2 al 5 = (3,21)Del Nodo 3 al 4 = (4,10)Del Nodo 4 al 5 = (12,27)Del Nodo 4 al 6 = (12,32)

Del Nodo 5 al 6 = (27,32)Del Nodo 5 al 8 = (27,40)Del Nodo 6 al 7 = (32,36)Del Nodo 6 al 8 = (32,38)

Notación: (0,3)

Se toma como tiempo de suración el mayor tiempo, por lo tanto el mayor es 40 y la tipificación tiene 4 unidades de Holgura.

Ing. René Zahorí Torres Becerra 55

Page 56: Antología de Investigación de Operaciones Sistemas Computacionales

1

2

3

4

5

6 8

7

3

12 20 6

13

18

8 15

64 4

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Primera Fase: Retroceso (←)

Como se puede observar TD= 40 y la Ruta crítica es RC = 1,4,5,8

Ejemplos:

Resolver los siguientes ejemplos aplicando los cuatro métodos de solución del modelo de Redes (camino más corto, árbol de expandido mínimo, flujo máximo y ruta crítica):

Ejercicio 1)

Ejercicio 2)

7

7 Semana 7: Tarea en equipo: g) Resuelva los ejercicios 1 y 2 de la pag. 55

Ing. René Zahorí Torres Becerra 56

<40,27><27,12>

<12,0>

Page 57: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Unidad 3Programación No Lineal

3.1. Conceptos básicos de problemas de programación no lineal

La programación no lineal o Dinámica es una técnica matemática que a menudo resulta útil a tomar una sucesión de decisiones interrelacionadas. Proporciona un procedimiento sistemático para determinar la combinación de decisiones que maximice la efectividad global.

Contrastando con la programación lineal, no existe un planteamiento matemático estándar "del" problema de programación dinámica. Más bien, la programación dinámica es un tipo general de enfoque para resolver problemas y las ecuaciones particulares usadas deben desarrollarse para que se ajusten a cada situación individual. Por lo tanto, se requiere un cierto grado de ingenio y de visión de la estructura general de los problemas de programación dinámica, a fin de reconocer cuando un problema se puede resolver mediante los procedimientos de esta programación y cómo se haría. Probablemente se puedan desarrollar mejor estas aptitudes por medio de una exposición de una amplia variedad de aplicaciones de la programación dinámica y de un estudio de las características que son comunes a todas estas.

Por fortuna, la programación dinámica suministra una solución con mucho menos esfuerzo que la enumeración exhaustiva. (Los ahorros de cálculo serían enormes para versiones más grandes de un problema.) La programación dinámica parte de una pequeña porción del problema y encuentra la solución óptima para este problema más pequeño.

Entonces gradualmente agranda el problema, hallando la solución óptima en curso a partir de la anterior, hasta que se resuelve por completo el problema original. En seguida se dan los detalles involucrados en la implementación de esta filosofía general.

Considérese que las variables de decisión xn (n = 1,2,3,4) son el destino inmediato en la etapa n. Así, la ruta seleccionada sería 1 - XI - X2 - X3 - X4 en donde X4 = 10. Sea fn(s, Xn) el costo total de la mejor política global para las etapas restantes, dado que el vendedor se encuentra en el estado s listo para iniciar la etapa n y se selecciona a XII como el destino inmediato. Dados s y n, denotemos por x el valor de X*n que minimiza al fn(s, Xn) y sea f*(s) el valor mínimo correspondiente de fn(s, Xn) por tanto, f*n(s) = fn(s, Xn). El objetivo es hallar f1*(1) y la pol1tica correspondiente. La programación dinámica hace esto, hallando sucesivamente f4*(s),f3*(s), f2*(s) , a continuación, f1*(1).

Ing. René Zahorí Torres Becerra 57

Page 58: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Características de la Programación Dinámica

Ing. René Zahorí Torres Becerra 58

Page 59: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Algunos ejemplos de modelos de P.D.

Ing. René Zahorí Torres Becerra 59

Page 60: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 60

Page 61: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 61

Page 62: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 62

Page 63: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

8

3.2.Ilustración grafica de problemas de programación no lineal.

Esta sección considera con mayor amplitud el enfoque de programación dinámica para los problemas determinísticos, en los que el estado en la etapa siguiente queda completamente determinado por el estado y la política en la etapa actual.

La programación dinámica determinística se puede describir en forma de diagrama de la siguiente forma:

Una manera de catalogar los problemas de programación dinámica determinística es por la forma de la función objetivo. Por ejemplo, el objetivo podría ser minimizar la suma de contribuciones de las etapas individuales, o bien minimizar un producto de tales términos y así sucesivamente.

En un problema de programación dinámica, las temporadas deben ser las etapas.

8 Semana 8: Tarea individual h) Entregar un resumen de los temas 3.1. y3.2.

Ing. René Zahorí Torres Becerra 63

Sn Sn+1

Etapan

Etapan + 1

fn(Sn,Xn) Fn*+1(Sn+1)

Contribución de Xn

Estado:

Page 64: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

3.3. Tipos de problemas de programación no lineal.

La programación dinámica probabilística difiere de la programación dinámica determinística en que el estado de la etapa siguiente no queda completamente determinado por el estado y la decisión de la política en el estado actual. En lugar de ello existe una distribución de probabilidad para lo que será el estado siguiente. Sin embargo, esta distribución de probabilidad todavía esta completamente determinada por el estado y la decisión de la política del estado actual. En la siguiente figura se describe diagramáticamente la estructura básica que resulta para la programación dinámica probabilística, en donde N denota el número de estados posibles en la etapa n+1.

Cuando se desarrolla de esta forma para incluir todos los estados y decisiones posibles en todas las etapas, a veces recibe el nombre de árbol de decisión. Si el árbol de decisión no es demasiado grande, proporciona una manera útil de resumir las diversas posibilidades que pueden ocurrir.

Ing. René Zahorí Torres Becerra 64

P1

P2

PN

C1

C2

CN

Etapa n+1

1

2

3

XnSn

fn(Sn,Xn)

Decisión

Probabilidad

Contribuciónde la Etapa n

Sn+1

f*n+1(1)

f*n+1(2)

f*n+1(3)

Estado

Etapa n

Page 65: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 65

Page 66: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 66

Page 67: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 67

Page 68: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 68

Page 69: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 69

Page 70: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 70

Page 71: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

9 y 10

9 Semana 9: Tarea individual i) Entregar un ejemplo explicado Programación Dinámica Determinística.10 Semana 10: Tarea individual j) Entregar un ejemplo explicado Programación Dinámica Probabilística.

Ing. René Zahorí Torres Becerra 71

Page 72: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Unidad 4Teoría de Inventarios

4.1. Sistemas de Administración y control

Los sistemas de inventarios surgen de las diferencias entre el tiempo y la localización de la demanda y el abastecimiento.

Desde el punto de vista del cliente, un artículo debe contener tantas unidades como puedan demandarse, y nunca debería quedar fuera de existencia. Generalmente, así sucede en el caso de la leche o el pan en una tienda de abarrotes. Los inventarios cuestan dinero, representan el capital inútil.

La cantidad comienza en un nivel alto y luego se reduce conforme se sacan las unidades. Cuando el nivel baja se coloca una orden, la cual al recibirse incrementa el inventario y esto se repite una y otra vez. La cantidad se controla con el tiempo y la cantidad de cada orden. Así, lo más importante es:

Cuánto ordenar y cuándo ordenar.

Definición y características

Es un conjunto de bienes que se almacenan para posteriormente venderlos o utilizarlos.

Tipos de inventarios.

a. Materias primas, productos en proceso, productos terminados y refracciones.

Razones para llevar inventarios.

1. independizar las etapas en producción. 2. Aprovechar los descuentos al comprar grandes cantidades. 3. Para evitar la especulación, ej. Las fábricas de transformadores utilizan mucho su producción el

cobre. 4. Atender oportunamente al cliente cuando requiera el producto.

Costos que se generan al tener inventarios (representan un total del 15 al 40 %).

a. Costo de la inversión estática en vía (Costo de oportunidad) lo menos que se pierde por este concepto es lo que nos daría el banco en intereses (12 % aprox.).

b. Terrenos y edificios (12 %). c. Sueldos del personal de almacén (3%). d. Seguros (1%). e. Robos y desperdicios (3%). f. Depreciación y obsoletismo (6%).

Ing. René Zahorí Torres Becerra 72

Page 73: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Costo total de los inventarios.

1. Costo de ordenar. 2. Costo del faltante. 3. Costo de lo comprado. 4. Costo de mantener los inventarios en almacén.

Ejemplo:

Supongamos que una cía. tiene una demanda de un producto de 97 unidades por semana y que puede comprarse en diversas formas: una cantidad de 5040 al año, una cantidad de 2520 cada 6 meses, 1680 cada 4 meses y así sucesivamente de acuerdo a las necesidades de la empresa.

El costo unitario de compra del artículo es de $2.50, el costo total y por satisfacer una orden es de $35.00 y el costo anual de almacenamiento de la mercancía es del 20% del precio de compra de la misma.

a. Determinar el tamaño económico del lote. b. El número de pedidos. c. El costo total del inventario. d. El punto de reorden si el proveedor tarda 2 semanas en surtir el pedido.

Inventario Promedio (Inv. Prom.)

Unidades

Costo de Mantener el inventario (Cmi) = Inventario Promedio * costo del Producto * 0.20 %

Cmi = 2520 * 2.50 * 0.20 = $1260

Costo de compra = 5040 * 2.5 =$ 12600

Costo Total = Costo de Mantenimiento del Inventario + Costo de Ordenar + Costo de Comprar

Costo total = 1260+35+12600= $ 13,895.

Ing. René Zahorí Torres Becerra 73

Page 74: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

No. de pedidos Tamaño del pedido Inventario Promedio Costo de mnto de inv. Costo de ordenar Costo de compra Costo total

1 5040 2520 1260 35 12600 13895

2 2520 1260 630 70 12600 13300

3 1680 840 420 105 12600 13125

4 1260 630 315 140 12600 13055

5 1008 504 252 175 12600 13027

6 840 420 210 210 12600 13020

7 720 360 180 245 12600 13025

8 630 315 157 280 12600 13037.5

Número de pedidos = 6. Costo Total = $ 13,020. Demanda optima = 840.

Ejemplo 2:

Dadas los siguientes datos determinar: a. El tamaño económico del lote. b. Número de pedidos. c. Costo total de adquisición del inventario. d. Necesidades anuales 144000 piezas. e. Costo del producto $16.00 f. Costo de adquisición por pedido $25.00 g. Punto de repetido si el proveedor tarda 12 días en enviar el pedido.

Tomando en cuenta que el costo anual de almacenamiento de la mercancía es del 10% .

No. de pedidos Tamaño pedido Inv. promedio Costo de mnto de inv. Costo de ordenar Costo de compra Costo total

1 144000 72000 115200 25 2304000 2419225

2 72000 36000 57600 50 2304000 2361650

3 48000 24000 38400 75 2304000 2342475

4 36000 18000 28800 100 2304000 2332900

5 28800 14400 23040 125 2304000 2327165

6 24000 12000 19200 150 2304000 2323350

7 20571 10285 16456 175 2304000 2320631

8 18000 9000 14400 200 2304000 2318600

9 16000 8000 12800 225 2304000 2317025

10 14400 7200 11520 250 2304000 231577011

11 Semana 11: Tarea individual k) Entregar un ejemplo de la pag 73 explicado.

Ing. René Zahorí Torres Becerra 74

Page 75: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

4.2. Modelo determinístico

4.2.1. Lote económico sin déficit (Modelos con reabastecimiento instantáneo).

No se permite el faltante. Suposiciones:

1. La demanda tiene que ser constante. 2. Los costos son constantes (no se permite descuento en adquisiciones voluminosas). 3. Los proveedores entregaran con puntualidad los pedidos en el periodo comprendido. 4. El lote mínimo es igual al inventario máximo.

Nomenclatura:

Q = tamaño económico del lote. N = número de pedido. D = Demanda. Ci = Costo de compra. Ch = Costo de mantener un unidad en los inventarios (%). Co = Costo de ordenar. R = Punto de reorden. L = Tiempo de consumo. T = Tiempo para consumir el inventario máximo. Imáx = Inventario Máximo. Î =Inventario Promedio. Ct = Costo Total.

Ct = Costo de compra + Costo de ordenar + Costo de tenencia.

Costo de compra = CiD

Costo de ordenar =

Costo de tenencia = 

Ing. René Zahorí Torres Becerra 75

Page 76: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Si la demanda es de 50 piezas por día y el proveedor pasa 10 días en surtir por tanto necesitamos 500 piezas para no tener faltante.

R = ? = 50 * 10 -500 D = 50 pza/día. L = 10 días. R = D L Unidad = 5040

Ejemplo:

Una Cía. fabricante de refrescos a observado que requiere anualmente de 3000 baleros que son utilizados en las bombas de agua con un programa de mantenimiento preventivo diseñado por el departamento de producción. El costo de cada unidad es de $ 80,000, el costo de oportunidad de inversión es de 12% del costo del producto. Los costos generados por el control de inventarios como son el sueldo de personal de almacén, agua y electricidad es de 2,400 * unidad, otro costo que representa aun los deterioros, extravió y envejecimiento de los productos almacenados anualmente y alcanzan un costo de $2,000 * unidad .La orden de compra se ha estimado en $120,000.

Suponga que el proveedor tarda en promedio 15 días en surtir una orden, determinar:

a) El tamaño económico del lote. b) El inventario máximo. c) El inventario Promedio. d) El punto de reorden. e) El tiempo requerido para consumir el inventario máximo. f) Costo total del inventario. g) Número de pedidos.

Datos:

D = 3000 unidad por año. Ci = $80,000 Co =$120,000 Ch= 0.12 (80,000)+ 2,400 + 2,000 Ch = 14,000 unidades por año. L = 15 días.

a) = Q = 227 unidad.

Ing. René Zahorí Torres Becerra 76

Page 77: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

b) Imáx. = Q = 227 u.

c) =

d) R=D∗L365

=3000∗15365

=123 Unidades

e) T -  Q/D = 0.075 Años = 27 días.

f) Ct = $ 262,585,903

g) =   

4.2.2. Lote económico de producción (Modelo con reabastecimiento uniforme, no se permite faltante).

Las suposiciones de este modelo son las siguientes.

La demanda se efectúa a tasa constante. El reemplazo es instantáneo (la tasa se reemplazo es finita). Todos los coeficientes de costos son constantes. La tasa de manufacturación es mayor que la tasa de demanda.

Este modelo compara el costo de ordenar una compra por el costo de iniciar una tanda de producción. Para determinar la cantidad optima a pedir o si sigue el procedimiento de manufacturar el producto.

S = Tasa de producción.

.

Ing. René Zahorí Torres Becerra 77

Page 78: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Formulario:

Ejemplo:

Frecuentemente un gerente de producción desea tomar la producción, ya sea de comprar o manufacturar un artículo. Los modelos vistos hasta el momento pueden ser usados para tomar tal decisión.Suponga que un artículo puede ser comprado a $25 la unidad o fabricado a una tasa de producción de 10,000 unidades por año, con un costo de $22 la unidad. Sin embargo si lo compramos el costo de una orden es de 5 mientras que el costo de organizar una tanda de producción. (Preparar el equipo) es de $50. La demanda es de 2,500 unidades por año, el costo de conservar el inventario es de 10% del costo del producto. Determinar que es preferible, si comprar o manufacturar.

Comprar:

Ci = $25 u.Co= $5Ch = 0.10*25 = $2.5D = 2,500 u / año.

=

Ct = $ 62,750

Manufacturar:

S = 10,000 u / año.Ci = $22 unidades.Co =$50Ch = 0.10 (22) = $2.2D = 2,500 u / año.

Ing. René Zahorí Torres Becerra 78

Page 79: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ct=(22∗2500 )+ 50∗2500389

+( 2.2∗3892 )(1− 2500

10000 )=55.642.2528

Ct = 55,642

De acuerdo con los costos obtenidos conviene mejor manufacturar el producto que comprarlo y una vez que el gerente ha decidido fabricar el producto desea conocer también:

a. El inventario máximo. b. El tiempo de producción. c. El punto de reorden (una orden tarda 1 semana en atenderse). d. El tiempo de ciclo. e. El tiempo en que no existe producción y que no se puede ocupar para dar mantenimiento a las

maquinas. f. El inventario promedio. g. El número de órdenes de fabricación.

Por lo tanto tenemos que:

a)

b)

c) R=D∗L365

=2500∗7365

=48

d)

e) T - t = 57 - 14 = 43

f)

g)12

12 Semana 12: Tarea individual l) Entregar este último ejemplo con un costo de compra de $30.00 unidad y un costo de manufactura de$28.00 la unidad.

Ing. René Zahorí Torres Becerra 79

Page 80: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

4.3. Lote económico de producción (Modelo con descuento por compras de grandes cantidades).

Es muy común que el precio de un producto por la cantidad que se compra o se produce. Esta situación surge cuando se tiene la oportunidad de recibir un descuento en la compra de una cantidad grande. Es posible que el costo de adicional de tener un inventario mayor, son ampliamente compensado reduciendo el costo de compra y el costo de ordenar. La forma directa de saber si se deben acelerar cantidades grandes es comparar el aumento de los costos con el precio normal con el ahorro generado por el precio de descuento.

Ejemplo:

Demanda (D) = 2000 u/año.Costo de Compra (Ci)= $5Costo por Ordenar (Co)= $5Costo por mantener el inventario (Ch)= 1.50 + 0.10 * 5 = 2

1. Encuentre la Q óptima con el precio base.

= = 100

2. Encontrar el costo del inventario con el precio base.

= (5 * 2000)+ (5 * (2000/100)) + (200/2) = 10,200

3. Calcular el costo del inventario con el precio de descuento, comparar este costo con el anterior y seleccionar la opción de menor costo.

Ejemplo:

Suponga que un proveedor nos ofrece un descuento del 5% si adquirimos lotes mayores o iguales a 200 unidades.

Datos:

Descuento 5% Ci = 5 * 0.95 = $ 4.75Ch = 1.50 + 0.10 (4.75) = $ 1.975Ct = (4.75 * 2000) + (5 * 2000/200) + (1.975 * 200/2) = 9747.5Ct = $ 9747.5 menor que la anterior.

Ing. René Zahorí Torres Becerra 80

Page 81: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Otro proveedor nos ofrece ahora un descuento del 40% si compramos lotes mayores o iguales a 120 unidades.

Datos:

Descuento 40% Ci = 5 * 0.60 = $ 3Ch = 1.50 + 0.10 (3) = $ 1.80Ct = (3 * 2000) + (5 * 2000/120) + (1.80 * 120/2) = 6191Ct = $ 6191 Optimo.

Ejemplo:

Demanda (D) = 2500 u/año.Costo de Compra (Ci)= $15Costo por Ordenar (Co)= $10

Suponga que un proveedor nos ofrece un descuento del 5% si adquirimos lotes mayores o iguales a 200 unidades.

Suponga que un proveedor nos ofrece un descuento del 10% si adquirimos lotes mayores o iguales a 250 unidades

Suponga que un proveedor nos ofrece un descuento del 15% si adquirimos lotes mayores o iguales a 300 unidades

13

13 Semana 13: Tarea individual m) Entregar un ejemplo de la pag. 80 explicado.

Ing. René Zahorí Torres Becerra 81

Page 82: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Unidad 5Teoría de Líneas de Espera (Teoría de Colas)

5.1. Definiciones, características y suposiciones

En este capítulo se aplica la teoría de colas. 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 de sistemas de colas. Los modelos sirven para encontrar el comportamiento de estado estable, como la longitud promedio de la línea y el tiempo de espera promedio para un sistema dado.

El problema es determinar qué capacidad o tasa de servicio proporciona el balance correcto. Esto no es sencillo, ya que el cliente no llega  a un horario fijo, es decir, no se sabe con exactitud en qué momento llegarán los clientes. También el tiempo de servicio no tiene un horario fijo.

Definición.

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. Los modelos sirven para encontrar el comportamiento de estado estable, como la longitud promedio de la línea y el tiempo de espera promedio para un sistema dado. Esta información, junto con los costos pertinentes, se usa, entonces, para determinar la capacidad de servicio apropiada.

Características los sistemas de colas.

Un sistema de colas puede dividirse en sus dos componentes de mayor importancia, la cola y la instalación de servicio. Las llegadas son las unidades que entran en el sistema para recibir el servicio. Siempre se unen primero a la cola; si no hay línea de espera se dice que la cola está vacía. De la cola, las llegadas van a la instalación de servicio de acuerdo con la disciplina de la cola, es decir, de acuerdo con la regla para decidir cuál de las llegadas se sirve después. El primero en llegar primero en ser servido es una regla común, pero podría servir con prioridades o siguiendo alguna otra regla. Una vez que se completa el servicio, las llegadas se convierten en salidas.

Ambas componentes del sistema tienen costos asociados que deben de considerarse.

Ing. René Zahorí Torres Becerra 82

Page 83: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

5.2. Terminología y notación

Costo 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 dólares) por llegada por unidad de tiempo y L = longitud promedio de la línea.

Costo de Servicio.

Este en la mayoría se trata de comprar varias instalaciones de servicio, en estos casos solo se ocupan los costos comparativos o diferenciales.

Sistema de costo mínimo.

Aquí hay que tomar en cuenta que para tasas bajas de servicio, se experimenta largas colas y costos de espera muy altos. Conforme aumenta el servicio disminuyen los costos de espera, pero aumenta el costo de servicio y el costo total disminuye, sin embargo, finalmente se llega a un punto de disminución en el rendimiento. Entonces el propósito es encontrar el balance adecuado para que el costo total sea el mínimo.

Ing. René Zahorí Torres Becerra 83

Page 84: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Estructuras típicas.

Las llegadas pueden ser personas, cartas, carros, incendios, ensambles intermedios en una fábrica, etc. En la siguiente tabla se muestran algunos ejemplos de varios sistemas de colas.

Ejemplos de sistemas de colas

Situación Llegadas Cola Mecanismo de Servicio

Aeropuerto Aviones Aviones en carreteo Pista

Aeropuerto Pasajeros Sala de espera Avión

Depto de bomberos Alarmas de incendio Incendios Depto. de Bomberos.

Compañía telefónica Números marcados Llamadas Conmutador

Lavado de carros Autos Autos sucios Mecanismo de lavado

La corte Casos Casos atrasados Juez

Panadería Clientes Clientes con números Vendedor

Carga de camiones Camiones Camiones en espera Muelle de carga

Oficina de correos Cartas Buzón Empleados por correos

Crucero Autos Autos en línea Crucero

Fábrica Subensamble Inventario en proceso Estación de trabajo.

Cartas de negocios Notas de dictadoCartas para mecanografiar

Secretaria

Reproducción Pedidos Trabajos Copiadoras

Hospital Pacientes Personas enfermas Hospital

Permitiendo que varíen el número de colas y el número de servidores, pueden hacerse los diagramas de los cuatro tipos de sistemas de la siguiente figura. Cada línea de espera individual y cada servidor individual se muestran por separado.

El primer sistema que se muestra en la figura, 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. El segundo, una línea con múltiples servidores, 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 tercer sistema, aquél en que cada servidor tiene una línea de separada, es característico de los bancos y las tiendas de autoservicio. El cuarto sistema, es una línea con servidores en serie, puede describir una fábrica.

Ing. René Zahorí Torres Becerra 84

Page 85: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

5.3. Proceso de Nacimiento y Muerte

La mayor parte de los modelos elementales de colas suponen que las entradas (llegada de clientes) y las salidas (clientes que se van) del sistema ocurren de acuerdo al proceso de nacimiento y muerte. Este importante proceso de teoría de probabilidad tiene aplicaciones en varias áreas. Sin embrago en el contexto de la teoría de colas, el término nacimiento se refiere a llegada de un nuevo cliente al sistema de colas y el término muerte se refiere a la salida del cliente servido. El estado del sistema en el tiempo t (t 0), denotado por N (t), es el número de clientes que hay en el sistema de colas en el tiempo t. El proceso de nacimiento y muerte describe en términos probabilísticos cómo cambia N (t) al aumentar t. En general, dice que los nacimientos y muertes individuales ocurren aleatoriamente, en donde sus tasas medias de ocurrencia dependen del estado actual del sistema.

Ing. René Zahorí Torres Becerra 85

Page 86: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

5.4. Modelos de Piosson

5.4.1. Modelo de un servidor y una cola.

Este modelo puede aplicarse a personas esperando en una cola para comprar boletos para el cine, a mecánicos que esperan obtener herramientas de un expendio o a trabajos de computadora que esperan tiempo de procesador.

Llegadas.

Consiste en la entrada al sistema que se supone es aleatoria. No tienen horario, es impredecible el momento en que llegará. El modelo también supone que las llegadas vienen de una población infinita y llegan una a la vez.

Cola.

En este modelo se considera que el tamaño de la cola es infinito. La disciplina de la cola es primero en llegar, primero en ser servido sin prioridades especiales. También se supone que las llegadas no pueden cambiar lugares en la línea (cola) o dejar la cola antes de ser servidas.

Instalación de Servicio.

Se supone que un solo servidor proporciona el servicio que varía aleatoriamente.

Salidas.

No se permite que las unidades que salgan entren inmediatamente al servicio.

Características de operación.

Un servidor y una cola. Llegada Poisson. Cola infinita, primero en llegar primero en ser servido. Tiempos de servicio exponenciales.

Cola:

Longitud promedio de la línea:

Tiempo de espera promedio:

Ing. René Zahorí Torres Becerra 86

Page 87: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Sistema:

Longitud promedio de la línea:

Tiempo de espera promedio:

Utilización de la instalación:

Probabilidad de que la línea exceda a:

A = tasa promedio de llegada. S = tasa promedio de servicio.

Ejemplo: (Un supermercado)

Supóngase un supermercado grande con muchas cajas de salida, en donde los clientes llegan para que les marquen su cuenta con una tasa de 90 por hora y que hay 10 cajas en operación. Si hay poco intercambio entre las líneas, puede tratarse este problema como 10 sistemas separados de una sola línea, cada uno con una llegada de 9 clientes por hora. Para una tasa de servicio de 12 por hora:

A = 9 clientes por hora S = 12 clientes por hora

Entonces:

=  2.25 Clientes

=  0.25 horas o 15 minutos.

=  3 clientes.

=  0.33 horas o 20 minutos.

=  0.75 o 75%

0.32

Ing. René Zahorí Torres Becerra 87

Page 88: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Entonces, para este ejemplo, el cliente promedio espera 15 minutos antes de ser servido. En promedio, hay un poco más de dos clientes en la línea o tres en el sistema. El proceso completo lleva un promedio de 20 minutos. La caja está ocupada el 75 % del tiempo. Y finalmente, el 32 % del tiempo habrá cuatro personas o más en el sistema (o tres o más esperando en la cola).

5.4.2. Modelo con Servidores Múltiples

Características de operación.

Una sola Línea y Múltiples Servidores. Llegada Poisson. Cola infinita, primero en llegar primero en ser servido. Tiempos de servicio exponenciales.

Las ecuaciones para las características de operación se vuelven un poco más complicadas.

Sea:

N = número de servidores. A = tasa promedio de llegadas (llegadas por unidad de tiempo). S = tasa promedio de servicio por cada servidor (llegadas por unidad de tiempo).

Entonces:

14

14 Semana 14: Tarea individual n) Entregar este último ejemplo con tasa de llegada de 12 clientes por hora y una tasa de servicio de 15 por hora.

Ing. René Zahorí Torres Becerra 88

Page 89: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

La cantidad P0 es la probabilidad de que no haya llegadas en una unidad de tiempo, lo cual no lo hace más fácil de calcular. Para dos o tres servidores pueden combinarse y simplificar las dos ecuaciones para obtener, para N=2

Nótese que para N = 1 este modelo se reduce al modelo de un servidor.

Ejemplo:

Considérese la biblioteca de una universidad cuyo personal está tratando de decidir cuántas copiadoras debe de instalar para uso de los estudiantes. Se ha escogido un equipo particular que puede hacer hasta 10 copias por minuto. No se sabe cuál es el costo de espera para un estudiante, pero se piensa que no deben tener que esperar más de dos minutos en promedio. Si el número promedio de copias que se hacen por usuario es cinco, ¿cuántas copiadoras se deben instalar?

Se usa prueba y error para resolver este tipo de problemas, no se encuentra una solución general como se hizo para el modelo de un servidor. Se tratará primero con dos copiadoras, después con tres, y así hasta que se satisfaga el criterio del tiempo de espera.

¿Cuál es la tasa de servicio? Si el número promedio de copias es cinco y la copiadora puede hacer hasta 10 copias por minuto, entonces pueden servirse en promedio hasta dos estudiantes por minuto. Pero, en esto no se toma en cuenta el tiempo para insertar la moneda, cambiar originales, para que un estudiante desocupe y otro comience a copiar. Supóngase que se permite un 70 % del tiempo para estas actividades. Entonces la tasa de servicio neta baja a 0.6 estudiantes por minuto. Además se supone que los periodos pico de copiado tienen una tasa de llegada de 60 estudiantes por hora, o 1 por minuto.

Se comenzará con dos copiadoras, ya que una no sería suficiente.

A = 1 por minuto. S = 0.6 por minuto. N = 2

Ing. René Zahorí Torres Becerra 89

Page 90: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Esto excede el criterio del máximo de 2 minutos de espera para el estudiante promedio. Se tratarán tres copiadoras.

Se necesitan tres copiadoras. La utilización de cada una será:

5.5. Análisis de Costos

Evaluación del sistema cuando se conoce el costo de espera.

Los costos de servicio influyen en el método para encontrar el sistema de menor costo. Si el costo de servicio es una función lineal de la tasa de servicio, puede encontrarse una solución general para la tasa óptima.

Para aplicar una solución general, se necesita una tasa de servicio que pueda variar de manera continua.

Cuando los costos de servicio cambian en forma escalonada, se usa la técnica de prueba y error para encontrar el sistema de menor costo. Se calcula el costo total para una tasa de servicio, después para la siguiente y así sucesivamente. Esto continúa hasta que se encuentra un límite inferior o un mínimo tal, que el aumentar o el disminuir las tasas de servicio da costos totales más altos.

Ejemplo:

Se está estudiando un muelle de carga y descarga de camiones para aprender cómo debe formarse una brigada. El muelle tiene espacio sólo para un camión, así es un sistema de un servidor. Pero el tiempo de carga o descarga puede reducirse aumentando el tamaño de la brigada.

Supóngase que puede aplicarse el modelo de un servidor y una cola (llegadas Poisson, tiempos de servicio exponenciales) y que la tasa promedio de servicio es un camión por hora para un cargador. Los cargadores adicionales aumentan la tasa de servicio proporcionalmente. Además, supóngase que los camiones llegan con una tasa de dos por hora en promedio y que el costo de espera es de $ 20 por hora por un camión. Si se le paga $ 5 por hora a cada miembro de la brigada, ¿Cuál es el mejor tamaño de esta?

Ing. René Zahorí Torres Becerra 90

Page 91: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Datos:

A = 2 camiones por hora. S = 1 camión por persona. Cw = costo de espera = $20 por hora por camión. CS = costo de servicio = $ 5 por hora por persona.

Ahora sea k = número de personas en la brigada. Se busca k tal que la suma de los costos de espera y servicio se minimice:

Costo total = Cw LS + k CS

Las pruebas deben de empezar con tres miembros de la brigada, ya que uno o dos no podrían compensar la tasa de llegadas de dos camiones por hora. Para una brigada de tres, la tasa de servicio es de tres camiones por hora y puede encontrarse Ls con la siguiente ecuación:

De la misma manera, para una brigada de cuatro:

El costo es menor, por tanto se sigue adelante.

Para una brigada de cinco:

Ing. René Zahorí Torres Becerra 91

Page 92: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Este todavía es menor:

Como este costo es mayor que el de la brigada de cinco, se rebasó el límite inferior de la curva de costo; el tamaño óptimo de la brigada es cinco personas.

Evaluación del sistema con costos de espera desconocidos.

En lugar de estimar el costo de espera, el administrador puede especificar un promedio mínimo de tiempo de espera o de longitud de línea. Esto establece un límite superior para Wq, el tiempo de espera en la cola (o para Lq, la longitud de línea en la cola). Con este límite superior puede encontrarse la tasa de servicio necesaria para cualquiera tasa de llegadas dadas.

Ejemplo:

Considérese un restaurante de comida rápida con un menú limitado. El restaurante se está diseñando para que todos los clientes se unan a una sola línea para ser servidos. Una persona tomará la orden y la servirá. Con sus limitaciones, la tasa de servicio puede aumentarse agregando más personal para preparar la comida y servir las órdenes.

Esto constituye un sistema de un servidor y una cola. Si las llegadas y salidas son aleatorias, puede aplicarse el modelo de una cola. Supóngase que la administración quiere que el cliente promedio no espere más de dos minutos antes de que se tome su orden. Esto se expresa como:

Wq = 2 minutos

Supóngase también que la tasa máxima de llegadas es de 30 órdenes por hora.

Rearreglando términos,

S (S−A )= AW q

S2−AS− AW q

=0

Ing. René Zahorí Torres Becerra 92

Page 93: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Como la tasa de servicio debe ser mayor que la tasa de llegadas, puede descartarse la solución negativa. Entonces:

s= A2

+√ A2

4+ A

W q

Para este ejemplo, se supuso:

A = 30 ordenes por hora. Wq = 2 minutos o 0.033 horas

Entonces:

= 15 + 33.5 = 48.5 órdenes por hora.

Para cumplir los requerimientos, se necesita una tasa de casi 50 órdenes por hora. Si, por ejemplo, una brigada de cinco puede manejar 45 órdenes por hora y una de seis puede procesar 50 por hora, entonces sería necesario tener la brigada de seis.

Modelo de un servidor con tiempos de servicio constantes.

Este modelo es igual que el anterior, excepto que se supone que el tiempo de servicio es exactamente el mismo en cada llegada en lugar de ser aleatorio. Todavía se tiene una sola línea, tamaño de la cola infinito, disciplina de la cola como primero en llegar primero en ser servido y llegadas Poisson.

Las aplicaciones típicas de este modelo pueden incluir un autolavado automático, una estación de trabajo en una pequeña fábrica o una estación de diagnóstico de mantenimiento preventivo. En general, el servicio lo proporciona una máquina.

Las características de operación están dadas por 4:

Ing. René Zahorí Torres Becerra 93

Page 94: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Ing. René Zahorí Torres Becerra 94

Page 95: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

En donde A = tasa promedio de llegadas (llegadas por unidad de tiempo) y S = tasa constante de servicio (llegadas por unidad de tiempo).

Ejemplo:

Supóngase un lavado automático de autos con una línea de remolque, de manera que los autos se mueven a través de la instalación de lavado como en una línea de ensamble. Una instalación de este tipo tiene dos tiempos de servicio diferentes: el tiempo entre autos y el tiempo para completar un auto. Desde el punto de vista de teoría de colas, el tiempo entre autos establece el tiempo de servicio del sistema. Un auto cada cinco minutos da una tasa de 12 autos por hora. Sin embargo, el tiempo para procesar un auto es el tiempo que se debe esperar para entregar un auto limpio. La teoría de colas no considera este tiempo.

Supóngase que el lavado de autos puede aceptar un auto cada cinco minutos y que la tasa promedio de llegadas es de nueve autos por hora (con distribución Poisson). Sustituyendo:

Lq=92

(2) (12 )(12−9)=1.125 autos

W q=9

(2)(12 )(12−9)=0.125hrs .o7.5minutos

Ls=(9 )((2 ) (12 )−9)(2) (12 )(12−9)

=1.875 autos

W s=1.875

9=0.208 hrs . o 12.5 minutos

U 0=9

12=0.75 o 75 %

15

15 Semana 15: Tarea individual o) Entregar este último ejemplo con tasa de llegada de 12 clientes por hora y una tasa de servicio de 15 por hora.

Ing. René Zahorí Torres Becerra 95

Page 96: Antología de Investigación de Operaciones Sistemas Computacionales

Antología de Investigación de Operaciones

Ingeniería en Sistemas Computacionales

Bibliografía

Introducción a la Investigación de Operaciones

Hillier y Liberman

McGraw Hill

Investigación de Operaciones

Taha Handy

Pearson – Prentice Hall

Investigación de Operaciones Aplicaciones y algoritmos

Wayne L. Winston

Tomsom

Formulación y Resolución de Modelos de Programación Matemática en Ingeniería y Ciencia

Enrique Castillo, Antonio J. Conejo, Pablo Pedregal, Ricardo García y Natalia Alguacil

Apuntes de Clase

Introducción a la Investigación de Operaciones

Apuntes de clases Universidad de Uruguay

Ing. René Zahorí Torres Becerra 96