Académique Documents
Professionnel Documents
Culture Documents
Simulation à
événements discrets
Gérard Fleury
Philippe Lacomme - Alain Tanguy
Introduction à la simulation
Ce livre concerne essentiellement les systèmes discrets. Un système est considéré comme
discret si, au cours de son observation, on peut identifier des périodes de temps pendant
lesquelles le système ne change pas d’état. Ces périodes de temps dépendent fortement du
niveau de détails choisi pour l’étude, donc des caractéristiques du système qui ont été
identifiées initialement comme pertinentes. Les systèmes ci-dessus sont continus : système
circulatoire avec le rôle central du flux de sang, raffinerie de pétrole dont la matière première
principale est un liquide, système écologique avec la pousse continue de l’herbe… Certains
systèmes sont naturellement concevables comme discrets : c’est le cas du bureau de poste et de
certains ateliers de production. D’autres peuvent être modélisés comme tels bien qu’ils ne le
soient pas en première approximation : c’est le cas du système écologique herbe-lièvres-lynx.
Descriptif
(littéraire)
Statique Déterministe Mathématique
Modèle Analogique
Abstrait
Intervention Intervention
Mise en équation
Type de ou non ou non
ou simulation
modèle du temps du hasard
Évidemment, la conception d’un modèle, quelle que soit sa nature, requiert l’acquisition de
certaines compétences dans le domaine du système étudié : productique, physique, biologie,
écologie… D’autre part, le modèle hérite des lacunes des connaissances mises en œuvre :
lois physiques approchées, collecte difficile de données souvent partielles ou estimées.
Chacune de ces entités jugées pertinentes peut être décrite simplement en donnant la liste
des informations qui la concernent et sont estimées intéressantes par rapport aux objectifs
de l’étude.
N’oublions pas qu’il peut apparaître nécessaire de simplifier le modèle envisagé pour
permettre la mise en œuvre d’une simulation ou d’une résolution de modèle mathématique.
Supposons que l’étude vise à évaluer l’ouverture d’un deuxième guichet et que le taux
d’utilisation du postier soit considéré comme le seul élément représentatif, en négligeant,
par exemple, le temps d’attente des clients. Dans ce cas :
• On peut négliger les automates et les files d’attente qui leur correspondent.
• Pour le postier, il faut évaluer le temps de traitement d’un client ; en particulier, on
devra choisir entre un modèle déterministe ou stochastique suivant le caractère
constant ou aléatoire de cette durée. Dans ce dernier cas, il faut déterminer la loi de
probabilité de ce temps de service.
Chapitre 1 – Introduction à la simulation _________________________________________ 9
• Pour les clients, on peut introduire la durée qui sépare les arrivées de deux clients
successifs, ce qui, dans le cas stochastique, peut nécessiter de préciser la loi de
probabilité, constatée ou estimée, de cette durée.
• Pour le bureau de poste, on doit déterminer la longueur maximale que peut avoir la file
d’attente des clients. Il est parfois nécessaire, pour simplifier, de considérer que la file
d’attente peut être de longueur infinie.
Pour estimer la durée de service au guichet, on observera le système durant une période
suffisamment longue et pendant des périodes de fonctionnement « typique ». Ainsi, on
étudiera le système pendant une période qui ne sera ni 11h-12h30, ni 16h-18h, périodes
traditionnellement très chargées qui ne sont pas représentatives d’une journée de travail. Au
contraire, on pourra se restreindre à ces périodes si l’on projette de ne doubler l’effectif de
postiers que dans les périodes chargées. Il faudra aussi déterminer s’il est opportun de
définir plusieurs classes de clients à partir des durées de service constatées.
En réalisant l’étude, on ne prend pas en considération une multitude d’éléments, tels que :
• Le fait que certains clients peuvent se décourager avant d’atteindre le guichet et quitter
la file d’attente.
• Le fait que le postier peut être, pendant de courtes périodes de temps, indisponible pour
le traitement des demandes des clients car il répond au téléphone ou à ses collègues…
• Le fait que certains clients peuvent ne pas respecter la politique de gestion de la file
d’attente qui voudrait normalement que les clients soient traités selon leur ordre
d’arrivée (clients prioritaires).
1.3.2 Démarche
La réalisation d’un modèle de simulation (ceci est nécessaire si l’observation du système est
impossible ou bien nécessite trop de temps ou entraîne des coûts prohibitifs) implique de
répondre, avant toute chose, aux questions suivantes :
• Quel est le but de l’étude ?
• Quelles sont les hypothèses simplificatrices qu’il est raisonnable de faire ?
• Combien de temps faut-il observer le modèle afin de tirer des conclusions valables
pour le système ?
• Que doit-on évaluer avec le modèle, et sous quelle forme doit-on rendre les résultats ?
• Comment peut-on s’assurer que le modèle obtenu est correct, c’est-à-dire qu’il fournit
des estimations correctes pour les critères retenus ?
10 ______________________________________________ Simulation à événements discrets
1.4 Terminologie
1.4.1 Éléments communs
Nous nous sommes appuyés sur le modèle du bureau de poste pour illustrer notre propos,
mais de très nombreux autres systèmes auraient mérité une description identique.
Par exemple, une caisse de supermarché comprend :
• un tapis roulant qui correspond à la file d’attente des clients ;
• des produits posés sur le tapis et qui sont en attente de facturation ;
• une caissière qui joue le même rôle que le postier.
Dans un hôpital, on peut distinguer les éléments suivants :
• une salle d’attente ;
• des patients en attente de consultation ;
• un médecin qui examine un patient.
On pourrait multiplier ainsi les exemples en changeant chaque fois de domaine : système de
production, système administratif…
Le fait qu’un client désigne indifféremment une pièce dans un système de production ou
une personne physique peut paraître étonnant ; néanmoins, si ces deux éléments ont peu de
points communs dans la réalité, ils sont identiques du point de vue du modèle. De même on
considérera la guichetière comme un serveur !
La file d’attente de pièces devant une machine d’usinage, la file des achats d’une ménagère
sur le tapis de la caisse du supermarché, et une file d’attente de clients devant un guichet de
poste, sont aussi, du point de vue du modèle, identiques.
Frontière du modèle
Entrée Sortie
C3 C2 C1
Entrée des
clients File d'attente Un serveur
Gestion : premier arrivé,
premier servi
Sur les représentations des modèles, nous ferons figurer la frontière du système, qui
délimite son périmètre. De plus, sur la frontière du modèle seront ajoutés une source qui
engendre les clients en entrée du modèle, et un puits qui permet de comptabiliser les clients
qui quittent le système, ainsi que toutes les informations statistiques sur ceux-ci. On appelle
flux le mouvement des clients d’un élément à l’autre. On peut distinguer trois types de
modèles, selon qu’ils possèdent ou non une entrée ou une sortie. Dans le cas d’un modèle
ne possédant ni entrée ni sortie, le modèle est dit fermé. Dans le cas contraire, le modèle est
ouvert. Si une partie d’un flux reste indéfiniment dans le modèle alors qu’un autre type de
flux traverse le modèle (de la source vers le puits), le modèle est mixte.
Pour le guichet de poste, on obtient un modèle comportant (figure 1-3) :
• une source et un puits qui peuvent correspondre, dans la réalité à la même porte !
• une file d’attente ;
• un serveur.
Si un système se compose d’une machine à commande numérique et d’un stock de pièces
géré selon une politique dernier arrivé, premier servi, le modèle comporte une source et un
puits. Il comprend aussi une file d’attente de type pile ainsi qu’un serveur représentant la
machine (figure 1-4).
12 ______________________________________________ Simulation à événements discrets
Frontière du modèle
entrée sortie
P4
C1
un serveur
Stock de clients
C3 Gestion : dernier arrivée,
C2 premier sorti
domaine des services avec le guichet de poste). Qu’il s’agisse d’un guichet de poste ou bien
d’une machine de production, le modèle obtenu fait intervenir le même type d’entités.
Considérons à nouveau le guichet de poste en supposant :
• que les clients arrivent toutes les 10 minutes ;
• que la durée de traitement d’un client est de 15 minutes ;
• que la dynamique est celle qui est précisée ci-dessus.
À la date t = 0, la simulation du système commence et aucun événement ne survient avant
la date 10. À t = 10, le premier client, appelé C1, entre dans le bureau de poste traverse la
salle d’attente (dans le modèle, il s’agit de la file d’attente) et arrive au guichet. Comme le
serveur est libre, le client est immédiatement pris en charge (figure 1-5).
t=0
t=10
C1
C1
t=20
C2 C1
t=25
C2 C1
C2 C1
t=30
C3 C2 C1
0 10 20 30
t1
P1 P2
troisième place de la file
t12
t13
P6
P5
première place de la file
t2
Le dessin de la figure 1-7 donne une représentation du guichet de poste. Le premier cercle à
partir du haut représente la frontière du modèle avec l’arrivée des clients. Les trois places qui
suivent représentent les places dans la file d’attente et la dernière représente la sortie des
clients. Les trois places de gauche permettent de tenir compte du fait qu’une place dans la file
d’attente ne peut être occupée que par un client à la fois. L’accès à la place P2 est conditionné
par la présence d’un jeton dans la place P1. Lorsqu’un jeton se trouve dans la place P2, la
place P1 ne contient plus de jeton ce qui interdit un nouvel accès à la place P2 tant que la
transition t12 n’a pas été franchie. Le franchissement de la transition t12 représente la
libération de la troisième place de la file : la place P2 est vide et un jeton est déposé dans la
place P1 ce qui autorise l’arrivée d’un nouveau client dans la troisième place de la file.
Considérons qu’un client arrive toutes les t1 unités de temps, et que son temps de traitement
au guichet est de t2 unités de temps.
À l’instant t = t1, le client entre dans le bureau de poste (figure 1-8). Le jeton noir qui
représente le client à l’entrée du modèle disparaît ainsi que le jeton de la place de gauche.
16 ______________________________________________ Simulation à événements discrets
Un jeton apparaît dans la place désignant la troisième place de la file. Les déplacements du
client de la troisième à la deuxième place, puis de la deuxième à la première place, sont des
opérations de durée nulle, compte tenu des hypothèses de modélisation. Au même instant
t = t1, le jeton passe dans la deuxième place et le jeton gérant l’accès au troisième
emplacement de la file retourne dans la place de gauche. À l’instant t = t1, le jeton atteint la
première place de la file : le client commence son traitement au guichet. Celui-ci se termine
t2 unités de temps plus tard et le jeton atteint la place de sortie à la date t = t1 + t2.
t1 t1 t1 t1 t1
t2 t2 t2 t2 t2
les règles de fonctionnement internes du système laissent une certaine liberté dans le routage
des clients, on peut chercher la meilleure stratégie permettant de répondre au mieux à la
demande. Dans un atelier où des aléas (comme des pannes) peuvent survenir, on peut aussi
chercher comment porter remède aux difficultés qu’ils induisent, ou bien définir une politique
de gestion qui rende la fabrication aussi peu sensible que possible à ces aléas.
1.9 Conclusion
1.9.1 Réalisation d’un modèle de simulation
Dans un premier temps, il faut définir :
• les objectifs de l’étude ;
• les simplifications de la réalité qu’il est raisonnable de faire.
Ceci conduit à la réalisation d’un modèle qui est une représentation simplifiée de la réalité.
Le modèle reproduit la dynamique du système c’est-à-dire les changements d’état
provoqués par des événements tels que, par exemple, l’arrivée d’un client dans une file ou
bien d’une pièce sur un tapis roulant.
objectifs de l'étude
hypothèses simplificatrices
objectifs de l'étude
UN MODÈLE DES RÉSULTATS
Réalisé en fonction des objectifs de l’étude, le modèle de simulation permet d’obtenir des
résultats numériques (éventuellement statistiques) qui sont ensuite analysés pour permettre
la prise de décisions concernant le système réel (figure 1-9). Celles-ci peuvent être
nombreuses : ouvrir un nouveau guichet dans un bureau de poste, acheter une nouvelle
machine plus performante car celles qui existent ne permettent plus de répondre à la
demande, faire entrer les pièces dans un ordre différent pour écouler plus vite la charge de
travail…
Chapitre 1 – Introduction à la simulation ________________________________________ 19
hypothèses simplificatrices
objectifs de 'létude FORMALISER
formalisation
DÉVELOPPER
programme informatique
VALIDER
résultats numériques
résultats statistiques
La deuxième étape concerne le codage ; elle s’appuie sur la description du système réalisée
précédemment.
La troisième étape concerne la vérification du programme afin de s’assurer qu’il fait « ce
que l’on veut qu’il fasse ». Il s’agit de vérifier le code et sa logique. La validation du
modèle est une étape très importante et délicate car, dans le cas d’un système complexe, il
20 ______________________________________________ Simulation à événements discrets
1.10 Références
Les démarches pour la réalisation des modèles de simulation sont appelées méthodologies
de modélisation [Tan 93] [Tch 97].
[Tan 93] Tanguy A. – « Modélisation Orientée-Objet des Systèmes de Production avec
une Approche Transaction : résolution par des méthodes analytiques et par simulation ».
Thèse de l’université Blaise Pascal soutenue le 23 décembre 1993.
[Tch 97] Tchernev N. – « Modélisation du processus logistique dans les systèmes
flexibles de production ». Thèse de l’université Blaise Pascal, soutenue en 1997.
Pour les méthodes de spécification appliquées aux systèmes à événements discrets, on peut
trouver dans [Bar 90] une présentation des réseaux de Petri détaillant comment on peut
représenter des pannes et des circulations de pièces. Une autre présentation, en anglais, et
concernant les méthodes SADT, peut être trouvée dans [Gou 91].
[Bar 90] Barnichon D. – « Modélisation et simulation de systèmes de production :
problèmes de spécification et d’ordonnancement ». Thèse présentée au Laboratoire
d’Informatique de Modélisation, et d’Optimisation des Systèmes, université Blaise
Pascal, 1990.
[Bre 91] propose une terminologie à utiliser lors de la modélisation des systèmes de
production.
[Bre 91] Breugnot D. – « Problèmes de terminologie dans la modélisation des systèmes
de production ». Troisième symposium d’Infoterm, travail terminologique dans les
domaines de spécialités, Vienne, 12-14 novembre 1991.