УДК 519.8765
И. В. Рудаков, А. А. Смирнов
ИССЛЕДОВАНИЕ СЛОЖНЫХ ДИСКРЕТНЫХ СИСТЕМ НА БАЗЕ АГЕНТНОГО МЕТОДА
Рассмотрены существующие методы имитационного моделирования для исследования сложных дискретных систем. Проведен процесс формализации сложной дискретной системы на базе агентно-го метода и описан разработанный комплекс программ, реализующий агентный метод исследования сложных дискретных систем.
Ключевые слова: имитационное моделирование, дискретные системы,
агентный метод.
В настоящее время актуальной задачей является исследование сложных дискретных систем, отображающих функционирование таких объектов, как автоматизированные системы управления технологическими процессами, информационно-вычислительные системы, комплексы, сети и т.д. Известно, что под сложной системой [1,2] понимается система, которая имеет, по крайней мере, один из следующих признаков: допускает разбиение на подсистемы, изучение каждой из которых в отдельности при учете влияния других подсистем в рамках поставленной задачи имеет содержательный характер; функционирует в условиях существенной неопределенности и воздействие внешней среды на нее обусловливает случайный характер изменения ее параметров или структуры; осуществляет целенаправленный выбор своего поведения. Сложную систему, состояния которой изменяются мгновенно во времени, будем называть сложной дискретной системой.
Известно, что по способу описания структуры и поведения системы в имитационном моделировании выделяют следующие традиционно устоявшиеся подходы [1, 2]: модель системной динамики, дискретно-событийная модель, модель динамической системы.
В модели системной динамики [1, 2] сложная дискретная система представляется в терминах накопителей, под которыми понимаются любые объекты реального мира, потоков между этими накопителями, и информации, которая определяет величину этих потоков. Системная динамика абстрагируется от отдельных объектов и событий, концентрируясь на политиках, управляющих этими процессами. В данном подходе структура и поведение системы представляются как множество взаимодействующих положительных и отрицательных обратных связей и задержек. Математически системно-динамическая модель -это система конечно-разностных уравнений. Важно отметить, что модель оперирует только количествами и агрегатами, таким образом, объекты, находящиеся в одном накопителе, неразличимы, лишены индивидуальности, что не всегда удобно, поскольку приходится рассуждать в терминах глобальных структурных зависимостей.
В основе дискретно-событийной модели [1, 2] лежит концепция заявок, или транзактов, под которыми понимают различные сущности реального мира, ресурсов и потоковых диаграмм, определяющих потоки заявок и использование ресурсов. Заявки проходят через потоковые диаграммы, обрабатываются в очередях, захватывая и освобождая ресурсы, разделяясь или соединяясь. Важно отметить, что дискретно-событийную модель можно рассматривать как глобальную схему обработки заявок, обычно со стохастическими элементами.
Модель динамической системы [1, 2] является прообразом модели системной динамики. Соответствующая математическая модель, как и в случае системной динамики, состоит из набора переменных состояния и системы конечно-разностных уравнений над ними. В отличие от модели системной динамики, переменные состояния имеют прямой физический смысл. Математическое разнообразие и сложность в динамических системах могут быть значительно выше, чем в системной динамике, так что в принципе любая системно-динамическая задача может быть решена инструментами для моделирования динамических систем, и даже с лучшей точностью.
Описанные традиционные подходы в имитационном моделировании имеют ряд недостатков, прежде всего сложность добавления деталей к существующим моделям, их расширению и изменению. Именно поэтому в настоящее время широко используется агентное моделирование [3], которое сглаживает подобные недостатки и позволяет решать задачи с высокой степенью точности, предоставляя возможность исследовать нетривиальное поведение сложных дискретных систем и принимать на основе построенной модели взвешенные и обоснованные управленческие решения. Агентное моделирование применяют при исследовании децентрализованных систем, динамика функционирования которых определяется не глобальными правилами и законами, а наоборот, эти глобальные правила и законы являются результатом индивидуальной активности членов управленческих популяций. В то время как рассмотренные традиционные подходы имитационного моделирования не предназначены для решения подобных задач, мно-гоагентные модели достаточно успешно с ними справляются. Прежде всего, учитывается поведение отдельно взятых объектов системы, в результате становится возможным выявлять особенности коллективного поведения элементов системы, учитывать взаимодействия их друг с другом и с окружающей средой.
Агентная модель [3] описывает сложную дискретную систему в виде нескольких подсистем, называемых агентами (рис. 1). Каждый агент взаимодействует с другими агентами, которые образуют для него внешнюю среду, и в процессе функционирования может изменить как внешнюю среду, так и свое поведение. Существует множество определений понятия агента [3]. Общим во всех этих определениях является то, что агент — это некоторая сущность, которая обладает активностью,
автономным поведением, может принимать решения в соответствии с некоторым набором правил, взаимодействовать с окружением и другими агентами, а также может изменяться, эволюционировать. Важно отметит^ чт^ применяя агентную рисЛ. Структура сложной модель, можно получить представление дискретной системы, форма-об общем поведении системы, исходя из лизованной агентным мето-предположений об индивидуальном, част- дом
ном поведении ее отдельных агентов и их взаимодействии в системе.
Описанные подходы в имитационном моделировании применяются для исследования сложных дискретных систем на стадии их проектирования. Поскольку реальные системы весьма сложные (с точки зрения числа подсистем), то использование традиционных подходов приводит к получению очень громоздких моделей со сложной структурой, исследование которых затруднительно. В связи с этим предлагается исследовать сложную дискретную систему с точки зрения ее функционирования на базе агентного метода, для чего необходимо описать процесс перехода от реальной системы к агентной модели, исследовать полученную агентную модель и сравнить результаты с существующими аналогами с точки зрения их близости к теоретическим результатам и с точки зрения сложности модели.
Рассмотрим процесс формализации сложной дискретной системы £ на базе агентного метода. Известно [1, 2], что процесс функционирования системы £ описывается по времени некоторым оператором Fs, который преобразует независимые переменные (х, Н, Vk) в соответствии со следующим соотношением:
= Fs(Н, Н, Н,£), (1)
где Х(Н) = {х\(£), х2(£),..., хпх(£)} — множество входных параметров, Х{ Е Н,г = 1,пх, — входной параметр; Н(Н) = {Н\(£),Н2 (£),... ,Нп^ (£)} — множество внутренних параметров, Н Е Н^ = 1,п^, — вну-
тренний параметр; V(¿) = {VI(1),...^пу(£)} — множество
внешних воздействий, Vк Е V,k = 1,п, — внешнее воздействие;
—(Н = {у\(£),у2(£),...,упу(£)} — множество выходных параметров,
ут Е Н ,т = 1,пт, — выходной параметр.
В общем случае переменные (х^, Нj, vк) являются элементами непересекающихся подмножеств и содержат как детерминированные, так и стохастические составляющие.
Исходя из определения сложной дискретной системы, рассматриваемая система £ допускает разбиение на отдельные независимые подсистемы, обладающие некоторым набором свойств. Следовательно, множество внутренних параметров Н разбивается на непересекающиеся
подмножества Н\ и Н2 и... и Нп = Н, причем подмножество Н] является множеством внутренних параметров для ¿-й подсистемы системы $. Каждая подсистема имеет следующие свойства: целенаправленно выбирает линию своего поведения; взаимодействует с другими подсистемами и с внешней средой; изменяет свое состояние мгновенно во времени в процессе взаимодействия.
Известно [3], что основным понятием в агентной модели является агент, имеющий набор параметров Р = |р! ,р2,... ,рпр}, которые, по сути, являются количественными характеристиками его состояния, а также набор правил, которые определяют мгновенный переход из одного состояния в другое, и осуществляющий взаимодействие с другими агентами и изменение при этом свойств и линии поведения.
Поведение агента описывается при помощи так называемых карт состояний (рис. 2). Карта состояний представляет собой ориентированный граф С = (V, Е), в котором множество вершин V — это состояния агента, находясь в которых он выполняет тот или иной набор действий, а множество дуг Е — это события, которые переводят агента из одного состояния в другое.
Анализируя свойства агента и подсистемы, можно сделать вывод, что эти понятия являются эквивалентными. Таким образом, концептуально формализация сложной дискретной системы при помощи агент-ной модели (рис. 2) определяется следующим образом.
1. Сложная дискретная система разбивается на отдельные подсистемы, обладающие множеством внутренних параметров Н = = {К\, Н2,..., }. Каждая подсистема становится агентом, сохраняя свои количественные характеристики, т.е. Р = Н. Линия поведения подсистемы формализуется посредством карты состояний агента.
Рис. 2. Формализация сложной дискретной системы агентным методом
2. Аналогично внешняя среда, входное воздействие и выходная функция также представляются в виде агентов со своими характеристиками и поведением.
3. Закон функционирования сложной дискретной системы FS задается в виде алгоритма, который определяется как результат совместной деятельности агентов, т.е. FS — это совокупность карт состояний всех агентов системы.
Данный алгоритм, не меняя свойств и структуры сложной дискретной системы, задает взаимно-однозначное отображение сложной дискретной системы в агентную модель.
Все описанные подходы в имитационном моделировании имеют свою программную реализацию (рис. 3). Для системной динамики существует четыре основных инструмента: VenSim [3, 4], PowerSim [3, 4], iThink [3, 4], ModelMaker [3, 4]. Дискретно-событийное же моделирование поддерживается десятками различных инструментов, такими как Arena [3, 4], SimProcess [3, 4], AutoMod [3,4]. Для динамических систем чаще всего используют инструмент — Matlab Simulink. Для агентного моделирования до недавнего времени не существовало ни одного коммерческого инструмента, только библиотеки на Java или C++, разработанные в различных университетах. В настоящее время появился достаточно мощный инструмент — AnyLogic [5]. Наиболее существенным преимуществом AnyLogic является возможность быстрого создания профессиональных агентных моделей в графической среде. AnyLogic поддерживает языковые конструкции для задания поведения агентов, их взаимодействия, моделирования среды, а также имеет богатейшие анимационные возможности. И наконец, AnyLogic позволяет описывать части больших гетерогенных систем, используя разные подходы, объединяя модель системной динамики, дискретно-событийную и агентную модели.
При использовании вышеописанного программного продукта AnyLogic для исследования сложных дискретных систем возникают трудности с формализацией задачи, поскольку создание агентной
Рис. 3. Подходы в имитационном моделировании в зависимости от способа описания структуры и поведения модели
Уровень моделировании
Модуль накопления Моделирующий модуль Графический модуль
данных
Рис. 4. Структура программного комплекса исследования сложных дискретных систем на базе агентного метода
модели в AnyLogic сопровождается написанием кода, а при использовании библиотеки типа Swarm или RePast процесс описания модели вообще сводится только к кодированию. Таким образом, существует необходимость в новом, более удобном для практического использования инструменте агентного моделирования, предоставляющем возможности исследования сложных дискретных систем.
Для устранения недостатков существующих инструментов агент-ного моделирования разработано программное обеспечение, которое предоставляет следующие возможности.
1. Механизм формализации сложной дискретной системы на базе агентного метода.
2. Динамический сбор необходимой статистики.
3. Механизм визуального отображения процесса моделирования.
В структуре программного комплекса (рис. 4) можно выделить два
уровня — формализации и моделирования.
На уровне формализации происходит преобразование сложной дискретной системы в эквивалентную агентную модель. Уровень моделирования реализует процесс функционирования полученной агентной модели, собирая необходимые данные о сложной дискретной системе и предоставляя их в удобном для пользователя графическом виде.
Используя разработанный комплекс программ, пользователь имеет возможность оценить количественные и качественные характеристики функционирования сложных дискретных систем, получая необходимые результаты, сопоставимые с результатами, полученными в известных пакетах имитационного моделирования таких, как AnyLogic.
Предложенный метод исследования сложных дискретных систем был опробован на примере функционирования центральных станций Московского метрополитена, для чего была проведена формализация
Станция
не найдена Станция Станция
Станция не конечная
Рис. 5. Карта состояний пассажира
Рис. 6. Число пассажиров на станции при нарастании потока пассажиров:
1 — вР88; 2 — разработанный комплекс программ; 3 — AnyLogic
объекта исследования в качестве агентной модели, которая была смоделирована в разработанном программном комплексе, а также в известных пакетах моделирования: вР88 и AnyLogic.
Полученная агентная модель содержит следующие типы агентов.
Агент-станция. Данный агент является пассивным, так как не обладает поведением, и имеет только одно интересующее нас свойство — число пассажиров на станции.
Агент-пассажир. Данный агент является активным и обладает двумя свойствами: текущей станцией, на которой находится пассажир, и маршрутом следования. Карта состояний пассажира представлена на рис. 5.
Учитывая сложность формализации реального потока пассажиров, будем считать его равномерным. Таким образом, при нарастании потока пассажиров получаем равномерное увеличение числа пассажиров на станции (рис. 6), так как никаких ограничений на пропускную способность станций не накладывалось.
Вывод. Используемая агентная модель имеет более простую структуру, так как состоит всего из двух типов взаимодействующих агентов, а разработанный комплекс программ так же, как и известные пакеты дает результаты, близкие к теоретическим.
СПИСОК ЛИТЕРАТУРЫ
1. Советов Б. Я., Яковлев С. А. Моделирование систем: Учеб. для вузов.
- М.: Высш. шк., 2001.
2. Павловский Ю. Н., Белотелов Н. В., Бродский Ю. И. Имитационное моделирование. - М.: ИЦ "Академия", 2008.
3. Б о р щ е в А. В. Практическое агентное моделирование и его место в арсенале аналитика // Exponenta Pro. - № 3-4. - 2004.
4. Карпов Ю. Г. Имитационное моделирование систем. Введение в моделирование на AnyLogic 5. - СПб.: БХВ Петербург, 2005.
5. Материалы сайта AnyLogic. http://www.anylogic.ru (13 мая 2008).
Статья поступила в редакцию 24.09.2008
Игорь Владимирович Рудаков окончил МВТУ им. Н.Э. Баумана в 1981 г. Канд. техн. наук, доцент кафедры "Программное обеспечение ЭВМ и информационные технологии" МГТУ им. Н.Э. Баумана. Автор более 50 научных работ в области информационных технологий.
I.V. Rudakov — Ph. D. (Eng.), assoc. professor of "Computer Software and Information Technologies" department of the Bauman Moscow State Technical University. Author of more than 50 pablications in the information technologies field.
Анатолий Анатольевич Смирнов — магистр кафедры "Программное обеспечение ЭВМ и информационные технологии" МГТУ им. Н.Э. Баумана. Специализируется в области информационных технологий.
A.A. Smirnov — the magister of the 'Computer Software and Information Technologies" department of the Bauman Moscow State Technical University.
В издательстве МГТУ им. Н.Э. Баумана в 2008 г. вышла в свет книга
Колесников К.С.
Рассказ о моей жизни. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2008.
- 360с.
Автобиографическая книга профессора МГТУ им. Н.Э. Баумана, академика РАН Константина Сергеевича Колесникова представляет собой яркое жизнеописание человека интереснейшей судьбы. Перед нами история личности на фоне крупнейших событий двадцатого столетия, пример целеустремленности фронтовика-бауманца, который жаждал учиться и добился максимальной самореализации.
Читатель — студент или выпускник МГТУ им. Н.Э. Баумана — почерпнет из этой книги немало ценной информации о развитии университета во второй половине XX в., воспитании молодежи, замечательных ученых, блестящих педагогах, которыми по праву гордится наша alma mater.
Неподдельная искренность автора, рассказывающего о пройденном им пути, побуждает к серьезному размышлению, поиску ответов на волнующие современника вызовы нынешней эпохи.
По вопросам приобретения обращаться по тел. (499) 263-60-45; e-mail: [email protected]