АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Пример моделирования системы с одним прибором и очередью

Читайте также:
  1. A) на этапе разработки концепций системы и защиты
  2. A) поднимали на белой кошме
  3. C. неживые системы
  4. C. развитие знаний в форме дообучения на дополнительной последовательности примеров
  5. C. развитие знаний в форме дообучения на дополнительной последовательности примеров
  6. I.2 Реформирование и современная структура банковской системы РФ.
  7. I.3.2.Становление советской системы управления
  8. I.6.1.Кризис административно-командной системы в условиях завершения восстановления народного хозяйства после окончания Отечественной войны.
  9. I.Дисперсные системы
  10. II.Примерная тематика курсовых работ
  11. III. После этого раненую конечность лучше всего зафиксировать, например, подвесив на косынке или при помощи шин, что является третьим принципом оказания помощи при ранениях.
  12. III.4.2. Административная реформа. Системы и структуры федеральных органов исполнительной власти

Постановка задачи. Интервалы прихода клиентов к банкамату распределены равномерно в интервале 18 ± 6 мин. Время использование банкомата клиентом распределено равномерно, 16 ± 4 мин. Клиенты подходят к банкомату, обслуживаются в порядке «первым пришел – первым обслужен» и уходят. Модель на GPSS должна обеспечить сбор статистических данных об очереди. Промоделировать работу банкомата в течение 8 ч. модельного времени.

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

Таблица определений. Составим таблицу определений для данного примера. Единица времени - 1 мин.

 

Элементы GPSS Назначение
Транзакты: 1-й сегмент модели 2-й сегмент модели Приборы: BANC Очереди: QBANC   Клиенты Таймер   Банкомат   Очередь к банкомату

 

Блок-схема модели приведена в приложении 2.

Программа на языке GPSS:

 

;MODEL SEGMENT 1
GENERATE 18, 6 ;Приход клиентов
QUEUE QBANC ;Присоединение к очереди
SEIZE BANC ;Занятие банкомата
DEPART QBANC ;Уход из очереди
ADVANCE 16,4 ;Обслуживание в банкомате
RELEASE BANC ;Освобождение банкомата
TERMINATE   ;Уход из модели
;MODEL SEGMENT 2
GENERATE   ;Таймер модельного времени
TERMINATE   ;Завершение прогона
START    

 

Выходные данные:

 

Результаты моделирования. Прибор BANC использовался в течение 86% времени и был занят обслуживанием 26 раз. Среднее время интервала обслуживания прибора BANC равно 15,93 мин. В очереди никогда не было более одного клиента. Число входов в очередь – 26. Среди них 15 нулевых.

Расшифровка всех позиций выходных данных дана в приложении 3.

 

Управление временем моделирования. После того, как модель введена, она запускается на выполнение командой

 

START А, [В, С, D]

 

Целое число, указываемое в поле A команды START называется счетчиком. С помощью счетчика определяется момент, когда моделирование должно быть прекращено. Это осуществляется следующим образом. В процессе выполнения модели каждый раз, когда какой-либо транзакт уничтожается в блоке TERMINATE, одновременно с этим GPSS вычитает из счетчика команды START число, заданное в поле A этого блока TERMINATE. Процесс моделирования прекращается в тот момент, когда значение счетчика команды START становится нулевым или отрицательным. Одновременно с остановом модели начинается вывод всей собранной статистики на печать, точнее - вывод в текстовый файл с именем REPORT.GPS.

Такой механизм управления временем моделирования позволяет задавать остановку модели по достижению заданного числового момента времени или же по заданному логическому условию, возникшему в модели.

Примеры:

· START 50 - означает закончить моделирование после прохождения через модель 50 транзактов;

· START 200, NP – для 200 транзактов прогон без статистики;

· START 3,,1 - выдача статистики трижды, через каждые А транзактов, указанных в блоке GENERATE А.

Поле В может быть использовано для блокирования выдачи статистики в конце счета. Для этого в поле В записывают мнемоническое обозначение NP.

Поле С позволяет задавать интервалы промежуточной выдачи статистик.

Если в поле D указано значение «1», это является указанием на то, что при выдаче статистик нужно распечатывать списки текущих и будущих событий, список прерываний, списки пользователя. В противном случае поле оставляют незаполненным.

 

Изменение маршрута транзактов. Блок TRANSFER (ПЕРЕДАТЬ). Обычно транзакты последовательно проходят по блокам задающим структуру модели, однако возможны ситуации когда требуется направить транзакт к вполне определенному блоку, расположенному в произвольном месте структуры.

Блок TRANSFER используется для того чтобы направить входящее в него сообщение к любому блоку. Передача может быть осуществлена логически, статистически, условно и безусловно. Вид передачи определяется мнемоническими обозначениями указанными в операнде А блока TRАNSFER.

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

Вид и общая форма записи блока:

 

TRANSFER А, В, С

 

 

а) Безусловный переход. Операнд А блока TRANSFER отсутствует, все транзакты, входящие в этот блок, будут передаваться в блок, имя которого указано в операнде В (наличие этого операнда обязательно). TRANSFER, NEXT означает, что транзакты всегда направляются в блок с именем NEXT.

б) Условный переход. Возможен выбор одного из двух блоков (BOTH) или более двух (ALL). Ограничимся рассмотрением более распространенного первого случая. Режим BOTH задается в операнде А блока TRANSFER. В блоке осуществляется выбор одного из двух блоков, указанных в операндах В и С. Порядок выбора принят следующий. Сначала транзакт пытается войти в блок, заданный в операнде В, если это невозможно, то пытается войти в блок, указанный в операнде С, причем эти попытки происходят в один момент модельного времени. Если и вторая попытка безрезультатна, то транзакт задерживается в блоке TRANSFER до следующего момента времени. Затем опрос блоков повторяется, пока выход не будет найден.

Если блок TRANSFER в режиме BOTH не имеет операнда В, то это означает переход к блоку, следующему за ним.

Следует помнить, что режим BOTH существенно увеличивает время счета модели. Например, запись TRANSFER BOTH, NEXT, SAM означает, что транзакт попытается войти сначала в блок с именем NEXT, а если это не удастся, то в блок SAM.

в) Статистический переход. Если в операнде А блока TRANSFER записана десятичная дробь, то производится случайный выбор между блоками, указанными в операндах В и С. Вероятность выбора блока С задается дробью. Например, запись TRANSFER 0.25, ROB, IRA означает, что с вероятностью 0,25 (25% всех транзактов) сообщение будет направленно в блок IRA. Остальные 75% попадут в блок ROB.

Для каждого транзакта выбирается только один из путей и только в момент входа в блок TRANSFER.

Отсутствие операнда В интерпретируется аналогично случаю условного перехода.

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)