El reto
Muchos paquetes de simulación ofrecen objetos listos para usar que cubren una amplia variedad de situaciones. Sin embargo, el uso de estas construcciones prefabricadas a menudo puede dar lugar a más código, modelos de ejecución más lenta y modelos más difíciles de mantener que la construcción de objetos personalizados y específicos desde cero. En esta presentación se analizará en detalle el enfoque técnico de un modelo de autobús lanzadera para los Institutos Nacionales de Salud (NIH). Las técnicas utilizadas en este modelo, centradas especialmente en la generación de estructuras de datos inteligentes en la inicialización y en el uso de objetos construidos a medida, pueden aplicarse a la modelización en cualquier sector con la mayoría de los paquetes de simulación.
Introducción
Muchos paquetes de simulación ofrecen componentes fáciles de usar que permiten a los usuarios principiantes modelar sus sistemas sin necesidad de una programación exhaustiva. Esto se consigue a menudo mediante la configuración por parte del modelador de varios parámetros de entrada en construcciones de modelado "pesadas". El modelador desempeña el papel de configurador en lugar de programador.
Aunque el constructor de modelos se dedique principalmente a configurar los parámetros de las construcciones prefabricadas, a menudo tiene que incorporar algo de programación a su modelo. Puede tratarse de programación en un entorno de programación visual o de secuencias de comandos muy ligeras para personalizar el comportamiento de las construcciones predefinidas.
Aunque la mayoría de los modelos requieren algún tipo de programación, muchos modeladores evitan construir modelos a un nivel inferior. Los autores han descubierto que, en muchos casos, los modelos pueden crearse en menos tiempo utilizando los bloques de construcción subyacentes de un paquete de software, en lugar de construcciones más grandes y exhaustivas.
La solución
Antecedentes del modelo
La sede central de los NIH, denominada campus principal de los NIH, se encuentra en Bethesda, MD. El campus principal de los NIH alberga más de 75 edificios en más de 300 acres. Los servicios de transporte ayudan a los empleados, pacientes, contratistas y visitantes a desplazarse por el campus. El servicio de transporte también ofrece rutas adicionales entre el campus principal y las instalaciones satélite fuera del campus en el condado de Montgomery, MD. Al igual que muchas organizaciones, el campus de los NIH cambió rápidamente a un modelo de trabajo remoto en la primavera de 2020, cuando la pandemia de COVID-19 comenzó a afectar a los Estados Unidos. Esto dio lugar a una menor necesidad de servicios de autobuses lanzadera. A medida que los NIH comenzaron a formular planes para traer a los empleados de vuelta al campus de una manera segura, la Oficina de Servicios de Investigación (ORS), que proporciona servicios de apoyo para permitir la misión de investigación de los NIH, se dio cuenta de que la demanda de servicios de transporte podría ser muy diferente en un entorno posterior a COVID o en transición a un entorno posterior a COVID. El ORS y MOSIMTEC construyeron un modelo de simulación de eventos discretos en SIMIO con el fin de comprender el impacto de diversas estrategias de diseño del sistema de autobuses lanzadera para una amplia variedad de patrones de demanda. Esta presentación se centra en dos componentes técnicos clave de este modelo: Greer, Legard y Wolski 1. Una estructura de matrices poblada en la inicialización del modelo. Una estructura de array poblada en la inicialización del modelo que racionalizó el resto del código del modelo. 2. 2. El valor de crear un modelo a partir de construcciones de bajo nivel, en comparación con los módulos preconstruidos que incluyen muchas funciones listas para usar.
La importancia de las estructuras de datos
En este modelo, los buses de lanzadera en un bucle dado deben estar igualmente compensados. Por ejemplo, si un bucle tardara aproximadamente 60 minutos en completarse, y hubiera 2 autobuses, los usuarios querrían ver un autobús aproximadamente cada 30 minutos. El sistema modelado tiene controles de tiempo, por lo que los autobuses pueden permanecer en una parada hasta las horas de salida programadas. El NIH necesitaba entender cuándo una ruta específica puede pasar de 1 autobús a 2 autobuses para satisfacer la demanda durante los periodos punta. Sin embargo, si el analista de simulación tuviera que reconstruir un horario personalizado para cada cambio en la cantidad de autobuses o cambio de turno, el tiempo necesario para ejecutar el análisis sería poco práctico.
El código de inicialización del modelo toma una lista de paradas. Utilizando las horas de inicio/parada de los autobuses en el sistema, se construyó dinámicamente un horario de autobuses en la inicialización del modelo. Esto permite al analista probar varias estrategias de autobuses sin crear manualmente un horario de autobuses completo.
El horario completo de autobuses del día se almacenó en una matriz simple. Con esta estructura de datos en su lugar, la lógica para que los autobuses ejecuten sus rutas se hizo muy simple. Eric Raymond (2001) afirmó: "Las estructuras de datos inteligentes y el código tonto funcionan mucho mejor que al revés". El equipo del proyecto dedicó mucho tiempo a planificar la matriz de horarios de los autobuses. Sin embargo, una vez que se dispuso de la matriz, el desarrollo del resto del modelo fue muy rápido y apenas surgieron problemas durante el desarrollo y las pruebas.
Ventajas de modelar desde cero
El modelo de ejemplo presentado en este resumen se desarrolló en SIMIO. Mientras que una introducción de alto nivel a SIMIO puede llevar a un modelador a pensar que sólo debe utilizar el vehículo pre-construido, con los ajustes configurados según sea necesario; el asistente verá que un modelo construido desde cero con la lógica del proceso es muy fácil de seguir. La construcción de modelos con componentes de bajo nivel tiene varias ventajas:
- Tiempo de desarrollo del modelo más rápido
- Depuración más sencilla
- Mayor velocidad de ejecución
- Mayor flexibilidad en futuros cambios del modelo
- Mayor posibilidad de crear código autodocumentado
En la presentación se expondrán estas ventajas con más detalle y se compartirán ejemplos concretos del modelo. El coste adicional de modelar desde cero en comparación con el uso de construcciones preconfiguradas suele ser el tiempo asociado al aprendizaje de este tipo de modelado. Una vez que se conoce el paradigma fundamental de una herramienta, junto con los requisitos más críticos, rara vez aumenta el tiempo de proyecto a proyecto relacionado con la construcción de objetos desde cero. La presentación abordará el tiempo necesario para desarrollar estas habilidades fundamentales de modelado y cuándo los autores siguen recomendando el uso de construcciones prefabricadas.
Impacto en la empresa
Conclusiones
Muchos paquetes de software de simulación disponen de modelos preconfigurados que pueden utilizarse a través de la configuración para evitar tener que desarrollar una lógica personalizada. Sin embargo, el uso de estructuras de datos inteligentes y la construcción de modelos con constructos de nivel inferior a menudo puede dar lugar a que los modelos se desarrollen más rápido, con otros beneficios a largo plazo.
Actas de la Conferencia de Simulación de Invierno de 2020 K.-H. Bae, B. Feng, S. Kim, S. Lazarova-Molnar, Z. Zheng, T. Roeder y R. Thiesing, eds.
Amy Brown Greer Yusuke Legard
MOSIMTEC, LLC
297 Herndon Parkway,
Suite 302 Herndon, VA 20170, EE.UU.
Joseph Wolski
Oficina de Servicios de Investigación Institutos Nacionales de Salud
31 Center Dr. Bethesda, MD 20892, EE.UU.
Referencias
Raymond, E.S.. 2001 The Cathedral & the Bazzaar: Musings on Linux and Open Source by Accidental Revolutionary. 1ª ed. Newton, Massachusetts: O'Reilly Media.

