ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ ЭКОНОМИЧЕСКИХ



Мы поможем в написании ваших работ!


Мы поможем в написании ваших работ!



Мы поможем в написании ваших работ!


ЗНАЕТЕ ЛИ ВЫ?

ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ ЭКОНОМИЧЕСКИХ



ПРОЦЕССОВ В СИСТЕМЕ ARENA

 

Учебное пособие

 

Г. Ростов-на-Дону


УДК 330.4+004.7

Щ 61

 

Печатается по решению кафедры ЭИ и АУ

 

Щербаков, С.М.

Щ 61 Имитационное моделирование экономических процессов в системе Arena: Учебное пособие / С.М. Щербаков ; Рост. гос. эконом. ун-т (РИНХ). – Ростов н/Д, 2012. – ___ c.

 

 

Учебное пособие предназначено для изучения основ практической работы с одним из наиболее распространенных и мощных инструментов имитационного моделирования Rockwell Arena. Детально описаны возможности системы и принципы работы с нею. Представлены и разобраны примеры решения задач моделирования различного уровня и различной направленности.

Учебное пособие предназначено для студентов всех форм обучения направлений «Прикладная информатика», «Бизнес-информатика».

 

УДК 330.4+004.7

Щ 61

 

Рецензенты:

Хубаев Г.Н.   д.э.н., профессор, Ростовский государственный экономический университет (РИНХ)  
Стредльцова Е.Д. д.э.н., профессор, Южно-Российский государственный технический университет (НПИ)
   
     
  © Щербаков Сергей Михайлович, 2012 © Ростовский государственный экономический университет (РИНХ), 2012

 


Содержание

Введение. 4

1 Основные понятия системы Arena. 6

2 Базовые модули системы Arena. 11

3 Ветвление. Использование выражений. 27

4 Атрибуты, очереди, приоритеты.. 38

5 Анимация и визуализация моделей. 55

6 Использование пулов (set) ресурсов. 66

7 Использование шлагбаумов. 78

8 Слияние, расщепление и синхронизация транзактов. 89

9 Методы передачи транзактов. Использование станций. 100

10 Проведение имитационного эксперимента в Арена. 111

Заключение. 123

Литература. 124

Вопросы к экзамену. 125

 


Введение

 

Управление предприятием или организацией предполагает принятие решений в условиях действия большого числа внешних факторов, наличия множества взаимодействующих элементов управляемой системы и ориентировано на достижение комплекса различных целей. Средством обеспечения эффективности принимаемых решений служит моделирование

Модель - искусственный объект, представляющий собой отображение (образ) системы и ее компонентов. Считается, что М моделирует А, если М отвечает на вопросы относительно А. Здесь М - модель, А - моделируемый объект (оригинал) [1].

Часто сложность управляемой системы и наличие значительной стохастической составляющей делают наиболее эффективным использование имитационных моделей. Имитационная модель обладает высокой степенью изоморфизма изучаемой системе, позволяет рассматривать значительное число деталей деятельности предприятия, учитывает случайные факторы. Эксперименты над имитационной моделью способствуют получению оценки различных вариантов предлагаемых управленческих решений.

Сегодня для построения имитационных моделей используют развитые системы, включающие графический интерфейс построения моделей. Наиболее распространенные средства: AnyLogic, Extend, Arena. Система Rockwell Arena – один из наиболее мощных и популярных инструментов имитационного моделирования – будет рассматривать в настоящем учебном пособии.

При изучении работы с Arena следует обратить внимание на книгу:

Simulation with Arena, 5th Edition by W. David Kelton, Randall P. Sadowski, Nancy B. Swets Rockwell Automation McGraw-Hill, 2010.

Это официальный учебник по имитационному моделированию в системе Arena, разработанный сотрудниками фирмы Rockwell Automation.

Вместе с системой Arena поставляется несколько электронных книг с документацией, из которых прежде всего вызывает интерес Arena Users Guide, где дается описание большинства модулей. Важным источником знаний являются и примеры моделей, представленные вместе с системой.

Кроме примеров моделей, с системой поставляются SMARTS – небольшие фрагменты моделей, отражающие тот или иной аспект использования Arena, например, работу с ресурсами или передачу транзактов между станциями.

На русском языке информации по системе существенно меньше. Большинство статей, материалов в сети Интернет и отдельные имеющиеся методические разработки посвящены описанию только модулей шаблона Basic Prrocess. Эти материалы можно использовать на начальном этапе изучения системы.

 

Что касается изучения методологии имитационного моделирования, то по ней имеется достаточно большой объем отечественной и переводной литературы. В частности, можно рекомендовать книгу:

Шеннон Р. Имитационное моделирование систем – искусство и наука. – М.: Мир, 1978. – 417 с.

Книга описывает основные идеи имитационного моделирования, цели и задачи построения моделей. В большинстве случаев именно по этой книге излагается в различных курсах и учебниках процесс имитационного моделирования.

Также следует обратить внимание на книгу:

Лоу А., Кельтон В. Имитационное моделирование. – СПб: Питер, 2004. – 848 с.

Эта книга раскрывает большинство аспектов имитационного моделирования: получение исходной информации, генерация случайных чисел, планирование имитационных экспериментов и т.д.

Что касается учебников по имитационному моделированию, то в большинстве случаев они ориентированы на какую-то конкретную систему имитационного моделирования. Значит, полезна для изучающего может быть только «общая часть» учебника, посвященная методологии моделирования. С другой стороны, преимуществом учебников является достаточно компактный объем и простота изложения. В частности можно рекомендовать книги:

Емельянов А. А., Власова Е. А., Дума Р. В. Имитационное моделирование экономических процессов. – М.: ФиС, 2009. – 416 с.

Томашевский В., Жданова Е. Имитационное моделирование в среде GPSS. – М.: Бестселлер, 2003. – 416 с.

В настоящем учебном пособии будут раскрыты особенности использования системы Arena для построения имитационных моделей в экономике и управлении.

 

 


Основные понятия системы Arena

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

Чтобы создать модель на языке Arena достаточно:

1) задать транзакты, ресурсы и другие объекты;

2) выбрать необходимые модули;

3) связать модули с помощью соединений;

4) задать параметры каждого из модулей;

5) задать характеристики модели в целом.

 

 

Модели в системе Arena являются процессно-ориентированными, граф модели показывает путь отдельного транзакта. Транзакт создается, ожидает в очереди, захватывает ресурсы, обрабатывается, освобождает ресурсы, уничтожается. Параллельно такой же путь могут проходить и другие транзакты, но задачу управления процессами берет на себя система.

Рассмотрим базовые понятия системы Arena, используемые при построении моделей. К таким понятиям следует отнести [3]:

- транзакт (entity);

- ресурс;

- атрибут;

- переменная;

- очередь (queue);

- расписание (schedule)

- блок

- модуль.

Транзакт (entity, в терминах системы Arena) – это динамический объект имитационной модели, который перемещается между статическими узлами модели. Примеры транзактов – деталь, автомобиль, клиент, документ и т.д.

В модели может участвовать несколько транзакты разных типов, которые задаются разработчиком модели. Тип транзакта может меняться динамически, например, на каком-то этапе транзакт «машинокомплект» меняет свой тип на «автомобиль».

Транзакту соответствует картинка для анимации, с ее помощью можно следить за перемещениями транзактов между модулями и за обработкой транзактов.

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

Кроме того, пользователь может присваивать собственные атрибуты транзакта: «вес детали», «число покупок, совершенное покупателем супермаркета», «длина пакета данных», «сумма накладной» и т.д. Пользовательские атрибуты будут определять в дальнейшем время обработки транзакта, его приоритет при обработке, дальнейший путь транзакта.

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

Для создания транзактов используем невизуальный модуль Entity.

 

Переменная (Variable) – это глобальная переменная модели. Ее значение может считываться и изменяться во время моделирования. От значения переменной может зависеть, например, возможность прохождения некоторого участка: детали будут проходить обработку, если установлено значение некоторой глобальной переменной, свидетельствующей о том, что разрешение руководителя получено. Еще пример – счета могут проходить далее при наличии некоторой минимальной суммы в кассе предприятия. При оплате каждого счета это значение меняется [4].

Переменные могут также быть одномерными и двумерными массивами. Обращение к элементам массива осуществляется так же как в обычных языках программирования A(5) или B(3,2).

Для создания переменных используем невизуальный модуль Variable.

Здесь задается имя переменной. Если это массив – нужно задать число строк Rows и столбцов Columns (для одномерных – только строк, Rows). Кнопкой в колонке Initial Values вводим начальное значение (или для массивов - значения) переменной. Это значение переменная будет иметь при старте прогона модели.

Существуют и системные переменные, важнейшая из них – TNOW, текущее значение модельного времени [5].

Ресурс. Ресурсы разделяются между транзактами, транзакты конкурируют за ресурсы. Например, детали обрабатываются на станке, клерк рассматривает заявления, сервер обрабатывает запросы и т.д.

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

Важнейшая характеристика ресурса – мощность, число единиц ресурса. Примеры: число каналов для телефонных разговоров, число окошек в банке, число одинаковых станков и т.д.

Arena позволяет задать для ресурса характеристики стоимости – сколько стоит час единицы ресурса когда он свободен, занят, сколько стоит одно обращение к ресурсу и т.д.

Ресурсы задаются с помощью невизуального модуля resource.

Здесь для обоих ресурсов задано имя и указано, что ресурс имеет фиксированную мощность. И задана мощность (capacity) – в цеху работает один мастер и пятеро рабочих.

Для ресурса можно задать расписание. Например, продавцы супермаркета могут приходить на работу по определенному графику с целью лучше обслуживать покупателей в часы максимальной посещаемости.

 

Расписание задается в невизуальном модуле Schedule. При создании ресурса с расписанием вместо опции «Fixed capacity» указываем «by Schedule» и выбираем это расписание.

В ходе моделирования ресурс принимает одно из следующих состояний [6]:

- IDLE (свободен);

- BUSY (занят);

- FAILED (неисправен);

- INACTIVE (отключен).

Пользователь может создавать и собственные состояния.

Очередь (queue) – может образовываться возле тех модулей, которые мешают транзакту пройти дальше. Пример – станок для обработки деталей занят, и деталь ожидает в очереди, пока он освободится. Шлагбаум на железнодорожном переезде закрыт (идет поезд) и поэтому автомобили образуют очередь, чтобы ожидать открытия шлагбаума. Еще пример – детали нужно упаковать по 12 штук. По мере поступления деталей они будут ожидать упаковки в очереди, до тех пор, пока не появятся 12-ая.

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

- FIFO – «First in first out». Первый пришел - первый вышел. Наиболее распространенный случай, используется по умолчанию;

- LIFO – «Last in first out». Последним пришел - первым вышел. Такая очередь называется «стек». Пример – партии товара помещаются в хранилище. По мере освобождения упаковочной машины товар достается, упаковывается и передается дальше. Склад устроен так, что поступившие вновь товары закрывают доступ к поступившим ранее (вспомним междугородние автобус и его багажное отделение);

- Lowest Attribute Value. По наименьшему значению атрибута;

- Highest Attribute Value. По наибольше значению атрибута.

Последние два метода позволяют реализовать очередь с приоритетом. Для этого нужно завести искусственный пользовательский атрибут, указывающий приоритет для каждого типа транзакта. Например, машины скорой помощи (значение атрибута «1») будут попускать вперед. Если в очереди три обычных машины (значение атрибута «0»), то прибывшая машина скорой помощи займет место перед ними – т.е. в начале очереди. А вот следующая машина скорой помощи займет место после первой машины скорой помощи перед обычными машинами.

Приоритет может базироваться и на каком-то естественном, содержательном атрибуте, например, вес детали, сумма денежного перевода и т.д.

 

Контрольные вопросы

1) В чем заключается разница между атрибутом и переменной?

2) Каким образом можно организовать очередь с приоритетом?

3) Что такое тразнакт?

4) Что означает характеристика ресурса «Capacity»?

5) Что означают состояния ресурса «BUZY» и «IDLE»?

6) В каких случаях модуль будет иметь возле себя очередь?

7) Можно ли менять значение переменной во время моделирования?

8) Сколько значений атрибутов имеется в модели во время моделирования?

9) Библиотекарь обслуживает подходящих к нему читателей. Чем будут «библиотекарь» и «читатель» с точки зрения системы Arena?

10) Каждый читатель хочет взять какое-то количество книг. Чем будет «количество книг, которые хочет получить читатель» с точки зрения системы Arena?

11) Библиотека платная и за каждую взятую книгу читатель должен внести 10 рублей. Чем будет «полученная в течение дня выручка библиотеки» с точки зрения системы Arena?

12) Директор магазина выставляет большее число кассиров, чтобы облегчить обслуживание покупателей в «час пик». Как это отразить в системе Arena?

 




Последнее изменение этой страницы: 2016-06-29; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.237.16.210 (0.021 с.)