Skip to content
All library documents

Generating Correlated Uniform Samples with a Gaussian Copula

Article Quant Q&A · Author: sigirisetti

Summary

The document describes a way to create dependent uniform samples from low-discrepancy inputs such as Sobol or Halton sequences. First, the input uniforms are transformed into uncorrelated Gaussian variables. A covariance transformation, such as Cholesky decomposition, then introduces the desired Gaussian dependence. Applying each resulting Gaussian variable’s cumulative distribution function produces uniform marginals with dependence induced by the correlated Gaussian vector.

This construction is connected to Gaussian copulas: dependence is imposed in Gaussian space while the marginal distributions are restored through cumulative distribution functions. It addresses the concern that applying a linear correlation transform directly to uniform samples may not preserve uniform marginals. The method as presented concerns Gaussian-copula dependence; it does not establish arbitrary dependence structures, nor does it discuss how correlation choices or finite-sample properties affect a particular application.

Key ideas

  • Transform low-discrepancy uniforms into independent standard normal variables before imposing dependence.
  • Apply a covariance transformation such as Cholesky to obtain correlated Gaussian variables.
  • Map correlated Gaussian values through the normal cumulative distribution function to obtain uniform marginals.
  • The resulting dependence structure is a Gaussian copula and does not represent every possible dependence pattern.

Tags

Full text
# Correlated Random Number Generation using Sobol?


# Correlated Random Number Generation using Sobol?












There is a clear theory about generating correlated random numbers using Cholesky decomposition or PCA.

I suppose if we apply above methods to random numbers generated using Uniform random numbers generators like Sobol then the uniformity is gone.

Are there any well known methods to generate correlated random numbers from uniform random number generators and still uniformity stays in tact?

I believe generators need to take correlation matrix before generation itself rather apply correlations after generation

Thanks

## Answer by Richi Wa (score 1)

https://quant.stackexchange.com/a/17309

If you have a vector $X = (X_1,\ldots,X_n)$ of a multivariate normal distribution with covariance matrix $\Sigma$ and $F_i$ is the marginal cumulative distribution function of $X_i$ then $F_i(X_i)$ is uniformly distributed.

So what you can do:

- generate uniforms (e.g. Sobol or Halton)

- transform to uncorrelated Gaussians

- transform these Gaussians to correlated Gaussians (using Cholesky e.g.)

- Apply the marginal cdf to each correlated Gaussian to get correlated uniforms.

This approach is connected to the theory of copulas.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.