Применение в моделях копий и организация синхронизации движения транзактов
В реальных системах при взаимодействии различных элементов модели может возникать необходимость синхронизации процессов во времени. Например, при некотором технологическом швейном процессе могут параллельно обрабатываться разные части, детали одного изделия, а затем собираться в единое по мере готовности. Для организации таких процессов используют блоки SPLIT (создать копию), ASSEMBLE (объединить), MATCH (синхронизировать).
Блок GENERATE является основным средством создания транзактов. Каждый транзакт, вышедший из этого блока определяет собственное семейство, все они различны. Блок SPLIT создаёт заданное число копий транзакта, все они принадлежат тому же семейству, что и транзакт-оригинал. Формат блока:
SPLIT A,[B],[C]
Операнд А определяет число создаваемых копий. Операнд В – номер блока, к которому переходят копии, порождающий транзакт переходит в следующий блок. Операндом С задаётся номер параметра, в котором будут храниться последовательные номера копий, при этом порождающему присваивается номер 1, затем первой копии номер 2 и т. д.
Каждая новая копия становится членом семейства транзактов. Планировщик объединяет транзакты одного семейства в список. К семейству можно применять блоки, GATHER, MATCH.
Блок ASSEMBLE используется для объединения заданного числа транзактов, принадлежащих одному семейству, в один транзакт.
ASSEMBLE A ,где А – число объединяемых транзактов.
Первый транзакт какого-либо семейства, вошедший в блок, помещается в список синхронизации и ожидает прихода определённого количества транзактов своего же семейства. После сборки из блока выходит только один транзакт, остальные уничтожаются.
Обратите внимание, что если в блоке SPLIT создалось n копий, то операнд А должен принять значение n + 1 (n копий и оригинал).
Блок GATHER имеет тот же формат, что и ASSEMBLE , отличие состоит в том, что транзакты после сборки не уничтожаются, а все одновременно направляются к следующему блоку.
Блок MATCH предназначен для синхронизации движения транзактов одного семейства, продвигающихся в модели по параллельным путям. В программе необходимо поместить два сопряжённых блока, каждый в одном из параллельных путей. Например:
MET1 MATCH MET2
MET2 MATCH MET1
При входе транзакта в один из блоков проверяется наличие транзакта данного семейства в сопряжённом блоке. Если его нет, то данный транзакт помещается в список синхронизации и будет ждать появления своего «брата» в сопряжённом блоке. Если он там есть, то оба транзакта одновременно пропускаются в следующие блоки и удаляются из списка синхронизации.
Рассмотрим пример. Техническое обслуживание (ТО) средств связи проводят в два этапа две группы специалистов. После поступления (190 мин) выполняется первый этап специалистами обеих групп параллельно (80 мин. и
70 мин). Затем происходит уточнение мероприятий, время на него будем считать нулевым. После выполняется второй этап со средним временем 30 и 40 мин. Затем третья группа проводит комплексную проверку средства в течении 60 мин. Все интервалы поступления и времени обслуживания подчинены экспоненциальному закону. Определить коэффициенты занятости групп специалистов.
Построим модель, модельное время – секунда:
Post EQU 11400; интервал поступления средств связи
Obs2 Equ 4800; среднее время 1 группой на 1 этапе
Obs3 Equ 4200; 2 группой на 1 этапе
Obs4 Equ 1800; 1 группой на 2 этапе
Obs5 Equ 2400; 2 группой на 2 этапе
Obs6 Equ 3600; 3 группой на 3 этапе
generate (Exponential(1,0,Post)) ; источник средств связи
Split 1,Met1 ; разделение на два транзакта
seize Gr1 ;занять первую группу
Advance (Exponential(2,0,Obs2))
Par1 Match Par2 ;уточнение плана мероприятий
Advance (Exponential(2,0,Obs4))
release Gr1
transfer ,Met2
Met1 seize Gr2 ;занять 2 группу
Advance (Exponential(2,0,Obs3))
Par2 Match Par1 ;уточнение плана мероприятий
Advance (Exponential(2,0,Obs5))
Release Gr2
Met2 Assemble 2 ;передача СС 3 группе
Seize Gr3
Advance (Exponential(2,0,Obs6))
Release Gr3
Terminate
Моделирование, проведённое в течение 288 000 (сек.) позволяет определить коэффициенты загрузки групп: 0,835 ; 0,834 и 0,318.
- Имитационное моделирование систем
- Предисловие
- Список сокращений
- Введение
- Глава 1. Основные понятия моделирования систем, классификация моделей и методов с точки зрения философии, моделирование представляет собой один из методов познания мира.
- 1.1. Основные понятия теории моделирования
- 1.2. Основные методы моделирования
- 1.3. Классификация моделей
- Глава 2. Математическое моделирование систем с использованием марковских случайных процессов
- 2.1. Элементы теории марковских случайных процессов, используемые при моделировании систем
- 2.2. Марковские цепи
- 2.3. Непрерывные цепи Маркова
- 2.4. Финальные вероятности состояний
- Необходимые и достаточные условия существования финальных вероятностей
- 2.5. Математическое представление потока событий
- 2.6. Компоненты и классификация моделей систем массового обслуживания (смо)
- 2.7. Расчёт основных характеристик смо на основе использования их аналитических моделей
- Одноканальные системы с отказами
- Одноканальные системы с ограниченной очередью
- Многоканальные системы с отказами
- Многоканальные системы с ограниченной очередью
- Контрольные вопросы и задания
- Глава 3. Имитационное моделирование в среде gpss
- 3.1. Общие сведения о языке gpss
- Основные объекты языка gpss
- 3.3. Основные блоки языка gpss
- Поступление транзактов в модель
- Уничтожение транзактов
- Моделирование работы одноканальных устройств
- Моделирование очередей
- Моделирование многоканальных устройств (мку)
- Изменение маршрута движения транзактов
- Разработка модели и процесс моделирования в gpss. Пример создания модели
- Управление процессом моделирования
- Объекты вычислительной категории языка: переменные и функции. Сохраняемые ячейки
- Определение и использование функций
- Работа с параметрами транзакта, приоритеты
- Блок mark
- Применение в моделях копий и организация синхронизации движения транзактов
- Использование блока test
- Контрольные задания по моделированию Моделирование систем с условием перераспределения заявок в заданном статистическом режиме
- Заключение
- Библиографический список
- Основные элементы стандартного отчёта
- Системные числовые атрибуты (сча)
- Сча транзактов
- Сча блоков
- Сча одноканальных устройств
- Сча очередей
- Сча таблиц
- Сча ячеек и матриц ячеек сохраняемых величин
- Сча вычислительных объектов
- Сча списков и групп
- 10. Какое действие выполняет этот оператор: transfer both,lab1,lab2
- 11. Какое действие выполняет этот оператор: transfer 0.4,lab1,lab2
- 12. Правильно ли описана эта команда: transfer ,met:
- 13. Какое действие выполняет этот блок: lines1 storage 2
- Индивидуальные зачётные задания по имитационному моделированию систем
- 4. Реорганизация заправочной станции
- 8. Модель швейного цеха
- 10. Моделирование работы заправочной станции
- 11.Моделирование работы станции скорой помощи
- 13. Модель автобусной остановки
- 14.Моделирование работы кафе
- 15. Задача о конвейере
- 17.Моделирование цеха обработки
- Алфавитно-предметный указатель
- Рассказова Марина Николаевна имитационное моделирование систем
- 644099, Омск, Красногвардейская, 9