Parking Lot Test

Test Purpose

The test evaluates the randomness of two-dimensional random points uniformly distributed in a square with a side length of 100. This is achieved by calculating the number of successfully ”parked” points from the 12,000 random two-dimensional points.

First Level Test

The test assumes a next random point (x, y) successfully ”parked”, if it is far enough from every previous successfully ”parked” point. The sufficient distance between the points (x1, y1) and (x2, y2) is min(|x1 - x2|, |y1 - y2|)>1. Numerous experiments prove that out of 12,000 of truly random points only 3,523 points park successfully in average. Moreover, the number K of points successfully parked after 12,000 attempts has a close to normal distribution with:

  1. mean a = 3,523

  2. standard deviation s = 21.9

Consequently, (K - a)/s should have a close to standard normal distribution with the Φ(x) cumulative distribution function. The result of the test is the p-value p = Φ((K - a)/s).

Second Level Test

The test performs the first level test ten times. The result of each iteration of the first level test is the p-value pj, j = 1, 2, ..., 10. The test applies the Kolmogorov-Smirnov goodness-of-fit test with Anderson-Darling statistics to the obtained p-values of pj, j = 1, 2, ..., 10. If the resulting p-value is p < 0.05 or p > 0.95, the test fails.

Final Result Interpretation

The final result of the test is the percentage of the failed second level tests. The test performs the second level test ten times. The acceptable result is the value of FAIL < 50%.

Tested Generators

Function Name

Application

vsRngUniform

applicable

vdRngUniform

applicable

viRngUniform

not applicable

viRngUniformBits

applicable

Function Name

Application

vsRngUniform

applicable

vdRngUniform

applicable

viRngUniform

not applicable

viRngUniformBits

applicable

For more complete information about compiler optimizations, see our Optimization Notice.
Select sticky button color: 
Orange (only for download buttons)