Содержание отчета
Описание алгоритмов генератора псевдослучайных чисел и определения длины периода и отрезка апериодичности.
Распечатки исходных текстов двух программ, реализующих данные алгоритмы .
Два графика, отображающих зависимость L и P от числа знаков после запятой у генерируемых случайных чисел.
Таблица значений стартовых чисел γ0 и соответствующих значений L и P в зависимости от числа знаков после запятой.
Распечатка программы вычисления и таблица значений χ2 при разных разбиениях r и разных γ0.
Анализ результатов и выводы по работе.
Вопросы к лабораторной работе
Как с помощью полученных γi смоделировать последовательность независимых испытаний, в каждом из которых вероятность наступления некоторого события А равна 0.4987?
Смоделировать случайную величину η, заданную рядом распределения
.
Лабораторная работа № 2
Моделирование случайных величин с заданным законом распределения
В первой лабораторной работе с помощью генератора псевдослучайных чисел получена и исследована на качество последовательность чисел, равномерно распределенных в интервале (0,1). Однако в практических задачах, возникающих при построении и реализации машинных моделей, необходимо уметь получать числа с любыми законами распределения. Для этого можно воспользоваться следующей теоремой.
Теорема. Случайная величина ξ , определенная на (a,b) и удовлетворяющая уравнению
,
или F(ξ)=
γ, (8)
имеет плотность распределения f(x).
В тех случаях, когда уравнение (8) аналитически разрешимо относительно ξ , получается явная формула ξ=F-1(γ) для разыгрывания случайной величины ξ . В противном случае следует воспользоваться методами преобразования случайных величин (см., например, [2]).
Варианты заданий.
Смоделировать случайную величину ξ с заданной функцией распределения
Таблица 2
|
x [- , ]
|
Порядок выполнения работы
Получить явную формулу для моделирования случайной величины с законом распределения, заданным преподавателем. Если необходимо, найти неизвестный параметр а.
Моделирование случайной величины выполнить с помощью последовательности чисел, полученных и исследованных в лабораторной работе № 1.
При тех же значениях r вычислить χ2 для новой последовательности и сделать заключение о соответствии смоделированной величины заданному закону распределения.
Содержание отчета
Вывод формулы для моделирования заданной случайной величины.
Распечатка исходного текста и результатов.
Гистограмма, построенная по результатам моделирования.
Вычисленные значения χ2 при разных r, сравнение с табл.1.
Заключение о предполагаемом законе распределения.
Лабораторная работа № 3
Вычисление интегралов
методом Монте- Карло
Общие положения
Оценка мат.ожидания
Пусть требуется приближенно вычислить интеграл
,
где функция g(x) задана на интервале a<x<b.
Выберем
произвольную плотность распределения
f ξ (x), определенную
на интервале (a,b) (т.е. произвольную
функцию fξ(x),
удовлетворяющую условиям f
ξ (x)>0 и
).
Введем эту плотность под знак интеграла
=
(9)
Последнее выражение
есть определение мат.ожидания функции
.
Но мат.ожидание функции мы можем оценить численно – с помощью метода Монте-Карло!
Как известно, среднее арифметическое одинаково распределенных случайных величин сходится по вероятности к их мат.ожиданию.
Тогда введем случайную величину
(10)
где ξ распределена с плотностью fξ(x).
Согласно ЦПТ
.
Последнее соотношение означает, что , если мы выберем N значений ξ1,ξ2,…, ξN, то при достаточно большом N
(11)
Это соотношение
показывает также, что с очень большой
вероятностью ошибка приближения не
превосходит
.
Однако дисперсия Dη, а следовательно, и оценка погрешности формулы (11) зависят от того, какую величину ξ мы используем. Действительно,
(12)
Согласно метода существенной выборки это выражение будет минимальным тогда, когда fξ(x) пропорциональна |g(x)|.
Конечно, выбирать очень сложные fξ(x) нельзя, так как процедура разыгрывания значений ξ станет очень трудоемкой. Но руководствоваться этой рекомендацией при выборе fξ(x) следует.
Рассмотрим пример вычисления интеграла методом Монте-Карло согласно вышеописанной процедуры.
Вычислим приближенно интеграл
.
Точное значение этого интеграла известно:
.
Будем использовать для вычисления две различные случайные величины ξ: с постоянной плотностью fξ(x)=2/π (т.е. ξ равномерно распределена в интервале (0, π/2 ) ) и с линейной плотностью fξ(x)=kx/π2 . Обе эти плотности вместе с подынтегральной функцией sinx построены на рис.5.
Из этого рисунка видно, что линейная плотность лучше, чем константа согласно рекомендаций метода существенной выборки. Поэтому можно ожидать, что второй способ вычисления даст лучший результат.
Пусть fξ(x)=2/π на интервале (0, π/2).
Тогда формула для разыгрывания ξ может быть получена из формулы (8) при а=0 и b= π/2:
ξ= πγ/2 ,
и формула (11) примет вид
=М1.
y y=kx/π2
y=sinx
y= 2/π
π/2
Рис.5.
Оценку дисперсии получим по формуле
=s2
.
Для разыгрывания γi можно воспользоваться таблицей случайных цифр (табл.3) или последовательностью, полученной в первой работе. Результат вычисления интеграла: I≈0.952, s2= 0.228.
Пусть теперь f ξ (x)=kx/ π2. Из условия нормировки к=8. А из формулы (8) для разыгрывания ξ получим
,
откуда после несложных вычислений получим
(13)
Таблица 3
