Vous êtes sur la page 1sur 7

TP de Modélisation et Simulation

Logiciel ARENA

Quelques points sur le règlement des TP :

 Les TP sont obligatoires. Toute absence non justifiée se traduit par un 0 pour la
séance.
 Eviter les trop nombreuses copies d’écran dans le rapport.
 Pas de copie d’écran non commentée.

Remarques générales sur ARENA :

 Ne pas utiliser d’accent lors du nommage des éléments.


 Les décimales s’écrivent après un « . » et non une « , ». 0,3 0.3
 Le bouton d’aide vous apportera de nombreuses réponses

Introduction à ARENA
SIMAN-ARENA est un langage de simulation du type interaction de processus, ARENA
représentant la version « graphique » de SIMAN. La description du modèle du système simulé
se fait à l'aide d'un assemblage de différents blocs fonctionnels, issus de bibliothèques (tem-
plates) d’ARENA. Une telle approche de modélisation permet d'obtenir une structure du mo-
dèle proche de celle du système à simuler.

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, ce qui est analogue aux déplacements des jetons dans un modèle RdP.

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, In-
dice_de_priorite = faible ou importante) ;
- Date_arrivee_ds_le_modele (par exemple, Date_arrivee_ds_le_modele = TNOW).

Variable : Une variable est partagée par tous les éléments du modèle. Sa modification par un
élément implique sa modification pour tous les autres. Les variables sont accessibles par tous
les éléments du modèle.

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 si-
mulation, c'est le temps courant - mis à jour à chaque avancée dans l'échéancier des événe-
ments – s’écoulant durant une simulation du modèle.

Les attributs et variables peuvent être appelés par tous les blocs

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.

Blocs de Base
Les blocs de base permettant de construire la plupart des systèmes se trouvent dans la biblio-
thèque de composant « Basic Process ». Voici les plus couramment utilisés.

Bloc Create : Un bloc Create permet de créer des entités. Celui représenté dans la figure sui-
vante est intitulé Create (champ Name = Create). Sont indiqués :
- la période de création des lots d’entités (cadre Time Between Arrivals, par exemple : champ
Type = Random(Expo), champ Value = 9, champ Units = Minutes),
- la taille des lots (champ Entities per Arrival = 1),
- le nombre total de lots à créer (champ Max Arrivals = Infinite),
- la date de création du premier lot (champ First Creation = 0).

Les valeurs considérées sont telles qu'1 entité est créée à des instants suivant une distribution
respectant la loi exponentiel de paramètre 9 minutes, ceci une infinité de fois à partie de
l’instant t = 0.

Les types de distribution possibles sont spécifiés dans le chapitre de l’aide consacré au bloc
Create.
Bloc Dispose : Un bloc Dispose permet de détruire des entités. Celui représenté dans la figure
suivante est intitulé Dispose (champ Name = Dispose), une entité entrant dans ce bloc est
immédiatement détruite. Ce bloc est utilisé pour finaliser vos modèles.

Bloc Assign : Un bloc Assign permet d’assigner une valeur, notamment, à un attribut ou une
variable durant l’exécution d’une simulation. Quand une entité entre dans un bloc Assign,
l’expression - logique ou mathématique - spécifiée dans le champ New Value est évaluée et
assignée, selon le contenu du champ Type (Attribute, Variable, …), à un attribut (rattaché à
l’entité « activant » le bloc) ou une variable. Dans la figure suivante, le bloc intitulé Assign
(champ Name = Assign) permet de déclarer :
- une variable Variable 1 à 1 ;
Il est possible également de proposer une expression pour l’assignation des entités. Par
exemple on peut spécifier une loi discrète avec la commande DISC dans le champ New Value
de la fenêtre Assignments :
DISC(0.2,1,0.5,2,1,3) : 20% seront de type 1, 30% de type 2 et 50% de type 3 (la fonction
DISC s’écrit : DISC(fraction,type,fraction cumulative,type,….,1, type)).

Bloc Decide : Un bloc Decide permet d’aiguiller un flux d’entités vers différents blocs de
destination, il comporte une entrée et plusieurs sorties. L’aiguillage est réalisé, selon le conte-
nu du champ Type, d’après un critère de type condition, ou probabilité. Les conditions sont
par exemple basées sur des valeurs d’attributs, de variables, une expression. Le routage se fait
via un ensemble de branches.
Quand une entité entre dans un bloc Decide, chaque condition de branchement est testée de
manière séquentielle (i.e., dans l’ordre de leurs déclarations dans le bloc). La branche sélec-
tionnée par une entité est la première branche pour laquelle la condition de branchement est
satisfaite ; l’entité est alors aiguillée vers le bloc correspondant. Si aucune branche n’est satis-
faite, l’entité est détruite. Un bloc Decide, intitulé Decide (champ Name = Decide), est décrit
dans la figure suivante. Le critère d’aiguillage vers les 2 sorties possibles est réalisé à partir
d’une probabilité (2 sorties ayant chacune une probabilité de 0.5).
Bloc Process : Un bloc Process permet de simuler le comportement d’une machine, sachant
que différents modes de fonctionnement sont autorisés selon le contenu du champ Action (si-
tué dans le cadre Logic lorsque le champ Type = Standard).
Lorsque le champ Action contient la valeur :

1) Delay, la machine permet de simuler un temps de traitement (voir le cadre Delay


Type pour assigner un temps de traitement). Rq des variables ou attributs peuvent être
utilisés pour adapter les delay à différents types de pièces.

2) Seize Delay, la machine nécessite une, voire plusieurs ressources (voir le cadre Re-
sources pour assigner le type, ainsi que le nombre, de ressources concernées) durant un
temps (relatif au temps de traitement) minimum indiqué dans le cadre Delay (le relâ-
chement de la ressource est supposé réalisé en aval).

3) Seize Delay Release, idem. au cas 2) avec une gestion de la libération de la res-
source « saisie ».

4) Delay Release, idem. au cas 3) sans la gestion de l’allocation de la ressource, voire


des ressources nécessaires au traitement d’une pièce (cette gestion est supposée réali-
sée en amont du bloc).
Les ressources sont gérées à partir du bloc ressource de l’interface ARENA (bibliothèque Ba-
sic Process), de même que les files d’attente créées pour les process.
Attention lors de la création d’une ressource, le champ quantity représente le nombre de res-
source nécessaire pour le déroulement de la tache du bloc process. Le nombre de ressource
disponible est à fixer dans la fenêtre de gestion des ressources (bloc ressource de la biblio-
thèque Basic Process) avec le champ capacity.

Pour les files d’attente, différentes politiques de gestion sont possible (FIFO, LIFO ou gestion
de priorité Low Value First, High Value First).

Bloc Record : Le bloc Record permet d’enregistrer des éléments qui seront alors répertoriés
dans les résultats de la simulation. Son type permet de décompter des entités passées ou des
intervalles de temps écoulés. L’option record into set permet de spécifier par exemple un at-
tribut à notifier (rq. Dans ce cas, ne pas oublier de spécifier l’élément set créé, en déclarant les
étiquettes à attacher suivant les différentes valeurs que peut prendre l’attribut ciblé ; ceci se
fait dans la fenêtre set de l’interface ARENA).
Eléments de Simulation
Certains paramètres de la simulation peuvent être réglés en utilisant l’onglet setup du menu
Run :

On peut fixer le nombre de Replication (nombre d’exécution d’une histoire complète avec des
graines aléatoires différentes ; champ number of replications).
La durée d’une réplication (champ replication length).
Une condition de fin (champ Terminating Condition).

Vous aimerez peut-être aussi