Simulación de Eventos

LA SIMULACIÓN DE EVENTOS DISCRETOS COMO TÉCNICA FUNDAMENTAL EN LA TOMA DE DECISIONES DE ALTO IMPACTO .

1. Introducción

La simulación se puede definir como el acto de imitar un sistema real, de forma que se representen ciertas características o comportamientos clave del mismo. Es así que existen dos formas de simulación principales: real o computacional. El presente artículo se enfocará en la simulación por computadora, más exactamente en la simulación de eventos discretos , lo anterior dado que en mi experiencia como consultor encuentro en la simulación de eventos discretos una poderosa técnica que soporta de forma robusta la toma de decisiones en el diseño y la planeación de la cadena de suministro, es por esto que considero de vital importancia trasmitir algunos puntos principales sobre la evaluación de proyectos con simulación, a fin de que usted como lector pueda a futuro sacar el máximo provecho de un proyecto en donde se use esta poderosa técnica.

Recuerde que aprender a usar la simulación le representará a su empresa grandes beneficios tales como inclusión de efectos aleatorios dentro del análisis, tener en cuenta los efectos de interacciones complejas en el sistema, análisis de riesgo de diferentes alternativas, encontrar consenso entre diferentes conceptos de opinión, pero más que todo la toma de decisiones acertadas en el menor tiempo posible.

2. Tipos de simulación 
La simulación por computadora ha tenido un desarrollo simultáneo con la vertiginosa evolución de los computadores desde la segunda guerra mundial. Con ella se pretende resolver o comprender una amplia gama de problemas, desde la biología hasta cienci

as sociales, donde no se cuenta con una solución analítica. A continuación nombraré las principales vertientes de la simulación por computadora y sus usos más comunes.

I. Simulación estática:
Consiste en un conjunto de ecuaciones relacionadas entre sí, donde típicamente el tiempo se mide en intervalos discretos definidos. Un ejemplo típico de este tipo de simulación es una hoja de Excel con un modelo económico, por ejemplo de un PYG, puede incluir o no variabilidad (para el ejemplo de la hoja de cálculo se puede hacer mediante complementos como Cristal Ball).
II. Simulación contínua:
Es aquella en donde las variables de estado cambian de forma continua. Para ello se desarrolla una solución numérica de ecuaciones diferenciales simultáneas. Periódicamente, el programa de simulación resuelve todas las ecuaciones y usa los resultados para cambiar el valor de las variables de estado de la simulación[1]. Algunas áreas en donde se usa esta técnica son: ecología, procesos químicos, comportamientos sociales, análisis de comportamiento del consumidor, desarrollo organizacional, problemas matem

áticos y físicos.

III. Simulación de eventos discretos:
En este tipo de simulación se generan y administran eventos en el tiempo por medio de una cola de eventos ordenada según el tiempo de simulación en que deben ocurrir y de esta forma el simulador lee de la cola y dispara nuevos eventos. Entre otros un evento puede ser: la llegada de un cliente, la llegada de un camión, el inicio del proceso de una pieza, la finalización de un proceso de fabricación. Esta modalidad de simulación se usa típicamente en el diseño de la mayoría de eslabones de la cadena de suministro tales como: líneas de producción, plantas de procesamiento, bodegas de materia prima, bodegas de producto terminado, puntos de atención a clientes, hospitales, centros de atención médica.
Una variación importante de la simulación de eventos discretos es la simulación de agentes[2], en ella las entidades (tales como moléculas, células, árboles o consumidores) son representados directamente (en vez de representarse a través de sus densidades o cantidades), estos agentes poseen estados internos y conjuntos de comportamientos o reglas sencillas individuales que definen como son actualizados estos estados entre los diferentes puntos en el tiempo, definiendo así el comportamiento del conjunto de los agentes. Un ejemplo típico para este tipo de simulación es el de peatones en un evento de evacuación, para que dado unas reglas generales del comportamiento de movimiento de cada individuo se logre simular y determinar el tiempo de evacuación de todo el grupo de peatones dado un número de salidas en una locación determinada
IV. Otras variaciones de la simulación :
En general los diferentes tipos de simulación que aquí menciono pueden ser clasificados en otros grupos según características de los parámetros (determinísticos o aleatorios) o la forma en que se corre (local o distribuida). Sin embargo esto no hace que el campo de aplicación cambie, luego considero que estas variaciones no generan nuevos tipos de simulación sino que son solo características dentro de los tipos de simulación ya mencionados, es decir, una simulación de eventos discretos, por ejemplo, puede tener parámetros netamente determinísticos o podrían incluírsele algunos parámetros aleatorios, lo mismo ocurre con una simulación estática o en tiempo continuo.
3. Por qué simulación de eventos discretos

 

De todos los tipos de simulación mencionados, en el presente artículo pretendo enfocarme en la Simulación de Eventos Discretos, lo anterior es debido a que encuentro en esta técnica ventajas únicas y definitivas a la hora de diseñar y planear diferentes eslabones de la cadena de suministro, que como lo sabe es una de las áreas más determinantes como factor de éxito en cualquier compañía.
I. Facilidad de modelamiento:
En general la simulación de eventos discretos permite modelar situaciones de alto nivel de complejidad con funciones relativamente sencillas, de esta forma es posible construir modelos que representen la realidad en el nivel de detalle deseado, por ejemplo el diseño de un modelo de un centro de distribución con recibo, almacenamiento, picking de estibas, zona de fast picking, alistamiento y despacho.
II. Estadísticas e indicadores:
Dada la estructura de la simulación de eventos discretos es posible obtener todo tipo de estadísticas e indicadores relevantes a la operación modelada, inclusive se puede obtener información que muchas veces en los sistemas reales sería inimaginable tener, como por ejemplo: diagramas de gantt de las piezas en proceso, utilización de los recursos humanos, diagrama de gantt de los recursos utilizados, tiempos de ciclo de piezas en proceso).
4. Formas de usar la simulación de eventos discretos

Como muchas técnicas, la simulación de eventos discretos puede ser empleada en diferentes niveles de desarrollo tecnológico. El primero sería a través de librerías especializadas de diferentes lenguajes de programación tales como java o C++. En general si se desea usar esta aproximación se requerirán tiempos de desarrollo de proyectos muy amplios y soporte humano altamente calificado en programación y desarrollo de software. Adicionalmente el efecto visual será de poco impacto dadas las capacidades de animación de estas librerías.
En el otro extremo encontraríamos el uso de software especializado de simulación. el inconveniente de esta alternativa es el bajo nivel de flexibilidad y control que ofrecen estos desarrollos, lo que resulta en que el campo de aplicación sea excesivamente limitado (Ej: sólo procesos de empaque, sólo líneas de ensamblado, sólo zonas de picking).
Finalmente se encuentra la opción que yo recomienfo que sea usada es el punto medio entre el desarrollo en lengujes de programación y el uso de herramientas altamente especializadas. Esta alternativa consiste en el uso de software de simulación de eventos discretos multipropósito (como por ejemplo Flexsim), bajo esta alternativa se encuentra el balance perfecto entre flexibilidad, facilidad y diseño.
5. Elementos clave de la simulación de eventos discretos
En el camino al desarrollo de proyectos usando simulación de eventos discretos es importante comprender algunos conceptos inherentes a esta técnica.
I. Entidades
Son los objetos que fluyen a través del sistema, podrían ser: clientes, productos, cajas, camiones y pallets entre otros
II. Atributos
Son las diferentes características que definen a las entidades: tipo, edad, género, peso, volumen, tiempo de inicio de un proceso.
III. Variables
Son aquellas que definen el modelo y sus estados como un conjunto: número de entidades en proceso, número de entidades entrantes, número de entidades salientes, costo de proceso unitario.
IV. Reloj de simulación
Variable que lleva control del tiempo virtual de simulación, no se debe confundir con el tiempo real de ejecución, es decir mientras en mi reloj de mano pasaron 5 minutos desde que se ejecutó la simulación, en el modelo el reloj de simulación podría haber avanzado días, meses o inclusive años.
V. Eventos
Diferentes tipos de acontecimientos que ocurren a través de la simulación, que hacen que el reloj de simulación avance, tales como: llegada de un paciente, daño de una máquina, inicio de operación de un trabajador, finalización de un proceso de fabricación.
VI. Recursos
Objetos a los que se les asocia algún tipo de gasto o de consumo de los mismos para realización de tareas de operación o transporte: operarios, montacargas, máquinas, buffers de almacenamiento, bandas transportadoras.
6. Puntos a tener en cuenta en el desarrollo de un proyecto de simulación de eventos discretos
En el desarrollo de un proyecto de simulación es importante tener una metodología de desarrollo y entendimiento del proyecto, a continuación evidencio de forma resumida la metodología que le recomiendo seguir para este tipo de proyectos.
I. Definición de objetivos, alcance y de medidas de desempeño a evaluar
Antes de iniciar la construcción del modelo se debe definir cuál es el objetivo y alcance último del proyecto que debería ser de la forma: ¿cuál es el diseño más adecuado de bodega?, ¿cuál es la mejor configuración de la línea?, ¿cuál es el impacto de realizar los cambios que propone la junta o comité? Una vez definido el objetivo se debe determinar qué indicadores son los adecuados para cuantificar los efectos de mejoras potenciales, estos podrían ser: nivel de servicio, tiempo de ciclo promedio, entidades en proceso máximas y throughput entre otros.
II. Definición del nivel de detalle adecuado
Una vez definido el objetivo e indicadores a evaluar, se procede a establecer el nivel de detalle que se debe trabajar, esto depende principalmente de que los indicadores que se hayan definido sean relevantes para la operación. Según estos las entidades podrían ser definidas como, camiones, pallets, cajas, unidades sueltas, unidades sueltas de fresa, etc. Este paso es de los más críticos y determinantes de éxito dentro del proyecto, pues por ejemplo si se quisiera evaluar el número de montacargas y de muelles en una bodega de productos de consumo masivo y se definió que el indicador base del proyecto es el número de estibas despachadas en un turno, carecería de sentido simular al nivel de detalle de las unidades sueltas por referencia, sabor y color.
III. Construcción del modelo base
El objetivo en este punto es construir un modelo pivote robusto y válido sobre el cual se harán los cambios en los escenarios. En la construcción del modelo base existen cuatro etapas asociadas:
  1. Construcción: Consiste en desarrollar la lógica del modelo de forma que represente el sistema real.
  2. Calibración: en esta etapa se incluyen los valores de variables de entrada al modelo, tales como, tiempos de proceso, demanda, fallos de máquinas, etc.
  3. Verificación: en esta fase se compara las salidas del modelo con las salidas esperadas, por ejemplo en throughput, inventarios, etc. Para esta etapa es recomendable someter el modelo a situaciones extremas para verificar que la lógica o comportamiento sean los esperados.
  4. Validación: aquí se comparan las salidas del modelo con resultados históricos del sistema real, se recomienda hacer uso de estadísticas como intervalos de confianza y pruebas de hipótesis.
7. Una milla más
Anteriormente se nombraron algunos objetos típicos de la simulación de eventos discretos, a continuación quisiera nombrar algunas características que debería tener su paquete de simulación para hacerle la vida más fácil.
 

I. Soporte a la entrada de datos probabilísticos
En la etapa de calibración del modelo se deben definir el comportamiento aleatorio que mejor representan los datos del sistema, este trabajo puede ser en extremo tedioso si no se cuenta con una herramienta de soporte.

II. Administrador de escenarios

En la corrida de escenarios, en muchos casos, es probable que se quiera realizar comparación de varios escenarios en donde el cambio sea el aumento o disminución de una variable específica, en este trabajo, una herramienta de administrador de escenarios puede facilitarle considerablemente el trabajo.

 

III. Salidas, resultados y gráficas

En general los simuladores le permiten desarrollar cálculos para obtener diferentes estadísticas, sin embargo si su paquete de simulación le ofrece estadísticas y gráficos podría ahorrarse largas horas de trabajo.
8. Otra milla más allá
Adicionalmente a los puntos mencionados en el capítulo anterior (que son el estándar de un paquete de simulación), existen algunas características de los paquetes de última generación que aumentarán la productividad en sus proyectos de evaluación.
I. Fácil ambiente de desarrollo
Los paquetes de simulación de última generación están hechos para que usted construya sus modelos de forma natural y en el menor tiempo posible. Por eso evite usar paquetes en donde la construcción es a través de tablas que se conectan entre sí de forma poco natural y difícil de comprender. También debería evitar los paquetes que lo obligan a hacer construcciones artificiales que harán su modelo difícil de desarrollar o de entender. En este aspecto una característica que ayuda a hacer la construcción más sencilla es la de ambiente en 3D que está incluida en algunos paquetes de forma muy natural[3].
II. Capacidad de reutilización 
En general casi todo paquete permite el uso de la característica “copy – paste”, sin embargo esta no es una función de reutilización. En la actualidad los paquetes de simulación más sofisticados como Flexsim le permiten desarrollar sus propios objetos de forma que no tenga que hacer muchas veces lo mismo y así pueda usar su tiempo en lo que más valor genera, pensar, en vez de repetir.
III. Opción de usuarios de diferente nivel 
Es difícil pensar en una compañía en donde todo el mundo tenga el mismo nivel de estudios o conocimientos en computación, sin embargo varios niveles de empleados podrían verse beneficiados a la hora de usar simulación. Es por eso que es importante que un paquete de simulación ofrezca la opción de uso con opciones predeterminadas los suficientemente poderosas para desarrollar un modelo de la vida real (para los usuarios más básicos), pero adicionalmente es importante que el paquete de simulación ofrezca la posibilidad de modificar y utilizar los aspectos más básicos de la herramienta (programación de alto nivel).
1] No se debe confundir la simulación de fluidos (en la simulación de eventos discretos) con la simulación en tiempo continuo
[2] No se debe confundir este tipo de simulación por agentes con la simulación de agentes de otro tipo como los agentes de un call center
[3]Para mayor detalle en este aspecto referirse al artículo: “Software de simulación: 5 aspectos claves para no equivocarse seleccionándolo”
Si tiene necesidades en simulación que no están siendo satisfechas, por favor contacte a Vatic Consulting Group. Se puede sorprender de la relación beneficio-costo que puede obtener.
Por favor llame al (+571) 3136888 o escriba a servicioalcliente@vaticgroup.com y pregunte por los servicios de simulación de Vatic Consulting Group.

 

Top

Perspectiva Logística ¡ Suscríbase!

Newsletter Especializado en Cadena de Suministro