210 likes | 510 Views
Модели представления знаний. Логические модели. Формальная система. M = <T, P, A, B> , где: T — счетное множество базовых символов (алфавит) П( T ); P — множество, называемое формулами П( P ); A — выделенное подмножество априори истинных формул (аксиом) П( А );
E N D
Модели представления знаний Логические модели
Формальная система • M = <T, P, A, B> , где: • T— счетное множество базовых символов (алфавит) П(T); • P — множество, называемое формулами П(P); • A— выделенное подмножество априори истинных формул (аксиом) П(А); • B — конечное множество отношений между формулами, называемое правилами вывода П(B).
Префиксная формальная форма (x)F(x)P = (x)(F(x)P); (x)F(x)P = (x)(F(x)P); (x)F(x)P = (x)(F(x)P); (x)F(x)P = (x)(F(x)P). (x)F(x)(x)P(x) = (x)(F(x)P(x)), (x)F(x)( x)P(x) = (x)(F(x)P(x)). (x)F(x)(x)P(x) (x)(F(x)P(x)), (x)F(x)(x)P(x) (x)(F(x)P(x)). (x)F(x)(x)P(x) = (x)F(x)(y)P(y) = (x)(y)(F(x)P(y)), (x)F(x)(x)P(x) = (x)F(x)(y)P(y) = (x)(y)(F(x)P(y)) при условии, что переменная y не появляется в F(x).
Алгоритм, преобразующий произвольную заданную формулу в равносильную в префиксной форме Шаг1. Исключение логических связок и с помощью известных правил. Шаг 2. Продвижение связки до атома с использованием законов де Моргана. В результате выполнения этого шага получается формула, у которой знаки могут стоять только перед атомами. Шаг 3. Переименование связных переменных. Шаг 4. Вынесение кванторов с помощью формул (*)
Сколемовская нормальная формула • (y)(x)P(x,y) • «Для всех y существует некоторый x (возможно зависящий от y), такой, что P(x,y)» • (y)P(f(y),y) • (x)(y)(z)F(x, y, z) - (x)(z)F(x, f(x), z) • (x)(z)(y)F(x, y, z) - (x)(z)F(x, f(x, z),z) • (x)P(x) становится P(A)
Клаузальная форма (форма предложений) • • (x1x2) {x1,x2} • Q(A, f(g(B)))-Q(x, y)
Резолюция для основных предложений • P1P2…PN и P1Q2…QM • P1, P1
Унификация и подстановка • L(x) и L(A), где x – переменная, а A – константа • {t/x} • {t1/x1; t2/x2; …, tn/xn} • Условия, допускающие подстановку, состоят в следующем: • xiявляется переменной, а ti – термом (константа, переменная, функция), отличным от xi. • для любой пары элементов из группы подстановок в правых частях символов «/» не содержатся одинаковые переменные.
Унификатор • S – группа подстановок {t1/x1; t2/x2;…,tn/xn} • LS • S – унификатор {L1, L2, …, Lm}L1S = L2S =… LmS • Множество {L(x), L(A)} – унифицируемо, при этом унификатором является подстановка {A/x} • {L(x, y)}, L{z, f(x)} S = {x/z, f(x)/y} S' = {A/x; A/z; f(A)/y} • , что все другие унификаторы являются подстановками, выражаемыми в виде S
Резолюция в общем случае • {Li} и {Mi} • {li} - подмножество {Li} • {mi} – подмножеством {Mi} • для объединения множеств {li} и {mi} существует НОУ S
Резолюция • P(x, f(A)) P(x, f(y)) Q(y) • P(z, f(A)) Q(z) • Если {li} = {P(x, f(A))} и {mi} = {P(z,f(A))}, получаем резольвенту • P(z, f(y)) Q(z) Q(y), S = {z/x}. • При {li} = {P(x, f(A)), P(x, f(y)) и {mi} = P(z, f(A))} получаем резольвенту • Q(A) Q(z), S = {z/x, A/y}.
Опровержение на основе резолюций • S - ППФ {A1, A2, …, An} • W - ППФ, для которой требуется выяснить, является ли она теоремой • (A1 A2 … AnW) • (A1 A2… AnW) • Ci = Pi1 Pi2 … Pim • Q= C1 C2 … Ck. • {Pi1, Pi2, …, Pim}
Пример • Кто умеет читать, тот грамотный (x)(Ч(x)Г(x)) • Дельфины не грамотны (x)(Д(x) Г(x)) • Некоторые дельфины обладают интеллектом (x)(Д(x) И(x)) • Некоторые из тех, кто обладает интеллектом, не умеет читать (x)(И(x)Ч(x))
Пример 1. Ч(x) Г(x). 2. Д(y) Г(y). 3а. Д(А). 3б. И(А). 4. И(z)Ч(z). 5. Ч(A) резольвента 3б и 4. 6. Г(А) резольвента 5 и 1. 7. Д(А) резольвента 6 и 2. 8 NIL резольвента 7 и 3а.
Prolog • конъюнктивная нормальная форма (conjunctivenormalform— CNF) • полная фразовая форма (fullclausalform) и фраза Хорна (Hornclause)
Пример 1. ¬(pvq)→(-p^-q) Исходное выражение. 2. ¬¬(pvq)v(-p^-q) Исключение →. 3. (pvq)v(-p^-q) Ввод - внутрь скобок. 4. (¬pv(pvq)) ^ (¬qv(pvq)) Занесение v внутрь скобок. 5. {{-p, р, q},{¬q, р, q} }Отбрасывание ^ и v в конъюнктивной нормальной форме.
Фразовая форма • p,q←p иp,q←q • p1, …, pm← q1, …, qn, m=>0 и n=>0 • p1, ..., рm<— q1,...qnх1,..., хk, • для всех x1, ..., хkp1или ... или pmявляется истинным, если q1и ... и qnявляются истинными. • n=0 • для всех x1, ..., xkp1или ... или рmявляется истинным • m=0 • для всех x1, ..., xkне имеет значения, что q1и ... и qn являются истинными
Фразы Хорна • р<— q1,...qn. • р:- q1,...,qn. • «Для всех значений переменных в фразе p истинно, если истинны q1 и ... и qn», т.е. пара символов «:-» читается как «если», а запятые читаются как «и».