Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

Let $X_1, \dotsc, X_n$ be i.i.d. standard normal random variables. Define the range $R \in \mathbb{R}_{\geq 0}$ as $R = \max \{X_1, \dotsc, X_n\} - \min \{X_1, \dotsc, X_n \}$. I am looking for a simple expression that is a good approximation of the density function $r(x)$ of $R$. For my application the number $n$ is fairly large ($n=128$ in this particular case). I get the following exact form of $r$ where $\Phi$ is the CDF for each $X_i$ and $x \geq 0$:

$$ r(x) = \frac{ n(n-1) e^{-x^2/4}}{2 \pi} \int_{\mathbb{R}} e^{-s^2} \left( \Phi(s + x/2) - \Phi(s - x/2) \right)^{n-2} ds $$

I've tried to estimate the integral in this expression, for example by using

$$ \Phi(s + x/2) - \Phi(s - x/2) \leq \Phi(x/2) - \Phi(-x/2) = \textrm{erf}(\frac{x}{2 \sqrt{2}}) $$

but this seems too coarse, certainly for small values of $x$. Any pointers would be appreciated, also for partial results like estimating the expected value and variance of $R$.

share|improve this question
    
You may find the answers to this question useful. –  Chris Taylor Feb 20 '12 at 9:51
    
Maybe. I saw that question and answer but I don't see how that max central limit theorem would apply in some way to the range, since he max and min are clearly not independent. The Jensen trick might work to get an estimate for the expected value, didn't try yet. –  WimC Feb 20 '12 at 13:47
add comment

1 Answer

up vote 1 down vote accepted

I think this paper may help. Someone may have expanded on this in the past 50 years, but it seems like a good place to start:

Tables of range and studentized range, HL Harter

http://www.jstor.org/stable/2237810

Edit: In case you're interested and familiar with R, here is some code that seems to work (for me, at least):

r<-function(x,n){
inner.int<-function(s){
exp(-s^2)*(pnorm(s+x/2)-pnorm(s-x/2))^(n-2)
}
return(n*(n-1)*exp(-x^2/4)/(2*pi)*integrate(inner.int,-Inf,Inf)$value)
}
share|improve this answer
1  
Thanks for the link. It is freely accessible on project euclid: goo.gl/4GTsT. –  WimC Jun 9 '12 at 18:18
1  
And this looks interesting too: goo.gl/qy7I1. –  WimC Jun 9 '12 at 18:36
    
@WimC have you had any luck implementing the method in the second paper? I was wondering if it was any faster or more accurate than the code I listed... –  Gschneider Jun 11 '12 at 15:15
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.