Генерация неравномерных случайных величин или выборка псевдослучайных чисел — это числовая практика генерации псевдослучайных чисел (ПСЧ), которые следуют заданному распределению вероятностей . Методы обычно основаны на наличии равномерно распределенного генератора ПСЧ . Затем вычислительные алгоритмы используются для преобразования одной случайной величины X или часто нескольких таких величин в новую случайную величину Y таким образом, чтобы эти значения имели требуемое распределение. Первые методы были разработаны для моделирования Монте-Карло в Манхэттенском проекте , [ требуется ссылка ] опубликованном Джоном фон Нейманом в начале 1950-х годов. [1]
Для дискретного распределения вероятностей с конечным числом n индексов, при которых функция массы вероятности f принимает ненулевые значения, базовый алгоритм выборки прост. Интервал [0, 1) делится на n интервалов [0, f (1)), [ f (1), f (1) + f (2)), ... Ширина интервала i равна вероятности f ( i ). Берется равномерно распределенное псевдослучайное число X и ищется индекс i соответствующего интервала. Определенное таким образом i будет иметь распределение f ( i ).
Формализовать эту идею становится проще, если использовать кумулятивную функцию распределения.
Удобно положить F (0) = 0. Тогда интервалы n будут просто [ F (0), F (1)), [ F (1), F (2)), ..., [ F ( n − 1), F ( n )). Основная вычислительная задача тогда состоит в определении i, для которого F ( i − 1) ≤ X < F ( i ).
Это можно сделать с помощью разных алгоритмов:
Общие методы создания независимых выборок:
Общие методы создания коррелированных выборок (часто необходимых для распределений необычной формы или высокой размерности):
Для создания нормального распределения :
Для генерации распределения Пуассона :
В научной библиотеке GNU есть раздел под названием «Распределения случайных чисел» с процедурами для выборки в соответствии с более чем двадцатью различными распределениями. [5]
Любой, кто рассматривает арифметические методы получения случайных цифр, конечно, находится в состоянии греха.Также в сети имеется низкокачественный скан оригинальной публикации.