Модель системы массового обслуживания на Симуле

Модель системы массового обслуживания на Симуле

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

В студенческом машинном зале расположены две мини-ЭВМ и одно

устройство подготовки данных (УПД). Студенты приходят с интервалом 8±3 мин.

и треть из них хочет испытать УПД и ЭВМ, а остальные только ЭВМ. Допустимое

количество студентов в машинном зале 4 чел., включая работающего на УПД.

Работа на УПД занимает 9±4 мин. Работа на ЭВМ - 15±10 мин.; 20%

работавших на ЭВМ возвращаются для повторного использования УПД и ЭВМ и

остаются при этом в машинном зале.

Если студент пришел в машинный зал, а там уже есть 4 чел., то он ждет

не более 15±2 мин. в очереди в машинный зал и, если нет возможности в

течение этого времени начать работать, то он уходит.

Смоделировать работу в машинном зале в течение 48 часов.

Определить:

- загрузку УПД и обеих ЭВМ,

- максимальную длину очереди в машинный зал,

- среднее время ожидания в очереди в машинный зал,

- распределение общего времени работы студента в машинном зале,

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

ушли.

II. Решение задачи.

1. Текст программы.

Текст программы полностью приведен в конце данного документа.

2. Схема решения в терминах предметной области.

Собираясь приступить к работе в машинном зале, студент подходит к нему

и проверяет, есть ли очередь в машинный зал. Если таковой нет, то он ищет в

последнем свободное место, а если очередь есть, то становится в ее конец.

Затем, либо входит в машинный зал, либо создает очередь, состоящую из

одного человека (его самого). После этого ждет в течение 15±2 мин. Если за

это время место в зале не освобождается, студент уходит, в противном же

случае, он покидает очередь и попадает в машинный зал.

Работа студента в машинном зале происходит следующим образом. Студент

определяет, приступить ли ему к работе УПД, а затем на одной из ЭВМ (по

условию задачи, число таких студентов составляет треть от общего числа

посетителей) или пройти сразу к ЭВМ (все остальные). После работы на ЭВМ

каждый студент может либо покинуть машинный зал, либо приступить к

повторной работе (20%), теперь уже точно на УПД и ЭВМ.

3. Схема решения задачи в терминах языка Симула.

1. Глобальные переменные и массивы.

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.

2. Процессы.

GENER – процесс, имитирующий появление студента у машинного зала;

STUDENT – процесс, описывающий действия студента;

COMP – процесс, изображающий работу двух мини-ЭВМ;

UPD – процесс, изображающий работу УПД;

3. Получение результатов.

Для получения результатов используются перечисленные в пункте 2.3.1

глобальные переменные и следующие соотношения:

Загрузка УПД = 1 - ;

Загрузка ЭВМ = 1 - ;

Число ушедших студентов = Num;

Максимальная длина очереди = MAX;

Среднее время ожидания в очереди = .

Распределение общего времени работы студента в машинном зале получено

в виде массивов std и tim.

4. Комментарии к программе.

Подробные комментарии приведены в тексте программы в конце данного

документа.

5. Результаты.

Загрузка УПД = 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 |

III. Исследование адекватности модели.

1. Метод исследования.

Рассмотренный далее метод не претендует на абсолютную точность, но,

тем не менее, позволяет примерно оценить соответствие модели реальной

ситуации.

Метод заключается в использовании внесения изменений в начальные

данные. При этом анализируются изменения получаемых результатов.

2. Применение метода к поставленной задаче.

Вся информация по измененным входным данным и полученным результатам

представлена в таблице 3.1 Знаком “|” отделяются значения для исходной

задачи от значений для задачи, получаемой в результате внесения изменений.

Таблица 3.1

|Параметр |Загрузка |Загрузка |Максима|Среднее |Число |

| |УПД, % |ЭВМ, % |льная |время |ушедших |

| | | |длина |ожидания, |студентов, |

| | | |очереди|мин. |чел. |

| | | |, чел. | | |

|Время | | | | | |

|работы | | | | | |

|системы |33,8 | |81,2 | |3 | 3 |9,79 | 9,72|109 | 324 |

|48 | 100 |32,0 |83,1 | | | |

|часов | | | | | |

|Число | | | | | |

|мини-ЭВМ |33,8 | |81,2 | |3 | 3 |9,79 | |109 | 229 |

|2 | 1 |21,4 |81,0 | |12,12 | |

|шт. | | | | | |

|Число | | | | | |

|человек в|33,8 | |81,2 | |3 | 3 |9,79 | 9,76|109 | 149 |

|зале |31,8 |83,6 | | | |

|4 | 2 | | | | | |

|Интервал | | | | | |

|между | | | | | |

|приходами|33,8 | |81,2 | |3 | 18 |9,79 | |109 | 2650 |

|студентов|34,0 |83,2 | |14,36 | |

| | | | | | |

|8±3 | 1 | | | | | |

|Число | | | | | |

|желающих | | | | | |

|использов|33,8 | |81,2 | |3 | 3 |9,79 | |109 | 192 |

|ать УПД и|47,1 |76,6 | |11,17 | |

|ЭВМ | | | | | |

|33 | 66 | | | | | |

|% | | | | | |

Приведенные здесь результаты показывают, что полученная модель с

достаточной точностью отображает реальную ситуацию в рамках поставленной

задачи.

IV. Сравнительный анализ моделей.

В приведенной ниже таблице даны искомые значения, полученные при

помощи двух моделей: в реализации на GPSS и в реализации на языке Симула.

Таблица 4.1

|Величина |GPSS |Симула |

|Загрузка УПД |55,2 |33,8 |

|Загрузка ЭВМ |96,5 |81,2 |

|Число ушедших |78 |109 |

|студентов | | |

|Максимальная длина |4 |3 |

|очереди | | |

|Среднее время |9,02 |9,79 |

|ожидания | | |

Как видно, приведенные величины отличаются друг от друга

несущественно. Это означает, что обе модели с достаточной точностью можно

считать адекватными друг другу .