Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л.р.№6 Моделирование работы мастерской по ремон...doc
Скачиваний:
8
Добавлен:
21.08.2019
Размер:
73.73 Кб
Скачать
  1. Представление имитационной модели и запуск процесса моделирования

Для представления имитационной модели выполните следующие действия:

3.1. Щелкните по пункту File главного меню системы. Появится выпадающее меню;

3.2. Щелкните по пункту New (Создать) выпадающего меню. Появится диалого­вое Окно Новый документ;

3.3. Выделите пункт Model и щелкните по кнопке ОК. Появится окно модели, в котором введите данную программу.

4. Создание имитационной модели процесса

Для создание имитационной модели выполнить следующие действия:

4.1. В главном меню GPSS наберите заголовок с именем GPSS-модели, который может быть представлен, например, в таком виде:

; GPSS World - SotTelefon.GPS.

**********************************************

* Модель мастера по ремонту сотовых телефонов *

**********************************************

GENERATE 2400,480,,,1 ; капитальный ремонт

QUEUE Overhaul ; постановка в очередь на сервисное обслуживание

QUEUE Alljobs ; сбор общей статистики

SEIZE Master ; мастер принял телефон

DEPART Overhaul ; покинуть очередь к мастеру

DEPART Alljobs ; сбор общей статистики

ADVANCE 600,60 ; завершение работы (10+/-1) часов

RELEASE Master ; мастер освободился

TERMINATE ; удаление транзакта

************************************************

GENERATE 90,10,,,3 ; заявки на мелкий ремонт

QUEUE Spot ; постановка в очередь к мастеру для немедленного

ремонта

QUEUE Alljobs ; сбор общей статистики

PREEMPT Master,PR ; мастер принял телефон

DEPART Spot ; освобождение очереди к мастеру для

немедленного ремонта

DEPART Alljobs ; сбор общей статистики

ADVANCE 15,5 ; время для настройки и устранения неисправностей

RETURN Master ; мастер освободился

TERMINATE

*************************************************

GENERATE 300,60,,,2 ; заявки на обычный ремонт

QUEUE Service ; постановка в очередь на обслуживание

QUEUE Alljobs ; сбор общей статистики

PREEMPT Master,PR ; мастер начал работу

DEPART Service ; освобождение очереди на обслуживание

DEPART Alljobs ; сбор общей статистики

ADVANCE 120,30 ; время обычного обслуживания

RETURN Master ; мастер освободился

TERMINATE

************************************

GENERATE 480 ; каждый транзакт означает один рабочий день

TERMINATE 1

* Таблицы для сбора статистики по очереди

Overhaul QTABLE Overhaul,10,10,20

Spot QTABLE Spot,10,10,20

Service QTABLE Service,10,10,20

Alljobs QTABLE Alljobs,10,10,20

Построчное описание функционирования модели

GENERATE - Каждые 40 часов генерируются транзакты, представляющие сотовые телефоны, которые нуждаются в капитальном ремонте. Единица времени равна одной минуте. Данный вид работы имеет низкий приоритет, равный 1.

QUEUE - Два блока QUEUE используются для разделения статистических данных. Очередь с именем Overhaul собирает статистику о времени начала работ по капитальному ремонту телефонов. Вторая очередь с именем Alljobs необходима для фиксации статистики по всем трем типам работ.

SEIZE - Задания на капитальный ремонт ждут и пытаются занять телевизионного мастера, представленного устройством Master.

DEPART - Когда транзакт-задание на капитальный ремонт получает право занять устрой­ство (мастера), его время ожидания завершается. Два блока DEPART регистрируют вре­мя ожидания для двух очередей.

ADVANCE - Этот блок моделирует время капитального ремонта, равное 600±60 минутам.

RELEASE - Когда капитальный ремонт подходит к концу, транзакт, представляющий это задание, отдает право занять устройство, которое представляет масте­ра. Это позволяет начать выполнение другого задания на капитальный ремонт.

TERMINATE - Здесь уничтожается транзакт, представляющий задание на капитальный ремонт, но счетчик завершения не уменьшается.

GENERATE - Данным блоком создаются транзакты, представляющие задания на немед­ленный ремонт, они появляются в среднем каждые 90 минут. Эти транзакты имеют бо­лее высокий приоритет, чем задания на капитальный ремонт.

QUEUE - Два блока QUEUE используются для разделения статистических данных Оче­редь с именем Spot собирает статистику о времени начала работ по немедленному ре­монту техники. Вторая очередь с именем Alljobs необходима для фиксации статистики по всем трем типам работ.

PREEMPT - немедленный ремонт может прерывать два других типа заданий, транзакты, представляющие задания на немедленный ремонт, пытаются войти в блок PREEMPT, ра­ботающий в приоритетном режиме, с целью занять мастера. В результате транзакт, пред­ставляющий капитальный ремонт или обычное обслуживание, будет временно вытеснен.

DEPART - Когда транзакт-задание на немедленный ремонт получает право занять устрой­ство (мастера), его время ожидания завершается. Два блока DEPART регистрируют вре­мя ожидания для двух очередей.

ADVANCE - Блок ADVANCE моделирует время ремонта, равное 15±5 минутам.

RELEASE - Когда немедленный ремонт подходит к концу, транзакт, представляющий это задание, отдает право занять устройство, которое представляет масте­ра. Это позволяет начать выполнение другого задания

TERMINATE - Здесь уничтожается транзакт, представляющий задание на немедленный ремонт, но счетчик завершения не уменьшается

GENERATE-TERMINATE - Этот сегмент модели функционирует точно так же, как и преды­дущий. Однако имеется одно отличие. В то время как задания на немедленный ремонт могут прерывать и обычные работы, и работы по капитальному ремонту, то обычные работы могут прерывать только работы по капитальному ремонту. Следовательно, для транзактов, представляющих обычный ремонт, мы устанавливаем приоритет, равный 2 и лежащий между приоритетами двух других типов работ

GENERATE - Транзкты создаются каждые 8 модельных часов и используются для подсчета дней.

TERMINATE - Подсчитанный транзакт немедленно удаляется. После удаления транзакта счетчик завершения уменьшается на 1, что позволяет нам управлять продолжительнос­тью процесса моделирования с помощью операнда А команды START.

QTABLE - Операторы QTABLE, начиная с Overhaul, определяют диаграммы статистики оче­редей. Каждая диаграмма может отображаться в окне «Table» («Таблицы») и будет автоматически внесена в стандартный отчет. Здесь нет необходимости вставлять блоки TABULATE, так как статистика регистрируется автоматически при входе транзакта в связанный с данным оператором блок DEPART.

Модель состоит из нескольких сегментов. Каждый сегмент имеет собственный тип транзактов. Первые три сегмента представляют соответственно работы по капитальному ремонту, немедленному ремонту и обычный ремонт Они все конкурируют за единственное устройство с именем Master, которое представляет мастера. Работы по капитальному ремонту имеют самый низкий приоритет.

Нижний сегмент путем создания и уничтожения одного транзакта каждый модельный день моделирует время работы. Только в этом сегменте блок TERMINATE уменьшает счетчик за­вершения, заданный в команде START. Процесс моделирования завершится, когда счетчик завершения (TG1) станет равным или меньше нуля.

Время ожидания мастера для каждого типа работ учитывается очередями Overhaul, Spot и Service. Время ожидания для всех типов работ учитывается очередью Alljobs. Время ожида­ния не включает время ремонта, оно включает только задержку до начала работы.

Для каждой очереди была определена Q-таблииа. Это позволяет очень просто получить автоматическую диаграмму времени ожидания для каждой категории работ.

  1. Создать процесс моделирования

    1. Щелкнуть по кнопке Command (Команда) главного меню. Появится выпадающее меню.

5.2. Щелкнуть по кнопке Create Simulation (Создать выполняемую модель). 5.2 выберите Command / START (Команда / START).

В диалоговом окне замените 1 на 50 и нажмите ОК.

Процесс моделирования закончится, когда 50 транзактов войдут в блок TERMINATE, что пред­ставляет 50 дней работы.

После завершения процесса моделирования GPSS World выводит отчет в файл отчета.