- •Введение
- •Глава 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.2. База знаний и данных
Однозначного определения понятия "знания" не существует. Поэтому будем придерживаться подхода, при котором новое понятие раскрывается через набор его специфических характеристик. Прежде чем раскрыть эти характеристики, введем некоторые предварительные понятия.
Переменная - это объект с априорно неизвестным значением. Часто отождествляют все три понятия:
<переменная> = <о6ъект> = <неизвестное значение>.
Переменная может быть связанной и несвязанной (свободной). В последнем случае переменной не приписано какое-либо конкретное значение. Естественно рассматривать само значение как другой объект определенного типа. С этой точки зрения связанная переменная представляет пару <V1, V2>с исходным объектомV1, представляющим имя переменной, и производным объектомV2, представляющим значение переменной. При этом, как правило, не имеет значения конкретный вид объектаV2. Так, пара<Х, "Петр">интерпретируется как переменнаяX, связанная со значением символьной константы "Петр".
Некоторые трудности возникают, когда V2представляет так называемое автоопределение (рекурсивное определение), например
<Х, Х2- Х +1 >,
или, в более обычной форме X = Х2 - X + 1. Если последнее интерпретируется как уравнение, то можно вывести, чтоX = 1.
Если последнее требуется интерпретировать как подстановку (для Х), то следовало писать
< Х, X2- Х +1> или<X, Y2 - Y + 1>.
В последнем случае необходимо обеспечить допустимость использования замены. Например, недопустима замена X = Yв формуле ln(X - Y) =ln(X + Y), что приводит кln0 =ln2Y.
Константа, очевидно, может быть представлена как пара<С, С>, гдеС суть конкретный объект. Обозначение<V, V> со связанной переменнойVсуть также пример константы. Характеристиками знаний являются следующие.
1. Внутренняя интерпретируемость знаний отождествляется нами с наличием некоторой функции (способа) связывания переменных с теми или иными значениями или иначе, - способом порождения пар<Vi, Vj>. Такая функция или способ называется такжеинтерпретирующей функцией(или простоинтерпретацией).
Поскольку данные - это пары вида <С, С>, гдеС - константа, то, очевидно, для них не требуется интерпретирующая функция (т.к. данные представляют сами себя).
2.Вторая характерная черта знаний -рекурсивная структурированность и связность. Рекурсивная структурированность определяется через понятие концепта.Концепт есть семантическое целое понятий. ПонятиеР1иР2образуют семантическое целое, если имеет место какое-то из перечисленных условий:
(А)Р1и Р2связаны друг с другом как отношение и один из его аргументов;
(В)Р1и Р2связаны друг с другом как действие и его носитель или субъект;
(С)Р1и Р2связаны друг с другом как функция и ее аргумент (объект и его свойство).
По индукции следует, что множество P = {P1, P2, ..., Pn}понятий образует семантическое целое, если каждыйРiвРобразует семантическое целое как минимум с одним изРj, гдеPj P/{Pi}.
Концепт Сесть упорядоченное множествоСi, гдеСi- семантическое целое, содержащееся в семантическом целом, представляющем С.
Рассмотрим концепт С: "Студент Петр сдает экзамен по химии". Здесь можно выделить следующие семантические целые:
С1 = <Студент Петр> (объект Петр; свойство -студент)
С2= <Петр сдает экзамен> (объект Петр; действие - сдает экзамен)
С3 = <Экзамен по химии> (объект экзамен; свойство - по химии)
Таким образом, исходный концепт Собразован простым объединением
C=C1C2C3.
Отметим, что результат не зависит от порядка слагаемых, т.е.
C=C1C2C3=C2C1C3=C3C2C1и т.д.
Рекурсивность операции объединения показывается элементарно через тождество
X=X
{a}X= {a,X} (1.2)
{a,Y}X= {a}{XY}
3. Семантическое пространство с метрикой. Это свойство знаний связано с возможностью их измерения в системе оценок (метрики) [истинно, ложь]. В системе с нечеткой логикой используется бесконечное множество оценок истинности знания. Например, заключение ЭС вида "завтра ожидается дождь с вероятностью 0,8" не является ни строго истинным, ни строго ложным, т.е. характеризуется определенной степенью правдоподобия.
4. Активность знаний. Это свойство знаний "адаптироваться" под изменяющиеся факты (т.е. способность к обучению и самокоррекции).
5. Функциональная целостность. Под функциональной целостностью знаний понимается их непротиворечивость, независимость исходных посылок и разрешимость. Поскольку понятия непротиворечивости и разрешимости являются фундаментальными понятиями логики, то их рассмотрение вынесено в самостоятельные подразделы. Ограничимся здесь указанием на то, что непротиворечивость знаний означает невозможность появления в базе знаний двух взаимоисключающих фактови(типа "пациент жив" и "пациент мертв"). Хотя принципиально возможно рассуждение на основе противоречивых посылок, т.к. в настоящее время не существует развитой теории для этого случая. Поэтому мы придерживаемся требований классической логики.
Требование разрешимости заключается в том, что любое истинное знание, формализуемое в базе знаний системы, может быть выведено в ней с помощью машины вывода. Требование разрешимости, к сожалению, не всегда выполнимо. В частности, как показал А. Черч, неразрешима в общем случае логика предикатов, о которой пойдет речь немного ниже.
6. Независимость означает невозможность вывода единого знания из другого формальным способом.
7. Ситуативность. Наличие ситуативных связей определяет совместимость тех или иных знаний, хранимых в памяти. В качестве таких связей могут выступать отношения времени, места, действия, причины и пр. Для нас важны модели представления знаний в ЭВМ. При этом основными требованиями к представлению знаний являются однородность представления, простота понимания, непротиворечивость и полнота. В существующей практике получили наибольшее распространение следующие модели знаний:
логическая;
модель, основанная на использовании правил (продукционная модель);
фреймы;
семантические сети.