Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5 (1124147), страница 64
Текст из файла (страница 64)
Более подробно данный вопрос рассматривается в работе 1АБ04]. Приход нового объекта из внешнего источника в системно- динамической модели можно реализовать как порождение нового агента, попадание объекта в сток естественно реализуется как уничтожение агента. Соответствующие операции нами обсуждались ранее в главе 15. 16.2. Модель, разработанная в рамках различных подходов Модели одной и той же простой системы массового обслуживания, разработанные в рамках различных подходов к моделированию, демонстрирует гибкость платформы Апулей(с. Молель с именем ляепе вавеа ьачв оцет находится в папке Рагг 1Ч.
Окно анимации работающей модели представлено на рис. 1б.З. В модели представлена система массового обслуживания, относящаяся к классу М/М/з-систем. Это з-канальная система (т.е. система с а-обслуживающими приборами) с экспоненциальным (пуассоновским) законом распределения времени обслуживания заявок обслуживающими приборами и одной бесконечной очередью ожидания заявками обслуживания типа Р)ГО (Г)гзг-1п Г)гзг-Оцг, первый прибыл, первый обслужен). Глава 16.
Использование различных парадигм при разработке моделей зт6 'Птее МосЫв ог йзе М,(М/в Бувгегп Сгеа1ес) 061Г!ц О!ггегапг МосЫгд РагасЦгпв тес»пи«Иве ып(«хвхгт е ьа пр»к в Еаре«пвпс««Ьагассваксг Гаго !2 я«я я. гк -зв2вай "' ° (2цам» 1епраьг 11,0!3 5егмег мартккп: 0,023 т»м И в(синг 5,! Е ро еп««ап(м«с еихмкпьа1 вги«е впе (2«вме 1епр(ьг е,(20 Ев~ ег Ойаа!Квг Ь«35 тв» Рг су«епм 2,729 А««На! «»1»! 2 7 5егвс» гасег ! Нм»2»гоги«мак: 3 'миа! я»с»все Смеси !вар(ьг О,! 5 ар«а г ар тап» И сувои~ 3,333 Рис. 16.3. Модель массового обслуживания, разработанная с помощью нескольких подходов На платформе Апу) оя!с для этой системы построены три независимые модели, собранные в пакеты (рас)(аяеэ) для удобства.
Пакеты используются в АпуЫя!с для структуризапии модели. Первый пакет, ставвъсат (3ьвсхесе е ~епс, в единственном классе активных объектов маьс содержит 4 блока библиотеки Еп(егрг!Ее ЫЬгагу (рис. !6.4). Структура блок-схемы совершенно ясна. У блока (201ау значением параметра сарасьсу яВЛяЕтСя ПараМЕтр яесснхсееарас'Су ВКЛЮЧаЮщЕГО ОбЪЕКта, т. е. число обслуживающих приборов можно легко менять. ВтОрсй ПаКЕт, арале (!есесеахавест, ИМЕЕТ трн КЛаССа аКтИВНЫХ ОбЪЕКтОВ: класс лдесс (заявки на обслуживание), класс ольс (обслуживающие приборы) и класс нате. Поведение агента отражает его состояние с точки зрения системы.
Агент имеет два состояния: он может либо ждать обслуживания том ав Ь»Ме в «»е» а(гаки Апу(пфс пп«аЬ »Р «в сагпе МРПЬ икгвп кввв и равЫг кв(рмв1 «»песе емев ЙомкЬ»п п»»Ы маЬ егевес в«вввкес апд смв *рве Ьве«»ксив. Ьг (Ь» 0»с Ав гпвм арегес всмап геев»се опас Гвпг а сввп( «ара»Ьаг Мо ва»еаак «и Виме, !и «е всоп«АВ п»Ю р в' а ЬЬ в Ьу« »амв,П ««рь «у« сппе впас. Нв»»маг, врат «В ас а камир роем, уом сап апЬапсе «в АВ пк«еюо вннв П»0ньг««упа пьс гьв 1с Ьп«со «арапа щре «в се и Ь. заме» Фх то* »вкус (тгр и а 00 мппвкх>т Ы а севу Е«к»»псе(а( «Ьав«Ь»»авг 5»мке Г(меме ~ Я'1 5»й (2 ! 0,. Лоьтй Вазе(! Мо(И ъйбт Г15ратспег 316 Часть!)г'. Современные парадигмы в имитационном моделировании в очереди, либо обслуживаться прибором обслуживания.
Это полная аналогия того, что мы имели в системной динамике ранее, когда различные состояния стейтчарта активных объектов характеризовали положение элементов в системе: нахождение этих объектов в том или другом накопителе. Ресурс имеет также два состояния: состояние занятости обслуживанием заявки и состояние простоя.
Активный объект маъл представляет саму модель, объединяющую динамически изменяющееся число агентов и статическое число приборов. Вначале число реплицированных агентов в системе О. Статический циклический таймер аккьсатв, срабатывающий каждый раз через случайный интервал времени, распределенный по экспоненциальному закону, порождает очередного агента, который либо сразу помещается на обслуживание (переходит в состояние вековое), либо становится в очередь на ожидание прибора обслуживания, По окончании ослуживания агент изымается из системы (уничтожается).
Рис. 16.4. Классическая модель СМО, построенная из блоков ТрЕтИй ПаКЕт, аделе изеи бъвраесиек, ИМЕЕТ ЧЕтЫрЕ Кхаееа аКтИВНЫХ ОбЪ- ектов: кроме перечисленных ранее классов, которые есть в предыдущей модели, этот пакет включает еше и активный объект "диспетчер". Каждый агент сразу после появления в системе запрашивает обслуживание у диспетчера. Диспетчер отслеживает все ресурсы и заявки на обслуживание от каждого порожденного агента. При запросе агентом обслуживания диспетчер либо выделяет ему свободный ресурс, либо ставит агента в очередь.
При освобождении ресурса агентом, этот ресурс передается диспетчером следующему агенту из очереди, если очередь не пуста, в противном случае лиспетчер запоминает, что этот ресурс свободен. Четвертый пакет, лккте1, включает по одному экземпляру класса иатл всех трех предыдуших пакетов. Иными словами, в этой модели параллельно и независимо функционируют все три описанные ранее модели (обращаясь, впрочем, к одному и тому же генератору случайных чисел). 16.3.
В каких случаях нужно строить агентные модели В предыдущих разделах показано, что всегда можно разработать агентну1о модель, эквивалентную заданной системно-динамической молели или дискретно-событийной модели. Однако всегда ли нужно переходить к агентам в моделировании? Глава 1о.
Использование раэпичнык парадипл при разработка моделей 317 Многие процессы, например экономическую коныяонкурр или изменение потоков инвестиций, удобно описывать с помощью известных и проверенных системно-динамических молелей. Простые системы массового обслуживания лучше моделировать традиционными средствами из блоков библиотеки Ептегргвзе ЬЬгагу. Если индивидуальное поведение отдельных объектов не является существенным в системе, то при построении модели этой системы следует, конечно, использовать традиционные подходы: модель системной динамики или дискретно-событийную модель. В то же время существуют проблемы, решение которых в рамках этих традиционных парадигм невозможно. Например, при разработке модели распространения новых продуктов Франка Басса, построенной в главе 13, мы абстрагировались от поведения покупателей: индивидуальное поведение объектов системы — это именно то, от чего абстрагируется разработчик, используя парадигму системной динамики.
Поэтому в модели Басса нельзя выразить, например, зависимость эффективности "устной рекламы" продукта от времени, прошедшего с момента покупки каждым конкретным агентом — распространителем сведений о своей новой покупке. Если этот фактор является существенным для конкретных условий и конкретного продукта, то не учитывающая его системно-динамическая модель будет неадекватной и, следовательно, бесполезной.
В то же время можно очень просто построить агентную модель, учитывающую такую зависимость. Два этих совершенно различных подхода, системная динамика и агентный подхол, получили образные названия "моделироеппие леса" и "моделирование деревьев" 1ЗМОО1. Каждый из подходов имеет свои плюсы и минусы.
Однако во многих случаях именно "моделирование деревьев", т. е. рассмотрение системы как совокупности взаимодействующих активных объектов, дает более полную и качественную модель. Например, в исследованиях рынка и социальных процессов важной проблемой является нахождение и объяснение законов регулирования процессов: какие глобальные законы динамики возникают и являются устойчивыми в таких системах даже при отсутствии централизованного планирования и управления, как меня1отся эти законы при изменениях в поведении и предпочтениях индивидуальных активных объектов, как сочетаются законы стихийного рынка и законы планирования? Законы движения социосистемы, вывеленные интегрированием характеристик индивидуального поведения объектов, являются обычно более точными, чем законы, сформулированные исходя из общих предположений о поведении всей интегральной совокупности объектов.
Известно, что у сложной системы возникают так называемые "эмерджентные" свойства, т. е. такие свойства, которых нет у отдельных частей системы и которые проявляются только в целой системе. Этот факт весьма существенен для социальных и организационных систем, которые составляют основу экономических систем. Эмерджентные свойства как раз и могут быть выявлены с использованием агентных моделей.
З1В Часть !К Соаремвнныв парадипиы а имитационном моделировании Во многих случаях модель можно строить по-разному, применяя различные парадигмы моделирования. Например, для-анализа динамики популяции можно строить как системно-динамическую модель, описывая потоки рождения/смерти и миграции, так и агентную модель, описывая индивидуальную продолжительность жизни, семейный статус и т. д.
При решении одних проблем традиционные подходы более предпочтительны: соответствующие модели проще построить и они обычно более эффективны, При решении других проблем более удобны и адекватны агентные модели, несмотря на то, что их строить труднее и они обычно требуют больше вычислительных ресурсов для выполнения. Можно только утверждать, что к проблемам, которые должны решаться с помощью агентных моделей, относятся все те, в которых индивидуальное поведение обьектов системы нельзя ие учитывать при построении модели. 16.4. Заключение Как было показано в этой главе, важная особенность Апу[ об[с, вытекающая из возможности реализации на одной платформе идей различных подходов и парадигм моделирования, заключается в том, что при использовании данного программного продукта разработчик модели не связан узкими рамками только одной парадигмы, он может выбрать любую, наиболее подходящую для решения данной задачи.
Но более интересным и важным преимуществом АпуЕоя[с является то, что в рамках одной разработки можно использовать различные подходы, стили и парадигмы моделирования, смешивая их лля построения наиболее ясной и адекватной модели. Например„конкурентную борьбу нескольких компаний в узком секторе производства удобно строить как агентную модель, представляя модель экономического развития региона в рамках системно-динамической парадигмы. Таким образом, при построении реалистичных моделей для решения сложных проблем нужны подходы и инструменты моделирования, позволяющие совмещать при разработке одной модели различные парадигмы и стили моделирования.
Как вытекает из предыдущего изложения, АпуЕой[с позволяет легко комбинировать различные подходы к моделированию. Выбор стиля и концепций при разработке модели, продумывание структуры будущей модели и выбор наиболее подходящей парадигмы представления отдельных частей будущей модели, а также приемы комплексирования моделей, разработанных в различных стилях, выходят на первый план при использовании Аду[.ой1с. Обсуждение всех этих вопросов приведено в работе [АБ041. Часть Ч Примеры моделей для различных областей применения Глава 17. Стратегическое планирование Глава 18. Динамика развития города (ОгЬап 0упаппса) Глава 19. Информатика и коммуникация Глава 20. Модели коллективного поведения Глава 21.