
- •Федеральное агентство по образованию
- •Моделирование систем Утверждено редакционно-издательским советом университета в качестве учебного пособия
- •Введение
- •Р.Декарт
- •1. Общие сведения о моделировании систем
- •1.1. Основные понятия и определения
- •1.2. Принципы подхода в моделировании систем
- •Назначение;
- •1.3. Классификация видов моделирования систем
- •Н.Винер
- •2. Математмческие схемы моделирования систем
- •2.1. Понятие математической схемы
- •2.2. Математическая схема общего вида
- •2.3. Типовые математические схемы
- •2.3.1. Непрерывно-детерминированные модели (d–схемы)
- •2.3.2. Дискретно-детерминированные модели (f–схемы)
- •Автомат второго рода, для которого функция выходов не зависит от входной переменной X(n), называется автоматом Мура:
- •Отмеченная таблица переходов автомата Мура
- •Отмеченная таблица переходов автомата Мура с пятью состояниями (z0, z1, z2, z3, z4), двумя входными (x1, x2) и тремя выходными (y1, y2, y3) сигналами
- •Отмеченная таблица переходов асинхронного автомата Мура с тремя состояниями (z0, z1, z2), тремя входными (x1, x2, x3) и тремя выходными (1y, y2, y3) сигналами
- •2.3.3. Дискретно-стохастические модели (p–схемы)
- •2.3.4. Непрерывно-стохастические модели (q–схемы)
- •2.3.5. Обобщённые модели (a–схемы)
- •Оператор сопряжения r
- •Ф.Рузвельт
- •3. Формализация и алгоритмизация процесса функционирования систем
- •3.1. Последовательность разработки и машинной реализации моделей
- •3.2. Построение концептуальной модели системы и её формализация
- •3.3. Алгоритмизация модели и её машинная реализация
- •3.4. Получение и интерпретация результатов моделирования
- •Дж.Бокс
- •4. Моделирование систем массового обслуживания
- •4.1. Имитационное моделирование
- •Имитировать (англ. Simulate) – значит вообразить, постичь суть явления, не прибегая к экспериментам на реальном объекте.
- •Полезность методов исследования в научной работе (по данным сша)
- •Проведение эксперимента с данной моделью включает в себя следующие действия:
- •Имитационное моделирование работы магазина
- •В результате получаем:
- •4.2. Среда и функциональная структура языка моделирования gpss
- •Категории и типы объектов gpss
- •Стандартные числовые атрибуты
- •Ограничение на количество объектов
- •Список основных событий и действий, которые они вызывают
- •4.3. Система программного обеспечения gpss/pc
- •4.3.1. Объекты gpss/pc
- •4.3.2. Кодирование операторов gpss/pc
- •4.3.3. Блоки, ориентированные на сообщения
- •4.3.4. Блоки, изменяющие порядок прохождения блоков сообщениями
- •4.3.5. Блоки для обработки сообщений, принадлежащих одному
- •4.3.6. Списки пользователя
- •4.3.7. Устройства
- •4.3.8. Многоканальные устройства
- •4.3.9. Очереди
- •4.3.10. Операторы контроля управления
- •4.4. Руководство пользователя спо gpss/pc
- •4.4.1. Команды gpss/pc
- •4.4.2. Виртуальные окна и редактор исходных текстов моделей
- •4.4.3. Стандартная выходная статистика
- •Заключение
- •Библиографический Список
4.3.6. Списки пользователя
В GPSS/PC имеется тип списков сообщений, названных списками пользователя, которые дают возможность удалять сообщения из списков текущих событий и переводить их во временно неактивное состояние. Впоследствии эти сообщения возвращаются в список текущих событий.
4.3.6.1. Блок LINK
Блок LINK имеет следующий формат записи:
LINK <A>,<B>,[<C>]
Блок LINK удаляет сообщение из списка текущих событий и помещает его в список пользователя.
Поле А задает номер списка пользователя, в который будет помещено вошедшее сообщение. Операнд А может быть именем, положительным целым, СЧА.
Поле В задает алгоритм упорядочивания списка пользователя. Операнд В может быть LIFO, FIFO, именем, целым или СЧА.
Допустимые операнды:
- FIFO – вошедшее сообщение помещается в конец списка пользователя;
- LIFO – вошедшее сообщение помещается в начало списка пользователя;
- номер параметра – входящие сообщения располагаются в списке пользователя в соответствии со значением указанного параметра. Сообщения располагаются по возрастанию значения этого параметра. Чем меньше значение параметра, тем ближе сообщение к началу списка, чем больше значение параметра, тем ближе сообщение к концу списка.
Поле С, указывающее альтернативный выход, используется при описании различных ситуаций, возникающих в очередях. Операнд С может быть именем, положительным целым, СЧА.
Если поле С пусто, индикатор, связанный с заданным списком пользователя, устанавливается в единицу. Это приводит к тому, что все входящие сообщения безусловно заносятся в список пользователя, определенный полем А в том порядке, какой задан полем В.
Если поле С не пустое, проверяется индикатор списка пользователя. Если индикатор списка установлен в единицу, вошедшее сообщение заносится в список пользователя в том порядке, какой задан в поле В. Если индикатор списка установлен в "0", он переводится в единицу, и вошедшее сообщение переходит к блоку, заданному в поле С.
Пример: LINK HOLD,FIFO
В этом примере вошедшее сообщение помещается в конец списка пользователя с именем HOLD.
Стандартными числовыми атрибутами, связанными с описываемым оператором, являются:
CA<номер списка> – среднее число сообщений в списке пользователя с именем <номер списка>;
CC<номер списка> – общее число сообщений в списке пользователя с именем <номер списка>;
CH<номер списка> – текущее число сообщений в списке пользователя с именем <номер списка>;
CM<номер списка> – максимальное число сообщений в списке пользователя с именем <номер списка>;
CT<номер списка> – среднее время пребывания сообщения в списке пользователя с именем <номер списка>, которое рассчитывается следующим образом:
4.3.6.2. Блок UNLINK
Блок UNLINK имеет следующий формат записи:
UNLINK [<X>] <A>,<B>,[<C>],[<D>],[<E>],[<F>]
Блок UNLINK удаляет сообщения из списка пользователя. Указатели отношения, записываемые во вспомогательном поле операции <X>, определяют, какое явное условие следует рассматривать. Если указатель отношения не задан, предполагается отношение равенства (Е).
Указатели отношения следующие:
- 'G' – больше. Отношение истинно, если значение параметра, заданного в поле D, больше значения, заданного в поле Е;
- 'GE' – больше или равно. Отношение истинно, если значение параметра, заданного в поле D, больше или равно значению, заданному в поле Е;
- 'L' – меньше. Отношение истинно, если значение параметра, заданного в поле D, меньше значения, заданного в поле Е;
- 'LE' – меньше или равно. Если значение параметра, заданного в поле D, меньше или равно значению, заданному в поле Е, то отношение истинно;
- 'E' – равно. Отношение истинно, если значение параметра, заданного в поле D, равно значению, заданному в поле Е;
- 'NE' – не равно. Отношение истинно, если значение параметра, заданного в поле D, не равно значению, заданному в поле Е.
Поле А задает номер списка пользователя, из которого удаляются одно или несколько сообщений. Операнд А может быть именем, положительным целым или СЧА.
В поле В указывается номер блока, к которому переходят удаленные сообщения. Операнд В может быть именем, положительным целым, СЧА.
Поле С задает счетчик числа удаленных сообщений. Операнд С может быть "ALL", именем, положительным целым или СЧА. Значение СЧА является числом удаляемых сообщений. Может быть задано "ALL", что означает удаление всех сообщений.
Пример использования блока UNLINK: UNLINK HOLD, REENTRY, 1
Первое сообщение из списка пользователя с именем HOLD помещается в блок с именем REENTRY. Оно заносится в список текущих событий за сообщением с таким же приоритетом. Входящее сообщение переходит к следующему блоку.
Стандартными числовыми атрибутами, связанными с описываемым оператором являются те же, что и для LINK.