Experimento de variación de parámetros y recopilación de datos con conjunto de datos
Como en la nube, AnyLogic tiene un experimento de variación de parámetros, el Parameter Variation.
Antes de ponerse manos a la obra, una buena nota: AnyLogic ejecuta experimentos con replicaciones utilizando processamento paralelo, para que desencadene una replicación por centro disponible en la CPU de su computadora.
¡Velocidad, amigos! 🏃♀️ 🏃♂️
Crear nuevos experimentos es intuitivo y solo sigue la secuencia de comandos del menú desplegable File > New > Experiment:
Aunque ya creamos varias salidas para el modelo, todas fueron creadas en el experimento Simulation. En el experimento recién creado ParametersVariation: Main, todavía no hay salida.
El primer paso, por tanto, es crear elementos de recogida de datos (Dataset, Statistics, Histogram data etc.), de donde se pueden extraer las distribuciones de los parámetros de salida.
Usaremos dos resultados en el análisis: la curva de tasa de conversión de boca en boca y otro valor muy específico, cuántos clientes se alcanzaron en 6 meses.
Curva de tasa de conversión de boca en boca
Si se hace clic con el segundo botón del mouse en los bloques y elementos de la pantalla, generalmente tienen opciones de recopilación de datos. Haga clic derecho en la secuencia taxaDeConversão y crea instantáneamente un Data Set on la opción Create Data Set:
Por defecto, el Data Set se crea sin la opción de actualización automática de datos (más adelante le mostraré cómo hacerlo). Para la hora, active la opción de recogida automática de datos y salga con la opción de recogida mensual de valores (el Data Set almacenará un número por mes):
Número de clientes alcanzados en 6 meses
Este es un poco más comp... ¡FÁCIL! La opción Output en la paleta Analysis nacida para ello. Haga clic y arrastre el elemento Output y nombrarlo metaOutput:
El bloque Output solo necesita dos datos: qué va a medir (en este caso, el número de Clientes) y cómo lo va a hacer (en este caso, recopilando datos después de un tiempo de simulación de seis meses):
¡Prueba el modelo, simula! 👩🚀
Poniendo todo junto en el Parameter Variation
Volver a la pestaña del experimento ParametersVariation y ve a la ventana Properties.
Inicialmente, cree una interfaz predeterminada haciendo clic en el botón Create default UI:
Ahora, mira cómo en la pestaña Parameters puedes variar los parámetros (como hiciste hace un tiempo, allá en la nube). Varíe el número de meses entre 0 y 10 meses modificando la columna Type del parámetro meses:
La región de la pantalla de ParametersVariation acepta comandos de análisis de datos (gráficos, histogramas, resultados, etc.), así que agreguemos un Time Plot presentar los resultados de la curva de tasa de conversión, para cada escenario simulado:
Eliminar cualquier elemento de la pestaña Data (ya que los datos no se recopilarán automáticamente);
Seleccione la opción Do not update data automatically y
No olvides cambiar la opción Time window dela Scale, para 40:
A diferencia de todos los gráficos que hemos hecho hasta ahora, este es el tipo de gráfico que no recopila datos automáticamente, sino que recibirá un comando para agregar datos a cada ejecución de simulación.
Una tarea relativamente sencilla, dado que cada elemento de recopilación de datos (como el Time Plot) tiene un comando addDataSet.
Ubique, en la ventana Properties, la línea After simulation run, sin menú Java actions:
Esta línea de comando (que actualmente está vacía) siempre se ejecuta cuando AnyLogic termina de simular una replicación. Necesitamos agregar el resultado almacenado al final de cada simulación en el Dataset taxaDeConversaoDS no gráfico taxasDeConversao.
Con CTRL + Espaço, ingrese la línea de código (elija la segunda opción de addDataSet):
plot.addDataSet(ds, title)
La opción de addDataSet pide dos parámetros, el Conjunto de datos y tu título. Como el dataset taxaDeConversaoDS está no Main, necesitamos acceder a él desde el experimento actual.
Pero hay un detalle más: si colocas el mouse sobre la lucecita amarilla en la línea After simulation run, recibirá la pista de la palabra root.
Con el comando root, accede a cada replicación en ejecución o finalización. Complete el comando informó los dos parámetros de la función: el Data Set está en String indicando qué mes fue simulado (en cada punto escrito, Ctrl+Espacio y no olvides el punto y coma al final):
¡Simular! 👩🚀
(no olvides presionar el boton Run!)
Un poco rápido, ¿eh? ¡Bienvenido al procesamiento paralelo! Si su computadora tiene 8 núcleos como el mío, entonces AnyLogic procesó 8 escenarios en paralelo en la primera ejecución y luego 3 escenarios más, totalizando 11 simulaciones..
Disfruta del pack y crea un Dataset para almacenar el metaOutput que creamos en Main. Vvolver a la línea After simulation run con la ayuda de CTRL+Espaço, busque el comando add adentro del metaDS:
¿Por qué elegí un Data Set? Porque quiero almacenar los valores de cada escenario simulado.
Como en el caso del gráfico, necesitamos sumar el valor al final de cada simulación:
Con o root, llegamos fácilmente a los valores de simulación:
¡Simula! 👩🚀
Analizando los resultados del modelo, el período mínimo de inversión en marketing es de 6 meses.
Un breve resumen de lo que hemos hecho hasta ahora:
Creamos un bloque Data Set y un bloque de Output no agente Main;
En el experimento ParametersVariation creamos un Time Plot es un Data Set para almacenar, respectivamente, cada Data Set(conjunto de datos) que representa la curva de conversión y cada Output (valor único) del número de clientes alcanzados en el 6º mes generado en cada simulación;
En las propiedades del experimento ParametersVariation,colocamos no campo After simulation run eso es todo Java actions, el comando:
plot.addDataSet(root.taxaDeConversaoDS, "Meses = " + root.meses);
metaDS.add(root.meses, root.metaOutput);
Sugerencias
Los experimentos se almacenan junto con las plantillas y puede crear tantos como desee. Entonces, haga lo que hacen los profesionales: copie y pegue lo que ya ha hecho (gráficos, conjuntos de datos, código, etc.) de un modelo al siguiente.
Esté atento a los ejemplos (casi 400), que siempre tienen alguna idea en la que puede inspirarse.
¿Quieres saber más sobre el experimento Parameter Variation?, ¿Cómo lidiar con las repeticiones, el tiempo de calentamiento, etc.? una manera es esta sección del Volumen I en esta serie de tutoriales.
Atualizado
Isto foi útil?