Fonctionnement du moteur de simulation
Découvrez le moteur de simulation à événements discrets de ProcessMind et comment il modélise vos processus.
Cette page donne une référence complète pour l’interface de simulation ProcessMind. Utilisez-la comme aide-mémoire lors de la configuration de vos simulations.
La configuration de la simulation se trouve dans le panneau de droite lors de la visualisation d’un modèle de processus :
En haut du panneau de simulation, vous trouvez les commandes pour gérer la configuration :
| Contrôle | Description |
|---|---|
| Dropdown | Sélectionner une configuration existante |
| Create New | Créer une nouvelle configuration |
| Rename | Modifier le nom et le nom du dataset |
| Duplicate | Dupliquer la configuration actuelle |
| Auto Configure | Configurer automatiquement avec l’IA ou des données observées |
| Delete | Supprimer cette configuration de simulation |
Vous pouvez créer plusieurs configurations de simulation pour un même process afin de comparer différents scénarios sans perdre vos paramètres.
Sous le sélecteur de simulation, vous retrouvez les boutons principaux :
| Bouton | Description |
|---|---|
| Run Simulation | Exécuter la simulation avec la configuration actuelle |
| Auto Configure | Ouvrir la fenêtre d’auto-configuration des paramètres |
La boîte de dialogue Auto Configure propose deux modes :
La section Périodes définit la fenêtre temporelle de votre simulation :
| Paramètre | Description | Exemple |
|---|---|---|
| Simulation Period | Plage de dates de la simulation (début et fin) | 2025-01-01 à 2025-03-31 |
| Warm-up period | Si activé, lance une période d’échauffement avant la date de début | Activer/désactiver |
Période d’échauffement
La période d’échauffement permet à la simulation d’atteindre un état stable avant la collecte des data. Si activé, la simulation s’exécute sur une durée équivalente à la période définie avant la date de début. Seuls les events entre les dates de début et de fin sont inclus dans les résultats. Cela évite les biais d’initialisation.
Les attributs sont les valeurs portées par chaque case tout au long du processus. Configurez leur génération selon vos besoins.
Les attributs numériques utilisent des distributions statistiques pour générer leurs valeurs. Consultez Distributions pour tous les types disponibles.
| Paramètre | Description |
|---|---|
| Distribution | Type de distribution statistique |
| Parameters | Paramètres spécifiques de la distribution |
| Periodicity | Variation dans le temps (optionnel) |
| Conditions | Génération conditionnelle (optionnel) |
Les attributs textuels offrent plusieurs modes de génération :
| Mode | Description | Exemple |
|---|---|---|
| List | Sélection aléatoire pondérée dans une liste de valeurs | ”Gold”, “Silver”, “Bronze” |
| Numbered | Préfixe suivi d’un numéro séquentiel | ”ORDER-0001”, “ORDER-0002” |
| Fictional Names | Noms de personnes générés | ”Sarah Johnson”, “Michael Chen” |
| Fictional Companies | Noms d’entreprises générés | ”Acme Corp”, “Global Industries” |
| Countries | Noms de pays | ”United States”, “Germany”, “Japan” |
Définissez les pools de ressources disponibles pour les activités.
| Paramètre | Description |
|---|---|
| Name | Identifiant du pool de ressources |
| Capacity | Nombre d’unités disponibles |
| Periodicity | Capacité variable dans le temps (optionnel) |
Consultez Ressources pour modéliser vos ressources.
Définissez comment les nouveaux cases entrent dans le processus via les start events :
| Paramètre | Description |
|---|---|
| Distribution | Distribution des arrivées (généralement Poisson) |
| Rate | Nombre moyen d’arrivées |
| Rate Unit | Unité de temps : perHour, perDay, perWeek, perMonth, perYear |
| Periodicity | Variations temporelles du taux |
| Conditions | Patterns conditionnels d’arrivée |
Par défaut, les cases arrivent selon une distribution de Poisson à 1 case par heure.
Chaque Task de votre modèle BPMN peut être paramétrée avec des données de traitement :
| Paramètre | Description |
|---|---|
| Distribution | Variation du temps de traitement |
| Time Unit | secondes, minutes, heures, jours |
| Periodicity | Variations temporelles du temps de traitement |
| Conditions | Temps de traitement conditionnel |
| Paramètre | Description |
|---|---|
| Resource Pool | Le resource pool utilisé |
| Quantity | Nombre d’unités nécessaires |
Plusieurs ressources peuvent être ajoutées à une même tâche.
| Paramètre | Description |
|---|---|
| Percentage | Probabilité (0-100 %) que l’activité soit sautée |
| Periodicity | Variations temporelles de la probabilité de saut |
| Conditions | Règles conditionnelles de saut |
Si l’activité est sautée, le case passe directement à l’élément suivant sans consommer de ressources ni de temps.
| Paramètre | Description |
|---|---|
| FIFO | First In, First Out - les cases sont traités dans l’ordre d’arrivée (par défaut) |
| LIFO | Last In, First Out - les derniers cases arrivés sont traités en premier |
| Random | Les cases sont sélectionnés aléatoirement dans la file d’attente |
La stratégie de file d’attente définit comment le prochain case est choisi quand l’activité peut traiter un nouveau travail.
Définissez comment les attributs du case sont modifiés à la fin de la tâche :
| Paramètre | Description |
|---|---|
| Attribute | Attribut concerné |
| New Value | Nouvelle valeur (fixe ou via distribution) |
| Conditions | Quand appliquer le changement |
Pour les intermediate events (événements intermédiaires, hors start event) :
| Paramètre | Description |
|---|---|
| Attribute Changes | Modifier les valeurs d’attributs du case |
| Skip Chance | Probabilité de passer l’événement |
Pour les passerelles exclusives, configurez la probabilité de chaque chemin sortant :
| Paramètre | Description |
|---|---|
| Probability | Poids relatif pour ce chemin (auto-normalisé) |
| Periodicity | Variations temporelles des probabilités |
| Conditions | Sélection conditionnelle du chemin |
Note : Les probabilités sont des poids relatifs. Par exemple, des valeurs 70, 20, 10 donnent le même résultat que 7, 2, 1.
Aucune configuration nécessaire — tous les chemins sortants sont activés simultanément.
Similaire à XOR, mais plusieurs chemins peuvent être activés, au moins un est garanti.
Configurez chaque Sequence Flow (flèches entre éléments) :
| Paramètre | Description |
|---|---|
| Probability | Poids relatif lors de la sortie d’une gateway |
| Periodicity | Variations selon le temps |
| Conditions | Sélection conditionnelle du flow |
Lors de la configuration d’une distribution, utilisez l’éditeur de distribution :
| Type | Paramètres | Exemple d’utilisation |
|---|---|---|
| Fixed | value | Valeurs constantes |
| Normal | mean, stdDev | Variation symétrique |
| Uniform | min, max | Plage à probabilité égale |
| Triangular | min, mode, max | Plage avec valeur la plus probable |
| Poisson | lambda, rateUnit | Taux d’arrivée |
| Lognormal | mean, stdDev | Durées asymétriques |
| Weibull | scale, shape | Modélisation de fiabilité |
| Pearson VI | alpha1, alpha2, beta | Modèles complexes |
Si applicable, les durées peuvent être précisées en :
Pour les distributions d’arrivée :
Voir Distributions pour plus de détails.
Lorsque vous configurez des paramètres variables dans le temps :
| Type | Paramètres | Exemple |
|---|---|---|
| Always | (aucun) | Aucune variation temporelle |
| Default | (aucun) | Règle de secours |
| Each Day | startTime, endTime | 09:00-17:00 chaque jour |
| Each Weekday | startTime, endTime | Horaires business du lundi au vendredi |
| Each Weekend Day | startTime, endTime | Horaires weekend samedi-dimanche |
| Each Week | startDay, startTime, endDay, endTime | Schéma hebdo sur plusieurs jours |
| Each Month | startDayOfMonth, startTime, endDayOfMonth, endTime | Traitement de fin de mois |
| Each Year | startMonth, startDayOfMonth, startTime, endMonth, endDayOfMonth, endTime | Patterns saisonniers |
| Fixed Period | startDateTime, endDateTime | Événement ponctuel |
Consultez Périodicité pour plus de détails.
Les conditions permettent de faire varier les paramètres en fonction des attributs du case :
| Type de condition | Description |
|---|---|
| Value Match | Attribut égal à une ou plusieurs valeurs spécifiques |
| Range | Attribut numérique dans une plage donnée |
Exemple : appliquer des durées de traitement différentes selon le tenant tier du client.
| Contrôle | Description |
|---|---|
| Run Simulation | Lancer la simulation |
| Progress Bar | Affiche le pourcentage d’avancement |
| Cancel | Arrêter une simulation en cours |
| Limite | Valeur | Utilité |
|---|---|---|
| Max Events | 2 000 000 | Empêche les simulations non contrôlées |
Limite d’événements
La simulation s’arrête si la barre des 2 000 000 events est atteinte. En cas d’atteinte, réduisez la période de simulation ou le taux d’arrivée.
Une fois la simulation terminée, un dataset est généré dans votre processus avec l’event log complet :
| Champ | Description |
|---|---|
| Case ID | Identifiant unique de chaque case simulé |
| Activity | Nom de l’activité exécutée |
| Start Timestamp | Quand l’activité a commencé |
| Complete Timestamp | Quand l’activité s’est terminée |
| Resource | Ressource ayant réalisé l’activité |
| Attributes | Valeurs des attributs du case lors de l’exécution |
L’event log simulé est un dataset ProcessMind standard. Vous pouvez :