2017-10-06 2 views
0

의사 난수 생성기 테스트에 대한 설명과 함께 C에서 테스트 구현을 시도하고 있습니다. 한 가지 문제가 있습니다. . 다음과 같이 문제의 텍스트는 다음과 같습니다prng 테스트에 대한 상관 관계 계산 및 적합성 수행

연속 블록 L 비트의 의 해밍 가중치에 상관 테스트를 적용합니다. 블록의 해밍 가중치 ( 비트 수가 1과 같음)를 j = 1, . . . , n에 대해 Xj이라고 가정합니다. 테스트 는 H0에서

enter image description here

, n ⇢ infinity로, p̂ * sqrt(n - 1)이 점근 적으로 표준 정규 분포, 연속 Xj 년대 사이의 경험적 상관 관계를 계산한다. 이것은 테스트에서 사용되는 것입니다. 이 테스트는 큰 n에 대해서만 유효합니다.

내 계획은이 테스트 통계를 계산하고 Anderson-Darling 테스트를 사용하여 정규 분포에 대한 적합도 테스트를 수행하는 것입니다. 그러나이 단일 테스트 통계에서 어떻게 배포판을 얻는 지에 대해 약간 혼란 스럽습니다. 내 이해에서, 내 전체 비트 n, 난 단지 하나를 얻을거야 . 그러면 하나의 테스트 통계 인 p̂ * sqrt(n - 1)을 얻을 수 있습니다. 이것을 정규 분포와 어떻게 비교할 것인가? 아이디어가 내 데이터 집합을 자체적으로 n과 함께 여러 개의 청크로 분해하고 각각에 대한 테스트 통계를 계산 한 다음이 분포를 표준 표준과 비교하는 것이 좋습니까? 난 단지 의 계산을 정확히 이해하고 있는지 확인하고 싶습니다.

답변

0

perform a goodness of fit test to the normal distribution을 수행하려는 경우 많은 샘플 가우스 값을 가져야 함을 의미합니다. 따라서 p̂ * sqrt(n - 1)이 점근 적으로 N (0,1)이면 단일 테스트 실행은 단일 숫자를 생성합니다. 소프트웨어 기반의 RNG를 테스트하려면 다른 n 샘플을 계속 사용하고 또 다른 임의의 N (0,1) 숫자 등을 얻으십시오. 이미 하드웨어 장치에서 숫자가 N 인 경우이를 분할해야합니다 청크, 테스트 실행, 각 덩어리에서 N (0,1)에서 하나의 숫자를 얻습니다. 그리고 배포 테스트를 실행합니다.

종이 : 선형 합동 발생기의 형태 (a)의 승수와 을 조심 = + -2q + -2r 피에르 L' ECUYER 및 RICHARD SIMARD, AACM, 당신이 그것을

필요하면 내가 복사본이 1999

0

가설적인 가설 테스트는 귀무 가설이 사실이라는 가정하에 테스트 통계 값을 관찰 할 가능성을 결정하는 것과 관련됩니다. 시험 통계 값이있을 확률이 높으면 귀무 가설은 기각되지 않는다. 테스트 통계 값이 '매우 좋지 않음'인 경우 귀무 가설은 기각됩니다. '그다지 좋지 않음'의 의미는 시험의 신뢰 수준으로 지정됩니다 (α).

귀하의 텍스트에 따르면 귀무 가설 T = p̂ * sqrt(n - 1)은 표준 정규 분포로 점근 적으로 분포되어 있습니다. T ~ N(0, 1). 따라서이 가설에서 테스트를 수행합니다 :

  1. 계산 t = p̂ * sqrt(n - 1) :
    Null: T = 0 
    Alternate: T <> 0 
    

    그런 다음 하나에 값을 관찰했다.
  2. 을 계산한다. 즉, |t|에서 N (0, 1)에 대한 꼬리 확률을 찾는다.
  3. p이 귀하의 신뢰 수준보다 낮 으면 대체 가설에 찬성하여 귀무 가설을 기각하십시오. 일례로서

, 당신은 n=10001 난수 시퀀스를 생성하고 0.025의 값을 계산 된 시퀀스에 기초하여 가정한다.α = 0.05 유의 수준에서 그 가치의 중요성을 확인하려면 :

  1. 계산 t = p̂ * sqrt(n - 1) = 0.025 * sqrt(10001 - 1) = 2.5
  2. 계산 p = P(|T| > |t|) =P(|T| > 2.5) = 0.01242
  3. p < α 때문에, 증거는 귀무 가설을 거부 지원합니다.
관련 문제