Proporciona scripts para generar árboles de procesos aleatorios y simularlos en registros de eventos.
Se puede encontrar información detallada sobre el funcionamiento del generador y del simulador en el artículo: Jouck, Toon y Benoît Depaire. "PTandLogGenerator: un generador de datos de eventos artificiales". En Actas de BPM Demo Track 2016 (BPMD 2016), 1789:23–27. Río de Janeiro: actas del taller CEUR, 2016. http://ceur-ws.org/Vol-1789/.
Entrada: archivo de parámetros para poblaciones (archivo de parámetros de ejemplo ubicado en la carpeta '/data/parameter_files').
Cada línea del archivo csv caracteriza una población: modo;min;max;secuencia;elección;paralelo;bucle;o;silencio;duplicado;lt_dependency;infrecuente;no_models;unfold;max_repeat
si lt_dependency <= 0: esto siempre debería ser 0 (Falso)
si lt_dependency > 0: puede ser 1 o 0 (Verdadero o Falso)
modo: número más frecuente de actividades visibles
min: número mínimo de actividades visibles
max: número máximo de actividades visibles
secuencia: probabilidad de agregar un operador de secuencia al árbol
elección: probabilidad de agregar un operador de elección al árbol
paralelo: probabilidad de agregar un operador paralelo al árbol
bucle: probabilidad de agregar un operador de bucle al árbol
o: probabilidad de agregar un operador o al árbol
silencioso: probabilidad de agregar actividad silenciosa a un operador de elección o de bucle
duplicado: probabilidad de duplicar una etiqueta de actividad
lt_dependency: probabilidad de agregar una dependencia aleatoria al árbol
poco frecuente: la probabilidad de tomar una decisión tiene caminos poco frecuentes
no_models: número de árboles a generar a partir de la población del modelo
desplegar: si desplegar o no bucles para incluir opciones debajo en las dependencias: 0=Falso, 1=Verdadero
max_repeat: número máximo de repeticiones de un bucle (solo se usa cuando el despliegue es True)
Salida: colección de árboles de procesos en la carpeta 'datos/árboles':
formato de árbol newick (*.nw)
lenguaje de marcado del árbol de procesos (*.ptml)
(opcional) archivo de imagen (*.png)
Uso: invocable desde la línea de comando:
$python generate_newick_trees.py [-h] [--t [tiempo de espera]] [--g [graphviz]] entrada
Genere árboles de procesos a partir de la población de entrada.
argumentos posicionales:
entrada: archivo de entrada con formato csv en el que se especifican los parámetros de población, ejemplo: ../data/parameter_files/example_parameters.csv
argumentos opcionales:
-h, --help: muestra este mensaje de ayuda y sale
--t cancelar la generación del árbol después de segundos de tiempo de espera, valor predeterminado = 10000
--g indica si se debe representar la imagen gráfica del árbol, predeterminado = Falso
Aporte:
procesar árboles en archivos de árbol Newick
tamaño: el número de seguimientos en el registro de eventos
ruido: la probabilidad de insertar ruido
marcas de tiempo: incluye marcas de tiempo (¿inicio y fin de cada actividad?)
Salida: registro de eventos en formato XES (predeterminado) o formato de archivo csv 'case_id', 'act_name'[,'start_time','end_time']
Uso: invocable desde la línea de comando
complemento de llamada: $python generate_logs.py [-h] [--i [carpeta_de entrada]] [--t [marcas de tiempo]] [--f [formato]] tamaño de ruido
Simule registros de eventos de árboles de procesos.
argumentos posicionales:
tamaño: número de trazas a simular
ruido: probabilidad de insertar ruido en la traza
argumentos opcionales:
-h, --help: muestra este mensaje de ayuda y sale
--i [carpeta_entrada] : especifica la dirección relativa a la carpeta de árboles, predeterminado=../data/trees/
--t [marcas de tiempo]: indica si se incluyen marcas de tiempo o no, predeterminado = Falso
--f [formato]: indica qué formato usar para el registro: xes o csv, predeterminado=xes
Aporte:
una muestra de árboles de procesos (carpeta predeterminada: ../data/trees/)
un nivel de determinismo objetivo
un número máximo de nodos de entrada (de cada decisión)
un número máximo de intervalos (para discretizar un valor numérico)
un número de casos para generar en cada registro
*Salida: una muestra de registros de eventos con atributos de caso
*Uso: ejecute generate_data_trees_and_logs.py y adapte los parámetros