logo
Обработка данных / Томашевский_Имитационное моделирование в среде GPSS_2003

3.3. Моделирование непрерывных случайных величин

В данном случае используется метод обратной функции. Пусть есть некоторая функция распределения случайной величины (рис.3.6). Разыграем на оси ординат точку r, используя функциюF(х).Тогда можем получить значение величины Х такое, чтоF(x)=r.

Рис. 3.6

Найдем функцию распределения F(x) случайной величиныX. По определению она равна вероятностиP(X<x). Из рис. 3.7 очевид­но, что

Рис. 3.7

Таким образом, последовательность r1, r2, r3, ... , принадлежащаяR(0,1), преобразуется в последовательностьx1, х2, x3,…,которая име­ет заданную функцию плотности распределенияf(x).

Моделирование равномерного распределения в интервале (a, b) случайной величины. Для моделирования воспользуемся ме­тодом обратной функции. На рис. 3.8 показана функция плотности равномерного распределения.

Рис. 3.8

Находим функцию распределения и приравниваем ее к случай­ному числу

Отсюда Х = (ba)R + а.

Моделирование экспоненциального распределения случай­ной величины. Функция плотности экспоненциального распределе­ния случайной величиныf(x) =и функция распределения пока­заны на рис. 1.1.

Воспользуемся методом обратной функции:

Из выражения (3.6) находим x:

Можно показать, что случайная величина (1-R) распределена так же, как и величинаR. Тогда, сделав замену(1-R) наR, получаем

Покажем, как, используя метод обратной функции, можно моде­лировать случайную величину, распределенную по экспоненциаль­ному закону. Подобный подход принят в языке GPSS[10].

Пусть λ = 1. Выполним аппроксимацию функции экспоненци­ального распределения линейными участками, чтобы можно было использовать ее для моделирования методом обратной функции. Для аппроксимации достаточно 24 точек. В табл. 3.2 занесены соответст­вующие значения аргумента Х и функцииF(x), значения которой ге­нерируютcпомощью генератора случайных чисел.

Таблица 3.2

X

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,75

0,8

0,84

0,88

F(X)

0

0,1

0,222

0,355

0,509

0,69

0,915

1,2

1,38

1,6

1,83

2,12

X

2,3

2,52

2,81

2,99

3,2

3,5

3,9

4,6

5,3

6,2

7

8

F(X)

0,9

0,92

0,94

0,95

0,96

0,97

0,98

0,99

0,995

0,998

0,999

0,9998

На рис. 3.9 и 3.10 показаны графики двух функций. На рис. 3.9 изображена аппроксимация экспоненциальной функции cпараметром λ = 1, А на рис. 3.10 – функция, обратная к аппроксимированной. Пер­вая функция воспроизводит заданные в табл. 3.2 значения. Вторая функция используется для розыгрыша экспоненциального распреде­ления, поскольку удобнее задавать значениеx, А получать значение функции.

Если необходимо моделировать случайные величины X, распре­деленные по экспоненциальному законуcпараметромёх1, кото­рые используется как задержка во времениcпараметром , например, для моделирования пуассоновского потока поступления тре­бований, то поступают таким образом:

– генерируют значения случайной величины, распределенной по экспоненциальному закону cλ = 1 (рис. 3.10);

– находят произведение полученного значения и математического ожидания случайной величины Т = .

Рис. 3.10

Рис. 3.9

В результате получают искомую последовательность значений реализации случайной величины X.

Моделирование нормального закона распределения слу­чайной величины. Для моделирования нормального закона распре­деления случайной величины нельзя непосредственно воспользовать­ся методом обратной функции, поэтому используем центральную предельную теорему. Пусть случайная величина Х имеет математиче­ское ожиданиеmxи среднеквадратичное отклонение ,aслучайная величинаZимеет математическое ожиданиеmz = 0 и среднеквадра­тичное отклонение σz= 1. Легко показать, что

Сформулируем центральную предельную теорему.

Если X1 ..., Хп – независимые случайные величины со средним значениемE[Xi] =a, и дисперсиейD[Xi] = σ2,, то при неограниченном увеличенииn функция распределения случайной величиныприближается к функции распределения стандартного нормального закона Ф(z) при всех значениях аргумента, то есть

Для получения нормального закона распределения случайной величины достаточно суммировать шесть случайных величин, полу­ченных cпомощью генератора случайных чиселR, и, пронормировав полученные значения так, чтобы определитьZ, по формуле (3.8) най­ти значениеX.

Обычно суммируют 12 случайных величин Ri, , тогда дисперсияD(Z) будет равняться единице.

Рассмотрим, как моделируются нормально распределенные слу­чайные величины в системе моделирования GPSS.

Выполним аппроксимацию функции нормального распределе­ния случайной величины Zcпараметрамитz =0 и =1. Для этого достаточно 25 точек. В табл. 3.3 занесенные соответствующие значе­ния аргумента Х и функцииF (x).

Для того, чтобы получить функцию нормального распределения cматематическим ожиданиемmx ≠ 0 и среднеквадратичным отклоне­нием ≠ 1, необходимо сделать вычисления по формуле (3.8).

На рис. 3.11 изображен график функции, полученной в резуль­тате аппроксимации функции нормального распределения Ф(z), а на рис. 3.12 – более удобный для моделирования график функции (как аргумент используют генератор случайных чисел и получают значе­ние функции).

Таблица 3.3

X

-5

-4

-3

-2,5

-2

-1,5

F(x)

0

0,00003

0,00135

0,00621

0,02275

6,06681

X

-1,2

-1

-0,8

-0,6

-0,4

-0,2

F(x)

0,11507

0,15866

0,21186

0,2742

0,34458

0,42074

X

0

0,2

0,4

0,6

0,8

1

F(x)_

0,5

0,57964

0,65542

0,72575

0,78814

0,84134

X

1,2

1,5

2

2,5

3

4

5

F(x)

0,88493

0,93319

0,97725

0,99379

0,99865

0,99997

1

Если необходимо обеспечить положительные разыгрываемые значения, то нужно выполнить условие тx5.

Рис. 3.11

Рис. 3.12

В рассмотренных приближенных методах «хвосты» нормально­го распределения оказываются неточными. Существуют и более точные методы моделирования нормального распределения случай­ной величины [11].