logo

3.1.2. Создание простейших моделей

Самая простая модель состоит из блока Create, соединённого линией связи с блоком Dispose. В блоке Create создаются объекты, поступающие в систему, а в блоке Dispose они удаляются из системы.

Создадим более сложную модель, состоящую из блоков Create, Process и Dispose, соединённых в цепь, как показано на рис. 3.2. Для этого надо навести курсор на нужный блок в окне проекта, захватить его, нажав левую клавишу мыши, перетащить в окно модели, двигая мышь при нажатой левой клавише, и, отпустив клавишу в конце перемещения, освободить блок.

Рис. 3.2. Блок-схема простой модели

Соединение блоков связями осуществляется либо автоматически, либо вручную. В последнем случае надо выбрать команду: Connect в подменю Object либо её пиктограмму в строке команд, затем навести курсор на точку выхода в выбранном блоке, щёлкнуть левой клавишей мыши, навести курсор на точку входа в нужный блок и опять сделать щелчок левой клавишей мыши. В результате возникает линия, соединяющая два блока.

Точки входов находятся в левой части функциональных блоков, а точки выхода − в правой. Чтобы убрать линию связи, надо выделить её, наведя на неё курсор и сделав щелчок левой клавишей мыши, а затем выполнить команду: Delete либо выбрав её в подменю Edit, либо нажав соответствующую клавишу на клавиатуре.

Получившаяся модель уже может работать. Для её запуска необходимо выбрать команду: Go в подменю Run или сделать щелчок левой клавишей мыши на пиктограмме этой команды. После запуска программы можно видеть изображения объектов, проскакивающих между блоками. Для приостановки счёта надо выбрать команду: Pause в подменю Run или её пиктограмму в строке команд. Чтобы полностью остановить счёт, надо воспользоваться командой: End из подменю Run или её пиктограммой . Теперь мы можем конкретизировать нашу модель. Для этого надо установить в ней значения параметров. По умолчанию в модели уже установлен определённый набор параметров, что делает её работоспособной. Чтобы его изменить, надо открыть окна диалога установки параметров блоков, составляющих модель, и параметров счёта.

Н

Рис. 3.3. Окно задания параметров блока Create

ачнём с блока Create. Наведя курсор на этот блок и сделав двойной щелчок левой клавишей мыши, мы откроем окно, изображённое на рис. 3.3. В поле Name введём название блока – Arrival (Прибытие). Пока Arena не воспринимает русский шрифт, приходится пользоваться латинским. В поле Entity type введём название объектов, проходящих через систему. Допустим, это покупатель – Buyer. Далее идёт группа полей, объединённых под названием Time Between Arrivals – время между прибытиями. Нажав кнопку в поле Type, мы увидим набор допустимых значений этого параметра. Random(Expo) означает, что время между последовательными событиями (прибытием покупателей) определяется случайным экспоненциальным законом распределения (см. прил.). Schedule означает, что поступление объектов в систему происходит по расписанию. Constant означает постоянное время между последовательными событиями. Expression означает, что поступление объектов в систему описывается выражением, которое можно ввести в другое поле. Для начала мы выберем значение параметра Type – Random(Expo). В поле Value надо указать параметр экспоненциального распределения случайной величины (5), а в поле Units – единицы измерения (Minutes (Минуты)). Теперь надо заполнить поля Entities per Arrival (Количество объектов одновременно входящих в систему) Max Arrivals (Максимальное число событий – поступлений объектов в систему) и First Creation (Время первого прибытия). Положим соответствующие значения 1, Infinite и 0.0 соответственно. Для завершения диалога нажимаем клавишу OK в диалоговом окне или Enter на клавиатуре.

Далее начинаем диалог установки параметров блока Process таким же способом, как мы делали это для блока Create (рис. 3.4). В поле Name вводим название блока Service (Обслуживание). В поле Type оставляем значение Standard. Раскрыв подменю Action нажатием значка , выбираем Seize Delay Release (Захват, Задержка, Освобождение). Это означает, что наш объект (покупатель) захватывает ресурс (продавца), задерживает его на некоторое время и затем отпускает. Поле Priority оставим без изменения. В поле Resources (Ресурсы) необходимо задать параметры захватываемых ресурсов. Для этого откроем диалог нажатием кнопки Add в окне Process рядом с полем Resources.

Рис. 3.4. Окно задания параметров блока Process

Рис. 3.5. Вкладка Resources

В появившемся окне Resources (рис. 3.5) в поле Type оставим значение Resource. В поле Resource Name наберём Seller (продавец). В поле Quantity оставим значение 1. Это означает, что каждый объект (покупатель) захватывает для своего обслуживания одну единицу ресурса (продавца). Закрывается диалог нажатием кнопки OK (или клавиши Enter).

В нижней части окна Process надо заполнить поля Delay Type (Вид задержки), Units (Единицы измерения) и Allocation (Размещение). Выберем в первом и втором полях значения Triangular и Minutes, последнее поле можно оставить без изменения. Сделанный выбор означает, что время задержки объекта (то есть время общения покупателя и продавца) является случайной величиной, описываемой функцией распределения треугольной формы (см. прил.) с минимальным, наиболее вероятным, и максимальным значениями, устанавливаемыми в полях Minimum, Value (Most Likely) и Maximum, находящимися в самом низу диалогового окна. Установим их, равными 3, 4 и 6 минут соответственно. Окончательный вид заполненного окна Process представлен на рис. 3.4. После завершения диалога над блоком Process в окне модели появляется значок , означающий, что в данном блоке возникает очередь на обслуживание.

Открыв диалог установки параметров блока Dispose, мы находим единственное поле Name, в которое мы занесём значение Exit (Выход) (OK).

Модель готова, теперь нужно установить параметры счёта. Для этого открываем подменю Run и выбираем команду Setup (Установка). В открывшемся окне Run Setup выбираем вкладку Replication Parameters (она разворачивается по умолчанию при первом вызове команды). В поле Replication Length (Длина репликации) установим 10 (рис. 3.6). Остальные поля оставим без изменения и закроем окно диалога.

Рис. 3.6. Вкладка Run Setup

Т

Рис. 3.7. Запрос на представление отчёта

еперь при запуске модели мы можем наблюдать движение объектов (покупателей) от входа к выходу, образование и изменение длины очереди. Модель имитирует процессы, происходящие в системе за 10 часов. После завершения счёта выводится сообщение о прекращении работы и запрос на вывод отчёта (рис. 3.7). Нажатие на кнопку Нет (No) означает отказ от отчёта. Выбор Да (Yes) приводит к тому, что программа составляет и выводит на экран статистический отчёт о результатах моделирования (рис. 3.8). Пролистать страницы отчёта можно нажатием кнопок и на появившейся дополнительной строке команд.

Рис. 3.8. Отчёт о результатах моделирования

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4