Моделирование случайной величины, равномерно распределенной в интервале (a,b)

Мы используем метод обратной функции для моделирования равномерного и показательного распределений. Решаем уравнение . Для этого, подставив выражение для плотности равномерного распределения на место , вначале вычислим интеграл в левой части уравнения:

 

,

 

а затем для вычисления значений u равномерно распределенной в интервале (a,b) случайной величины  через значения g случайной величины , равномерно распределенной в интервале (0,1) просто выразим переменную u через переменную g из уравнения :

 

 

Заметим, что полученная формула очевидна. Действительно, для пересчета равномерно распределенной в интервале (0,1) случайной величины в случайную величину, равномерно распределенную в интервале (a,b), мы должны вначале «растянуть» диапазон значений единичной длины в диапазон значений (b-a) умножая значения g на (b-a), а затем переместить полученный результат из интервала (0,1) в интервал (a,b), прибавив к нему значение a.

Запись полученной формулы в виде функции языка С:

float uniform (float a, float b) {return rand()*(b-a)+a;}

позволит нам программно генерировать случайные величины с равномерным распределением в любом заданном конечном интервале значений (a,b).



Глава 2 Имитационное моделирование процесса

Постановка задач (Вариант №2)

 

Провести имитационное моделирование работы парикмахерской. Количество парикмахеров в парикмахерской – n. Время моделирования –t часов. Интервал времени между двумя последовательными посещениями парикмахерской клиентами моделировать случайной величиной τ1 с дискретным равномерным распределением в диапазоне значений [ τ1min,…, τ1max ] минут. Время обслуживания одного клиента моделировать случайной величиной τ2 с распределением P(τ2). Цена обслуживания клиента определяется функцией времени обслуживания вида c= aτ2.

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

Рассчитать:

§ количество обслуженных клиентов за период моделирования;

§ выручку парикмахерской R за период моделирования;

§ средний размер очереди;

§ число отказов r.

Параметры модели:

§ n=2;

§ t=8;

§ τ1min =1, τ1max =15;

§ P(τ2) = (10 12 13 14 15 16 17 18 19)

(0,05 0,05 0,05 0,05 0,05 0,2 0,2 0,2 0,15)

(первая строка - значение случайной величины в минутах, вторая - соответствующие вероятности);

§ а =3

Определить методом машинного эксперимента параметр τ1max, максимизирующий выручку R при условии r=0. Средство реализации модели – программа на языке С++.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: