- •1. Случайные числа и случайные цифры. Таблицы случайных цифр.
- •3. Датчики случайных чисел.
- •4. Сравнение трех способов с практической точки зрения.
- •5. Метод псевдослучайных чисел.
- •6. Стандартный датчик псевдо-сдучайных чисел реализованный на эвм
- •7. Простые алгоритмы. Длина отрезка апериодичности
- •9. Алгоритм д. Неймана
- •10. Алгоритм д. Леммера
- •11. Тесты для проверки случайных цифр
- •12. Проверка псевдослучайных чисел.
- •13. Моделирование дискретных случайных величин.
- •14. Оптимизация метода интервалов
- •15. Моделирование случайных событий.
- •Моделирование случайных непрерывных величин.
- •Моделирование многомерной случайной точки.
- •Поправки к приближенным распределениям.
- •Разделение области моделирования случайной величины.
- •Общая характеристика методов.
- •Метод Неймана.
- •Модифицированный метод Неймана.
- •Метод Метрополиса
- •Моделирование усеченных распределений.
- •Выбор равномерно распределенных точек в сложных пространственных областях.
- •Простейший метод вычислений.
- •Геометрический метод.
- •Сравнение точности методов Монте Карло.
- •Сравнение трудоемкости различных алгоритмов Монте Карло.
- •31. Моделирование процесса переноса иМетод имитации для решения задач о прохождении излучения через слой.
13. Моделирование дискретных случайных величин.
Рассмотрим дискретную случайную величину с распределением
(1)
гдеpi = P{ = xi}. Для того чтобы вычислить значения этой величины разделим интервал 0 у < 1 на интервалы i такие (рис. 14), что длина i фавна рi .
Т е о р е м а 1. Случайная величина , определенная формулой
= xi, когда i , (2)
имеет распределение вероятностей (1).
Доказательство занимает одну строку:
P{ = xi} =Р{i } = длина i = рi.
Для практической реализации формулы (2) удобно в накопителе ЭВМ расположить подряд значения х1, x2, ..., xn и p1, p1+p2, p1+p2+p3, ..., 1. Для того чтобы вычислить очередное значение , находим очередное . Затем сравниваем с p1. Если < p1, то = x1; если p1, то сравниваем с p1+p2. Если < p1+p2, то = x2; если p1+p2, то сравниваем с p1+p2+p3, и т.д.
14. Оптимизация метода интервалов
Легко видеть, что в случае, когда = xi (1 i n-1), приходится осуществить i сравнений, и лишь в случае, когда = xn , число сравнений равно n–1. Поэтому среднее число сравнений, затрачиваемых при получении одного значения , равно
n–1
t = ipi + (n – 1)pn.
i=1
Так как порядок значений x1, ..., хп в (1) произволен, то выгодно расположить их в порядке убывания вероятностей, т. е. так, чтобы p1 p2 ... pn. Тогда величина t будет минимальной.
Расчет по формуле (2) заметно упрощается в случае, когда все значения x1,..., хп равновероятны: p1 = ... = pn = 1/n. В этом случае многократные сравнения не нужны: так как i – это интервал (i–1)/n < i/n, то условие i
равносильно условию i–1 n < i, или Ц(n) = i – 1. Вместо формулы (2) можно записать, что
= xi, где i = 1+ Ц(n).
Теорему 1 легко обобщить на случайную величину, которая может принимать бесконечную последовательность значений х1, x2, ..., xn, ... и имеет распределение
.
В этом случае числа хп и рn задаются формулами, и вычисление их при каждом расчете может оказаться весьма трудоемким. Тогда можно выбрать число n0 так, чтобы сумма вероятностей p1+...+pn0 была достаточно близкой к 1, и значения х1, ..., xn0 и p1, ..., pn0 заготовить заранее. Вычислять хi и рi по формулам придется только при i > n0, а это будет достаточно редко.
15. Моделирование случайных событий.
Моделирование случайных событий сводится к моделированию дискретных случайных величин. Чтобы показать, как это делается, рассмотрим четыре задачи, в каждой из которых требуется моделировать последовательность одинаковых независимых испытаний.
В каждом из испытаний может наступить или не наступить некоторое событие А, вероятность наступления которого Р{A}=р задана.
Рассмотрим случайную величину , называемую индикатором события А, которая равна 1 при наступлении А и 0 при наступлении противоположного события Ā. Распределение задается таблицей
Для осуществления каждого испытания надо найти случайное число и проверить неравенство < p. Если оно выполнено, то событие А в этом испытании произошло, а если p, то нет.
С испытанием связана полная группа попарно несовместных событий А1, ..., An и заданы вероятности Р{Ai} = рi.
Для моделирования таких испытаний рассмотрим случайную величину – номер наступившего события. Очевидно, распределение выражается таблицей
Для осуществления каждого испытания надо выбрать случайное число и по теореме 1 разыграть значение. Если = i, то произошло событиеАi .
С испытанием связаны два независимых совместных события А иВ, вероятности которых заданы:Р{А} = pA, Р{В} = pB.
Ввиду независимости событий АиВможно последовательно моделировать их наступление в каждом испытании: сперва по числу1 методом определить, наступило ли событиеА, а затем точно также по числу2определить, наступило ли событиеВ .
Однако часто более экономен другой способ. Рассмотрим полную группу попарно несовместных событий, состоящую из четырех событий:
A1 = AB, A2 = AB, A3 = AB, A4 = AB. (3)
Вероятности этих событий легко вычислить:
p1 = pApB, p2 = pA(1 – pB), p3 = pB(1 – pA), p4 = (1 – pA)(1 – pB).
Следовательно, используя одно случайное число , возможно определить, какой из этих четырех исходов наступил в моделируемом испытании.
С испытанием связаны два зависимых совместных события А и В, и заданы вероятности Р{А} = pA, Р{В} = pB , Р{АВ} = рАB..
В этом случае также следует рассмотреть полную группу событии (3), только вероятности этих событий вычисляются иначе:
p1 = pAB, p2 = pA – pAB, p3 = pB – pAB, p4 = 1 – pA – pB + pAB.
Впрочем, и в этом случае можно осуществить последовательное моделирование событий А и В, используя два случайных числа 1, 2 . Сперва по числу 1 определяем, наступило ли событие А. Если А наступило, то, зная условную вероятность Р{В/А} = рAB/рA, можно по числу 2 определить, наступило ли событие В: условием наступления В служит выполнение неравенства 2 < Р{В/А}. Если же событие A не наступило, то наступление B придется разыгрывать с помощью условий вероятности Р{В/Ā} , которая равна Р{В/Ā} = (pB — рАВ)/(1—рА).