
- •Введение
- •1. Система имитационного моделирования arena 9.0.
- •1.1. Начало работы с Arena 9.0.
- •1.1.1. Создание модели с помощью пп Arena 9.0.
- •1.1.2. Интерфейс пп Arena 9.0.
- •1.2. Рабочая среда программы Arena 9.0
- •1.3. Панель основных процессов
- •1.3.1. Графические модули
- •Модуль Create
- •Модуль Process
- •Модуль Decide
- •4. Модуль Batch
- •5. Модуль Separate
- •6. Модуль Assign
- •7. Модуль Record
- •8. Модуль Dispose
- •1.3.2. Модули данных
- •1. Модуль Entity
- •2. Модуль Queue
- •3. Модуль Resource
- •Модуль Schedule
- •5. Модуль Set
- •6. Модуль Variable
- •1.5. Программы-приложения
- •1.6. Поиск оптимальной альтернативы с помощью инструментария OptQuest
- •1.7. Создание вложенной иерархии подмоделей в Arena 9.0
- •1.8. Панель отчетов
- •1.9. Панель навигации
- •2. Панель инструментов программы arena 9.0.
- •2.1. Стандартная панель инструментов (Standard).
- •2.2. Панель инструментов Вид (View).
- •2.3. Панель инструментов Порядок (Arrange).
- •2.4. Панель инструментов Анимации (Animate).
- •2.5. Панель инструментов Рисование (Draw).
- •2.6. Панель инструментов Выполнение взаимодействий (Run Interaction).
- •2.7. Панель инструментов Интеграции (Integration).
- •2.8. Обзор меню.
- •3. Термины и определения, используемые в arena 9.0.
- •3.1. Определение Шаблона.
- •3.2. Определение Процесса
- •3.3. Определение Объекта
- •4.2. Понятия и термины, используемые в формировании модели.
- •4.3. Шаблоны, Панели и Модули.
- •4.4. Размещение модулей.
- •4.5. Маркеры модуля.
- •4.6. Данные Модуля и Диалоги.
- •4.7. Логические модули и модули данных.
- •4.8. Локальные и общедоступные операнды.
- •4.9. Элементы и свойства.
- •4.10. Определение повторяющихся групп значений операнда.
- •4.11. Потоки объектов между логическими модулями.
- •4.12. Прямой поток объектов через пункты подключения и соединители.
- •4.13. Повторение пунктов подключения.
- •4.14. Косвенный поток объектов через станции перемещения
- •5. Редактирование модели
- •5.1. Перемещение Модулей.
- •5.2. Удаление Модулей и Соединителей.
- •5.3. Редактирование Значений Данных Модуля.
- •5.5. Копирование Модулей.
- •5.6. Добавление/Редактирование Статического Фона и Объектов анимации.
- •6. Панель common
- •6.1. Модули панели Common.
- •7. Моделирование в системе arena 9.0. На примерах.
- •Пример №1
- •Пример №2.
- •Пример №3.
- •Использованная литература и информационные источники.
7. Моделирование в системе arena 9.0. На примерах.
Системы обычно моделируются в Arena используя ориентацию на процессы, при изучении объектов, протекающих через систему. Модель состоит из графически представленных объектов, которые двигаются по системе по мере их обработки. Вы строите модель в Arena располагая взаимосвязанные модули, через которые протекают объекты. Такие модели обычно содержат, по крайней мере, один входной модуль и один или несколько выходных модулей.
Механизм построения модели в Arena следующий. Вы начинаете с подключения одной или более шаблонной панели. Эти панели показывают модули, которые можно использовать. Ваша модель содержит модельное окно, которое открывается в меню File. Чтобы построить модель вы выбираете подходящие модули, размещаете и связываете их в рабочем пространстве. Затем вы открываете диалоговые окна и вводите необходимые данные для модулей.
Пример №1
Пример создания модели:
В этом примере создадим модель процесса рассмотрения заявки на продажу дома. Построим блок-схему, отображающую основные этапы данного процесса.
Запуск Arena 9.0
Если Arena 9.0 еще не запущена на вашем компьютере, то откройте меню Пуск → Программы → Rockwell Software → Arena 9.0 → Arena 9.
При моделировании процессов в Arena, используются три основных области окна программы. Левая колонка рабочей области – Project Bar – содержит панели с основными типами объектов, которые пригодятся вам в работе:
Basic Process: Содержит фигуры моделирования, названные модулями, то, что вы будете использовать, чтобы описать ваш процесс.
Reports: Содержит сообщения, которые являются доступными для показа результатов прогонов модели.
Navigate: Позволяет показывать различные представления вашей модели, включая иерархию подсистем (подмоделей).
Добавлять/удалять панели можно из меню File → Template Panel → Attach/Detach.
Построение модели
Рассмотрим пример построения модели системы в Arena 9. Данная система представляет собой рассмотрение агентом по недвижимости заявки о продаже квартиры. Модель состоит из нескольких элементарных процессов, которые присущи любой системе, какую бы предметную область вы не рассматривали.
Появление заявки
Построение модели начинается с модуля Create. Это - отправная точка для входящих компонентов модели.
1. Перетащите модуль Create из панели модулей в окно модели.
Название по умолчанию «Create1». Можно переименовать этот модуль в соответствии с предметной областью.
Обработка заявки
Затем добавим модуль Process, обозначающий рассмотрение заявки.
1. Для того, чтобы Arena автоматически связала уже существующий Create1 c создаваемым Process, убедитесь, что в данный момент модуль Process1 выбран.
2. Перетащите модуль Process с панели модулей в окно модели. Arena автоматически свяжет его с Create1.
Имя процесса по умолчанию – Process1.
Примечание: Если связь между Create и Process автоматически не появилась, вы можете сделать это из меню Object → Connect, или нажав на кнопку Connect на панели инструментов. Начните связь, щелкнув на выходе модуля Create и затем щелкнуте на входе модуля Process.
Проверка результата обработки заявки
Теперь логично добавить в модель процесс проверки результатов рассмотрения заявки. Таким модулем является Decide. Он позволит определить, правильно ли заполнена заявка и принимать ли ее.
1. Выберите модуль Process1, для того чтобы модули связались автоматически.
2. Перетащите модуль Decide с панели элементарных процессов в окно модели.
Данная фигура имеет 2 выхода – True и False. В зависимости от того, принята или не принята заявка, она будет далее обрабатываться тем или иным процессом.
Завершите процесс
Теперь поместим на диаграмму 2 модуля Dispose, предназначенных для завершения потока и удаления входящего объекта. Один из модулей будет собирать правильно заполненные, принятые заявки, другой – заявки, возвращаемые клиентам.
1. Для автоматического связывания выберите модуль Decide1.
2. Перетащите модуль Dispose с панели процессов в окно модели. Он будет связан автоматически с положительным выходом модуля Decide. Название по умолчанию – Dispose1.
3. Снова выберите модуль Decide1.
4. Перетащите еще один модуль Dispose с панели процессов в окно модели. Он будет связан с отрицательным выходом модуля Decide1. Название по умолчанию - Dispose2 .
Что такое модуль?
В Arena модули – это элементы потоковой диаграммы и объекты данных, определяющие процесс моделирования. В модулях содержится вся информация относительно предметной области, ее компонент и параметров. В панели Basic Process существуют 8 основных модулей:
· Create: инициация потока. Здесь объекты попадают в моделируемую систему.
· Dispose: завершение потока. Объекты удаляются из системы.
· Process: обработка объекта, выполняемая как правило несколькими ресурсами, требующая некоторого времени.
· Decide: разветвление потока по принципу True/False.
· Batch: Накопление определенного количества объектов для передачи на последующую обработку.
· Separate: Разделение потока объектов на 2 потока для дальнейшей параллельной обработки или деление предварительно накопленной в Batch партии.
· Assign: Изменение значения какого-либо параметра во время прогона.
· Record: Предназначен для сбора статистики. Например, количество обработанных объектов или времени цикла.
Свойства прогнов задаются в меню Run → Setup → Replication Parameters. Там также существуют настройки характеристик ресурсов, процессов, очередей.
Задайте параметры модели
Теперь, когда созданы все основные процессы системы, нужно задать параметры для каждого модуля, включая название модуля и информацию, используемую в прогонах.
Поступившая заявка (Create)
Сначала зададим свойства модулю Create1, являющемуся поступлением заявки в модель. Его параметры будут включать тип создаваемого объекта. Мы также должны определить как часто поступают заявки. Зададим величину этого параметра как 2 часа и сделаем это событие случайным для естественного изменения времени поступления заявок.
1. Щелкните два раза по модулю Create1, чтобы открылся диалог Properties.
2. Задайте имя объекта, тип объекта, время между появлениями объектов, количество объектов, появляющихся за один раз.
3. Нажмите OK.
Что такое объект?
Объекты - покупатели, документы, изделия - которые обслуживаются, производятся, или иначе обрабатываются вашим процессом. В бизнес-процессах это часто документы или отчеты (чеки, контракты, заявки, заказы). В системах обслуживания объектами обычно являются люди (клиенты ресторана, больницы, аэропорта, и т.д.). Производственные модели чаще всего содержат некоторые части изделия, проходящую через процесс, будь то сырье, деталь или полуфабрикат.
Рассмотрение заявки (модуль Process)
Итак, мы уже поместили на диаграмму модуль инициации, появления заявки. Теперь заявка должна быть рассмотрена на предмет грамотного заполнения. Это займет некоторое время, что мы и определим с помощью модуля Process.
Для времени, которое понадобится для выполнения данной операции, мы зададим 3 характеристики – минимальное время, наиболее вероятное и максимальное. Также назначим ресурс, который должен выполнять этот процесс, - это будет Manager.
1. Щелкните два раза на модуле Process1, чтобы открыть свойства.
2. Задайте имя процесса в поле Name.
3. В поле Action выберите, например, Seize Delay Release, это позволит определить список ресурсов процесса.
4. Чтобы добавить ресурс, щелкните на кнопке Add. В появившемся диалоге ресурса задайте его характеристики (в нашем примере это будет менеджер агентства по недвижимости (Manager)).
5. Задайте параметры задержки и времени выполнения процесса.
6. Нажмите OK.
Принимаем? (модуль Decide)
После того, как заявка была рассмотрена, мы определяем принять её или возвратить.
1. Щелкните два раза на модуле Decide1, чтобы открыть его свойства.
2. Задайте имя процесса, определите тип, по которому будет происходить разделение входящего потока на True/False.
3. В поле Percent True введите долю положительно рассмотренных заявок.
4. Нажмите OK.
Принять или вернуть (модуль Dispose)
Итак, все работы по рассмотрению заявки проведены. Теперь рассмотренную заявку следует удалить из модели с помощью модулей Dispose. Поскольку результатов рассмотрения заявки может быть два, то мы добавляем два таких модуля, которые будут считать число заявок в том и другом случае.
1. Щелкните два раза на модуле Dispose1 (связанным с Истинным условием), чтобы открыть диалог его свойств, и в поле Name введите имя данного процесса.
Нажмите OK.
2. Щелкните два раза на модуле Dispose2, чтобы открыть диалог его свойств. В поле Name введите имя этого процесса.
Нажмите ОК.
Менеджер (модуль Resource)
Наряду с параметрами процессов, мы также можем определить параметры, связанные с другими элементами модели – ресурсов, объектов, очередей и т.д. В данном примере мы зададим стоимость ресурса Manager, чтобы проследить по результатам моделирования какова будет стоимость выполнения всего процесса. Основным показателем в данном случае является заработная плата менеджера.
Чтобы задать эти параметры в модели, откроем таблицу ресурсов.
1. На панели Basic Process, щелкните форму Resource, чтобы открыть таблицу.
2. Определенный нами ресурс Manager (во время задания параметров модуля Process) был автоматически добавлен в таблицу ресурсов. В полях Busy/Hour и Idle/Hour задайте часовую заработную плату менеджера.
Подготовка к запуску
Чтобы подготовить модель к прогонам, необходимо ввести общую информацию о проекте и задать продолжительность прогона.
1. Откройте окно свойств проекта используя меню Run → Setup → Project Parameters. В поле Project Title введите имя проекта. Отметьте необходимые параметры для сбора статистики.
2. Затем в том же окне выберите Replication Parameters. В поле Replication Length введите продолжительность прогона, в поле Time Units выберите единицу измерения продолжительности. Нажмите OK.
Сохраните модель
Меню File → Save
Осуществите прогон
Теперь модель содержит всю необходимую информацию для осуществления запуска.
Начните прогон, щелкнув кнопку Go на панели инструментов, или из меню Run → Go. По окончании установленного времени прогона, вам будут доступны результаты, достигнутые при моделировании:
Скорость прогона, мультипликации можно замедлить следующими способами:
1. Через меню Run → Setup → Run Speed: Задайте меньшее значение параметру Animation Speed; или
2. Во время прогона пользуйтесь шкалой скорости прогона, расположенной на панели инструментов рядом с другими кнопками управления имитацией. Для уменьшения скорости сдвигайте указатель влево, для увеличения – вправо.
Нажав на кнопку Pause панели инструментов или клавишу Esc можно приостановить прогон.
Просмотр отчетов моделирования
После окончания прогона можно просмотреть отчеты по статистике, собранной за время работы модели. Чтобы отчеты стали доступны, нажмите кнопку Fast Forward на панели инструментов. Появится сообщение Arena, хотите ли вы посмотреть отчеты. Нажмите Yes. По умолчанию откроется окно отчета Category Overview.
Слева находится дерево всех собранных показателей, доступных для просмотра.
Закройте окно отчетов, нажав на иконку слева от меню File и выбрав Close.
Чтобы завершить прогон и вернуться к редактированию модели, нажмите кнопку End на панели инструментов.
Добавьте визуализацию
Имея в своем распоряжении работающую модель, можно добавить в нее некоторые визуальные эффекты, в том числе мультипликацию.
Рассмотрим добавление двух элементов визуализации, используемых наиболее часто. В данном примере целесообразно изобразить менеджера агентства по недвижимости в момент рассмотрения заявки и в момент, когда заявок нет; а также график, показывающий, сколько заявок в данный момент обрабатываются. После добавления этих объектов модель будет выглядеть следующим образом:
Визуализация процесса
В рассматриваемом случае процесс – рассмотрение заявки менеджером. Поэтому изобразить этот процесс можно в виде офисного работника – то просто сидящего за столом, то перебирающего бумаги.
1. Нажмите кнопку Resource на панели инструментов.
2. В появившемся окне Resource Picture Placement выберите из выпадающего списка Identifier ресурс, который будем анимировать. В нашем примере – Manager.
3. Нажав кнопку Open, вы можете выбрать ту библиотеку изображений, которая соответствует вашему ресурсу. В рассматриваемом примере открываем Workers.plb (возможный путь C:\Program Files\Rockwell Software\Arena).
4. Присвоим изображение менеджеру, когда заявок в процессе нет:
Выберете кнопку Idle в левой колонке.
Выберите нужную картинку в правой колонке
Нажмите кнопку <<, чтобы присвоить выбранную картинку состоянию Idle ресурса.
5. Присвоим изображение менеджеру, когда идет обработка заявки:
Выберете кнопку Busy в левой колонке.
Выберите нужную картинку в правой колонке
Нажмите кнопку <<, чтобы присвоить выбранную картинку состоянию Busy ресурса.
6. Нажмите OK.
7. Выберете место в области построения модели для размещения изображения. Растяните изображение до нужного размера.
Добавление графиков
1. Нажмите кнопку Plot на панели инструментов.
2. Чтобы добавить выражение, отображаемое на графике, нажмите Add.
3. В появившемся окне Plot Expression необходимо задать требуемое выражение. Можно выбрать из предлагаемого выпадающего списка, или нажать правой кнопкой в поле Expression и открыть построитель выражений.
4. Задайте необходимые параметры. Нажмите ОК.
5. Укажите место в области построения модели для размещения графика, растяните до нужного размера.
Теперь во время прогона можно наблюдать за работой менеджера и динамикой изменения количества заявок, находящихся в процессе.