36 0 1MB
17/01/2017
ENSA-KENITRA
A.U: 2016-2017
Cours sur la simulation industrielle Modélisation et Simulation de Flux à événements discrets Pr. Abdellah ABOUABDELLAH 5ème année génie industriel et logistique
Plan du cours • • • • • •
Simulation de flux à événement discret Etapes de la simulation Modèle de connaissance LANGAGE DE SIMULATION SIMAN-ARENA Notions de base Première partie du bloc fonctionnel du logiciel de simulation ARENA Create Dispose Delay Seize/Release Process • Exercice d’application1 • Deuxième partie du bloc fonctionnel du logiciel de simulation ARENA Decide Batch Separate Assign Record Match • Exercice d’application2
1
17/01/2017
Simulation de flux à événement discret Qu’est ce que la simulation de flux à évènements discrets ? • C’est la technique d’analyse du comportement d’un système dans le temps par création d’une maquette numérique. • Cette maquette permet de répondre à toutes les questions de type « Pourquoi ? » et « Que se passe-t-il si? » • concevoir / modifier les procédés ou les systèmes sans incidence financière. • Tester un grand nombre de solutions sans perturber la production existante et orienter les choix pour maîtriser la nouvelle organisation
Etapes de la simulation
2
17/01/2017
Simulation de flux à événements discrets Modèle de connaissance • Modèle de connaissance / Modèle de simulation
Etats des Opérations (Machines ou Activités) • Disponible : pas de charge • Occupée : en charge(jetton_machine=seize Delay,Release)
• Bloquée : évacuation impossible vers l’aval • Autres états possibles:
• réglage, panne, attente opérateur cycle, • attente opé. réglage, attente opé. maintenance
3
17/01/2017
Etats des Attentes (Stocks ou Files d’Attentes) • Vide : pas de charge • Ni pleine ni vide : en charge
• Pipeline
Application Modèle de connaissance
4
17/01/2017
Application Simulation de flux à événements discrets
Application Rapports statistiques • à t = 23 min. : • • • •
Nombre d’articles A (encours) dans le stock S1 : Nombre d’articles B (encours) dans le stock S2 : Nombre d’opérations terminées par le poste ASSEMBLAGE : Taux d’occupation du poste ASSEMBLAGE :
5
17/01/2017
Langage de simulation SIMAN-ARENA • SIMAN-ARENA 7 est: conçu en 1982 par C.D. Pedgen de System Modeling Corporation un langage de simulation du type interaction de processus, ARENA représentant la version « graphique » de SIMAN. • La description du modèle (logiciel) du système simulé se fait à l'aide d'un assemblage constitué de mise en série, en parallèle ou en feedback de différents blocs fonctionnels, issus de bibliothèques (templates) d’ARENA. • Une telle approche de modélisation permet d'obtenir une structure du modèle (logiciel) proche de celle du système (réel) à simuler. • Un outil clé dans la simulation des flux de production. Il permet de: • • • •
Valider l’adéquation produits/process des ateliers; Optimiser les lignes de production; Maîtriser la chaîne logistique globale des fournisseurs aux clients finaux; Gérer les flux physiques internes.
Notions de base • Entité : Une entité est un objet qui évolue dans les différents blocs fonctionnels constituant le modèle du système. Elle correspond en général à un objet concret, par exemple, une personne ou une pièce dans un atelier. Le déplacement des entités au sein des différents blocs - par exemple le déplacement de pièces dans un atelier - provoque un changement d'état du modèle de simulation. • Attribut : Un attribut est une variable associée individuellement aux entités (la variable est locale) pour représenter leurs états ou des paramètres qui leur sont propres. Par exemple, chaque entité, représentant une pièce circulant dans un atelier, peut avoir les attributs suivants : - Type_de_piece afin de désigner le type d'une pièce (par exemple, Type_de_piece = A ou B) ; - Indice_de_priorite afin de désigner l'indice de priorité d'une pièce (par exemple, Indice_de_priorite = faible ou importante) ; - Date_arrivee_ds_le_modele (par exemple, Date_arrivee_ds_le_modele = TNOW).
6
17/01/2017
Notions de base • Variable globale : Une variable globale concerne l'ensemble du modèle. Par exemple, la variable TNOW (variable prédéfinie dans SIMAN) désigne la date à laquelle se trouve la simulation, c'est le temps courant - mis à jour à chaque avancée dans l'échéancier des événements – s’écoulant durant une simulation du modèle. • Le principe de fonctionnement du logiciel ARENA est de suivre chacune des entités évoluant d'un bloc fonctionnel vers un autre dans le modèle, de sa création à sa destruction. • L’ordonnancement dans le temps des différents événements rattachés à l'évolution des entités dans les blocs constituant le modèle se fait au travers d’un échéancier.
Arena Basic Process Template Panel
Module Type
Module
Reference
Basic Process
Data
Entity
Entity
Basic Process
Data
Queue
Queue
Basic Process
Data
Resource
Resource
Basic Process
Data
Schedule
Resource
Basic Process
Data
Set
System
Basic Process
Data
Variable
System
Basic Process
Flowchart
Assign
Entity
Basic Process
Flowchart
Batch
Entity
Basic Process
Flowchart
Create
Entity
Basic Process
Flowchart
Decide
Entity
Basic Process
Flowchart
Dispose
Entity
Basic Process
Flowchart
Process
Resource
Basic Process
Flowchart
Record
Entity
Basic Process
Flowchart
Separate
Entity
Arena Modules
Arena Basic Process Panel Module Icons
7
17/01/2017
Première partie du bloc du logiciel de simulation Arena Create Create (issu du template Basic Process) : Un bloc Create permet de créer des entités. • Exemple: • Arrivée d’un client; • Arrivée d’un bon de commande; • Arrivée d’une matière première.
Première partie du bloc du logiciel de simulation Arena Create
8
17/01/2017
Première partie du bloc du logiciel de simulation Arena Create • Propriétés • Nom ; • Type d’entité; • Clients; • Produits; • Matières premières.
• Temps inter arrivé: • Fixe; • Variable; • Emploi du temps.
• Nombre d’entité par arrivée; • Temps de la première arrivé; • Nombre d’entité maximal.
Première partie du bloc du logiciel de simulation Arena Dispose Dispose (issu du template Basic Process) : Un bloc Dispose permet de détruire des entités. • Exemple: • Sortie d’un client; • Sortie d’un bon de commande; • Sortie d’une matière première.
9
17/01/2017
Première partie du bloc du logiciel de simulation Arena Dispose
Première partie du bloc du logiciel de simulation Arena Delay Delay (issu du template Advanced Process) : Un bloc Delay permet de retarder le passage d'entités. Quand une entité entre dans ce bloc, elle y reste inconditionnellement pendant la durée (aléatoire ou non) indiquée dans le champ Delay Time. Exemple: Client dans un supermarché (Valeur ajoutée, sans valeur ajoutée)
10
17/01/2017
Première partie du bloc du logiciel de simulation Arena Seize • Seize (issus du template Advanced Process) : Une entité présente dans un bloc Seize ne peut sortir de ce bloc que s’il existe un nombre suffisant de ressources disponibles (le nombre et le type de ressources étant spécifiés dans le bloc) ; • Sachant qu'une ressource peut ne pas être disponible, les entités, en attente d'un nombre suffisant de ressources disponibles, sont stockées dans une file d'attente, intégrée (en amont) au bloc Seize, et dont le nom est indiqué dans le champ Queue Name (soit Queue Name = Seize 1.Queue).
Première partie du bloc du logiciel de simulation Arena Seize
11
17/01/2017
Première partie du bloc du logiciel de simulation Arena Release • Release (issu du template Advanced Process) : Un bloc Release permet de « relâcher » des ressources. Quand une entité entre dans ce bloc, elle libère (relâche) la, ou les ressources dont le nom est spécifié dans le champ Resource Name. Le nombre de ressources libérées est spécifié dans le champ Quantity. • On peut noter que l’exécution de cette tâche est instantanée, autrement dit le temps de passage d’une entité dans un bloc Release est nul. Pour simplifier, seul un type de ressource est concerné, l’ajout d’un autre type de ressource donnerait lieu à une ligne supplémentaire dans la liste Resources.
Première partie du bloc du logiciel de simulation Arena Release
12
17/01/2017
Première partie du bloc du logiciel de simulation Arena Process Module • Définition: ce bloc permet de simuler une action sur une entité. • Exemple:
Fabriquer Contrôler Assembler
Première partie du bloc du logiciel de simulation Arena Process Module
Process Module Dialog Box
13
17/01/2017
Première partie du bloc du logiciel de simulation Arena Process Module • Propriété: • Nom ; • Type ; • Action:
• Seize; • Delay; • Release.
• Temps d’action: • Fixe; • Variable.
• Ressources;
• Nom; • Quantité / Capacité.
• Allocation • • • • •
Valeur ajoutée; Aucune valeur ajoutée; Transfer; Attente; Autre.
• File d’attente.
Resource Detail
Process Module Resource Detail Dialog Box
Arena Resource Picture Placement Window
14
17/01/2017
Queue Spreadsheet
Queue Spreadsheet
Resource Spreadsheet
Resource Spreadsheet
15
17/01/2017
Variable Spreadsheet
Variable Spreadsheet
Exercice d’application1 • Simulation du fonctionnement d’un supermarché selon différents scénarios: Premier cas: une caisse; Deuxième cas: Deux caisses; Troisième cas: Trois Caisses.
• Résultat à rendre Temps moyen d’un client dans le supermarché; Taux d’occupation d’un caissier; Nombre de clients servies; Nombre de clients entrés; Temps moyen d’attente d’un client.
16
17/01/2017
Modèle de connaissance
Simulation sur Logiciel Arena Création d’une entité
17
17/01/2017
Simulation sur Logiciel Arena Création d’un bloc Delay
Simulation sur Logiciel Arena Création d’un bloc Process
18
17/01/2017
Simulation sur Logiciel Arena Modèle sous ARENA
Selection des produits
Arrive des clients
Guichets
Sortie clients
0
0 0
Simulation sur Logiciel Arena Résultat de l’exécution Exécution du modèle: cliquer sur Run
19
17/01/2017
Simulation sur Logiciel Arena Résultat de l’exécution
Simulation sur Logiciel Arena Résultat de l’exécution
20
17/01/2017
Deuxième partie du bloc du logiciel de simulation Arena PROCESS DECIDE • Process DECIDE permet de choisir entre 2 ou plusieurs sorties selon deux type de critères • Critère de chance; • Critère de condition logique
Deuxième partie du bloc du logiciel de simulation Arena PROCESS BATCH • Process BATCH rassemble un ensemble d’entités en une seule entité. • Propriété: • Name • Type • Permanent • Temporaire
• Batch Size • Save Criterion • • • •
Last Sum Product First
• Rules • Any entity • By Attribute
• Representative Entity Type
21
17/01/2017
Première partie du bloc du logiciel de simulation Arena PROCESS SEPARATE • Process BATCH sépare une seule entité en plusieurs entités: Propriété: • Name • Type
• Duplicate original • Percentage cost to duplicate • Nbre of duplicates
• Splite existing batch • Menber attribute • Retain all • Remove all • Retain specific values
Première partie du bloc du logiciel de simulation Arena PROCESS ASSIGN • ASSIGN (issu du template Blocks) : Ce bloc permet d’assigner une valeur à un attribut, une variable ou à l’état d’une ressource, durant l’exécution d’une simulation. • Quand une entité entre dans un bloc ASSIGN, l’expression logique ou mathématiquespécifiée dans le champ New Value est évaluée et assignée à l’attribut (rattaché à l’entité présente dans le bloc), la variable ou l’état de la ressource, spécifié dans le champ Variable or Attribut. • Assigne à l’entité • • • • •
Variable ( variable modèle) Attribut ( lié à l’entité) Entity type ( clients, produits, … ) Entity picture ( Image pour représenter l’entité après sa sortie du bloc ASSIGN) Others
22
17/01/2017
Première partie du bloc du logiciel de simulation ARENA PROCESS ASSIGN
Assign 1
Première partie du bloc du logiciel de simulation ARENA PROCESS Record • Le bloc Record (issu du template Basic Process) permet, selon le contenu du champ Type, de : - compter le nombre d'entités traversant le bloc (Type = Count) ; - recueillir les temps de passage successif de 2 entités (Type = Time Between) ; - recueillir les temps mis par les entités traversant une partie (ou l'ensemble) d'un modèle (Type = Time Interval) .
23
17/01/2017
Première partie du bloc du logiciel de simulation ARENA PROCESS Record • Lorsque le champ Type = Count, le bloc Record permet de compter le nombre d'entités qui transitent par ce bloc. Le compteur s'incrémente d'une valeur (Value, par défaut égale à 1) à chaque passage d'une entité. Le nom du compteur est spécifié dans le champ Counter Name. Voir le bloc Statistic pour effectuer un enregistrement des données.
Première partie du bloc du logiciel de simulation ARENA PROCESS Record • Lorsque le champ Type = Time Between, le bloc Record permet de recueillir les temps de passage entre 2 entités successives. Le nom du tally est spécifié dans le champ Tally Name. Voir le bloc Statistic pour effectuer un enregistrement des données.
24
17/01/2017
Première partie du bloc du logiciel de simulation ARENA PROCESS Record • Lorsque le champ Type = Time Interval, le bloc Record permet de recueillir les temps mis par les entités traversant une partie (ou l'ensemble) d'un modèle. Le nom du tally est spécifié dans le champ Tally Name.
Première partie du bloc du logiciel de simulation ARENA Static Le bloc Statistic (issu du template Advanced Process, appartenant au cadre expérimental et donc non traversé par une entité) permet, selon le contenu du champ Type, de : • Collecter durant la simulation des statistiques issues de variables SIMAN, telles que le nombre d’entités contenues dans une file d'attente , le taux d’occupation d’une ressource (variable NR) (Type = Frequency) ; • Spécifier les fichiers dans lesquels seront sauvegardées les données d’observations individuelles, par exemple : celles issues d’un bloc Record (relatif à un compteur ou un tally) (Type = Count ou Tally) ; celles issues d’une variable SIMAN (le nombre d’entités contenues à chaque instant dans une file d'attente, le taux d’occupation à chaque instant d’une ressource (Type = Frequency) .
25
17/01/2017
Première partie du bloc du logiciel de simulation ARENA PROCESS MATCH • Process MATCH permet de synchroniser la progression de deux, voire de plusieurs, entités situées dans différentes files d’attentes. • Quand toutes les files d’attentes, associées au bloc Match, ont une, voire plusieurs entités, ces entités sont libérées, Match 1 de façon synchrone, vers les sorties correspondantes. Dans la figure qui suit, le bloc Match 1 (champ Name = Match 1) effectue une synchronisation entre deux entrées. • Une synchronisation se produit lorsqu’au moins une entité est présente dans chacune des deux files d’attente, à savoir Match 1.Queue1 et Match 1.Queue2. Les entités à l’origine de la synchronisation sont ensuite dirigées vers les sorties correspondantes. Le fait d’avoir le champ Type = Any Entities (et non Based on Attribute) fait que la synchronisation ne s’effectue pas en fonction de la valeur d’un éventuel attribut (rattaché aux entités).
Exercice d’application2 • Guichet de banque: • Deux guichets ayant des services différents : • La distribution des clients selon les services se fait selon une loi aléatoire; • Le premier guichet doit classer les dossiers traités deux par deux.
26
17/01/2017
Simulation sur Logiciel Arena
Simulation sur Logiciel Arena
27
17/01/2017
Simulation sur Logiciel Arena
Simulation sur Logiciel Arena Dans ce modèle, le banquier classe deux dossiers traités par le guichet 1. Alors que le guichet 2 classe les dossiers traités un par un.
28
17/01/2017
Simulation sur Logiciel Arena Summary for Replication 1 of 2 TALLY VARIABLES Identifier
Average Half Width Minimum Maximum Observations
Entity 1.VATime .20227 (Insuf) .14424 .27555 11 Entity 1.NVATime .00000 (Insuf) .00000 .00000 11 Entity 1.WaitTime 1.8491 (Insuf) .00000 9.9629 11 Entity 1.TranTime .00000 (Insuf) .00000 .00000 11 Entity 1.OtherTime .00000 (Insuf) .00000 .00000 11 Entity 1.TotalTime 2.0180 (Insuf) .14424 10.119 11 Guichet Banque1.WaitingTime .01770 (Insuf) .00000 .10621 6 Guichet Banque2.WaitingTime .04513 (Insuf) .00000 .21475 8 Batch 1.Queue.WaitingTime 3.3122 (Insuf) .00000 9.8567 6 .
Simulation sur Logiciel Arena Summary for Replication 1 of 2 DISCRETE-CHANGE VARIABLES Identifier
Average Half Width Minimum Maximum Final Value
Entity 1.WIP .62683 (Insuf) .00000 4.0000 .00000 Guichet 1.NumberBusy .02097 (Insuf) .00000 1.0000 .00000 Guichet 1.NumberScheduled 1.0000 (Insuf) 1.0000 1.0000 1.0000 Guichet 1.Utilization .02097 (Insuf) .00000 1.0000 .00000 Guichet 2.NumberBusy .04083 (Insuf) .00000 1.0000 .00000 Guichet 2.NumberScheduled 1.0000 (Insuf) 1.0000 1.0000 1.0000 Guichet 2.Utilization .04083 (Insuf) .00000 1.0000 .00000 Guichet Banque 1.NumberInQueue .00295 (Insuf) .00000 1.0000 .00000 Guichet Banque 2. NumberInQueue .01003 (Insuf) .00000 1.0000 .00000 Batch 1.Queue.NumberInQueue .55205 (Insuf) .00000 2.0000 .00000
29
17/01/2017
Simulation sur Logiciel Arena Summary for Replication 1 of 2 OUTPUTS Identifier Value _____________________________________________________________ Entity 1.NumberIn 17.000 Entity 1.NumberOut 17.000 Guichet 1.NumberSeized 6.0000 Guichet 1.ScheduledUtilization .02097 Guichet 2.NumberSeized 8.0000 Guichet 2.ScheduledUtilization .04083 System.NumberOut 11.000
Simulation sur Logiciel Arena Summary for Replication 2 of 2 TALLY VARIABLES Identifier
Average Half Width Minimum Maximum Observations
Entity 1.VATime Entity 1.NVATime Entity 1.WaitTime Entity 1.TranTime Entity 1.OtherTime Entity 1.TotalTime Guichet Banque 1.WaitingTime Guichet Banque 2.WaitingTime Batch 1.Queue.WaitingTime
.20544 (Insuf) .13319 .30261 9 .00000 (Insuf) .00000 .00000 9 1.7108 (Insuf) .00000 5.0037 9 .00000 (Insuf) .00000 .00000 9 .00000 (Insuf) .00000 .00000 9 1.8488 (Insuf) .13319 5.1402 9 .04038 (Insuf) .00000 .14020 9 .03765 (Insuf) .00000 .18827 5 1.8557 (Insuf) .00000 4.9752 8
30
17/01/2017
Simulation sur Logiciel Arena Summary for Replication 2 of 2 DISCRETE-CHANGE VARIABLES Identifier
Average Half Width Minimum Maximum Final Value
Entity 1.WIP .70129 (Insuf) .00000 4.0000 1.0000 Guichet 1.NumberBusy .03098 (Insuf) .00000 1.0000 .00000 Guichet 1.NumberScheduled 1.0000 (Insuf) 1.0000 1.0000 1.0000 Guichet 1.Utilization .03098 (Insuf) .00000 1.0000 .00000 Guichet 2.NumberBusy .02347 (Insuf) .00000 1.0000 .00000 Guichet 2.NumberScheduled 1.0000 (Insuf) 1.0000 1.0000 1.0000 Guichet 2.Utilization .02347 (Insuf) .00000 1.0000 .00000 Guichet Banque 1.NumberInQueue .01010 (Insuf) .00000 1.0000 .00000 Guichet Banque 2.NumberInQueue .00523 (Insuf) .00000 1.0000 .00000 Batch 1. NumberInQueue .63151 (Insuf) .00000 2.0000 1.0000
Simulation sur Logiciel Arena Output Summary for 2 Replications OUTPUTS Identifier Average Half-width Minimum Maximum # Replications _____________________________________________________________________ Entity 1.NumberIn 17.500 6.3530 17.000 18.000 2 Entity 1.NumberOut 17.000 .00000 17.000 17.000 2 Guichet 1.NumberSeized 7.5000 19.059 6.0000 9.0000 2 Guichet 1.ScheduledUtilization .02598 .06359 .02097 .03098 2 Guichet 2.NumberSeized 6.5000 19.059 5.0000 8.0000 2 Guichet 2.ScheduledUtilization .03215 .11029 .02347 .04083 2 System.NumberOut 10.000 12.706 9.0000 11.000 2
31
17/01/2017
Simulation sur Logiciel Arena Summary for Replication 2 of 2 OUTPUTS Identifier Value _____________________________________________________________ Entity 1.NumberIn 18.000 Entity 1.NumberOut 17.000 Guichet 1.NumberSeized 9.0000 Guichet 1.ScheduledUtilization .03098 Guichet 2.NumberSeized 5.0000 Guichet 2.ScheduledUtilization .02347 System.NumberOut 9.0000
Exemple • Considérons un simple tapis roulant, ayant un temps de transport de 3 unités de temps, représenté par le modèle logiciel décrit comme suit :
• Le bloc Create, issu du template Basic Process, est tel qu'une entité est créée à partir de l’instant 0, ceci toute les 2 unités de temps. • Le bloc Delay, issu du template Advanced Process, force une entité à séjourner 3 unités de temps dans le bloc. • Le bloc Dispose, issu du template Basic Process, détruit toute entité entrant dans le bloc.
32
17/01/2017
Exemple A travers le menu Run/Setup/Replication Parameters, on peut notamment fixer : - le nombre de réplications (champ Number of Replications), - le temps où se termine une réplication (champ Replication Length).
Exercices de modélisation avec ARENA
33
17/01/2017
Exercice • Guichet de banque: • Trois guichets ayant le même service: • Le client sort si il trouve la file d’attente dépassant 4 personne;
• Trois guichets ayant différents service: • La distribution des clients selon les services se fait selon une loi aléatoire; • Le client sort si il trouve 4 clients en attentes.
Résultat à rendre • Temps moyen d’un client dans la banque; • Taux d’occupation d’un guichet; • Nombre de clients servies; • Nombre de clients entré; • Nombre de clients perdu; • Temps moyen d’attentes d’un clients.
34
17/01/2017
Modèle de connaissance
Départ client
Simulation sur Logiciel Arena
35
17/01/2017
Exercice 1 • L’objectif du TP est de dimensionner un centre national d’appel téléphonique d’une entreprise d’assurance en faisant des simulations sous ARENA. • 25% des clients appellent le centre pour obtenir des informations sur leur contrat, 25% pour obtenir un conseil juridique, 50% pour déclarer un sinistre. • Un standard oriente chaque client vers le bureau qui est concerné par la nature de l’appel. • Le centre est ouvert 8h par jour. Les clients appellent en moyenne tous les 10s selon une distribution triangulaire (minimum 2s, maximum 20s). Un employé du standard met entre 10s et 30s pour déterminer avec le client sur quel bureau il doit le renvoyer. Un employé du bureau « Informations » passe en moyenne 2mn (selon une distribution exponentielle) avec le client. Un employé du bureau « Conseil Juridique » passe de 5mn à 15mn avec le client. Un employé du bureau « Déclaration Sinistre » passe de 2mn à 10mn avec le client. • Simuler votre solution pour avoir la meilleur adéquation personnel – service clients.
Exercice 2 • L’objectif est ici de comparer 2 systèmes de réémission des courriels : • L’arrivée des courriels se fait en moyenne tous les 5mn selon une loi exponentielle. Tant que les courriels ne sont pas réémis ils sont placés dans la file d’attente de leur serveur respectif. • Le premier système est formé d’un seul serveur rapide : il reçoit tous les courriels et les réémet selon une loi triangulaire de moyenne 3mn, min 1mn et max 5mn. • Le second système est construit avec 2 serveurs plus anciens (loi triangulaire moy. 5mn, min. 1mn, max. 7mn), les courriels sont orientés aléatoirement (50%/50%) sur l’un ou l’autre serveur. • Simuler et comparer les deux systèmes.
36
17/01/2017
Exercice 3 • L’objectif est ici de comparer 2 systèmes de gestion de file d’attente : • Nous avons une agence ayant trois guichets indépendants. Nous proposons de simuler le fonctionnement cette agence selon deux scénario : • Premier scénario : une seul file d’attente pour les trois guichets ; • Deuxième scénario : chaque Guichet possède son propre file d’attente : •
Le client choisi toujours la file d’attente la plus vide.
• Les clients arrivent par un lot de 2 suivant une loi normal ( moy 5 min, écart type 1 min). • La durée du service au guichet prend en moyenne une période qui suit une loi triangulaire (moy. 10 mn, min. 15mn, max. 20mn). • Le client sort de l’agence s’il trouve plus de 5 clients en attente. • Dans le deuxième scénario, le client va toujours vers la file la moins occupée. • Simuler le fonctionnement de l’agence pendant 48h et mesurer en particulier des statistiques sur : • Le nombre de clients servis • Le nombre de clients perdu • Le nombre moyen de clients dans la file d’attente • Comparer et discuter les deux scénarios
Exercice 4 • Un restaurant de 50 tables ouvre ses portes pendant 4 heures chaque soir. L'intervalle de temps entre l'arrivée de deux groupes de clients est représenté par une loi exponentielle de moyenne 1,6 minute. Les groupes sont constitués de 2, 3, 4 ou 5 convives avec des probabilités de 0.4 , 0.3 , 0.2 et 0.1 respectivement. • S'il y a déjà 5 groupes en attente, auquel cas il se rend dans un autre restaurant. • Une fois assis, le groupe est servi au bout d'une durée uniformément répartie entre 15 et 20 minutes. La durée d’un repas proprement dit obéit à une distribution normale de moyenne 60 minutes et d'écart-type 10 minutes. Le repas terminé, les clients attendent le caissier pour payer la note et libèrent les tables. La durée de service du caissier est uniformément distribuée entre 1.5 et 3 minutes. • Simuler le fonctionnement du restaurant pendant une soirée et mesurer en particulier des statistiques sur : • le nombre de groupes en attente ainsi que le nombre de clients perdus, • le nombre de clients servis ainsi que la durée de séjour dans le restaurant de ces clients, • le nombre de tables occupées et le taux d'activité de la caisse
37