Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все лекции семечки.doc
Скачиваний:
82
Добавлен:
22.05.2015
Размер:
410.11 Кб
Скачать

. Лекция 11 . Процедуры генерации последовательностей псевдослучайных чисел

Одной из исторически первых процедур получения последовательностей псевдослучайных чисел была процедура, получившая название метода серединных квадратов. Пусть имеется 2n-разрядное число, меньшее единицы: xi=0,a1a2a2n. Возведем его в квадрат: xi2=0,b1b2b4n, а затем отберем средние 2n разрядов xi+1=0,bn+1bn+2b3n, которые и будут являться очередным числом псевдослучайной последовательности. Недостаток данного метода – наличие корреляции между числами последовательности, а в ряде случаев случайность может вообще отсутствовать.

Широкое применение при моделировании систем на ЭВМ получили конгруэнтные процедуры генерации псевдослучайных последовательностей, представляющие собой арифметические операции, в основе которых лежит понятие конгруэнтности. Два целых числа a и b конгруэнтны (сравнимы) по модулю m, где m – целое число, тогда и только тогда, когда существует такое целое число k, что ab = km, т.е. если разность чисел a и b делится на m и если числа a и bдают одинаковые остатки от деления на абсолютную величину числа m. Конгруэнтные процедуры являются чисто детерминированными, т.к. описываются в виде рекуррентного соотношения:

Xi = i X0 + (i  1) / (  1) (mod M),

где Xi, , , M – неотрицательные целые числа. Если заданы начальное значение X0, множитель и аддитивная константа , то данное соотношение однозначно определяет последовательность целых чисел {Xi}, составленную из остатков деления на M членов последовательности {i X0 + (i  1) / (  1)}. Таким образом, по целым числам последовательности {Xi} можно построить последовательность {xi} = {Xi / M} рациональных чисел из интервала (0, 1).

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

Эффективность статистического моделирования на ЭВМ и достоверность получаемых результатов существенным образом зависит от качества исходных (базовых) последовательностей псевдослучайных чисел, которые являются основой для получения стохастических воздействий на элементы моделируемой системы. Прежде чем приступать к реализации моделирующих алгоритмов на ЭВМ, необходимо убедиться в том, что исходная последовательность псевдослучайных чисел удовлетворяет предъявляемым к ней требованиям, т.к. в противном случае даже при наличии абсолютно правильного алгоритма моделирования процесса функционирования системы по результатам моделирования нельзя достоверно судить о ее характеристиках. Поэтому, все применяемые генераторы случайных чисел должны пройти тщательное тестирование перед моделирование системы. Тестирование представляет собой комплекс проверок по различным статистическим критериям, включая в качестве основных тесты на равномерность, стохастичность и независимость.

Проверка равномерности последовательности псевдослучайных квазиравномерно распределенных чисел может быть выполнена по ее гистограмме с использованием косвенных признаков. Суть проверки по гистограмме сводится к следующему: выдвигается гипотеза о равномерности распределения числе в интервале (0, 1), который затем разбивается на m равных частей. Тогда при генерации последовательности {xi} каждое из чисел x с вероятностью pj=1/m попадает в один из подынтервалов. Очевидно, что если числа xi принадлежат псевдослучайной квазиравномерно распределенной последовательности, то при достаточно больших значениях числа испытаний N экспериментальна гистограмма приблизится к теоретической прямой 1/m. Оценка степени приближения, т.е. равномерности последовательности {xi}, может быть проведена с использованием критериев согласия. На практике обычно принимается m=2050, N=(102103).

Проверка стохастичности последовательности псевдослучайных чисел {xi} наиболее часто проводится методами комбинаций и серий. Сущность метода комбинаций сводится к определению закона распределения длин участков между единицами (нулями) или закона распределения (появления) числа единиц (нулей) в n-разрядном двоичном числе Xi. На практике длину последовательности N берут достаточно большой и проверяют все n разрядов или только l старших разрядов. Теоретически вероятность появления j единиц в l разрядах P(j, l) двоичного числа Xi описывается биномиальным законом распределения, исходя из независимости отдельных разрядов. После нахождения теоретических и экспериментальных вероятностей P(j, l) гипотеза о стохастичности проверяется с использованием критериев согласия.

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