- •1. Введение в интеллектуальные системы.................................................................7
- •2. Разработка систем, основанных на знаниях ........................................................36
- •3. Теоретические аспекты инженерии знаний..........................................................55
- •4. Технологии инженерии знаний.............................................................................. 95
- •5. Новые тенденции и прикладные аспекты
- •6. Программный инструментарий разработки систем, основанных на знаниях............................................................................................................................194
- •7. Пример разработки системы, основанной на знаниях ................................….226
- •8. Представление данных и знаний в Интернете...................................................257
- •9. Интеллектуальные Интернет-технологии..........................................................300
- •1. Введение в интеллектуальные системы
- •1.1. Краткая история искусственного интеллекта
- •1.1.1. Предыстория
- •1.1.2. Зарождение нейрокибернетики
- •1.1.3. От кибернетики «черного ящика» к ии
- •1.1.4. История искусственного интеллекта в России
- •1.2. Основные направления исследований в области искусственного интеллекта
- •1.2.1. Представление знаний и разработка систем, основанных на знаниях (knowledge-based systems)
- •1.2.2. Программное обеспечение систем ии (software engineering for Al)
- •1.2.3. Разработка естественно-языковых интерфейсов и машинный перевод (natural language processing)
- •1.2.4. Интеллектуальные роботы (robotics)
- •1.2.5. Обучение и самообучение (machine learning)
- •1.2.6. Распознавание образов (pattern recognition)
- •1.2.7. Новые архитектуры компьютеров (new hardware platforms and architectures)
- •1.2.8. Игры и машинное творчество
- •1.2.9. Другие направления
- •1.3. Представление знаний и вывод на знаниях
- •1.3.1. Данные и знания
- •1.3.2. Модели представления знаний
- •1.3.3. Вывод на знаниях
- •1.4. Нечеткие знания
- •1.4.1. Основы теории нечетких множеств
- •123456789 10 Рис. 1.7. Формирование нечетких множеств
- •1.4.2. Операции с нечеткими знаниями
- •1.5. Прикладные интеллектуальные системы
- •2. Разработка систем, основанных на знаниях
- •2.1. Введение в экспертные системы. Определение и структура
- •2.2. Классификация систем, основанных на знаниях
- •2.2.1. Классификация по решаемой задаче
- •2.2.2. Классификация по связи с реальным временем
- •2.2.3. Классификация по типу эвм
- •2.2.4. Классификация по степени интеграции с другими программами
- •2.3. Коллектив разработчиков
- •2.4. Технология проектирования и разработки
- •2.4.1. Проблемы разработки промышленных эс
- •2.4.2. Выбор подходящей проблемы
- •2.4.3. Технология быстрого прототипирования
- •2.4.4. Развитие прототипа до промышленной эс
- •2.4.5. Оценка системы
- •2.4.6. Стыковка системы
- •2.4.7. Поддержка системы
- •3. Теоретические аспекты инженерии знаний
- •3.1. Поле знаний
- •3.1.1. О языке описания поля знаний
- •3.1.2. Семиотическая модель поля знаний
- •3.1.3. «Пирамида» знаний
- •3.2. Стратегии получения знаний
- •3.3. Теоретические аспекты извлечения знаний
- •3.3.1. Психологический аспект
- •3.3.2. Лингвистический аспект
- •3.3.3. Гносеологический аспект извлечения знаний
- •3.4. Теоретические аспекты структурирования знаний
- •3.4.1. Историческая справка
- •3.4.2. Иерархический подход
- •3.4.3. Традиционные методологии структурирования
- •3.4.4. Объектно-структурный подход (осп)
- •4. Технологии инженерии знаний
- •4.1. Классификация методов практического извлечения знаний
- •4.2. Коммуникативные методы
- •4.2.1. Пассивные методы
- •4.2.2. Активные индивидуальные методы
- •4.2.3. Активные групповые методы
- •4.3. Текстологические методы
- •4.4. Простейшие методы структурирования
- •4.4.1. Алгоритм для «чайников»
- •4.4.2. Специальные методы структурирования
- •4.5. Состояние и перспективы автоматизированного приобретения знаний
- •4.5.1. Эволюция систем приобретения знаний
- •4.5.2. Современное состояние
- •4.6. Примеры методов и систем приобретения знаний
- •4.6.1. Автоматизированное структурированное интервью
- •4.6.2. Имитация консультаций
- •4.6.3. Интегрированные среды приобретения знаний
- •4.6.4. Приобретение знаний из текстов
- •5. Новые тенденции и прикладные аспекты инженерии знаний
- •5.1. Латентные структуры знаний и психосемантика
- •5.1.1. Семантические пространства
- •5.1.2. Методы многомерного шкалирования
- •5.1.3. Использование метафор для выявления «скрытых» структур знаний
- •5.2. Метод репертуарных решеток
- •5.2.1. Основные понятия
- •5.2.2. Методы выявления конструктов Метод минимального контекста
- •5.2.3. Анализ репертуарных решеток
- •5.2.4. Автоматизированные методы
- •5.3. Управление знаниями
- •5.3.1. Что такое «управление знаниями»
- •5.3.2. Управление знаниям и корпоративная память
- •5.3.3. Системы omis
- •5.3.4. Особенности разработки omis
- •5.4. Визуальное проектирование баз знаний как инструмент познания
- •5.4.1. От понятийных карт к семантическим сетям
- •5.4.2. База знаний как познавательный инструмент
- •5.5. Проектирование гипермедиа бд и адаптивных обучающих систем
- •5.5.1. Гипертекстовые системы
- •5.5.2. От мультимедиа к гипермедиа
- •5.5.3. На пути к адаптивным обучающим системам
- •6. Программный инструментарий разработки систем, основанных на знаниях
- •6.1. Технологии разработки программного обеспечения - цели, принципы, парадигмы
- •6.1.1. Основные понятия процесса разработки программного обеспечения (по)
- •6.1.2. Модели процесса разработки по
- •6.1.3. Инструментальные средства поддержки разработки систем по
- •6.2. Методологии создания и модели
- •6.3. Языки программирования для ии и языки представления знаний
- •6.4. Инструментальные пакеты для ии
- •6.5. WorkBench-системы
- •7. Пример разработки системы, основанной на знаниях
- •7.1. Продукционно-фреймовый япз pilot/2
- •7.1.1. Структура пилот-программ и управление выводом
- •7.1.2. Декларативное представление данных и знаний
- •7.1.3. Процедурные средства языка
- •7.2. Психодиагностика – пример предметной области для построения экспертных систем
- •7.2.1. Особенности предметной области
- •7.2.2. Батарея психодиагностических эс «Ориентир»
- •7.3. Разработка и реализация
- •7.3.1. Архитектура системы и ее база знаний
- •7.3.2. Общение с пользователем и опрос испытуемых
- •7.3.3. Вывод портретов и генерация их текстовых представлений
- •7.3.4. Помощь и объяснения в эс «Cattell»
- •8. Представление данных и знаний в Интернете
- •8.1. Язык html и представление знаний 8.1.1. Историческая справка
- •8.1.2. Html - язык гипертекстовой разметки Интернет-документов
- •8.1.3. Возможности представления знаний на базе языка html
- •8.2. Онтологии и онтологические системы
- •8.2.1. Основные определения
- •8.2.2. Модели онтологии и онтологической системы
- •8.2.3. Методологии создания и «жизненный цикл» онтологий
- •8.2.4. Примеры онтологий
- •8.3. Системы и средства представления онтологических знаний
- •8.3.1. Основные подходы
- •8.3.2. Инициатива (ка)2 и инструментарий Ontobroker
- •Средства спецификации онтологий в проекте Ontobroker
- •Формализм запросов
- •Формализм представления и машина вывода
- •Аннотация Web-страниц онтологической информацией
- •8.3.3. Проект shoe - спецификация онтологий и инструментарий Общая характеристика проекта
- •Спецификации онтологий и инструментарий shoe
- •Формализм представления и машина вывода
- •Аннотация Web-документов на базе онтологии
- •Формализм запросов
- •8.3.4. Другие подходы и тенденции
- •9. Интеллектуальные Интернет-технологии
- •9.1. Программные агенты и мультиагентные системы
- •9.1.1. Историческая справка
- •9.1.2. Основные понятия
- •9.2. Проектирование и реализация агентов и мультиагентных систем
- •9.2.1. Общие вопросы проектирования агентов и mac
- •9.2.2. Инструментарий AgentBuilder
- •9.2.3. Система Bee-gent
- •9.3. Информационный поиск в среде Интернет
- •9.3.1. Машины поиска
- •9.3.2. Неспециализированные и специализированные поисковые агенты
- •9.3.3. Системы интеллектуальных поисковых агентов
- •Autonomy и Web compass - системы интеллектуального поиска и обработки информации
- •Проект системы marri
- •Прототип системы OntoSeek
- •(Onto)2 - агент поиска и выбора онтологий
6. Программный инструментарий разработки систем, основанных на знаниях............................................................................................................................194
6.1. Технологии разработки программного обеспечения - цели,
принципы, парадигмы....................................................................................................194
6.2. Методологии создания и модели жизненного цикла интеллектуальных систем..............................................................................................................................205
6.3. Языки программирования для ИИ и языки представления знаний..................209
6.4. Инструментальные пакеты для ИИ......................................................................214
6.5. WorkBench-системы...............................................................................................221
7. Пример разработки системы, основанной на знаниях ................................….226
7.1. Продукционно-фреймовый ЯПЗ PILOT/2............................................................226
7.2. Психодиагностика - пример предметной области для построения
экспертных систем .........................................................................................................240
7.3. Разработка и реализация психодиагностической ЭС «Cattell»..........................244
8. Представление данных и знаний в Интернете...................................................257
8.1. Язык HTML и представление знаний...................................................................257
8.2. Онтологии и онтологические системы.................................................................270
8.3. Системы и средства представления онтологических знаний.............................286
9. Интеллектуальные Интернет-технологии..........................................................300
9.1. Программные агенты и мультиагентные системы..............................................300
9.2. Проектирование и реализация агентов и мультиагентных систем....................307
9.3. Информационный поиск в среде Интернет..........................................................319
Заключение....................................................................................................................338
Литература…………………………………………………………………………….339
Предисловие
Вы открываете необычный учебник — учебник, предназначенный для студентов технических университетов и их преподавателей, для аспирантов, магистров, бакалавров и практиков-разработчиков. Этот учебник написан для тех, кто хочет вступить в мир науки с интригующим названием — ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ.
Несмотря на обилие книг с аналогичным названием (см. список основной литературы), на сегодняшний день нет вузовского учебника по предметам «Интеллектуальные системы», «Экспертные системы», «Базы знаний» и т. д. Тем не менее, практически все технические университеты совершенно справедливо включили такого рода дисциплины в свои программы. Поскольку бум в этой науке пришелся на конец 70-х и 80-е, большинство книг на русском языке издано в эти годы. И авторы приносят благодарность создателям первых отечественных монографий и справочников, а также переводчикам классических книг в этой области - Д. А. Поспелову, Э. В. Попову, В. Л. Стефанюку, Г. С. Осипову и другим пионерам, без работ которых создание этого учебника было бы невозможно.
Необычность этого учебника связана также с подчеркнутой междисциплинарностью выбранного подхода, отказом от «клановости» отдельных научных школ и направлений. Этот учебник могут читать инженеры и математики, экономисты и биологи, программисты и медики. Он практически не требует предварительной подготовки в данной области знаний и рассчитан на широкий круг читателей, заинтересованных разработкой интеллектуальных систем, основанных на знаниях.
Мы отказались от излишней специализации в пользу широты изложения, нам хотелось представить горизонты этой науки, а не прокопать в ней глубокий, но узкий туннель.
Другой особенностью учебника является его практическая направленность. Освоив изложенный материал, студент или другой заинтересованный читатель сможет самостоятельно приступить к разработке интеллектуальной системы в роли инженера по знаниям. Акцент в учебнике сделан именно на работу со знаниями. Фактически он ориентирован на подготовку уникальных специалистов, спрос на которых на современном рынке высоких информационных технологий многократно превышает спрос на программистов. Этих специалистов называют по-разному - системные аналитики, постановщики задач, инженеры по знаниям, инженеры-когнитологи. По английски это — knowledge engineers.
Рассмотренные в учебнике вопросы представляют лишь вершину айсберга сравнительно молодой науки — ИНЖЕНЕРИИ ЗНАНИЙ. И, надеемся, показывают ее новые горизонты в мире информационных технологий.
Учитывая значительное число достижений и публикаций в этой области за рубежом, авторы сознательно будут приводить терминологию, используемую в оригиналах, что существенно облегчит изучение проблемы желающим повысить свою квалификацию через Интернет и другие источники англоязычной информации.
Материал учебника основан на курсах лекций, прочитанных авторами для студентов Санкт-Петербургского государственного технического университета (бывший Политех) и Московского физико-технического института (Технического университета). Объем курса от 32 до 64 лекционных часов плюс столько же практических занятий. По сути дела здесь в одном учебнике собрано несколько курсов лекций, ориентированных на разные специализации и разную базовую подготовку. В целом же данный учебник, по опыту авторов, содержит материал для двухгодовых курсов с общим названием «Искусственный интеллект».
Разные категории читателей могут читать учебник по различным «сценариям».
• Сценарий 1 — для студентов-«сачков» технических вузов перед сессией. Пометить в оглавлении параграфы, вошедшие в список вопросов для экзамена, и читать на максимальной скорости.
• Сценарий 2 — для студентов-отличников. Внимательно прочесть весь учебник последовательно, затем перейти к сценарию 1.
• Сценарий 3 — для студентов-непрограммистов и всех, кто просто интересуется проблемой для расширения кругозора. Главы 1, 2, 4, 9.
• Сценарий 4 — для преподавателей вузов и тех, кто хочет овладеть инженерией знаний. Использовать учебник как готовый конспект, расширив или сократив материал по своему усмотрению. Варианты:
♦ минимальный курс: параграфы 1.1-1.4, 2.1-2.4, 3.2, 3.4, 4.1-4.3, 4.4, 6.3, 8.2, 9.1;
♦ главы 1-2 могут составить основу вводного курса в проблематику искусственного интеллекта и систем, основанных на знаниях;
♦ аналогичный вводный курс по тематике программных средств искусственного интеллекта может дать материал главы 6, параграфа 7.1 и, при наличии времени, 9.1, 9.2;
♦ семестровый курс по базам знаний экспертных систем может быть прочитан на основе глав 2-4, 7;
♦ базовый курс по инженерии знаний составляют главы 3,4;
♦ наконец, главы 8, 9 дают основу для курса по тематике интеллектуальных Интернет-технологий.
• Сценарий 5 — для системных аналитиков. Главы 3-6.
• Сценарий 6 — для программистов и разработчиков. Главы 2-4, 6-9.
Материал, набранный более мелким шрифтом, носит иллюстративный характер.
В заключение авторы благодарят заведующую редакцией технической литературы издательства «Питер» Екатерину Строганову за энергию и энтузиазм при убеждении авторов принять решение о начале работы над учебником и поддержку в ее завершении.
В параграфе 4.6 четвертой главы использованы материалы монографии «Приобретение знаний интеллектуальными системами», любезно предоставленные ее автором Г. С. Осиповым.
Глубокую признательность авторы выражают Александру Волкову. Он является разработчиком программных систем, описанных в пятой главе. Параграф 5.1 написан совместно с А. В. Волковым, работа с которым существенно повлияла на формирование взглядов одного из авторов.
На подготовку материалов, представленных в параграфах 8.2 и 8.3 восьмой главы, а также в параграфах 9.1 и 9.3 девятой главы, в значительной мере повлияла работа по мультиагентным системам и интеллектуальным Интернет-ориентированным системам поиска информации, проведенная Н. В. Майкевич. По сути дела именно ей один из авторов данной книги обязан своей «миграцией» в эту новую область интеллектуальных информационных технологий из проблематики программного обеспечения систем искусственного интеллекта. Отдельная благодарность должна быть высказана Е. Васильевой, Н. Нумеровой и Н. Сташ, сотрудницам Института высокопроизводительных вычислений и баз данных Миннауки РФ, за техническую помощь при работе над рукописью, без которой книга могла бы так и не дойти до читателей.
Главы 1-5 написаны д. т. н., проф. Т. А. Гавриловой, главы 6-9 - д. т. н., проф. В. Ф. Хорошевским. Предисловие и заключение - результат совместной работы авторов, которые с надеждой на дальнейшее сотрудничество выражают глубокую признательность всем, кто помог выходу этой книги.
Об авторах
Т. А. Гаврилова - д. т. н., профессор кафедры компьютерных интеллектуальных технологий Санкт-Петербургского государственного технического университета, председатель Петербургского отделения Ассоциации искусственного интеллекта.
В. Ф. Хорошевский - д. т. н., профессор МФТИ, заведующий сектором вычислительного центра РАН, член Научного Совета Российской Ассоциации искусственного интеллекта.
От издательства
Ваши замечания, предложения, вопросы отправляйте по адресу электронной почты comp@piter.com (издательство «Питер», компьютерная редакция). Мы будем рады узнать ваше мнение!
Подробную информацию о наших книгах вы найдете на Web-сайте издательства http://www.piter.com.
