1.1. Общие сведения
имитационное моделирование товарный материальный запас
Дискретно-событийное моделирование обязано своим рождением Дж. Гордону, который в начале 1960-х спроектировал и реализовал на мэйнфреймах IBM систему GPSS. Основной объект в этой системе – пассивный транзакт (заявка на обслуживание), который может определенным образом представлять собой работников, детали, сырье, документы, сигналы и т.п. «Перемещаясь» по модели, транзакты становятся в очереди к одноканальным и многоканальным устройствам, захватывают и освобождают эти устройства, расщепляются, уничтожаются и т.д. Таким образом, дискретно-событийную модель можно рассматривать как глобальную схему обслуживания заявок. Аналитические результаты для большого количества частных случаев таких моделей рассматриваются в теории массового обслуживания.
Сегодня существует целый ряд инструментов, поддерживающих такой подход в моделировании: GPSS/PC, GPSS/H, GPSS World, Object GPSS, Arena, SimProcess, Enterprise Dynamics, Auto-Mod и др.
GPSS World – типичный современный представитель GPSS-семейства, реализованный для работы в среде MS Windows. Наличие встроенных инструментов статистической обработки результатов моделирования, встроенного языка программирования расчетов PLUS и др. позволяет создавать средствами GPSS World не только простые обучающие модели, но и более полезные приложения. Однако следует заметить, что GPSS/PC и Simpas предназначены для работы в операционной системе MS-DOS. Поэтому имеются ограничения, которые в ряде случаев не позволяют осуществить разработку и эксплуатацию моделей сложных систем с требуемой степенью детализации.
Отмеченных недостатков практически не имеет новая общецелевая система моделирования GPSS World, разработанная компанией Minuteman (США). Эта система является развитием GPSS/PC, но приобрела комбинированный характер, т.е. может моделировать как дискретные, так и непрерывные процессы. Эти возможности обеспечиваются как новыми объектами языка GPSS, так и включёнными в состав GPSS World языка Plus – языка программирования низкого уровня. Этот язык сделал GPSS World более открытой системой и позволяет взаимодействовать с другими приложениями, а также создавать пользователями свои библиотеки процедур. Язык Plus вместе с другими инструментальными средствами GPSS World позволил автоматизировать весь цикл исследований от разработки моделей до выработки рекомендаций за счёт новых функций планирования экспериментов и обработки статистики. Наконец, GPSS World работает в операционной системе Windows и максимально ориентирована на использование современных технологий, обеспечивающих высокую интерактивность и визуальное представление информации.
Несмотря на изначальную ориентацию GPSS на моделирование систем массового обслуживания, система оказалась удивительно долгоживущей и способной к развитию. Трудоемкость описания моделируемых систем в терминах бизнес-процессов может быть снижена за счет применения таких продуктов, как Object GPSS или ISS 2000. В частности, созданный в НТУУ «КПИ» под руководством В.Н. Томашевского пакет ISS 2000 представляет собой лингвистический процессор, с помощью которого пользователь в диалоговом режиме создает автоматически GPSS-программу и запускает ее на выполнение.
1.2. Моделирование в системе GPSS
1.2.1. Основы построения и принципы функционирования языка имитационного моделирования
Модель разрабатывается на языке GPSS и состоит из операторов, а объект "Модель" создается при помощи встроенного текстового редактора. Объект "Процесс моделирования" - это результат трансляции модели. Далее процесс моделирования запускается с помощью команд GPSS. По завершении моделирования, как правило, автоматически создается объект "Отчет".
Текстовый объект (текстовый файл GPSS World) предназначен для упрощения разработки больших моделей и создания библиотеки исходных текстов. То есть модель может быть разделена на наборы операторов, представляющие собой отдельные текстовые файлы, а затем объектом "Процесс моделирования" собрана из них. Объект "Процесс моделирования" может также создавать новые текстовые файлы с фрагментами модели, результатами моделирования, а также считывать и записывать данные в текстовые файлы.
GPSS World предназначена для имитационного моделирования систем с дискретными и непрерывными процессами. Языком моделирования в ней является язык GPSS, улучшенный встроенным языком программирования низкого уровня PLUS. Язык GPSS построен в предположении, что модель сложной системы можно представить совокупностью элементов и логических правил их взаимодействия в процессе функционирования моделируемой системы. Набор абстрактных элементов, называемых объектами, небольшой. Также набор логических правил ограничен и может быть описан стандартными операциями. Комплекс программ, описывающих функционирование объектов и выполняющих логические операции, является основой для создания программной модели.
Кроме этого комплекса в составе GPSS World имеется программа-планировщик, выполняющая следующие функции:
· обеспечение продвижения по заданным разработчиком маршрутам динамических объектов, называемых транзактами;
· планирование событий, происходящих в модели, путем регистрации времени наступления каждого события и выполнения их в нарастающей временной последовательности;
· регистрация статистической информации о функционировании модели;
· продвижение модельного времени в процессе моделирования системы.
Чтобы обеспечить правильную последовательность обработки событий во времени, имеются системные часы, хранящие значения абсолютного модельного времени
Объекты в моделируемой системе предназначены для различных целей. Совершенно не обязательно, чтобы в одной модели участвовали все типы объектов. Необходимо лишь наличие блоков и транзактов, иначе модель работать не будет.
Объекты подразделяются на 7 категорий и 15 типов, которые представлены в Таблице №1 (Приложение 1)
Рассмотрим назначение объектов GPSS.
Динамическими объектами являются транзакты, которые создаются в определенных точках модели, продвигаются планировщиком через блоки, а затем уничтожаются. Транзакты являются аналогами единиц - потоков в реальной системе. Они могут представлять собой различные элементы даже в одной модели. С каждым транзактом связаны параметры, которые используются для конкретных данных. Каждый транзакт может иметь любое число параметров. Параметры нумеруются или им даются имена. Номера параметров и имена используются для ссылок на значения, присвоенные параметрам. Транзактам может присваиваться приоритет. Приоритет определяет предпочтение, которое получает транзакт, когда он и другие транзакты претендуют на один и тот же ресурс.
Объекты аппаратной категории - это абстрактные элементы, на которые может быть декомпозирована реальная система. Воздействуя на эти объекты, транзакты могут изменять их состояние и влиять на движение других транзактов. К объектам этого типа относятся одноканальные устройства, памяти (многоканальные устройства) и логические ключи.
Одноканальные устройства (ОКУ) представляют собой оборудование, которое в любой момент времени может быть занято только одним транзактом. Например, один канал передачи данных, одноканальный ремонтный орган, один станок изготовления деталей, одно транспортное средство.
Многоканальные устройства (МКУ) предназначены для имитации оборудования, осуществляющего параллельную обработку. Они могут быть использованы одновременно несколькими тран-зактами. МКУ можно использовать в качестве аналога, например, многоканального ремонтного органа, нескольких каналов связи.
Для моделирования такого оборудования, как переключатели, имеющие только два состояния, в GPSS используются логические ключи.
Операционные объекты, т. е. блоки, задают логику функционирования модели системы и определяют пути движения транзактов между объектами аппаратной категории. В блоках могут происходить события четырех основных типов:
1. создание или уничтожение транзактов;
2. изменение числового атрибута объекта;
3. задержка транзакта на определенный период времени;
4. изменение маршрута движения транзакта в модели. Версия GPSS, реализованная в системе GPSS World, содержит 53 типа блоков.
В зависимости от назначения блоки подразделяются на несколько групп.
1. Блоки, осуществляющие модификацию атрибутов транзак-тов:
o генерирование и уничтожение транзактов GENERATE, SPLIT, TERMINATE, ASSEMBLE;
o временная задержка ADVANCE;
o синхронизация движения двух MATCH и нескольких GATHER транзактов;
o изменение приоритета транзакта PRIORITY;
o изменение параметров транзактов ASSIGN, INDEX, MARK, PLUS.
2. Блоки, изменяющие последовательность движения транзак-тов (блоки передачи управления): DISPLACE, TRANSFER, LOOP, TEST, GATE.
3. Блоки, связанные с группирующей категорией: ADOPT, ALTER, EXAMINE, JOIN, REMOVE, SCAN.
4. Блоки, описывающие объекты аппаратной категории:
o одноканальные устройства (технические средства) SEIZE, RELEASE, PREEMPT, RETURN, FUNAVAIL, FAVAIL;
o многоканальные устройства (памяти) ENTER, LEAVE, SAVAIL, SUNAVAIL;
o ключи (логические переключатели) LOGIC.
5. Блоки, сохраняющие необходимые значения для дальнейшего использования: SAVEVALUE, MSAVEVALUE.
6. Блоки для получения статистических результатов:
o очереди QUEUE, DEPART;
o таблицы TABULATE.
7. Блоки для организации списка пользователя: LINK, UNLINK.
8. Блоки для организации ввода-вывода:
o открытие/закрытие файла: OPEN/CLOSE;
o считывание/запись в файл: READ/WRITE;
o установка позиции текущей строки: SEEK.
9. Специальные блоки: BUFFER, COUNT, EXECUTE, INTEGRATION, SELECT, TRACE, UNTRACE.
Вычислительная категория служит для описания таких ситуаций в процессе моделирования, когда связи между компонентами моделируемой системы посредством процессом наиболее просто и компактно выражаются в виде математических (аналитических и логических) соотношений. Для этих целей в качестве объектов вычислительной категории введены арифметические и булевы переменные и функции.
Переменные представляют собой сложные выражения, которые включают константы, системные числовые атрибуты (СЧА), библиотечные арифметические функции, арифметические и логические операции.
Выражения могут применяться в переменных и операторах GPSS. При применении в переменных выражения определяются командами GPSS. При применении в операторах GPSS выражения определяются как часть языка PLUS.
Каждому объекту соответствуют атрибуты, описывающие его состояние в данный момент времени. Они доступны для использования в течение всего процесса моделирования и называются системными числовыми атрибутами (СЧА). Например, объект вычислительной категории - генератор случайных чисел имеет СЧА RNn - число, вычисляемое генератором равномерно распределенных случайных чисел номер n; у объекта динамической категории - транзакта СЧА: PR - приоритет обрабатываемого в данный момент транзакта; Pi - значение i-го параметра активного транзакта и др. Всего в GPSS World имеется свыше 50 СЧА.
Булевы переменные позволяют пользователю проверять в одном блоке GPSS одновременно несколько условий, исходя из состояния или значения этих условий и их атрибутов.
С помощью функций пользователь может производить вычисления непрерывных или дискретных функциональных зависимостей между аргументом функции (независимая величина) и зависимым значением функции.
Кроме библиотечных арифметических функций GPSS World имеет 24 встроенных генератора случайных чисел.
Объекты запоминающей категории обеспечивают обращения к сохраняемым значениям. Ячейки сохраняемых величин и матрицы ячеек сохраняемых величин используются для сохранения некоторой числовой информации. Любой активный транзакт может произвести запись информации в эти объекты. Впоследствии записанную в эти объекты информацию может считать любой транзакт. Матрицы могут иметь до шести измерений.
К статистическим объектам относятся очереди и таблицы. В любой системе движение потока транзактов может быть задержано из-за недоступности устройств. В этом случае задержанные транзакты ставятся в очередь - еще один тип объектов GPSS. Учет этих очередей составляет одну из основных функций планировщика. Планировщик автоматически накапливает определенную статистику относительно устройств и очередей. Кроме этого пользователь может собирать дополнительную статистическую информацию, указав специальные точки в модели.
Для облегчения табулирования статистической информации в GPSS предусмотрен специальный объект - таблица. Таблицы используются для получения выборочных распределений некоторых случайных величин. Таблица состоит из частотных классов (диапазонов значений), куда заносится число попаданий конкретного числового атрибута в каждый, тот или иной, частотный класс. Для каждой таблицы вычисляется также математическое ожидание и среднеквадратическое отклонение.
К группирующей категории относятся три типа объектов: числовая группа, группа транзактов и списки.
При моделировании транзакты хранятся в списках. Существует пять видов списков, только в одном из которых в любой момент времени может находиться транзакт:
1. текущих событий;
2. будущих событий;
3. задержки ОКУ или МКУ;
4. отложенных прерываний ОКУ;
5. пользователя.
Одноканальное устройство имеет:
· список отложенных прерываний - список транзактов, ожидающих занятия ОКУ по приоритету;
· список прерываний - список транзактов, обслуживание которых данным ОКУ было прервано;
· список задержки - список транзактов, ожидающих занятия ОКУ в порядке приоритета;
· список повторных попыток - список транзактов, ожидающих изменения состояния ОКУ.
Многоканальное устройство имеет:
· список задержки - список транзактов в порядке приоритета, ожидающих возможность занять освободившиеся каналы МКУ;
· список повторных попыток - список транзактов, ожидающих изменения состояния МКУ.
Список пользователя содержит транзакты, удаленные пользователем из списка текущих событий и помещенные в список пользователя как временно неактивные. Списки пользователя используются для организации очередей с дисциплинами, отличными от дисциплины "первым пришел - первым обслужен".
1.2.2 Построение моделей с устройствами
Для представления собственно обслуживания используются определенные элементы. Такими элементами могут быть либо люди, либо какие-то предметы. Независимо от этого подобные элементы в GPSS называют объектами аппаратной категории, к которой относят одноканальные (ОКУ) и многоканальные устройства (МКУ) и логические ключи.
Рассмотрение методов построения моделей с устройствами начнем с имитации функционирования ОКУ.
При моделировании возможны следующие режимы организации функционирования ОКУ:
· занятие ОКУ и его освобождение;
· прерывание обслуживания ОКУ;
· недоступность ОКУ и восстановление доступности.
... -текущих планов мероприятий – до исполнения. -перспективных планов мероприятий – 5 лет. Выводы по разделу 1. В первом разделе были рассмотрены теоретические основы управления качеством, являющимися базовыми при разработке системы управления качеством. Был затронут международный опыт данной деятельности. При работе над первым разделом была рассмотрена и представлена в разделе, процедура получения ...
... угля на складе на каждый день. Данный алгоритм представлен на рисунке 2.11 Рисунок 2.11 — Блок-схема алгоритма расчета оптимального запаса угля на складе Расчет оптимального запаса угля на складе Змиевской ТЭС начинается с ввода исходных данных о потреблении угля по дням в течение всего года. А также ...
... цикла наибольшую сложность составляет определение t мо. Значение остальных составляюших определяется сравнительно легко. Литература: Козловский В.А. и др. Производственный и операционный менеджмент. Учебник – СПб: «Специальная Литература», 1998. с. 276 6. Управление проектами Планирование, расписание и контроллинг проектов Управление большими проектами включает три фазы: 1) ...
... Сданные в бухгалтерию инвентаризационные описи должны тщательно проверяться и затем после проверки выводится результат инвентаризации. 4. Применение методов управления запасами в целях повышения экономической эффективности системы материально-технического снабжения предприятия 4.1 Регулирование параметров логистической концепции «точно в срок» на основе методов оценки надежности процесса ...
0 комментариев