- •Компьютерные технологии в науке и образовании
- •Часть 1 Базы знаний
- •Содержание
- •Лекция 1
- •1.1 Основы построения систем основанных на знаниях (соз).
- •1.1.1 Общие сведения о соз
- •1.1.2. Пример независимости знаний и процедур их обработки
- •1.1.3 Понятие знаний, фактов и правил
- •Лекция 2
- •1.2 Экспертные системы и необходимые условия представления знаний.
- •1.2.1. Назначения эс и основные требования к ним
- •1.2.2. Упрощенная структура эс
- •1.2.3. База знаний как элемент экспертной системы
- •1.2.4. Необходимые условия представления знаний
- •Лекция 3 Лекция 3
- •1.3 Приобретение и формализация знаний.
- •1.3.1. Формализация задачи
- •1.3.2. Представление знаний в виде «дерева решений»
- •Лекция 4
- •1.4 Представление знаний с использованием логики предикатов.
- •1.4.1. Логические модели и логическое программирование
- •1.4.2. Простейшие конструкции языка предикатов
- •1.4.3. Предикатные формулы
- •Является (ласточка, птица) ← имеет (ласточка, крылья),
- •("X) [человек (х) ¬ смертен]
- •1.4.5. Логический вывод
- •1.4.5.1. Правило резолюции для простых предложений
- •1.4.5.2. Правило резолюции для сложных предложений
- •1.4.5.3. Простая резолюция сверху вниз
- •S: ù получает (студент, стипендию)
- •Для всех у студент не получает у
- •1.4.5.6. Решение задач и извлечение ответа.
- •D1: ù факториал (3, z)
- •Лекция 5
- •1.5 Семантические сети.
- •1.5.1. Описание иерархической структуры понятий и диаграмма представления
- •«Человек» is - a «млекопитающее»
- •«Все ласточки – птицы»
- •«Ласта – ласточка» «ласточка – птица»
- •«Ласта – птица»
- •1.5.2. Семантическая сеть как Пролог - программа
- •1.5.3. Элементы семантической сети
- •1.5.4. Представление структуры понятий семантической сетью
- •1.5.5. Представление событий семантической сетью
- •1.5.6. Получение вывода с помощью семантической сети
- •1.5.7 Пример представления знаний семантической сетью
- •Лекция 6
- •1.6.1. Системы продукции
- •Если - то (явление - реакция)
- •1.6.2. Механизм функционирования систем продукции
- •«Намерение – отдых» «место отдыха – горы»
- •«Место отдыха – горы»
- •«Использовать – джип»
- •«Дорога – ухабистая»
- •1.6.3. Обратная цепочка рассуждений в системе продукций
- •Лекция 7
- •1.7. Представление знаний с применением фреймов
- •1.7.1. Понятие фрейма и слота
- •1.7.2. Фреймовые системы и их функционирование
- •1.7.3. Обобщенная структура фрейма
- •Лекция 8
- •1.8. Стратегии поиска в системах основанных на знаниях
- •1.8.1. Поиск как основа функционирования соз
- •1.8.2. Стратегии поиска в глубину и ширину
- •1.8.3. Стратегия эвристического поиска
- •1.8.4. Формализация задач в пространстве состояний
- •1.8.5. Представление пространства состояний в виде базы знаний
- •После (х,y)
- •После (X,y,s)
- •Цель(состояние):-принадлежит([a,b,c],Состояние)
- •Лекция 9
- •1.9. Нечеткие множества в системах основанных на знаниях
- •1.9.1. Основные понятия и определения
- •1.9.2. Арифметические операции над нечеткими переменными
- •1.9.3. Операции нечеткой фильтрации и выбора
S: ù получает (студент, стипендию)
и система должна отвергнуть это отрицание при помощи других предложений, демонстрируя, что данное допущение ведет к противоречию.
Этот подход часто применяется в математике и называется доказательством от противного.
Теперь представим себе, что исходная логическая модель, составленная из трех предложений S1, S2,S3поступает на вход системы логического вывода ЭВМ.
ШАГ 1
Система на первом шаге применит правило (*) к родительским предложениям S1и S2и получит резольвенту:
S: ù сдает (успешно, сессию, студент)
ШАГ 2
Используя правило (**) к S и S3система выводит противоречие:
S`:
Таким образом, для доказательства противоречивости S1S2S3оказалось достаточно двух шагов вывода.
Если считать, что S2и S3не противоречат друг другу, то они совместно противоречат S1, т. е.
подтверждают отрицание S: ù S1: ù ( ù получает (студент, стипендию))
или другими словами подтверждают предложение:
получает (студент, стипендию)
и ответом на исходную задачу является «ДА».
Логический вывод, который порождает последовательность отрицаний, такую как (S1 ,S , S`) в рассмотренном примере, называетсярезолюцией сверху вниз.
1.4.5.4. Общая резолюция сверху вниз
В общем случае предикаты и ППФ в качестве термов содержат не только константы, но и переменные и функции. Рассмотрим два родительских предложения:
S1: ù получает (студент, У)
S2: получает (Х, стипендию) ¬ сдает (успешно, Z, X)
К ним непосредственно нельзя применить правило резолюции, т.к. они не содержат одинаковых предикатов в левой части импликации и в отрицании. Данные предложения содержат три переменных X, Y, Z, которые неявно универсально квантированы.
Рассмотрим первое предложение, S1, которое утверждает, что:
Для всех у студент не получает у
Причем выражение «для всех» понимается как «для всех индивидуумов из какой либо области, выбранной для интерпретации предложений». При интерпретации S1и S2по крайней мере один индивидуумУбудет связан с именем «стипендия» и поэтому непосредственным следствием S1является более конкретное предложение:
S1`: ù получает (студент, стипендию)
Аналогично рассматривается S2 на области интерпретации S1и S2и, выбирая дляХ, индивидуум с именем «студент», получаем более конкретное предложение:
S2`: получает (студент, стипендию) ¬ сдает (успешно, Z, студент)
Теперь имеем два предложения S1` и S2`, которые удовлетворяют условию применимости правила резолюции, а именно наличию одинаковых предикатов в левой части импликации и в отрицании. Поэтому резольвентой S1` и S2` будет:
S: ù сдает (успешно, Z, студент)
Предикат
получает (студент, стипендию)
называется общим примером родительских предикатов
получает (Х, стипендию)
получает (студент, У)
и получен с помощью унификаторавида
Q = { Х:= студент, У:= стипендия}
1.4.5.5. Унификаторы и примеры унификации
Унификаторомназывается множество присваиваний вида
Q= {X1:= t1, ..., Xn:= tn}
где Хi- переменная, а ti– терм, применение которых к двум выражениям дает одинаково общие примеры.
На практике унификаторы определяют сравнивая по очереди соответствующие аргументы предикатов и выписывая те присваивания термов переменным, которые сделали бы эти аргументы одинаковыми.
Рассмотрим ряд примеров унификации (таблица 4.1):
Таблица 4.1
Примеры унификации
Родительские предложения |
Унификатор |
Общий пример |
p(5), p(5) |
Q- пустое множество (не заменяется ни одна переменная) |
p(5) |
p (x), p(5) |
Q= {x:=5} |
p(x)Q= p(5)Q=p(5) |
p(x), p(y) |
Q= {x:=y} |
p(y) |
p(x, y), p(5, x) |
Q= {x:=5, y=x} = = {x:=5, y:=5} |
p(x,y)Q= p(5,x)Q= p(5,5) |
ùp(5, x) p(x, y) ← q(x) |
Q= {x:=5, y:=5} |
p(5,5) резольвента: s: ù q(x)Q = ù q(s) |