Отчёт по практике: Проектно-технологическая практика
Описание
В архиве находятся следующие файлы:
-код с программой (+построчные комментарии)
-полный отчёт с подробным описанием программы и её тестированием
Показать/скрыть дополнительное описание
Требуется разработать программу, реализующую дискретно-событийное моделирование системы. Рассматривается имитационная модель системы массового обслуживания на GPSS. Смоделируем поведение покупателя в магазине, в котором работают 2 кассы, причём к каждой из них выстраивается отдельная очередь, а квалификация сотрудников немного отличается, поэтому время обслуживания распределено с разными параметрами. Все случайные интервалы времени для простоты будем считать равномерно распределёнными (но независимыми, привязанными к разным потокам случайных чисел). Каждая касса будет представлена одноканальным устройством, обращение к которым будем осуществлять по номерам. Очереди также будут идентифицироваться номерами, без введения символьных имён.
Моделирование будем проводить в течение 1 часа, в качестве единицы времени будем выбирать секунду. Время между приходом покупателей распределено на отрезке [0; R1+G1+B1]. Время обслуживания на первой кассе распределено на отрезке [R1+G1; R1+G1+2*B1]. Время обслуживания на второй кассе распределено на отрезке [G1+B1; 2*R1+G1+B1]. При принятии решения покупатель сперва проверяет, есть ли свободная касса, и, если есть, направляется к ней. Если же обе кассы заняты, то выбирает кассу, очередь к которой в данный момент короче. Если же свободны обе кассы, или очередь к ним одинакова, то выбирается первая касса. Результатом работы программы должен быть лог-файл, содержащий записи типа: «В момент времени 12.345 транзакт с идентификатором 1 вошёл в модель», «В момент времени 123.456 транзакт с идентификатором 123 встал в очередь 1», «В момент времени 234.567 транзакт с идентификатором 234 занял устройство 2», «В момент времени 345.678 транзакт с идентификатором 345 освободил устройство 1», «В момент времени 456.789 транзакт с идентификатором 456 вышел из модели»..