Overview
Some problems in risk analysis cannot be expressed in an analytical form. Others are difficult to define in a deterministic manner. Monte Carlo methods (also known as stochastic simulation techniques) consist of running “numerical experiments” to observe what happens over a large number of runs of a stochastic model. They consist of using repeated random sampling from input probability distributions, execution of the model with these stochastic inputs, then aggregation of the large number of executions to obtain an estimate of the quantity of interest. These methods rely on the ability of computers to generate pseudorandom numbers from various relevant probability distributions.
Monte Carlo methods are widely used in risk analysis, for instance for:

propagating uncertainty through a numerical model to obtain confidence intervals on your model putputs

estimating quantile measures for performance measures

simulating evacuation from a building during the design phase

predicting failure, cost overruns and schedule overruns in project management
This submodule is a part of the risk analysis module.
Course material
Monte Carlo methods in risk analysis 

Estimating pi using a Monte Carlo simulation 

Project risk analysis with Monte Carlo simulation 

Numerical integration using Monte Carlo methods 

Monte Carlo sampling methods 
In these course materials, applications are presented using the NumPy and SciPy libraries for the Python programming language.
Other resources
We recommend the following sources of further information on this topic:

MIT OpenCourseWare notes from the Numerical computation for mechanical engineers course

Article Principles of Good Practice for Monte Carlo Techniques, Risk Analysis, 1994

Book The Monte Carlo Simulation Method for System Reliability and Risk Analysis, Enrico Zio

An alternative geometrical method to estimate the value of pi using stochastic sampling is Buffon’s Needle, invented in 1777.