В настоящее время в бизнес-моделировании доминируют три основных подхода (метода) к описанию системы.
1. Системная динамика – метод изучения динамики процессов в сложных системах. Особое внимание в нем уделяется учету и моделированию многочисленных обратных связей в системе. Системно-динамические модели обычно задаются в виде потоковых диаграмм, состоящих из накопителей, потоков между ними, петель обратной связи и вспомогательных переменных, которые затем транслируются в систему алгебро-дифференциальных уравнений.
Рис. 1. Пример потоковой диаграммы AnyLogic
2. Дискретно-событийное, или процессное моделирование – метод описания процессов, происходящих в системе, в виде последовательности операций над заявками, представляющими людей, документы, транспортные средства, пакеты данных и т.д. Фактически это способ задания систем массового обслуживания (СМО) любой сложности. Описываются дискретно-событийные модели в виде блоков, обрабатывающих заявки в соответствии с заданными параметрами, и соединений между ними, определяющих последовательность операций.
3. Агентное моделирование – метод описания системы как множества независимых объектов, каждый из которых может следовать собственным правилам, взаимодействовать друг с другом и с окружающей их средой. Для задания агентных моделей могут использоваться различные конструкции, в том числе и программный код, но наиболее удобным способом задания поведения агента являются конечные автоматы (statecharts).
Данные подходы используются в различных ситуациях. Например, системная динамика имеет дело с глобальными зависимостями и используется на высоком уровне абстракции. Дискретно-событийные модели в основном относятся к среднему уровню абстракции, когда физические размеры объектов, скорости, расстояния не важны и основной параметр для таких моделей – время (сколько времени заявка обрабатывается, сколько времени нужно чтобы попасть из одной точки в другую и т.д.).
Агентные модели имеют более широкий спектр применения и используются от физического уровня абстракции до стратегического, но ошибочно думать, что они являются заменой дискретно-событийным и системно-динамическим моделям. При моделировании надо использовать тот подход, который позволяет проще и быстрее создать модель.
Выбор метода (подхода) моделирования зависит от решаемой задачи и целей, которые необходимо достигнуть. Но не все задачи можно решить с использованием только одного подхода, часто необходимо комбинировать подходы в пределах одной модели, чтобы достигнуть желаемого результата.
Многоподходным моделированием называется метод описания системы, при котором используется более одного из описанных выше подходов. Например, если задача состоит в моделировании производства, то будет достаточно одного дискретно-событийного подхода. Но если производство зависит от спроса, то необходимо моделировать рынок, где дискретно-событийный метод не работает, и нужно использовать системную динамику или агентное моделирование.
Фактически многоподходное моделирование снимает рамки, накладываемые тем или иным методом. Получая возможность выбирать подходы и комбинировать их, пользователь значительно расширяет арсенал средств моделирования. Именно поэтому AnyLogic, как единственный инструмент, поддерживающий многоподходное моделирование, занимает уникальную позицию на рынке продуктов имитационного моделирования.
Известно, что применимость подходов связана с областью применения. Например, для моделирования производства и бизнес-процессов обычно используется дискретно-событийное моделирование. Для моделирования социальной динамики, эпидемий и рынка используется агентное или системно-динамическое моделирование, а для моделирования пешеходной динамики, перевозок, цепочек поставок – агентное. Необходимость в многоподходном моделировании возникает в следующих случаях:
1. Моделируемая система состоит из разных по сути объектов, моделирование которых требует использования разных подходов. Например, если взять описанный выше пример с производством и рынком, понятно, что если моделировать эти объекты отдельно, то можно обойтись только одним подходом, но так как эти объекты влияют друг на друга и это взаимное влияние необходимо учитывать, то комбинирование подходов является единственным выходом в данной ситуации;
2. В пределах одной модели необходимо варьировать уровень абстракции. Например, моделирование динамики населения страны, с детальным моделированием одного из регионов с учетом этнических групп, семей, уровня образования и т.д. Глобальную динамику можно здесь можно моделировать, используя системно-динамический подход, но, чтобы «опуститься» до уровня семей, социальной среды, климатических условий, нужно использовать агентное моделирование;
3. Различные части модели проще описывать, используя разные подходы. Например, в случае моделирования рынка, можно описать среду, где «живут» клиенты, с помощью системной динамики, а самих клиентов – с помощью агентного моделирования.
В целом можно сделать вывод, что необходимость в многоподходности появляется, когда нужно решить не локальную задачу, а посмотреть на проблему шире и решить ее комплексно.
Рассмотрим пример многоподходной модели телекоммуникационной компании.
Основная деятельность телекоммуникационной компании состоит в продаже своих услуг абонентам. Качество услуг, предоставляемых абонентам, зависит от ИТ инфраструктуры компании. На первый взгляд кажется, что чем больше клиентов будет у компании, тем лучше. Но чем больше клиентов, тем больше нагрузка на ИТ инфраструктуру; чем больше нагрузка, тем больше отказов в обслуживании и отток абонентов. Поддержание инфраструктуры и ее развитие требуют значительных расходов, оцениваемых в десятки миллионов долларов, и любая их экономия – это прибыль. Поэтому есть зависимость между маркетинговыми действиями компании по привлечению новых клиентов, ИТ инфраструктуры и планов ее развития. Поэтому требуется построить модель, которая позволяет:
a) планировать маркетинговые акции;
b) оценивать их влияние на ИТ инфраструктуру компании;
c) планировать развитие ИТ инфраструктуры в зависимости от количества новых абонентов и услуг.
Модель ИТ инфраструктуры
Традиционно для моделирования ИТ инфраструктуры используется дискретно-событийное моделирование. Но ИТ инфраструктура большой телекоммуникационной компании состоит из тысяч серверов и сотен коммуникационных узлов и обрабатывает миллионы транзакций в секунду. Очевидно, что дискретно-событийная модель не в состоянии «потянуть» такое количество транзакций. Возникает вопрос: что делать? Ответ прост: надо моделировать систему на высоком уровне абстракции, используя системную динамику (поскольку системная динамика оперирует количеством и не моделирует каждую транзакцию отдельно, модель будет работать быстро), а потенциально узкие места, определяемые системно-динамической моделью, моделировать на детальном уровне с помощью дискретно-событийного подхода.
Рис. 3. Пример модели ИТ инфтаструктуры
В модели рынка нас интересует каждый абонент в отдельности, его возраст, уровень образования, работы, доход, семья, место проживания, так как от этого зависят его предпочтения по выбору тарифа и телекоммуникационной компании. Поэтому в качестве подхода было выбрано агентное моделирование. В модели есть три типа объектов – абоненты, операторы и глобальный рынок. Как ведет себя глобальный рынок известно (по условиям задачи), и его проще моделировать, используя системную динамику, а абонентов и операторов – с помощью агентов, т.к. известны их «локальные» правила поведения, в то время как глобальные зависимости неизвестны.
Таким образом, системно-динамическая и агентные части модели работают в «цикле» друг с другом: системно-динамическая часть передает данные в агентную (уровень инфляции, средний уровень заработной платы и т.д.) и наоборот.
Многоподходное моделирование – сравнительно новая технология, которая активно развивается и приобретает все больше приверженцев. Согласно последним опросам, количество пользователей, заинтересованных в многоподходном моделировании, значительно увеличилось (рис. 8).
Спектр областей, где многоподходное моделирование успешно применяется, растет день ото дня, и все больше профессионалов используют данную технологию. Инструменты многоподходного моделирования кроме комбинирования подходов имеют другое очевидное преимущество – пользователи могут использовать один инструмент для создания любых типов моделей вместо приобретения нескольких программных продуктов.
Все это позволяет сделать вывод о том, что с появлением инструментов многоподходного моделирования участь традиционных инструментов предрешена – они уйдут с рынка, освободив место более совершенным и гибким инструментам многоподходного моделирования.
1. Schieritz Nadine and Milling Peter. Modeling the Forest or Modeling the Trees – A Comparison of System Dynamics and Agent-Based Simulation// The 21st International Conference of the System Dynamics Society. New York, USA, 2003.
2. Schieritz, Nadine, and Grosler Andreas. Emergent Structures in Supply Chains – A Study Integrating Agent-Based and System Dynamics Modeling// The 36th Annual Hawaii International Conference on System Sciences. Washington, USA, 2003.
3. Solo, Kirk, and Paich Mark. A Modern Simulation Approach for Pharmaceutical Portfolio Management. International Conference on Health Sciences Simulation (ICHSS'04), San Diego, California, USA, 2004. // http://www.simnexus.com/SimNexus.PharmaPortfolio.pdf.
4. Keenan, Philip, and Paich Mark. Modeling General Motors and the North American Automobile Market// The 22nd International Conference of the System Dynamics Society. Oxford, England, 2004.
5. Борщёв А. В. От системной динамики и традиционного ИМ – к практическим агентным моделям: причины, технология, инструменты // http://www.gpss.ru/paper/borshevarc.pdf.
6. Борщев А. В. Практическое агентное моделирование и его место в арсенале аналитика // Exponenta Pro, 2008. № 3–4. http://www.xjtek.ru/anylogic/articles/.
7. Хромов-Борисов С. Н. Инструменты стратегического менеджмента. Ч. I // Top-Manager. – М: Издательский дом «Top-Manager». 2008. № 3.
8. Паринов С. И. Новые возможности имитационного моделирования социально-экономических систем// Искусственные сообщества.2007. № 3–4. С. 26–61. http://www.artsoc.ru/docs/Journal/45_r.pdf.
9. Макаров В. Л., Бахтизин А. Р. Компьютерное моделирование искусственных миров // http://scmai.miem.edu.ru/S/s2.htm.
10. Лычкина Н. Н. Технологические возможности современных систем моделирования // Банковские технологии. 2000. № 9. С. 60–63.
11. Карпов Ю. Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5. СПб.: БХВ-Петербург, 2005. 400 с.
12. Толуев Ю. И. Имитационное моделирование логистических сетей //Логистика и управление цепями поставок. 2008. № 2/25.