Скачиваний:
63
Добавлен:
04.01.2020
Размер:
46.31 Кб
Скачать

22. Основные блоки СИМ Арена и их атрибуты.

Имитационная модель компании Systems Modeling включает следующие основные элементы: источники и стоки (Create и Dispose), процессы (Process) и очереди (Queue). Источники – это элементы, от которых в модель поступает информация или объекты. Скорость поступления данных или объектов от источника обычно задается статистической функцией. Сток – это устройство для приёма информации или объектов. Понятие очереди близко к понятию хранилища данных – это место, где объекты ожидают обработки.

Имитационная модель в системе Arena представляет собой граф, узлами которого являются модули. Модули связаны между собой с помощью соединений, по которым между модулями перемещаются транзакты (динамический объект имитационной модели).

Транзакт (entity, в терминах системы Arena) – это динамический объект имитационной модели, который перемещается между статическими узлами модели. Примеры транзактов – деталь, автомобиль, клиент, документ и т.д. Характеристики транзактов задаются с помощью атрибутов. Существуют системные атрибуты, установленные по умолчанию. Например, «время существования транзакта» (Total Time), «серийный номер транзакта» (Serial Number), тип транзакта (Entity Type) и т.д. Имеется атрибут «картинка» (Entity Picture), поменяв программно его значение можно изменить визуальное изображение транзакта.

Модуль Create (генератор транзактов) – вводит транзакты в модель. Например, покупатели приходят в магазин, суда прибывают в порт, в службу поддержки поступают звонки и т.д.

Для модуля задаются такие параметры: - название модуля (Name);

- тип поступающего транзакта (Entity type);

- интервал между прибытиями транзакта (Time Interval);

- число транзактов при каждом поступлении (Entities per arrival);

- максимальное число поступлений (Max Arrivals).

Интервал может быть задан как:

- «константа» (Constant). Транзакты поступают в модель строго через равные промежутки времени. Например, деталь поступает на участок обработки строго один раз в минуту.

- «по расписанию» (Schedule). В этом случае следует выбрать расписание. Например, в течение дня у магазина наблюдается разная интенсивность поступления клиентов – в «часы пик» она значительно увеличивается.

- «выражение» (Expression) Указывается функция распределения и ее параметры.

- «случайный» (Random(Expo)). В системах массового обслуживания очень часто встречается пуассоновский поток заявок. При таком потоке интервал времени между появлениями заявок подчиняется экспоненциальному закону распределения. Для отражения этого частого случая и предусмотрена опция «Random (expo)». Можно выбрать ее и задать математическое ожидания интервала. Эта опция введена для удобства. С тем же результатом можно использовать выражение expo(15).

Модуль Dispose (терминатор транзактов) – выводит транзакты из модели (уничтожает транзакты). Например, покупатели после покупки товара, покидают магазин.

Модуль Process (обработка, действие) – моделирует обработку транзактов: обслуживание покупателей продавцом, разгрузку судна, ремонт телевизора и т.д. Обработка транзактов может потребовать использования ресурсов. Так, для сверления детали нужен соответствующий станок, для обслуживания покупателя – продавец и т.п. Данный модуль является модулем основной обработки объекта. В модуле определяются типы размещения и вывода ресурсов для обработки, тип отображения времени и стоимости обработки на объектах и, наконец, есть возможность определять иерархию процесса путём создания вложенной модели (субмодели).

Process

Name

Process 1

Имя (уникальный идентификатор) модуля. Автоматически имя генерируется по форме “Название_модуля №_модуля”. Arena позволяет задавать любые имена модулей.

Type

Standard

Тип определения логики в пределах модуля. Существует два таких типа:

  1. Standard – вся логика обработки будет определена в пределах самого модуля Process (при выборе данного типа будет отображаться соответствующее поле Logic (см. ниже));

  2. Submodel – логика обработки будет определена во вложенной модели, которая может содержать любое количество логических модулей (среди которых также могут быть модули Process типа Submodel – поэтому в результате получается определяемая пользователем иерархия).

При выборе типа Submodel активным остаётся лишь поле Report Statistics. Для определения логики вложенной модели следует кликнуть правой кнопкой мыши на изображении соответствующего блока Process и выбрать команду Edit Submodel, а для выхода из вложенного модуля на уровень выше – кликнуть правой кнопкой мыши на рабочей области субмодели и выбрать Close Submodel.

Action

Delay

Action – параметр, от которого зависит логика модуля (вместе с параметрами Priority и Resources он составляет поле Logic).

Action – это тип обработки, которая происходит в пределах модуля. Arena предлагает 4 таких типа:

  1. Delay – простая задержка времени (без использования ресурсов).

  2. Seize Delay – указанные ресурсы будут размещены в данном модуле (их выпуск произойдёт в какое-то более позднее время).

  3. Seize Delay Release – указанные ресурсы будут размещены в данном модуле лишь на время обработки всех объектов.

  4. Delay Release – указанные ресурсы были предварительно размещены в другом модуле (модулях) и используются только для обработки прибывшего объекта, после которой выпускаются.

Priority – параметр, указывающий значение приоритета, которое используется, если в модели одновременно находятся объекты, ожидающие одинаковый ресурс. Может принимать значения. высокий(1), средний(2) и низкий(3) приоритет. (Не используется при выборе типов Delay и Delay Release.)

Resources – лист ресурсов и ресурсных наборов, используемых для обработки объектов. (Не используется при выборе типа Delay.)

Окно Resources содержит определяющее поле Type (тип), которое имеет два значения – Resource (ресурс) и Set (набор ресурсов).

При выборе Resource необходимо заполнить следующие поля:

  1. Resource Name – имя ресурса.

  2. Quantity – количество ресурса, которое будет необходимо для обработки одного объекта.

При выборе Set заполняются поля:

  1. Set Name – имя набора ресурсов.

  2. Quantity – количество выбранного из набора ресурса, необходимое для обработки одного объекта.

  3. Selection Rule – правило выбора ресурсов из набора. Существуют следующие правила:

  • Cyclical – циклический выбор среди доступных ресурсов из набора (1-й ресурс; 2-й ресурс; 3-й ресурс; 1-й ресурс и т.д.).

  • Random – случайный выбор.

  • Preferred Order – выбор первого доступного ресурса

  • Specific Member – использование только указанного ресурса. Для указания появляется поле Set Index, в котором необходимо указать номер, под которым ресурс входит в набор (это, в свою очередь, можно выяснить в окне Members модуля Set).

  • Largest Remaining Capacity – выбор ресурса, объём которого максимален.

  • Smallest Number Busy – выбор ресурса, запасы которого максимальны.

Save Attribute – указывается имя атрибута, который будет хранить индексный номер выбранного для использования ресурса.

Delay Type

Triangular

Тип распределения (или метод определения) значений задержки объектов в процессе обработки.

В выпадающем списке данного поля представлено пять значений:

  1. Constant – константа (значение вносится в поле Value);

  2. Normal – нормальное распределение (указываются математическое ожидание и среднеквадратическое отклонение;

  3. Triangular – треугольное распределение (указываются минимальное и максимальное значения (поля Minimum и Maximum);

  4. Uniform – равномерное распределение (указываются минимальное и максимальное значения (поля Minimum и Maximum));

  5. Expression – другое распределение, задаваемое пользователем. Кроме того, в поле Expression можно задать определённое выражение.

Units

Hours

Единицы времени значений задержки.

Allocation

Value Added

Определяет, как время и стоимость процесса обработки будут отображаться в объектах. Процесс может рассматриваться одним из пяти представленных ниже типов:

  1. Value Added (добавленное значение) – полные время и стоимость прохождения объектом процесса записываются в параметры Value Added, которые при включенной записи статистики (yes в поле Record Entity Statistics модуля Dispose) отражаются в полях VA Time и VA Cost отчёта и используются для определения общих (суммарных) значений времени (Total Time) и стоимости (Total Cost) нахождения объекта в модели.

  2. Non-Value Added (не добавленное значение).

Различие между способами Value Added и Non-Value Added состоит в том, что значение Value Added отображается на объекте, а Non-Value Added – нет.

Transfer (перемещение) – полные время и стоимость прохождения объектом процесса.

Wait (ожидание) – полные время и стоимость прохождения объектом процесса.

Other (другое значение) – полные время и стоимость прохождения объектом процесса записываются в параметры Other, которые при включенной записи статистики (yes в поле Record Entity Statistics модуля Dispose) отражаются в полях Other Time и Other Cost отчёта и используются для определения общих (суммарных) значений времени (Total Time) и стоимости (Total Cost) нахождения объекта в модели.

Minimum

.5

Назначение данных полей зависит от указанного в поле Delay Type распределения, поэтому их описание находится выше – в описании Delay Type.

Value

1

Maximum

1.5

Report Statistics

yes

Определение необходимости автоматического сбора статистических данных. (Два значения – yes (подтверждение сбора) и no (отрицание сбора).)

Модуль ветвления Decide – направляет входящие транзакты по одной из исходящих ветвей в зависимости от условия или случайным образом. Существует два варианта модуля Decide – «По вероятности» (by chance) или по условию (by condition).

В модуле decide может проверяться: - значение переменной (Variable); - значение элемента массива (Variable Array 1D, Variable Array 2D); - значение атрибута транзакта (Attribute); - тип транзакта (Entity Type); - произвольное выражение (expression). Для блока Decide возможно наличие нескольких выходов.

Модуль Assign обеспечивает присвоение значений переменным модели и атрибутам транзакта, проходящего через модуль. Может выполнять сразу несколько присвоений. Кнопками Add, Edit и Delete можно вести список присвоений. При этом открывается специальное окно, где указывается тип присвоения, имя переменной или атрибута, присваиваемое значение.

Модуль Batch (в дословном переводе “партия”) представляет собой группировочный механизм в рамках имитационной модели. Партии объектов могут группироваться постоянно или временно. Временные партии в дальнейшем должны быть разбиты с использованием модуля Separate.

Queue (Basic Process) – данный модуль (в дословном переводе “очередь”) может использоваться для изменения правила ранжирования объектов в указанной очереди. По умолчанию для всех очередей устанавливается правило ранжирования First in First Out. В модуле есть специальное поле Shared, которое позволяет определить очередь как разделённую.

Типичное использование модуля:

  • Реализация стека (вместо обычной очереди) ожидания ресурса в модуле Process;

  • Организация выбора из очереди по значению указанного атрибута.

Record – данный модуль (в дословном переводе “отчёт”) используется для сбора статистических данных в имитационной модели. Для сбора в модуле доступны различные виды статистической информации, включая статистические (стоимостные и временные) показатели объекта, время между прибытиями объектов в модуль, общие наблюдения и т.п.

Соседние файлы в папке Мои вопросы