Мультиагентный подход и МАS
· способность к рассуждениям - агенты могут обладать частичными знаниями или механизмами вывода, а также специализироваться на конкретной предметной области;
· коммуникативность - агенты могут общаться с другими агентами;
· мобильность - способность передачи кода агента с одного сервера на другой;
· социальное поведение - возможность взаимодействия и коммуникации с другими агентами;
· реактивность - адекватное восприятие среды и соответствующие реакции на ее изменения;
· активность - способность генерировать цели и действовать рациональным образом для их достижения;
· наличие базовых знаний - знания агента о себе, окружающей среде, включая других агентов, которые не меняются в рамках жизненного цикла агента;
· наличие убеждений - переменная часть базовых знаний, которые могут меняться во времени;
· наличие цели - совокупность состояний, на достижение которых направлено текущее поведение агента;
· наличие желаний - состояния и/или ситуации, достижение которых для агента важно;
· наличие обязательств - задачи, которые берет на себя агент по просьбе и/или поручению других агентов;
· наличие намерений - то, что агент должен делать в силу своих обязательств и/или желаний.
Иногда в этот же перечень добавляются и такие свойства, как рациональность, правдивость, благожелательность.
Понятие мультиагентной системы
Мультиагентные системы (или как их называют в некоторых источниках - многоагентные системы, например в статье Тарасова «Агенты, многоагентные системы, виртуальные сообщества: стратегическое направление в информатике и искусственном интеллекте») развиваются на стыке между методами распределенного искусственного интеллекта и параллельными вычислениями, во многом базируясь на платформе объектно-ориентированного программирования.
Система, в которой несколько агентов могут общаться друг с другим, передавать друг другу некоторую информацию, взаимодействовать между собой, называется мультиагентной (МАS). Как отмечает Тарасов, многоагентные системы зародились на пересечении теории систем и распределенного искусственного интеллекта.
Любая MAS состоит из следующих основных компонентов:
. множество организационных единиц, в котором выделяются подмножество агентов и объектов;
. множество задач;
. среда, т.е. некоторое пространство, в котором существуют агенты и объекты;
. множество отношений между агентами;
. множество действий агентов (например, операций над объектами).
В MAS задачи распределены между агентами, каждый из которых рассматривается как член группы или организации. Распределение задач предполагает назначение ролей каждому из членов группы, определение меры его ответственности и требований к опыту.
Взаимодействие, коммуникация, кооперация агентов
Существование MAS в первую очередь подразумевает взаимодействие агентов, которое представляет собой установление двусторонних динамических отношений между агентами. При этом оно является одновременно источником и продуктом некоторой организации. Для определения базовых типов взаимодействия агентов в MAS можно взять следующие критерии группообразования: а) совместимость целей агентов; б) потребность в чужом опыте (знаниях); в) совместное использование ресурсов.
Кооперация - это основная форма организации взаимодействия между агентами, характеризующаяся объединением их усилий для достижения совместной цели при одновременном разделении между ними функций, ролей и обязанностей. В общем случае это понятие можно определить формулой: кооперация = сотрудничество + координация действий + разрешение конфликтов. Под координацией обычно понимается управление зависимостями между действиями. Коммуникация между искусственными агентами зависит от выбранного протокола, который представляет собой множество правил, определяющих, как синтезировать значимые и правильные сообщения. Фундаментальными особенностями группы, составленной из агентов, сотрудничающих для достижения общей цели, являются социальная структура и распределение ролей между агентами.
Принципы функционирования агентов. Проектирование МАS
Архитектура агента и МАS
Основой архитектуры агента является контекст, или серверная среда, в котором он исполняется. Каждый агент имеет постоянный идентификатор - имя. В серверной среде может исполняться не только исходный агент, но и его копия. Агенты способны самостоятельно создавать свои копии, рассылая их по разнообразным серверам для исполнения работы. По прибытии агента на следующий сервер его код и данные переносятся в новый контекст и стираются на предыдущем местонахождении. В новом контексте агент может делать все, что там не запрещено. По окончании работы в контексте агент может переслать себя в другой контекст или по исходящему адресу отправителя. Агенты способны также выключаться («умирать») сами или по команде сервера, который переносит их после этого из контекста в место, предназначенное для хранения.
В некоторых источниках можно встретить следующую укрупненную структуру типичного агента (рис. 5). Входами являются внутренние параметры агента и данные о состоянии среды. Выходы - параметры, воздействующие на среду и информирующие пользователя (или программу, выполняющую роль менеджера в системе) о состоянии среды и принятых решениях. Решатель - процедура принятия решений. Решатель может быть достаточно простым алгоритмом или системой искусственного интеллекта.