Aller au contenu

Algorithme de Metropolis

Monte Carlo — échantillonnage par chaîne de Markov

Exercice Avancé · Analyse · prepa scientifique et economique (CPGE)

Enonce

Implémenter l'algorithme de Metropolis générique :

  • energie(x) : fonction qui retourne l'énergie de l'état x.
  • voisin(x) : fonction qui propose un nouvel état proche.
  • x0 : état initial. T : température. n_iter : nombre d'itérations.

Retourner la liste des états visités. Application test : trouver le minimum de $E(x)=x^2-4\cos(3x)$.

Signature attendue

def metropolis(energie, voisin, x0, T: float, n_iter: int) -> list:

📖 Rappel de cours

L'algorithme de Metropolis-Hastings échantillonne une distribution $\pi(x)\propto e^{-E(x)/T}$ sans connaître la constante de normalisation. Application : modèle d'Ising, simulations physiques, optimisation par recuit simulé.

Itération :

  1. Proposer $x' = \text{voisin}(x_n)$.
  2. Calculer $\Delta E = E(x') - E(x_n)$.
  3. Si $\Delta E \leq 0$ : accepter $x_{n+1} = x'$.
  4. Sinon : accepter avec probabilité $e^{-\Delta E/T}$, rejeter sinon.

À basse température ($T\to 0$), seuls les états d'énergie minimale sont visités (recuit simulé). À haute température, on explore largement.

← Exercices d'analyse numérique en Python — dichotomie, Newton, intégration

Exercices du meme theme

  • Interpolation Bilinéaire
  • Géométrie 3D — Vecteurs
  • Marche Aléatoire 2D
  • Intersection Rayon-Sphère

La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Essai gratuit
Testez toutes les fonctionnalités sans engagement
En continuant, vous acceptez notre politique de confidentialité.
Déjà abonné ? Se reconnecter
Recevez un lien de connexion par email
Parcourir gratuitement →
Aperçu limité · sans inscription · sans vérification IA
€4,99
/ mois · accès illimité · résiliable
Paiement sécurisé
En vous abonnant, vous acceptez nos conditions et politique de confidentialité.
Résiliation possible depuis votre espace PayPal.

Chargement...

Initialisation de l'environnement

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Progression
0 / 0
Solo
— / —
Python... SQL...
Recherche
🔬 Bac a sable Python ↗ 🧪 Bac a sable SQL ↗ 📝 Concours blanc ↗ 🏖️ Code à la plage ↗ 📚 Listes de rentrée ↗ 🛠️ Admin ↗
Tu aimes PrepaPython ?
Fais-le savoir !
← Retour à l'accueil Mentions legales & confidentialite