- •Имитационное моделирование бизнес-процессов
- •Варианты заданий
- •Контрольные вопросы
- •Лабораторная работа № 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. Задание на лабораторную работу
- •Краткие теоретические сведения
- •Контрольные вопросы
- •Лабораторная работа №10 Изучение функционирования одноканальной замкнутой смо - системы массового обслуживания с простейшими потоками
- •Цель работы
- •1.2 Задание на лабораторную работу
- •Краткие теоретические сведения
- •1.3.1 Решение задачи имитационным методом
- •1.3.2 Создание имитационной модели
- •1.3.3 Особенности моделирования системы
- •1.3.4 Подготовка к моделированию системы
- •1.3.5Моделирование системы
- •Лабораторная работа №11 Изучение функционирования одноканальной смо с равномерными потоками
- •Цель работы
- •Задание на лабораторную работу
- •Краткие теоретические сведения
- •1.3.1 Создание имитационной модели процесса
- •1.3.2 Представление имитационной модели
- •1.3.3 Подготовка к моделированию
- •1.3.4 Моделирование системы
- •Лабораторная работа № 12 Изучение функционирования многоканальной замкнутой смо-системы с простейшими потоками
- •1.1 Цель работы
- •1.3 Выявление основных особенностей
- •1.3.1 Аналитический метод решения
- •1.3.5 Решение задачи имитационным методом
- •1.3.5.1 Постановка задачи
- •1.3.5.2 Краткие теоретические сведения
- •1.3.5.3 Представление имитационной модели
- •1.3.6 Подготовка к моделированию
- •1.3.7 Моделирование системы
- •Лабораторная работа №13 Изучение функционирования многофазной замкнутой смо - системы массового обслуживания с равномерными потоками
- •Цель работы
- •1.2 Задание на лабораторную работу
- •1.3 Краткие теоретические сведения
- •1.3.1 Создание имитационной модели
- •1.3.2 Подготовка к моделированию системы
- •1.3.3 Моделирование системы
- •Лабораторная работа №10 Изучение многофазной разомкнутой смо-системы с равномерными потоками
- •Цель работы
- •1.2 Задание на лабораторную работу
- •1.3 Краткие теоретические сведения
- •1.4 Создание имитационной модели
- •1.3.2 Представление имитационной модели
- •1.3.3 Подготовка к моделированию
- •1.3.4 Моделирование системы
- •Цель курсового проекта, общее задание и тематика работ
- •Содержание курсового проекта
- •Требования к оформлению курсового проекта и содержанию разделов
- •Раздел 5 должен содержать блок-диаграмму модели и описание gpss-программы работы модели системы. Основные условные обозначения для блок-диаграммы модели приведены в таблице 1.
- •Постановка задачи моделирования
- •Функциональная схема моделирования системы
- •3. Структурная схема модели в символах q-схем.
- •Метод построения модели
- •Описание gpss модели работы мастерской
- •Описание gpss-программы работы мастерской.
- •Анализ результатов моделирования.
1.3 Краткие теоретические сведения
Поскольку детали после выполнения последней операции покидают систему, то мы имеем разомкнутую производственную систему. Каждое требование - деталь -проходит обработку на трех станках. Таким образом, мы имеем трехфазную систему обслуживания.
1.4 Создание имитационной модели
Создание имитационной модели начнем с построения заголовка модели, который может быть представлен, например, в таком виде:
• GPSSW SMO_3f_r.gps
*
Моделирование
трехфазной разомкнутой *
* системы массового обслуживания *
О
собенности
моделирования данной системы заключаются
в следующем:
после выполнения операции на первом станке деталь поступает на обработку на второй. После выполнения операции на втором станке деталь поступает на обработку на третий. После выполнения операции на третьем станке деталь покидает систему;
процесс изготовления деталей продолжается до тех пор, пока время моделирования не превысит время моделирования системы.
Этот сектор моделирует время работы системы в течение рабочей смены, равной 480 мин.
Моделирование потока деталей начинается с помощью оператора GENERATE. В нашем примере он будет выглядеть так:
GENERATE 23,3
В поле А указывается среднее время поступления деталей на обработку, равное 23 мин. Отклонение от среднего времени составляет ±3 мин.
Далее деталь встает в очередь на выполнение первой операции на первом станке. Это можно промоделировать оператором QUEUE (Очередь), который только в совокупности с соответствующим оператором DEPART (Выйти) собирает статистическую информацию о работе моделируемой очереди. В нашем примере оператор QUEUE будет выглядеть так:
QUEUE OPER1
В поле операнда А дается символьное или числовое имя очереди. Дадим нашей очереди имя OPER1. Желательно, чтобы присваиваемое имя отражало суть описываемого элемента системы. Следуя логике, деталь может выйти из очереди только тогда, когда освободится станок (канал обслуживания). Для этого вводится оператор SEIZE (Занять), который определяет занятость канала обслуживания, и при освобождении последнего находящаяся впереди деталь (требование) выходит из очереди и идет в канал на обслуживание. Это может выглядеть так:
SEIZE STAN1
В поле операнда А дается символьное или числовое имя канала обслуживания. В нашей задаче каналу дано имя STAN1. Желательно, чтобы присваиваемое имя отражало суть описываемого элемента системы.
Выход детали из очереди фиксируется оператором DEPART с соответствующим названием очереди. В нашем примере это будет выглядеть так:
DEPART OPER1 .
Далее должно быть промоделировано время проведения первой операции, выполняемой первым станком. Это время в нашем примере составляет 24±1 мин. Для моделирования этого процесса используется оператор ADVANCE (Задержать), который в нашей задаче будет выглядеть так:
ADVANCE 24,1
После обработки (обслуживания) детали станком системе должно быть послано сообщение об освобождении канала обслуживания. Это делается с помощью оператора RELEASE (Освободить), который в нашей задаче записывается так:
RELEASE STAN1
Следует особо подчеркнуть, что парные операторы QUEUE и DEPART для каждой очереди должны иметь одно и то же, но свое уникальное имя. Это же относится и к операторам SEIZE и RELEASE.
После выполнения первой операции на первом станке деталь направляется ко второму станку для второй операции, где также возможна очередь. Время, затрачиваемое на перемещение детали от первого станка ко второму, промоделируем с помощью оператора ADVANCE, который в нашей задаче будет выглядеть так:
ADVANCE 5,2
Далее деталь (требование) встает в очередь для выполнения второй операции на втором станке. Это можно промоделировать оператором QUEUE, который в нашем примере будет выглядеть так:
QUEUE OPER2
В поле операнда А дается символьное или числовое имя очереди. Дадим нашей очереди имя OPER2. Деталь может выйти из очереди только тогда, когда освободится второй станок (канал обслуживания). Для этого вводится оператор SEIZE, который определяет занятость канала обслуживания, и при освобождении последнего находящееся впереди требование выходит из очереди и идет в канал на обслуживание. Это может выглядеть так:
SEIZE STAN2
В поле операнда А дается символьное или числовое имя канала обслуживания. В нашей задаче каналу дано имя STAN2.
Выход детали из очереди фиксируется оператором DEPART с соответствующим названием очереди. В нашем примере это будет выглядеть так:
DEPART OPER2
Далее должно быть промоделировано время выполнения второй операции вторым станком. Это время в нашем примере составляет 29+3 мин. Для моделирования этого процесса используется оператор ADVANCE, который в нашей задаче будет выглядеть так:
ADVANCE 29,3
После выполнения второй операции на втором станке системе должно быть послано сообщение об освобождении канала обслуживания. Это делается с помощью оператора RELEASE, который в нашей задаче записывается так:
RELEASE STAN2
Время, затрачиваемое на перемещение детали от второго станка к третьему, промоделируем с помощью оператора ADVANCE, который в нашей задаче будет выглядеть так:
ADVANCE 6,1
Далее деталь (требование) встает в очередь для выполнения третьей операции на третьем станке. Это можно промоделировать оператором QUEUE, который в нашем примере будет выглядеть так:
QUEUE OPER3 '
В поле операнда А дается символьное или числовое имя очереди. Дадим нашей очереди имя OPER3. Деталь может выйти из очереди только тогда, когда освободится третий станок (канал обслуживания). Для этого вводится оператор SEIZE, который определяет занятость канала обслуживания, и при освобождении последнего находящееся впереди требование выходит из очереди и идет в канал на обслуживание. Это может выглядеть так:
SEIZE STAN3
В поле операнда А дается символьное или числовое имя канала обслуживания. В нашей задаче каналу дано имя STAN3.
Выход детали из очереди фиксируется оператором DEPART с соответствующим названием очереди. В нашем примере это будет выглядеть так:
DEPART OPER3
Далее должно быть промоделировано время выполнения третьей операции третьим станком. Это время в нашем примере составляет 12+3 мин. Для моделирования этого процесса используется оператор ADVANCE, который в нашей задаче будет выглядеть так:
ADVANCE 12,3
После выполнения третьей операции на третьем станке системе должно быть послано сообщение об освобождении канала обслуживания. Это делается с помощью оператора RELEASE, который в нашей задаче записывается так:
RELEASE STAN3
Определение времени моделирования основано на использовании простой модели измерения времени, состоящей из трех операторов:
