Симуляция одним распределением другого — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 1: Строка 1:
 +
<wikitex>
 
==Распределение==
 
==Распределение==
 
[[Файл:Распределение1_4.JPG‎|200px|thumb|right|Геометрическое распределение с p = 3/4]]
 
[[Файл:Распределение1_4.JPG‎|200px|thumb|right|Геометрическое распределение с p = 3/4]]
Строка 8: Строка 9:
 
* Равномерное распределение
 
* Равномерное распределение
  
<wikitex>
+
 
 
==Симуляция распределений==
 
==Симуляция распределений==
 
Для того, чтобы создать необходимое распределение вероятностей, достаточно иметь последовательность независимых случайных величин типа "честной монеты".
 
Для того, чтобы создать необходимое распределение вероятностей, достаточно иметь последовательность независимых случайных величин типа "честной монеты".

Версия 06:56, 18 декабря 2011

<wikitex>

Распределение

Геометрическое распределение с p = 3/4

Распределение — одно из основных понятий теории вероятностей и математической статистике. Распределение вероятностей какой-либо случайной величины задается в простейшем случае указанием возможных значений этой величины и соответствующих им вероятностей, в более сложных — т. н. функцией распределения или плотностью вероятности.

Примеры распределений

  • Биномиальное распределение
  • Нормальное распределение
  • Равномерное распределение


Симуляция распределений

Для того, чтобы создать необходимое распределение вероятностей, достаточно иметь последовательность независимых случайных величин типа "честной монеты". Например, для создания схемы с двумя исходами $A_1$ и $A_2$:

$P(A_1)=\frac{3}{4}$ $,$ $P(A_2)=\frac{1}{4}$

можно из датчика случайных двоичных разрядов получить два двоичных разряда $\delta_1$ и $\delta_2$ и, например, при $\delta_1 = \delta_2 = 1$ выработать исход $A_2$, а в остальных случаях $A_1$. Аналогично для схемы с четырьмя исходами

$P(A_1)=\frac{3}{16}$ $,$ $P(A_2)=\frac{1}{16}$ $,$ $P(A_3)=\frac{8}{16}$ $,$ $P(A_4)=\frac{4}{16}$

можно получить четыре двоичных разряда $\delta_1$ $,$ $\delta_2$ $,$ $\delta_3$ $,$ $\delta_4$ и любым способом сопоставить трём из 16 возможных наборов исход $A_1$, одному $-$ $A_2$, восьми $-$ $A_3$, четырём $-$ $A_4$. Если же вероятности исходов не кратны $2^{-k}$, можно применить два различных варианта действий.

  1. Можно приблизить вероятности двоичными дробями (с любой точностью), далее работать с полученными приближёнными значениями
  2. Пусть все вероятности $n_i$ $-$ дроби со знаменателем $r$. Найдём $k$, для которого $r < 2^k$. Предложим схему с $k$ двоичными разрядами, в которой $r$ наборов объявляются "неудачными" и требуют повторного эксперимента (пока не встретится удачный). Чем выше доля полезных исходов равная $r2^{-k}$, тем схема будет эффективнее.

Количество случайных двоичных разрядов $\lambda$, которые необходимы для формирования случайного исхода, $-$ это случайная величина. Её математическое ожидание:

$E\lambda = \frac{1}{2}\cdot1+\frac{1}{4}\cdot2+\frac{1}{8}\cdot3+\frac{1}{16}\cdot3+\frac{1}{16}\cdot4 = 1\frac{7}{8}$

Можно сделать схему более экономной, используя свойство датчиков случайных чисел формировать не отдельные двоичные разряды, а целые наборы их, например в виде числа, равномерно распределённого в $[0, 1]$. Образуем по данному набору вероятностей $p_i$ накопленные суммы $s_i$: $s_0 = 0; s_i = s_{i-1} + p_i, i > 0$. Случайный исход будет вырабатываться так: по полученному из датчика случайному числу $\gamma$ определяется такой индекс $i$, для которого $s_{i-1} < \gamma \le s_i$. Найденное значение индекса $i$ и определяет исход $A_i$.

Индекс $i$ можно определять непосредственно просмотром $s_i$ подряд. Если $k$ велико, можно применять специальные приёмы ускоренного поиска, например, деление множества индексов примерно пополам.

Самую эффективную схему предложил в 1977 г. А. Уолкер.

Схема Уолкера

Если бы все исходы имели одинаковые вероятности, моделировать такое распределение было бы очень просто. В такой ситуации достаточно разделить отрезок $[0, 1]$ на $k$ одинаковых частей, соответствующих этим исходам,одинаковых частей, соответствующих этим исходам, и определить, в какую часть отрезка попало значение случайного датчика $x$. А это выясняется очень просто: нужно взять целую часть произведения $k \cdot x$. Так что при исходах 0, 1, 2, 3 значению $x = 0.333$ соответствует исход 1, поскольку $4x = 1.332$. </wikitex>

См. также

Литература