Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Инструментарий AgentBuilder




 

Инструментарий для построения MAC компании Reticular Systems, Inc. состоит из двух компонентов: средств разработки (development tools) и окружения перио­да исполнения (run-time execution environment). Первый компонент ориентиро­ван на поддержку процессов анализа предметной области создаваемой MAC и проектирование агентов с заданным поведением. Второй - обеспечивает эффек­тивную среду для выполнения агентно-ориентированных программ. И тот и дру­гой компоненты реализованы на языке Java, что позволяет им работать на всех платформах, где установлена Java-среда. Агентные программы, проектируемые в рамках AgentBuilder, тоже являются Java-программами и могут исполняться на любом компьютере, где установлена виртуальная Java-машина JVM (Java-virtual machine).

Общая схема процесса проектирования и реализации агентно-ориентированных приложений на основе AgentBuilder Toolkit представлена на рис. 9.1. Этот инструментарий имеет средства для организации и предметной области со­здаваемой MAC, средства спецификации архитектуры агентства и поведения аген­тов, а также средства отладки агентных приложений и наблюдения за поведением созданных агентов.

Модель «жизненного цикла» агентов, разрабатываемых в рамках AgentBuilder, представлена на рис. 9.2. Как следует из данной схемы, стандартный «жизненный цикл» агента включает следующие основные шаги:

• обработка новых сообщений;

• определение, какие правила поведения применимы в текущей ситуации;

• выполнение действий, специфицированных этими правилами;

• обновление ментальной модели в соответствии с заданными правилами;

• планирование.

 

Собственно ментальные модели (начальная и текущая) включают описания ис­ходных (текущих) намерений, полаганий, обязательств и возможностей, а также спецификации правил поведения.

 


 

 

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

 

 

Данная модель получила название Reticular Agent Mental Model (RAMM) и яв­ляется развитием модели Шохама (Shoham) [Shoham, 1993], где все действия вы­полняются только как результат определенных обязательств. В рамках RAMM эта идея расширена до уровня общих правил поведения, которые определяют причину действия агента в каждой точке его функционирования. При этом пра­вила поведения фиксируют множество возможных «откликов» агента на те­кущее состояние среды так, как это предписывается полаганиями.

Для спецификации поведения агентов в системе AgentBuilder используется спе­циальный объектно-ориентированный язык RADL (Reticular Agent Definition Language). Правила поведения в этом языке могут рассматриваться как конструк­ции вида WHEN-IF-THEN.

WHEN-часть правила адресована новым событиям, возникающим в окружении агента и включает новые сообщения, полученные от других агентов.

IF-часть сравнивает текущую ментальную модель с условиями применимости правила. Образцы в IF-части работают на намерениях, полаганиях, обязатель­ствах и возможностях, определенных в ментальной модели.

 

 

Рис. 9.2. Модель «жизненного цикла» агента в системе AgentBuilder

 

THEN-часть определяет действия в ответ на текущие события и состояния мен­тальной модели и внешнего окружения. Они могут включать обновление мен­тальной модели, коммуникативные и внутренние действия.

 

Общий формат правил поведения следующий:

 

NAME имя правила

WHEN Message Condition(s)

IF Mental Condition(s)

THEN Private Action(s); Mental Change(s); Message Action(s)

 

Для иллюстрации возможностей этого языка рассмотрим пример правила «Движение-Вперед-На-Зеленый-Свет» из предметной области «Управление автомо­билем», взятый из руководства пользователя [AgentBuilder, 1999].

 

NAME "Green light Move Forward Rule"

WHEN

? KQMLMessage.Performative EQUALS TELL

? KQMLMessage.Sender EQUALS "stoplight-agent"

? KQMLMessage.Content EQUALS String

? KQMLMessage.Ontology EQUALS "Stoplight"

IF

? KQMLMessage.Content EQUALS "stoplight-green"

? KQMLMessage.Status EQUALS "stoppedAtRedLight"

currentMotion.Content EQUALS "stoplight-green"

current Location EQUALS nextlntersection

NOT (currentLocation EQUALS destination)

F0R_ALL (?Blocked Intersection,

NOT(?BlockedIntersection.Location EQUALS currentLocation))

THEN

DO (Go(traffic Speed))

DO ($nextlntersection =

getNextlntersection (currentLocation,

currentMotion.Direction))

ASSERT (SET_VALUE_OF currentMotion.Status TO moving)

ASSERT (SET_VALUE_OF nextlntersection TO $nextlntersection)

SEND (performative = REPLY, receiver = "stoplight-agent",

content = "acknowledged",

in-reply-to =?KQMLMessage.Reply-with)

 

Как следует из данного примера, в языке RADL активно используются образцы, имеются достаточно развитые средства работы с переменными и представитель­ный набор действий, включающий формирование перформативов языка KQML [Labrou et al., 1997]. Структуры данных, на которых «работает» данный язык, яв­ляются, по существу, фреймами, а сами правила - суть продукции специального вида. Язык поддержан на инструментальном уровне системой специальных языково-ориентированных редакторов.

Спецификация поведения агентов и их ментальных моделей составляет специ­альный файл (agent definition file), который используется совместно с классами и методами из библиотеки действий агентов и библиотеки интерфейсов. Этот файл интерпретируется в рамках компонента Reticulars Run-Time Agent Engine, являющегося частью окружения периода исполнения AgentBuilder.

Оценивая подход к спецификации моделей поведения агентов, используемый в AgentBuilder, можно констатировать, что в целом это серьезная система представ­ления и манипулирования знаниями, ориентированная на описание моделей типа RAMM. Вместе с тем в данной модели отсутствуют средства эксплицитного управления выводом, которые могли бы существенно увеличить функциональ­ную мощность языка. Нет в модели и средств явной фиксации состояния агента, отличных от флагов и/или значений переменных. Не вполне ясно и то, как в спе­цификации моделей поведения могут быть учтены разные, но одновременно сосу­ществующие «линии поведения», что характерно для действительно интеллекту­альных агентов. Не вполне обоснованным представляется и использование режи­ма интерпретации для реализации поведения агентов.

Но в целом можно еще раз отметить, что инструментарий AgentBuilder является современным и мощным средством проектирования и реализации MAC.

 




Поделиться с друзьями:


Дата добавления: 2015-07-02; Просмотров: 525; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.