Реализация имитационной модели работы банковского отделения средствами инструментальной среды AnyLogic
Особенности имитационного моделирования как современного способа анализа сложных систем. Создание имитационной модели банковского обслуживания со сбором статистики. Способы динамичного управления пользователем параметрами модели в ходе ее эксплуатации.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 28.08.2018 |
Размер файла | 288,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
1
Размещено на http://www.allbest.ru/
Реализация имитационной модели работы банковского отделения средствами инструментальной среды AnyLogic
Бороненко Татьяна Алексеевна доктор педагогических наук, профессор
Федотова Вера Сергеевна кандидат педагогических наук, доцент
Аннотации
В статье рассмотрены особенности имитационного моделирования как современного способа анализа сложных систем. Продемонстрированы возможности инструментальной среды AnyLogic в моделировании систем массового обслуживания на примере построения имитационной модели работы банковского отделения. Представлено последовательное усложнение модели за счет включения в ее содержание дополнительных элементов. Охарактеризованы способы динамичного управления пользователем параметрами модели в ходе ее эксплуатации. Уделено внимание организации автоматизированного сбора статистики для оценки результатов моделирования средствами AnyLogic.
Ключевые слова: имитационная модель, имитационное моделирование, AnyLogic, банковское отделение
Annotation
The authors consider the features of simulation modeling as a modern way of analyzing complex systems. The authors demonstrate the capabilities of the AnyLogic tool environment in modeling queuing systems using the example of building a simulation model for the banking branch. The authors present a consistent complication of the model by including additional elements in its content. The authors characterize the methods of dynamic user management by the parameters of the model during its operation. The authors pay attention to the organization of automated collection of statistics to evaluate the results of modeling using AnyLogic.
Keywords: imitation model, simulation modeling, AnyLogic, banking department
имитационный моделирование банковский статистика
Имитационное моделирование является эффективным методом исследования сложных систем, методом научного исследования, инструментом моделирования [1]. Основными объектами имитационного моделирования, прежде всего, становятся модели массового обслуживания, ярким примером которых является банковское отделение. Повышение качества обслуживания в банковском секторе имеет важное значение для удовлетворенности клиентов. Лица, принимающие решения, особенно обеспокоены временем ожидания клиентов до получения их услуг. Чтобы оставаться конкурентоспособными, они должны постоянно улучшать качество своих услуг, измеряемых с точки зрения подходящих показателей эффективности. Исследователи фокусируют свое внимание на моделировании и анализе банковских систем массового обслуживания.
Так, в работе банковского отделения анализу подвергаются процессы обслуживания клиентов с точки зрения анализа поступления заявок в систему, интенсивности их обслуживания, определения оптимального количества обслуживающих устройств, таких как кассы, специалисты по различным операциям. Математическая модель системы массового обслуживания включает такие элементы как «входящий поток требований, который поступает на обслуживание; очередь, которая состоит из требований, ожидающих обслуживание; система обслуживания; выходные потоки обслуженных, утраченных требований и требований, которые поступают на повторное обслуживание; характеристика качественного состава системы; порядок обслуживания» [2, с. 25.].
В математической модели системы массового обслуживания важными оказываются характеристики создаваемой очереди обслуживаемых заявок. «Очередь - самое распространенное явление в повседневной работе и жизни людей. Очереди имеют много форм, включая First Come First Service, Last Come First Service и Random Service и так далее. First Come First Service - наиболее распространенная форма очереди, соответствующая ожиданию автобусов или оплате в супермаркетах» [3, с. 164].
Для построения имитационных моделей и интерпретации результатов вычислительного эксперимента сегодня имеются современные системы моделирования, которые отличает развитая графическая оболочка, мультимедийные средства, удобный интерфейс, богатые анимационные возможности моделирования в виртуальном и реальном масштабе времени, объектно-ориентированное программирование, диагностика ошибок, встроенные языки программирования для разработки специфических моделей и др.
Построим дискретно-событийную имитационную модель системы массового обслуживания на примере работы банковского отделения. Обслуживание клиентов в банковском отделении основывается на работе банкоматов (операции с наличностью) и стоек банковских работников, кассиров (оплата счетов). Рассматриваемая форма очереди - First Come First Service.
В научной литературе имеется ряд исследований, посвященных построению имитационных моделей банковского обслуживания. При этом спектр используемых программных сред достаточно широк с точки зрения их функционала, в том числе рассматриваются как общедоступные, так и специальные программные среды «MS Excel, MATLAB Simulink, GPSS World,
Arena, iThink, PowerSim и другие» [4, с. 57]. Сегодня, по нашему мнению, наиболее рационально проведение и обработка результатов вычислительного эксперимента средствами прикладной системы имитационного моделирования и организации математических и научных расчетов AnyLogic. Данная инструментальная среда используется для разработки имитационных исполняемых моделей и их прогона, предусматривает различные стили моделирования.
Программирование в AnyLogic основывается на визуальном представлении графических объектов иерархической структуры и описании поведения активных объектов. Создание имитационной модели AnyLogic предполагает организацию классов активных объектов или использование объектов библиотеки AnyLogic, задание их взаимосвязи. Основными средствами описания поведения объектов служат переменные (отражают изменяющиеся характеристики объекта), события (наступают с заданным интервалом времени и выполняют заданное действие) и диаграммы состояний (визуально представляют поведение объекта во времени под воздействием событий или условий, они состоят из графического изображения состояний и переходов между ними), алгебраические и дифференциальные уравнения (записываются аналитически и отражают взаимосвязи между переменными в модели). Для реализации специальных вычислений и описания логики поведения активных объектов в AnyLogic имеется мощный встроенный язык Java.
Имитационная среда моделирования AnyLogic предусматривает использование модельного (условного логического времени, в единицах которого определено поведение всех объектов модели) и реального времени. При описании поведения объектов дифференциальными уравнениями модельное время изменяется непрерывно, в противном случае, если в модели присутствуют только дискретные события - дискретно, переключаясь от одного события к другому. Допуская режим модельного и реального времени, AnyLogic позволяет пользователю на любом этапе эксплуатации модели свободно внедряться в ее работу, при необходимости изменять параметры модели. Тем самым на единой платформе осуществляется проектирование, разработка, выполнение компьютерного эксперимента, оптимизация параметров модели относительного выбранного критерия.
Создание модели имитационного моделирования AnyLogic основано на использовании готового шаблона или разработки в целом новой модели. Первоначальное проектирование модели выполняется в графическом редакторе инструментальной среды моделирования, который содержит окно проекта (навигация по элементам проекта), структурную диаграмму (расположение и поведение их активных объектов), окно свойств (параметры каждого элемента), окно палитры (графические объекты, которые могут быть добавлены на структурную диаграмму).
Проектирование имитационной модели банковского обслуживания
Для иллюстрации возможностей инструментальной среды AnyLogic последовательно охарактеризуем процесс разработки простейшей модели работы банковского отделения, в последующем усложняя ее содержание.
На основе шаблона дискретно-событийной модели создадим модель работы банковского обслуживания клиентов с использованием банкоматов. Мастер создания модели AnyLogic автоматически создает диаграмму процесса как последовательность соединенных блоков элементов основной библиотеки, которые определяют последовательность операций в обработке заявок. Данная модель имеет линейную диаграмму процесса и включает в себя четыре ключевых объекта: Source (источник) в котором происходит создание заявки в системе, т.е. имитация прихода клиента в отделение банка; Queue (очередь) в котором формируется очередь заявок в системе, т.е. имитация очереди клиентов; Delay (задержка) в котором моделируется временная остановка заявок в системе, т.е. имитируется обслуживание клиента у банкомата; Sink (сток), в котором происходит уничтожение заявок, т.е. имитируется уход клиентов из отделения банка.
Пользователь, осуществляющий имитационное моделирование, принимает участие в выборе объектов основной библиотеки AnyLogic, соединении их портами, указании свойств блоков в соответствии с параметрами создаваемой модели. Он характеризует ресурсы создаваемой модели, длину очереди к обслуживающему устройству, анимацию объектов модели, гистограмму распределения времени пребывания людей.
Первый объект линейной диаграммы - «Source» создает заявки определенного типа, т.е. объекты, которые производятся, обрабатываются, обслуживаются. В модели банковского обслуживания заявками являются посетители банка, а объект «Source» моделирует их поступление в банковское отделение. Заявки создаются через заданный пользователем через поле «Интенсивность прибытия» временной интервал. Определим, например, интенсивность прихода клиентов в банковское отделение будет 0,67.
Очередь клиентов, ожидающих освобождения банкомата, будет моделировать объект «Queue». Он задает очередь заявок, которые ожидают своего приема. В создаваемой модели банковского обслуживания он. Пусть максимальная длина очереди в поле «Вместимость» будет равна 15. Это означает, что в очереди будут находиться не более 15 человек. Чтобы видеть все промежуточные и конечные результаты моделирования по количеству человек в очереди, установим флажок «Включить сбор» статистики.
Заявки будут задерживаться у банкомата, так как посетитель банковского отделения затрачивает некоторое время на выполнение необходимой ему операции. Смоделируем данный этап банковского обслуживания с помощью объекта «Delay». В предположении, что обслуживание одного клиента распределено по треугольному закону со средним значением 1, минимальным - 0,8 и максимальным - 1,3, «время задержки» определим значением функции генерации случайных значений triangular (0.8, 1, 1.3)). Известно, что AnyLogic предоставляет функции и других случайных распределений.
Объект «Sink» используется в качестве конечной точки линейной диаграммы для уничтожения поступивших заявок.
Далее в соответствии с набором установок, задаваемым специальным элементом модели - экспериментом, модель запускается на выполнение. Запуск модели открывает пользователю окно презентации, где отображаются результаты проводимого эксперимента. В AnyLogic автоматически создается блок-схема с наглядным представлением хода процесса. По ней можно в любой момент времени анализировать текущее состояние модели (охарактеризовать длину очереди, количество обслуженных человек и так далее). Кнопки панели инструментов «Замедлить» и «Ускорить» позволяют управлять скоростью выполнения модели. Состоянием каждого блока диаграммы процесса во время выполнения модели, оценка значения текущих значений параметров и переменных выполняется в окне инспекта, где отображается базовая информация по выделенному блоку.
В целях повышения наглядности визуализации функционирования модели создадим динамическую анимацию работы банковского отделения, на которой представим схематическую анимацию банкомата и ведущую к нему очереди клиентов. При этом конкретное расположение объектов в пространстве в данном случае не важно. Пользователь наблюдает анимацию модели в том же графическом редакторе, где задана диаграмма процесса. В модели работы банковского отделения первоначально присвоена простейшая анимация - банкомат и ведущую к нему очередь клиентов. При этом цвет фигуры банкомата меняется в соответствии с состоянием обслуживания клиента в данный момент времени. Для создания такой анимации используются элементы «Овал» и «ломаная». Цвет кружка указывается в свойствах овала. На странице «Динамические панели свойств» задаются динамические свойства фигуры. Здесь находится список полей, в которых задаются значения динамических свойств фигуры. Для изменения цвета фигуры в ходе моделирования в поле соответствующего динамического свойства вводится выражение, которое при эксплуатации модели будет постоянно вычисляться заново, например, если банкомат занят, то цвет кружка будет красным (red), в противном случае - белым (white). В поле «Цвет заливки» введено: delay.size() > 0 ? red : white). Команда delay определяет имя моделируемого объекта «Delay». Функция size() возвращает число человек, обслуживаемых в данный момент времени. В режиме виртуального времени допускается максимально быстрое проигрывание модели.
Палитра «Картинки» позволяет задать в качестве фигуры анимации клиента изображение человека. По умолчанию заявка (посетитель банковского отделения) отображается на анимации прямоугольником и имеет имя «person». Для связи введенной фигуры с моделью сообщим объекту «source» о необходимости использования добавленной фигуры человека в качестве объекта анимации заявки (клиента банка). С этой целью выделим объект «source» в графическом редакторе и в поле «Фигура анимации» заявки введем имя «person». Запуск модели позволит наблюдать за моделируемым процессом с помощью анимации. Уже поступившие на обслуживание и ожидающие обслуживания в очереди клиенты отображаются в анимации картинками клиентов. При запуске модели пользователь наблюдает на диаграмме процесс анимации очереди клиентов к банкомату и анимацию занятости банкомата.
Для отображения средней занятости банкомата добавим диаграмму для сбора статистики по работе банковского отделения. Элементы сбора данных и статистики, а также диаграммы для визуализации результатов моделирования: столбиковую диаграмму, диаграмму с накоплением, круговую диаграмму, график и др. содержит палитра «Статистика». Столбиковая диаграмма имеет заполненные поля: «Заголовок» - ATM utilization; «Значение» - delay.statsUtilization.mean (), при этом определяя ATM как имя моделируемого объекта «Delay», функция mean () возвращает среднее из всех измеренных этим набором данных значений. Могут использоваться и другие методы сбора статистики, например, min(), max().
Аналогичным образом разместим вторую столбиковую диаграмму для сбора статистики о размере очереди объекта «Queue». Зададим следующие свойства «Заголовок» - Queue length и «Значение» - queue.statsSize.mean ().
Запуск модели позволяет понаблюдать за занятостью банкомата и средней длиной очереди.
Таким образом, теперь модель работы банковского отделения уже снабжена элементами сбора статистики использования ресурсов в виде столбиковых диаграмм, отображающих состояние средней занятости банкомата и средней длинны очереди (рис. 1).
Усложним модель, добавив в нее служащих, в роли которых выступают банковские кассиры. Их деятельность смоделируем объектом «Service». В модели этот объект характеризует обслуживание клиента кассиром или каким то другим служащим банковского отделения. Предположим, что ко всем кассирам ведет одна общая очередь, максимальное количество человек в этой очереди 20, время обслуживания сгенерировано triangular (2,5, 6, 11).
Рис. 1. Простейшая модель работы банковского отделения с анимацией и сбором статистики.
Добавим объект «ResourcePool» для определения ресурсов. В разрабатываемой модели ими будут банковские клерки. Изменим некоторые свойства созданного объекта. Зададим имя объекта tellers; число кассиров в поле «Количество ресурсов» определим равным 4. Между объектами «Source» и «Queue» заменим соединитель на объект «SelectOutput». Данный объект отвечает за принятие решений: будет ли заявка поступать на первый или второй выходной порт объекта. Определим данный выбор как равновероятным (p=0,5). Таким образом, к кассирам и банкомату будет приходить примерно одинаковое количество клиентов.
Очередь клиентов, ожидающих обслуживания кассирами (queueBeforeTellers), смоделируем ломаной (tellerPlaces). Отметим кассиров в виде двух картинок, характеризующих занятого кассира (busyTeller) и свободного (idleTeller). С помощью бегунка зададим динамическую смену количества клерков, присутствующих в банковском отделении во время моделирования. Он будет изменять количество клерков в модели, демонстрируя, какое количество будет оптимально удовлетворять текущей интенсивности прихода клиентов в банковское отделение. Пусть пользователю предоставляется возможность варьировать количество клерков от 0 до 4. Для этого в свойствах в поле «Максимальное значение» введем значение 4. Наблюдение за изменением количества кассиров во время работы модели, позволяет констатировать, сколько служащих необходимо для нормальной работы банковского отделения при заданной интенсивности прихода клиентов.
На данном этапе модель дополнена новым методом обслуживания клиентов. Часть операций теперь выполняют банковские кассиры. Это осуществлено за счет включения в модель новых элементов: Service (обслуживание), моделирующего обслуживание клиента кассиром; ResourcePool (объединение ресурсов), определяющего ресурсы - банковских кассиров. Также модель включает в себя анимацию вновь созданных объектов: работу кассиров и формирование очереди к ним. Использование гистограмм позволяет визуализировать статистику распределения времени обслуживания клиентов (какое время клиент проводит в банковском отделении и ожидает своей очереди). Запуск модели в режиме виртуального времени позволяет наблюдать, какой вид принимает распределение времени ожидания и пребывания клиента в системе (рис. 2).
Как видно, разработанная усложненная модель работы банковского отделения включает в себя диаграмму процесса (учитывающую работу клиентов с банкоматом и облуживание у клерков), анимацию очередей клиентов, обслуживаемых банкоматом и клерками, анимацию клиентов, обслуживаемых банкоматом, анимацию работы клерков, диаграммы состояний длинны очереди и занятости банкомата, элементы сбора и отображения статистики ожидания и обслуживания клиентов.
Таким образом, имитационная модель работы банковского отделения характеризует структуру и визуализирует поведение реальной системы во времени.
Рис. 2. Модель работы банковского отделения с отображением статистики ожидания и обслуживания клиентов.
Такая модель позволяет получать подробную статистику о различных аспектах функционирования системы и в зависимости от входных данных, осуществить вычислительный эксперимент по организации наиболее эффективной работы банковского отделения. Простота и наглядность интерфейса инструментальной среды AnyLogic позволит эксплуатировать построенную модель специалистами различных сфер деятельности, желающих разноаспектно изучить реальное поведение банковской системы в различных условиях.
Литература
1. Wheat I.D. Teaching endogenous money with systems thinking and simulation tools //International Journal of Pluralism and Economics Education. - 2017. - Т. 8. - №. 3. - С. 219-243.
2. Короткая Л.И., Науменко Н.Ю. Имитационное моделирование работы отделения коммерческого банка // Економічний вісник ДВНЗ Український державний хіміко-технологічний університет. - 2015. - №. 1. - С. 24-27.
3. Zhiwei N., Xiaochun L., Dongyuan L. Simulation of Queuing Systems with Different Queuing Disciplines Based on Anylogic //Electronic Commerce and Business Intelligence, 2009. ECBI 2009. International Conference on. - IEEE. - 2009. - С. 164-167. DOI: 10.1109/ECBI.2009.52.
4. Щукина Н.А. Имитационная модель как элемент управления и оценки эффективности работы отделения банка// Иннов, № 1 (30). - 2017. - С. 57-62.
Размещено на Allbest.ru
...Подобные документы
Разработка имитационной модели "Перекресток" для анализа бизнес-процессов предприятия и принятия решения в сложных условиях. Алгоритм построения имитационной модели на основе CASE-средств. Обзор программного обеспечения для имитационного моделирования.
дипломная работа [2,6 M], добавлен 22.11.2015Специфика работы терапевтического отделения. Разработка имитационной модели в среде AnyLogic. Выбор средств моделирования. Описание схемы моделирующего алгоритма. Организация вычислительного эксперимента над математической моделью, анализ его результатов.
курсовая работа [1,2 M], добавлен 10.06.2015Оптимальное время для обслуживания пользователей как основная цель работы компьютерного зала библиотеки. Построение модели деятельности подписного отдела с помощью средства имитационного моделирования AnyLogic. Описание процессов и построение сценария.
курсовая работа [1,9 M], добавлен 19.06.2015Основы технологии моделирования Arena. Построение простой имитационной модели. Моделирование работы системы обслуживания покупателей на кассе супермаркета. Построение модели IDEF3. Анализ результатов имитационного моделирования и аналитического решения.
курсовая работа [659,1 K], добавлен 24.03.2012Терминологическая база для построения модели, имитирующей работу маршрутных микроавтобусов. Обоснование выбора программного средства. Алгоритм работы имитационной модели, особенности ее функционирования. Анализ результатов работы имитационной модели.
курсовая работа [1,1 M], добавлен 29.04.2014Процесс моделирования имитационной модели функционирования класса персональных компьютеров на языке GPSS World. Поиск линейной зависимости и оценка полученного уравнения. Отчет по результатам работы имитационной модели. Листинг разработанной программы.
курсовая работа [49,2 K], добавлен 07.09.2012Анализ и формализация задачи моделирования: построение концептуальной модели, ее формализация в виде Q-схемы. Построение имитационной модели: создание блок-схемы, представление базовой исходной имитационной модели. Исследование экономических процессов.
контрольная работа [156,0 K], добавлен 21.11.2010Методика системного исследования реальной динамической сложной системы посредством разработки ее имитационной модели. Разработка программы реализации алгоритма имитационного моделирования системы массового обслуживания "Интернет-провайдерская фирма".
курсовая работа [2,0 M], добавлен 20.01.2010Определение основных параметров грузоперевозок, их организационная структура. Виды и функции имитационного моделирования. Разработка концептуальной модели перевозки грузов, ее представление в виде системы массового обслуживания и программная реализация.
курсовая работа [761,6 K], добавлен 22.01.2012Понятие компьютерной модели и преимущества компьютерного моделирования. Процесс построения имитационной модели. История создания системы GPSS World. Анализ задачи по прохождению турникета на стадион посредством языка имитационного моделирования GPSS.
курсовая работа [291,3 K], добавлен 11.01.2012Создание математической модели системы массового обслуживания на примере банка. Разработка имитационной модели на языке программирования С++. Блок-схема программы, перевод модели на язык программирования. Верификация и валидация имитационной модели.
курсовая работа [630,5 K], добавлен 01.06.2015Характеристика функций имитационного моделирования. Знакомство с особенностями имитационного моделирования агрегированной системы массового обслуживания. Анализ программы GPSSWorld: рассмотрение возможностей, способы составления имитационной модели.
курсовая работа [1,6 M], добавлен 27.05.2013Понятие стратегического планирования, разработка схем программных блоков и основной программы. Структурная схема имитационной модели, создание модели на языке моделирования General Purpose Simulation System. Математическое описание моделируемой системы.
дипломная работа [2,6 M], добавлен 12.08.2017Направления деятельности ООО "Тирион" и разработка модели "AS-IS" функционирования магазина по обслуживанию покупателей. Возможности табличного процессора MS Excel. Описание интерфейса и физической структуры программного обеспечения имитационной модели.
курсовая работа [990,6 K], добавлен 13.12.2011Основные понятия теории моделирования. Виды и принципы моделирования. Создание и проведение исследований одной из моделей систем массового обслуживания (СМО) – модели D/D/2 в среде SimEvents, являющейся одним из компонентов системы MATLab+SimuLink.
реферат [1,2 M], добавлен 02.05.2012GPSS как один из эффективных и распространенных языков моделирования сложных дискретных систем. Возможности языка GPSS. Построение имитационной модели "Моделирование мини-АТС". Разработка программы работы диспетчерского пункта в торговом предприятии.
курсовая работа [118,8 K], добавлен 19.01.2016Построение концептуальной модели и метод имитационного моделирования. Определение переменных уравнений математической модели и построение моделирующего алгоритма. Описание возможных улучшений системы и окончательный вариант модели с результатами.
курсовая работа [79,2 K], добавлен 25.06.2011Общая характеристика ателье "Вита", схема модели рабочего процесса. Исследование заданной системы с помощью моделирования динамических рядов, модели типа "система массового облуживания". Построение имитационной модели деятельности данного ателье.
курсовая работа [1,4 M], добавлен 01.06.2016Язык GPSS как один из наиболее эффективных и распространенных языков моделирования сложных дискретных систем. Транзакт - элемент системы массового обслуживания. Решение задач на основе моделирования с применением языка GPSS, создание имитационной модели.
курсовая работа [54,7 K], добавлен 25.11.2010Понятие, основные задачи и функции общей теории систем как науки. Формулирование требований к системе, разработка концептуальной модели системы на примере системы массового обслуживания (СМО). Проектирование имитационной модели, ее реализация и испытание.
курсовая работа [131,3 K], добавлен 27.12.2010