Génie 360 interactif

Simulations et jeux

Explorez des simulations, outils interactifs et jeux éducatifs conçus pour mieux comprendre les probabilités, les sciences, l’ingénierie et différents phénomènes à travers l’expérimentation.

Simulateur de loterie par méthode de Monte-Carlo

Sélectionnez les boules que vous souhaitez jouer et indiquez la mise en Gourdes associée à chacune. Une même boule peut être jouée plusieurs fois : dans ce cas, les mises sont automatiquement additionnées.

Première boule × 50
Deuxième boule × 20
Troisième boule × 10
Votre jeu
Résultats de la simulation
Mise totale
Probabilité de réaliser un bénéfice
Bénéfice net moyen
Distribution des bénéfices et pertes
Bénéfice net Nombre de simulations Probabilité
Probabilité des différents gains
Gain brut Nombre de simulations Probabilité

Chaîne de Markov à deux états

Cette simulation représente une chaîne de Markov à deux boîtes. À chaque étape, une boule est tirée dans la boîte actuelle. Boule bleue = rester dans la boîte actuelle ; boule verte = changer de boîte.

Vous pouvez exécuter les transitions une par une avec le bouton « +1 simulation », ou choisir librement un nombre N de simulations. Les graphiques, les proportions observées et la trajectoire sont actualisés progressivement.

P(Xn+1 | Xn, Xn-1, ...) = P(Xn+1 | Xn)
Matrice de transition
[
0.70
0.30
0.40
0.60
]
P = [ P(A→A)   P(A→B) ; P(B→A)   P(B→B) ]
Représentation de la chaîne
État A
État B
0.70
0.60
0.30
0.40
État actuel = boîte utilisée maintenant État A
Prêt à commencer la simulation.
Visualisation du tirage
La boîte utilisée dépend de l’état actuel. La Boîte 1 contient 5 boules bleues et 7 boules vertes. La Boîte 2 contient 8 boules bleues et 4 boules vertes. À chaque tirage : bleue = rester ; verte = changer de boîte.
Que signifie « état » dans cette chaîne ?
Ici, l’état correspond simplement à la boîte dans laquelle se trouve le système. Une boule bleue signifie rester dans la boîte actuelle. Une boule verte signifie changer de boîte.
Décision du dernier tirage Aucun tirage effectué.
Boîte 1
5 boules bleues · 7 boules vertes
Boîte 2
8 boules bleues · 4 boules vertes
Bleue = rester Vert = changer de boîte
Dernier tirage
Aucune balle sélectionnée.
Lancez une simulation pour observer le tirage.
Lancer les simulations
Effectuez une seule transition ou ajoutez N nouvelles transitions à la simulation déjà réalisée. La balle tirée est affichée à chaque étape.
Lent Normal Maximum
Pour N > 100, utilisez le curseur pour accélérer ou ralentir pendant la simulation. Les résultats et les courbes restent calculés sur tous les tirages.
0 / 0
Historique récent des tirages
Bleue = rester Verte = changer Le chiffre indique la boîte utilisée pour le tirage.
Résultats
Boules choisies : fréquence des tirages bleus et verts. Boîtes : proportion des états observés dans Boîte 1 et Boîte 2.
Nombre de simulations 0
Boules bleues choisies
Boules vertes choisies
Proportion en Boîte 1
Proportion en Boîte 2
Convergence dynamique vers les valeurs théoriques
Convergence de l’état A
La courbe évolue à mesure que les simulations sont effectuées. La ligne pointillée représente la probabilité stationnaire théorique.
Simulation : — Théorique : —
Convergence de l’état B
La courbe évolue à mesure que les simulations sont effectuées. La ligne pointillée représente la probabilité stationnaire théorique.
Simulation : — Théorique : —
Convergence des couleurs tirées
Ces courbes montrent l’évolution de la proportion cumulée des boules bleues et des boules vertes. Comme pour les états, la ligne pointillée indique la valeur théorique à long terme.
Convergence — boules bleues
La courbe montre la proportion cumulée de boules bleues. La ligne pointillée représente la valeur théorique à long terme.
Simulation : — Théorique : —
Convergence — boules vertes
La courbe montre la proportion cumulée de boules vertes. La ligne pointillée représente la valeur théorique à long terme.
Simulation : — Théorique : —

Distribution stationnaire

À mesure que le nombre de simulations augmente, les proportions observées peuvent se rapprocher des probabilités stationnaires de la chaîne. Elles représentent la part de temps passée à long terme dans Boîte 1 et Boîte 2.

πP = π

Aiguille de Buffon : estimation d’une probabilité par Monte Carlo

On lance aléatoirement une aiguille sur une surface comportant des lignes parallèles régulièrement espacées. L’objectif est d’estimer, par simulation Monte Carlo, la probabilité que l’aiguille coupe l’une des lignes.

Dans cette simulation, la longueur de l’aiguille et l’espacement entre les lignes sont fixés à L = 1 et D = 1. On note N le nombre total de lancers et H le nombre de lancers pour lesquels l’aiguille coupe une ligne. L’estimation Monte Carlo est la fréquence relative des intersections.

P̂(intersection) = H / N
Longueur de l’aiguille L = 1
Espacement des lignes D = 1
Simulation géométrique
Chaque aiguille est générée avec une position et une orientation aléatoires. Les aiguilles orange coupent réellement une ligne, tandis que les aiguilles vertes n’en coupent aucune.
Lignes parallèles
Intersection
Pas d’intersection
Résultats
Nombre de lancers 0
Intersections 0
Probabilité estimée
Probabilité théorique 63,66 %
Écart absolu

Valeur théorique

Pour l’aiguille de Buffon, lorsque la longueur de l’aiguille est inférieure ou égale à l’espacement entre les lignes, la probabilité théorique d’intersection est :

P(intersection) = 2L / (πD)

Ici, puisque L = D = 1 :

P(intersection) = 2 / π ≈ 0,6366 = 63,66 %

La simulation Monte Carlo estime cette probabilité par :

P̂ = H / N

Lorsque le nombre de simulations augmente, la fréquence observée doit progressivement se rapprocher de la probabilité théorique de 63,66 %.

Convergence de l’estimation
Probabilité estimée en fonction du nombre de lancers
La courbe verte représente la fréquence cumulative des intersections. La ligne orange pointillée représente la probabilité théorique.
Monte Carlo : — Théorique : 63,66 %

Estimation de π par la méthode de Monte Carlo

Cette expérience utilise un cercle inscrit dans un carré pour estimer π à partir de points générés aléatoirement. Plus le nombre de simulations augmente, plus l’estimation tend généralement à se rapprocher de la valeur de référence de π.

On considère un cercle de rayon r inscrit dans un carré de côté 2r. Des points sont générés uniformément dans le carré. Certains tombent à l’intérieur du cercle, les autres à l’extérieur. La proportion de points situés dans le cercle permet d’estimer le rapport entre les deux surfaces.

Acercle / Acarré = π / 4
π ≈ 4 × Ncercle / N
Simulation géométrique
Chaque point est généré aléatoirement dans le carré. Les points verts sont situés à l’intérieur du cercle et les points orange à l’extérieur. Seul un nombre limité de points est dessiné afin de préserver la lisibilité lorsque la simulation devient très grande.
Cercle inscrit
À l’intérieur du cercle
À l’extérieur du cercle
Résultats
Nombre de points 0
Points dans le cercle 0
Proportion dans le cercle
Estimation de π
Écart absolu

Pourquoi cette méthode fonctionne-t-elle ?

Pour un cercle de rayon r, l’aire est :

Acercle = πr²

Le carré qui contient exactement ce cercle possède un côté de longueur 2r. Son aire est donc :

Acarré = (2r)² = 4r²

Le rapport entre les deux surfaces est alors :

Acercle / Acarré = π / 4

Avec des points générés uniformément dans le carré, cette proportion peut être approximée par la fréquence des points qui tombent à l’intérieur du cercle :

Ncercle / N ≈ π / 4

On obtient finalement :

π ≈ 4Ncercle / N
Convergence de l’estimation
Estimation de π en fonction du nombre de simulations
La courbe verte représente l’estimation cumulative obtenue par Monte Carlo. La ligne orange pointillée correspond à la valeur de référence π ≈ 3,14159.
Monte Carlo : — Valeur de référence : 3,14159

Fiabilité d’un réseau par simulation Monte Carlo

Ce simulateur permet d’estimer la probabilité qu’il existe au moins un chemin fonctionnel entre le point A et le point D dans un réseau en forme de losange.

Chaque segment possède une probabilité de fonctionnement. À chaque simulation, l’état de chacun des segments est généré aléatoirement : il peut être fonctionnel ou défaillant. Le réseau est considéré fonctionnel s’il existe au moins un chemin constitué uniquement de segments fonctionnels permettant d’aller de A jusqu’à D.

P̂(A connecté à D) = Nréseaux connectés / Nsimulations
État du réseau
Le graphique représente le dernier état simulé du réseau. Les segments verts sont fonctionnels ; les segments orange sont défaillants. Même si certains segments sont défaillants, le réseau est considéré connecté dès qu’au moins un chemin fonctionnel existe entre A et D.
Segment fonctionnel
Segment défaillant
Résultats
Nombre de simulations 0
Réseaux connectés A → D 0
Probabilité Monte Carlo
Probabilité théorique
Écart absolu

Comment une simulation est-elle réalisée ?

Pour chaque segment, on connaît une probabilité de fonctionnement. Prenons par exemple le segment A–B. Avec les valeurs initiales du simulateur, sa probabilité de fonctionnement est égale à 0,90, soit 90 %.

Pour simuler l’état du segment, l’ordinateur génère un nombre aléatoire entre 0 et 1. Tous les nombres de cet intervalle sont équiprobables. On peut donc utiliser directement une partie de cet intervalle pour représenter la probabilité de fonctionnement.

0 0,90 1
90 % de l’intervalle : segment fonctionnel
10 % : défaillant

Si le nombre obtenu se situe entre 0 et 0,90, le segment est déclaré fonctionnel. S’il se situe entre 0,90 et 1, il est déclaré défaillant.

Exemple 1 :

Le programme tire au hasard le nombre 0,37. Comme 0,37 appartient à l’intervalle [0 ; 0,90], le segment A–B fonctionne.

Exemple 2 :

Le programme tire 0,94. Comme 0,94 est supérieur à 0,90, le segment A–B est défaillant.

Cette procédure donne bien 90 % de chances au segment de fonctionner, car l’intervalle [0 ; 0,90] représente 90 % de l’intervalle complet [0 ; 1]. La même opération est répétée indépendamment pour chacun des cinq segments.

Une fois l’état des cinq segments déterminé, le programme explore le réseau et vérifie s’il existe au moins un chemin fonctionnel de A jusqu’à D.

P̂(A ↔ D) = nombre de réseaux connectés / nombre total de simulations

Lorsque le nombre de simulations augmente, cette fréquence se stabilise progressivement autour de la probabilité réelle de connexion du réseau.

Comment calculer la probabilité théorique ?

Le réseau possède cinq segments : A–B, A–C, B–D, C–D et B–C. Chaque segment peut prendre seulement deux états : fonctionnel ou défaillant.

Le nombre total de configurations possibles est donc :

25 = 32 configurations

La probabilité théorique peut être calculée exactement en examinant ces 32 configurations. Pour chacune d’elles, on calcule d’abord sa probabilité, puis on vérifie si A reste connecté à D.

Exemple d’une configuration

A–B : fonctionnel

A–C : fonctionnel

B–D : défaillant

C–D : fonctionnel

B–C : défaillant

En supposant l’indépendance des segments, la probabilité de cette configuration est :

P = pAB × pAC × (1 − pBD) × pCD × (1 − pBC)

Avec les valeurs initiales :

P = 0,90 × 0,85 × 0,20 × 0,90 × 0,30

Le programme effectue ce calcul pour chacune des 32 configurations. Il additionne ensuite uniquement les probabilités des configurations pour lesquelles il existe une connexion entre A et D.

P(A ↔ D) = Σ P(configuration connectée)

Convergence de la probabilité
Probabilité de connexion entre A et D
La courbe verte représente l’estimation cumulative obtenue par simulation Monte Carlo. La ligne orange pointillée représente la probabilité théorique calculée en examinant les 32 configurations possibles du réseau.
Estimation Monte Carlo
Probabilité théorique
Monte Carlo : — Théorique : —
GÉNIE 360 · SIMULATION

Estimation d’une intégrale par Monte-Carlo

Comprendre comment des points générés au hasard peuvent être utilisés pour estimer l’aire sous une courbe.

Valeur exacte 2
1
LE PROBLÈME

Quelle aire voulons-nous estimer ?

Considérons la fonction f(x) = sin(x) entre 0 et π. L’intégrale représente géométriquement l’aire située entre la courbe et l’axe horizontal.

Aire recherchée
I = ∫0π sin(x) dx

Dans cet exemple, nous connaissons déjà la valeur exacte : I = 2. Nous allons cependant utiliser une simulation de Monte-Carlo pour essayer de retrouver cette valeur.

2
LE RECTANGLE

Encadrons la courbe

Entre 0 et π, la fonction sin(x) varie entre 0 et 1. Toute la courbe peut donc être contenue dans un rectangle de largeur π et de hauteur 1.

Largeur π de 0 à π
Hauteur 1 valeur maximale de sin(x)
Aire du rectangle π π × 1 = π
3
L’IDÉE DE MONTE-CARLO

Utilisons des points aléatoires

Nous générons des points au hasard dans le rectangle. Chaque point possède une coordonnée x comprise entre 0 et π et une coordonnée y comprise entre 0 et 1.

Point sous la courbe

Si y est inférieur ou égal à sin(x), le point appartient à l’aire que nous cherchons à estimer.

Point au-dessus de la courbe

Si y est supérieur à sin(x), le point se trouve en dehors de l’aire recherchée.

Si les points sont distribués uniformément, la proportion de points situés sous la courbe permet d’estimer la proportion du rectangle occupée par l’aire sous sin(x).

4
DE LA PROBABILITÉ À L’INTÉGRALE

Comment obtenir l’estimation ?

Proportion observée
Nsous Ntotal
Proportion des aires
Aire sous la courbe Aire du rectangle

Comme l’aire du rectangle est égale à π, l’intégrale peut être estimée à partir de la proportion de points situés sous la courbe.

ESTIMATION MONTE-CARLO
I ≈ π × Nsous Ntotal
À retenir : lorsque le nombre de simulations augmente, la proportion obtenue devient généralement plus stable et l’estimation tend à se rapprocher de la valeur recherchée.
5
À VOUS DE TESTER

Lançons maintenant la simulation

Commencez avec quelques points, puis augmentez progressivement le nombre de simulations pour observer la convergence.

Nombre total 0
Sous la courbe 0
Intégrale estimée 0.000000
Erreur relative
SIMULATION

Points aléatoires et sin(x)

Sous la courbe Au-dessus
CONVERGENCE

Intégrale estimée en fonction de N

Estimation Valeur exacte
Rappel
I ≈ π × Nsous la courbe Ntotal
Prêt pour la simulation.

Système masse–ressort–amortisseur à un degré de liberté

Cette simulation représente la vibration libre d’un système à un degré de liberté. La masse m, la rigidité k, l’amortissement c ainsi que les conditions initiales peuvent être modifiés.

m ü(t) + c u̇(t) + k u(t) = 0
u(0) = u₀     u̇(0) = v₀
Fréquence propre ωₙ
Rapport d’amortissement ζ
Fréquence amortie ωd
Période propre Tₙ
Réponse :
Animation du système
m
Position d’équilibre
u = 0,0000 m
Réponse temporelle du déplacement

Méthode des éléments finis : barre axiale 1D

Cette simulation illustre les principales étapes de la méthode des éléments finis pour une barre soumise à une charge axiale. La barre est discrétisée en plusieurs éléments linéaires à deux nœuds. Le programme construit les matrices élémentaires, assemble la matrice globale, applique les conditions aux limites et calcule les déplacements, les déformations et les contraintes.

Pour un élément de barre à deux nœuds, le déplacement à l’intérieur de l’élément est interpolé à partir des déplacements nodaux :

u(x) = N₁(x)u₁ + N₂(x)u₂
N₁(x) = 1 − x/Lₑ      N₂(x) = x/Lₑ

La relation déformation-déplacement s’écrit :

ε = B uₑ
B = [ −1/Lₑ    1/Lₑ ]

La matrice de rigidité élémentaire est obtenue par :

kₑ = ∫ Bᵀ E A B dx
kₑ = (EA/Lₑ) [ 1   −1 ; −1   1 ]

Après assemblage et application des conditions aux limites :

K u = F
1. Discrétisation
2. Matrices élémentaires
3. Assemblage global
4. Résolution
Nombre de nœuds
Longueur élémentaire
Déplacement maximal
Contrainte maximale
Maillage et déformée
Matrice de rigidité élémentaire
kₑ = (EA/Lₑ) [ 1   −1 ; −1   1 ]
Assemblage de la matrice globale
Déplacements nodaux
Nœud Position x (m) Déplacement u (mm)
Résultats par élément
Élément Nœud i Nœud j Déformation ε Contrainte σ (MPa) Effort normal N (kN)
Interprétation : la méthode des éléments finis ne suppose pas directement la solution globale du problème. Le domaine est d’abord discrétisé en éléments. Le champ de déplacement est approximé dans chaque élément à l’aide de fonctions de forme. Les matrices élémentaires sont ensuite assemblées pour former le système global K u = F. Lorsque le nombre d’éléments augmente, le maillage permet de représenter des champs de déplacement de plus en plus détaillés pour des problèmes plus complexes.
Laboratoire Python interactif

Apprendre Python en pratiquant

Choisissez un exemple, lisez les commentaires, modifiez le programme puis exécutez-le directement dans votre navigateur.

Chargement de Python…
Préparation de EC2…
1
Choisir

Sélectionnez un exemple.

2
Lire

Lisez les commentaires.

3
Modifier

Changez une valeur ou une instruction.

4
Exécuter

Observez le résultat.

Pour commencer

Quelques notions Python

Il n'est pas nécessaire de tout mémoriser. Les exemples vous guideront progressivement.

#
Commentaire

Une ligne commençant par # sert à expliquer le programme. Python ne l'exécute pas.

=
Donner une valeur

x = 5 signifie : la variable x prend la valeur 5.

print()
Afficher

Affiche un texte ou une valeur dans la console.

if
Décider

Exécute une instruction uniquement si une condition est vraie.

for
Répéter

Répète automatiquement une ou plusieurs instructions.

def
Créer une fonction

Permet de créer une opération que l'on pourra réutiliser.

Python Premier programme

Découvrez comment afficher quelque chose avec Python.

Ctrl + Entrée
</>
Programme Python Vous pouvez modifier le code
exercice.py
>_
Console Résultat du programme
OUTPUT
Préparation de Python…
?
Comment lire un programme ?

Pour commencer, lisez simplement les instructions de haut en bas.

x = 5 x prend la valeur 5
y = x + 2 Python effectue le calcul
print(y) Python affiche 7
!
L'indentation est importante

Après if, for ou def, certaines lignes doivent être décalées vers la droite.

if age >= 18:
    print("Majeur")
Les espaces devant print() indiquent que cette instruction appartient au bloc if.
La bibliothèque EC2 est disponible

Tous les modules fournis pour le laboratoire sont intégrés directement dans cette page. Vous pouvez importer uniquement le module nécessaire à votre calcul, par exemple import EC2.materiaux as MAT.

EC2.materiaux EC2.dispositionsconstructives EC2.FS_ELS EC2.FS_ELU EC2.tranchant EC2.adherence EC2.fissuration EC2.fleche EC2.dalle EC2.compression EC2.instabilites EC2.FC_ELU EC2.fluage EC2.retrait EC2.mathBA EC2.constantes EC2.BA
📘
Crédit et référence

Les fonctions de calcul de la bibliothèque EC2 intégrées dans ce laboratoire sont basées sur les programmes associés à l’ouvrage Calculs de béton armé de Xavier Roguiez.

LABORATOIRE D'INITIATION À MATLAB®

Apprendre MATLAB en pratiquant

Choisissez un exemple, lisez les commentaires et découvrez progressivement les bases de la programmation.

Exemples pédagogiques
1
Choisir Sélectionnez un exemple.
2
Lire Lisez les commentaires.
3
Comprendre Observez chaque instruction.
4
Observer Consultez le résultat.
POUR COMMENCER

Quelques notions MATLAB

Il n'est pas nécessaire de tout mémoriser. Les exemples vous guideront progressivement.

%
Commentaire

Une ligne commençant par % sert à expliquer le programme. Elle n'est pas exécutée.

=
Donner une valeur

x = 5 signifie que la variable x reçoit la valeur 5.

;
Point-virgule

Placé à la fin d'une instruction, ; évite l'affichage automatique du résultat.

disp()
Afficher

disp() permet d'afficher un texte ou la valeur d'une variable.

if
Décider

if exécute une instruction seulement si une condition est vraie.

for
Répéter

for permet de répéter automatiquement une ou plusieurs instructions.

EXEMPLE À EXPLORER Premier programme
Exemple de code
programme.m
Résultat
APERÇU
Choisissez un exemple puis cliquez sur « Voir le résultat ».
i
COMPRENDRE L'EXEMPLE Premier programme

À RETENIR

Ressource pédagogique indépendante

Cet outil Génie 360 présente des exemples pédagogiques de syntaxe MATLAB et un aperçu de leurs résultats. Il ne constitue pas le logiciel MATLAB et n'exécute pas MATLAB dans le navigateur.

MATLAB® est une marque déposée de The MathWorks, Inc. Génie 360 n'est ni affilié à, ni approuvé par The MathWorks, Inc.