Chaîne de Markov — distribution à $n$ étapes
Matrice de transition & puissance matricielle
Enonce
Étant donné une matrice de transition $P$ (numpy array carré), un vecteur de loi initiale $\pi_0$ et un entier $n \geq 0$, calculer $\pi_n = \pi_0 \cdot P^n$ sous forme de numpy array 1D.
Signature attendue
def distribution_apres(P: np.ndarray, pi0: np.ndarray, n: int) -> np.ndarray:
Exemple
distribution_apres(np.array([[0.8, 0.2], [0.4, 0.6]]), np.array([1.0, 0.0]), 2).round(6).tolist()→[0.72, 0.28]
📖 Rappel de cours
Une chaîne de Markov est une suite $(X_n)$ à valeurs dans un ensemble fini d'états où la probabilité de transition ne dépend que de l'état courant.
Matrice de transition :
$P_{ij} = \mathbb{P}(X_{n+1} = j \mid X_n = i)$
Chaque ligne de $P$ somme à 1 (c'est une matrice stochastique).
Évolution de la loi :
Si $\pi_0$ est le vecteur-ligne de la loi initiale, alors $\pi_n = \pi_0 \cdot P^n$.
Autrement dit : pour connaître la loi après $n$ étapes, on multiplie $\pi_0$ par $P$ élevé à la puissance $n$.
← Exercices Python pour la prépa ECG — probabilités, matrices, suites
Exercices du meme theme
- Produit matriciel
- Résolution d'un système linéaire
- Puissance rapide d'une matrice
- Distribution stationnaire d'une chaîne de Markov
- Mensualité d'un prêt à taux fixe
- Simulation d'une loi de Bernoulli
La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.