Выборка псевдослучайных чисел - Википедия - Pseudo-random number sampling
Выборка псевдослучайных чисел или же генерация неравномерной псевдослучайной переменной это числовой практика создания псевдослучайные числа которые распределяются согласно заданному распределение вероятностей.
Методы отбора проб не-равномерное распределение обычно основаны на наличии генератор псевдослучайных чисел производящие числа Икс которые распределены равномерно. Затем используются вычислительные алгоритмы для управления одним случайное изменение, Икс, или часто несколько таких вариаций, в новую случайную переменную Y так что эти значения имеют требуемое распределение.
Исторически сложилось так, что основные методы выборки псевдослучайных чисел были разработаны для Моделирование Монте-Карло в Манхэттенский проект;[нужна цитата ] они были впервые опубликованы Джон фон Нейман в начале 1950-х гг.[1]
Конечные дискретные распределения
Для дискретное распределение вероятностей с конечным числом п индексов, по которым функция массы вероятности ж принимает ненулевые значения, основной алгоритм выборки прост. Интервал [0, 1) делится на п интервалы [0,ж(1)), [ж(1), ж(1) + ж(2)), ... Ширина интервала я равна вероятностиж(яРисует равномерно распределенное псевдослучайное число Икс, и ищет индекс я соответствующего интервала. Столь решительный я получит распространениеж(я).
Формализовать эту идею становится проще, если использовать кумулятивную функцию распределения.
Удобно установить F(0) = 0. п интервалы тогда просто [F(0), F(1)), [F(1), F(2)), ..., [F(п − 1), F(п)). Тогда основная вычислительная задача - определить я для которого F(я − 1) ≤ Икс < F(я).
Это можно сделать по разным алгоритмам:
- Линейный поиск время вычислений, линейное поп.
- Бинарный поиск время вычислений идет с журналомп.
- Индексированный поиск,[2] также называется метод точки отсечки.[3]
- Метод псевдонима время вычислений является постоянным с использованием некоторых предварительно вычисленных таблиц.
- Есть и другие методы, которые требуют постоянного времени.[4]
Непрерывные распределения
Общие методы для создания независимый образцы:
- Отбор проб отбраковки для произвольных функций плотности
- Выборка с обратным преобразованием для распределений, чьи CDF известен
- Выборка срезов
- Алгоритм зиккурата, для монотонно убывающих функций плотности, а также для симметричных унимодальных распределений
- Генератор случайных чисел свертки, сам по себе не метод выборки: он описывает использование арифметики поверх одного или нескольких существующих методов выборки для создания более сложных распределений.
Общие методы для создания коррелированный образцы (часто необходимо для распределений необычной формы или большой размерности):
- Цепь Маркова Монте-Карло, общий принцип
- Алгоритм Метрополиса – Гастингса
- Выборка Гиббса
- Выборка срезов
- Цепь Маркова с обратимым прыжком Монте-Карло, когда количество измерений не фиксировано (например, при оценке модель смеси и одновременно оценивая количество компонентов смеси)
- Фильтры твердых частиц, когда наблюдаемые данные связаны в Цепь Маркова и должны обрабатываться последовательно
Для создания нормальное распределение:
Для создания распределение Пуассона:
Программные библиотеки
Научная библиотека GNU имеет раздел под названием «Распределение случайных чисел» с процедурами выборки более чем из двадцати различных распределений.
Сноски
- ^ Фон Нейман, Джон (1951). «Различные методы, используемые в связи со случайными цифрами» (PDF). Журнал исследований Национального бюро стандартов, серия прикладной математики. 3: 36–38.
Любой, кто рассматривает арифметические методы получения случайных цифр, конечно, находится в состоянии греха.
Также в сети есть некачественный скан оригинала публикации. - ^ Рипли (1987)[страница нужна ]
- ^ Фишман (1996)[страница нужна ]
- ^ Фишман (1996)[страница нужна ]
Литература
- Деврой, Л. (1986) Генерация неоднородной случайной величины. Нью-Йорк: Спрингер
- Фишман, Г.С. (1996) Монте-Карло. Концепции, алгоритмы и приложения. Нью-Йорк: Спрингер
- Hörmann, W .; Дж. Лейдольд, Дж. Дерфлингер (2004, 2011) Автоматическая генерация неоднородной случайной величины. Берлин: Springer.
- Кнут, Д. (1997) Искусство программирования, Vol. 2 Получисловые алгоритмы, Глава 3.4.1 (3-е издание).
- Рипли, Б. (1987) Стохастическое моделирование. Вайли.