- •Имитационное моделирование бизнес-процессов
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа № 2. Анализ и прогнозирование с учетом ведущих факторов на основе результатов имитационного моделирования
- •Варианты заданий
- •Контрольные вопросы
- •Постановка задачи
- •Метод построения модели
- •Описание моделирующего алгоритма
- •Результаты моделирования
- •Программа, построенная по исходным данным
- •Обозначение блоков программы
- •Заключение
- •Лабораторная работа № 5
- •5.3 Блоки и карты языка gpss
- •5.3.5 Блок generate
- •5.3.16 Карта initial
- •5.3.17 Блок savevalue
- •5.3.18 Карта variable
- •5.3.24 Карта qtable
- •5.3.25 Карта reallocate
- •5.3.26 Карта reset
- •5.3.27 Карта function
- •5.3.28 Карта rmult
- •5.3.29 Блок preempt
- •5.3.30 Блок return
- •5.3.31 Блок assign
- •5.3.32 Блок loop
- •5.3.33 Карта initial для установки начальных значений логических
- •5.3.34 Блок logic
- •5.3.35 Блок gate для логических переключателей
- •5.3.36 Блок test
- •5.3.37 Блок transfer в режиме all
- •5.4. Цель работы
- •5.5. Задание на лабораторную работу
- •5.6. Порядок выполнения работы
- •Метод построения модели на gpss
- •Исходные данные
- •Анализ полученных результатов
- •Лабораторная работа №6. Изучение функционирования одноканальной разомкнутой смо-системы массового обслуживания с простейшими потоками
- •Цель работы
- •Задание на лабораторную работу.
- •Краткие теоретические сведения
- •Построение имитационной модели процесса
- •Подготовка к моделированию системы
- •Моделирование системы
- •Задание на лабораторную работу
- •Краткие теоретические сведения
- •1.3.1. Создание имитационной модели
- •1.3.2. Представление имитационной модели
- •1.3.3. Подготовка системы к моделированию
- •1.3.4. Моделирование системы
- •1.4. Контрольные вопросы
- •Лабораторная работа №8. Изучение функционирования многоканальной разомкнутой системы массового обслуживания с простейшими потоками
- •Цель работы
- •Задание на лабораторную работу
- •Краткие теоретические сведения
- •1.3.1. Аналитический метод решения задачи
- •1.3.2. Имитационный метод решения задачи
- •1.3.3. Построение имитационной модели процесса
- •1.3.4. Подготовка системы к моделированию
- •1.3.5. Моделирование системы
- •Лабораторная работа №9. Изучение функционирования многоканальной разомкнутой смо-системы массового обслуживания со смешанными потоками
- •. Цель работы
- •1.2. Задание на лабораторную работу
- •Краткие теоретические сведения
- •Контрольные вопросы
- •Цель курсового проекта, общее задание и тематика работ
- •Содержание курсового проекта
- •Требования к оформлению курсового проекта и содержанию разделов
- •Раздел 5 должен содержать блок-диаграмму модели и описание gpss-программы работы модели системы. Основные условные обозначения для блок-диаграммы модели приведены в таблице 1.
- •Постановка задачи моделирования
- •Функциональная схема моделирования системы
- •3. Структурная схема модели в символах q-схем.
- •Метод построения модели
- •Описание gpss модели работы мастерской
- •Описание gpss-программы работы мастерской.
- •Анализ результатов моделирования.
5.3 Блоки и карты языка gpss
При описании блоков и карт используем следующие основные обозначения:
[ ] - необязательная запись,
{ } - обязательная запись,
Внутри скобок при необходимости перечисляются через запятую возможные альтернативы.
... - возможное продолжение аналогичных записей,
СЧА - СЧА$имя,
СЧА* - СЧА1*СЧА2 или СЧА*номер,
К - целая положительная (неотрицательная) константа,
имя - числовое или символическое имя,
метка - метка блока.
5.3.1 Карта SIMULATE
Карта указывает на необходимость проведения моделирования.
При отсутствии карты производится только трансляция исходного текста без прогона модели.
5.3.2 Карта END
Карта указывает на окончание текста на языке GPSS.
5.3.3 Карта EQU
Карта определяет числовой эквивалент для символического имени.
5.3.4 Карта START
Карта указывает на начало процесса моделирования (прогона модели).
START A,B,C,D
Операнд А. Начальное значение счетчика завершений. {K} указанное значение заносится в счетчик завершений. Моделирование прекращается когда значение счетчика числа завершений становится <=0.
Операнд В. Признак подавления печати. [NP] операнд подавляет выдачу печати статистики. По умолчанию печать не подавляется.
Операнд С. Начальное значение счетчика снимков. [К] указанное значение заносится в счетчик снимков. Когда значение счетчика снимков становится <=0, происходит выдача промежуточной статистики и восстановление начального содержимого счетчика снимков, после чего моделирование продолжается. По умолчанию печать промежуточной статистики не происходит.
Операнд D. Признак распечатки цепей. [1] при наличии операнда распечатывается содержимое системных цепей. По умолчанию содержимое цепей не распечатывается.
5.3.5 Блок generate
Блок предназначен для генерации транзактов.
GENERATE A,B,C,D,E,F,G
Операнд А. Средний интервал [К,СЧА]. Операнд задает средний интервал времени поступления транзактов в модель. По умолчанию А=0 .
Операнд В. Модификатор разброса [К,СЧА] или модификатор функции [FN$имя]. Модификатор разброса используется ,когда интервал поступления транзактов имеет равномерное распределение (средний интервал ± модификатор разброса, А ± В ). Модификатор функции используется, когда интервал поступления транзактов имеет распределение, отличное от равномерного. В этом случае конкретный интервал поступления транзактов определяется умножением среднего интервала на значение указанной функции (А*В), причем берется целая часть произведения. По умолчанию В=0. Должно выполняться условие В<=А.
Операнд С. Интервал смещения [С,СЧА]. Операнд определяет момент времени, в который должен появиться первый транзакт. По умолчанию смещение отсутствует и поступление транзактов определяется только операндами А,В.
Операнд D. Ограничитель [К,СЧА]. Операнд определяет число транзактов, которое должно быть сгенерировано. По умолчанию D=бесконечности.
Операнд Е. Уровень приоритета [К,СЧА]. Оператор определяет приоритет генерируемых транзактов от низшего (0) до высшего (127). По умолчанию Е=0.
Операнд F. Число параметров [К,СЧА]. Операнд определяет число параметров каждого транзакта (<=100). По умолчанию F=12 .
Первоначально из блока GENERATE транзакты выходят с нулевыми значениями всех параметров.
Операнд G. Тип параметров [F,H]. Операнд определяет формат параметров: F-полное слово (4 байта), Н-полуслово (2 байта). По умолчанию G=H.
Общие замечания по блоку GENERATE:
- СЧА в операндах ограничены следующими :V, X, XF, XH, FN, RN, C$1, N.
- Для избежания возможных ошибок моделирования после блока GENERATЕ следует помещать блок, не препятствующий входу транзактов в этот блок. Время генерации следующего транзакта будет вычислено после снятия блокирующего условия, т.е. когда сгенерированный транзат пройдет в следующий за GENERATE блок. Поэтому средний интервал поступления транзактов будет больше, чем среднее значение, заданное операндом А, что может привести к ошибке.
5.3.6 Блок TERMINATE.
Блок предназначен для удаления транзактов из модели.
TERMINATE A
Операнд А. Вычитаемое значение для счетчика завершений и счетчика снимков [К, СЧА, СЧА*]. При входе транзакта в данный блок значение операнда вычитается из содержимого счетчика завершений и счетчика снимков, если значение счётчика снимков было задано в карте START. По умолчанию А=0.
5.3.7 Блок SEIZE.
Блок предназначен для занятия транзактом прибора.
SEIZE A
Операнд А. Имя прибора {имя, СЧА, СЧА*}. Если прибор занят, то транзакт не может войти в данный блок.
5.3.8 Блок RELEASE
Блок предназначен для освобождения транзактом прибора.
RELEASEA
Операнд А. Имя прибора {имя, СЧА, СЧА*}.
5.3.9 Блок ADVANCE
Блок предназначен для задержки транзактов
ADVANCE A,B
Операнд А. Среднее время задержки [К, СЧА, СЧА*]. Операнд аналогичен операнду А блока GENERATE.
Операнд В. Модификатор разброса [К, СЧА, СЧА*] или модификатор функции [FN$имя]. Операнд аналогичен операнду В блока GENERATE. В данном блоке могут одновременно находиться два и более транзактов.
5.3.10 Карта STORAGE
Карта предназначена для задания емкости многоканального устройства.
имя STORAGE А
Операнд А. Емкость многоканального устройства {К}.
5.3.11 Блок ENTER
Блок предназначен для входа транзактов в многоканальное устройство.
ENTER А В
Операнд А. Имя многоканального устройства {имя, СЧА,СЧА*}.
Операнд В. Число единиц емкости устройства [К, СЧА, СЧА*]. По умолчанию В=1. При входе транзакта в данный блок транзакт занимает в устройстве число единиц емкости в соответствии с операндом В. Транзакт не может войти в блок, если доступная емкость устройства меньше значения операнда В.
5.3.12 Блок LEAVE
Блок предназначен для выхода транзактов из многоканального устройства.
LEAVE A B
Операнды А,В аналогичны операндам А,В блока ENTER.
5.3.13 Блок QUEUE
Блок предназначен для постановки транзактов в очередь.
QUEUE А В
Операнд А. Имя очереди {имя, СЧА,СЧА*}.
Операнд В. Число единиц очереди [К, СЧА, СЧА*]. По умолчанию В=1. При входе транзакта в данный блок, транзакт занимает в очереди число единиц в соответствии со значением операнда В.
5.3.14 Блок DEPART
Блок предназначен для ухода транзактов из очереди.
DEPART A В
Операнды А, В аналогичны операндам А, В блока QUEUE. Блоки QUEUE, DEPART позволяют получить статистику о функционировании очереди. При их отсутствии очередь создается также, но статистика не собирается.
5.3.15 Блок TRANSFER
Блок предназначен для передачи транзактов.
TRANSFER А В C
Безусловный режим. Операнд А отсутствует, операнд В {метка}, операнд С отсутствует. Например, TRANSFER ,MET1
Условный режим BOTH. Операнд А {BOTH}, операнд В {метка}, операнд С {метка}. Например, TRANSFER BOTH,MET1,MET2. Транзакт, поступающий в блок TRANSFER, последовательно проверяет два пути. Сначала транзакт из данного блока TRANSFER пытается войти в блок, указанный операндом B. Затем, если вход невозможен, то – в блок, указанный операндом С. Если и этот вход невозможен, то повторяется проверка путей.
Статистический режим. Операнд А {частота}, операнд В {метка}, операнд С {метка}. Операнд определяет относительную частоту (вероятность), с которой транзакты из блока TRANSFER переходят в блок, указанный операндом С. Во всех остальных случаях транзакты переходят в блок, указанный операндом В. Частота записывается в виде десятичной точки и не более 3-х цифр после нее. Например, TRANSFER .25,TWO,ONE.
25% -------> ONE
75% -------> TWO
