Опубликован: 16.11.2010 | Уровень: специалист | Доступ: платный
Лекция 4:

Статистическое моделирование

3.5. Моделирование случайной величины с произвольным законом распределения

В основе моделирования случайных величин с произвольными законами распределения вероятностей лежит, как правило, метод обратной функции.

В этом методе используется следующая теорема.

Теорема. Если случайная величина Y имеет плотность распределения вероятностей f (y), то распределение случайной величины

F(y)=\int\limits_{-\infty}^{y}{f(y)dy} ( y)dy)

равномерно в интервале [0,1], т. е.

F (y) = \gamma \sim Rav [0, 1] .

По определению, F(y) является функцией распределения случайной величины Y .

Теорема может быть проиллюстрирована графиками, представленными на рис. 3.10.

Обозначим: x_{i} - i -е число из \gamma\sim Rav[0, 1], y_{i} - i -е случайное число из произвольного распределения.

Иллюстрация к методу обратной функции Из (3.1) следует:

Рис. 3.10. Иллюстрация к методу обратной функции Из (3.1) следует:
x_{i} = \int\limits_{-\infty}{y_i}{f(y)dy} .

Моделировать равномерно распределенное случайное число x_{i } мы уже умеем. Нужно найти неизвестное y_{i}, находящееся в верхнем пределе интегрирования.

Относительно y_{i} в ыражение принимает вид:

y_{i}=F^{-1} ( x_{i}).

Отсюда и название - "метод обратной функции".

Пример 3.6. Получить формулу для моделирования случайных

чисел, распределенных по экспоненциальному закону, с параметром \lambda  (матожиданием \cfrac{1}{\lambda} ).

Плотность f(y) и функция F(y) этого распределения имеют вид (рис. 3.11):

Решение

\xi =\int\limits_{-\infty}^{y_i}{f(y)dy}=
\int\limits_{-\infty}^{0}{f(y)dy}+\int\limits_{0}^{y_i}{f(y)dy}=
\int\limits_{0}^{y_i}{f(y)dy}=1-e^{-\lambda y_i}\\
x_i \in Rav[0,1];\,\,
e^{-\lambda y_i}=1-x_i;\,\,
{-\lambda y_i}=\ln{(1-x_i)};\,\,
y_i=-\cfrac{1}{\lambda}{(1-x_i)}

Поскольку случайная величина (1-x_{i}) имеет равномерное распределение в интервале [0,1], как и x_{i}, то справедливо:

y_{i} =\cfrac{1}{\lambda}\ln{x_{i}}.

Примеров подобного аналитического преобразования случайного числа x_{i} \in Rav[0, 1] в случайное число из произвольного распределения немного, так как для многих законов распределения, встречающихся в практике моделирования, интеграл (3.1) относится к неберущимся, а численные методы решения увеличивают затраты машинного времени.

Плотность и функция экспоненциального распределения

Рис. 3.11. Плотность и функция экспоненциального распределения

Поэтому в современных системах моделирования применяется приближенный метод обратной функции, основанный на кусочно-линейной аппроксимации функции распределения моделируемой случайной величины.

Суть метода заключается в следующем.

Требуемый закон распределения случайной величины размещается в памяти компьютера в виде координат функции распределения. Каждая координата состоит из случайного числа y_{i} и соответствующего значения функции распределения F ( y_{i} ):

y_{1}, F ( y_{1} ) / y_{2}, F ( y_{2} ) / \ldots  / y_{k}, F ( y_{k} ) / \ldots  / y_{n}, F ( y_{n} )

Чем больше координат, тем точнее будет моделирование. Приемлемая точность обеспечивается заданием 20…30 координат.

При обращении за очередным случайным числом нужного закона распределения сначала генерируется случайное число из Rav[0,1]. Это число сравнивается со значениями F ( y_{k} ), k =\overline{1, n}.

При совпадении выдается соответствующее случайное число y_{k} .

Если нет совпадения, то случайное число y_{k} вычисляется из подобия треугольников, как показано на рис. 3.12.

Иллюстрация к методу кусочно-линейной аппроксимации

Рис. 3.12. Иллюстрация к методу кусочно-линейной аппроксимации

Из подобия треугольников ABC и AB'C' следует:

\cfrac{\Delta F(y_k)}{\Delta y_k} = \cfrac{x_i - F(y_k)}{y_i - y_k}

Отсюда по x_{i} \in Rav[0, 1] находится значение y_{i}.

Значительную роль в моделировании играет случайная величина, имеющая нормальное распределение. Метод обратной функции в аналитическом виде здесь неприемлем, так как интеграл (3.1) неберущийся, а его численное решение громоздко.

Для генерации случайных чисел, подчиненных нормальному распределению, применяется метод обратной функции с кусочно-линейной аппроксимацией, а также метод, основанный на центральной предельной теореме (ЦПТ) теории вероятностей.

Как известно, ЦПТ дает теоретическое объяснение подтвержденному практикой наблюдению: если исход случайного события определяется большим числом случайных факторов, и влияние каждого фактора мало, то такой случайный исход хорошо аппроксимируется нормальным распределением. Эта теорема имеет много формулировок. Одна из наиболее практичных для целей моделирования случайных последовательностей - теорема Леви-Линдеберга.

Теорема. Случайная величина

\eta=\cfrac{\sum\limits_{i=1}^{N}{x_i}-NM[x]}{\sqrt{ND[x]}}

где \sum\limits_{i=1}^{N}{x_i} - сумма N случайных чисел одного и того же распределения с матожиданием M[x] и дисперсией D[x] при N \to\infty асимптотически стремится к нормальному распределению с M[\eta] = 0 и дисперсией D[\eta] = 1.

Удобно случайные числа x_{i} брать из рассмотренного датчика у \sim Rav[0, 1]. В этом случае M[\gamma] = \cfrac{1}{2}, D[\gamma] =\cfrac{1}{12}.

Хорошее приближение к нормальному распределению получается уже при числе N = 6. Каждое случайное число при N = 6 генерируется так:

y_i=\cfrac{\sum\limits_{i=1}^{N}{x_i-3}}{\sqrt{0.5}}=\sqrt{2}\left ( \sum\limits_{i=1}^{6}{x_i-3} \right )

Недостаток способа состоит в том, что он не экономичен, так как для генерирования одного случайного числа y_{i} требуется шесть случайных чисел из распределения у \sim Rav[0, 1].

В ряде случаев применяют датчики с числом N = 12. Тогда

y_i=\cfrac{\sum\limits_{i=1}^{12}{x_i-6}}{\sqrt{1}}=\sum\limits_{i=1}^{12}{x_i}-6 .

Если датчик случайных чисел нормального распределения выдает стандартную последовательность чисел с M = 0, \sigma = 1, то пересчет на произвольное значение характеристик выполняется так:

y_j =y_j\sigma + m,

где m - требуемое значение матожидания;

\sigma - требуемое значение среднего квадратического отклонения;

y^{'}_j - случайное число из нормального распределения с математическим ожиданием m и средним квадратическим отклонением \sigma.

В современных системах моделирования имеются встроенные датчики, позволяющие непосредственного задавать нужную случайную величину с требуемыми значениями характеристик. Однако если исследователя эти возможности не удовлетворяют (например, по точности представления функции распределения вероятностей), то он может задать требуемый закон распределения самостоятельно.

3.6. Моделирование единичного события

Под единичным событием мы будем понимать смену состояний одного элемента (системы), причем состояний всего два: оборудование исправно - неисправно, канал СМО свободен - занят, цель поражена - не поражена и т. п.

Переход из одного состояния в другое - случайный. В любой момент времени система находится в одном состоянии с вероятностью P, в другом - с вероятностью 1 - P .

Цель моделирования: имитировать состояние такого элемента.

Теорема. Пусть некоторое событие A свершается с вероятностью p(A). Это может быть отказ техники, поступление сообщения, уничтожение цели и т. п.

Моделью свершения такого единичного события A является попадание значения x_{i} случайной величины \gamma, равномерно распределенной в интервале [0,1], в числовой интервал [0, P(A)].

Доказател ьство Как известно

P(a\le x \le b)=\int\limits_{a}^{b}{f(x)dx}

Для x_i\in \gamma \sim Rav[0,1], \, a=0,\, b=P(A)

P(0\le x_i \le P(A))=\int\limits_{0}^{P(A)}{f(x)dx}=
\int\limits_{0}^{P(A)}{1\cdot dx} = P(A)

так как f(x)=1 для \gamma \sim Rav[0,1] на интервале [0,P(A)].

Пример 3.7. Пусть вероятность состояния элемента P(A) = 0.9. В i -ой реализации случайное число x_{i}\in\gamma\sim Rav[0, 1] равно 0.955. Это означает, что в данной i -ой реализации модели событие A не свершилось (рис. 3.13). Естественно, одна реализация ни о чем не говорит. Реальная ситуация будет отображена на множестве реализаций и чем их больше, тем точнее.

Событие A не произошло

Рис. 3.13. Событие A не произошло

Фрагмент алгоритма имитации в модели единичного случайного события приведен на рис. 3.14.

Фрагмент алгоритма имитации единичного события

Рис. 3.14. Фрагмент алгоритма имитации единичного события
Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Лариса Парфенова
Лариса Парфенова

1) Можно ли экстерном получить второе высшее образование "Программная инженерия" ?

2) Трудоустраиваете ли Вы выпускников?

3) Можно ли с Вашим дипломом поступить в аспирантуру?

 

алексей оглы
алексей оглы
Россия
рафич Салахиев
рафич Салахиев
Россия