Comment simuler une chaîne de Markov en Python ?
En utilisant numpy.random.choice à chaque étape selon les probabilités de transition
ApprofondissementHors programme — Cette méthode va au-delà du B.O. officiel. Proposée pour aller plus loin.
L'objectif
Approfondissement — Simuler en Python une trajectoire d'une chaîne de Markov dont on connaît la matrice de transition.
Le principe
Connaissant l'état courant , l'état suivant suit la loi donnée par la -ème ligne de ; la fonction numpy.random.choice(states, p=M[i]) tire un état selon cette loi, ce qui permet de générer la trajectoire de proche en proche.
La méthode
- 1J'importe numpy puis je définis la liste des états (par exemple [0, 1, ..., r-1]) et la matrice comme un tableau numpy.
- 2Je tire l'état initial selon la loi avec numpy.random.choice(states, p=V0), ou je le fixe directement.
- 3Je boucle de à : à chaque étape, je tire avec numpy.random.choice(states, p=M[X_n]) et je l'ajoute à la trajectoire.
- 4Je renvoie ou affiche la trajectoire complète .
Exemple corrigé
Difficulté croissante de 1 à 3
Exercices aujourd'hui0 / 3
Prêt à t'entraîner ?
Génère un exercice personnalisé sur cette méthode et entraîne-toi avec la correction IA.