Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
123.PDF
Скачиваний:
84
Добавлен:
24.02.2016
Размер:
1.24 Mб
Скачать

В

качестве а берут число близкое

к2n2 , x0 – любое

нечётное число

меньше

М, а значение С подбирают

экспериментально,

оно влияет на

корреляционные свойства последовательности.

 

3.4.2. Проверка качества последовательностей РРСЧ

 

Эффективность

статистического

моделирования

систем

на

ЭВМ

достоверность

получаемых

результатов существенным

образом

зависят

от

качества исходных (базовых)

последовательностей псевдослучайных

 

чисел,

 

которые являются основой для получения стохастических воздействий

на

элементы

моделируемой

системы. Поэтому, прежде

чем

приступать

к

реализации моделирующих алгоритмов на ЭВМ, необходимо убедиться в том,

 

что

исходная

последовательность

псевдослучайных

чисел

удовлетворяет

предъявляемым к ней требованиям, так как в противном случае даже при

наличии

абсолютно

правильного

алгоритма

моделирования

проце

функционирования моделируемой

системы по результатам моделирования

нельзя

будет достоверно

судить

о

характеристиках

системы. Поэтому

все

применяемые генераторы случайных чисел должны перед моделированием

системы

пройти

тщательное

предварительное

тестирование, которое

представляет

собой

комплекс

проверок

по

 

различным

статистически

критериям, включая в качестве основных проверки(тесты) на равномерность,

стохастичность и независимость. Кроме того,

очень важными показателями

качества базовой последовательности являются длина периода и длина отрезка

апериодичности. Рассмотрим возможные методы проведения таких проверок,

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

 

1) Проверка равномерности.

 

 

 

 

 

Проверка

равномерностипоследовательностей

 

псевдослучайных

квазиравномерно распределенных чисел{хг} может быть выполнена по

гистограмме или с использованием косвенных признаков.

 

 

 

а) Проверка по гистограмме (рис.3.4).

 

 

 

 

Суть проверки по гистограмме сводится к следующему. Выдвигается

гипотеза о

равномерности распределения чиел в

интервале(0 1).

Затем

интервал

(0 1)

разбивается на m

равных частей. При генерации

последовательности РРСЧ подсчитывается количество попаданийNk в каждый

из m

подинтервалов. Вычисляется

относительная

частота

попадания

случайных чисел последовательности {хг} в каждый из подинтервалов

 

Ck= Nk/N,

m

где N = å Nk − общее количество чисел в последовательности {хг}.

k =1

85

Сk

1 2 3 4 ... m

1

m

...

xi

0

 

1

 

 

 

Рис.3.4. Проверка равномерности по гистограмме

Очевидно, что при равномерности последовательности чисел, частоты должны быть близкими при достаточно больших N к теоретической вероятности попадания в подинтервалы, равной 1/m.

Оценка степени приближения, т. е. равномерности последовательности {хг}, может быть проведена с использованием критериев согласия. На практике обычно принимается т = 20 ¸50, N = (102 ¸103)m.

б) Проверка по косвенным признакам.

Суть проверки равномерности по косвенным признакам сводится к следующему. Вся последовательность {хг} разбивается на пары чисел:

(x1, x2), (x3, x4), ... , (x2i-1, x2i), ... , (xN-1, xN).

Затем подсчитывают число пар K, для которых выполняется условие:

 

 

 

x22i -1 + x22i <1.

 

 

 

 

 

Геометрически это означает, что точка с координатами(x2i-1,

x2i)

расположена внутри четверти круга радиусаR=1, вписанного в единичный

квадрат (рис. 3.5).

случае точка(x2i-1, x2i) всегда

 

 

 

 

 

В

общем

попадет

внутрь

единичного

квадрата. Тогда теоретическая вероятность попадания этой точки в четверть

круга равна отношению площади четверти круга

к

площади

единичного

квадрата:

P = S1/4 круга/Sквадрата = (πR2/4)/(1·1) = π/4.

 

 

 

 

 

 

 

 

 

 

Если

числа

последовательности{хг} равномерны,

то

в

силу

закона

больших чисел теории вероятностей при большихN относительная частота

попадания

точки

в единичный квадрат, равная

отношению числаK пар (x2i-1,

x2i), для

которых проверочное условие выполнелось к общему числуN/2

пар

последовательности должна сходиться к Р:

2K ® p .

N 4

86

x2i

1

 

 

 

R

 

0

1

x2i-1

Рис. 3.5. Проверка равномерности по косвенным признакам

2) Проверка стохастичности

 

 

 

 

чисел{хг}

 

Это

исследование

последовательностей

псевдослучайных

 

наиболее часто проводится методами комбинаций и серий.

 

 

 

а) метод комбинаций

 

 

 

 

 

 

 

Сущность

метода

комбинаций

сводится

к

определению

зако

распределения закона распределения(появления) числа единиц (нулей) в n-

 

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

 

берут достаточно большой и проверяют всеп разрядов или только l старших

 

разрядов числа хг .

 

 

 

 

 

 

 

Теоретически закон появления j единиц в l разрядах двоичного числа

 

описывается

 

исходя из

независимости

отдельных

разрядов биномиальным

законом распределения:

 

P( j,l) = C j P j (1)[1 - P(1)]l - j

= C j Pl (1),

 

 

 

l

 

l

 

 

где P(j,l) − вероятность появления j единиц в l разрядах числа хг; P(1)=P(0)=0,5

− вероятность

появления единицы

(нуля)

в любом

разряде

числахг;

Clj = l!/[ j!(l - j)!] .

 

 

 

 

Тогда при

фиксированной длине выборкиN теоретически ожидаемое

число появления случайных чисел jс единицами в проверяемыхl разрядах

будет равно

= NClj Pl (1) .

 

 

 

 

n j

 

 

 

 

После

нахождения

теоретических

и

экспериментал

вероятностей P(j,l) или чисел nj при различных значениях l £n гипотеза о стохастичности проверяется с использованием критериев согласия.

б) метод серий

В этом случае вся последовательность чисел{х } разбивается на

г

элементы 1-го и 2-го рода по следующему правилу:

ìa ,

если

xi < p;

xi = í

если

xi ³ p,

îb

где 0< p <1.

87

Серией называется любой отрезок последовательности{хг}, состоящий из следующих друг за другом элементов одного и того же рода. Причем число элементов в отрезке (а или b) называется длиной серии.

После разбиения последовательности {хг} на серии первого и второго рода будем иметь, например, последовательность вида

.. .aabbbbaaabaaaabbbab...

Так как

случайные числа

и b в данной последовательности

независимы

и принадлежат

последовательности {хг}, равномерно

распределенной на интервале (0, 1), то теоретическая вероятность появления серии длиной j в последовательности длинойl в N опытах (под опытом

здесь понимается генерация числаxi

и проверка условия xi<p) определится

формулой Бернулли

 

 

 

 

 

 

P( j,l) = c j p j

(1 - p)l - j ,

j =

 

l =

 

.

0,l,

1, n

l

 

 

 

 

 

 

В случае экспериментальной проверки оцениваются частоты появления серий длиной j. В результате получаются теоретическая и экспериментальная зависимости P(j,l), сходимость которых проверяется по известным критериям согласия, причем проверку целесообразно проводить при различных значениях

р(0<р<1\) и l.

3) Проверка независимости

 

 

 

 

 

 

 

 

Случайные

 

величины ξ и η

называются

независимыми,

если

закон

 

распределения каждой из них не зависит от того, какое значение приняла

 

другая.

 

 

 

 

 

 

 

 

 

 

 

 

Проверка

 

 

независимости

 

проводится

на

основе

выч

корреляционного

 

момента.В

общем

 

случае

корреляционный

моме

случайных величин ξ и η

с возможными значениямиxi и

yj определяется по

 

формуле

 

 

 

 

 

 

 

 

 

 

 

 

Kxh = åå(xi - M [x ])( yi - M [h])Pij

 

 

 

 

 

 

 

 

i

j

 

 

 

 

 

 

 

 

 

где Рij – вероятность того, что (ξ, η) принимает значение (xi, yj), а М[ξ], М[η] –

 

математические ожидания случайных величин.

 

 

 

 

 

Если случайные числа независимы, то Kξη = 0.

 

 

 

 

Независимость элементов последовательности {хг} может быть проверена

 

путем введения

в

рассмотрение последовательности{yr} такой, что

{yr} =

 

{хг+τ}, где τ – величина сдвига последовательностей.

удобней

использоват

Иногда

вместо

корреляционного

 

момента

коэфициент корреляции

 

 

Kxh

 

 

 

 

 

 

 

 

 

 

r xh

=

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

s x s h

 

 

 

 

 

 

88

где σξ и ση среднеквадратические отклонения величин ξ и η.

Возможные значения коэфициента корреляции лежат в пределах0 от (полная независимость) до 1 (жесткая функциональная связь).

При любом t ¹ 0 для достаточно больших N с доверительной вероятностью β справедливо соотношение

rxh

 

£ b

1

.

 

 

 

 

 

 

N

 

 

Если вычисленное экспериментальным путёмρ лежит в этих пределах, то вероятностью β можно утверждать, что последовательность корреляционно независима.

При проведении оценок коэффициента корреляции на ЭВМ удобно для вычисления использовать следующее выражение:

 

 

 

 

 

 

 

 

1

 

N -t

 

 

 

 

 

 

 

1

 

N -t N -t

 

 

 

 

 

 

(

 

 

 

 

å xi xi +t -

 

 

 

 

 

å xi å xi +t )

 

 

 

 

 

 

 

 

 

 

(N

-t )2

 

 

 

r xh

=

 

N -t i =1

 

 

 

 

 

i =1 i =1

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где

 

 

 

 

 

 

 

 

 

 

D[xi ]D[xi +t ]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

N -t

 

 

 

 

1

 

 

N -t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D[x

 

] = [

 

 

] å

(x2

-

 

 

 

 

( å x )2 ) ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

(N -t )

 

 

i=1

i

 

 

(N -t )2

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i=1

 

 

 

 

 

 

 

 

 

 

 

1

 

 

N -t

(x2

 

 

 

1

 

N -t

 

 

 

)2 ) .

 

D[x

i +t

] =

 

 

å

 

-

 

( å x

i

+t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N -t

 

 

i =1

i +t

 

 

 

(N - t)2

i =1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4) Определение длины периода и длины отрезка апериодичности

При статистическом моделировании с использованием программных генераторов псевдослучайных квазиравномерных последовательносте важными характеристиками качества генератора являетсядлина периода Ри

длина отрезка апериодичностиL. Длина отрезка апериодичностиL

псевдослучайной последовательности {хг}, заданной уравнением

X i +1 = ( A X i + C) mod M , xi=Xi/M,

есть наибольшее целое число, такое, что при 0 £ k < i £ L событие P(xi = xk )

не имеет

места. Это означает,

что

все числаxi в

пределах отрезка

апериодичности не повторяются.

 

 

 

 

 

Очевидно, что

использование

при

моделировании

систем - после

довательности

чисел {хг}, длина которой

больше отрезка апериодичностиL,

может привести к повторению испытаний в тех же условиях, что и раньше, т.

е. увеличение числа реализаций не дает новых статистических результатов.

Способ

экспериментального

определения

длины

периодаР и

длины

отрезка апериодичности L сводится к следующему.

89

значениямиx и x и
0 p
справедливоxi3=xi3+p.

1)Запускается программа генерации последовательности чисел{хг} с

начальным

значением x0

на V

значений, фиксируется xv (обычно

полагаютV = (1 ¸ 5)106 );

 

 

2) Запуск программы генерации сx0 и фиксируетсяi1 и i2, такие, что в первый и во второй раз выполняется условиеxi1=xv и xi2=xv. Вычисляется длина периода последовательности Р=i2-i1.

3) Запуск программы генерации с начальными фиксируется минимальный номерi3, для которого Вычисляется длина отрезока апериодичности L=i3+p.

Теоретически при использовании длина периода не может быть больше чем 2n, где n − разрядность ЭВМ. Для увеличения длины периода прибегают к специальным приемам. Рассмотрим некоторые из них.

1)

Использование рекуррентных формул порядка r

 

xi +1 = Ф(xi , xi-1, ... , xi -r +1) .

Естественно, это ведёт

к увеличению затрат машинного времени на

получение чисел и ограничивает возможности его применения на практике.

2)

Метод возмущений

 

 

ìФ(xi ), если

i mod M ¹ 0,

 

xi +1 = í

i mod M = 0,

 

îy (xi ), если

т.е. если i не кратноМ, то вычисление значения последовательности осуществляется с помощью функцииФ, если кратно, то используется другая функция ψ.

3) Метод Макларена − Марсальи Метод основан на комбинировании двух датчиков РРСЧ, построенных с

использованием мультипликативного метода. Пусть {ai} и {bi} − последовательности, порождаемые с помощью этих датчиков. Выходную последовательность обозначим как {ci}. Будем использовать вспомогательный массив V={V1, V2, ..., Vk}.

Вначале массив заполняется элементами последовательности от первого датчика {ai}:

Vi= ai, i=1 ¸k.

 

 

случайный

Затем с помощью числа от второго датчика разыгрывается

выбор номера s элемента в массиве V:

 

 

 

s=[bjk], где скобки означают «целая часть».

пересылается

в

Выбранный

элемент

массива

последовательность, а на его место помещается очередное значение из

последовательности {ai}:

 

 

 

 

 

Этот

cj= Vs, Vs= ak+j ( j=1,2, ...).

ослабить

зависимость

между

ч

метод

позволяет

последовательности {ci}

и получить

чрезвычайно

большие периоды, если

 

периоды последовательностей {ai} и {bi} − взаимно простые числа.

 

 

90

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]