Cours2 Simulation PDF [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

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