- •Введение
- •Глава 1. Ведение в системы искусственного интеллекта
- •1.1. Архитектура систем искусственного интеллекта
- •1.2. База знаний и данных
- •1.1.1 Понятие модели
- •1.1.2. Логические модели
- •1.1.3 Модели знаний на основе продукций
- •1.1.4 Фреймовая модель знаний
- •1.1.5 Семантические сети
- •1.3. Машина вывода
- •1.3.1. Понятие формальной системы
- •Примеры стратегии вывода
- •Как функционирует машина вывода
- •1.4. Извлечение знаний и обучение
- •1.4.1. Извлечение знаний от многих экспертов
- •1.4.2 Проблема непротиворечивости формализованной базы знаний
- •1.5. Обучение системы
- •1.6. Интерфейс с пользователем
- •1.7. Организация работы
- •1.8. Инструментальные средства создания систем искусственного интеллекта
- •Языки программирования
- •1.8.2. Языки продукционного программирования
- •1. 8. 3. Языки инженерии знаний и инструментальные системы
- •1.8.3.1. Система vpExpert
- •1.8.3.2. Система kas
- •1.8.3.3. Система Expert-Ease
- •Глава 2. База знаний
- •2.1. Методы извлечения знаний
- •2.1.1. Классификация методов извлечения знаний
- •2.1.2. Пассивные методы
- •2.1.2.1. Наблюдения
- •2.1.2.2. Анализ протоколов «мыслей вслух»
- •2.1.2.3. Лекции
- •2.1.3. Активные индивидуальные методы
- •2.1.3.1. Анкетирование
- •2.1.3.2. Интервью
- •2.1.3.3. Свободный диалог
- •2.1.4. Активные групповые методы
- •2.1.4.1. «Круглый стол»
- •2.1.4.2. «Мозговой штурм»
- •2.1.4.3. Экспертные игры
- •2.1.4.3.1. Игры с экспертом
- •2.1.4.3.2. Ролевые игры в группе
- •2.1.4.4. Игры с тренажерами
- •2.1.4.4.1. Компьютерные экспертные игры
- •2.1.5. Текстологические методы
- •2.2.Формальное описание понятий предметной области (по)
- •2.2.1. Методы абстрагирования понятий
- •2.2.1.1.Агрегация и декомпозиция понятий
- •2.2.1.2.Обобщение и специализация понятий
- •2.2.1.3.Типизация и конкретизация понятий
- •2.2.1.4.Ассоциация и индивидуализация понятий
- •2.3.Методы классификации
- •2.3.1. Экстенсиональный и интенсиональный аспекты классификации
- •2.3.2. Таксономия и мерономия
- •2.3.3. Типы классификаций
- •2.3.4. Древовидные классификации
- •2.3.5. Булевы классификации
- •2.3.6. Комбинативные классификации
- •2.4.События и процессы
- •2.4.1. Состояния предметной области
- •2.4.2. Событие
- •2.4.3. Последовательные процессы
- •2.4.4. Рекурсивные процессы
- •2.4.5. Ветвящиеся процессы
- •2.5. Системы продукций: структура, технология, применение
- •2.5.1. Неформальное введение в системы продукций
- •2.5.1.1 Алгоритмические модели
- •2.5.2 Логический вывод
- •2.5.3 Прикладные модели
- •2.5.4. Метамодель систем продукций
- •2.5.4.1. Основные подсистемы
- •2.5.5.2. Метаструктура базы данных и операций
- •2.5.5.2.1. Характер организации данных
- •2.5.5.2.2 Операции над базой данных
- •2.5.5.2.3 Контроль несовместимости
- •2.5.5.2.4 Ассоциативная надстройка
- •2.5.6. Метаструктура модуля правил
- •2.5.6.1 Аппарат активации
- •2.5.6.2 Структура правил
- •2.5.7. Метаструктура модуля управления
- •2.5.8. Технология поддержки разработок продукционных систем
- •2.5.9. Формальные модели систем продукций
- •2.5.9.1. Алгебраическая модель
- •2.5.9.1.1. Основные определения
- •2.5.9.1.2. Операции преобразования ситуации
- •2.5.9.1.3. Условия корректности вычислений над конъюнктивной базой данных
- •2.5.9.1.4. Однозначность вычислений над дизъюнктивной базой
- •2.5.9.2. Управление выводом в системах продукций
- •2.5.9.3. Язык управления применением продукций
- •2.5.9.4. Язык управления выбором данных
- •2.5.9.5. Обзор формальных моделей вычислений
- •2.5.10. Экспериментальные системы продукций
- •2.5.10.1. Система скип
- •2.5.10.2. Система анализа топологических чертежей интегральных схем
- •P(слой) x0, y0 : Dx1, Dy2, .., Dxn-1, Dyn;
- •2.6. Выводы к второй главе
- •3. Машина логического вывода
- •3.1. Формальное определение задачи
- •3.2. Специфика решения задач в сии
- •3.3. Управление процессом решения задачи
- •3.4. Модели эвристического поиска решений
- •3.4.1 Стратегия поиска в глубину
- •3.4.2. Стратегии перебора с отсечениями
- •3.4.2.1. Метод ветвей и границ
- •3.4.2.2. Стратегии поиска на основе эвристической функции оценки
- •3.5. Методы вывода и доказательства теорем
- •3.5.1 Механизм резолюции Робинсона
- •3.5.2. Резолюция в логике высказываний
- •3.5.2.1 Линейная резолюция вL
- •Метод линейного вывода в lЛавленда, Ковальского и Кюнера
- •Эффективная реализация
- •3.5.2.3. Метод поиска в глубину
- •3.5.2.4 Эвристики поиска в дереве
- •3.5.2.5. Семантическая резолюция
- •3.5.3 Резолюция в pl
- •3.6. Методы индуктивного вывода
- •3.6.1. Виды индукции
- •3.6.2. Индукция как вывод и индукция как метод
- •3.6.3. Правила, необходимые для систем автоматического формирования знаний
- •3.7. Дедуктивный вывод на семантических сетях
- •3.7.1. Нерезолютивные методы вывода на семантических сетях
Глава 1. Ведение в системы искусственного интеллекта
1.1. Архитектура систем искусственного интеллекта
СИИ являются результатом логического развития СОД, которую можно определить как интеллект. Систему принято считать интеллектуальной, если в ней реализованы три группы основных функций:
представления и обработки данных;
рассуждения;
общения с пользователем на естественном языке.
Эти обобщенные функции реализуются как правило следующей совокупностью процедур:
накопление знаний о предметной области;
классификация знаний по критерию прагматической полезности и непротиворечивости;
структурирование знаний в направлении их использования в конкретной области;
автоматическое поддержание базы знаний при ее пополнении;
получение и обработка знаний от нескольких экспертов.
инициализация процессов получения новых знаний;
соотнесение новых знаний со старыми;
пополнение знаний с получением логического вывода, отражающего закономерности в предметной области и накопленных знаниях;
обобщение знаний на основе более частных знаний;
логическое планирование своей деятельности;
осуществление вывода на основе рассуждений по аналогии и т.п.
общение на естественном языке (или подмножестве профессионального языка);
обучение;
адаптация в процессе взаимодействия к специалистам разной квалификации;
введение знаний о целях и возможностях пользователя, а также о собственных возможностях и орг-х;
формирование по запросу пользователя объяснений своей деятельности;
документирование информации в форме, необходимой пользователю.
Естественно, что вышеперечисленные процедуры должны быть реализованы той или иной формой организации системы, т.е. ее архитектурой.
В связи с тем, что в данном курсе нас будут интересовать в основном первые две функции, то рассмотрим обобщенную структурно-функциональную схему СИИ упрощенного вида (рис.1.1).
Архитектура конкретной СИИ определяется функциями конкретного состава задач и их связями между собой.
В приведенной схеме можно выделить два основных блока:
машины баз знаний;
решатель
и вспомогательные блоки: систему общения на ЕЯ, рецепторы и эффекторы.
Это деление на блоки абсолютно четко соответствует обобщенным функциям СИИ.
МБЗреализуют первую функцию СИИ – функцию представления и обработки знаний и состоит из блоков:
База фактовсодержит факты, носящие конкретный характер:
факты, характеризующие текущую ситуацию, текущее состояние;
факты, характеризующие уже имевшие место ситуации (опыт).
База правилсодержит элементарные выражения, называемые в теории ИИпродукциями.Здесь содержатся закономерности, представляющие, как правило, причинно-следственные связи предметной области. Это предложения типа ЕСЛИ–ТО–ИНАЧЕ.
База процедурхранит то, что в обычных СОД называется прикладными программами. С помощью этих процедур выполняются все необходимые вычисления, преобразования и другие нужные системе последовательности внутренних действий.
База закономерностейсодержит различные сведения, относящиеся к особенностям той предметной области, в которой будет функционировать система. Это, например, законы предметной области, эмпирические зависимости.
База знаний о себесодержит списки того, что хранится в текущий момент в остальных базах:
сведения о том, как представляются единицы информации различного типа;
сведения о том, как взаимодействуют отдельные части системы;
сведения о том, как получено решение любой конкретной задачи.
Другими словами хранятся на том или ином уровне подробности описания самой системы, ее возможностей и способов функционирования.
База целейсодержит такие целевые структуры, которые позволяют организовать процессы движения от исходных фактов, закономерностей, правил и процедур к достижению той цели, которая поступила в систему от пользователя или сформирована в самой системе в процессе ее функционирования. База целей – это тоже способ представления знаний, как и база правил, но ориентирована на связи объектов между собой через сообщения, что позволяет реализовывать стратегию вывода, например, по сценариям.
Этот момент является одним из существенных отличий СИИ от СОД. В традиционной СОД схема передачи управления и использования данных предопределена в программе. Обработка информации осуществляется последовательными шагами, а ветвление имеет место в заранее выбранных точках. В СИИ ходом рассуждения управляют данные и ветвление в ходе рассуждения – норма. При этом правила дают возможность на любом шаге оценить ситуацию и предпринять соответствующие действия.
Монитор баз знаний– это программа управления всеми базами, входящими в базу знаний. Эта программа организует их взаимодействие между собой.
Т.о., база фактов – это база данных, а база правил, база закономерностей, база целей – составляют основу базы знаний предметной области.
МДВреализует вторую функцию СИИ – функцию рассуждений, она состоит из 7 элементов:
БДВреализует дедуктивные рассуждения, с помощью которых на основании общих закономерностей из базы закономерностей, конкретных фактов из базы фактов и правил вывода из базы правил выводятся новые факты. С помощью этого же блока происходит поиск пути на сценариях при заданной конечной цели.
Однако строгий формальный вывод может быть обеспечен не всегда, может отсутствовать необходимая информация, могут существовать ограничения на принятые решения и т.п. Поэтому БИВцелесообразен в СИИ для организации вывода новых знаний на основе обобщений отдельных понятий и фактов, замена операций с отдельными понятиями и фактами операциями с их множествами. Конечно реализация вывода по индукции труднее, чем по дедукции, но зато СИИ получает значительные интеллектуальные преимущества.
В процессе индуктивного и дедуктивного выводов возможны ошибки. Чтобы их устранить необходимо использовать определенные указатели правдоподобия сформированных правил, реализуемых в БПВ.
Поскольку СИИ должна работать на естественном языке или его подмножестве из области профессионального языка, то этот блок и должен отражать те степени правдоподобия правил, фактов, которые имеются в естественном языке (ЕЯ) в виде выражений: «вероятно», «часто», «много раз», … В этом блоке целесообразно моделировать и правдоподобные рассуждения, т.е. элементы переноса свойств, выявленных для одних фактов и ситуаций, на другие, кажущиеся по набору признаков похожими на уже изученные (рассуждения по аналогии и ассоциации).
Блок планирования – этот блок связан со всеми БМЗ, планирует процесс вывода в зависимости от конкретной ситуации.
Монитор решателя – программа, управляющая всеми блоками решателя.
Блок рабочего поля памяти отражает реальную ситуацию использования памяти компьютера при решении интеллектуальных задач. В нее блоки индуктивного и дедуктивного вывода вызывают из БЗ необходимые знания, чтобы не искажать БЗ различными преобразованиями, нужными для решения задач.