Моделирование случайных событий с заданным законом распределения
Пусть требуется разыграть дискретную случайную величину, т.е. получить последовательность ее возможных значений xi (i = 1, 2, 3,..., n), зная закон распределения X:
X | x 1 | x 2 | x 3 | … | |
P | p 1 | p 2 | p 3 | … |
Обозначим через R непрерывную случайную величину. Величина R распределена равномерно в интервале (0, 1). Через rj (j = 1, 2,...) обозначим возможные значения случайной величины R. Разобьем интервал 0 < R < 1 на оси 0 r точками с координатами p 1, p 1 + p 2, p 1 + p 2 + p 3, …, p 1 + … + pn – 1 на n частичных интервалов D1, D2, …, D n.
Тогда получим:
Длина D1 = p 1 – 0 = p 1.
Длина D2 = (p 1 + p 2) – p 1 = p 2.
…
Длина D n = 1 – (p 1 + p 2 + … + pn – 1) = pn.
Видно, что длина частичного интервала с индексом i равна вероятности P с тем же индексом: D i = pi
Таким образом, при попадании случайного числа ri в интервал случайная величина Х принимает значение xi с вероятностью pi.
Существует следующая теорема:
Если каждому случайному числу ri (0 £ rj < 1), которое попало в интервал D j, поставить в соответствие возможное значение xi, то разыгрываемая величина будет иметь заданный закон распределения.
Алгоритм разыгрывания дискретной случайной величины заданной законом распределения:
1. Разбить интервал (0, 1) на оси 0 r на n частичных интервалов D1 – (0; p 1), D2 – (p 2; p 1 + p 2), …, D n – (p 1 + … + pn – 1; 1).
2. Выбрать (например, из таблицы случайных чисел, или в компьютере) случайное число rj.
X | x 1 | x 2 | x 3 | … | |
P | p 1 | p 2 | p 3 | … |
Если ri попало в интервал D j, то разыгрываемая дискретная случайная величина приняла возможное значение xi.