Skip to Content

Применение технологии многоагентных систем для интеллектуальной поддержки принятия решения

Главным отличием современных интеллектуальных систем является их распределенность, обеспечение обработки и применение распределенных знаний [6]. Главный смысл происходящих в настоящее время смен концепций (парадигмы) создания и использования средств искусственного интеллекта – переход от предположений, справедливых только для изолированных систем искусственного интеллекта, от индивидуальных систем к распределенной обработке информации и разработке многоагентных интеллектуальных систем (MAC).

При практической реализации распределенных систем возникли серьезные трудности с проектированием и описанием объединенных в единую сеть разнородных локальных компьютерных узлов. В последнее время в рамках общего научного направления «искусственный интеллект» активно ведутся исследования под объединенным названием «многоагентные системы».
Многоагентные системы зародились на пересечении теории систем и теории систем распределенного искусственного интеллекта (Distributed Artificial Intelligence (DAI)-систем).
С одной стороны, речь идет об открытых, активных, развивающихся системах, в которых главное внимание уделяется процессу взаимодействия агентов как причине возникновения системы с новыми качествами (концепция возникновения).
С другой стороны, многоагентные системы могут строиться по принципам распределенного интеллекта как объединение отдельных интеллектуальных систем, обладающих своими базами знаний и средствами рассуждений.
Технология многоагентных систем
Технология многоагентных систем – это новая парадигма информационной технологии, ориентированной на совместное использование научных и технических достижений и преимуществ, которые дают идеи и методы искусственного интеллекта, современные локальные и глобальные компьютерные сети, распределенные базы данных и распределенные вычисления, аппаратные и программные средства поддержки теории распределенности и открытости [6]. Принципиальным отличием новой парадигмы построения прикладных систем является то, что в ней определяющим являются данные (факты), которые указывают направление вычислений.
Агент – это развитие известного понятия «объект», представляющего абстракцию множества экземпляров предметов реального мира, имеющих одни и те же свойства и правила поведения. Точное определение агента на сегодняшний день отсутствует. В основном используется определение, принятое на конференции международной ассоциации по лингвистике FIRA (Federation of Intelligent Physical Agents) в октябре 1996 года в Токио: «Агент – это сущность, которая находится в некоторой среде, интерпретирует их и исполняет команды, воздействующие на среду. Агент может содержать программные и аппаратные компоненты. Отсутствие четкого определения мира агентов и присутствие большого количества атрибутов, с ним связанных, а также существование большого разнообразия примеров агентов говорят о том, что агенты – это достаточно общая технология, которая аккумулирует в себе несколько различных областей» [2]. Агент – это программный модуль, способный выполнять определенные ему функции или функции другого агента (человека, чьи функции он воспроизводит) [2].
Фактически, используя понятие «агент», каждый автор или сообщество определяют своего агента с конкретным набором свойств в зависимости от целей разработки, решаемых задач, техники реализации, критериев. Как следствие, в рамках данного направления появилось множество типов агентов, например: автономные агенты, персональные ассистенты, интеллектуальные агенты, социальные агенты и т.д. А в зависимости от степени возможности внутреннего представления внешнего мира и способа поведения агенты классифицируются как локальные, сетевые, мобильные, интерфейсные, транслирующие, маршрутизации и т.д. В таблице 1 приведен пример классификации агентов.

Таблица 1. Пример классификации агентов

Характеристики Типы агентов Простые Смышленые(smart) Интеллектуальные(intelligent) Действительно интеллектуальные (truly)
Автономное выполнение + + +
Взаимодействие с другими агентами и/или пользователями + + + +
Слежение за окружением + + + +
Способность использования абстракций + + +
Способность использования предметных знаний + +
Возможность адаптивного поведения для достижения целей + +
Обучение из окружения + +
Толерантность к ошибкам и/или неверным входным сигналам +
Real-time исполнения +

Как следует из приведенной таблицы, собственно целесообразное поведение появляется только на уровне интеллектуальных агентов. Для него необходимо не только наличие целей функционирования, но и возможность использования достаточно сложных знаний о среде, партнерах и о себе.
В данной работе под агентом понимается аппаратная или программная сущность, способная действовать в интересах достижения целей, поставленных перед ним владельцем или пользователем.
Свойства агента (объекта) описываются исходной системой, а правила поведения – порождающей системой. Состояние объекта определяется перечнем его свойств с текущими значениями.
При создании информационных систем определяющей является парадигма интеллектуальных агентов, поведение которых определяется базой знаний (БЗ). В настоящее время проводятся исследования по расширению возможностей агента в целях обеспечения кооперативного действия многих агентов.

Рис. 10. Обобщенный алгоритм функционирования агентов в составе системы базы знаний
Уровень интеллектуальности (уровень интеллекта) определенного агента можно оценить как способность агента использовать старые знания в новых, может быть, заранее неизвестных ему ситуациях и проблемных областях, где оцениваемый агент приемлем как активный решатель задач.
Как правило, каждый агент (модуль) работает с определенной метафорой, определяющей функции и особенности исполнителя (человека). Идея каждой метафоры – это инструментальная система (прототип), отражающая схему взаимодействия между исполнителями в данной ситуации.
Под интеллектуальным агентом в информатике и искусственном интеллекте понимаются любые физические или виртуальные единицы, способные, по крайней мере, поддерживать взаимодействие с окружающим миром, получая от него информацию, и, реагируя на нее своими действиями, проявлять собственную инициативу, посылать и получать сообщения от других агентов и вступать с ними во взаимодействие, действовать без вмешательства извне, в том числе и без вмешательства человека.
Интеллектуальные агенты, обладая развитым внутренним представлением внешней среды и возможностями рассуждений, способны запоминать и анализировать различные ситуации, предвидеть возможные реакции на свои действия, делать из этого выводы, полезные для дальнейших действий, и в результате прогнозировать свое будущее и изменения внешней среды. Интеллектуальные способности позволяют таким агентам строить виртуальные миры, работая в которых, они формируют планы действий.
Свойства интеллектуального агента
Интеллектуальный агент должен обладать следующими свойствами:
автономность – способность функционировать без вмешательства со стороны своего владельца и осуществлять контроль внутреннего состояния и своих действий;
- социальное поведение – возможность взаимодействия и коммуникации с другими агентами;
- реактивность – адекватное восприятие среды и соответствующие реакции на ее изменения;
- активность – способность генерировать цели и действовать рациональным образом для их достижения;
- базовые знания – знания агента о себе, окружающей среде, включая других агентов, которые не меняются в рамках жизненного цикла агента;
- убеждения – переменная часть базовых знаний, которые могут меняться во времени, хотя агент может об этом не знать и продолжать их использовать для своих целей;
- цели – совокупность состояний, на достижение которых направлено текущее поведение агента;
- желания – состояния и/или ситуации, достижение которых для агента важно;
- обязательства – задачи, которые берет на себя агент по просьбе и/или поручению других агентов;
- намерения – то, что агент должен делать в силу своих обязательств и/или желаний.
Иногда в этот же перечень добавляются и такие свойства, как рациональность, правдивость, благожелательность, а также мобильность, хотя последнее характерно не только для интеллектуальных агентов.
Классы архитектур
В зависимости от концепции, выбранной для организации MAC, обычно выделяются три базовых класса архитектур:
1. архитектуры, которые базируются на принципах и методах работы со знаниями;
2. архитектуры, основанные на поведенческих моделях типа «стимул-реакция»;
3. гибридные архитектуры.
Архитектуры многоагентных интеллектуальных систем (MAC) и их характеристики, широко используемые в настоящее время, представлены в Таблице 2.

Таблица 2. Архитектуры MAC и их характеристики

Архитектура Представление знаний Модель мира Решатель
Интеллектуальная Символьное Исчисление Логический
Реактивная Автоматное Граф Автомат
Гибридная Смешанное Гибридная Машина вывода

Организация MAC на принципах искусственного интеллекта имеет преимущества с точки зрения удобства использования методов и средств символьного представления знаний, разработанных в рамках искусственного интеллекта. Но в то же время создание точной и полной модели представления мира, процессов и механизмов рассуждения в нем представляют здесь существенные трудности.
Гибридные архитектуры позволяют гибко комбинировать возможности всех подходов. Вот почему в последнее время явно прослеживается тенденция разработки и использования именно гибридных МАС–архитектур и систем агентов.
Концепции использования технологии многоагентных интеллектуальных систем
При исследовании сложных систем с использованием технологии МАС реализуются следующие фундаментальные идеи:
1. Агенты. В сложных системах существуют автономные агенты, которые взаимодействуют друг с другом при выполнении своих определенных задач.
2. Агенты изменяют свое поведение на основе полученной информации и реагируют на свою среду.
3. Структура сложных систем формируется в результате взаимодействия между агентами. Результаты функционирования возникающей структуры могут быть как положительными, так и отрицательными, в силу чего их необходимо анализировать при разработке системы на базе агентов.
4. Системы с возникающими структурами часто существуют на грани порядка и хаоса. Для них характерно промежуточное состояние межу упорядоченным состоянием и хаосом.
5. При создании систем на базе агентов необходимо учитывать их паразитизм, симбиоз, репродукцию, генетику, естественный отбор, т.е. подходы, которые сложились у природы при решении комбинаторных задач.

Агенты могут работать как неинтерактивные особи или как коллектив. В первом случае система очень проста: агенты делают то, о чем их просят. Для получения результата большего, чем сумма работ, выполняемых индивидуально отдельными агентами, необходимо их взаимодействие.
При взаимодействии агентов создаются логически связанные структуры, отражая их динамику. В данном случае реализуются следующие свойства.
1. В возникающих структурах агенты организуются в целое, которое больше, чем просто сумма составляющих.
2. Простые правила могут генерировать логически связанное новое явление.
3. При проектировании систем на базе агентов для слабопрогнозируемых ситуаций наиболее применим подход снизу вверх, а не традиционный подход сверху вниз. Такой подход объясняется тем, что большинство систем возникают из популяции более простых систем.
4. Устойчивые возникающие структуры могут стать компонентами более сложных возникающих структур и приводят к иерархии возникающих структур и их масштабируемости.
5. Агенты и их взаимодействующие структуры могут формировать двунаправленную связь, т.е. взаимное влияние структуры на агентов.
6. Явление возникновения – это, как правило, устойчивые связи с меняющимися компонентами.
7. Множество агентов могут быть гомоногентными или гетерогенными. Большинство систем создается на основе гетерогенности используя действие различных видов агентов.
В настоящее время многоагентные системы рассматриваются уже не только как принципиально новая информационная технология, сформированная на базе слияния информационных и телекоммуникационных технологий, но и как новая парадигма программирования, в какой-то мере альтернативная объектно-ориентированному программированию.
Технология программной реализации интеллектуальных многоагентных систем
Для построения MAC необходим инструментарий, состоящий из двух компонентов;
- средств разработки;
- окружения периода исполнения.
Первый компонент ориентирован на поддержку процессов анализа предметной области, создаваемой MAC, и проектирование агентов с заданным поведением. Второй – обеспечивает эффективную среду для выполнения агентно–ориентированных программ.
Общая схема проектирования и реализации агентно–ориентированных приложений представлена на рисунке 11.
Этот инструментарий имеет средства для организации предметной области, создаваемой MAC, средства спецификации архитектуры агентства и поведения агентов, а также средства отладки агентных приложений и наблюдения за поведением созданных агентов.

Рис. 11. Технологическая схема процесса разработки агентно–ориентированных приложений

Процесс обработки информации агентом («жизненный цикл» агента) включает следующие основные шаги:
- обработка новых сообщений;
- определение, какие правила поведения применимы в текущей ситуации;
- выполнение действий, специфицированных этими правилами;
- обновление ментальной модели в соответствии с заданными правилами;
- планирование.
В рамках данной модели правила поведения фиксируют множество возможных откликов агента на текущее состояние среды, что предписывается соответствующими гипотезами.
Правила поведения для данной модели описываются конструкциями вида «когда – если – то».
«Когда» часть правила адресована новым событиям, возникающим в окружении агента и включает новые сообщения, полученные от других агентов.
«Если» часть сравнивает текущую ментальную модель с условиями применимости правила. Образцы в «Если» – части работают на намерениях, гипотезах, обязательствах и возможностях, определенной в ментальной модели.
«То» – часть определяет действия в ответ на текущие события и состояния ментальной модели и внешнего окружения. Они могут включать обновление ментальной модели, коммуникативные и внутренние действия.

Направления в разработке многоагентных систем
Разработка многоагентных систем идет по двум основным направлениям: системы на основе распределенного искусственного интеллекта и системы на основе сценариев.
Многоагентные системы на основе распределенного искусственного интеллекта строятся на базе систем, основанных на правилах, и рассуждениях на основе прецедентов. В них каждый агент рассматривается как система (нераспределенная), основанная на знаниях с добавлением компонентов, обеспечивающих безопасность, мобильность, качество обслуживания, взаимодействие с другими агентами, сетевыми ресурсами и пользователями. Данные MAC характеризуются скоординированным интеллектуальным поведением в сообществе интеллектуальных агентов. MAC на основе распределенного искусственного интеллекта рассматриваются как наиболее многообещающие MAC. Исследования в этом направлении в настоящее время идут по пути интенсивных теоретических исследований и прикладных разработок. Например, в [3] дано описание основных принципов создания интегрированных интеллектуальных систем компьютеризации инженерной деятельности на базе концепции мультиагентных систем распределенного искусственного интеллекта [6].
Многоагентные системы на основе сценариев ориентированы на использование в больших компьютерных сетях с большим разнообразием представляемого сервиса. Агенты данного класса систем разрабатываются с помощью языков сценариев, таких как Tсl, Java Language и др. Эти языки ориентированы на реализацию асинхронного процесса и удаленное исполнение приложений, инициируемых электронной почтой. Разрабатываемые здесь технологии должны поддерживать мобильность агента. Нужно отметить, что MAC на основе сценариев рассматриваются как основной подход для реализации мобильной телекоммуникации через компьютерные сети общего пользования с помощью переносных компьютеров.

По сути дела многоагентные системы можно рассматривать как совокупность взаимосвязанных программных модулей (агентов), являющихся фрагментами знаний, доступных другим агентам. Это, можно сказать, некие «программные роботы», удовлетворяющие различным информационным и вычислительным потребностям конечных пользователей. Они координируют свои знания, цели, умения и планы при решении проблем. Таким образом, можно рассматривать MAC как некие программно-исполнительные устройства.
На рисунке 13 представлена схема макета интеллектуальной поддержки принятия решения (ИСППР), разработанная на основе технологии МАС.
Методология ситуационного управления использована при создании модели интеллектуальной системы поддержки принятия решения (ИСППР), которая функционирует в двух контурах – контуре организации управления (адаптация структуры системы) и контуре функционирования. При создании ИСППР реализованы принципы целевой направленности системы, оцениваемости (распознаваемости) ситуаций, обоснования решений, открытости системы, интегрального представления видов информации, адаптивности. ИСППР включает инструментальный и прикладной программные комплексы.
Предложенная модель конструирования организации управления включает в себе процесс создания конкретной (прикладной) ИСППР на основе базовой (инструментальной) системы. Областью приложений разрабатываемого проекта выбран класс задач оценки и прогнозирования чрезвычайных ситуаций и оперативного реагирования – класс задач конфликтных ситуаций.
С учетом специфики предметной области сформулированы требования к модели представления знаний по системе понятий, адекватности содержания и соответствия формулируемых знаний исследуемым процессам и пригодности для выполнения требуемых действий.

(c) 2009 Раздобарина Е.А.
Все права принадлежат ООО "Смарт Автоматикс" (Smart Automatics ltd).
Ссылка на www.smaut.com при использовании материалов ОБЯЗАТЕЛЬНА.