Метод Неймана
Для
получения последовательности с заданной
плотностью распределения можно
использовать метод Неймана. Из
датчика равномерно распределенных в
интервале (0, 1) случайных чисел независимо
выбираются пары чисел
,
из которых формируются преобразованные
пары
,
,
где
— интервал
возможных значений случайной величины
с
заданной функцией плотности
;
—
максимальное значение функции
.
В
качестве реализации случайной величины берется
число
из
тех пар
,
которых
выполняется неравенство:
.
Пары, не удовлетворяющие неравенству , выбрасываются.
Пары
случайных чисел
,
можно
рассматривать как координаты случайных
точек плоскости, равномерно распределенных
вдоль осей
и
внутри
прямоугольника
(см.
рис.). Пары
,
,
удовлетворяющие неравенству, — это
координаты случайных точек плоскости,
равномерно распределенных вдоль
осей
и
внутри
той части прямоугольника
,
которая расположена под
кривой
. Вероятность того,
что случайная точка плоскости, находящаяся
под кривой
,
окажется в элементарной полосе с
основанием
,
очевидно, пропорциональна
,
а вероятность попадания
точки под кривую
по
условию равна единице, что и требуется.
Метод кусочной аппроксимации
Сущность
этого метода состоит в следующем. Пусть
требуется получить случайную величину
с
функцией плотности
.
Предположим, что область возможных
значений величины
ограничена
интервалом
(неограниченное
распределение можно приближенно заменить
ограниченным). Разобьем
интервал
на
достаточно
малых интервалов
,
так, чтобы распределение
заданнойслучайной величины в
пределах этих интервалов можно было
довольно точно аппроксимировать
каким-нибудь простым распределением,
например равномерным, трапецеидальным
и т. д. В дальнейшем рассмотрим кусочную
аппроксимацию равномерным распределением (рис.
1.3).
Пусть
— вероятность попадания случайной величины
в
каждый из интервалов
.
Получать реализации величины
с
кусочно-равномерным распределением
можно, очевидно, в соответствии со
следующей схемой преобразования
случайных чисел: 1) случайным образом с
вероятностью
выбирается
интервал
;
2) формируется реализация
случайной
величины, равномерно распределенной в
интервале
;
3) искомая реализация
получается
по формуле
.
Случайный
выбор интервала
с
вероятностью
означает,
по существу, моделированиедискретной случайной
величины, принимающей
значений
,
с вероятностью
каждое,
что можно сделать достаточно просто
[11]. Интервал
разбивается
на
интервалов
длиной
каждый.
Из датчика случайных равномерно
распределенных в интервале (0, 1) чисел
выбирается некоторая реализация
.
Путем последовательного
сравнения
с
определяется
тот интервал
,
в котором оказывается
.
Рис. 1.3.
В основу этого процесса положен очевидный факт: вероятность попадания равномерно распределенной в интервале случайной величины в некоторый подинтервал равна длине этого подинтервала. Рассмотренный выше процесс представляет интерес не только как составной элемент метода кусочной аппроксимации, он широко используется в качестве алгоритма для моделирования дискретных случайных величин и случайных событий [10, 11].
Для моделирования случайных
величин методом кусочной аппроксимации
наиболее удобно при машинной реализации
выбирать вероятности попадания
во все интервалы
одинаковыми
,
а число
таким,
что
,
где
— целое число,
меньше или равное количеству двоичных
разрядов чисел, вырабатываемых
датчиком случайных чисел [10,
11]. В этом случае величины
должны
быть выбраны такими, чтобы
.
При
равенстве вероятностей
для
случайного выбора индекса
можно
использовать первые
разрядов
числа, извлекаемого из датчика равномерно
распределенных случайных чисел.
Используя рассмотренный прием, приходим к следующему способу преобразования равномерно распределенных случайных чисел в случайные числа с заданным законом распределения.
Из
датчика равномерно распределенных в
интервале (0, 1) случайных чисел извлекается
пара реализаций
.
Первые
разрядов
числа
используются
для нахождения адресов ячеек, в которых
хранятся величины
и
,
а затем по формуле
получается
реализация
случайной
величины
с
заданным законом распределения. Такой
алгоритм является довольно экономичным
по количеству требуемых операций,
которое не зависит от числа
,
т. е. не зависит от точности кусочной
аппроксимации. Однако с увеличением
точности аппроксимации возрастает
количество ячеек памяти, требуемое для
хранения величин
,
,
что является недостатком рассмотренного
метода, в особенности при больших
.
