Агентно-ориентированные системы искусственного интеллекта
Федеральное агентство по образованию
Московский государственный горный университет
Кафедра АСУ
Реферат
на тему: «Агентно-ориентированные системы искусственного интеллекта»
по дисциплине «Методы визуального и параллельного программирования»
Москва 2013
1. Основные понятия агентно-ориентированного подхода.
Термин «агент» происходит от латинского глагола «agere», что означает «действовать», «двигать», «править», «управлять». В энциклопедическом словаре Ф. А. Брокгауза и И. А. Ефрона: «агент – деятель, лицо, действующее по поручению или полномочию другого». Это определение правильно выражает суть и современных интеллектуальных агентов (ИА), которые могут функционировать автономно от имени своего владельца (человека-пользователя или другой вычислительной системы) и решать разнообразные задачи по обработке информации. Для успешной работы агент должен обладать достаточными интеллектуальными способностями, должен иметь возможности взаимодействия с владельцем для получения заданий и передачи результатов, должен ориентироваться в среде своего существования и принимать необходимые решения.
Поскольку общепринятого определения интеллектуального агента до настоящего времени не выработано, то следует говорить о классе агентных объектов (сущностей), включающем множество видов. Отталкиваясь от определений данных, будем считать, что ИА – это программный или аппаратный объект (сущность), автономно функционирующий для достижения целей, поставленных перед ним владельцем или пользователем, обладающий определенными интеллектуальными способностями. Уровень этих способностей, необходимых для достижения поставленных перед ИА целей, можно определить, пользуясь классификацией Д. А. Поспелова. Если классифицировать среды, в которых должны действовать агенты, то получается следующая схема (рис. 1.).
Рис. 1. Классификация сред
Для замкнутых сред может быть построено конечное исчерпывающее описание, и функционирующие в таких средах агенты могут обладать полным знанием о среде и ее свойствах или получить эту информацию в процессе своего взаимодействия со средой. Трансформируемые среды могут изменять свои характеристики и реакции на действия агентов в зависимости от тех действий, которые агенты совершают в среде. Вид математического аппарата, позволяющего описать поведение агента в соответствующей среде, и является мерой его интеллектуальной сложности (или разумности). Представим эту классификацию в виде таблицы 1.
Таблица 1
Тип среды функционирования |
Метод математического описания |
Вид ИА |
Замкнутая детерминированная |
Автоматные грамматики, конечные автоматы |
Автоматные агенты |
Замкнутая вероятностная |
Вероятностные автоматы |
Вероятностные автоматные агенты |
Не трансформируемая открытая |
Контекстно-свободные грамматики, сценарии, магазинные автоматы |
КСГ-агенты |
Трансформируемая замкнутая |
Контекстно-зависимые грамматики (линейные автоматы) |
КЗГ-агенты |
Трансформируемая открытая |
Семиотические системы |
Семиотические агенты |
Две базовые характеристики – автономность и целенаправленность – позволяют отличать ИА от других программных и аппаратных объектов (модулей, подпрограмм, процедур и т. п.). Наличие целесообразности поведения требует, чтобы ИА обладал свойством реактивности. Такой уровень интеллекта соответствует рефлекторному поведению животного. Если же ИА обладает знаниями о среде, собственных целях и способах их достижения, то такой агент может быть назван разумным (когнитивным). Таким образом, может быть проведена граница между интеллектуальными и неинтеллектуальными агентами.
Согласно спецификации абстрактной архитектуры, агент определяется как вычислительный процесс, который реализует автономную, коммуникационную функциональность приложений. Это определение само по себе ничего не говорит об интеллектуальных способностях агента. Поэтому целесообразно использовать классификацию данную Nwana (табл. 2).
Таблица 2
Характериcтики |
Тип агента | |||
Простой |
Смышленый (smart) |
Интеллектуальный (intelligent) |
Действительно (truly) интеллектуальный | |
Автономное выполнение |
+ |
+ |
+ | |
Взаимодействие с другими агентами и/или пользователями |
+ |
+ |
+ |
+ |
Слежение за окружением |
+ |
+ |
+ |
+ |
Способность использовать абстракции |
+ |
+ |
+ | |
Способность использовать предметные знания |
+ |
+ |
||
Возможность адаптивного поведения для достижения целей |
+ |
+ | ||
Обучение из окружения |
+ |
+ | ||
Толерантность к ошибкам и/или неверным входным сигналам |
+ |
|||
Real-time-исполнение |
+ |
|||
Естественно-языковое взаимодействие |
+ |
|||
Агентов можно также классифицировать по характеру их взаимоотношений с реальным физическим миром. В работах Пола Дэвидсона вводится понятие «автономного агента» (АА), под которым понимается система, способная взаимодействовать независимо и эффективно со своей средой через собственные сенсоры и эффекторы для решения заданных или самостоятельно сгенерированных задач. Таким образом, люди и большинство животных могут быть в этом смысле расценены как АА.
К настоящему времени сформировался довольно большой список свойств, которыми должны обладать ИА:
– автономность – способность к самостоятельному формированию целей и функционированию с самоконтролем своих действий и внутреннего состояния;
– общественное поведение – способность согласовать свое поведение с поведением других агентов в условиях определенной среды и правил поведения путем обмена сообщениями на языке коммуникации;
– реактивность – способность адаптированно воспринимать состояние внешней среды (среды функционирования и множества других агентов) и своевременно реагировать на происходящие изменения;
– активность – способность проявлять инициативу, т. е. самостоятельно генерировать цели и действовать рационально для их достижения, а не только пассивно реагировать на внешние события;
– базовые знания – постоянная часть знаний агента о себе, о среде, а также постоянные знания о других агентах, которые не изменяются в рамках жизненного цикла агента;
– убеждения – переменная часть знаний агента о среде и других агентах, которая может изменяться во времени, но агент может об этом не знать и продолжать использовать их для своих целей;
– желания – состояния и/или ситуации, достижение которых является желательным и важным для агента, однако которые могут быть противоречивыми и не все будут достигнуты;
– цели – совокупность состояний, на достижение которых направлено текущее поведение агента;
– намерения – это то, что агент обязан сделать в силу своих обязательств по отношению к другим агентам, или то, что вытекает из его желаний (т. е. непротиворечивое подмножество желаний, выбранное по тем или иным причинам и совместимое с принятыми на себя обязательствами);
– обязательства – задачи, которые берет на себя агент по просьбе и/или поручению других агентов.
Для АА постулируются такие свойства как адаптивность (способность действовать соответственно и согласованно с изменениями в среде), робастность (малые изменения в свойствах среды не должны приводить к общему коллапсу поведения АА), наличие тактики (способность устанавливать множественные цели и, вне зависимости от найденных им обстоятельств, решать, какие частные цели активно преследовать), гибкость (способность выполнять широкий круг задач).
К этому набору свойств могут добавляться и следующие:
– благожелательность – готовность агентов помогать друг другу и решать именно те задачи, которые им поручат владелец или пользователь;
– правдивость – свойство агента не оперировать заведомо ложной информацией;
– рациональность – способность агента действовать так, чтобы достигать своих целей, а не избегать их достижения, по крайней мере, в рамках своих знаний и убеждений.
Общественное поведение агентов может принимать разные формы, которые могут быть классифицированы по уровням взаимодействия:
Уровень 0 – связность, устанавливаемая извне владельцем или пользователем и не воспринимаемая самими агентами;
Уровень 1 – координация. Агенты способны создать ситуацию, позволяющую другим агентам оказаться в нужном месте в нужное время, чтобы в результате их деятельность осуществлялась эффективным образом.
Уровень 2 – кооперация. Агенты допускают, чтобы их поведение частично определялось поведением других агентов, когда они совместно пытаются достичь некоторой общей цели. Такой процесс для своей реализации должен осознаваться всеми участвующими в нем агентами.
Уровень 3 – сотрудничество. Предполагается реальная совместная работа агентов, в процессе выполнения которой может выиграть каждый.
Уровень 4 – образование союза. Предусматривается продолжительная во времени совместная деятельность, в ходе которой агенты создают и поддерживают условия существования союза.
Базовые знания являются необходимым традиционным компонентом для всех интеллектуальных систем, убеждения же должны быть определенным образом интерпретированы в структуре «мультиагентная система» (МАС).
Анализ работ наиболее авторитетных в этой области исследователей показывает, что МАС должны обладать 4 важнейшими свойствами: ситуативности, автономности, гибкости и социальности.
Ситуативность ИА понимается как способность воспринимать окружающую его среду (окружение) и действовать в этой среде, при возможности изменяя ее в своих целях. Примером таких интеллектуальных агентов могут служить мобильные роботы, участвующие в соревнованиях ROBOCUP, которые должны взаимодействовать с мячом, партнерами по команде и противниками, не зная заранее размещения и намерений других игроков.
Автономность ИА означает его способность взаимодействовать со средой без прямого участия других агентов, для чего он должен уметь контролировать свое внутреннее состояние и выполняемые действия.
Гибкий агент должен демонстрировать качества отзывчивости или предусмотрительности (в зависимости от ситуации). Отзывчивый агент получает стимулы от своего окружения и вовремя отвечает на них соответствующим образом. Предусмотрительный агент не просто реагирует на ситуацию в окружающей среде, но и адаптируется, целенаправленно действует и выбирает альтернативы в различных ситуациях.
Агент обладает свойством социальности, если он может соответствующим образом взаимодействовать с другими программными или человеческими агентами. ИА являются лишь составляющими сложного процесса решения проблем в соответствующей среде.
Итак, МАС можно определить, как совокупность взаимосвязанных агентов как программных, так и аппаратных, способных взаимодействовать друг с другом и окружающей средой, обладающих определенными интеллектуальными способностями и возможностью индивидуальных и совместных действий.
Классифицировать МАС можно по целому ряду признаков (рис. 2).
Важным признаком является способ решения проблем. Системы распределенного решения проблем содержат агентов специально разработанных для решения определенного круга задач или достижения известных целей.
Открытые МАС могут содержать переменные множеств агентов, входящих в систему и выходящих из неѐ, причем возможно своекорыстное (столкновение интересов) поведение агентов.
Понятие ― агентно-ориентированная система представляется более широким, чем понятие ―МАС. М. Wooldridg характеризует АОС как систему, в которой ключевой используемой абстракцией является агент.
Агентно – ориентированные системы мы будем трактовать как гибридные системы, содержащие наряду с МАС и другие системы (ЭС, обучающие и тестирующие системы, распределенные объектные приложения и т.п.).
АОС в настоящее время могут быть глобально распределенными взаимосвязанными совокупностями программных и аппаратных систем, содержащими сотни и тысячи компонентов, что и определяет возрастающую сложность их разработки, внедрения и эксплуатации.
Если подойти к классификации агентов с позиций разумных свойств, присущих как живым существам, так и техническим (искусственным) системам, то можно построить следующую схему (табл. 3).
Значения введенных параметров можно рассматривать как координаты вектора в параметрическом пространстве или как кодовое слово вида S1 S2 M1 M2 M3 M4 T1 T2 T3 в троичной системе счисления. В качестве меры в таком параметрическом пространстве естественно использовать кодовое расстояние.
В нашем случае целесообразно взять модульную метрику, тогда появляется возможность вычислить интеллектуальное расстояние между различными типами агентов:
где Parai, Parbi – значения признака для агентов a и b соответственно, а индекс i – пробегает множество { S1 S2 M1 M2 M3 M4 T1 T2 T3 }.
Для примера вычислим интеллектуальное расстояние между амебой и традиционным конечным автоматом с несколькими входами и выходами. Для амебы кодовая комбинация принимает вид: a = 100000000, а для конечного автомата – b = 111000000, тогда ID(a, b) = 2.
Используя принципы теории кодирования, введем также интеллектуальный вес агента:
определяемый суммой значений параметров от S1 до T3. Соответственно, для мобильного транспортного интеллектуального робота мы получим IW = 6 (a = 1110100101), а для человека – IW = 12 (b = 112111122). Интеллектуальное расстояние между ними равно ID(a, b) = 6, что и отражает интеллектуальное превосходство человека.
Таблица 3
Сенсорика (чувства) |
S1 |
0 |
С одним чувством |
1 |
С несколькими чувствами | ||
S2 |
0 |
Только одно из многих чувств в данной ситуации | |
1 |
Множественные чувства на единичный объект, событие или ситуацию | ||
Память |
M1 |
0 |
Без памяти |
1 |
С памятью на прошедшие события (конечной) | ||
2 |
С потенциально неограниченной или бесконечной памятью | ||
M2 |
0 |
Только с кратковременной памятью | |
1 |
С кратковременной и долговременной памятью | ||
M3 |
0 |
Не может обучаться (не наращивает долговременную память) | |
1 |
Может обучаться (наращивает долговременную память) | ||
M4 |
0 |
Хранит сенсорную информацию по некоторому чувству | |
1 |
Хранит сенсорную информацию по всем чувствам | ||
Моторика (действия во времени) |
T1 |
0 |
Действует только в реальном времени |
1 |
Может планировать действия | ||
T2 |
0 |
Не может визуализировать чувства | |
1 |
Может визуализировать некоторые чувства | ||
2 |
Может визуализировать все чувства | ||
T3 |
0 |
Не имеет модели среды существования | |
1 |
Имеет предопределенную модель | ||
2 |
Может создавать ментальные модели среды |
Для агентно-ориентированных систем может быть введено понятие среднего веса ИА в системе где n – число ИА в МАС, а IWi – вес i-го ИА.
Рис. 2. Классификация МАС
2. Методы построения агентно-ориентированных систем.
Методологии проектирования АОС все еще находятся в начальной стадии развития. Известные подходы можно разделить на четыре основных класса:
– базирующиеся на объектно-ориентированных методах и технологиях с использованием соответствующих расширений;
– использующие традиционные методы инженерии знаний;
– основанные на организационно-ориентированных представлениях;
– комбинирующие в различной степени методы трех первых классов.
На рисунке 3 показано взаимное влияние наиболее известных на данный момент агентно-ориентированных методологий.
Рис.3. Взаимное влияние АОМ
В методологиях первого класса разрабатываются расширения объектно-ориентированных методологий и технологий для проектирования АОС.
Второй класс АОМ строится на расширении традиционных методов инженерии знаний. Эти методологии обеспечивают формальные и композиционные языки моделирования для верификации структуры системы и функций и хорошо применимы к моделированию знание- и информационно-ориентированных агентов. Однако, так как эти подходы обычно предполагают централизованный взгляд на системы, основанные на знаниях, они не могут обеспечить адекватные модели и подходы для социального рассмотрения МАС.
Подход MAS-CommonKADS пытается снять эти ограничения. Это методология разработки агентно-ориентированного программного обеспечения, предназначенная для применения на этапах анализа и проектирования. В жизненном цикле разработки системы в рамках данной методологии выделяется ряд этапов.
Этап концептуализации предполагает получение первичного описания решаемой проблемы посредством создания набора диаграмм использования, что поможет понять, как должна выглядеть разрабатываемая система и как следует проверять ее работоспособность. Результат может быть представлен и в виде текстового описания системы. Используется анализ системы с различных точек зрения: с точки зрения пользователя, с точки зрения среды, с точки зрения налагаемых на систему обязательств. Для составления диаграмм вводятся дополнительные выразительные средства (рис. 4).
Рис. 4. Дополнительные обозначения для АОС
На этапе анализа определяются функциональные требования к системе. Система описывается через определенный набор моделей. На этапе проектирования могут использоваться как нисходящий, так и восходящий подходы, проводится определение повторно используемых компонентов и компонентов, которые следует разработать в зависимости от целевой платформы. На входе этого этапа применяются модели, полученные на этапе анализа, а на выходе – набор спецификаций, готовый к реализации. Здесь также определяется архитектура каждого агента и всей АОС. На этапе разработки и тестирования производится кодирование и тестирование агентов, модели которых получены на ранних стадиях. Внедрение и эксплуатация системы происходят на этапе использования.
В рамках методологии определены следующие модели (рис. 5).
Агентная модель описывает возможности агентов к рассуждению, наличие сенсоров и эффекторов, предоставляемые сервисы, объединение агентов в группы и иерархии. Модель задач формализует цели существования, декомпозицию целей, методы решения проблем.
Экспертная модель определяет, какие знания необходимы агентам для достижения поставленных целей. Организационная модель описывает организацию, в которой предстоит работать АОС, а также социальную организацию агентного сообщества. Координационная модель описывает переговоры агентов при их взаимодействии и используемые протоколы. Коммуникационная модель описывает взаимодействие человека с разрабатываемым программным обеспечением, а также факторы, влияющие на проектирование пользовательского интерфейса.
Рис. 5. Взаимодействие моделей в методологии MAS-CommonKADS
Проектная модель объединяет все предыдущие модели и состоит из трех подмоделей. Первая подмодель – это проект сети, где происходит проектирование соответствующих аспектов агентной инфраструктуры (необходимая сеть, знания и средства обработки и передачи данных). Вторая модель – агентное проектирование, служащее для разделения или объединения агентов полученных на ранних этапах на основании соображений целесообразности и выбора подходящей архитектуры для каждого агента. Третья модель – платформозависимое проектирование, где происходит определение платформы разработки агентов для каждой из выбранных архитектур.
Основным отличием этой методологии от других является то, что разрабатываемая АОС рассматривается с различных точек зрения. Разработчик получает описание, позволяющее выполнять реализацию на различных программных платформах. Сильной стороной методологии принято считать использование стандартных методов инженерии программного обеспечения, которые расширяются естественным способом. MAS-CommonKADS создавалась в расчете на многоразовое использование материалов, полученных на каждом уровне проектирования, что дает возможность использования данных из других проектов. Главный недостаток этой методологии – слабая поддержка этапов проектирования, тестирования и кодирования.
Gaia– это методология агентно-ориентированного анализа и проектирования, явно использующая организационную точку зрения (рис.6). Наиболее абстрактной сущностью в иерархии концептов Gaia является «система». Хотя термин «система» используется в стандартном смысле, он также означает «сообщество» или «организацию».
Следующий уровень иерархии – это роли. Роль определяется тремя атрибутами: ответственности, разрешения, протоколы. Ответственности определяют функциональность и являются ключевым атрибутом, связанным с ролью. Ответственности разделяются на два типа: жизненные свойства и свойства безопасности. Для реализации ответственностей роль обычно связывается с множеством разрешений. Разрешения являются «правами», связанными с ролью и идентифицируют ресурсы, которые доступны в этой роли, для реализации ответственности. В различных системах, которые обычно моделируются, разрешения становятся информационными ресурсами. Роль идентифицируется определенным числом протоколов, которые определяют пути взаимодействия с другими ролями.
Рис. 6. Базовые концепты методологии Gaia
Gaia поддерживают следующие шаги: идентификация ролей в системе (это обычно соответствует индивидуальностям внутри организаций и их подразделений) и определяет список ключевых ролей в неформальном дескрипционном языке; для каждой роли определяются связанные протоколы, т.е. образцы взаимодействия, которые обычно имеют место между ролями; разработка подробной ролевой модели и модели взаимодействий, и если требуется, повторение предыдущих стадий.
Ожидаемые выходы фазы анализа: детально разработанная ролевая модель, определяющая каждую роль в терминах ответственностей, протоколов взаимодействия и активностей, а также модели взаимодействия, описывающие каждый протокол в терминах обмена данными и используемых образцов.
Фаза проектирования включает следующие стадии: определение агентной модели, которая объединяет роли в агентные типы и формирует иерархию агентных типов, и оценивает число требуемых экземпляров каждого класса; определение служб, которые необходимы агентам для выполнения назначенных ролей, через анализ активностей и ответственностей; разработка модели знакомств, определение погрешностей проектирования и, если требуется, возврат к предыдущим стадиям. Выход фазы проектирования – модель агентной системы, которая может быть реализована с использованием более традиционных объектно-ориентированных и компонентных технологий.
Ограничения и недостатки методологии Gaia проявляются в следующем:
- отсутствует
строгое формальное
- трудно
выразить реальную
- нет градации
агентов по уровням
- организационная структура системы статична, т.е. ни число агентов, ни их отношения не изменяются в текущем времени;
- агенты
проявляют глобально
Достаточно оригинальная методология проектирования МАС, основанная на концепции М-архитектуры, развивается в работах коллектива польских ученых во главе с K. Cetnarowicz.
В структуре данной методологии определяются такие конструкции как жизненное пространство агентов, типы агентов, отношения между агентами и жизненным пространством и отношения среди агентов. Агентная архитектура рассматривается с двух различных точек зрения: как интеллектуальный профиль, описывающий способность агента решать данную проблему, и как энергетический профиль, описывающий «жизненную энергию» агента и разрешающий уничтожение нежизнеспособных агентов. МАС в рассматриваемом подходе конструируется нисходящим способом с использованием абстрактных уровней, которые должны отвечать следующим правилам:
- определение
системы задается уровнями
- модель
усложняется и дополняется
- на данном абстрактном уровне могут быть применены несколько вариантов абстрактного рассмотрения, что позволяет анализировать данную систему с различных точек зрения.
Методология Тropos реализует идею использования концепции моделирования требований для построения системы такой, какой она должна быть. В методологии можно выделить следующие фазы: ранние требования, поздние требования, проектирование архитектуры и детальное проектирование.
Анализ требований в Тropos делится на две стадии – ранний анализ и поздний анализ. Ранний анализ сосредоточен на изучении среды, в которой АОС будет функционировать. Поздний анализ описывает функциональные и нефункциональные требования к системе.
Во время раннего анализа требований разработчик представляет все сущности в виде социальных акторов. Такая модель дает возможность ответить на вопрос «почему?» в дополнение к обычным вопросам «что?» и «как?» по поводу функционирования системы. На стадии позднего анализа требований модель дополняется акторами, которые описывают систему такой, какой она должна быть и показывают зависимости между системой и средой.
Проектирование архитектуры системы изучалось в течение последних лет. Результатом такого интереса стало создание множества стилей проектирования, таких как стиль, управляемый событиями, стиль контрольных циклов и т.п. В методологии Тropos стиль проектирования определяется как метакласс организационной структуры, который посредством множества параметров проектирования влияет на процесс разработки.

- Агентская проблема в системе корпоративного управления
- Агентская теория фирмы
- Агентская теория фирмы
- Агентские договоры
- Агентские издержки
- Агентские отношения
- Агентский договор
- Агальна характеристика підприємства
- Агарарный вопрос в программах партий
- Агароза
- Агеев, Виктор Иванович актёр
- Агенство наружной рекламы
- Агенство по страхованию вкладов
- Агенство эскорт-услуг