Mi portafolio unidad 3
Problema del transporte o distribución
El contexto en el que se aplica el modelo de transporte es amplio y puede generar soluciones atinentes al área de operaciones, inventario y asignación de elementos.
El procedimiento de resolución de un modelo de transporte se puede llevar a cabo mediante programación lineal común, sin embargo su estructura permite la creación de múltiples alternativas de solución tales como la estructura de asignación o los métodos heurísticos más populares como Vogel, Esquina Noroeste o Mínimos Costos.

Los problemas de transporte o distribución son uno de los más aplicados en la economía actual, dejando como es de prever múltiples casos de éxito a escala global que estimulan la aprehensión de los mismos.
Problema de transporte mediante programación lineal
Como se mencionó anteriormente, la programación lineal puede ser utilizada para la resolución de modelos de transporte, aunque no sea sensato resolver los modelos mediante el Método Simplex, si puede ser de gran utilidad la fase de modelización, la programación carece de la practicidad de los métodos de asignación, pero puede ser de gran importancia dependiendo de la complejidad de las restricciones adicionales que puede presentar un problema particular.
El problema
Una empresa energética colombiana dispone de cuatro plantas de generación para satisfacer la demanda diaria eléctrica en cuatro ciudades, Cali, Bogotá, Medellín y Barranquilla. Las plantas 1,2,3 y 4 pueden satisfacer 80, 30, 60 y 45 millones de KW al día respectivamente. Las necesidades de las ciudades de Cali, Bogotá, Medellín y Barranquilla son de 70, 40, 70 y 35 millones de Kw al día respectivamente. Los costos asociados al envío de suministro energético por cada millón de KW entre cada planta y cada ciudad son los registrados en la siguiente tabla.

Solución mediante programación lineal
El modelo básico de transporte es el modelo en el cual la cantidad ofertada es igual a la cantidad demandada, como es el caso de este ejercicio, sin embargo trasladar esta suposición a la realidad es casi imposible por lo cual hace falta crear orígenes y/o destinos ficticios con el excedente de oferta y/o demanda.
Como ya lo hemos planteado en módulos anteriores el primer paso corresponde a la definición de las variables, regularmente se le denomina a las variables de manera algebraica Xi,j donde i simboliza a la fuente y j simboliza al destino. En este caso i define el conjunto {Planta 1, Planta 2, Planta 3 y Planta 4}, y j define el conjunto {Cali, Bogotá, Medellín y Barranquilla}. Sin embargo es práctico renombrar cada fuente y destino por un número respectivo, por ende la variable X1,2 corresponde a la cantidad de millones de KW enviados diariamente de la Planta 1 a la ciudad de Bogotá.

El segundo paso corresponde a la formulación de las restricciones de oferta y demanda, cuya cantidad se encuentra determinada por el factor entre fuentes y destinos, en este caso 16 restricciones.
Restricciones de oferta o disponibilidad, las cuales son de signo ≤:
X1,1 + X1,2 + X1,3 + X1,4 ≤ 80
X2,1 + X2,2 + X2,3 + X2,4 ≤ 30
X3,1 + X3,2 + X3,3 + X3,4 ≤ 60
X4,1 + X4,2 + X4,3 + X4,4 ≤ 45
Restricciones de demanda, las cuales son de signo ≥:
X1,1 + X2,1 + X3,1 + X4,1 ≥ 70
X1,2 + X2,2 + X3,2 + X4,2 ≥ 40
X1,3 + X2,3 + X3,3 + X4,3 ≥ 70
X1,4 + X2,4 + X3,4 + X4,4 ≥ 35
Luego se procede a formular la función objetivo, en la cual se relaciona el costo correspondiente a cada ruta.
ZMIN = 5X1,1 + 2X1,2 + 7X1,3 + 3X1,4 + 3X2,1 + 6X2,2 + 6X2,3 + 1X2,4 + 6X3,1 + 1X3,2 + 2X3,3 + 4X3,4 + 4X4,1 + 3X4,2 + 6X4,3 + 6X4,4
Luego se puede proceder al uso de la herramienta WinQSB para resolver el modelo realizado, aquí están los resultados.
Este problema presenta una solución óptima alternativa, aquí los resultados.
Red solución:

Los análisis de dualidad y sensibilidad en los modelos de transporte resultan ser bastante interesantes, pues pueden llegar a determinar aumentos de capacidad en las fuentes si el precio sombra de las rutas en relación a ellas lo justifica.
Problemas de asignación
Múltiples son los casos en los que como ingenieros industriales podemos hacer uso del problema de asignación para resolver diversas situaciones, entre los que cabe mencionar se encuentran la asignación de personal a maquinas, herramientas a puestos de trabajos, horarios a maestros, candidatos a vacantes, huéspedes a habitaciones, comensales a mesas, vendedores a zonas territoriales etc.
En el modelo de asignación, la idea fundamental de resolución es ¿qué fuente satisface mejor el destino?, y dado que hemos asociado el modelo a una gran diversidad de circunstancias esta pregunta puede plantearse en múltiples contextos, como ¿qué candidato es el idóneo para la vacante?, o ¿qué personal es el indicado para la línea productiva?, o ¿qué personal es el mejor para ejecutar determinada tarea?. Una característica particular del modelo de asignación es que para su resolución no se hace necesario que el número de fuentes sea igual al número de destinos, lo cual es muy común en la vida real, teniendo en cuenta su aplicación, pues generalmente la cantidad de aspirantes es superior al número de vacantes (lógicamente haciendo referencia a la aplicación del modelo al contexto de oferta y demanda laboral).
Método Húngaro
Apartándonos un poco de la idea expresada en módulos anteriores respecto a la facilidad de resolver problemas atinentes a la investigación operativa en especial aquellos de transporte mediante el uso de herramientas tecnológicas como lo son WinQSB, LINGO, TORA, STORM, Excel etc.. vale la pena ya sea para fines académicos o de cultura ingenieril realizar la resolución del problema de asignación mediante el algoritmo que se creó para tal fin, como lo es el Método Húngaro.
Paso 1
Antes que nada cabe recordar que el método húngaro trabaja en una matriz de costos n*m (en este caso conocida como matriz m*m, dado que el número de filas es igual al número de columnas n = m), una vez construida esta se debe encontrar el elemento más pequeño en cada fila de la matriz.
Paso 2
Una vez se cumple el procedimiento anterior se debe construir una nueva matriz n*m, en la cual se consignarán los valores resultantes de la diferencia entre cada costo y el valor mínimo de la fila a la cual cada costo corresponde (valor mínimo hallado en el primer paso).
Paso 3
Este paso consiste en realizar el mismo procedimiento de los dos pasos anteriores referidos ahora a las columnas, es decir, se halla el valor mínimo de cada columna, con la diferencia que este se halla de la matriz resultante en el segundo paso, luego se construirá una nueva matriz en la cual se consignarán los valores resultantes de la diferencia entre cada costo y el valor mínimo de la columna a la cual cada costo corresponde, matriz llamada «Matriz de Costos Reducidos».
Paso 4
A continuación se deben de trazar líneas horizontales o verticales o ambas (únicamente de esos tipos) con el objetivo de cubrir todos los ceros de la matriz de costos reducidos con el menor número de líneas posibles, si el número de lineas es igual al número de filas o columnas se ha logrado obtener la solución óptima (la mejor asignación según el contexto de optimización), si el número de líneas es inferior al número de filas o columnas se debe de proceder con el paso 5.
Paso 5
Este paso consiste en encontrar el menor elemento de aquellos valores que no se encuentran cubiertos por las lineas del paso 4, ahora se restará del restante de elementos que no se encuentran cubiertos por las líneas; a continuación este mismo valor se sumará a los valores que se encuentren en las intersecciones de las lineas horizontales y verticales, una vez finalizado este paso se debe volver al paso 4.
Solución de un problema de asignación mediante el Método Húngaro
El problema
La compañía de manufactura «Jiménez y Asociados» desea realizar una jornada de mantenimiento preventivo a sus tres máquinas principales A, B y C. El tiempo que demanda realizar el mantenimiento de cada máquina es de 1 día, sin embargo la jornada de mantenimiento no puede durar más de un día, teniendo en cuenta que la compañía cuenta con tres proveedores de servicios de mantenimiento debe de asignarse un equipo de mantenimiento a cada máquina para poder cumplir con la realización del mantenimiento preventivo. Teniendo en cuenta que según el grado de especialización de cada equipo prestador de servicios de mantenimiento el costo de la tarea varía para cada máquina en particular, debe de asignarse el equipo correcto a la máquina indicada con el objetivo de minimizar el costo total de la jornada. Los costos asociados se pueden observar en la siguiente tabla:

Paso 1
Encontramos el menor elemento de cada fila
Paso 2
Construimos una nueva matriz con las diferencias entre los valores de la matriz original y el elemento menor de la fila a la cual corresponde.
En la matriz construida en el paso anterior se procede a efectuar el paso 1 esta vez en relación a las columnas, por ende escogemos el elemento menor de cada columna. Igualmente construimos una nueva matriz con la diferencia entre los valores de la matriz 2 y el elemento menor de la columna a la cual corresponde cada valor.
Paso 4
En este paso trazaremos la menor cantidad de combinaciones de líneas horizontales y verticales con el objetivo de cubrir todos los ceros de la matriz de costos reducidos.
Como se puede observar el menor número de líneas horizontales y/o verticales necesarias para cubrir los ceros de la matriz de costos reducidos es igual a 2, por ende al ser menor que el número de filas o columnas es necesario recurrir al paso 5.
Paso 5
En este paso seleccionamos el menor elemento de los elementos no subrayados.
Luego se procede a restarse de los elementos no subrayados y a adicionarse a los elementos ubicados en las intersecciones de las líneas, en este caso existe una única intersección (3).
Ahora ya efectuado este paso pasamos al paso 4.
Ahora observamos cómo se hace necesario trazar tres líneas (la misma cantidad de filas o columnas de la matriz) por ende se ha llegado al tabulado final, en el que por simple observación se determina las asignaciones óptimas.
Por ende la asignación que representa el menor costo para la jornada de mantenimiento preventivo determina que el Equipo 1 realice el mantenimiento de la Máquina 1, el Equipo 2 realice el mantenimiento de la Máquina 3 y el Equipo 3 realice el mantenimiento de la Máquina 2, jornada que tendrá un costo total de 17 unidades monetarias.
Solución de un problema de maximización mediante el Método Húngaro
El problema
Una organización de recolección de café cuenta con tres equipos de siembra y cosecha del mismo (equipos 1, 2, 3). Estos equipos de trabajo se encuentran entrenados para trabajar en condiciones particulares del proceso, condiciones como lo son el tipo de suelo, las condiciones del clima y el tipo de grano. La organización cuenta con cuatro terrenos disponibles para efectuar el proceso de siembra y cosecha (terrenos A, B, C, D), estos terrenos tienen condiciones particulares de suelo, clima y tipo de grano. Cada equipo cuenta con la capacidad de efectuar el proceso en solo uno de los terrenos disponibles, salvo el equipo 2, que cuenta con una serie de herramientas tecnológicas que le permiten realizar la siembra y cosecha del grano en dos de los terrenos disponibles.
Se ha contratado a un Ingeniero Industrial con el objetivo de realizar las asignaciones precisas que maximicen la cantidad de sacos de café cosechados en total. El siguiente tabulado muestra la capacidad (en cientos de sacos) de cosecha de café de cada uno de los equipos dependiendo de cada uno de los terrenos.

Solución
En este problema debemos recordar un concepto fundamental para la aplicación del método húngaro, este concepto nos dice que el número de filas debe ser exactamente igual al número de columnas. Por ende, la acción a realizar debería ser crear un equipo ficticio, el cual nos deje el tabulado balanceado y a este asignarle un número de sacos cosechados equivalente a cero en cada uno de los terrenos. Sin embargo el problema nos indica que uno de los equipos se encuentra en capacidad de que se le asignen dos terrenos, en este caso crearemos un equipo 2 alternativo (Equipo 2B) el cual nos balanceará el tabulado y nos hará prescindir del equipo ficticio pensado inicialmente. A este equipo 2B que crearemos le corresponderá la misma capacidad de cosecha del equipo 2 (en adelante equipo 2A) según el terreno, lógicamente.

Una vez balanceado el tabulado debemos de cuestionarnos acerca del criterio de optimización, pues recordemos que el método húngaro se encuentra diseñado para ejercicios de minimización. En este caso nuestro objetivo es maximizar, por lo que tendremos que aplicar un paso adicional.
Lo primero que debemos hacer es ubicar el mayor valor del tabulado inicial.

En este caso este valor es 15, por lo cual procederemos a realizar la siguiente operación con cada uno de los valores:
Restaremos a 15, el valor de cada una de las celdas y este valor quedará en cada una de las celdas correspondientes.

Ahora nuestro tabulado inicial quedará de la siguiente manera:

A partir de este tabulado ya podemos aplicar el algoritmo del método húngaro como se aplicaría en un caso e minimización (normalmente).
Ahora encontramos el menor elemento de cada fila.

Y se lo restamos a todas las celdas de la fila.
Ahora efectuamos este mismo paso, pero esta vez con las columnas. Elegimos el menor de los valores de cada columna y se lo restamos a cada una de las celdas de la columna correspondiente.


Ahora procedemos a cubrir la mayor cantidad de ceros, con la menor cantidad de líneas, si el número de líneas que empleemos es igual al grado de la matriz (en este caso matriz grado 4, 4×4) habremos llegado al final del ejercicio.

Dado que el número de líneas es igual al grado de la matriz, hemos concluido el algoritmo. Lo único que quedará será asignar a cada equipo el terreno en el que el intercepto es igual a 0 (cero).

Las asignaciones, como es lógico deberán iniciarse por el equipo al cual solo corresponda un terreno, en este caso al Equipo 3 le corresponde el Terreno A. De esta manera al Equipo 1 le corresponde el Terreno D. Mientras tanto el Equipo 2 se encargará de la cosecha en los terrenos B y C. Según el tabulado del problema (recordemos que es de maximización), la cantidad de sacos (expresada en cientos de sacos) será así:

Solución de un problema de asignación mediante programación lineal
El problema
La compañía de manufactura «Jiménez y Asociados» desea realizar una jornada de mantenimiento preventivo a sus tres máquinas principales A, B y C. El tiempo que demanda realizar el mantenimiento de cada máquina es de 1 día, sin embargo la jornada de mantenimiento no puede durar más de un día, teniendo en cuenta que la compañía cuenta con tres proveedores de servicios de mantenimiento debe de asignarse un equipo de mantenimiento a cada máquina para poder cumplir con la realización del mantenimiento preventivo. Teniendo en cuenta que según el grado de especialización de cada equipo prestador de servicios de mantenimiento el costo de la tarea varía para cada máquina en particular, debe de asignarse el equipo correcto a la máquina indicada con el objetivo de minimizar el costo total de la jornada. Los costos asociados se pueden observar en la siguiente tabla:

Variables de decisión
Las variables de decisión de este tipo de problemas es igual a las variables de cualquier modelo de transporte tradicional, es decir variables Xi,j donde i {Equipo de mantenimiento 1,2,3} y j {Máquina 1,2,3}, y corresponden a variables binarias en las cuales el valor 1 significa la asignación de un equipo de mantenimiento a una máquina en particular.
Restricciones
Dado que un equipo de mantenimiento no puede ser asignado a más de una maquinaria, esta característica debe de restringirse mediante las siguientes inecuaciones.
X1,1 + X1,2 + X1,3 = 1
X2,1 + X2,2 + X2,3 = 1
X3,1 + X3,2 + X3,3 = 1
Además debe restringirse el hecho de que cada máquina solo requiere de un equipo de mantenimiento, por ende
X1,1 + X2,1 + X3,1 = 1
X1,2 + X2,2 + X3,2 = 1
X1,3 + X2,3 + X3,3 = 1
Además se hace necesario que para efectos de resolución en cualquier paquete de herramientas se especifique que estas variables corresponden al conjunto de los enteros (por obvias razones) y que deben ser mayores que cero (dado que es un problema de minimización esta restricción se hace muy necesario).
Xi,j ≥ 0
Xi,j ∈ {Z}
Función Objetivo
ZMIN = 10X1,1 + 9X1,2 + 5X1,3 + 9X2,1 + 8X2,2 + 3X2,3 + 6X3,1 + 4X3,2 + 7X3,3
Ingresando los datos a WinQSB
Resultados obtenidos mediante WinQSB
Por ende la asignación que representa el menor costo para la jornada de mantenimiento preventivo determina que el Equipo 1 realice el mantenimiento de la Máquina 1, el Equipo 2 realice el mantenimiento de la Máquina 3 y el Equipo 3 realice el mantenimiento de la Máquina 2, jornada que tendrá un costo total de 17 unidades monetarias.
Solución de un problema de asignación mediante WinQSB – Network Modeling
La facilidad de resolver un problema de asignación mediante WinQSB es aún mayor a la que se incurre mediante programación lineal, y esta metodología justifica el pensar en que el método húngaro es sumamente anacrónico únicamente contemplado para fines históricos y académicos. En el módulo NETWORK MODELING del paquete de herramientas WinQSB se puede resolver el modelo tan solo traspasando los costos de una matriz n*m a otra que brinda el módulo n*m.
Ingresando los datos a WinQSB – Network Modeling
Resultados obtenidos mediante WinQSB – Network Modeling

Por ende la asignación que representa el menor costo para la jornada de mantenimiento preventivo determina que el Equipo 1 realice el mantenimiento de la Máquina 1, el Equipo 2 realice el mantenimiento de la Máquina 3 y el Equipo 3 realice el mantenimiento de la Máquina 2, jornada que tendrá un costo total de 17 unidades monetarias.
De esta manera se hace evidente cual es la alternativa predilecta para resolver problemas de asignación.
PERT – Técnica de evaluación y revisión de proyectos
Project Evaluation and Review Techniques
El algoritmo PERT se desarrolla mediante intervalos probabilísticos, considerando tiempos optimistas, probables y pesimistas, lo cual lo diferencia del método CPM que supone tiempos determinísticos.
Conceptos básicos para diagramar actividades con redes
Regla 1: Cada actividad se debe representar sí y sólo sí, por un ramal o arco.
Regla 2: Cada actividad debe estar identificada por dos nodos distintos. En el caso de existir actividades concurrentes (que inicien al mismo tiempo, o que el inicio de una actividad dependa de la finalización de 2 o más actividades distintas) se debe recurrir a actividades ficticias (representadas por arcos punteados que no consumen ni tiempo ni recursos) para satisfacer esta regla.
Por ejemplo, la actividad C para su inicio requiere que finalicen A y B. Las actividades A y B inician al mismo tiempo.

Fases para la planificación de un proyecto con PERT
Paso 1: Actividades del proyecto
La primera fase corresponde a identificar todas las actividades que intervienen en el proyecto, sus interrelaciones, sucesiones, reglas de precedencia. Con la inclusión de cada actividad al proyecto se debe cuestionar respecto a que actividades preceden a esta, y a cuales siguen inmediatamente esta finalice. Además, deberán relacionarse los tiempos estimados para el desarrollo de cada actividad.
A diferencia del método CPM, el método PERT asume tres estimaciones de tiempo por cada actividad, estas estimaciones son:
Tiempo optimista (a): Duración que ocurre cuando el desarrollo de la actividad transcurre de forma perfecta. En la práctica suele acudirse al tiempo récord de desarrollo de una actividad, es decir, el mínimo tiempo en que una actividad de esas características haya sido ejecutada.
Tiempo más probable (m): Duración que ocurre cuando el desarrollo de la actividad transcurre de forma normal. En la práctica suele tomarse como el tiempo más frecuente de ejecución de una actividad de iguales características.
Tiempo pesimista (b): Duración que ocurre cuando el desarrollo de la actividad transcurre de forma deficiente, o cuando se materializan los riesgos de ejecución de la actividad.

Paso 2: Calcular el tiempo estimado (Duración promedio) y la varianza
Para efectos de determinar la ruta crítica del proyecto se acude al tiempo de duración promedio, también conocido cómo tiempo estimado. Este tiempo es determinado a partir de las estimaciones como:

El cálculo del tiempo estimado deberá hacerse entonces para cada actividad. Por ejemplo para la actividad A:

Además de calcular el tiempo estimado, deberá calcularse la varianza de cada actividad. El cálculo de esta medida de dispersión se utiliza para determinar la incertidumbre de que se termine el proyecto de acuerdo al programa. Para efectos del algoritmo PERT, el cálculo de la varianza se hará a partir de sus estimaciones tal cómo se muestra a continuación:

El cálculo de la varianza deberá hacerse entonces para cada actividad. Por ejemplo para la actividad A:

Para las actividades del tabulado mencionado en el Paso 1, los tiempos estimados y varianzas serían las siguientes:

Paso 3: Diagrama de red
Con base en la información obtenida en la fase anterior y haciendo uso de los conceptos básicos para diagramar una red, obtendremos el gráfico del proyecto (los tiempos relacionados con cada actividad en el gráfico corresponden a los tiempos estimados):

Paso 4: Calcular la red
Para el cálculo de la red se consideran 3 indicadores, T1, T2 y H. Estos indicadores se calculan en cada evento o nodo (entiéndase nodo entonces como un punto en el cual se completan actividades y se inician las subsiguientes.
T1: Tiempo más temprano de realización de un evento. Para calcular este indicador deberá recorrerse la red de izquierda a derecha y considerando lo siguiente:
- T1 del primer nodo es igual a 0.
- T1 del nodo n = T1 del nodo n-1 (nodo anterior) + duración de la actividad (tiempo estimado) que finaliza en el nodo n.
- Si en un nodo finaliza más de una actividad, se toma el tiempo de la actividad con mayor valor.

En este caso para el cálculo del T1 en el nodo 8, en el que concurre la finalización de 2 actividades, deberá considerarse el mayor de los T1 resultantes:
T1 (nodo 6) + G = 13 + 6 = 19
T1 (nodo 7) + H = 8 + 4 = 12
Así entonces, el T1 del nodo 8 será igual a 19 (el mayor valor).
T2: Tiempo más tardío de realización del evento. Para calcular este indicador deberá recorrerse la red de derecha a izquierda y considerando lo siguiente:
- T2 del primer nodo (de derecha a izquierda) es igual al T1 de este.
- T2 del nodo n = T2 del nodo n-1 (nodo anterior, de derecha a izquierda) – duración de la actividad que se inicia (tiempo estimado).
- Si en un nodo finaliza más de una actividad, se toma el tiempo de la actividad con menor valor.

En este caso para el cálculo del T2 del nodo 1, en el que concurren el inicio de 2 actividades deberá entonces considerarse lo siguiente:
T2 nodo 2 – B = 6 – 6 = 0
T2 nodo 3 – C = 9 – 2 = 7
Así entonces, el T2 del nodo 1 será 0, es decir el menor valor.
H: Tiempo de holgura, es decir la diferencia entre T2 y T1. Esta holgura, dada en unidades de tiempo corresponde al valor en el que la ocurrencia de un evento puede tardarse. Los eventos en los cuales la holgura sea igual a 0 corresponden a la ruta crítica, es decir que la ocurrencia de estos eventos no puede tardarse una sola unidad de tiempo respecto al cronograma establecido, dado que en el caso en que se tardara retrasaría la finalización del proyecto.

Las actividades críticas por definición constituyen la ruta más larga que abarca el proyecto, es decir que la sumatoria de las actividades de una ruta crítica determinará la duración estimada del proyecto. Puede darse el caso en el que se encuentren más de una ruta crítica.
Ruta crítica
Esta ruta se encuentra compuesta por las actividades A, C, E, G, I, J. La duración del proyecto sería de 22 semanas.
Paso 5: Cálculo de la varianza, desviación estándar y probabilidades
La varianza y la desviación estándar para la culminación del proyecto se relacionan con las actividades que comprenden la ruta crítica. Así entonces, para calcular la varianza basta con sumar las varianzas de las actividades A, C, E, G, I y J:

La desviación estándar corresponde a la raíz cuadrada de la varianza del proyecto, es decir:

Con la información que acabamos de obtener podemos efectuar cálculos probabilísticos de terminación del proyecto. Por ejemplo, sí se nos pide hallar la probabilidad de que el proyecto se culmine antes de 26 semanas, procederíamos de la siguiente forma y siguiendo la teoría de distribución normal:

Buscando este valor en una tabla de distribución normal encontramos que equivale a 0,9612, es decir que la probabilidad de culminar el proyecto en 26 semanas o menos es del 96,12%.
Paso 6: Establecer el cronograma
Para establecer un cronograma deberán considerarse varios factores, el más importante de ellos es la relación de precedencia, y el siguiente corresponde a escalonar las actividades que componen la ruta crítica de tal manera que se complete el proyecto dentro de la duración estimada.
















Comentarios
Publicar un comentario