Файл: Методические указания к выполнению лабораторных работ по курсу моделирование сложных процессов и систем.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 22.11.2023
Просмотров: 63
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
| Министерство образования и науки Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования «Уральский федеральный университет имени первого Президента России Б. Н. Ельцина» |
Институт радиоэлектроники и информационных технологий – РтФ
Департамент информационных технологий и автоматики
Индивидуальное задание
МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ВЫПОЛНЕНИЮ ЛАБОРАТОРНЫХ РАБОТ ПО КУРСУ «МОДЕЛИРОВАНИЕ СЛОЖНЫХ ПРОЦЕССОВ И СИСТЕМ
Вариант 3
Исрафилов Денис Русланович АТ-17
Михайлов Дмитрий Георгиевич АТ-17
Екатеринбург 2023
Оглавление
Цель работы 3
Ход работы 3
Индивидуальное задание по варианту 3 3
Цель работы
-
Получить навыки построения имитационных моделей сложных процессов и систем.
Ход работы
Индивидуальное задание по варианту 3
-
Условия задачи. На станцию скорой помощи поступают вызовы по телефону. Станция имеет пять каналов для одновременного приема вызовов. Время между попытками вызова скорой помощи распределено согласно закону Эрланга второго порядка (среднее время –1,5 мин). Абоненты тратят 15 c на набор номера и, если застают все каналы занятыми, через 20 c повторяют вызов. Так происходит до тех пор, пока вызов не будет принят. Время приема вызова составляет 1 мин. На станции скорой помощи для обслуживания вызовов имеется 15 автомобилей. Время, затраченное на проезд к больному, зависит от расстояния до его дома. Распределение расстояния приведено в табл. 2. После предоставления помощи автомобили возвращаются на станцию. Скорость движения автомобилей равномерно распределена в интервале 35-55 км/ч. Время оказания помощи больному распределено в соответствии c нормальным законом со средним значением 25 мин и среднеквадратическим отклонением 4 мин. Оценить среднее время от момента начального вызова скорой помощи до оказания помощи больному и средний пробег автомобиля за пять дней работы. -
Схема
-
Код программы GPSS
distance FUNCTION RN1,D5 ; Распределение расстояния
.15,5/.37,8/.54,12/.82,15/1,20
oblujivanie VARIABLE normal(1,25#60,4#60) ; Время обслуживания
poezdka VARIABLE ((P1)/uniform(1,35,55)#60#60); Время поездки
tel STORAGE 5 ; 5 каналов вызовов
cars STORAGE 15 ; 15 автомобилей скорой помощи
GENERATE (GAMMA(1,0,90,2)) ; Эрланг 2го порядка с средним временем 1,5 мин
QUEUE all_queue ; Общая очередь
QUEUE call_queue ; Очередь CALL
TRANSFER ,dialing ; Первый набор номера идет без доп. ожидания
rep ADVANCE 20 ; Если телефон был занят, то ожидение 20 сек
dialing ADVANCE 15 ; Набор номера 15 секунд
zvonok GATE SNF tel,rep ; Если телефоны заняты, то ожидание
DEPART call_queue ; Вышел из очереди звонящих
ENTER tel,1 ; Попал на линию
ADVANCE 60 ; Длительность звонка 1 минута
LEAVE tel,1 ; Звонок закончен
QUEUE car_queue ;
start_car ENTER cars,1 ;
DEPART car_queue ;
ASSIGN 1,FN$distance ; Рассчитываю время поездки
ADVANCE V$poezdka ; Поездка туда
ADVANCE V$oblujivanie ; Обслуживание
ADVANCE V$poezdka ; Поездка обратно
LEAVE cars,1 ;
TERMINATE
GENERATE (5#24#60#60)
TERMINATE 1
START 1
-
Файл статистики на рисунках 1 и 2.
Рисунок 1 - файл статистики программы
Рисунок 2 - файл статистики программы
-
Пояснения результатов моделирования.
общее время моделирования 432 000 ед. модельного времени (5 дней)
сгенерировано 2454 звонков;
обработались и покинули систему 1833 вызова;
вызовов, ожидающих обслуживания телефонов, нет;
вызовов, ожидающих обслуживания машин 606;
все машины всё ещё заняты, телефоны свободны;
загрузка ОУ авто составляет почти 100%;
загрузка ОУ телефонов составляет менее 1%;
средняя длина очереди на телефоны 0 заявок;
средняя длина очереди на машины 310 заявкок;
-
Модель Any Logic на рисунке 3.
Рисунок 3 - прогон индивидуального задания
-
Создал Souce с законом Эрланга второго порядка.
-
Блоки dialing - набор номера 15 секунд и recall_atm - время ожидания перезвона 20 секунд. Перед телефонами есть SelectOutput, проверяющий количество агентов в телефонах.
-
Создал телефоны -
После создал очередь на автомобили, потому что в задании не сказано, куда девать звонки, которые приняли с условием, что нет свободных авто. Создал эмирическое распределение для дистанции.
-
После создал переменную пробег, кол-во машин и средний пробег, который будет обновляться после каждой поездки. Теперь после блока Seize для занятия ресурса создаю блок delay для поездки. В нём считается время и добавляется пробег в общий счетчик.
-
После создаю блок delay для ожидания помощи больному с нормальным распределением и отклонением.
-
Далее идет таймер, обратная поездка (копия предыдущей) и release.
-
Результаты прогона модели
-
Вывод: модель проработала 5 дней, и телефонная служба работает отлично, однако из задания не очень ясно, куда девать людей, которые попали на линию, когда все машины заняты, они попали в очередь, с которой не справлялись автомобили скорой помощи. Средний пробег автомобилей за 5 дней 3010 км. Среднее время обслуживания от звонка до помощи почти 15,57 часов, что происходит из-за большой очереди на скорую. Улучшить модель можно, если добавить больше машин скорой помощи. Также можно убавить кол-во телефонов, поскольку они хорошо справляются и средняя загруженность менее 1%.