
- •Интеллектуальные информационные системы учебное пособие
- •Тула 2010
- •3. Экспертные системы 47
- •8. Системы с интеллектуальным интерфейсом 143
- •9. Многоагентные системы 158
- •Предисловие
- •1. Искусственный интеллект и интеллектуальные информационные системы
- •1.1. Введение в искусственный интеллект
- •1.1.1. Искусственный интеллект: основные понятия и решаемые задачи
- •1.1.2. Подходы к построению систем искусственного интеллекта
- •1.1.3. Интеллектуальные информационные системы: понятие и отличительные особенности
- •1.2. Основные классы интеллектуальных информационных систем
- •1.2.1. Экспертные системы
- •1.2.2. Самообучающиеся системы
- •1.2.3. Адаптивные информационные системы
- •1.2.4. Системы с интеллектуальным интерфейсом
- •1.2.5. Многоагентные системы
- •1.3. Основы проектирования интеллектуальных информационных систем
- •1.3.1. Структура и этапы разработки интеллектуальных информационных систем
- •1.3.2. Логическое проектирование
- •1.3.3. Физическое проектирование
- •1.3.4. Использование прототипного проектирования
- •Контрольные тесты
- •2. Традиционные способы представления и обработки знаний в интеллектуальных информационных системах
- •2.1. Знания и их использование в интеллектуальных информационных системах
- •2.1.1. Понятие знаний и их отличие от данных
- •2.1.2. Классификация знаний
- •2.1.3. Логический вывод. Использование дедукции, индукции и аналогии
- •2.1.4. Представление знаний в интеллектуальных информационных системах
- •2.2. Типичные модели представления знаний
- •2.2.1. Логическая модель
- •2.2.2. Продукционная модель
- •2.2.3. Семантическая сеть
- •2.2.4. Фреймовая модель
- •2.2.5. Объектно-ориентированная модель
- •2.3. Представление и формализация нечетких знаний
- •2.3.1. Основные определения нечетких множеств
- •2.3.2. Операции с нечеткими множествами
- •2.3.3. Нечеткие отношения
- •2.3.4. Нечеткая и лингвистическая переменные
- •Контрольные тесты
- •3. Экспертные системы
- •3.1. Структура и режимы работы экспертных систем
- •3.1.1. Основные элементы экспертных систем
- •3.1.2. Режимы работы экспертных систем
- •3.1.3. Участники разработки экспертных систем
- •3.2. Классификация экспертных систем
- •3.2.1. Классификация по сложности решаемых задач
- •3.2.2. Классификация по типу решаемых задач
- •3.2.3. Основные классы экспертных систем: классифицирующие, доопределяющие, трансформирующие, многоагентные
- •3.3. Поиск решений в экспертных системах
- •3.3.1. Поиск в одном пространстве
- •3.3.2. Поиск в иерархии пространств
- •3.3.3. Поиск в случае недетерминированности знаний
- •3.3.4. Алгоритм реализации логического вывода в экспертных системах
- •3.4. Методы извлечения знаний в экспертных системах
- •3.4.1. Классификация методов извлечения знаний
- •3.4.2. Коммуникативные методы извлечения знаний
- •3.4.3. Текстологические методы извлечения знаний
- •Контрольные тесты
- •4. Оlap-технология
- •4.1. Основные понятия
- •4.1.1. Хранилище данных
- •4.1.2. Применение информационных хранилищ. Извлечение знаний из данных
- •4.1.3. Основная идея olap-технологии
- •12 Признаков olap данных
- •4.1.4. Структура хранилища данных в оlap-системах
- •4.2. Модели и алгоритмы построения olap-систем
- •4.2.1. Rolap – обработка на основе запросов к реляционным базам данных
- •4.2.2. Molap – многомерное представление данных
- •4.2.3. Holap – гибридные системы
- •Контрольные тесты
- •5. Интеллектуальный анализ данных
- •5.1. Методы интеллектуального анализа данных
- •5.1.1. Основные понятия
- •5.1.2. Типы закономерностей, выявляемых методами интеллектуального анализа данных
- •5.1.3. Стадии интеллектуального анализа данных
- •5.1.4. Индуктивное и абдуктивное обучение
- •5.2. Алгоритмы интеллектуального анализа данных
- •5.2.2. Байесовская классификация
- •5.2.3. Деревья решений
- •5.2.4. Методы классификации с использованием функций
- •5.2.5. Метод "ближайшего соседа" или системы рассуждений на основе аналогичных случаев
- •5.2.6. Методы кластерного анализа
- •5.2.7. Развитие алгоритмов интеллектуального анализа данных
- •Контрольные тесты
- •6. Нейронные сети
- •6.1. Основные понятия
- •6.1.1. Модель искусственного нейрона
- •6.1.2. Модели нейронных сетей
- •6.1.3. Статические нейронные сети
- •6.1.4. Рекуррентные нейронные сети
- •6.2. Проектирование нейронных сетей
- •6.2.1. Этапы проектирования нейронных сетей
- •6.2.2. Метод обратного распространения ошибки
- •6.2.3. Методы обучения нейронных сетей: обучение без учителя
- •6.2.4. Нейронные сети Хопфилда и Хэмминга
- •6.2.5. Использование генетических алгоритмов для обучения нейронной сети
- •Контрольные тесты
- •5. Адаптивные системы
- •5.1. Основные классы адаптивных систем
- •5.1.1. Понятие и классификация адаптивных систем
- •5.1.2. Самонастраивающиеся адаптивные системы
- •5.1.3. Самоорганизующиеся адаптивные системы
- •5.1.4. Самообучающиеся адаптивные системы
- •5.2. Проектирование адаптивных систем
- •5.2.1. Общие подходы и требования к проектированию
- •5.2.2. Оригинальное проектирование адаптивных систем
- •5.2.3. Компонентное проектирование адаптивных систем
- •Контрольные тесты
- •8. Системы с интеллектуальным интерфейсом
- •8.1. Взаимодействие пользователя с информационной системой на естественном языке
- •8.1.1. Компьютерно-лингвистический подход к диалогу. Проблемы формализации естественном языке
- •8.1.2. Задачи обработки текстов на естественном языке
- •8.1.3. Уровни понимания текста на естественном языке
- •8.2. Построение естественно-языковых интерфейсов
- •8.2.1. Лингвистическая трансляция
- •8.2.2. Обобщенная схема естественно-языковой системы
- •8.2.3. Компонент понимания высказываний
- •8.2.4. Компонент генерации высказываний
- •8.3. Прикладные системы с интеллектуальным интерфейсом
- •8.3.1. Интеллектуальные базы данных
- •8.3.2. Интеллектуальные гипертекстовые системы
- •8.3.3. Системы когнитивной графики
- •Контрольные тесты
- •9. Многоагентные системы
- •9.1. Характеристика агента как элемента многоагентной системы
- •9.1.1. Агент: понятие и классификация
- •9.1.2. Отличительные свойства агента
- •9.2. Процесс самоорганизации в многоагентных системах
- •9.2.1. Понятие многоагентной системы
- •9.2.2. Структура памяти и принципы мышление агента
- •9.2.3. Самоорганизация многоагентной системы
- •9.2.4. Архитектура и интерфейс многоагентной системы
- •Контрольные тесты
- •Библиографический список
- •Приложение
- •Интеллектуальные информационные системы
- •3000600, Г.Тула, пр.Ленина, 92.
- •3000600, Г.Тула, ул.Болдина, 151
9. Многоагентные системы
9.1. Характеристика агента как элемента многоагентной системы
9.1.1. Агент: понятие и классификация
О
бщепринятого
определения “агента” еще не существует.
Рассматриваемый в какой-либо системе
мультиагент
– это аппаратная или программная
сущность, способная действовать в
интересах достижения целей, поставленных
перед ним владельцем и/или пользователем.
Таким образом, в рамках мультиагентных
систем рассматриваются агенты
- автономные компоненты, действующие
по определенному сценарию. Классификация
агентов представлена на рис. 9.1.
Интерес для построения МАС в задачах инженерии знаний представляют в большей степени интеллектуальные и действительно интеллектуальные агенты, которые отличаются тем, что поддерживают помимо автономного выполнения, взаимодействия с другими агентами и слежения за окружением – способность использовать абстракции, адаптивность поведения, обучение на прецедентах и толерантность к ошибкам.
Проблемы в создании МАС на принципах искусственного интеллекта состоит в том, что при проектировании точной и полной модели представления мира, процессов и механизмов рассуждения в нем – очень тяжело создать адекватную и полную картину мира. Несмотря на явные трудности, идея использовать агентов для решения разноплановых задач очень популярна в последнее время. Однако задача проектирования МАС и действительно интеллектуальных агентов требует специальных знаний и является ресурсоемкой задачей.
Программные интеллектуальные агенты – это новый класс систем программного обеспечения, которое действует либо от лица пользователя, либо от лица системы делегировавшей агенту полномочия на выполнение тех или иных действий. Они являются, по сути, новым уровнем абстракции, отличным от привычных абстракций типа – классов, методов и функций. Но при этом, разработка МАС позволяет создавать системы обладающие расширяемостью (масштабируемостью), мобильностью (переносимостью), что несомненно очень важно при разработке систем, основанных на знаниях.
9.1.2. Отличительные свойства агента
Агент МАС обладает рядом отличительных свойств представленных в табл. 9.1.
Таблица 9.1
Свойства “агента” и их характеристика.
Свойства |
Характеристика |
Автономность |
Агенты функционируют без прямого вмешательства людей или кого-либо другого и владеют определенной способностью контролировать свои действия и внутреннее состояние |
Методы (способы) общения |
Агенты взаимодействуют с другими агентами средствами некоторого коммуникационного языка. |
Реактивность |
Агенты способны воспринимать окружающую среду и адекватно реагировать в определенных временных рамках на изменения, которые происходят. |
Активность |
Агенты не просто реагируют на изменения среды, но и обладают целенаправленным поведением и способностью проявлять инициативу. |
Индивидуальная картина мира: |
Каждый агент имеет собственную модель окружающего его мира (среды), которая описывает то, как агент видит мир. |
Коммуникабельность и коперативность |
Агенты могут обмениваться информацией с окружающей их средой и другими агентами. |
Интеллектуальное поведение |
Поведение агента включает способность к обучению, логичной дедукции или конструированию модели окружающей среды для того, чтобы находить оптимальные способы поведения. |
Следовательно, каждый агент - это процесс, который владеет (располагает) определенной частью знаний об объекте и возможностью обмениваться этими знаниями с другими агентами.
На сегодня не существует языка программирования или инструментальной системы разработки, которая бы полностью соответствовала требованиям построения агентов. С точки зрения принципов распределенного объектно-ориентированного программирования (ООП) необходимость передачи методов может быть существенно сокращена в том случае, если может быть обеспечен удаленный доступ к общим методам посредством передачи ссылок на удаленные объекты, данных экземпляров этих объектов и их состояний. Однако в дополнение к концепции ООП, каждый агент имеет возможность создания копий самого себя с полной или ограниченной функциональностью, обеспечивая возможность настройки на среду путем исключения неэффективных методов и замены их новыми. Традиционная для ООП схема “класс-объект” нарушается, т.к. агент имеет возможность постоянного изменения сценария поведения без его изменения в родительском классе. Многозначное наследование позволяет создавать экземпляры агентов, смешивая сценарии поведения, схемы наследования и атрибуты, определенные в родительских классах.
Следовательно, система разработки, которая бы полностью соответствовала требованиям построения агентов, должна была бы соответствовать таким требованиям: обеспечение перенесения кода на различные платформы, доступность на многих платформах, поддержка сетевого взаимодействия, многопотоковая обработка и некоторые другие. Чаще всего в агентных технологиях используются: универсальные языки программирования (Java); языки, “ориентированы на знания”, такие, как языки представления знаний (KIF), языки переговоров и обмена знаниями (KQML, AgentSpeak, April), языки спецификаций агентов; специализированные языки программирования агентов (TeleScript); языки сценариев и scripting languages (Tcl/Tk); символьные языки и языки логического программирования (Oz).
Одно из самых главных свойств агента – это интеллектуальность. Интеллектуальный агент владеет определенными знаниями о себе и об окружающей среде, и на основе этих знаний он способен определять свое поведение. Интеллектуальные агенты являются основной областью интересов агентной технологии. Важна также среда существования агента: это может быть как реальный мир, так и виртуальный (компьютерный), что является важным в связи со всеобщим распространением сети Internet. От агентов требуют способности к обучению и даже самообучению. Поскольку обучение обуславливает наличие знаний у обучаемого, то обучаемым или самообучаемым может быть только интеллектуальный агент.
Свойство умения планировать подразделяет агентов на регулирующие и планирующие. Если умение планировать не предусмотрено (регулирующий тип), то агент будет постоянно переоценивать ситуацию и заново вырабатывать свои действия на окружающую среду. Планирующий агент имеет возможность запланировать несколько действий на различные промежутки времени. При этом агент имеет возможность моделировать развитие ситуации, что дает возможность более адекватно реагировать на текущие ситуации. При этом агент должен учитывать не только свои действия и реакцию на них, но и сохранять модели объектов и агентов окружающей среды для предсказания их возможных действий и реакций.
Агент может иметь доступ к локальным и глобальным ресурсам. При этом агентов, которые имеют доступ к локальным ресурсам (ресурсы, к которым имеет доступ пользователь, в том числе и сетевые), называют персональными помощниками, они автоматизируют работу текущего пользователя, помогая ему в выполнении некоторых операций. Соответственно сетевой агент самостоятельно получает доступ к информации, не доступной пользователю напрямую либо доступ к которой не был предусмотрен. Важным свойством классификации есть мобильность - возможность менять свое местонахождение в окружающей среде. Для программного агента под мобильностью понимается возможность передвигаться по сети от компьютера к компьютеру. Переходя от одного компьютера к другому, такой агент может обрабатывать данные и передавать по сети только результаты своей работы. Система, в которой несколько агентов могут общаться друг с другим, передавать друг другу некоторую информацию, взаимодействовать между собой, называется многоагентной (МАС).