Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
часть I Искусственный интеллект.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
6.07 Mб
Скачать

3.3. Вывод в системах искусственного интеллекта с логическим представлением знаний.

3.3.1. Правило резолюции.

В 1930 году Эрбран в своей докторской диссертации по математике предложил оригинальный метод доказательства теорем в формальных системах первого порядка. Этот метод основан на теореме «О Резолюции».

Теорема О Резолюции: Пусть имеется формула F1 в стандартной форме представления

F1 = C1 ^ C2 ^ …^ (P Li) ^…^ (P Lj) ^…^ Cm

(P Li) - Дизъюнкта Хорна

Из F1 может быть получена формула F2= C1 ^ C2 ^ …^ ^…^ Cm ^ (Li Lj ), образующаяся из формулы F1 путем присоединения к ней резольвенты, оставшейся в ней от 2-х родительских предложений.

Теорема гласит: Если формула F2 противоречива, то F1 так же противоречива.

Предложения Сi = (P Li) и Сj =(P Lj) являются родительскими по отношению к предложению С = Li Lj (резольвенты).

Сi ^ Сj = (P Li) ^ (P Lj) = (P P) ^ (Li Lj) = (Li Lj ), Так как

Предположения:

F1 = C1 ^ C2 ^ …^ (P Li) ^ (P Lj) ^…^ Cm = F2= C1 ^ C2 ^ …^ …^ Cm ^ (Li Lj )

И если (Li Lj ) = 0- пустая резольвента, то F2=0 и следовательно F1= 0.

Резольвента – результат выполнения операции конъюнкции двух родительских предложений, имеющих вид дизъюнкта Хорна. В одной операции стоит логическое предложение, а в другой - обязательно его отрицание.

Пустая резольвента – дизъюнкция, слагаемые которой являются 0.

Доказательство противоречивости F2 сводится к методической резолюции, заключающейся в поиске пустой резольвенты. Если это происходит, то и F1 тоже противоречиво.

Робинсон пришёл к заключению, что правила вывода, которые следует применять при автоматизации процесса доказательства, не обязательно должны совпадать с правилами вывода, используемыми человеком. Он обнаружил, что общепринятые правила вывода, например, правило modus ponens (раздел 2.2.2. таблица 1 правило 1), специально сделаны “слабыми”, чтобы человек мог интуитивно проследить за каждым шагом процедуры доказательства. Робинсон открыл более сильное правило вывода, которое он назвал резолюцией (или правилом резолюции).

Это правило трудно поддаётся восприятию человека, но эффективно реализуется на компьютере. Правило резолюции сходно с правилом modus tollendo ponens (раздел 2.2.2.,таблица 1, правило 4). Правило резолюции действует следующим образом. Две дизъюнкты Хорна могут быть резольвированы (сопоставимы) друг с другом, если одна из них содержит позитивную элементарную формулу а другая - соответствующую негативную элементарную формулу с одним и тем же обозначением предиката и одинаковым количеством аргументов, и если аргументы обоих элементарных формул могут быть унифицированы (согласованы) друг с другом. Такие два дизъюнкта называются родительскими дизъюнктами. Если в качестве аргумента предиката элементарной формулы выступает переменная, то она унифицируема с любой константой.

Если в резольвируемых дизъюнктах Хорна переменная встречается более одного раза и эта переменная в процессе резолюции унифицируется с константой, то резольвента будет содержать данную константу на тех местах, где рассматриваемая переменная располагалась в элементарных формулах исходных дизъюнкт. В результате этого получится новая дизъюнкта Хорна, называемая резольвентой и являющаяся новой аксиомой теории. Если при резолюции двух дизъюнкт, входящих в состав теории, получается пустой дизъюнкт, то эта теория противоречива.

Примеры:

1. Рассмотрим теорию, состоящую из двух дизъюнкт:

ab,c 

b,cb,c 

Поскольку в дизъюнкте содержится негативная элементарная формулаb, c, в дизъюнкте - соответствующая позитивная элементарная формула b, c и аргументы обоих предикатов могут быть унифицированы, то дизъюнкт  может быть резольвирован с дизъюнктом . Дизъюнкты  и  являются родительскими дизъюнктами. В результате этого получается дизъюнкт  - резольвента, который становится новой аксиомой теории:

ab,c 

После выполнения данной резолюции при последующих резолюциях можно воспользоваться любой из дизъюнкт ,  и .

2. Рассмотрим теорию, состоящую из двух дизъюнкт:

ab,c 

с,cb,c 

Дизъюнкты  и  не резольвируются друг с другом, т.к. аргументы предиката  не поддаются унификации.

3. Рассмотрим теорию, состоящую из двух дизъюнкт:

ac,b 

x,yx,y 

Для того, чтобы эти дизъюнкты резольвировали необходимо унифицировать переменные т.е. во всех предикатах “x” заменить на “c”, а “y” заменить на “b”. В результате этого получается новый дизъюнкт , в котором переменные, служившие аргументами в предикате , теперь заменены на константы.

ac,b 

4. Рассмотрим две элементарные формулы, которые после многократных резолюций вошли в теорию и приняли следующий вид:

b,c 

b,c 

Так как теория представляет из себя систему аксиом, связанных знаком “конъюнкция”, то  и  представляет из себя следующее выражение: b,cb,c, которое всегда ложно и следовательно эта теория противоречива. Если дизъюнкты  и  резольвируются друг с другом, то получающаяся

резольвента называется пустым дизъюнктом. Таким образом вывод пустой дизъюнкты свидетельствует о пртиворечивости данной теории.

Алгоритм, позволяющий автоматизировать процесс доказательства теорем на основе правила резолюции, состоит из следующих шагов:

1. Добавление к системе аксиом дизъюнкта, являющегося отрицанием доказуемой теоремы.

2. Поиск среди дизъюнкт (аксиом) теории для добавленной дизъюнкты резольвируемой с ней второй родительской дизъюнкты.

3.Унификация переменных.

4.Выполнение правила резолюции и формирование резольвенты.

5.Если резольвента пустая, то теорема доказана и окончание работы алгоритма, если нет - присоединение резольвенты в виде новой дизъюнкты к существующей системе дизъюнкт (аксиом) теории и переход к шагу 2.

Пример: Пусть имеется некоторая теория, состоящая из следующих аксиом (дизъюнкт):

aa,b 

x,yx,y 

b 

a,b 

Необходимо доказать, что утверждение a  является следствием данной теории.

Доказательство проведём в соответствии с предложенным алгоритмом.

Шаг 1. Добавим отрицание доказуемого утверждения к системе аксиом теории и получим новую систему аксиом:

aa,b 

x,yx,y 

b 

a,b 

a 

Шаг 2. Дизъюнкты  и  являются родительскими.

Шаг 3. У родительских дизъюнкт аргументы унифицированы.

Шаг 4. Выполняя правило резолюции, получаем следующую резольвенту:a,b .

Шаг 5. Резольвента не пустая, следовательно, присоединяем её к существующей системе аксиом, получаем новый набор аксиом и переходим к шагу 2.

aa,b 

x,yx,y 

b 

a,b 

a 

a,b 

Шаг 2. Две резольвенты  и  являются родительскими.

Шаг 3. Проводя унификацию переменных в родительских дизъюнктах, получим следующую систему аксиом:

aa,b 

a,ba,b 

b 

a,b 

a 

a,b 

Шаг 4. Выполняя правило резолюции, получим следующую резольвенту:a,b 

Шаг 5. Резольвента не пустая, следовательно присоединяем её к существующей системе аксиом, получаем новый набор аксиом и переходим к шагу 2.

aa,b 

x,yx,y 

b 

a,b 

a 

a,b 

a,b 

Шаг 2. Две резольвенты  и  являются родительскими.

Шаг 3. У родительских дизъюнкт аргументы унифицированы.

Шаг 4. Выполняя правило резолюции, получаем пустую резольвенту.

Шаг 5. Резольвента пустая, следовательно утверждение доказано и алгоритм заканчивает свою работу.

Отличия в различных алгоритмах, реализующих правило резолюции заключаются в основном в различии стратегии поиска родительских дизъюнкт.

ПРИМЕР:

F1 = C1 ^ C2 ^ C3 ^ C4

Проблема: Каким образом строить поиск пустой резольвенты.

А) C1 и C4 C5 =

Б) C2 и C3 C6 = Р

В) C5 и C6 C7 = (  0)  (Р 0) = (0  0) пустая резольвента.

Значит F1 противоречиво.

Если F1 истина, то остановкой для алгоритма является отсутствие пар родительских предложений.

В случае использования предикатов, когда аргументом может быть переменная и константа, необходимо найти такие значения переменной, при которых данная формула F1 будет противоречива. Такая подстановка (константы вместо переменных) называется унификацией.

ПРИМЕР:

x, y, z, t, v – переменные.

a, b, c – константы.

А) F1 и F4 S1 = {x / a, y / z};

Б) F2 и F4 S2= {t / b};

B) F2 и F4 S3= {t / c};

Г) F2 и F5 S4= {t / b};

Д) F2 и F8 S5= {t / с};

F9 = пусто

Проблема: Чтобы использовать «Пролог» и доказательства, необходимо сформулировать исходные аксиомы и выходное целевое выражение в виде произведения дизъюнкт Хорна.

ПРИМЕР: Пусть высказаны следующие утверждения:

  1. Кто может читать, тот грамотный.

  1. Дельфины не грамотны.

  1. Некоторые дельфины обладают интеллектом.

  1. Некоторые из тех, кто обладает интеллектом не могут читать.

Необходимо доказать.

Общее выражение имеет вид:

исправить И(Х) без отрицания.

После преобразований (исключения кванторов, введения сколемовской переменной, исключения связок импликации, введения новых переменных) получаем следующую систему предложений:

  1. а) Д (А)

б) И (А)

А – сколемовская переменная.

Отрицание утверждения, которое нужно доказать, имеет вид:

4.*

Одно из возможных доказательств создает следующую последовательность резольвент:

5. Ч(А) резольвента из 3 б) и 4*, и замена Z на A.

6. Г(А) резольвента из 5 и 1, и замена Х на A.

7. резольвента из 6 и 2, и замена У на A.

8. Пустая резольвента из 7 и 3 а).

Данный вывод можно представить в виде графа вывода. Вершины графа помечены предложениями. Когда два предложения Ci и Cj создают резольвенту rij, то мы образуем новую вершину, помеченную rij, причем ребра связаны с вершинами Ci и Cj.

Ci и Cj - Родители для rij

rij - является потомком Ci и Cj

Опровержение на основе резолюций может быть представлено деревом опровержения, корневая вершина которого помечена предложением NIL.

Рис.12. Стратегии поиска родительских предложений