La simulation Monte Carlo est une technique utilisée pour effectuer une analyse de sensibilité, c'est-à-dire pour étudier comment un modèle réagit à des entrées générées de manière aléatoire. Elle se compose généralement d'un processus en trois étapes :
- Génération aléatoire de « N » entrées (parfois appelées scénarios).
- Exécution d’une simulation pour chacune des « N » entrées. Les simulations sont exécutées sur un modèle informatisé du système analysé.
- Agrégation et évaluation des résultats des simulations. Les mesures les plus courantes incluent la valeur moyenne d'une sortie, la distribution des valeurs de sortie et la valeur minimale ou maximale de la sortie.
Les systèmes analysés avec les simulations Monte Carlo comprennent des modèles financiers, physiques et mathématiques. Les simulations étant indépendantes les unes des autres, la simulation Monte Carlo se prête bien aux techniques de calcul parallèle, qui peuvent réduire considérablement le temps nécessaire pour effectuer le calcul.
Utilisation de la simulation Monte Carlo dans MATLAB
MATLAB® propose des fonctions, telles que uss et simsd, que vous pouvez utiliser pour créer un modèle de simulation Monte Carlo et pour exécuter ces simulations. MATLAB est utilisé pour la modélisation financière, les prévisions météorologiques, l'analyse opérationnelle et de nombreuses autres applications.
Dans le domaine de la modélisation financière, la simulation Monte Carlo permet d'établir des prévisions de prix, de taux et d'économie, de gérer les risques et de procéder à des stress tests. Financial Toolbox™ propose des outils d'équations différentielles stochastiques pour créer et évaluer des modèles stochastiques. Risk Management Toolbox™ facilite la simulation de crédit, avec notamment l'application de modèles de copules.
Pour mieux contrôler la génération des entrées, Statistics and Machine Learning Toolbox™ propose une grande variété de distributions de probabilités que vous pouvez utiliser pour générer des entrées continues et discrètes.
Utilisation de la simulation Monte Carlo dans Simulink
Vous pouvez modéliser et simuler des systèmes multidomaines dans Simulink® pour représenter des contrôleurs, des moteurs, des gains et d'autres composants. Le design et le test de ces systèmes complexes impliquent de nombreuses étapes, notamment l'identification des paramètres du modèle qui ont le plus d'impact sur les spécifications ainsi que sur le comportement, la consignation et l'analyse des données de simulation, et la vérification du design du système.
Les simulations Monte Carlo vous aident à renforcer la confiance dans votre design en vous permettant d’effectuer des balayages de paramètres, d'explorer votre espace de design, de tester plusieurs scénarios et d'utiliser les résultats de ces simulations pour guider le processus de design via une analyse statistique. Simulink Design Optimization™ propose des outils interactifs pour effectuer cette analyse de sensibilité et influencer le design de votre modèle Simulink.
Exécution de simulations Monte Carlo en parallèle
Pour améliorer les performances de vos simulations Monte Carlo, vous pouvez distribuer les calculs pour qu'ils s'exécutent en parallèle sur plusieurs cœurs avec Parallel Computing Toolbox™ et MATLAB Parallel Server™.
Ressources
Développez vos connaissances grâce à la documentation, aux exemples, aux vidéos et plus encore.
Exemples
- Blackjack séquentiel
- Pricing d'options américaines sur panier par analyse de Monte Carlo
- Analyse de Monte Carlo d'un modèle PK/PD pour un agent antibactérien
- Simulation de variables aléatoires dépendantes avec des copules
- Analyse de robustesse pour les simulations Monte Carlo
- Exécuter des simulations Monte Carlo en parallèle
En savoir plus
- Développement et implémentation de modèles d'analyse de scénarios pour mesurer le risque opérationnel - Témoignage d'utilisateur
- Amélioration des modèles de systèmes avec des techniques de Monte Carlo - Article de l'AIAA
- Simulation Monte Carlo et analyse de robustesse - File Exchange
- Exploration du design avec l'application Sensibility Analyzer (5:01) - Vidéo