Файл: Могилев А.В. Информатика.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 31.03.2021

Просмотров: 6606

Скачиваний: 50

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

 

86 

 

 

 

Фрейм: человек 

Класс 

Животное 

Структурный элемент 

Голова, шея, руки, ноги,... 

Рост 

30-220 см 

Масса 

1 - 200 кг 

Хвост 

Нет 

Фрейм аналогии 

Обезьяна 

 

Существуют и другие, менее распространенные подходы к представлению знаний в интел-

лектуальных системах, в том числе гибридные, на основе уже описанных подходов. 

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

единицы своего уникального имени, по которому система находит ее для ответа на запросы, в ко-
торых это имя упомянуто. 

2. Структурированность. Информационные единицы должны обладать гибкой структурой, 

для  них  должен  выполняться  «принцип  матрешки»,  т.е.  вложенности  одних  информационных 
единиц в другие, должна существовать возможность установления соотношений типа «часть - це-
лое», «род - вид», «элемент - класс» между отдельными информационными единицами. 

3.  Связность.  Должна  быть  предусмотрена  возможность  установления  связей  различного 

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

4.  Семантическая  метрика.  Позволяет  устанавливать  ситуационную  близость  информаци-

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

5. Активность. Выполнение действий в интеллектуальной системе должно инициироваться 

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

 

12.3. МОДЕЛИРОВАНИЕ РАССУЖДЕНИЙ 

 

Рассуждение

 - один из важнейших видов мыслительной деятельности человека, в результа-

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

Предикат - это конструкция вида P(

t

1

t

2

, ...,

 

t

n

), выражающая какую-то связь между некото-

рыми  объектами  или  свойствами  объектов.  Обозначение  этой  связи  или  свойства, 

Р,

  называют 

«предикатным символом»; 

t

1

,

 

t

2

, .... 

t

n

 обозначают объекты, связанные свойством (предикатом) 

Р

 и 

называют термами. 

Термы могут быть только трех следующих типов: 
1) константа (обозначает индивидуальный объект или понятие); 
2) переменная (обозначает в разное время различные объекты); 
3) составной терм – функция 

f(t

1

, t

2

, … t

n

)

, имеющая в качестве своих аргументов 

m

 термов 

t

1

, t

2

, … t

m

 

Примеры.

 

1. Предложение «Волга впадает в Каспийское море» можно записать в виде предиката 
 

впадает (Волга, Каспийское море). 


background image

 

87 

 
«Впадает»  -  предикатный  символ;  «Волга»  и  «Каспийское  море»  -  термы-константы.  Мы 

могли обозначить отношение «впадает» и объекты «Волга» и «Каспийское море» символами. 

Вместо термов-констант можно рассматривать переменные: 
 

впадает (Х, Каспийское море) 

 

или 

 

впадает 

(X,Y). 

 

Это тоже предикаты. 
2.  Отношение 

х

  +  1  < 

у

  можно  записать  в  виде  предиката 

А(х,у).

  Предикатный  символ 

А

 

здесь обозначает то, что останется от 

x

 + 1 < 

у

, если выбросить из этой записи переменные 

х

 и 

у.

 

Итак, предикат - это логическая функция, принимающая значения «истина» или «ложь» в 

зависимости от значений своих аргументов. Количество аргументов 

у 

предиката называют его

 ар-

ностью.

 

Так,  для  наших  примеров  предикат  «впадает»  имеет  арность  2  и  при 

Х  =

  «Волга»,  а 

Y

  = 

«Каспийское море» истинен, а при 

Х

 = «Дон», 

Y

 = «Бискайский залив» ложен. Предикат 

А

 в при-

мере 2 также имеет арность 2, истинен при 

Х

 = 1, 

Y

 = 3 и ложен при 

X

=3, 

Y

=1. 

Предикаты могут быть объединены в  формулы с помощью логических связок (союзов):  ^ 

(«и»,  конъюнкция),  v  («или»,  дизъюнкция),  ~  («не»,  отрицание),  →  («следует»,  импликация),  ↔ 
(«тогда, и только тогда, когда», эквиваленция). 

Ниже приведены таблицы истинности этих союзов, позволяющие определить, истинно или 

ложно значение формулы-связки при различных значениях, входящих в нее предикатов 

A

 

и

 

В.

 

Математически строго формулы логики предикатов определяются рекурсивно: 
1) предикат есть формула; 
2) если 

А

 и 

В -

 формулы, то 

А, А^В,А

v

В, А

B

А↔В -

 тоже формулы; 

3) других формул не бывает. 
Многие  формулы  логики  предикатов  требуют  использования

  кванторов,

  определяющих 

область значений переменных - аргументов предикатов. Используются кванторы общности (пере-
вернутое А от английского «All» - все) и квантор существования - (перевернутое Е от английского 
«Exists» - «существует»). Запись 

x

 читается «для любого 

х»,

 «для каждого 

х»; 

х -

 «существует 

х»,

 «хотя бы для одного 

х».

 Кванторы связывают переменные предикатов, на которые они дейст-

вуют, и превращают предикаты в высказывания. 

 

Таблица 1.12 Истинность связок предикатов (И - истина, Л - ложь) 

 

А 

В 

А^В 

AvB 

~А 

А→В 

А↔В 

И 
И 
Л 
Л 

И 
Л 
И 
Л 

И 
Л 
Л 
Л 

И 
И 
И 
Л 

Л 
Л 
И 
И 
 

И 
Л 
И 
И 

И 
Л 
Л 
И 

 

Пример. 
Введем обозначения: 

А(х) -

 студент 

х

  учится отлично; 

В(х) -

 студент 

х

  получает повышен-

ную стипендию. Теперь формула 

А

  (Иванов)  → 

В

  (Иванов)  означает:  студент  Иванов  учится  от-

лично, следовательно, студент Иванов получает повышенную стипендию, а формула с квантором 
общности  (Vx) 

(A(x)  —>  В(х))

  означает:  каждый  студент,  который  учится  отлично,  получает  по-

вышенную стипендию. 

Из всевозможных формул нам потребуется только один их вид, называемый 

фразами Хор-

на.

 Фразы Хорна содержат в общем случае импликацию и конъюнкцию предикатов 

А, В1, В2,. . . , 

Вп

 следующим образом: 

В1, В2,.

 . . 

Вп

 → 

А,

 или в более удобных обозначениях: 


background image

 

88 

 

А:-В1, В2,...Вn 

 

(читается: 

А

 если 

B1

 и 

В2

 и ... и 

Вп).

 

Очевидно, фраза Хорна является формой записи некоего правила, и в дальнейшем будет на-

зываться  правилом.  Предикат 

А

  называется  заголовком  или  головой  правила,  а  предикаты 

В1, 

В2,... ,Вп-

 его подцелями. 

Очевидно, что отдельный предикат является частным случаем фразы Хорна: 

А.

 

Другой частный случай фразы Хорна - правило без головы 

 
:-В1, В2,...,Вп,  
 

или 

 

:-В. 

 
Такая фраза Хорна называется вопросом. Мы будем записывать «: - 

В»

 в виде «? - 

В»,

 а «:- 

В1, В2,

.... 

Вп»

 в виде «? – 

В1, В2,.... Вп».

 

Поясним  логический  смысл  такой  формулы.  Напомним,  что  импликация 

А:  -  В  (В

  —> 

А)

 

может быть выра-жена через отрицание и дизъюнкцию : ~

B

v

А

 (проверьте это с помощью таблицы 

истинности). Значит, если отбросить 

А,

 останется только ~В - отрицание 

В.

 Формула ← 

B1

, ..., 

Вп

 

означает  отрицание  конъюнкции 

~

{

B1^B2^...^Bn),

  что  по  закону  де  Моргана 

~

(

X

^

Y

)

  =

  (~

X

)v(~

Y

равно (~

B1

)v(~

B2

) v ... v(~

Bn

) - дизъюнкции отрицаний.  

Множество фраз Хорна применительно к некоторой проблемной области образует теорию 

(в логическом смысле). 

 
Пример. 
Рассмотрим  предметную  область:  сдачу  экзамена  по  некоторой  дисциплине.  Введем  обо-

значения: 

А -

 студент успешно сдает экзамен.  

В - студент посещал занятия. 
С - студент освоил учебный материал. 

D -

 студент занимался самостоятельно. 

Е -

 студент подготовил шпаргалку. 

Введем знания о предметной области: 

Студент успешно сдаст экзамен, если студент освоил учебный материал.

 

Студент освоил учебный материал, если студент посещал занятия

 и 

студент занимался 

самостоятельно. Студент посещал занятия. Студент занимался самостоятельно.

 

Форма логической записи: 
 
А:-С; 
C:-B,D; 
В; 
D. 
 
В приведенном примере можно выполнить логический вывод. Так, из истинности фактов 

В

 

и 

D

 и правила 

С:-В, D

 следует истинность С, и из правила 

А:-С - 

истинность предиката 

А,

 т.е., сту-

дент успешно сдаст экзамен. Кроме того, правила 

А :-С

 и 

С:-В, D

 можно было бы переписать в ви-

де 

А :-В, D.

 

В этих случаях используют правила вывода, называемые

 методом резолюций.  

Рассмотрим  простейшую  форму  резолюции.  Допустим,  имеются  «родительские»  предло-

жения  

 
 

отрицание: 

  

 

 

 

импликация: 

А :-В. 

 


background image

 

89 

В результате одного шага резолютивного вывода получаем новое предложение: 

В,

 которое называется

 резольвентой.

 В этом случае резолюция соответствует стандартному пропозицио-

нальному правилу вывода: 
 

 

допуская, что не  

А

 

 

и  

 

 

А,

 если 

В

 

 

выводим  

 

не 

В. 

 
Еще более простой случай: 
 
 

отрицание:    

~А  

 

ф

акт:   

 

А.  

 

Резольвента - противоречие. 

 
В общем случае имеются родительские предложения 
 

~(А1^ ... ^Аn)  
Ak:-B1,...,Bm

   

 k 

 n.

 

 
В 

качестве 

резольвенты 

за 

один 

шаг 

вывода 

получается 

~(A1^…^Ak-1 

^B1^…^Bm^Ak+1^…^An).

 

Таким образом, резолюция является подстановкой предикатов - подцелей 

B1

,... 

Вп,

 вместо 

соответствующего предиката 

Ak

 из отрицания. Отрицание инициирует логический вывод и поэто-

му называется запросом (или вопросом) и обозначается 

А1

А2, ... , An.

 Смысл метода резолюций 

состоит в том, что строится отрицание конъюнкции и проверяется, истинно его значение или лож-
но.  Если  значение  результирующей  конъюнкции  ложь,  значит,  получилось  противоречие  и,  по-
скольку  на  старте  было  отрицание  предикатов,  выполнено  доказательство  «от  обратного».  Если 
получено значение «истина», то доказательство не выполнено. 

 
Пример.

 

Пусть предикат дает 

(Х,Y,Z)

 означает, что «

X

 дает 

Y

 некоторому объекту Z», а предикат 

по-

лучают (X, Y)

 означает, что «

Y

 получает Z». Пусть знания об этих отношениях выражаются пред-

ложениями 

1) 

получает(вы,

 сила):- дает (логика, сила, вы); 

2) 

дает

 (логика, сила, вы). 

Задача, которую нужно решить, состоит в том, чтобы ответить на вопрос: получаете ли вы 

силу ? 

Представим этот вопрос в виде отрицания 

-получает(вы,

 сила). Резолюция предложения 1 и 

отрицания приводит к 

~дает

 (логика, сила, вы), что вместе с фактом 2 приводит к противоречию. 

Следовательно, ответом исходной задачи является «да». 

Пока что мы рассмотрели резолюцию для высказываний или предикатов без переменных. 

Если  же  вывод  производится  для  множества  предикатов  с  переменными  в  качестве  аргументов, 
эти переменные в ходе вывода получают значения соответствующих констант или, как еще гово-
рят, конкретизируются константами. 

Рассмотрим это на примере. 

 
Пример.  

Рассмотрим следующие родительские предложения: 
1) 

~получает

 (вы. У); 

2) 

получает (X,

 сила) :- 

дает

 (Z, сила, 

X).

 

Они содержат три переменные 

X,Y

 и Z, которые неявно находятся под действием квантора 

общности. Так, предложение 1 утверждает, что «для всех 

Y

 вы не получаете 

Y

», а 2 - «для всех Z 

любой 

Х

 получает силу, если Z дает силу 

X».

 Правило резолюции требует совпадения предиката из 

отрицания 1 и головы правила 2. Это означает, что переменные получают значения (конкретизи-
руются)  соответственно  их  месту  в  предложениях  1  и  2  следующим  образом: 

Х  =  вы,  Y

  =  сила. 


background image

 

90 

Предикат 

получает (вы,

 сила) называется общим примером для предикатов 

получает(вы

 

Y

) и 

по-

лучает (Х,

 сила). 

Изложенные  положения  логики  предикатов  находят  реализацию  и  дальнейшее  развитие  в 

языке программирования Пролог. 

 

12.4. ИНТЕЛЛЕКТУАЛЬНЫЙ ИНТЕРФЕЙС ИНФОРМАЦИОННОЙ СИСТЕМЫ 

 

Анализ развития средств вычислительной техники позволяет утверждать, что она постоян-

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

Второе направление определяет изменения в технологии обработки информации, приводя-

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

Развитие  программных  средств  идет  по  пути  увеличения  их  дружественности,  т.e.  такого 

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

Для обеспечения наибольшей дружественности интерфейса программного средства с поль-

зователем  первый  должен  стать  интеллектуальным.

  Интеллектуальный  интерфейс,

  обеспечи-

вающий  непосредственное  взаимодействие  конечного  пользователя  и  компьютера  при  решении 
задачи в составе человеко-машинной системы, должен выполнять три группы функций: 

•  обеспечение  для  пользователя  возможности  постановки  задачи  для  ЭВМ  путем  сообще-

ния только ее условия (без задания программы решения); 

• обеспечение для пользователя возможности формирования сред решения задачи с исполь-

зованием  только  терминов  и  понятий  из  области  профессиональной  деятельности  пользователя, 
естественных форм представления информации; 

•  обеспечение  гибкого  диалога  с  использованием  разнообразных  средств,  в  том  числе  не 

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

Структура системы (рис. 1.48), удовлетворяющей требованиям новой технологии решения 

задач, состоит из трех компонент: 

• 

исполнительной  системы

,  представляющей  собой  совокупность  средств,  обеспечиваю-

щих выполнение программ; 

• 

базы знаний

, содержащей систему знаний о проблемной среде; 

• 

интеллектуального  интерфейса

,  обеспечивающего  возможность  адаптации  вычисли-

тельной системы к пользователю. 

 

Рис. 1.48.

 Структура современной системы решения прикладных задач 

 

Такая система существенно отличается от создававшихся на более ранних этапах развития 

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