Часть полного текста документа: Моделирование работы в машинном зале в терминах Simula          Постановка задачи.          В студенческом машинном зале расположены две мини-ЭВМ и одно устройство подготовки данных (УПД). Студенты приходят с интервалом 8±3 мин. и треть из них хочет испытать УПД и ЭВМ, а остальные только ЭВМ. Допустимое количество студентов в машинном зале 4 чел., включая работающего на УПД.     Работа на УПД занимает 9±4 мин. Работа на ЭВМ - 15±10 мин.; 20% работавших на ЭВМ возвращаются для повторного использования УПД и ЭВМ и остаются при этом в машинном зале.     Если студент пришел в машинный зал, а там уже есть 4 чел., то он ждет не более 15±2 мин. в очереди в машинный зал и, если нет возможности в течение этого времени начать работать, то он уходит.     Смоделировать работу в машинном зале в течение 48 часов.     Определить: * загрузку УПД и обеих ЭВМ, * максимальную длину очереди в машинный зал, * среднее время ожидания в очереди в машинный зал, * распределение общего времени работы студента в машинном зале, * количество студентов, которые не дождались возможности поработать и ушли.          Решение задачи.          Текст программы.          Текст программы полностью приведен в конце данного документа.          Схема решения в терминах предметной области.          Собираясь приступить к работе в машинном зале, студент подходит к нему и проверяет, есть ли очередь в машинный зал. Если таковой нет, то он ищет в последнем свободное место, а если очередь есть, то становится в ее конец. Затем, либо входит в машинный зал, либо создает очередь, состоящую из одного человека (его самого). После этого ждет в течение 15±2 мин. Если за это время место в зале не освобождается, студент уходит, в противном же случае, он покидает очередь и попадает в машинный зал.      Работа студента в машинном зале происходит следующим образом. Студент определяет, приступить ли ему к работе УПД, а затем на одной из ЭВМ (по условию задачи, число таких студентов составляет треть от общего числа посетителей) или пройти сразу к ЭВМ (все остальные). После работы на ЭВМ каждый студент может либо покинуть машинный зал, либо приступить к повторной работе (20%), теперь уже точно на УПД и ЭВМ.          Схема решения задачи в терминах языка Симула.     Глобальные переменные и массивы.          M,U,C,P - целые числа, служащие для создания в программе четырех различных потоков независимых величин;     I - счетчик цикла FOR (используется для вывода таблицы);     MZCap - целое число, обозначающее число мест в машинном зале;     Num - число студентов, покинувших очередь;     Nmb - число студентов, дождавшихся обслуживания;     MAX - максимальная длина очереди;     Toz - суммарное время ожидания в очереди;     Pupd - время простоя УПД;     Pcomp - время простоя обеих ЭВМ;     QUEUE - очередь в машинный зал;     QUPD - очередь на УПД;     QCOMP - очередь на ЭВМ;     UPD1 - ссылка на УПД;     COMP1 - ссылка на пару ЭВМ;     Std - массив действительных чисел из 10 элементов, в которые помещаются данные о числе студентов, проделавших работу за i-й интервал времени [Ti-1,Ti];     Tim - массив действительных чисел, в котором хранятся границы временных интервалов Ti.          Процессы.          GENER - процесс, имитирующий появление студента у машинного зала;     STUDENT - процесс, описывающий действия студента;     COMP - процесс, изображающий работу двух мини-ЭВМ;     UPD - процесс, изображающий работу УПД;          Получение результатов.          Для получения результатов используются перечисленные в пункте 2.3.1 глобальные переменные и следующие соотношения:          Загрузка УПД = 1 - Pupd/time;     Загрузка ЭВМ = 1 - Pcomp/time;     Число ушедших студентов = Num;     Максимальная длина очереди = MAX;     Среднее время ожидания в очереди =Toz/(Num + Nmb)          Распределение общего времени работы студента в машинном зале получено в виде массивов std и tim.          Комментарии к программе.          Подробные комментарии приведены в тексте программы в конце данного документа.          Результаты.          Загрузка УПД = 33,8%;     Загрузка ЭВМ = 82,1%;     Число ушедших студентов = 109;     Максимальная длина очереди = 3;     Среднее время ожидания в очереди = 9,79 мин.     Распределение общего времени работы студентов в машинном зале приведено в таблице 2.1.     Таблица 2.1     Число студентов Интервалы времени 14 0 - 15 86 15 - 30 56 30 - 45 20 45 - 60 19 60 - 75 24 75 - 90 12 90 - 105 9 105 - 120 8 120 - 135      Исследование адекватности модели.          Метод исследования.          Рассмотренный далее метод не претендует на абсолютную точность, но, тем не менее, позволяет примерно оценить соответствие модели реальной ситуации.     Метод заключается в использовании внесения изменений в начальные данные.  ............   |