Смекни!
smekni.com

Статистическое исследование свойств псевдослучайных чисел получаемых методом Джона фон Неймана (стр. 3 из 3)

Проверка гипотезы о равномерном распределении

При использовании критерия Пирсона для проверки гипотезы о равномерном распределении генеральной совокупности с предполагаемой плотностью вероятности f(x) необходимо вычислив по имеющейся выборке значение, оценить параметры a и b по формулам

,

Где a* и b* - оценки a и b. Действительно, для равномерного распределения

M(X) =

σ=

=
,

откуда можно получить систему для определения a* и b*:

f(x)=

,

решением которой являются выражения (*). Затем, предполагая, что

f(x)=

,

можно найти теоретические частоты по формулам:

,

,
,

,

Здесь s – число интервалов, на которые разбита выборка. Наблюдаемое значение критерия Пирсона вычисляется по формуле:

а критическое по таблице с учетом того, что число степеней свободы k=s-3.

Для выбранного критерия строится правосторонняя критическая область, определяемая условием

,

где α – уровень значимости. Следовательно, критическая область задается неравенством

, а область принятия гипотезы –
. Таким образом, если
, то нулевую гипотезу принимают, если
, то ее отвергают.

Для критерия Колмогорова теоретические и эмпирические функции распределения находим таким же образом, как и для критерия Пирсон.

Схема применения критерия Колмогорова:

Строятся предполагаемое теоретическая функция распределения F(x).

Находим величину

по следующей формуле

где

;

3. Если вычисленное значение

,

где α критическое значение найденное при заданном уровне значимости, то проверяемая нулевая гипотеза о том что случайная величина Х имеет заданный закон распределения, отвергается, в противном случае гипотеза не отвергается.

Программа вычисления

. Таблица результатов

uses crt;

const n=100;s=10;

var

A1,h, R, min, max, x_v, D_v, at, bt, Xi2:real;

a:array[1..N]of real;

alfa:array[1..s+1]of real;

x,mt:array[1..s]of real;

m:array[1..s]of integer;

i,k:integer;

begin

clrscr;

writeln('A1');

read(A1);

for I:=1 to n do

begin

a[i]:=sqr(a1)/1000000;

a[i]:=(trunc((a[i]-trunc(a[i]))*10000));

if a[i]<100 then A1:=random(7999)+2000

else a1:=a[i];

a[i]:=a[i]/10000;

writeln(a[i]:8:4);

end;

begin

min:=a[1];

max:=a[1];

for i:=1 to N do

if max<a[i] then max:=a[i];

for i:=1 to N do

if min>a[i] then min:=a[i];

R:=max-min;

h:=R/s;

alfa[1]:=min;

for k:=2 to S+1 do

alfa[k]:=alfa[k-1]+h;

for k:=1 to s do

x[k]:=alfa[k]+h/2;

for k:=1 to s do

for i:=1 to N do

if (a[i]>=alfa[k])and(a[i]<alfa[k+1]) then

m[k]:=m[k]+1;

x_v:=0; D_v:=0;

for k:=1 to s do

x_v:=x_v+x[k]*m[k];

x_v:=x_v/n; writeln(' X_v=',x_v:8:4);

for k:=1 to s do

D_v:=D_v+sqr(x[k])*m[k];

D_v:=sqrt(D_v/N-sqr(x_v)); writeln(' D_v=',D_v:8:4);

at:=x_v-D_v*sqrt(3);

bt:=x_v+D_v*sqrt(3);

mt[1]:=N*(alfa[2]-at)/(bt-at);

for k:=2 to s-1 do

mt[k]:=N*(alfa[k+1]-alfa[k])/(bt-at);

mt[s]:=N*(bt-alfa[s])/(bt-at);

Xi2:=0;

for k:=1 to s do

if mt[k]<>0 then

Xi2:=Xi2+(sqr(m[k]-mt[k]))/mt[k];

for k:=1 to s do

writeln('i',k,' x[k]=',x[k]:8:4,' n[k]=', m[k], 'nt[k]=', mt[k]:8:4);

writeln('Xi2=',Xi2:8:4); readkey;

end; end;

end.

Таблица результатов N = 1000, m = 10, k = 7; A1=9887

xi
0.05 112 103.87
0.15 91 100.92
0.25 103 100.12
0.35 94 100.92
0.45 113 100.89
0.55 99 100.92
0.65 98 100.72
0.75 95 109.42
0.85 107 109.42
0.95 88 958.76

По таблице хи-квадрат распределения

=9.037. Так как
, то гипотеза H0 согласуется с опытными данными.

Программа вычисления

. Таблица результатов

uses crt;

const n=100;

var A1,min,max, alf,min1,max1:real;

a,D,D1,b:array[1..N]of real;

i,k,j:integer;

procedure swap(var x,y:real);

var t:real;

begin

t:=x; x:=y; y:=t;

end;

function f(s:real):real;

begin

if s<=0 then

f:=0;

if (s>0) and(s<=1) then

f:=s;

if s>1 then

f:=1; end;

begin

clrscr;

writeln('A1'); read(A1);

for I:=1 to n do

begin

a[i]:=sqr(a1)/1000000;

a[i]:=(trunc((a[i]-trunc(a[i]))*10000));

if a[i]<100 then A1:=random(7999)+2000

else a1:=a[i];

a[i]:=a[i]/10000;

end;

begin

for j:=1 to n-1 do

for i:=n downto j do

if a[i-1]>a[i] then

swap(a[i-1],a[i]);

for i:=1 to n do

end;

begin

for i:=1 to n do

D[i]:=abs(i/n-f(a[i]));

for i:=1 to n do

begin

max:=d[1];

min:=d[1];

for i:=1 to N do

if max<d[i] then max:=d[i];

for i:=1 to N do

if min>d[i] then min:=d[i];

begin

for i:=1 to n do

D1[i]:=abs(f(a[i])-(i-1)/n);

for i:=1 to n do

begin

max1:=d1[1];

min1:=d1[1];

for i:=1 to N do

if max1<d1[i] then max1:=d1[i];

for i:=1 to N do

if min1>d1[i] then min1:=d1[i];

writeln('max',max:8:4)

writeln('max1',max1:8:4);

alf:=sqrt(n)*max;

writeln('alf',alf:8:3);

readkey;

end;

end.

Таблица результатов

N = 100 ; A1=9876

При уровне значимости 0,1 критическое значение равняется 1,22.

По формуле

подставляя это значение получим
следовательно гипотеза о равномерном распределении случайных чисел полученных методом Неймана неотвергается .

Заключение

Установленный теоретический закон отличается незначительно от закона, полученного в результате эксперимента. Эти расхождения объясняются случайными обстоятельствами, связанными с ограниченным числом наблюдений.

Критерий Пирсона опровергает гипотезу о том, что псевдослучайные числа полученные методом Неймана не распределены по равномерному закону распределения с уровнем значимости α=0.25.

Критерий Колмогорова подтверждает гипотезу о равномерном распределении случайных чисел полученных методом Неймана с уровнем значимости α=0.1

Числовые характеристики близки к статистическим параметрам, характерных для равномерно распределенных чисел

Следовательно, случайные числа получаемые методом Неймана распределены равномерно на интервале (0,1).


Список литературы

1. Гмурман В. Е. - Теория вероятностей и математическая статистика.- М.: Высш. шк., 2003

2. Кремер Н. Ш. – Теория вероятностей и математическая статистика.- М.: Юнити, 2006

3. Крамер Г. – Математические методы статистики. – М.: Мир, 1975

4. Гнеденко Б. В. – Теория вероятностей и математическая статистика.- М.: Наука, 1970

5. Ветцель Е.С.; Овчаров Л.А. - Теория вероятностей. - М.:Наука,1986

6. Ермаков С.М.; Михайлов Г.А.- Статистическое моделирование. - М.: Наука, 1983