Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР3-4 / КМ_РГР_МО-317_ИшпахтинАА.docx
Скачиваний:
62
Добавлен:
03.07.2021
Размер:
387.31 Кб
Скачать

Министерство науки и высшего образования РФ

Федеральное государственное бюджетное образовательное

учреждение высшего образования

«Уфимский государственный авиационный технический университет»

Факультет информатики и робототехники

Кафедра вычислительной математики и кибернетики

Расчетно-графическая работа

«Имитация СМО с одним устройством»

по дисциплине

«Компьютерное моделирование»

Выполнил:

студент группы МО-317

Ишпахтин А. А.

Проверила:

Валеева А. Ф.

Уфа 2021

Оглавление

Постановка задачи 2

Пояснения к модели 2

Оценки модели 3

Описание модели 4

Анализ модели 9

Верификация имитационной модели 10

Вывод 14

1. Написать имитационный алгоритм и программу.

2. Выполнить верификацию имитационной программы.

3. Провести анализ очереди из клиентов в течение интервала времени [0, T].

4. Определить приближенный 95% доверительный интервал для ожидаемой средней задержки клиента в течение периода T.

Во всех моделях СМО предполагается, что клиенты прибывают согласно неоднородному Пуассоновскому процессу с ограниченной функцией интенсивности .

Постановка задачи

Имеется магазин с одним устройством, куда пребывают клиенты. График с 8 до 20, в среднем в час поступает 3 клиента.

Допущения:

  • Клиенты пребывают в систему, имеющую одно устройство и одну очередь.

  • Когда клиенты поступают в систему, если устройство занято, то они образуют очередь, иначе поступают на устройство.

  • Когда обслуживание клиента заканчивается, он покидает систему и клиент, который дольше всех находится в очереди, начинает обслуживаться.

Пояснения к модели

  • Устройство обслуживания – касса

  • Требование – покупатели

  • Единица времени – час

  • Интенсивность – 3 человека в час

  • Функция интенсивности –

  • Время работы T – 12 часов (с 8 до 20)

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

Оценки модели

  • Оценка ожидаемой средней задержки клиентов в очереди:

, — время задержки клиента i в очереди, - число клиентов, которые прибыли в период времени

  • Оценку ожидаемого среднего числа клиентов в очереди:

- число клиентов в системе в период времени .

  • Оценка занятости устройства – ожидаемый коэффициент использования устройства (время, когда устройство занято/период моделирования T), где функция занятости В(t):

  • Среднее время, в течение которого клиент проводит в системе, вычисляется как:

,

где - это количество времени, в течение которого клиент проводит в системе; - общее число клиентов, которые пришли до времени .

  • (оценки для математических ожиданий , имитация проводится раз, - достаточно велико).

Описание модели

Вспомогательные функции

  • Функция интенсивности Входные данные: t – время в системе. Выходные данные: Значение функции интенсивности в момент времени t. Функция интенсивности:

  • Функция генерации неоднородного пуассоновского процесса Входные данные: sвремя в системе L – интенсивность появления событий Выходные данные: t – время следующего события в системе Алгоритм (poisson(t, lambd)):

  1. Присвоить t = s

  2. Генерируем случайную переменную U1 = Uniform[0, 1]

  3. Присвоить t =

  4. Генерируем случайную переменную U2 = Uniform[0, 1], независимую от U1.

  5. Если , то:

    1. Ts = t

    2. Конец алгоритма

  6. Иначе повторить с шага 2.

  • Функция генерации случайной величины Входные данные: L – интенсивность появления событий Выходные данные: Y – значение показателей случайной величины Алгоритм (exponentional(lambd)):

  1. Генерируем случайное число U = Uniform[0, 1]

  2. Возвращаем величину Y =

Реализация алгоритма. Процедуры работы СМО.

Переменная времени:

Количественные переменные:

- число прибывших клиентов к моменту времени

- число уходов клиентов к моменту времени

Переменная состояния:

- число клиентов в системе к моменту времени

События: пребывания и уходы клиентов.

Список событий:

- время следующего прибытия клиента (после );

- время завершения работы устройства после обслуживания клиента

( если никакой клиент в данный момент не обслужен).

Случайные переменные:

— время поступления клиента ;

— время между поступлениями клиентов i - 1 и (t0= 0);

— время, потраченное устройством на обслуживание клиента i

(без учета времени задержки клиента в очереди);

— время задержки клиента i в очереди;

— время ухода клиента i по завершении

обслуживания;

— время возникновения события j любого типа.

Выходные переменные:

- время прибытия клиента

- время ухода клиента

- время после , когда последний клиент уходит

- количество времени, в течение которого клиент проводит в системе

- оценка среднего времени после , когда уходит последний клиент

- оценка среднего времени, в течение которого клиент проводит в системе

,

- наблюдаемое значение (время после , когда ушел последний клиент)

- число клиентов в системе в период времени

Amount – количество клиентов за смену

Tp – время задержки закрытия

– среднее время клиентов в очереди

– среднее время клиента в системе

1-Work/T – коэффициент занятости устройства

– средняя длина очереди

События:

  • прибытие клиента

  • уход клиента

  • клиент ушел – но очередь не пуста

  • клиент ушел – и время работы закончилось

Общая схема алгоритма имитации СМО с одним устройством:

Пусть - случайная переменная – время обслуживания устройства с распределением .

Инициализация переменных

Присвоить

Присвоить

Генерировать и присвоить =

Изменения системы будут происходить в зависимости от того, какое событие будет следующим – прибытие или уход клиента, при этом рассматриваются различные случаи.

Случай 1 прибытие клиента( tA tD, tA T)

Алгоритм:

  1. Присвоить t = tA (движение вдоль оси времени ко времени tA)

  2. Присвоить NA = NA+1 (подсчитано более одного прибытия к моменту времени tA)

  3. Присвоить n = n+1 (в настоящее время имеется более одного клиента)

  4. Запустить функцию генерации неоднородного пуассоновского процесса (poisson(t, lambd)) и присвоить полученное значение tA (это время следующего прибытия клиента)

  5. Если n = 1, генерировать случайную переменную Y(exponentional(lambd)) имеющую показательное распределение и присвоить tD = t + Y(exponentional(lambd))

  6. Запомнить выходные данные A(NA) = t (время прибытия клиента NA)

Случай 2 – уход клиента (tD tA, tD T)

Алгоритм:

  1. Присвоить t = tD (движение вдоль оси времени до времени tD)

  2. Присвоить ND = ND+1 (подсчитано более одного ухода клиента)

  3. Присвоить n = n-1 (имеется меньше одного клиента)

  4. Если n = 0, присвоить tD = , иначе генерировать случайную величину Y(exponentional(lambd)) имеющую показательное распределение и присвоить tD = t + Y(exponentional(lambd))

  5. Запомнить выходные данные D(ND) = t (время ухода клиента ND)

Случай 3 – время работы закончилось, а клиенты еще есть в системе (min(tA , tD,)> T, n>0)

Алгоритм:

  1. Присвоить t = tD (движение вдоль оси времени до времени tD)

  2. Присвоить ND = ND+1 (подсчитано более одного ухода клиента)

  3. Присвоить n = n-1 (имеется меньше одного клиента)

  4. Если n>0, генерировать случайную величину Y(exponentional(lambd)) имеющую показательное распределение и присвоить tD = t + Y(exponentional(lambd))

  5. Запомнить выходные данные D(ND) = t (клиент ND ушел)

Случай 4 – время работы закончилось, клиентов в сети нет (min(tA, tD)>T, n=0)

Алгоритм:

  1. Запомнить выходные данные

После того, как время работы закончилось и клиентов в сети нет, выводим:

Amount – количество клиентов за смену

Tp – время задержки закрытия

– среднее время клиентов в очереди

– среднее время клиента в системе

1-Work/T – коэффициент занятости устройства

– средняя длина очереди

Соседние файлы в папке ЛР3-4