Интеллектуальные агенты
Проблематика интеллектуальных агентов и мультиагентных систем (МАС) имеет почти 40-летнюю историю и сформировалась на основе результатов, полученных в рамках работ по распределенному ИИ (DAI), распределенному решению задач (DPS) и параллельному ИИ (PAI). Данная тематика интегрирует достижения в области компьютерных сетей и открытых систем, ИИ и информационных технологий [15].
Агент – это аппаратная или программная сущность, способная действовать в интересах достижения целей, поставленных перед ним владельцем или пользователем.
Таким образом, в рамках МАС-парадигмы программные агенты рассматриваются как автономные компоненты, действующие от лица пользователя.
Интеллектуальные агенты должны обладать следующими свойствами:
* автономность – способность функционировать без вмешательства со стороны своего владельца и осуществлять контроль внутреннего состояния и своих действий;
* социальное поведение – возможность взаимодействия и коммуникации с другими агентами;
* реактивность – адекватное восприятие среды и соответствующие реакции на ее изменения;
* активность – способность генерировать цели и действовать рациональным образом для их достижения;
* базовые знания – знания агента о себе, окружающей среде, включая других агентов, которые не меняются в рамках ЖЦ агента;
* убеждения – переменная часть базовых знаний, которые могут меняться во времени, хотя агент может об этом не знать и продолжать их использовать для своих целей;
* цели – совокупность состояний, на достижение которых направлено текущее поведение агента;
* желания – состояния или ситуации, достижение которых для агента важно;
* обязательства – задачи, которые берет на себя агент по просьбе других агентов;
* намерения – то, что агент должен делать в силу своих обязательств.
В зависимости от концепций, выбранных для организации МАС, обычно выделяются три базовых класса архитектур:
* архитектуры, которые базируются на принципах и методах работы со знаниями;
* архитектуры, основанные на поведенческих моделях типа «стимул–реакция»;
* гибридные архитектуры.
Архитектуру или агентов, которые используют только точное представление картины мира в символьной форме, и принимают решения на основе формальных рассуждений и использования методов сравнения по образцу, принято определять как делиберативные (1-й подход).
Реактивными называются агенты и архитектуры, в которых функционирование отдельных агентов и всей системы осуществляется по правилам типа «ситуация–действие». При этом под ситуацией понимается потенциально сложная комбинация внутренних и внешних состояний (2-й подход).
Для решения реальных задач используются гибридные архитектуры.
Развитие и внедрение программных агентов было бы невозможно без опыта разработки открытых систем, которые характеризуются свойствами:
* расширяемость/масштабируемость (возможность изменения набора составляющих систем);
* мобильность/переносимость (простота переноса ПС на разные аппаратно-программные платформы);
* интероперабельность (способность к взаимодействию с другими системами);
* дружелюбность, легкая управляемость.
Одним из результатов внедрения концепции открытых систем в практику стало распространение архитектуры «клиент - сервер». В настоящее время выделяются следующие модели клиент-серверного взаимодействия:
· «толстый клиент – тонкий сервер». Серверная часть реализует только доступ к ресурсам, а основная часть приложения находится на клиенте;
· «тонкий клиент – толстый сервер». Модель активно используется в связи с распространением интернет-технологий. Клиентское приложение обеспечивает реализацию интерфейса, а сервер объединяет остальные части приложений.
Мобильные агенты – это программы, которые могут перемещаться по сети. Они покидают клиентский компьютер и перемещаются на удаленный сервер для выполнения своих действий, после чего возвращаются обратно.
Мобильные агенты являются перспективными для МАС, но в настоящее время нет единых стандартов их разработки, нерешенным остается ряд проблем, таких как легальные способы перемещения по сети, верификация агентов (защита от передаваемых по сети вирусов), соблюдение агентами прав частной собственности и сохранение конфиденциальности информации, которой они обладают, перенаселение сети агентами.
С точки зрения разработки и реализации МАС наиболее эффективными системами поддержки распределенных технологий являются DCOM, Java RMI, COBRA.
Основная ценность DCOM – предоставление возможности интеграции приложений, реализованных в разных системах программирования.
Java RMI-приложения обычно состоят из клиента и сервера. При этом на сервере создаются объекты, которые можно передавать по сети, либо методы, доступные для вызова удаленными приложениями, а на клиенте реализуются приложения, пользующиеся удаленными объектами. Отличительной чертой RMI является возможность передачи в сети не только методов, но и самих объектов, что обеспечивает в конечном счете реализацию мобильных агентов.
Основным преимуществом COBRA является интерфейс IDL, унифицирующий средства коммуникации между приложениями.
Агентом является все, что может воспринимать свою среду с помощью датчиков и воздействовать на нее с помощью исполнительных механизмов (человек, робот, программа). Каждый агент может воспринимать собственные действия.
Выбор агентом действия в любой конкретный момент времени может зависеть от всей последовательности актов восприятия, наблюдавшихся до этого момента времени. Поведение агента может быть описано и с помощью функции агента, которая отображает любую конкретную последовательность актов восприятия на некоторое действие. Внешним описанием агента может служить таблица. Внутреннее описание состоит в определении того, какая функция агента реализуется с помощью программы агента, то есть конкретная реализация, действующая в рамках архитектуры агента.
В любой конкретный момент времени оценка рациональности действий агента зависит:
- от показателей производительности;
- знаний агента о среде, приобретенных ранее;
- действий, которые могут быть выполнены агентом;
- последовательности актов восприятия агента, которые произошли
до настоящего времени.
Рациональный агент должен иметь способность к обучению и быть автономным.
Под проблемной средой агента понимается совокупность показателей производительности, среда, исполнительные механизмы и датчики.
Пример 9.1. Проблемная среда водителя такси
Тип агента | Показатели производительности | Среда | Исполнительные механизмы | Датчики |
Водитель такси | Безопасная, быстрая езда в рамках правил, максимизация прибыли | Дороги, другие транспортные средства, пешеходы, клиенты | Рулевое упр., газ, тормоз, световые сигналы, звуковые сигналы, дисплей | Видеокамеры, ультразвуковой дальномер, система навигации, датчики двигателя |
Программные агенты (программные роботы, софтботы) существуют в сложных неограниченных проблемных областях. Например, софтбот для управления тренажером, имитирующим пассажирский самолет, морское судно или софтбот, предназначенный для просмотра источников новостей в Интернете и показа клиентам интересующих их сообщений. Интернет представляет собой среду, которая по своей сложности соперничает с физическим миром, а в число обитателей этой сети входит множество искусственных агентов.
Классификация вариантов проблемной среды:
- полностью/частично наблюдаемая: полностью наблюдаемая, если
датчики фиксируют все необходимые данные;
- детерминированная/стохастическая: если следующее состояние
среды определяется текущим и действием агента, то среда
детерминированная;
- эпизодическая/последовательная: в эпизодической среде опыт агента
состоит из неразрывных эпизодов. Каждый эпизод включает в себя
восприятие среды агентом, а затем выполнение одного действия
(распознавание дефектных деталей), в последовательных средах
Агенту следует думать наперед (вождение машины, игра в шахматы);
- статическая/динамическая: если среда может измениться в ходе
принятия агентом решения, то она является динамической;
- дискретная/непрерывная: игра в шахматы - дискретная,
вождение автомобиля – непрерывная;
- одноагентная/многоагентная (мультиагентная): решение кроссворда,
диагностика – одноагентная, игра в шахматы, вождение
автомобиля – многоагентная.
Задача искусственного интеллекта состоит в разработке программы агента, которая реализует функцию агента, отображая восприятия на действия. Предполагается, что программа должна работать в своего рода вычислительном устройстве с физическими датчиками и исполнительными механизмами. Эти компоненты составляют архитектуру агента.
агент = архитектура + программа
Архитектура может представлять собой персональный компьютер или роботизированный автомобиль.
Существуют четыре основных вида программных агентов, которые лежат в основе почти всех интеллектуальных систем:
- простые рефлексивные агенты;
- рефлексивные агенты, основанные на модели;
- агенты, действующие на основе цели;
- агенты, действующие на основе полезности.
Простейшим видом агента является простой рефлексивный агент, который выбирает действия на основе текущего акта восприятия, игнорируя всю остальную историю актов восприятия. Агент – пылесос: решения основаны только на информации о текущем местоположении и о том, содержит ли оно мусор.
Наиболее эффективный способ организации работы в условиях частичной наблюдаемости состоит в том, чтобы агент отслеживал ту часть ситуации, которая воспринимается им в текущий момент. Это означает, что агент должен поддерживать внутреннее состояние, которое зависит от предыстории. Для обеспечения возможности обновления внутренней информации о состоянии среды в программе агента должны быть закодированы знания двух видов. Во-первых, нужна информация о том, как изменяется внешняя среда независимо от агента. Во-вторых, требуется определенная информация о влиянии действий агента на среду. Знания о том, как работает среда, называются моделью мира. Агент, в котором используется такая модель, называется агентом, основанным на модели.
Знаний о текущем состоянии среды не всегда достаточно для принятия решения. На перекрестке такси может ехать прямо, направо, налево. Правильное решение – место назначения клиента. То есть кроме текущего состояния агенту необходимо знать цель. Инструментом для выработки последовательности действий, позволяющих агенту достичь цели, являются поиск и планирование.
Программа агента может комбинировать информацию о цели с информацией о результатах возможных действий. Такие агенты получили название агентов, действующих на основе цели.
Функция полезности отображает состояние на вещественное число, которое обозначает соответствующую степень удовлетворенности агента. Полная спецификация функции полезности обеспечивает возможность принимать рациональные решения, если имеются конфликтующие цели (скорость и безопасность) или несколько целей, к которым может стремиться агент, но ни одна из них не может быть достигнута со всей определенностью. Такие агенты получили название агентов, действующих на основе полезности.
Структура обучающего агента включает четыре концептуальных компонента.
Обучающий компонент отвечает за внесение усовершенствований, производительный компонент обеспечивает выбор внешних действий. Обучающий компонент использует информацию обратной связи от критикас оценкой того, как действует агент, и определяет, каким образом должен быть модифицирован производительный компонент для того, чтобы он успешнее действовал в будущем. Задача генератора проблем состоит в том, чтобы предлагать действия, которые должны привести к получению нового и информативного действия. Процесс обучения в интеллектуальных агентах можно охарактеризовать как процесс модификации каждого компонента агента для обеспечения более точного соответствия этих компонентов доступной информации обратной связи и тем самым улучшения общей производительности агента.
Дата добавления: 2016-02-09; просмотров: 2765;