Читать книгу Курс «Маркетинг и продажи промышленного оборудования». Модуль «Системная динамика рынка» - Станислав Львович Горобченко - Страница 3
2. Системная динамика и имитационное моделирование
2.1. Обзор вопросов системной динамики и имитационного моделирования
ОглавлениеРаздел является обзором существующих подходов и программных средств в имитационном моделировании. Приводятся три общепринятые парадигмы системной динамики, дискретно-событийного и агентного моделирования. Более подробно рассматривается агентный подход, сравнительно редко используемый в России, но являющийся основой для создания эффективных систем поддержки принятия решений в бизнесе. Раздел предназначен для первоначального знакомства с имитационным моделированием и описания того круга бизнес задач, где его применение может оказаться эффективным.
Имитационную модель можно рассматривать как множество правил, определяющих процессы функционирования некоторой системы и ее переходов из одного временного состояния в следующее. Эти правила могут определяться любым доступным для компьютера способом – в виде блок-схем, дифференциальных уравнений, диаграмм состояний, автоматов, сетей. Имитационные модели, как правило, менее формализованы, чем аналитические, система описывается «как она есть», в терминах максимально приближенных к реальным.
В имитационном моделировании к настоящему моменту сложились три самостоятельные парадигмы – системная динамика, дискретно-событийное и агентное моделирование. Они соответствуют разным уровням абстракции при создании модели, что обуславливает применение того или иного подхода.
Принято различать три уровня абстракции: высокий (стратегический), средний (тактический) и низкий (оперативный) [1]. При низком уровне моделируется поведение отдельных объектов, но, в отличие от физического моделирования, используются не точные траектории и времена, а их усредненные или стохастические значения. На этом уровне принято решать задачи, связанные с диспетчеризацией, различными видами транспортировки изделий и материалов, компьютерными системами. На среднем уровне абстракции обычно оперируют с расписаниями, задержками, мощностями и емкостями, физическое перемещение при этом не анализируется. Здесь абстрагируются от индивидуальных свойств объектов моделирования (людей, машин, товаров) и в основном рассматривают их потоки.
Характерными задачами этого уровня являются системы массового обслуживания, модели бизнес-процессов, логистика. При высоком уровне абстракции в модели, как правило, отсутствуют индивидуальные объекты сами по себе, а оперируют лишь с их количеством и агрегированными показателями. На данном уровне моделируется проблемы рыночного равновесия, социально-экономического развития отраслей, экологические процессы.
Дискретно-событийное моделирование
Подходом, соответствующим низкому и среднему уровню абстракции, является дискретно-событийное (далее ДС) моделирование. Его концепцию предложил в 60-х годах прошлого века Джефри Гордон, разработав популярное и сегодня программное средство GPSS. В работе [2] он предложил использовать концепции заявок (entities), ресурсов и потоковых диаграмм (flowcharts). На рис.2.1 изображена типичная потоковая диаграмма, согласно которой моделируется работа call-центра.
Рис.2 1. Пример потоковой диаграммы «обработка звонков в call-центре»
Заявки, в данном случае звонки, представляют собой некие пассивные объекты, которые перемещаются, захватывают и освобождают ресурсы согласно потоковым диаграммам – схемам, описывающим изучаемый процесс. Заявки могут представлять собой людей, товары, детали, документы, сообщения. ДС моделирование является дискретным – каждому событию соответствует определенный дискретный момент времени. Характерной чертой данного подхода является «обезличенность» заявки, от ее индивидуальных свойств абстрагируются. Считается, что все заявки обладают универсальной логикой поведения и обрабатываются по единому, заранее известному алгоритму. Ядро модели отвечает за генерацию, обработку и уничтожение заявок.
Инструменты дискретно-событийного моделирования
Существует достаточно много программных продуктов, поддерживающих ДС подход. Среди всех средств, предназначенных для имитационного моделирования, этот класс наиболее представительный. Например, в отчёте (3) приводятся характеристики 65 различных инструментов. Это объясняется большой популярностью дискретно-событийного моделирования в таких областях как системы массового обслуживания, бизнес-процессы, производство, логистика, транспорт и других. Часть программных продуктов являются достаточно универсальными (Arena, Extend, GPSS, Witness), другие заточены под более узкий класс задач и содержат абстрактные элементы, взятые из предметной области исследования (AutoMod – транспорт, логистика, производство; MedModel – моделирование и оптимизация систем в здравоохранении; Comnet – телекоммуникации).
Стандартными характеристиками большинства продуктов являются: возможность создания модели в графическом режиме (потоковые диаграммы рисуются, используются стандартные шаблоны для отдельных блоков, параметры элементов системы задаются через подменю); интерфейсы для соединения с базами данных, средства для обработки статистики на входе и выходе модели, для ее оптимизации, для создания анимации в ходе имитационных экспериментов.
Системная динамика
Высокому уровню абстракции в имитационном моделировании соответствует подход системной динамики (далее СД), предложенный в 50-х годах прошлого века американским ученым Джемом Форрестером. При данном подходе не рассматриваются индивидуальные объекты, а лишь их количества и агрегированные показатели. Системная динамика применяется тогда, когда нет необходимости или возможности исследовать влияние отдельных объектов, а достаточно изучить поведение системы на уровне агрегированных величин.
Форрестер предложил использовать для этого понятия «накопители» (stocks), и «потоки» между ними (flows) (4). Накопители могут относиться к различным материальным объектам, например, к людям в демографических моделях, товарам, деньгам при моделировании баланса на рынке, природным ресурсам в задачах экологии. На рис. 2.2 приведена системно-динамическая диаграмма из модели распространения продукта на рынке.
Рис. 2.2. Пример системно-динамической диаграммы «Проникновение продукта на рынке»
Инструменты системной динамики
В ней три объекта – накопителя: «потенциальные пользователи», люди, формирующие спрос и люди, являющиеся реальными пользователями. Такие факторы как реклама, частота контактов определяют потоки, в соответствие с которыми накопители «перетекают» друг в друга. С формальной точки зрения системно-динамическая модель представляет собой систему дифференциальных (в частном случае алгебраических) уравнений, определяющих потоки между накопителями. Отличительной чертой СД является неразличимость объектов, находящихся в одном накопителе. Их невозможно индивидуализировать, приписав различные свойства, логику поведения или процесс обработки. Все взаимосвязи задаются на уровне накопителей, то есть между агрегированными величинами.
Системно-динамические модели обычно применяются при стратегическом анализе и долгосрочном планировании. Интересные примеры их использования можно найти как в монографиях по системной динамике, например в (5) и (6), так и в многочисленных статьях по конкретным системно-динамическим моделям, созданным за более чем полвека развития данной парадигмы.
Число программных продуктов, предназначенных для использования системно-динамического подхода, относительно невелико по сравнению с ДС моделированием. Наиболее распространены инструменты Vensim компании High Performance Systems (www.hps nc.com), Powersim компании Powersim, SA (www.powersim.com), IThink компании Ventana Systems (www.vensim.com), а также Anylogic. Vensim является из них наиболее простым и недорогим, обладая при этом такими характеристиками, как поддержка графического создания потоковых диаграмм; встроенные логические операторы и генераторы случайных чисел; средства для связи с базами данных для генерации отчетов, анимации и анализа чувствительности.
Важной характеристикой инструментов Powersim и IThink являются встроенные алгоритмы частичной поддержки дискретного моделирования. Это позволяет создавать модели с разными уровнями абстракции для отдельных блоков. Более подробную информацию о характеристиках данных инструментов можно найти на сайтах компаний разработчиков и в руководстве по Powersim (7).
Агентное моделирование
Третьей парадигмой в имитационном моделировании является агентное моделирование (далее АМ). Агент представляет собой индивидуализированный активный объект, который может обозначать человека, транспортное устройство, компанию, населенный пункт. В зависимости от того, какой объект представляет собой агент, модель может соответствовать высокому уровню абстракции (агент – компания, страна), среднему (агент – транспортная единица), низкому (агент – отдельный человек) или сочетать несколько уровней. Таким образом, данная парадигма является наиболее универсальной.
Основным отличием агентного подхода от первых двух является построение модели по принципу снизу-вверх. Зависимости между агрегированными величинами не задаются исходя из знаний о реальном мире, а получаются в процессе моделирования индивидуального поведения десятков, сотен или тысяч агентов, их взаимодействия друг с другом и с объектами, моделирующими окружающую среду. Например, исследование рынка будет происходить не в понятиях совокупного спроса и предложений, а в модели будут заложены возможные реакции отдельного человека на изменение цены, его потребительские характеристики. У агентов появляется возможность «общаться» между собой, обмениваться информацией, предпочтениями, влияя, тем самым, на поведение друг друга. Модель может учитывать пространственные характеристики, взаиморасположение агентов по отношению друг к другу и объектам окружающей среды.
К преимуществам агентного подхода следует отнести: отсутствие предопределенности в поведении системы на глобальном уровне, что может привести к появлению новых гипотез о ее функционировании в ходе симуляции модели; реализм и гибкость в описании системы, возможность моделировать самые сложные нелинейные обратные связи, использовать любой необходимый уровень детализации и абстракции. В АМ отсутствуют ограничения на гетерогенность элементов модели; появляется возможность моделирования общения и обмена информацией.
К потенциальным барьерам для построения агентной модели следует отнести, во-первых, наличие адекватных данных. Как правило, собрать статистику по характеристикам индивидуальных объектов сложнее, чем по агрегированным показателям. Во-вторых, придется определить логику поведения отдельного агента в терминах, доступных для обработки компьютером. Если это сложный объект, например человек, то приходится моделировать такие иррациональные вещи, как психологию поведения, выбора, привычки. С последними результатами в этой области, используемыми в агентных моделях, можно ознакомиться в статье (8).
В процессе имитационных экспериментов могут возникнуть вычислительные сложности, поскольку агентные модели в среднем требуют больших аппаратных и программных мощностей для проведения симуляций, чем системная динамика или дискретно-событийное моделирование.
Инструменты агентного моделирования
Агентный подход возник в 90-х годах прошлого века изначально в университетской среде США. В связи с этим большинство инструментов предназначалось для академических и учебных целей, многие до сих пор не являются коммерческими продуктами в полной мере. Одной из наиболее популярных разработок такого типа является среда Swarm (www.swarm.org) – коллекция библиотек под язык C, созданная в институте Санта-Фе. Наиболее известными коммерческими инструментами являются среды Ascape, RePast, AnyLogic.
Последний из них является разработкой российской компании XJTeknologies (www.xjtek.ru). Его конкурентным преимуществом является поддержка всех трех парадигм имитационного моделирования и возможность использования их в рамках одной модели. Также AnyLogic отличает мощное производительное ядро, позволяющее симулировать поведение миллионов агентов; богатые возможности для анимации и графического описания модели; поддержка разнообразных типов экспериментов, включая анализ чувствительности, метод Монте-Карло, встроенный оптимизатор OptQuest; возможности интеграции с базами данных, ERP и CRM системами; набор библиотечных объектов из областей логистики, бизнес-процессов, пешеходной динамики.
Информацию по другим инструментам агентного моделирования можно найти на электронном ресурсе (9).
Применение агентного моделирования
Агентный подход является наиболее молодым и потому наименее знакомым российским специалистам. Рассмотрим примеры успешного применения агентного моделирования в маркетинге и бизнесе. К области анализа распространения какого-либо товара, услуг, мнений, рекламы, могут относиться задачи на основе концепций моделирования эпидемиологии. Простейший пример диаграммы, согласно которой моделируется распространение заболевания, изображен на рис.2.3.
Рис.2.3. Пример диаграммы состояний агента по модели «распространение гриппа»
Одному объекту при этом может соответствовать несколько диаграмм состояний или блок-схем. Из рисунка видно, что при агентном подходе предметом моделирования является поведение отдельного объекта, а глобальное состояние системы является следствием. В эпидемиологии агентный подход позволяет моделировать сложные социальные сети, в том числе с учетом пространственного фактора, контакты между людьми, разную восприимчивость людей и степень их иммунитета. Это позволяет добиваться хороших результатов при прогнозировании скорости и характера распространения заболевания (10).
Второй класс задач относится к моделированию рынков, потребительских или финансовых. Агентный подход позволяет сделать акцент на индивидуальные предпочтения, стереотипы поведения потребителей при выборе ими продуктов и услуг. Отдельно выделяют задачи моделирования инноваций в бизнесе, их первоначального распространения на рынке. В четвертую группу относят задачи, связанные с оптимизацией организационной структуры, бизнес-процессов и снижением операционных рисков. Примером задачи первого класса служит моделирование эвакуации при давках в местах массового скопления граждан. Поведение людей в таких ситуациях часто становится иррациональным и не поддается моделированию традиционными методами. Агентный подход зарекомендовал себя для отыскания оптимальных методов эвакуации и минимизации возможных рисков (12). Агентное моделирование часто применяется западными компаниями при проектировании парков развлечений, супермаркетов. В таких задачах оптимизируется геометрическое расположение элементов системы относительно друг друга (например, аттракционов и кафе, или касс и полок с продуктами). Целью может служить увеличение пропускной способности, сокращение времени стояния в очередях, оптимальное расположение рекламных материалов.
Наглядным примером является оптимизированная модель супермаркета Sainsbury’s в западном Лондоне, разработанная компанией SimStore в 1999 году (13). Собрав статистику о предпочтениях посетителей и характерных для них путях следования в магазине, разработчики использовали агентный подход в сочетании с генетическими алгоритмами для улучшения расположения элементов супермаркета. Отметим, что решать подобные задачи аналитическими или статистическими методами крайне затруднительно, и агентное моделирование является одним из немногих возможных средств поддержки принятия решений.
Агентный подход хорошо применим для моделирования функционирования бирж. Результаты торгов зависят от поведения множества независимых людей с различными целевыми функциями, и их поведение логично моделировать в рамках агентного подхода. Подтверждением этому служит, например, модель Bios Group фондовой биржи NASDAQ (14). Модель измерения и минимизации операционных рисков управления активами банка Societe Generale (15) служит примером применения АМ в финансовых институтах и банках.
Бизнес-проблематику, где успешно применяется агентный подход, можно разделить на 4 класса (11). К первому относятся задачи с различного рода потоками. Они могут состоять из людей (проблемы пропускной способности помещений, эвакуации), единиц транспорта (моделирование городского трафика, планировки аэропортов, вокзалов). Часто для этого применяется дискретно-событийный подход. Если же объекты моделирования слишком разнородны или необходимо учесть их пространственное взаиморасположение, то использование агентного подхода предпочтительнее.
Выводы
Современные инструменты имитационного моделирования позволяют эффективно применять его не только в научных изысканиях, но и в качестве средства для построения систем поддержки принятия решений в бизнесе. Для достижения практически значимых результатов необходимо знать об особенностях и ограничениях каждого из трех существующих подходов.
Выбор той или иной парадигмы должен обуславливаться не столько предметной областью моделирования, а необходимой степенью детализации системы и имеющимися в распоряжении данными. Выбор инструмента моделирования при этом не столь первостепенен. Большинство современных программных средств сделает процесс симуляции удовольствием для разработчика, предоставив широкие возможности для анимации и оптимизации моделируемых процессов.