Аннотация:
Зудикова Ю.В., Федяев О.И. Трансформация моделей методологии Gaia в концепты инструментария Zeus при многоагентном моделировании процесса производства промышленных смесей. В статье рассматривается вопрос перехода от моделей методологии агентно-ориентированного анализа Gaia к концептам инструментария Zeus при создании многоагентной системы процесса производства промышленных смесей. Составлены модели Gaia на примере взаимодействия двух агентов разрабатываемой многоагентной системы. Создано описание агентов в терминах концептов Zeus.
Общая постановка проблемы
Процесс производства промышленных смесей как объект моделирования и управления является распределенной системой, в которой взаимодействуют отдельно работающие устройства и персонал. Теория многоагентных систем позволяет строить качественно новые модели таких сложных объектов в виде интеллектуальных организаций, представленных автономными искусственными агентами. На сегодняшний день предложены методологии и инструментальные среды для анализа и разработки многоагентных систем.
Методологии агентно-ориентированного анализа применяются на стадиях анализа и проектирования многоагентных систем. Путем абстрагирования создаются концептуальные модели и методы многоагентных систем. Выделяют четыре класса методологий: базирующиеся на объектно-ориентированных методах и технологиях с использованием соответствующих расширений (AUML), использующие традиционные методы инженерии знаний (MAS-CommonKADS), основанные на организационно-ориентированных представлениях (Gaia), комбинирующие в различной степени методы трех первых классов.
Инструментальные среды используются на стадиях реализации и тестирования многоагентных систем. Они используют свои модели, соответствующие этому уровню детализации системы. Можно выделить два основных класса инструментальных сред: фреймворки (JADE) и среды разработки (Zeus, Agent Builder).
Таким образом, процесс разработки многоагентной системы является иерархическим и должен связывать модели разных уровней проектирования. Однако из-за использования различных методологий и инструментариев, оперирующих разными концептами, этот процесс становится проблематичным.
Постановка задач исследования
Методология Gaia и инструментальная среда Zeus, применяемые для моделирования процесса производства промышленных смесей, оперируют схожими абстрактными концептами и ориентированы на создание многоагентных систем с распределенным искусственным интеллектом. Задачей исследования является разработка методики трансформации моделей методологии Gaia в концепты инструментария Zeus, представляемые в структурной и алгебраической форме.
Решение задачи и результаты исследований
На начальном этапе разработки многоагентной системы проводится агентно-ориентированный анализ предметной области. Результатами такого анализа являются абстракции и концептуальные модели многоагентной системы, которые используются для дальнейшей конкретизации на уровне инструментальной среды.
В рамках организационно-ориентированной методологии Gaia [1] многоагентная система проектируется в терминах поведений и структур человеческих организаций и представляет собой совокупность взаимодействующих ролей. Gaia предусматривает создание следующих моделей: ролей, взаимодействий, агентов, услуг и связей (рис. 1).
Инструментальная среда Zeus оперирует такими базовыми концептами, как агент, факт, цель и задача. На их основе она строит следующие модели: онтологии, программных агентов, задач, координации и организации (рис. 1).
Онтология Zeus представляется декларативным набором знаний, который отражает существенные понятия предметной области и их характеристики (атрибуты и значения). Онтология Ont задается как множество фактов f, представленных в виде иерархической структуры:
Ont = {f1, f2, ..., fn}. (1)
Каждый факт f характеризует одно понятие предметной области и задается в общем случае множеством атрибутов или четверок вида:
f = {(AN, T, R, DV)1, (AN, T, R, DV)2, ..., (AN, T, R, DV)m}, (2)
где AN – название атрибута; T – тип атрибута; R – ограничение на значение атрибута; DV – значение атрибута по умолчанию. Фактам модели онтологии Zeus соответствуют полномочия (информационные ресурсы) модели ролей Gaia.
Понятие агента A в Zeus является ключевым и описывается на трех уровнях: определения D, организации O и координации C [2]:
A = (D, O, C), D = (R, G, T), O = (AD, R, NA), C = (CP, IS). (3)
На уровне определения D (рис. 2) агент рассматривается как автономная сущность, способная к рассуждениям. Агент задается множеством ресурсов (знаний) R, множеством целей G и множеством задач T.
В Zeus предусмотрено три вида задач: простая (неделимая) задача, группа простых задач, выполняющихся в некоторой последовательности, и база правил. Простая задача t задается следующим набором элементов:
t = (N, T, P, E, CP, CE, C, D). (4)
где N – название задачи; T – тип задачи; P – входные факты (предусловия) ; E – выходные факты (эффекты); CP – ограничения на значения входных фактов; CE – ограничения на значения выходных фактов; C – стоимость задачи; D – продолжительность выполнения задачи. База правил задается множеством правил rl:
rl = (P, A). (5)
где P – предусловия на основе входных фактов; A – действия, вытекающие из предусловий. Задачи и правила агента формируются на основе модели услуг Gaia, для которой в среде Zeus вводится дополнительный атрибут – тип услуги, которому соответствует тип задачи.
На уровне организации O (рис. 2) агент рассматривается в рамках его отношений с другими агентами. Для агента определяется множество «знакомых» агентов AD, множество отношений R, в которых агент состоит с другими агентами, и множество фактов NA, принадлежащих «знакомым» агентам, о которых знает конфигурируемый агент. Множество «знакомых» агентов AD формируется из модели организации Zeus и модели связей Gaia, а множество известных фактов NA – с помощью модели взаимодействий Gaia.
На уровне координации C (рис. 2) агент рассматривается как социальная сущность, взаимодействующая с другими агентами сообщества в рамках протоколов координации CP и стратегий взаимодействия IS, получаемых путем анализа модели взаимодействий Gaia.
Уровень коммуникации (рис. 2) определяет язык и протокол передачи сообщений агентами в рамках их взаимодействия. Уровень API (рис. 2) обеспечивает связь агента с внешними программами, предоставляющими ему ресурсы и/или реализующими его способности.
В качестве примера рассмотрено взаимодействие двух агентов разрабатываемой многоагентной системы [1]. Агент Кладовщик выдает порцию сырья со склада, а агент Кран-балка принимает и транспортирует сырье к месту назначения. Упрощенные в этом контексте модели методологии Gaia представлены на рис. 3, 4, 5.
На основе созданных моделей Gaia и установленных межмодельных связей проведена спецификация структуры программных агентов по правилам, принятым в инструментальной среде Zeus. Примеры моделей онтологии и агентов показаны на рис. 6, 7.
По составленным спецификациям онтологии, структуры и поведения агентов в инструментальной среде Zeus был сформирован программный код системы на языке Java.
Выводы
В результате исследования предложена методика трансформации моделей методологии агентно-ориентированного анализа Gaia в концепты инструментальной среды Zeus. Методика позволяет систематизировать проектирование и автоматизировать генерацию программного каркаса многоагетнной системы.
Литература:© Зудикова Юлия Владимировна, ДонНТУ, 2010