
- •Т. А. Гаврилова в. Ф. Хорошевский
- •Санкт-Петербург
- •Предисловие
- •Об авторах
- •1.1.2. Зарождение нейрокибернетики
- •1.1.3. От кибернетики «черного ящика» к ии
- •1.1.4. История искусственного интеллекта в России
- •1.2. Основные направления исследований в области искусственного интеллекта
- •1.2.1. Представление знаний и разработка систем, основанных на знаниях (knowledge-based
- •1.2.2. Программное обеспечение систем
- •1.2.3. Разработка естественно-языковых интерфейсов и машинный перевод (natural
- •1.2.4. Интеллектуальные роботы (robotics)
- •1.2.5. Обучение и самообучение (machine
- •1.2.6. Распознавание образов (pattern
- •1.2.7. Новые архитектуры компьютеров (new
- •1.2.8. Игры и машинное творчество
- •1.2.9. Другие направления
- •1.3. Представление знаний и вывод на знаниях
- •1.3.1. Данные и знания
- •1.3.2. Модели представления знаний
- •Структура фрейма
- •1.3.3. Вывод на знаниях
- •1.4. Нечеткие знания
- •1.4.1. Основы теории нечетких множеств
- •1.4.2. Операции с нечеткими знаниями
- •1.5. Прикладные интеллектуальные системы
- •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.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.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.2. Имитация консультаций
- •4.6.3. Интегрированные среды приобретения знаний
- •4.6.4. Приобретение знаний из текстов
- •4.6.5. Инструментарий прямого приобретения
- •Формы сообщений
- •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.1.3. Инструментальные средства поддержки разработки систем по
- •6.2. Методологии создания и модели жизненного цикла интеллектуальных систем
- •6.3. Языки программирования для ии и языки представления знаний
- •6.4. Инструментальные пакеты для ии
- •6.5. WorkBench-системы
- •Пример разработки системы, основанной на знаниях
- •7.1. Продукционно-фреймовый япз pilot/2
- •7.1.1. Структура пилот-программ и управление выводом
- •7.1.2. Декларативное представление данных и знаний
- •7.1.3. Процедурные средства языка
- •7.2. Психодиагностика — пример предметной области для построения экспертных систем
- •7.2.1. Особенности предметной области
- •7.2.2. Батарея психодиагностических эс «Ориентир»
- •7.3. Разработка и реализация психодиагностической эс «Cattell»
- •7.3.1. Архитектура системы и ее база знаний
- •7.3.2. Общение с пользователем и опрос испытуемых
- •7.3.3. Вывод портретов и генерация их текстовых представлений
- •7.3.4. Помощь и объяснения в эс «Cattell»
- •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.8.1. Основные подходы
- •8.3.2. Инициатива (ка)2 и инструментарий Ontobroker
- •8.3.3. Проект shoe — спецификация онтологии и инструментарий
- •8.3.4. Другие подходы и тенденции
- •9.1.2. Основные понятия
- •9.2.2. Инструментарий AgentBuilder
- •9.2.3. Система Bee-gent
- •9.3. Информационный поиск в среде Интернет
- •9.3.1. Машины поиска
- •9.3.2. Неспециализированные и специализированные поисковые агенты
- •9.3.3. Системы интеллектуальных поисковых агентов
- •Заключение
- •Литература
- •Содержание
- •Базы знаний интеллектуальных систем
- •196105, Санкт-Петербург, ул. Благодатная, 67.
- •197110, Санкт-Петербург, Чкаловский пр., 15.
1.1.2. Зарождение нейрокибернетики
Основную идею этого направления можно сформулировать следующим образом: Единственный объект, способный мыслить, — это человеческий мозг. Поэтому любое «мыслящее» устройство должно каким-то образом воспроизводить его структуру.
Таким образом, нейрокибернетика ориентирована на программно-аппаратное моделирование структур, подобных структуре мозга. Физиологами давно установлено, что основой человеческого мозга является большое количество (до 1021) связанных между собой и взаимодействующих нервных клеток — нейронов. Поэтому усилия нейрокибернетики были сосредоточены на создании элементов, аналогичных нейронам, и их объединении в функционирующие системы. Эти системы принято называть нейронными сетями, или нейросетями.
Первые нейросети были созданы Розенблаттом и Мак-Каллоком в 1956—1965 гг. Это были попытки создать системы, моделирующие человеческий глаз и его взаимодействие с мозгом. Устройство, созданное ими тогда, получило название персептрона (perceptron). Оно умело различать буквы алфавита, но было чувствительно к их написанию. Например, буквы А, А и А для этого устройства были тремя разными знаками. Постепенно в 70-80 годах количество работ по этому направлению искусственного интеллекта стало снижаться. Слишком неутешительны были первые результаты. Авторы объясняли неудачи малой памятью и низким быстродействием существующих в то время компьютеров.
Однако в 1980-х в Японии в рамках проекта «ЭВМ V поколения» был создан первый нейрокомпьютер, или компьютер VI поколения. К этому времени ограничения по памяти и быстродействию были практически сняты. Появились транспьютеры — параллельные компьютеры с большим количеством-процессоров.
Транспьютерная технология — это только один из десятка новых подходов к аппаратной реализации нейросетей, которые моделируют иерархическую структуру мозга человека. Основная область применения нейрокомпьютеров сегодня — это задачи распознавания образов, например идентификация объектов по результатам аэрофотосъемки из космоса. Можно выделить 3 подхода к созданию нейросетей:
1. Аппаратный — создание специальных компьютеров, нейрочипов, плат расширения, наборов микросхем, реализующих все необходимые алгоритмы.
2. Программный — создание программ и инструментариев, рассчитанных на высокопроизводительные компьютеры. Сети создаются в памяти компьютера, всю работу выполняют его собственные процессоры.
3. Гибридный — комбинация первых двух. Часть вычислений выполняют специальные платы расширения (сопроцессоры), часть — программные средства.
Более глубокое рассмотрение этого чрезвычайно перспективного и интересного направления исследований искусственного интеллекта выходит за рамки данной книги. Подробнее см. работы [Соколов, Вейткявичус, 1989; Амамия, Танака, 1993].
1.1.3. От кибернетики «черного ящика» к ии
В основу этого подхода был положен принцип, противоположный нейрокибернетике.
Не имеет значения, как устроено «мыслящее» устройство. Главное, чтобы на заданные входные воздействия оно реагировало так же, как человеческий мозг. Сторонники этого направления мотивировали свой подход тем, что человек не должен слепо следовать природе в своих научных и технологических поисках. Так, например, очевиден успех колеса, которого не существует в природе, или самолета, не машущего крыльями, подражая птице. К тому же пограничные науки о человеке не смогли внести существенного теоретического вклада, объясняющего хотя бы приблизительно, как протекают интеллектуальные процессы у человека, как устроена память и как человек познает окружающий мир.
Это направление искусственного интеллекта было ориентировано на поиски алгоритмов решения интеллектуальных задач на существующих моделях компьютеров. Существенный вклад в становление новой науки внесли ее «пионеры»: Маккарти (автор первого языка программирования для задач ИИ — ЛИСПа), Минский (автор идеи фрейма и фреймовой модели представления знаний), Нъю-элл, Саймон, Шоу, Хант и другие.
В 1956-1963 гг. велись интенсивные поиски моделей и алгоритмов человеческого мышления и разработка первых программ на их основе. Представители существующих гуманитарных наук — философы, психологи, лингвисты — ни тогда, ни сейчас не в состоянии были предложить таких алгоритмов. Тогда кибернетики начали создавать собственные модели. Так последовательно были созданы и опробованы различные подходы.
1. В конце 50-х годов родилась модель лабиринтного поиска. Этот подход представляет задачу как некоторое пространство состояний в форме графа, и в этом графе проводится поиск оптимального пути от входных данных к результирующим. Была проделана большая работа по разработке этой модели, но для решения практических задач эта идея не нашла широкого применения. В первых учебниках по искусственному интеллекту [Хант, 1986; Эндрю, 1985] описаны эти программы — они играют.в игру «15», собирают «Ханойскую башню», играют в шашки и шахматы.
2. Начало 60-х — это эпоха эвристического программирования. Эвристика — правило, теоретически не обоснованное, которое позволяет сократить количество переборов в пространстве поиска. Эвристическое программирование — разработка стратегии действий на основе известных, заранее заданных эвристик [Александров, 1975].
3. В 1963-1970 гг. к решению задач стали подключать методы математической логики. Робинсон разработал метод резолюций, который позволяет автоматически доказывать теоремы при наличии набора исходных аксиом. Примерно в это же время выдающийся отечественный1 математик Ю. С. Маслов предложил так называемый обратный вывод, впоследствии названный его именем, решающий аналогичную задачу другим способом [Маслов, 1983]. На основе метода резолюций француз Алъбер Кольмероэ в 1973 г. создает язык логического программирования Пролог. Большой резонанс имела программа «Логик-теоретик», созданная Нъюэлом, Саймоном и Шоу, которая доказывала школьные теоремы. Однако большинство реальных задач не сводится к набору аксиом, и человек, решая производственные задачи, не использует классическую логику, поэтому логические модели при всех своих преимуществах имеют существенные ограничения по классам решаемых задач.
4. История искусственного интеллекта полна драматических событий, одним из которых стал в 1973 г. так называемый «доклад Лайтхилла», который был подготовлен в Великобритании по заказу Британского совета научных исследований. Известный математик Д. Лайтхилл, никак с ИИ профессионально не связанный, подготовил обзор состояния дел в области ИИ. В докладе были признаны определенные достижения в области ИИ, однако уровень их определялся как разочаровывающий, и общая оценка была отрицательная с позиций практической значимости. Этот отчет отбросил европейских исследователей примерно на 5 лет назад, так как финансирование ИИ существенно сократилось.
5. Примерно в это же время существенный прорыв в развитии практических приложений искусственного интеллекта произошел в США, когда к середине 1970-х на смену поискам универсального алгоритма мышления пришла идея моделировать конкретные знания специалистов-экспертов. В США появились первые коммерческие системы, основанные на знаниях, или экспертные системы (ЭС). Стал применяться новый подход к решению задач искусственного интеллекта — представление знаний. Созданы MYCIN и DENDRAL [Shortliffe, 1976; Buchanan, Feigenbaura, 1978], ставшие уже классическими, две первые экспертные системы для медицины и химии. Существенный финансовый вклад вносит Пентагон, предлагая базировать новую программу министерства обороны США (Strategic Computer Initiative — SCI) на принципах ИИ. Уже вдогонку упущенных возможностей в начале 80-х объявлена глобальная программа развития новых технологий ESPRIT (Европейский Союз), в которую включена проблематика искусственного интеллекта.
6. В ответ на успехи США в конце 70-х в гонку включается Япония, объявив о начале проекта машин V поколения, основанных на знаниях. Проект был рассчитан на 10 лет и объединял лучших молодых специалистов (в возрасте до 35 лет) крупнейших японских компьютерных корпораций. Для этих специалистов был создан специально новый институт ICOT, и они получили полную свободу действий, правда, без права публикации предварительных результатов. В результате они создали достаточно громоздкий и дорогой символьный процессор, программно реализующий ПРОЛОГо-подобный язык, не получивший широкого признания. Однако положительный эффект этого проекта был очевиден. В Японии появилась значительная группа высококвалифицированных специалистов в области ИИ, которая добилась существенных результатов в различных прикладных задачах. К середине 90-х японская ассоциация ИИ насчитывает 40 тыс. человек.
Начиная с середины 1980-х годов, повсеместно происходит коммерциализация искусственного интеллекта. Растут ежегодные капиталовложения, создаются промышленные экспертные системы. Растет интерес к самообучающимся системам. Издаются десятки научных журналов, ежегодно собираются международные и национальные конференции по различным направлениям ИИ. Искусственный интеллект становится одной из наиболее перспективных и престижных областей информатики (computer science).