Simulación de eventos discretos

La simulación de eventos discretos es una técnica que se utiliza en relación con el estudio de sistemas dinámicos . Consiste en un modelado por computadora donde el cambio en el estado de un sistema, a lo largo del tiempo, es una serie de eventos discretos . Cada evento ocurre en un momento dado y cambia el estado del sistema.

Hoy en día, esta técnica es comúnmente utilizada tanto por industrias como por empresas de servicios para diseñar, optimizar y validar sus organizaciones y por centros de investigación con miras al estudio de sistemas complejos no lineales.

Historia

La idea de utilizar la simulación para estudiar el comportamiento de sistemas complejos apareció en la década de 1950 con el trabajo de Jay Wright Forrester sobre dinámica de sistemas . Ciertos sistemas denominados no lineales, es decir, sistemas que comprenden circuitos de retroalimentación o fenómenos aleatorios, escapan de hecho a un análisis estático. El objetivo de Forrester fue entonces poner sus conocimientos en ingeniería al servicio de la gestión empresarial, por lo que puso en marcha los primeros modelos destinados al estudio de los sistemas organizativos.

Fue en la década de 1960 cuando aparecieron los primeros lenguajes informáticos de simulaciones de eventos discretos, en particular Simula . La década de 1970 marcó entonces la aparición del software de simulación equipado con una interfaz gráfica que permite al usuario liberarse del lenguaje, este nuevo software también hizo posible construir una animación gráfica de sus modelos. 

La década de 1980 vio la aparición del primer software de simulación de flujo comercial con  TECNOMATIX Plant Simulation , SIMAN , WITNESS , Promodel o incluso ExtendSim (aunque para este último, el motor de eventos discretos no apareció hasta 1990).

A partir de 1990, la multiplicación de la potencia informática de las computadoras personales permitió a los fabricantes (en particular General Motors , Ford , PSA y Renault ) hacer un uso masivo de la simulación. Algunos incluso llegan a imponer un estudio de simulación para validar cualquier inversión operativa más allá de cierto monto. 

Desde principios de la década de 2010, algún software ha ofrecido un módulo para animar modelos en 3D. Cabe señalar que hoy en día, el uso de software de simulación de eventos discretos ya no está restringido a la industria o la investigación, sino que también se extiende al sector terciario, particularmente en los campos de la salud o la logística. 

Principios tecnicos

Oposición discreta / continua

La simulación de eventos discretos se opone a la simulación continua, en la que el tiempo se divide en partes iguales, sin que se pueda distinguir ningún evento. En cada corte, sin tiempo o Δt, examinamos el estado del sistema. Entonces, si observamos el calentamiento del agua, no consideramos ningún evento: el agua se calienta de manera constante, continua, y elegiremos observar su temperatura cada segundo, cada minuto, cada milisegundo. Independientemente de cuándo se observe, el agua tendrá una temperatura, en función de la cual se puede tomar una decisión. Y la granularidad de la observación (= Δt, o el grosor del corte) será la elección del observador. A menudo, las matemáticas pueden formalizar un sistema de este tipo en forma de ecuaciones diferenciales.

En la simulación de eventos discretos, algo tiene que suceder para que pueda observar y tomar decisiones. Son estos momentos de modificación del estado del sistema los que llamamos evento . Así, en el caso de un peaje de autopista, si no aparece ningún coche en el peaje, no hay ningún evento y el sistema no cambia y, por tanto, no hay nada que observar. Puede pasar mucho o muy poco tiempo entre dos eventos (aquí la llegada de un coche nuevo al peaje), y no sabemos de antemano el número de eventos que incluirá una simulación.

También es importante ver el vínculo entre la gestión del tiempo discreto y la naturaleza discreta o continua del sistema modelado y los flujos que comprende. No cabe duda de que el modelo de comida rápida debe ser tratado mediante una simulación con eventos discretos, y que los flujos que lo componen (clientes, camareros, cocineros, hamburguesas) son discretos. Asimismo, parecerá necesario tratar un modelo de dinámica poblacional en un ecosistema mediante una simulación continua. Pero, ¿deberíamos tratar con una herramienta discreta o continua el caso de una planta de pintura o equipo para la extracción / transformación de productos gaseosos? Los caudales son continuos, expresados ​​por caudales. Discretizarlos conduciría a divisiones artificiales que ralentizarían los tiempos de cálculo; El uso de una herramienta continua conduciría a reevaluar el sistema en momentos en que no sucede nada. Los enfoques que respetan la representación por caudales y el uso de umbrales para desencadenar eventos permiten este tipo de sistemas continuos con eventos discretos o sistemas híbridos .

Gestión del tiempo en un motor discreto

Dependiendo de las herramientas de simulación por ordenador, la gestión del tiempo discreto se realizará de diferentes formas, pero con unas constantes:

Una función gestionará el avance cronológico de la hora simulada, desde la hora de inicio de la simulación hasta su hora de finalización. El tiempo de simulación progresará en pasos desde el momento de un evento hasta el momento del siguiente evento. El modelo será reevaluado en cada evento, dando lugar a nuevos resultados que conduzcan a posibles decisiones y generando posibles nuevos eventos futuros.

Por lo tanto, la función de control de tiempo mantendrá una programación o lista de eventos constantemente actualizada, en la que se ingresan las horas de todos los eventos futuros. Para calcular la hora del próximo evento, debe mirar la hora del evento más cercana a la hora actual.

¿Cómo se completa esta lista? En un modelo de simulación de eventos discretos, ciertas funciones generan eventos por definición: cualquier actividad que dure un cierto tiempo (por ejemplo, el tiempo de servicio en un mostrador, la duración de una operación en un dispositivo) puede predecir un estado de cambio del sistema cuando esta actividad es completado (a veces consideramos un evento al inicio y al final de una actividad) Asimismo, los fenómenos ligados a las leyes de distribución, ya sean aleatorios o no, crean un evento porque cambian el estado del sistema (la llegada de una falla, una llamada telefónica entrante, la llegada de un cliente). Estos ejemplos no excluyen otras operaciones que generan eventos.

Así, en un modelo discreto que representa el funcionamiento de un restaurante de comida rápida, la llegada de un nuevo cliente (indicado por una ley de distribución), el final de la toma de pedidos (estimado cuando se toma el nuevo cliente), la provisión de hamburguesas (deducidos del inicio de la cocción / envasado de la hamburguesa) serían todos los elementos del modelo generadores de eventos para alimentar el horario.

Algunas cuestiones para resolver en un motor discreto

Es habitual que se anuncien varios eventos al mismo tiempo, por lo que son simultáneos. Los elementos del modelo que se encuentran en el origen pueden ser independientes o estar correlacionados. ¿Qué sucede realmente cuando ocurre un evento? ¿Es el estado del modelo completo el que se reevalúa o solo el componente que publicó el evento? ¿En qué orden evaluar dos o más componentes que publican un evento al mismo tiempo? Esto puede tener un gran impacto en la secuencia de acciones y la fluidez general de los flujos. Es la situación actual de un recurso que se busca asignar en cuanto se libera. Si en el restaurante de comida rápida la transacción anterior finaliza al mismo tiempo que llega un nuevo cliente, es importante que se anote la disponibilidad del servidor antes de que llegue el cliente, y no al revés.

El inicio y el final de la simulación también pueden generar dudas. En general, una simulación discreta se detiene no porque no haya más eventos planificados, sino de manera arbitraria, porque queríamos simular 30 horas de tiempo real o la producción de 1000 toneladas de productos, y entonces quedan eventos futuros en el cronograma. Al comienzo de la simulación, a menudo se necesita un período de aceleración para que todos los componentes del modelo se hayan activado y, por lo tanto, hayan tenido la oportunidad de publicar eventos, a menos que la herramienta permita una inicialización del modelo que puede ser posible. vacío. Para que los resultados sean fiables, es necesario en todo caso saber estimar y excluir del análisis los emitidos durante esta fase inicial transitoria.

La relevancia de estas preguntas depende en gran medida de la naturaleza del sistema modelado y los flujos que lo componen. Las diversas herramientas en el mercado tienen cada una su respuesta, es especialmente importante que el modelador sea consciente de las implicaciones que cada implementación puede tener en su modelo, tanto en términos de validación como de ejecución del modelo.

Aplicaciones Típicas

Es la simulación de eventos discretos la más utilizada en el mundo de la industria, el transporte y los servicios, ya que permite describir de forma realista el comportamiento de los sistemas representados. Los tomadores de decisiones lo utilizan como un seguro contra sus diversas opciones:

Los problemas son múltiples.

enlaces externos

Referencias

  1. "Un  poco de historia de la simulación de flujo  "
  2. Jean-François Claver , Jacqueline Gélinier y Dominique Pitt , Gestión del flujo de negocios: modelado y simulación , París, Hermès,1996, 156  p. ( ISBN  2-86601-575-4 ) , pág.  118
  3. Pierre-Jean Erard y Pontien Déguénon , Simulación por eventos discretos , Lausanne / Paris, Presses polytechniques et universitaire romandes,1996, 417  p. ( ISBN  2-88074-295-1 , aviso BnF n o  FRBNF36689296 , leer en línea ) , p.  Cap. 2
  4. (en) David Krahl , Actas de la Conferencia de simulación de invierno de 2009: Tecnología avanzada ExtendSim: simulación discreta del bazo , MD Rossetti, RR Hill, B. Johansson, A. y Dunkin Ingalls RG, eds.2009, 3211  p. ( ISBN  978-1-4244-5771-7 ) , pág.  333
  5. (en) Thomas Schriber , Daniel Brunner y Jeffrey Smith , Actas de la Conferencia de simulación de invierno de 2012: cómo funciona la simulación de eventos discretos Softare y por qué es importante , C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, y AM Uhrmacher, eds.,2012( ISBN  978-1-4673-4781-5 ) , capítulo 3
  6. Daniel Chabbert (bajo la dirección de) , Simulation de flux: Dossier du Pôle Productique Rhône-Alpes , vol.  60, Centro de producción Rhône-Alpes,2000, 16  p.

Ver también