О компьютерном моделировании случайных величин УДК 519.688:541
М.В. Кретов
О КОМПЬЮТЕРНОМ МОДЕЛИРОВАНИИ СЛУЧАЙНЫХ ВЕЛИЧИН
Рассматриваются некоторые варианты компьютерного моделирования случайных величин дискретного и абсолютно непрерывного типов. Приводятся примеры моделирования случайных величин, распределенных по конкретным вероятностным законам распределения.
Some variants of computer modelling of random variables of discrete and absolutely continuous types are considered. Examples of modelling of the random variables distributed on concrete laws of probability of distribution are resulted.
1. Моделирование случайной величины, распределенной по равномерному закону
Непрерывная случайная величина 4 имеет равномерное распределение на отрезке [a, b], если ее функция распределения задается следующей формулой:
0, если x < a,
F(x) =
x — a _______ т
----, если a < x < b,
b — a
1, если x > b.
Плотность распределения вероятностей при этом имеет вид:
г/ \ I, 1 , если a < x < b, f (x ) = <! b — a
[0, если x < a и x > b.
если x < a и x > Ь.
Математическое ожидание и дисперсия случайной величины £, соответственно равны [3]:
^, D^=^b-^)2 .
2 12
Обозначим буквой Я случайную величину с равномерным распределением на отрезке [0,1] . Для этой случайной величины функция распределения и плотность распределения вероятностей соответственно имеют вид:
0, если х < 0,
Рк (х) = <! х, если 0 < х < 1,
1, если х > 1,
77
Вестник КГУ. 2005. Вып. 1—2. Сер. Информатика и телекоммуникации. С. 77 — 83.
78
, ч Г1, если 0 < х < 1,
(х) = \
[0, если х < 0 и х > 1.
Если [, г2 ] с [0,1], то вероятность
р (1 < Я < Г2 ) = Рк (г2 ) - (г1) = Г 2 - г1.
Моделировать случайную величину Я можно многими способами
[1].
Мы рассмотрим метод псевдослучайных последовательностей, который наиболее просто реализуется в компьютере. Для получения псевдослучайной последовательности используем алгоритм, который называется методом середины квадратов [4]. Поясним его на примере. Возьмем некоторое число г0 . Пусть г0 = 0,8567. Возведем его
в квадрат: г02 = 0,73393489. Выберем четыре средние цифры этого числа и положим г1 = 0,3934. Затем возводим г1 в квадрат: = 0,15476356, и снова выбираем четыре средние цифры. Получаем г2 = 0,4763. Далее находим г22 = 0,22686169; пр < 10; г32 = 0,47073321; г4 = 0,0733 и т. д. Последовательность чисел г1, г2, к принимают за последовательность значений случайной величины Я, имеющей равномерное распределение на отрезке [0,1]. Для оценки степени приближения последовательности г1, г2, к к последовательности случайных чисел с равномерным распределением используют статистические критерии, например, аналогичные критерию, который используется в работе [2].
2. Моделирование последовательности независимых случайных испытаний
Пусть проводится последовательность к независимых испытаний. В результате каждого испытания может произойти одно из п несовместных событий А1, А2,..., Ап, объединение которых совпадает с пространством элементарных событий О. Известна вероятность появления каждого события р1 = Р(А,), 1 = 1,2,..., п, которая не изменяется
п
при переходе от одного испытания к другому. Очевидно, что ^ Р1 = 1.
1=1
Моделирование последовательности испытаний проводится следующим образом. Разделим отрезок [0,1] на п участков Д1, Д2, к, Дп, длины которых соответственно равны р1, р2, к, рп. Получаем последовательность значений г1, г2,..., Гк случайной величины Я. Если г1 е Д т, то считаем, что в 1 -м испытании наступило событие Ат, так как
Р(Я еД т ) = Р(Ат ).
3. Моделирование случайной величины дискретного типа
А. Общий алгоритм моделирования.
Если случайная величина £, дискретная, то ее моделирование можно свести к моделированию независимых испытаний. В самом деле, пусть имеет место следующий ряд распределения:
I x1 X 2 xn
р(| = Xi) Pl P2 Pn
Обозначим через Аі событие, состоящее в том, что случайная вели-
П
чина £, примет значение х, при этом и Аі = О. Тогда нахождение зна-
І=1
чения, принятого случайной величиной £, в результате испытания, сводится к определению того, какое из событий А1, А2, ..., АП появится. Так как события А1,А2,...,АП несовместны и вероятность появления каждого из них не изменяется от испытания к испытанию, то для определения последовательности значений, принятых случайной величиной |, можно использовать алгоритм моделирования последовательности независимых испытаний.
79
Б. Моделирование случайной величины с биномиальным распределением.
Случайная величина £, считается распределенной по биномиальному закону, если
=к)=р(к, п)=сПрк (1 - рУ-к,
где к = 0,1, 2,..., п; р — вероятность появления некоторого события A в каждом отдельно взятом испытании; р(к, п) — вероятность появления события A в п независимых испытаниях к раз.
Введем случайную величину £, * — число появлений события A в i -ом испытании, i = 1, 2,..., п. Для этой величины имеет место:
Р( * = 1) = р, P(% = 0) = 1 - р. (1)
Тогда случайное число к появлений события A в п испытаниях
определяется по формуле
к = ^1 +^2 +... + £п . (2)
Исходя из формул (1) и (2), значения случайной величины к определяются следующим образом:
1) находят последовательность значений г1,г2,...,гп случайной величины R;
2) для каждого числа r*, i = 1,2,..., п проверяют, выполняется ли неравенство г* < р; если неравенство выполняется, то полагают = 1; в противном случае считают = 0;
80
3) находят сумму значений п случайных величин ^, которая совпадает со значением к.
Повторяя этот алгоритм, получим последовательность значений к1, к2, к случайной величины с биномиальным законом распределения.
В. Моделирование случайной величины, распределенной по закону Пуассона.
Распределением Пуассона называется распределение вероятностей дискретной случайной величины, задаваемое формулой:
Р( = к) = к. е -, (к = 0,1,2,...),
где к — число событий простейшего потока, наступающих за некоторый промежуток времени. Распределение Пуассона применяется вместо биномиального распределения тогда, когда число п независимых испытаний велико (порядка нескольких сотен), а вероятность р появления события в каждом отдельно взятом испытании мала, при этом желательно, чтобы имело место пр < 10 .
Алгоритм моделирования случайной величины £,, распределенной по закону Пуассона при заданном параметре а можно представить следующим образом:
1) выбираем п таким образом, чтобы вероятность р = а была доста-
п
точно малой, например, меньше 0,01;
2) получаем последовательность значений г1, г2,..., гпслучайной величины К, равномерно распределенной на отрезке [0,1];
3) для каждого числа , I = 1,2,..., п проверяем, выполняется ли неравенство < р; если это неравенство выполняется, то полагают £,1 = 1, в противном случае считаем £,1 = 0;
п
4) вычисляем сумму Бп = ^^, которая совпадает со значением слу-
I=1
чайной величины |, распределенной по закону Пуассона.
4. Моделирование случайной величины абсолютно непрерывного типа
А. Метод обратных функций.
Пусть случайная величина £, имеет монотонно возрастающую функцию распределения Р(х). Известно, что 0 < Р(х)< 1, значит, случайная величина £, с монотонно возрастающей функцией распределения Р(х) связана со случайной величиной К соотношением
Р ® = К.
Отсюда следует, что значение х случайной величины % является решением уравнения
Р(х) = г, (3)
где г — значение случайной величины Я, т. е.
х = Р (г) .
Последовательности значений г1, г2,... случайной величины Я соответствует последовательность Р-1 (г1), Р-1 (г2),... значений случайной величины % с функцией распределения Р(х).
Б. Моделирование случайной величины с равномерным распределением на отрезке [а, Ь].
Пусть случайная величина % имеет равномерное распределение на отрезке [а, Ь]. Тогда ее функция распределения имеет вид:
0, если х < а,
F(x ) = ■
1, если x > b.
Составим уравнение (З), получим
x — а ______ т
-----, если а < X < b.
b — а
x - a
----= r,
b - a
откуда
x = a + r(b - a).
Последовательности значений r1, r2,... случайной величины R соответствует последовательность значений
x 1 = a + r1 (b - a), x2 = a + r2(b - a), ... случайной величины £, равномерно распределенной на отрезке [a, b].
В. Моделирование случайной величины с показательным распределением. Пусть случайная величина | имеет показательное распределение с параметром Р (р > 0). Тогда функция распределения этой случайной величины
F(x) = 1 - e~px, x > 0.
Составим уравнение (3). Имеем
1 - e~px = r . (4)
Решаем уравнение (4) относительно x, получаем
1
x = -'pIn(1 - r). (5)
Так как R — случайная величина, равномерно распределенная на
[0,1 , то и 1 - R является также случайной величиной, распределенной
81
82
по равномерному закону на отрезке [0,1] . Поэтому вместо формулы (5) для моделирования случайной величины ^ можно использовать формулу
х = -і]пг . в
Г. Моделирование случайной величины с нормальным распределением. Случайная величина % имеет нормальный закон распределения, если ее функция распределения имеет вид:
1 х (-я)
Р(х) =—== Г е 2°2 йї,
где я и ст — параметры.
Для компьютерного моделирования случайной величины с нормальным законом распределения можно использовать как метод обратных функций, так и метод, специально разработанный для нормального закона.
Согласно центральной предельной теореме, если случайные величины %]_, %2, •••, %п независимы, одинаково распределены и их математическое ожидание и дисперсия конечны, то при увеличении п закон распределения суммы
^п = %1 + %2 + к + %п
приближается к нормальному. Требуется найти значения случайной величины %, распределенной по нормальному закону с математическим ожиданием М% = я и дисперсией 0% = ст2 .
Пусть Я1, Я2, к, Яп — независимые случайные величины, равномерно распределенные на отрезке [0,1] . Обозначим
Бп = &1 + &2 + к + &п . (6)
1
Учитывая М^ = 0,5, ВК{ = , і = 1,2,..., п, найдем:
п
МБп = 0,5п, 0Бп = —.
12
При достаточно большом п (п > 12) можно считать, что случайная
величина Бп имеет нормальный закон распределения с математиче-
п
ским ожиданием МБп = 0,5п и дисперсией 0Бп = —.
Пронормируем случайную величину Бп, получим:
Б = Бп - МБп = Бп - 0,5п = ( - 0,5И). 6 . (7)
п а/об; тп
Для случайной величины Бп имеет место
МБп = 0, 0Бп = 1.
Перейдем от случайной величины % к стандартной нормально распределенной случайной величине
П =
%-М%
Тогда
% = М% + стп . Учитывая (6) и (7), получаем:
% = М% + ст
І Яі - 0,5п
V і=1
л/3и"
Например, при п = 12
% = М% +ст
(12
І Яі - 6
V і=1
Отсюда значение х случайной величины £, определится по формуле
х = М% + ст
(12
І г - 6
V і=1
(8)
где г1, г2, к, г12 — значения случайной величины Я, равномерно распределенной на отрезке [0,1].
Таким образом, имея 12 значений случайной величины Я и подставляя их в формулу (8), получаем значение случайной величины Е,; имея следующие 12 значений величины Я и подставив их в формулу (8), получим следующее значение случайной величины ^ и т. д.
83
ст
6
Список литературы
1. Калинина В.Н., Панкин В.Ф. Математическая статистика. М.: Высш. шк., 2001.
2. Кретов М.В. Вероятностные методы оценки прочности строительных материалов // Международная научная конференция «Инновация в науке и образовании — 2003». Калининград, 2003. С. 228.
3. Кретов М.В. Теория вероятностей и математическая статистика. Калининград: Янтарный сказ, 2004.
4. Нейман Ю. Вводный курс теории вероятностей и математической статистики. М.: Наука, 1968.
Об авторе
М.В. Кретов — канд. физ.-мат. наук, доц., КГу.