Примеры использования метода резолюций

Пример 9.7.

Предположим, что покупательная способность людей падает, если цены растут на товары и услуги. Положим также, что люди несчастны, когда их покупательная способность падает. Положим, что цены растут. Из этого можно заключить, что люди несчастны.

Применим следующие обозначения:

1. P — цены растут;

2. S — покупательная способность уменьшается;

3. U — люди несчастны.

В этом примере четыре утверждения:

Если цены растут, то покупательная способность падает;

Если покупательная способность падает, то люди несчастны;

Цены растут;

Люди несчастны.

Эти утверждения можно записать в виде следующих формул:

1. F1 : P ® S,

2. F2 : S ® U,

3. F3 : P,

4. F4 : U.

Преобразуем эти формулы в предложения:

(1) ùPÚS,

(2) ùSÚU,

(3) P,

(4) U.

Докажем путем опровержения, что U — логическое следствие из (1), (2) и (3). Отрицаем (4) и получаем следующее доказательство:

(1) ùPÚS,

(2) ùSÚU,

(3) P,

(4) ùU отрицание заключения,

(5) S резольвента (3) и (1),

(6) U резольвента (5) и (2),

(7)  резольвента (6) и (4).

 

Пример 9.8.

Допустим, что если Верховный Совет отказывается принять новые законы, то забастовка не будет закончена, если только она не длится более года и зарплата не повышается. Закончится ли забастовка, если Верховный Совет отказывается действовать и забастовка только что началась?

Применим следующие обозначения :

1. P — Верховный Совет отказывается действовать,

2. Q — забастовка заканчивается,

3. R — зарплата повышается,

4. S — забастовка длится более года.

Тогда приведенные выше утверждения можно представить следующими формулами :

 

F1 : (P ® (ùQÚ(RÙS))) — если Верховный Совет отказывается применять новые законы, то забастовка не будет закончена, если она не длится более года и зарплата не повышается,

F2 : P — Верховный Совет отказывается действовать,

F3 : ùS — забастовка только что началась.

Требуется доказать, что ùQ — логическое следствие F1ÙF2ÙF3. Отрицаем Q и преобразуем F1, F2 и F3 в предложения:

ùPÚùQÚR из F1,

ùPÚùQÚS из F1,

P из F2,

ùS из F3,

Q отрицание заключения.

Используя резолюции получим следующее доказательство :

(6) ùQÚS резольвента из (3) и (2),

(7) S резольвента из (6) и (5),

(8)  резольвента из (7) и (4).

Упражнения

9.1. Пусть истинно высказывание :

[("U)("V){R(U)®P(U,V)}]Ù[("W)("Z){Q(W,Z)®S(Z)}]ÙR(b)ÙùS(b)

Требуется преобразовать это высказывание в предложения и доказать истинность высказывания :

($X)($Y){P(X,Y)ÙùQ(X,Y)}.

9.2. В предложении A=P(X)ÚQ(Y)ÚR(Z) произвести замену

l={a/X, f(Y)/Y, X/Z}.

9.3. Рассмотрим высказывание логики предикатов :

Лошадь есть животное, поэтому голова лошади есть голова животного.

Пусть

H(X,Y) = X есть голова Y,

A(X) = X есть животное,

S(X) = X есть лошадь.

Посылка и заключение имеют вид :

("X)(S(X) ® A(X))

("X){($Y)([S(Y)ÙH(X,Y))] ® [($Z)(A(Z)ÙH(X,Z))]}

Доказать истинность заключения, используя резолюцию опровержения.

Показать все шаги преобразования заключения в дизъюнкты.

 

ГЛАВА 10. МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ

Правила продукций

Наиболее распространенным методом представления знаний являются правила продукций или продукционные правила. Идея этого метода принадлежит Э.Посту (1943 г.). Этот метод широко используется в разработке информационных систем.

Вначале правила продукций имели вид:

ЕСЛИ<условия>ТО<действие>.

Слова в угловых скобках являются посылками или утверждениями. В дальнейшем они приобрели более общую форму.

Наряду с написанной используются следующие формы:

ЕСЛИ<предшествующий>ТО<последующий>

ЕСЛИ<основание>ТО<гипотеза>

Таким образом, правило состоит из двух частей. Часть ЕСЛИ указывает “условия”, “предшествующий” или “осно­вание”, и часть ТО представляет соответственно “заключение”, “последующий” или “гипотезу”. Перечисленные элементы второй части генерируются при истинности условий первой части.

Примером правила продукции может служить следующее:

ЕСЛИ клиент работает на одном месте более двух лет

ТО клиент имеет постоянную работу.

Например, в примере, представленном выше, если клиент имеет возраст, равный или выше 18 лет, то мы имеем право заключить, что клиент имеет право претендовать на получение кредита.

Гипотетический силлогизм означает, что когда заключение одного правила является посылкой другого правила, то можно установить третье правило с посылкой из первого правила и заключением из второго. Другими словами:

условие ЕСЛИ X ТО Y

условие ЕСЛИ Y ТО Z

заключение ЕСЛИ X ТО Z

Например, на основании двух следующих правил

ЕСЛИ клиент женат

ТО имущество является совместной собственностью

и

ЕСЛИ имущество является совместным

ТО закладная на кредит может быть подписана,

мы можем заключить, что

ЕСЛИ клиент женат

ТО закладная на кредит может быть подписана.

Как мы увидели в предыдущей главе, модус поненс и гипотетический силлогизм являются двумя правилами вывода в логике.

Рассмотрим базу знаний, написанную на примере закладной для получения кредита банка под залог недвижимого имущества (ссуды). Для получения кредита клиент должен иметь постоянную работу, приемлемый доход, хороший кредитный рейтинг и приемлемое имущество (собственность).

Если клиент не имеет постоянной работы, тогда он должен иметь адекватные активы. Величина кредита не может быть больше 80 процентов стоимости его имущества и клиент должен иметь 20 процентов ценности в кассе.

Определение “постоянная работа” состоит в том, что клиент должен иметь одну и ту же работу более двух лет. Определение “адекватные активы” заключается в том, что имущество клиента должно быть оценено как десятикратная величина кредита или клиент должен иметь ликвидные активы, оцениваемые как пятикратная величина кредита. “Приемлемое имущество” - это имущество, находящееся на территории расположения банка.

Проверка кредитного рейтинга проводится вручную.

Смысл “адекватного дохода“ состоит в следующем. Если клиент одиночка, то оплата закладной должна быть менее чем 70 процентов его чистого дохода.

Если клиент женат, то оплата закладной должна быть менее чем 60 процентов чистого дохода семьи.

В продукционных правилах мы будем использовать соединители И, ИЛИ и НЕ.

1. ЕСЛИ клиент имеет постоянную работу

И клиент имеет адекватный доход

И имущество приемлемо

И клиент имеет хороший кредитный рейтинг

И величина кредита меньше 80% стоимости имущества

И клиент имеет 20% стоимости имущества в кассе

ТО одобрить кредит.

2. ЕСЛИ клиент имеет адекватные активы

И клиент имеет адекватный доход

И имущество приемлемо

И клиент имеет хороший кредитный рейтинг

И величина кредита меньше 80% стоимости имущества

И клиент имеет 20% стоимости имущества в кассе

ТО одобрить кредит.

Аналогичным образом записываются по следующие правила.

Представим изложенные знания с помощью исчисления предикатов первого порядка. Условимся обозначать строчными буквами переменные, а прописными - компоненты. То есть X, Y, Z, V, U - переменные, а постоянная, хороший, адекватный и 0,8 - константы.

(1)("X)("Y)("Z)("V)("U)работа(Х,постоянная)Ùсобственность(У,приемлема)Ùзаем(Z)Ùстоимость_собственности(V)Ùкредит(Х, хороший)Ùдоход(Х, адекватный)Ù
меньше(Z,f(V,0.80))Ùналичные(X,U)Ùбольше(U, f(V, 0.20))®выдать(X, Y, Z)

Заметим, что домен Х составляет собственников, Y - собственников заема, Z - величину заема, V - стоимость собственности и U - наличные активы. Более того, второй аргумент предиката работа может быть постоянная и непостоянная. Аналогично, второй аргумент в предикате кредит может принимать значения хороший или плохой, и собственно доход - адекватный и неадекватный. В предикате меньше функция f определяет 80% стоимости собственности V. Аналогично, в предикате больше второй аргумент предназначен для вычисления 20% стоимости собственности. Функция f в этих двух предикатах записываются следующим образом:

f(V, 0.80)=V*0.80

f(V, 0.20)=V*0.20

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

(2)("X)("Y)("Z)("V)("U)активы(Х,адекватны)Ùсобственность(Y,приемлема)Ù

заем(Z)Ùстоимость_собственности(V)Ùкредит(Х,хороший)Ùдоход(Х, адекватный)Ù
меньше(Z,f(V,0.80))Ùналичные(X,U)Ùбольше(U,f(V,0.20))®выдать(X,Y,Z),
где домены переменных такие же как и в (1).

(3)("X)("Y)имеет_работа(Х)Ùколчество_лет_работы(Y)Ùбольше(Y,2))®работу(X, постоянную).

Здесь Y - количество лет работы клиента. Заметим, что мы использовали Y, как число лет в (3) и как заложенную собственность в (1) и (2). Это объясняется тем, что переменные локальны внутри предиката.

(4)("Y)член(Y,список_зоны)Ùчлен(Y,исключенный)®собственность(Y,адекватна).

В (4) предикат член означает либо собственность клиента находится в списке зоны действия банка, либо в исключительном списке.

(5) ("X)доход_семьи(Х, адекватный)Úдоход_холостяка(Х, адекватный)®
доход(Х, адекватный).

Здесь вторые аргументы предикатов доход_семьи и доход_холостяка имеют значения адекватный и неадекватный.

(6)("X)("M)("N)("Z)женат(Х)Ùчистый_доход(Х,N)Ùоплата_заема(Х,Z,M)Ùменьше(M,f(N,0.60))®доход_семьи(Х, адекватный), где домен N - есть чистый доход семьи Х, и домен М - оплата заема. Функция f имеет тот же смысл, что и раньше.

(7) ("X)("V)("Z)("U)заем(Z)Ù(имеет_соответствие(X, Y)Ùбольше(V, f(Z, 10)))Ú(имеет_ликвидные(X, U)Ùбольше(U, f(Z, 5)))®активы(Х, адекватны),

где домен V стоимость активов собственности, домен U - стоимость ликвидных активов и домен Z есть величина заема.

Рассмотрим процесс вывода знаний на базе простейшей продукции А®В, смысл, который состоит в замене знания А на знание В. Для актуализации этой продукции необходимо, чтобы в БЗ существовало знание А, т.е. при поиске по аналогии роль образца играет знание А.

Предположим, что продукции (знания) представлены в виде сети. Поиск БЗ можно осуществить различными способами. Можно, например сначала искать вершину со знанием А и, если такой нет, то поиск по абзацу заканчивается неудачей. Если вершина с А имеется в сети, то осуществляется поиск всех дуг с отношением R(A,B). Если таких дуг нет, то поиск заканчивается неудачей. Но если такие дуги имеются, то происходит переход во все вершины сети, связанные отношением R(A,B), т.е. возникнет параллельный процесс поиска. Из достигнутых вершин процесс продолжается аналогично.

Существуют два типа выполнения систем продукции: прямой и обратный. В первом случае поиск идет от левых частей продукции, т.е. проверяется условие А и актуализируются те продукции, для которых А имеет место; во второй - от изначально заданных В, по которым отыскиваются необходимое для установления истинности В значение А. Два этих метода называют восходящим и нисходящим методами реализации системы продукций.

Термин "продукция" принадлежит американскому логику Э.Посту. В качестве продукции Пост понимал запись "ЕСЛИ А ТО В", которая трактовалась как оператор замены цепочки A цепочкой В в некотором входном слове. Те есть под продукцией понимались подстановки, которые использовались в дальнейшем при описании различных уточнений понятия алгоритма. Идея продукционных правил используется в языках логического программирования (Пролог) и в современных СУБД.

Популярность продукционных правил объясняется несколькими причинами.

1. Большинство человеческих знаний можно представить в виде правил продукций.

2. Модульность продукции позволяет добавлять в систему новые продукции без изменения прежних.

3. Продукции могут реализовать любые алгоритмы и, следовательно, любые процедурные знания.

4. Параллелизм и асинхронность продукций делают их удобной моделью вычислений, отвечающей подобным требованиям новых поколений ЭВМ.

Недостаток продукций состоит в том, что при их большом количестве становится трудоемкой проверка непротиворечивости системы продукций, например, при добавлении новых правил.

Для продукции отсутствует строгая теория, пока здесь царит эвристика. При описании предметной области с помощью продукции трудно доказать ее полноту и непротиворечивость. Трудности создания теории связаны с расплывчатостью понятия продукции, а именно его ядра А®В, а также в различных способах управления системой продукции. Алгоритмическая схема мало что дает, так как исключается основное средство продукционных систем - модульность и параллельность выполнения продукции в системе продукционных правил, что вероятно, появится с созданием теории эффективных параллельных информационных процессов.

 

Таблицы принятия решений

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

Идея таблиц решений заключается в использовании их в качестве декларативного представления алгоритмов в постановках задач и одновременно в качестве средства программирования на исходном языке, т.е. чтобы этап алгоритмизации задачи являлся одновременно и этапом программирования. Постановка задачи с использованием таблиц является четкой и недвусмысленной.

Рассмотрим таблицу решений (табл. 10.1), которая является алгоритмом проектирования элементарного технологического процесса для цилиндрических поверхностей вращения применительно к условиям некоторого завода. В зависимости от характеристик поверхности: класса точности, класса чистоты, вида термообработки и несоосности выбирается соответствующий этим характеристикам план ее обработки, т.е. операции то­кар­ная, шлифовальная и т.п. Таблица разделяется двойной горизон­тальной линией на область условий и область действий. Двой­ной вертикальной линией таблица также разделяется на две части: в левой части находится колонка с названием “операнд” и символы операций. Справа от двойной линии размещаются колонки правила, которые содержат правые части отношений и опе­ранды операторов (в примере - метки оператора перехода). Полученную таблицу называют таблицей принятия решений (ТР).

Таблица 10.1. Таблица принятия решений

Операнд 1 Оп
Класс - точности ³
Класс - чистоты £
Вид-термообработки = - 01, 03, - 01, -
Несоосность ³ 0,1 0,02 0,01 0,01 - -
Перейти к   П1 П2 П3 П4 П5 П6

Таблица интерпретируется следующим образом:

ЕСЛИ класс - точности >= 4

И класс - чистоты <= 6

И несоосносность >= 0.01

ТО операция 1 := токарная.

ЕСЛИ класс - точности >= 2

И класс - чистоты <= 8

И вид - термообработки 01 ИЛИ 02

И несоосносность >= 0.02

ТО операция 1:= токарная, операция 2:= шлифовальная.

Нетрудно заметить, что столбцы таблицы являются продукционными правилами.

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

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

По типу элементов в клетках ТР могут быть таблицами с ограниченными, расширенными и смешанными элементами.

В таблице с ограниченными элементами (табл. 10.2) формулировки условий являются законченными и включают переменную и значение условного выражения. Для записи элементов условий используются три символа:

ДА (условие истинно для правила);

НЕТ (условие ложно для правила);

“-“ (правило не зависит от условий).

 

 

Таблица 10.2. Группировка деталей

Вес <30 НЕТ ДА - -
Диаметр > 5 НЕТ НЕТ ДА -
Партия > 20 - НЕТ ДА НЕТ
Записать в список

 

Действия могут быть обозначены символами “X” (выполнить действие, указанное слева от двойной линии) или “-“ (не выполнить). Таблица смешанного вида (табл. 10.3) включает правила, в которых сочетаются как ограниченные, так и расширенные элементы. Однако каждая строка таблицы должна содержать элементы только одного вида. Например, в таблице 10.3 первая строка области условий содержит справа от двойной линии правые части отношений, которые в общем случае могут быть арифметическими или текстовыми выражениями. Вторая и третья строки области условий включают элементы ограниченного вида, т.е. логические значения ДА (истина) и НЕТ (ложь), и элемент, не влияющий на выбор решения.

 

Таблица10.3. Выбор операции обработки детали

Класс чистоты £ -
Наличие термообработки = - НЕТ ДА - -
Наличие хромирования = - НЕТ НЕТ НЕТ -
Операция := ОП1 ОП2 ОП3 ОП4 ОП5

 

Формат таблицы решений. ТР имеет заголовок, который записывается в первой строке и содержит графы ТАБЛИЦА, НОМЕР, РАЗМЕР, ИНАЧЕ, СЛЕДУЮЩАЯ. Графы разделяются вертикальными линиями. В графу ТАБЛИЦА записывается полное название таблицы и различные пояснения к ней. В графе НОМЕР указывается краткая идентификация таблицы или ее номер, например 12;ТОК:2;НОРМА. В графе РАЗМЕР записывается число строк и колонок таблицы, например 40Х20;7Х12. Графа ИНАЧЕ не заполняется, если будет выбрано хотя бы одно решение. Она служит для прекращения просмотра таблицы или указывает программе на дальнейшее действие. При этом проверяется логическая непротиворечивость входов условий и элементов таблицы. Если при заданном наборе данных не выбирается ни одно из решений, номер в этой графе указывает переход на следующую таблицу. Графа СЛЕДУЮЩАЯ заполняется в том случае, если большинство правил содержит указание перехода только в одной таблице. Это исключает необходимость писать оператор перехода на таблицу в каждом правиле. Если в правиле есть действие ПЕРЕЙТИ (номер таблицы), переход осуществляется к этой таблице, а не к таблице, номер которой указан в графе СЛЕДУЮЩАЯ.

Операторы таблиц принятия решений. Основными операторами, которые применяются в ТР, являются ПРИСВОИТЬ, ВЫЧИСЛИТЬ, ВЫПОЛНИТЬ.

Оператор ПРИСВОИТЬ указывает, что результат, полученный после выполнения действий, заданных в данной клетке, должен быть присвоен величине, приведенной в первой колонке.

Оператор ВЫЧИСЛИТЬ обеспечивает вычисление выражения, заданного в соответствующей клетке таблицы, и присваивает вычисленное значение величине, указанной в первой колонке.

Оператор ВЫПОЛНИТЬ обеспечивает выполнение обработки данных или арифметических выражений, указанных меткой, стоящей в клетке таблицы.

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

Семантические сети

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

Семантическая сеть состоит из множества концептуальных графов. Концептуальный граф соответствует некоторой логической формуле, имена и аргументы предикатов которой изображается двумя типами узлов. Прямоугольники соответствуют аргументам, а круги - именам предикатов. Круг соединяется стрелкой с прямоугольником, если они соответствуют имени и аргументу некоторого предиката. Таким образом, прямоугольники используются для представления аргументов, событий и состояний. А круги для увязывания этих понятий. Проиллюстрируем эти понятия на примере.

Рис. 10.1. Концептуальный граф

Пример

Логическая формула “Поставка(Интег­рал,Луч,Схе­ма_14)” формализует фразу “Завод Интеграл поставляет Схему_14 фирме Луч”. На рис. 10.1 изображен концептуальный граф для этой логической формулы. Упомянутую выше фразу можно формализовать с помощью бинарных предикатов:

Поставщик(Поставка_8, Интеграл)^

Потребитель(Поставка_8,Луч)^

Объект(Поставка_8,Схема_14)^

Элем(Поставка_8,поставки).

Концептуальный граф для этой логической формулы представлен на (рис. 10.2). Концептуальный граф n-арного предиката изображается следующим образом. Стрелка, соответствующая n-му аргументу, направлена от круга, представляющего имя предиката, к прямоугольнику, отображающему этот аргумент. Остальные прямоугольники, соответствующие первым n-1 аргументам, соединяются стрелками с кругом. Стрелки помечены номерами от 1 до n (или именами), чтобы показать соответствие между стрелкой и аргументом. Стрелки в таком графе направлены от первого аргумента к имени предиката и от имени предиката ко второму аргументу. Термины “имя предиката” и “аргумент”, представляющие соответственно функцию и концепт, часто называют “связывающий узел” и “узел-концепт” в графическом представлении.

Рис. 10.2. Концептуальный граф логического представления бинарными предикатами

Начало разработки семантических сетей относится к 1960г., когда они использовались для моделирования обработки естественного языка. Так, Мастерман с помощью семантических сетей разработал 100 базовых понятий для моделирования словаря в 15000 слов.

Семантической сетью называют направленный граф с помеченными вершинами и дугами, в котором вершинам соответствуют конкретные объекты, а дугам семантические отношения между ними. Имена вершин определяют объекты из некоторой объектной области, например, станок, робокар, деталь и т.д. Метки дуг обозначают элементы множества отношений.

В качестве примера семантической сети рассмотрим представление знаний, содержащихся в следующем предложении: "Заготовка обрабатывается на станке, после чего получается деталь, которую робот помещает в кассету; эту кассету погрузчик грузит, робокар отвозит на склад, а штабеллер помещает в ячейку". Факты обозначим кружком, понятия — прямоугольником, дуги пометим наименованиями отношений (рис. 10.3).

 

Рис. 10.3.Пример семантической сети

 

Семантические сети – это классический метод ИИ, используемый для представления пропозиционной информации. Семантическую сеть иногда называют пропозиционной сетью. Как обсуждалось ранее, предложение – это утверждение истинное или ложное, например, “все собаки млекопитающие” и “у треугольника 3 стороны”. Предложение – это образец декларативного знания, поскольку оно констатирует факты. Оно всегда либо истинно, либо ложно.

Структура СС графически изображена в виде узлов и векторов, соединяющих их. Узлы обычно рассматриваются как объекты, а вектора как соединения или ограничения.

Соединения в СС нужны для выражения отношений. Узлы в основном используются для представления физических лиц, ситуаций или понятий. На рис 10.4 показана СС в виде прямолинейного графика, где линии указывают на родственные связи между членами семьи. Отношения в СС обеспечивают основу при систематизации знаний. Без отношений между объектами знание – это просто собрание бессвязных фактов. А при наличии отношений, знание выглядит как единая система, которая может быть следствием других сведений.

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

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

На СС часто используются соединений ISA (IS-A - это есть) и AKO (A-KIND-OF- в виде). Рис. 10.5 является примером СС с использованием этих соединений. Пометка на рисунке означает, что объекты, принадлежащие к классу, связаны между собой определенными отношениями. Например, возьмем ряд объектов: 3, яйца, синий, шины, искусство.

Элементы этого множества не имеют отношений между собой. Напротив, классы самолетов, поездов и автомобилей связаны, так как они представляют виды транспорта.

Соединение AKO используется для указания одного класса с другим. Мы не пользуемся АКО, чтобы установить отношения между определенными людьми, так как этой функцией обладает ISA. А АКО связывает классы детей и родителей.

 
 
Сестра   Алла Сергей Люда Виктор   жена муж жена муж     мать отец мать отец     Лиза Леша     кузены  

 


Рис.3.6. Семантическая сеть «Семейные связи»

 

 

                       
   
 
   
 
   
 
     
 

 


Рис. 10.4. Семантическая сеть представления семейных отношений

 

Общий класс, который соединяется с другими посредством АКО, называется высшим классом. Если от высшего класса соединяющая АКО направлена к следующему узлу, то этот класс будет уже подчиняться новому суперклассу. Другой способ выражения отношений, это когда соединение АКО направлено от подкласса к классу.

Предметы в классе имеют один или более общих признаков. Каждый признак имеет смысловое значение. При сочетании признака и значения получаем свойство. Например, автомобиль имеет признаки: размер, цвет, мощность, вес и т.п. Значение признака фигуры эллипсоидное.

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

Рассмотрим более широкое определение семантической сети. Пусть задано конечное множество атрибутов A={A1,...,An} и конечное множество отношений R= {R1,...,Rm}. Схемой, или интенсионалом, отношения R называют набор пар INT(Ri)={...[Aj,DOM(Aj)],...}, где Riимя отношения; DOM(Aj) домен Aj, т.е. множество значений атрибута Aj отношения Ri.

Объединение всех доменов называют базовым множеством модели, или множеством объектов, на которых задаются отношения Ri. Экстенсионалом отношения Ri называют множество EXT(Ri)={F1,...,Fp}, где Fr,r = 1,..,p, - факт отношения Ri. Факт задается совокупностью пар вида атрибут-значение, называемых атрибутивными парами. Под фактом понимают конкретное содержание отношения между объектами. Факт - это подграф семантической сети, имеющий звездообразную структуру. Корень подграфа - вершина предикативного типа, помеченная уникальной меткой, включающая имя соответствующего отношения.

Объекты и отношения. В семантических сетях используются четыре основных типа объектов: понятия, события, свойства и значения. Понятия представляют собой сведения об абстрактных или физических объектах предметной области. Они могут быть заданы множеством доменов (параметров или констант).

События - это действия, которые могут перевести предметную область из текущего состояния в некоторое новое. Можно перевести предметную область в определенное желаемое (целевое) состояние, поставить задачу, отыскать на семантической сети путь событий, приводящих к целевому состоянию.

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

Значения - это значения из какого-нибудь множества, которые могут принимать свойства.

На рис. 10.5 представлен пример семантической сети для моделирования закладной под кредит.

Рис. 10.5. Семантическая сеть для моделирования закладной под кредит

 

Трудности, возникающие с семантическими сетями. Хотя семантические сети могут быть очень полезны в представлении знаний, они имеют ограничения, такие как отсутствие стандартов наименований направленных линий. Дополнительной проблемой является наименование узлов. Если узел помечен “кафедра”, например:

Специальная кафедра

Класс всех кафедр

Понятие кафедры

Субъект, являющийся заведующим кафедрой

или какая-то другая кафедра?

Для представления определённого знанияв СС должны быть строго определены имена направленных линий и узлов. Естественно, такие же проблемы могут возникать и в языках программирования.

Другая проблема – стремительный рост числа просматриваемых узлов, особенно если ответ на запрос отрицательный. Вот почему для того, чтобы получить отрицательный результат на запрос, многие или все направленные линии сети должны быть найдены. Число просматриваемых направленных линий равно факториалу числа узлов минус один, если они связаны. Хотя не все утверждения будут требовать область связности, возможность стремительного роста возникает.

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

Семантические сети неадекватны логическому представлению, поскольку они не могут определить знание так же как логика. Логическое представление может точно установить определённую кафедру, несколько кафедр, все кафедры. Другая проблема заключается в том, что семантические сети эвристически неадекватны потому, что невозможно вставить эвристическую информацию в сеть, чтобы рационально просмотреть её. Эвристический метод– это метод просмотра, который может помочь в поиске решения, но нет таких гарантий для нахождения решения, какие даёт алгоритм. Эвристика очень важна в ИИ потому, что типичные проблемы ИИ так сложны, что алгоритмическое решение невозможно или непригодно для практического применения.