Académique Documents
Professionnel Documents
Culture Documents
Lina ABOUELJINANE
ENSMR
Formulation du problème
▪ Une réplication est une réalisation particulière des variables aléatoires outputs
pouvant avoir de larges variances
▪ Le résultat d’une seule réplication peut largement différer des véritables
résultats du modèle ce qui augmente la probabilité d’en inférer des résultats
erronés
▪ La réalisation de plusieurs réplications avec les mêmes conditions initiales et
une réinitialisation des statistiques au début de chaque exécution permet
d’obtenir des échantillons représentatifs des variables aléatoires outputs (iid) et
de converger en moyenne vers les outputs réels du système
Aboueljinane Lina – Cours de simulation – Etude de Cas N° 1 4
Réplications dans un modèle de simulation
Simulation avec condition d’arrêt (terminating simulations)
« Un évènement « naturel » vient mettre fin à la réplication comme une heure de fermeture
fixée, la fin de service pour tous les clients d’un système de biens ou de services (restaurant,
supermarché, banque…)… »
Pour cette simulation:
1. Exécuter n réplications
2. Observer la réalisation d’une variable aléatoire output Xj pour chaque réplication
j (j=1…n) => les Xj sont iid
σ𝒏
𝒊=𝟏 𝑿𝒊
3. L’estimateur sans biais de l’output moyen est: 𝑿 𝒏 = 𝒏
𝟐 σ𝒏
𝒊=𝟏[𝑿𝒊 −𝑿(𝒏)]
𝟐
4. L’estimateur sans biais de la variance de l’output est: 𝑺 𝒏 =
𝒏−𝟏
5. L’intervalle de confiance de la moyenne µ à 100(1-α)% (avec 0<α<1) est défini
𝑺(𝒏)𝟐
par : 𝑿(𝒏) ∓ 𝒕 𝜶
𝒏−𝟏,𝟏−𝟐 où t n−1,1−α est lu dans la table de Student
𝒏 2
pour un risque d’erreur α/2 et (n - 1) degrés de liberté
1. On peut calculer le nombre de réplications nécessaires n pour obtenir une demi largeur
𝟐 𝑺(𝒏)𝟐
d’intervalle h à l’aide de : 𝒏 = 𝒕𝒏−𝟏,𝟏−𝜶 𝒉𝟐 (Attention: t et S dépendent de n!)
𝟐
2. Lorsque n ≥ 30, on peut approximer n en supposant que S(n)² ≈S(n0)², puis en remplaçant
t n−1,1−α par 𝑧1−α lu dans la table de la loi Normale pour un risque d’erreur α/2:
2 2
𝟐 𝑺 (𝒏𝟎)𝟐
𝒏≅ 𝒛𝟏−𝜶 𝒉𝟐
𝟐
𝒉𝟐𝟎
3. Une autre approximation qui peut être utilisée est : 𝒏 ≅ 𝒏𝟎 𝒉𝟐
Fin de la phase
transitoire
Aboueljinane Lina – Cours de simulation – Etude de Cas N° 1 8
Simulation sans condition d’arrêt
Obtention de l’échantillon d’observations
Deux approches sont largement utilisées pour obtenir un échantillon « représentatif » d’outputs:
Réplications multiples Lot d’intervalles (Interval
batching)
Principe Utiliser le même principe pour le calcul Une seule réplication longue est exécutée
de la moyenne et l’IC de l’output que la et les statistiques sont réinitialisées à des
simulation avec condition d’arrêt en intervalles de temps fixes. L’output est
choisissant une phase transitoire et une collecté pour chaque intervalle. La
longueur de réplications adéquats moyenne et l’IC sont calculés sur tous
les intervalles (au moins 5 à 10)
Utilisation Si phase transitoire courte Si phase transitoire longue
Avantage - Les échantillons d’output sont - L’exécution dure moins longtemps
indépendants - Le risque de biais du à la phase
transitoire est moindre
Inconvénients - L’exécution d’une phase transitoire - Les échantillons d’output sont
pour chaque réplication prolonge la dépendants (corrélation avec l’intervalle
durée de simulation précédant et suivant)
- Risque de sous-estimation de la phase
transitoire (résultats biaisés)
Aboueljinane Lina – Cours de simulation – Etude de Cas N° 1 9
Simulation sans condition d’arrêt
Longueur de réplication
3- Selectionnez le type
« schedule » et lui
donner un nom
(« schedule_arrivee »)
pour représenter un taux
d’arrivée différent par
tranche horaire.
1- Cliquez sur
«Schedule » dans « Data
Definition »
2- Changez l’unité de
temps à « halfhours »
1- Cliquez sur
«Schedule » dans
« Data Definition »
1- Renommez le module
« Nombre de clients par
groupe? »
▪ Attacher le template
« Blocks » : Clic droit
-> Template Panel ->
Attacher… ->
« blocks.tpo »
1- Cliquez sur
«Queue » dans « Data
Definition »
2- Spécifiez la capacité
de la queue à 5
1- Changez la règle
d’allocation à « Wait » pour
dire que le temps passé dans
seize est un temps d’attente
2- Ajouter la ressource
« Table » avec un nombre
d’unités qui correspond à
l’attribut « Nbre_Table »
2- Sélectionnez l’action
« Seize Delay Release »
4- Ajoutez une
ressource
« serveur»
Aboueljinane Lina – Cours de simulation –5-Etude de CaslaN°durée
Spécifiez 1 de prise de commande (TRIA (3,5,7) 25
Modèle étudié
Paramétrage du module « Process »
Glissez un module PROCESS et Double-cliquez dessus pour ouvrir la boîte de dialogue de ses propriétés !
1- Renommez le module
« Préparation de commande »
3- Ajoutez une
ressource
« serveur»
1- Renommez le module
« Repas»
2- Sélectionnez
l’action « Delay »
3- Ajoutez une
ressource
« serveur»
1- Renommez le module
« Libération de table»
2- Ajoutez la ressource
« Table » dans le nombre ou
elle a été réservée par le
groupe (attribut
« Nbre_Table »)
1- Renommez le
module « Sortie
clients servis »
3- Changez l’unité
de base du modèle à
« minutes »
Exemple:
-Programmation linéaire Optimiseur Simulation
-Programmation non- (Solutions optimales ou proche (Capacité de modélisation de
linéaire optimales complexité)
-Heuristiques
-Métamodèles
….
Actualisation des paramètres d’entrée
par les résultats de simulation
min 𝑓 𝜃 = 𝐸 𝐿 𝜃, 𝜔
𝜃𝜖
s.c
𝑔𝑖 𝜃 ≤ 0 i=1……n
Contrôles
▪ Variables de simulation ou des ressources dont la manipulation affecte significativement les
performances du système
▪ Outre les valeurs inférieure et supérieure des contrôles, OptQuest nécessite la spécification de valeurs
suggérées utilisées comment points de départ du processus d’optimisation
Réponses
▪ Statistiques collectées par le modèle de simulation qui reflètent le changement de valeurs des contrôles
Objectif
▪ Expression (fonction des contrôles et des réponses) à maximiser ou minimiser par le modèle
Contraintes (Optionnelles)
▪ Relations linéaires ou non-linéaires entre les contrôles et/ ou les réponses à respecter par le modèle
Options d’optimisation
▪ Critère d’arrêt(exemple: après un nombre fixé de simulations, aucune amélioration significative après
100 simulations…)
▪ Nombre de réplications par simulation: peut être fixe ou variable (compris entre un nombre minimum et
maximum)
2. Renommez la contrainte «
Clients perdus »
1. Glissez l’objet
« Constraint »
dans
l’explorateur…
3. Double-cliquez sur
l’expression de la
contrainte, puis entrez son
expression dans la fenêtre
qui s’affiche
1. Glissez l’objet
« Constraint »
dans
l’explorateur…
3. Double-cliquez sur
l’expression de la
contrainte, puis entrez son
expression dans la fenêtre
qui s’affiche
1. Glissez l’objet
« Objective »
dans
l’explorateur…
3. Double-cliquez sur
l’expression de l’objectif,
puis entrez son expression
dans la fenêtre qui
s’affiche
1. Sélectionnez
l’optimisation
pour afficher ses
propriétés
2. Choisir un
nombre
variable de
replications
(entre 5 et 10)
3. Choisir un
nombre limité
de simulations
(400)