Notes for Intel® oneAPI Math Kernel Library Vector Statistics

ID 772987
Date 12/04/2020
Public
Document Table of Contents

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