Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GPSS_lab_01.doc
Скачиваний:
5
Добавлен:
13.08.2019
Размер:
148.48 Кб
Скачать

3. Моделирование

Модель турникета на футбольном стадионе

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

Зрители подходят к турникету футбольного стадиона каждые 7±7 секунд и встают в очередь, в которой находятся до тех пор, пока не пройдут на стадион. Проход через турникет занимает 5±3 секунды.  Требуется определить время, необходимое для того, чтобы через турникет прошло 300 че-ловек. 

Листинг

*****************************************************************************  * Модель турникета  * Время в секундах  *****************************************************************************  In_use EQU 5 ;Среднее время.  Range EQU 3 ;Полуинтервал.  GENERATE 7,7 ;Прибытие людей.  QUEUE Turn ;Вход в очередь.  SEIZE Turn ;Занятие турникета.  DEPART Turn ;Выход из очереди.  ADVANCE In_use,Range ;Использование турникета.  RELEASE Turn ;Освобождение турникета.  TERMINATE 1 ;Один зритель вошел.  *****************************************************************************

Объяснение работы модели:

Операторы описания переменной EQU задают среднее время прихода зрителей и допуск.

Блок GENERATE генерирует транзакты, которые имитируют приход к турникету зри-телей каждые 7+(-)7 сек.

Блок QUEUE вместе с блоком DEPART собирает статистику по ожиданию в очереди людей, которые еще не пользовались турникетом. Связанная с этим ожиданием очередь но-сит имя TURN.

В блок SEIZE входит один ожидающий транзакт, как только турникет становится доступным. Это приводит к тому, что турникет становится занятым, предотвращая тем самым попадание большего числа транзактов в блок SEIZE. Коль скоро транзакт вошел в блок SEIZE и занял устройство, имитирующее турникет, то он входит в блок DEPART для того, чтобы собрать статистику о времени ожидания в очереди TURN. Время ожидания не включает в себя время нахождения в турникете.

Блок ADVANCE задерживает транзакт на имитационное время, в течениe которого турни-кет занят одним зрителем, который только что занял его. Турникету требуется 5 +(-) 3 сек. для пропускания одного зрителя.

Блок RELEASE освобождает турникет, так что новый транзакт может завладеть им при входе в блок SEIZE.

Блок TERMINATE удаляет транзакт из модели после того, как зритель прошел через турникет.

Проведение моделирования:

Войдите в интерфейс среды GPSS World 2000 с файлом TURNSTIL. Cкопируйте его под своим именем и загрузите в систему GPSS World 2000 командой меню Command \ Create Simulation. По этой команде система создает окно JOURNAL, в котором фиксируются все выполняемые команды, ответные действия системы, сообщения об ошибках.

Подготовьте окно Expression для просмотра абсолютного системного времени, использования турникета ( дробное время занятости в частях от тысячи ) и числа зрителей, прибывающих к турникету. ( СЧА GPSS - AC1, FR$TURN, N1 соответственно ), для чего наберите команду из меню Window \ Simulation Window \ Expression Window.

В окнo Edit Expression \ Label внесите TURN, в окно Edit Expression \ Expression внесите FR$TURN, нажмите кнопки View и Memorise.

Очистите окна Label и Expression и аналогично внесите для просмотра следующие СЧА (AC1 и N1 ). Нажмите кнопку «ОК».

Примечание: для просмотра этих СЧА при неоднократном запуске моделирования активизируйте вывод данных кнопкой View окна Memorised.

Начните моделирование командой меню Command \ Start - 300

Моделирование остановится, когда 300 транзактов пройдут через блок TERMINATE. Это имитирует 300 зрителей, прошедших через турникет. В окне Expression просмотрите затребованные данные.

Набирая из меню команды Window \ Simulation Window \ Blocks Window

. . . . . . . . . . . \ Facilities Window

. . . . . . . . . . . \ Queues Window ,

проанализируйте информацию по состоянию блоков модели.

В конце моделирования автоматически создается окно отчета Report, включающее в себя все данные о работе блоков модели.