/
Author: Вагин В.Н.
Tags: исследование операций радиоэлектроника языкознание искусственный интеллект монография системы управления управленческие решения
ISBN: 5-02-013887-8
Year: 1988
Similar
Text
ББК 32:813
В12
УДК 519.816
Ваги и В. Н. Дедукция и обобщение в системах ириилтвя решений.—
М.: Наука. Гл. ред. фпз.-мат. лит. 1988.— 384 с.— (Пробл. искусств, интеллекта).
Рассматриваются методы дедуктивного вывода и обобщения в системах
принятия решений. Дается описание двух классов формальных систем: исчис¬
ления высказываний и исчисления предикатов первого порядка. Рассматри¬
ваются декларативные, процедурные и специальные модели представления
знаний; особое внимание уделяется семантическим сетям. Приводятся дедук¬
тивные методы вывода, где наряду с классическими типа принципа резо¬
люции п его модификаций излагаются методы дедуктивного вывода на семан¬
тических сетях; дается применение методов дедукции в системах управления
сложными объектами. Рассматриваются методы обобщения понятий по при¬
знакам п по структурам и их реализация в системах управления. Излагаются
методы обобщения с использованием нечетких переменных н иерархические
методы кластеризации.
Для специалистов в области искусственного интеллекта, систем управле¬
ния и принятия решений.
Табл. 12. Ил. 164. Библногр. 146 назв.
Рецензент
доктор технических наук Д. А. Поспелов
ISBN 5-02-013887-8
1504000000—139
© Издательство «Наука».
Главная редакция
физико-математической
литературы, 1988
ISBN 5-02-013887-8
ПРЕДИСЛОВИЕ
Идея написания книги возникла после многочисленных обсуж¬
дений полученных научных результатов как на различных конфе¬
ренциях и семинарах по ситуационному управлению и проблемам
искусственного интеллекта (ИИ), так и в разного рода беседах
с Д. А. Поспеловым, чья помощь и постоянное внимание к автору
сыграли решающую роль в ее появлении.
Трудно найти другую область науки, где каждый год появля¬
лось бы столько новых работ, как область ИИ. Это делает труд по
написанию книги по любой проблеме в этой области чрезвычайно
сложным, в частпости, из-за того, что в области интеллектуальных
систем работают специалисты самого разного профиля. Автор все-
такн надеется, что излагаемый в книге материал привлечет внима¬
ние не только довольно узкого круга специалистов по логическим
системам, используемым в ИИ, но и многочисленных специалистов,
связанных с разработкой систем управления сложными технологи-1
ческими объектами, систем распознавания, систем автоматизации
научных исследований и проектирования.
Для того чтобы читатель мог получить цельное представление
о проблеме, в книге наряду с оригинальными работами автора и
его научной группы изложен ряд общих результатов из математи¬
ческой логики, а также приведены результаты других советских
и зарубежных авторов. Чтобы не затруднять чтение книги, в тек¬
сте нет библиографических ссылок. Вся использованная литература
дана п конце книги, где дан также краткий обзор работ, на кото¬
рые ссылается автор и которые помогут читателю углубить свои
знания о проблемах, обсуждаемых в книге.
Выбор материала книги определяется следующими соображения¬
ми; во-первых, желанием охватить достаточно широкий круг проб¬
лем, связанных с использованием математической логики в разного
рода системах принятия решений, во-вторых, стремлением сделать
изложение весьма разнородного материала единым и связным,
в-третьих, собственными научными интересами автора и научными
интересами лиц, с которыми автор поддерживает многолетние на¬
учные контакты. Насколько удачно это сделал автор, судить чита¬
телям, и он заранее благодарен тем из них, которые укажут на
замеченные недостатки п недоработки. Автор также сознает, что
в книге в силу ограниченности ее объема не нашли отражения
1*
4
ПРЕДИСЛОВИЕ
многие важные работы как отечественных, так и зарубежных ав¬
торов.
Для чтения книги требуются знания в объеме стандартных кур¬
сов вузов по кибернетике, вычислительной технике, математической
логике и дискретной математике. Все основные понятия, как пра¬
вило, вводятся в книгу. Ка;кдый читатель может избрать свой по¬
рядок чтения глав в зависимости от своих интересов. Читателю, не
знакомому или мало знакомому с предметом, рекомендуется изу¬
чение материала в той последовательности, в какой он приведен
в книге. Читателю, знакомому с основами математической логики,
особенно с ее разделом «Автоматическое доказательство теорем»,
можно пропустить главы 1, 2, 5 и сразу перейти к чтению глав 3,
4, бит. д. Категории читателей, интересующихся выборочно одной
какой-либо проблемой, например только дедукцией или только
обобщением, могут ограничиться чтением соответствующих глав,
опустив или бегло просмотрев остальные.
Автор выражает глубокую признательность за предоставленные
материалы И. 3. Батыршину, А. А. Башлыкову, Н. П. Викторовой,
Н. Ц. Георгиевой, JI. Г. Жукову, В. Г. Кикнадзе —всем участникам
научной группы, с которой автора связывали и продолжают свя¬
зывать многолетние научные связи и контакты.
Автор также приносит свою искреннюю благодарность
Г. С. Плесневичу и В. В. Железнову за их бескорыстную и друже¬
скую помощь в разрешении многих научных и организационных
вопросов.
И наконец (но, конечно, не в последнюю очередь), особую при¬
знательность автор выражает научному редактору этой книги
В. Н. Захарову и рецензенту Д. А. Поспелову, приложившим не¬
мало труда для улучшения содержания и стиля книги.
Мне так близко обаянье
Их усталой красоты...
Это дерева Познань»
Облетевшие цветы.
М. Волошин
ВВЕДЕНИЕ
Системы принятия решений. Упомянутый в названии книги
этот термин предполагает, что сама книга начнется с пояснения,
что же такое система принятия решений. Однако, как это уже было
не раз, дать формальное определение системы принятия решений
не представляется возможных!, как в свое время не представлялось
возможных! формально определить, что такое «большая система»,
«искусственный интеллект» и ряд других понятий.
Поэтому, не давая точного определения систех! принятия ре¬
шений, остановихюя на их особенностях п, не боясь обвинений но
поводу эклетнки, включим в класс систем принятия решений до¬
вольно широкий спектр различного рода систем технического и
организационного плана.
Прежде всего, сюда войдут системы управления сложными объ¬
ектами, причем те из них, для которых априорная информация об
их структуре и функционировании обладает значительной непол¬
нотой, что влечет за собой практически невозможность описания
такой системы формальными моделями в виде некоторой (даже
весьма сложной) совокупности уравнений (алгебраических, диффе¬
ренциальных и т. п.). Кроме того, сами объекты в таких систехтх
эволюционируют во временя, меняют свою структуру и функции,
что приводит к эволюции самого процесса управления. Наконец,
цели управления объектом не всегда могут быть выражены в виде
количественных соотношений и также меняются с течением
времени.
В известной типологии систем управления, предложенной
Д. А. Поспеловым, для построения таких систем применяются
логико-лингвистические модели управления. Отличительной особен¬
ностью таких моделей является наличие логических средств обра¬
ботки используемых знаний (данных) о предметной области, пред¬
ставленных в лингвистической форме.
Примерами систем управления сложными объектами, для кото¬
рых разрабатываются логико-лингвистические модели управления,
являются системы оперативно-диспетчерского управления энерго¬
объединением, воздушных! движением, морским или речным портом
и т. п. Возьмем, например, такой объект управления, как энерго-
объединение, представляющее собой совокупность источников и по¬
требителей электроэнергии, объединенных единой сетью передачи
6
ВВЕДЕНИЕ
и преобразования электроэнергия. Основными источниками являют¬
ся тепловые, гидравлические и атомные электростанции. Основны¬
ми элементами сети передачи и преобразования электроэнергии
являются линии электропередач (ЛЭП) и трансформаторные под¬
станции, преобразующие напряжение в сети.
В настоящее время для управления таким сложным объектом
диспетчерские службы вынуждены обрабатывать большой и все
возрастающий объем информации, производить сложные аналити¬
ческие расчеты и логические операции для выбора режимов и' для
оперативного регулирования параметров сетей, электростанций и
потребителей в целях обеспечения надежности и экономичности
работы энергообъедилетшя.
Все возрастающая ответственность диспетчера за выбор и при¬
нятие тех или иных решений по управлению требуют проведения
исследовании в направлении разработки новых способов и приемов,
обеспечивающих организацию управления на современном уровне.
Одним из направлений повышения эффективности диспетчерского
управления является создание систем, позволяющих передать ЭВМ
функции обработки поступающей к диспетчеру информации и вы¬
дачи рекомендаций по управлению в реальных условиях. Решение
данной проблемы возможно только путем моделирования всех ас¬
пектов, характеризующих работу технологического объекта и спо¬
соба управления им. Это требует создания методов и средств фор¬
мирования соответствующих моделей среды управления, объекта
управления, текущих ситуаций, классификации ситуаций, порожде¬
ния решений по управлению, обучению способам принятия реше¬
ний с учетом всей сложности реальных объектов.
Для решения этих задач на ЭВМ требуется, во-первых, автома¬
тизировать процесс принятия решений по регулированию электри¬
ческих параметров энергообъединенля как в нормальных, так и
в предавариппых режимах энергосистем, входящих в объединение
и, во-вторых, разработать такие программы решения упомянутых
выше задач, которые можно было бы совершенствовать в процессе
создания и эксплуатации системы, т. е. организовать процесс обу¬
чения этой системы экспертами.
Следует отметить, что каждая задача автоматического управле¬
ния решается как бы дважды: сначала при разработке системы,
а затем уже — многократно и автоматически при функционирова¬
нии этой системы. Поэтому с точки зрения автоматизации управ¬
ления наиболее существенным в решении задачи является соотно¬
шение между априорным и текущим решениями, что, в свою оче¬
редь, определяется степенью зависимости решения от ситуации,
т. е. совокупности факторов, устанавливаемых в результате непо¬
средственной обработки данных, поступающих в систему управле¬
ния и внешней среды.
Априорное решение задачи может быть доведено до некоторой
процедуры, которая связана с конкретной ситуацией и должна
ВВЕДЕНИЕ
/
выполнить вполне определенную работу для того, чтобы решение
было получено. Но но мере того, как зависимость решения от си¬
туации становится все более сложной, использование алгоритмов
принятия решений становится сначала малооправданным, а затем
и вовсе невозможным из-за проблемы размерности. В этих случаях
априорное решение задачи состоит в разработке .модели объекта
управления и стратегии поиска управляющих решений на этой мо¬
дели. Модель в нашем случае — это система фактов, утверждений
(аксиом) для данного объекта управления, па основе которой фор¬
мируется процесс принятия решений в конкретной ситуации* Это,
по существу, тоь что диспетчер знает о работе своего объекта, не¬
зависимо от того, какая именно ситуация имеет место. Например,
утверждение о том, что подъем нагрузки на приемной стороне
(у потребителя) или отключение некоторой мощности на передаю¬
щей стороне (на электростанции) влечет снижение перетока по
ЛЭ11, может служить примером одной из аксиом для системы
управления энергообъодинение.м. Обычно элементы модели управ¬
ления не «привязаны» к конкретным единицам технологического
оборудования, а оперируют с переменными. Подстановка значений
переменных осуществляется в процессе настройки модели на кон¬
кретную ситуацию с помощью специальных алгоритмов, определяю¬
щих процедуру принятия решений на этой модели.
Логико-лингвистические модели управления эиергообъединением
предназначены для решения оперативных задач стабилизации ре¬
жимов и оперативного планирования. Задача стабилизации режимов
состоит в следующем. Для множества контролируемых параметров
определены верхние и нпжнне граничные значения. В случае вы¬
хода параметра пли группы параметров из установленных границ,
нужно определить управляющее воздействие, ликвидирующее от¬
клонение.
Задача оперативного планирования заключается в планировании
действий, состоящем в определении последовательности операций,
которые должны быть выполнены в течение некоторого периода
времени.
Таким образом, основными блоками, входящими в состав логи¬
ко-лингвистической модели управления сложным объектом, явля-
ются олок модели знании о предметной ооласти и олок припятия
решений, которому в нашем случае соответствует блок логического
вывода.
Модель знаний включает в себя как модель знаний об объекте
управления, так и модель знаний о среде. Модели представления
знаний описаны в части II (главы 3 и 4), где основной упор
делается на представление знаний в виде семантических сетей.
Для лучшего понимания этого и последующего материалов в части
I (главы 1 н 2) приведены основные сведения из математической
логики, которые могут быть опущены читателями, знакомыми с ее
основами.
8
введение
Блок принятия решений включает в себя механизмы порожде¬
ния решений, т. е. процедуры логического вывода. Дедуктивным
процедурам логического вывода посвящена часть III (главы 5 и б),
где наряду с классическим принципом резолюции и его различными
модификациями приведены процедуры дедуктивного вывода на се¬
мантических сетях.
Кроме процедур дедуктивного вывода в логико-лингвистических
моделях управления находят широкое применение также процеду¬
ры автоматического форхгирования классов состояний системы и
синтеза новых понятии на основе обобщения исходных ситуаций.
Понятие «обобщенной ситуации» определяется как множество на¬
блюдаемых ситуаций (состояний системы), для которых принимае¬
мые управляющей системой решения одинаковы. Процесс принятия
решений на множестве обобщенных ситуаций заключается в при¬
менении решающих правил распознавания относительно соответ¬
ствующих им множеств наблюдаемых ситуаций (классов решений).
Так как при неавтоматическом формировании решающих правил
довольно трудно, если не невозможно, учесть все факторы, обус¬
лавливающие данное решение (в силу огромного количества состоя¬
ний системы), то задача получения указанных решающих правил
ставится как задача обобщения на множестве ситуаций, которая
должна решаться в процессе обучения и функционирования си¬
стемы.
§ Структурные методы обобщения понятий для логико-лингвисти-
'ческих моделей управления даны в части IV (глава 8), где приве¬
дены процедуры структурного обобщения понятий па семантиче¬
ских сетях.
Красной питью почти через всю книгу проходит в качестве при¬
мера логпко-лппгвистпческой модели управления система оператив¬
но-диспетчерского управления эпергообъединепием, на которой
прошли апробацию многие алгоритмы дедуктивного вывода и струк¬
турного обобщения понятий.
К, классу систем принятия решения будем также относить си¬
стемы автоматизации научных исследований и проектирования.
К сожалению, в силу ограничения объема книги, нет возможности
рассмотреть задачи построения систем автоматизации проектных
работ с использованием методов планирования процессов вычисле¬
ний в таких системах.
Что касается систем автоматизации научных исследований, то
нас, прежде всего, будет интересовать проблема обработки больших
массивов экспериментальных данных, полученных в ходе наблюде¬
ний различного рода процессов и явлений. Растущее год от года
количество экспериментальных данных создает у исследователей
значительные трудности при их ручной обработке с целью выявле¬
ния новых неизвестных до этого закономерностей, присущих объ¬
ектам исследования. Для выявления этих закономерностей прихо¬
дится прибегать к различным преобразованиям полученный дан¬
ВВЕДШИЕ
9
ных, проведению расчетов, построению таблиц, графиков, диаграмм
и т. п., что отнимает много времени н сил.
Рассматриваемые в части IV (глава 7) алгоритмы обобщения
понятии по признакам, входящие в диалоговую систему автомати¬
зации научных исследовании, позволяют автоматически формиро¬
вать обобщенные закономерности, связывающие исследуемые объ¬
екты, выявлять нх наиболее существенные признаки, а также ло¬
гические связи .между ними.
На сегодняшний день многие разработки в области автоматиза¬
ции научных исследований связаны с развитием теории планиро¬
вания эксперимента. Методы планирования эксперимента основаны
па выявлении оптимального количества и условий проведения опы¬
тов, необходимых для решения поставленных задач с наперед за¬
данной точностью. Они позволяют получать математические .модели
процессов, используя факторное планирование, регрессионный ана¬
лиз и т. д.
В свете теории планирования эксперимента отличительные осо¬
бенности „предлагаемого, ниже подходами решению задач автома¬
тизированной обработки экспериментальных данных сводятся к
^Дующему.
1. В отлично от активного факторного эксперимента, в задачу
которого входит нахождение значении факторов, доставляющих
экстремум некоторой целевой функции, множество факторов (при¬
знаков) здесь не подлежит управлению со стороны исследователя,
а может лишь только наблюдаться. При этом часть признаков мо¬
жет не оказывать влияния на исследуемые объекты и должна быть
отсеяна с иомощыо методов обобщения.
2. Не имеет места априорное заданно математической модели
исследуемого процесса в виде функции отклика г/j = фДац, хг. ...
..,г„), дающей связь между его выходами ijj и значениями фак¬
торов xt. Модель эта строится в ходе обобщения в виде логических
функций, отражающих связывающие признаки закономерности.
3. Особенности подхода позволяют успешно работать по только
с числовыми пли упорядоченными по некоторой! шкале значениями,
но н проводить исследование признаков, принимающих качествен¬
ные значения.
4. Отмечается наличие субъективных факторов, влияющих на
работу механизмов обобщения, которые по только не поддаются
контролю со стороны исследователя, но ц не могут быть наблюдае¬
мы с достаточной! точностью. Учет влияния субъективных факторов
предлагается проводить методами диалога системы с исследовате¬
лем, в ходе которого автоматически корректируется работа меха¬
низмов обобщения.
5. В отличие от методов планирования эксперимента, широко
использующих теорию статистических решений, здесь применяется
^терминированная постановка задачи обобщения с использованием,
аппарата лингвистических переменных (см. главу 9).
10
ВВЕДЕНИЕ
Предлагаемые в главах 7 и 9 методы обобщения понятно по
признакам могут использоваться в задачах планирования экспери¬
мента для предварительной обработки множества факторов с целыо
выделения среди них тех, которые оказывают наиболее существен¬
ное влияние на исследуемых! процесс. Кроме того, механизмы ав¬
томатического построения функции принадлежности для значении
лингвистических переменных могут быть использованы для полу¬
чения функций, которые позволяют учитывать степень важности
различных реакций у,, входящих в оптимизируемые параметры про¬
цесса.
Нажонец, в класс систем принятия решений будут входить
различного рода системы, рассматриваемые с точки зрения их
качественного анализа. В части V (глава Ю) исследуется схема
иерархических алгоритмов кластеризации на основе взвешенного
отношения сходства. Основное внимание уделяется алгоритмам,
осуществляющим кластеризацию на основе взвешенного отношения
сходства с весами, измеренными в порядковой шкале.
Отличительной чертой рассматриваемых в книге методов каче¬
ственного анализа систем является разработка иерархических ал¬
горитмов кластеризации на основе взвешенных отношений сход¬
ства, что позволяет более адекватно отразить суть задачи класте¬
ризации из-за естественной связи между понятиями разбиения и
отношения эквивалентности, иерархии разбиений и взвешенного
отношения эквивалентности.
Таким образом, определено основное содержание книги: в ней
рассмотрены методы представления знаний о предметной области,
различные процедуры дедуктивного вывода, процедуры обобщения
понятий как по признакам, так и по структурам, иерархические
алгоритмы кластеризации, а также реализации указанных процедур
в различного рода системах принятия решений.
ЧАСТЬ I
ФОРМАЛЬНЫЕ СИСТЕМЫ
Логика — эго бог мыслящих.
Л. Фейхтвангер
ГЛАВА 1
ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ
1Л. Понятие формальной системы
Появление формальных систем было обусловлено осознанием
того факта, что совершенно различные системы, будть то техниче¬
ские, социальные, экономические пли биологические, обладают
глубоким сходством. Действительно, каждая конкретная система
состоит из каких-то первичных (базовых) элементов, обладающих
какими-то свойствами. Затем, исходя из наличия исходных описа¬
ний, можно логическим путем вывести описание новых свойств,
причем утверждения о наличии исходных или выведенных свойств
воспринимаются как истинные на основании смысла определений
данных элементов.
В формально)': системе (ФС). оперирующей теми или иными
символами, эти символы воспринимаются просто как элементы,
с которыми обращаются согласно определенным правилам, завися¬
щим лишь от формы выражений, образованных из символов. Здесь
нет понятия истинности, оно появляется лишь в связи с возможны¬
ми приложениями (интерпретациями) этой системы.
Формальные системы, с которыми мы будем иметь дело,— это
аксиоматические системы, т. е. системы с наличием определенного
числа исходных заранее выбранных и фиксированных высказыва¬
ний, называемых аксиомами.
Говорят, что аксиоматическая ФС «проста» и «эффективна».
Под «простотой» будем понимать то, что для любой реальной систе¬
мы, являющейся интерпретацией данной аксиоматической системы,
можно обойтись одним и тем же числом исходных допущений,
необходимых для получения тех или иных выводов любой системы.
Говоря об «эффективности» ФС, следует иметь в виду то, что каж¬
дый вывод аксиоматической системы может быть автоматически
перенесен на любую из ее интерпретаций. Поскольку любая рас¬
сматриваемая к книге формальная система имеет аксиомы, слово
«аксиоматическая» в дальнейшем будет опускаться.
Предъявим к формальным системам еще одно требование. Это
требование связано с понятием эффективной процедуры. Под эф¬
фективной процедурой (алгоритмом) в интуитивном смысле будем
понимать совокупность предписании, позволяющую посредством
12
ГЛ. 1. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ
формального выполнения этих предписаний через конечное число
шагов получить ответ на любой вопрос из некоторого класса во¬
просов.
Формальная система считается заданной, если выполнены сле¬
дующие условия.
1. Задано некоторое множество, состоящее из конечного или
бесконечного числа элементов, которые носят название термов.
Имеется другое конечное множество, элементы которого есть связ¬
ка или операции.
2. Любую линейно упорядоченную совокупность термов и опе¬
рации *) будем называть формулой. Из множества формул выде¬
лим подмножество правильно построенных формул (ППФ). Для
НПФ задаются правила их конструирования, т. е. определяется
эффективная процедура, позволяющая по данному выражению
выяснить, является ли оно ПИФ или нет в данной ФС.
3. Выделено некоторое множество П11Ф, называемых аксиомами
ФС. Понятие аксиомы должно быть эффективным, т. е., так же как
и для ППФ, должна иметься эффективная процедура, позволяю¬
щая для произвольной ППФ решить, является ли она аксиомой.
А. Имеется конечное множество Л(, Д2, отношений между
ППФ, называемых правилами вывода. Понятие «вывода» также долж¬
но быть эффективным. Иными словами, должна иметься эффективная
процедура, позволяющая для произвольной конечной последователь¬
ности ППФ решить, может ли каждый член этой последовательности
быть выведен из одной или нескольких предшествующих ППФ этой
последовательности посредством некоторых фиксированных правил
вывода.
Выводом в ФС называется любая последовательность ГШФ
А,, А,, .... Ап такая, что для любого i (1 ППФ А,- есть
либо аксиома ФС, либо непосредственное следствие каких-либо
предыдущих ППФ по одному из правил вывода. ППФ В называ¬
ется теоремой (или выводимой ППФ) ФС, если существует вывод
в ФС, в котором последней ППФ является В. Понятие теоремы не
обязательно эффективно, так как вообще говоря, может и не су¬
ществовать эффективной процедуры, позволяющей узнавать по дан¬
ной ППФ. существует ли ее вывод в ФС. Формальная система, для
которой такая эффективная процедура существует, называется раз¬
решимой, в противном случае — неразрешимой.
ППФ В выводима из ППФ А,, А*. • • •, Ап (пли является след¬
ствием множества А„ Аг, ■.., Ап) тогда и только тогда, когда су¬
ществует такая конечная последовательность ППФ В,, В2, Вг.
что В г есть В и для любого i (1 ^ i ^ г) Bt есть:
*) Для некоторых ФС при определении формулы линейная упорядочен¬
ность термов и операций не требуется. Однако в книге рассматриваются в
качестве формул только линейно упорядоченные совокупности термов а
операций. (Прим. ред.)
t.t. ПОНЯТИЕ ФОРМАЛЬНОЙ системы
13
1) либо аксиома,
2) либо А( (1
3) либо непосредственное следствие некоторых предыдущих
ППФ по одно.иу из прав1[л вывода. Элементы последовательности
ППФ Аи А,, .... Ап называются посылками вывода (или гипотеза¬
ми). Сокращенно вывод В из А,, А г, .... Ап будем записывать
А,, А г, • ■ Anh 5, или если Г = {Аи А2, ..., Ап), то ГЬ5. Вывод
ППФ В без использования посылок есть доказательство ППФ В,
а сама В — теорема, что записывается I-В.
Приведем несколько свойств понятия выводимости из посылок.
1. Если ГеП и Г\~В, то ПЬ5. Это значит, что если ППФ В
выводима из множества посылок Г, то она также будет выводима,
если к Г добавятся новые посылки.
2. Г1- В тогда и только тогда, когда в Г существует конечное
подмножество П, для которого П\~В. Это очевидно, исходя из (1).
3. Если III- А и Г В для любой ППФ В из множества П, то
Г А. Это значит, что если ППФ А выводима из П и каждая со¬
держащаяся в П ППФ выводима из Г, то ППФ А выводима из Г.
Таким образом, любая ФС задается четверкой:
<Т, Н, А, В>,
где Т — множество термов и операций; Н — множество правил кон¬
струирования ППФ; А — система аксиом; R — множество правил
вывода.
Пример 1.1. Рассмотрим неандертальскую систему счисления.
Множество Т состоит из палочек и операций: сложения, приписы¬
вания одной палочки к другой и равенства.
Правила конструирования ППФ:
1) I есть ППФ;
2) если а — ППФ. то а I также ППФ;
3) если а и р — ППФ, то а + р также ППФ;
4) если аир — ППФ, то а = р также ППФ;
5) других ППФ нет.
Отсюда II... II — ППФ (правило 2);
II... II + II... II — ППФ (правила 2, 3) ;
|| .. .|| = ||.. .||— ППФ (правила 2, 4) (как в случае пФт, так
п т
п в случае п — т);
I!... II + II... II = II... II + II... II + II... I = II| ППФ (прави¬
ла 2, 3, 4) и т. д., но + II не есть ППФ, так как нет такого правила
образования ППФ.
Система аксиом состоит из одной аксиомы: 1 = 1.
Правила вывода:
1) все аксиомы выводимы, т. е. являются теоремами;
2) если ha = p, то ha+|=p|;
3) Других правил вывода нет.
14
ГЛ. 1. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ
Найдем множество теорем:
[ •= I — теорема (правило 1);
j + | = II — теорема (правило 2);
| + | + ... + | = ||.. . || — теорема (правило 2),
11 П
т. е. теоремой будет любая ППФ. в которой слева и справа от зна¬
ка равенства стоит одно и то же число палочек.
Теперь рассмотрим расширение формальной системы путем вво¬
да дополнительных правил на множества Я, А и Я. Пусть на мно¬
жество Я, задающее синтаксис ФС, действуют некоторые правила
ц, фиксирующие изменения в правилах Я, т. е. правила г) изменя¬
ют синтаксис формальной системы. В системах принятия решений
такая задача может рассматриваться, например, как задача пере¬
вода фактов из одной системы представления знаний в другую.
Далее, пусть в ФС допускается как добавление новых аксиом,
так и исключение старых. Это может делаться с помощью некото¬
рых правил у, изменяющих систему аксиом А. Эти правила целе¬
направленно изменяют А, причем нахождение тех из них, которые
задают целевые факты, может трактоваться, например, как задача
поиска закономерностей мира, в котором функционирует та или
иная система принятия решений.
И наконец, пусть в ФС разрешается изменять набор правил
вывода Я, что и делается с помощью некоторых правил р. Для
систем принятия решений проблема изменения правил Я может
пониматься- например, как задача адаптации дайной системы к
внешней среде.
Таким образом, полученная семерка
<Т, Я, А, Я, ц, р>
будет характеризовать расширение формальной системы, называе¬
мое семиотической системой. Ее особенность проявляется прежде
всего в том, что семиотическая система является открытой, так как
множество аксиом А может изменяться с помощью правил к- Кро¬
ме того, такая система пригодна как для реализации дедуктивных,
так и недедуктинных процессов, а также вследствие ее открытости
процессов обучения и адаптации.
Для функционирования семиотической системы необходимо за¬
дать проблемно ориентированную формальную систему и правила
ее изменения. Отметим, что сама формальная система не является
ни языком, ни системой знания, она не содержит никаких утверж¬
дений об объектах, а является просто исчислением — некоторого
рода действиями по определенным правилам над последовательно¬
стями термов.
Мы рассмотрим для класса формальных систем, являющихся ма¬
тематической базой для построения систем принятия решений: исчис¬
ление высказываний и исчисление предикатов первого порядка.
1.2. ОСНОВНЫЕ ПОНЯТИЯ ИСЧИСЛЕНИЯ ВЫСКАЗЫВАНИЙ
15
1.2. Основные понятия исчисления высказываний
Здесь рассматривается только минимум сведений об исчислении
высказываний, необходимый для построения первого класса ФС.
В исчислении высказываний будем иметь дело только с формула¬
ми, составленными из элементарных формул, соединенных некото¬
рыми связками. Элементарные формулы будут интерпретироваться
как простые высказывания, записанные в виде повествовательных
предложений естественного языка и принимающие два значения:
истина (И) пли ложь (JI). Если простое высказывание X истинно,
то говорят, что А' принимает значение И, если А' ложно, то Л.
Символы И н Л будем называть истинностными значениями.
Сложное высказывание имеет истинностное значение, которое
однозначно определяется истинностными значениями простых вы¬
сказываний, из которых оно составлено. Например: «Если студент
ложится поздно спать и пьет на ночь кофе, то утром он встает
в дурном расположении духа пли с головной болью». Это сложное
высказывание состоит из следующих простых высказываний:
«Студент ложится поздно спать».
«Студент ньет на ночь кофе».
«Утром студент встает в дурном расположении духа».
«Утром студент встает с головной болью».
Обозначим сложное высказывание через А, а простые соответ¬
ственно через У, Z, U, У. Тогда сложное высказывание запишется
в виде
А = Если У и Z, то U или V.
Для обозначения используемых в этом примере связок «если ... то»,
«и», «или» введем специальные символы &. V- Тогда в симво¬
лическом виде высказывание X запишется так:
x=(y&z)-Kt/VV).
Каждую логическую связку можно рассматривать как операцию,
которая образует новое высказывание — сложное высказывание нз
более простых высказываний.
Рассмотрим следующие логические евязкн (операции):
1) отрицание ~~| X. ] А истинно, когда А ложно, и ложно, ког¬
да А истинно;
2) конъюнкция А & У. X & У истинно, когда X и У оба истин¬
ны, в противном случае X & Y ложно;
3) дизъюнкция X V У. IV У ложно, когда А и У оба ложны,
в противном случае А V У истинно. Дизъюнкция понимается, как
неразделительное «или», т. е. высказывание «А или У» утверждает
истинность либо одного на высказываний, либо обоих вместе;
4) импликация X ->■ Y. X У ложно, когда X—истинно, а У —
ложно, в противном случае X У истинно. X У читается как
«если X то У» или «А влечет У»;
16
ГЛ. 1. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ
5) эквивалентность (равнозначность) X ~ Y. X ~ Y истинно,
когда X и Y имеют одинаковые истинностные значения, в против¬
ном случае X ~ Y ложно.
Итак, всякое сложное высказывание можно записать в виде не¬
которой формулы, содержащей логические связки и символы, ко¬
торые обозначают простые высказывания, называемые в дальней¬
шем атомами. Для того чтобы узнать, истинно или ложно сложное
высказывание, достаточно узнать истинностные значения всех ато¬
мов, из которых оно составлено. Для этого составляем истинностную
таблицу, в которой представлены все истинностные значения ато¬
мов, входящих в сложное высказывание. Так сложное высказыва¬
ние (X V Д Y)->Z имеет следующую истинностную таблицу:
X
У
Z
1Y
XV-1 у
(XV Y)-»Z
я
л
л
II
и
л
л
л
и
11
11
и
.л
и
л
л
л
и
л
11
II
л
л
и
и
л
л
11
II
л
и
л
II
II
и
и
11
и
л
л
II
л
II
II
II
л
II
и
Для того чтобы сократить количество скобок в формуле, часто
используют правила силы операций:
связка I сильнее связок &, V,
связка & сильнее связок V,
связка V сильнее связок
связка сильнее связки ~.
Внешние скобки всегда будем опускать и вообще везде, где не
возникает двусмысленностей, будем пользоваться минимумом
скобок.
Пусть дана формула В и Хи Хг, ..., Хп — атомы, в ней встре¬
чающиеся. Тогда под интерпретацией формулы В будем понимать
приписывание истинностных значений атомам Хи Х2, ..., Х„. Го¬
ворят, что формула В истинна в данной интерпретации тогда и
только тогда, когда В принимает значение И в этой интерпрета¬
ции; в противном случае говорят, что В ложна в этой интерпрета¬
ции. Если имеется п различных атомов в формуле, то существует
2" различных интерпретаций для этой формулы. Для удобства в
формуле, имеющей атомы Х2, ..., Хп интерпретации можно
представлять в виде множества {т.,, т2, ..., тп), где т% есть либо
Xh если X принимает значение И, либо Д Х2, если JI.
1.2. ОСНОВНЫЕ ПОНЯТИЯ ИСЧИСЛЕНИЯ ВЫСКАЗЫВАНИЙ
17
Например, множество { —| Хх, Х2, Х3, ~~| Х4} представляет собой
интерпретацию, в которой атомы Xt, Х2, Х3, Х4 принимают соответ¬
ственно значеиня JI, И, И. Л.
Формула исчисления высказывании, которая истинна во всех
интерпретациях, называется тавтологией или общезначимой форму¬
лой. Примерами тавтологий являются X \/ ~~| X, Х->-(У->-X). Что¬
бы в этом убедиться, необходимо рассмотреть пх истинностные таб¬
лицы.
Аналогично, формула исчисления высказываний называется про¬
тиворечием или тождественно ложной, если она принимает значение
JI во всех интерпретациях. Например, X ~ ~~\ X, X & Д X.
Если формула В истинна в некоторой интерпретации /, то гово¬
рят, что / удовлетворяет формуле В или что В удовлетворяется
интерпретацией I. Аналогично, если В ложна в некоторой интер¬
претации /, то говорят, что / не удовлетворяет В пли В не удов¬
летворяется I. Например, формула Х4 \J ~| Х2 удовлетворяется ин¬
терпретацией {Х[, Х2}, но не удовлетворяется {~] Хг, Х2}.
Истинностные таблицы дают нам эффективную процедуру для
решения вопроса о том. является ли данная формула общезначи¬
мой пли противоречием. Однако составление истинностных таблиц,
особенно для сложных формул, является утомительным и непрак¬
тичным делом. Поэтому установим несколько правил образования
тавтологии нз тавтологий (ясно, что для получения противоречия
надо применить к тавтологии операцию отрицания). Как правило,
все теоремы будут даваться без доказательства. Желающие дока¬
зать пх могут попробовать сделать это сами или обратиться к учеб¬
никам по математической логике.
Теорема 1.1. Пусть В есть некоторая формула, а В* — (формула,
полученная из В подстановкой формулы С вместо атома X везде,
где он встречается в В. Тогда, если В — тавтология, то и В* также
тавтология.
Этот результат позволяет нам получать из тавтологии путем
подстановок вместо атомов соответствующих формул другие тавто¬
логии. В дальнейшем он будет фигурировать в ФС как правило
подстановки.
Условимся называть формулу В равносильной формуле С (т. е.
В = С) тогда н только тогда, когда истинностные значения В и С
совпадают при каждой интерпретации В и С. Например, X, -а- Х2 =
= п хх V Х2, п (X, V X,) = п х, & п Х2, п (х4 & х2) = ~\ хг у
V ~] х2 и т. д.
Теорема 1.2. Формула В ~ С является тавтологией тогда и толь¬
ко тогда, когда В = С.
Доказательство очевидно.
Теорема 1.3 .Если В и В -+С—тавтологии, то С—также тавто¬
логия.
Доказательство очевидно. Этот результат известен как правило
дедуктивного вывода — modus ponens.
2 В. Н. Вяпш
•18
ГЛ. 1. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ
1.3. Исчисление высказываний как формальная система
Рассмотрим формальную аксиоматическую систему ФС! для ис¬
числения высказываний.
1. Исходными термами ФС( являются буквы латинского алфа¬
вита с индексами или без них. Исходные термы называются выска-
зывательпымп переменными или атомами. Исходными символами
логических связок являются Д, V, которые интерпретиру¬
ются как отрицание, конъюнкция, дизъюнкция и импликация. Для
удобства записи формул введем еще пару символов ( , ), называе¬
мых скобками. Других исходных символов исчисление высказыва¬
ний не имеет.
2. Правила образования ППФ:
а) все атомы есть ППФ;
б) если А и В — ППФ, то Д А, А&В, 4 V В, А -► В —
также ППФ;
в) других правил образования ППФ нет.
Примеры ППФ: Х-> —| У, (Х&У)-»-(У\/ Д Z). Для удобст¬
ва внешние скобки будем опускать, а применяя правила силы опе¬
раций, перейдем к топ же форме записи ППФ, что и формул ис¬
числения высказываний. При интерпретации ППФ интерпретируют¬
ся все атомы, в нее входящие, а затем производится интерпретация
результатов логических операций. Окончательный результат интер¬
претаций операций считается результатом интерпретации всей
ППФ. Понятие ППФ, как мы уже выяснили в 1.1, является эф¬
фективным.
3. Система аксиом (П. С. Новиков).
I а1 А-+(В-+А);
а2 (4ч-(Я-*С))->((Л-*Д)-*(Л-*С));
II аЗ А&В-+А:
а4 А & В В\
а5 (А^В)^{(А^С)^(А-+В&С));
III аб А-+А V В;
а7 В-+А\/В:
а8 {АС){{В-+■€)-+{А \] В-*€))■
IV а9
аЮ Л-^ДДЛ;
all ДДП-v П.
Все аксиомы — общезначимые ППФ.
4. Правила вывода.
п. 1. Все аксиомы выводимы.
п.2. Правило подстановки. Пусть А — ППФ, содержащая атом X.
1.3. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИИ КАК ФОРМАЛЬНАЯ СИСТЕМА 19
Тогда, если А — теорема исчисления высказываний, то заменив
в ней атом X всюду, куда он входит, на произвольную ПГ1Ф В, мы
получим также теорему. Сокращенно обозначим это правило через
ПС. В принципе, считая, что каждая аксиома понимается как схе¬
ма аксиом, т. е. включает в себя бесконечно много аксиом, это пра¬
вило излишне. Мы оставим его ввиду наглядности и ясности
изложения.
п. 3. Правило modus ponens (правило дедуктивного вывода).
Если А и А В — теоремы, то S — также теорема. Это правило
будем сокращенно обозначать через МР.
п. 4. Других правил вывода нет.
Пример 1.2. Обозначим через Р любую выводимую ППФ в
ФС„ Покажем, что I— X Р:
1) Ь У — (X— У) al;
2) Ь Р-+{Х-+Р) ПС;
3) ЬХ + Р МР.
Пример 1.3. Покажем, что Н XX:
1) h(X-(T + Z))-((X-F)-(X-Z)) а2;
2) Ь(Х + (У^ Х))-((Х-У)^(Х-Х)) ПС;
3)МХч-У)ч-(х-ч-х) МР;
4)Ь(Х — Р)ч-(Х--Х) ИС, здесь b Р;
5) I- X -► X Пр. 1.2 и МР.
Считаем, что каждая ППФ В выводима из множества посылок
А1, А2, ■.., Ап, если:
1) каждая А, (1 < i<n) выводима из Аг, ..., -4„;
2) каждая выводимая в ФС, ППФ выводима также из Аи А2, ...
А •
• • ЛП,
3) из выводимости А и А -► В из А,, А2, ..Ап следует выво¬
димость В из А„ А%, ..., Ап.
Если At, А2, ..., Ап являются аксиомами или другими выводи¬
мыми ППФ, то множество выводимых из них ППФ совпадает со
множеством всех выводимых в данной ФС1 ППФ.
Понятие выводимости сводится к понятию доказуемости с по¬
мощью теоремы Ж. Эрбрана о дедукции, которая гласит:
Если И,, Л2, ..., Anh-B, то К4, -► (А2 (Ап ->- В)...)).
Таким образом, показывается, что еслй ППФ В выводима из по¬
сылок А,, А2, ..., Ап, то ППФ Ai ->- (А2 . ,(Ап В)...)) ость
теорема. Как следствие этой теоремы, приведем несколько правил
ФС,, которые значительно сокращают путь доказательства теорем.
Правило 1 (правило силлогизма).
Если I- А В и I- В С, то I- А С.
Очевидно, что
1) А -+В, В^ С, A hC МР;
2) I- {А В) -*■ ((В С)) -► (А С)) теорема дедукции;
3)1-(В^С)^(А^С) МР;
4) h А ->■ С МР.
Правило 2 (разновидность силлогизма).
2*
20
ГЛ. 1. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЯ
Если А I- В, С f- D и В, D Y- Е, то А, С Ь Е.
1) Н С -*■ D теорема о дедукции;
2) BY-D^-E теорема о дедукции;
3) BY- С -+■ Е силлогизм из 1, 2;
4) В (С —*■ Е) теорема о дедукции;
5) Н А В теорема о дедукции;
6) I— А ->-(С Е) силлогизм из 4, 5.
Правило 3 (правило перестановки мест посылок).
Если Y- А {В —*■ С), то и h В -+(А С).
1) А -+■ (В С), В, A Y-С МР;
2) А (В C)Y- В (А С) теорема о дедукции.
Читатель аналогично может доказать следующие два правила.
Правило 4 (правило объединения посылок).
Если Н Л-*■(£-*• С), то Н А & В С.
Правило 5 (п])авнло разъединения посылок).
Если Ь- А & В С. то Y- А -*-(В С).
Система аксиом исчисления высказывании обладает следующи¬
ми тремя важными свойствами: полнотой, непротиворечивостью и
независимостью. Тот факт, что любая теорема ФС, является обще¬
значимой ППФ. вытекает из того, что все аксиомы — тавтологии и
правила вывода, примененные к тавтологиям, всегда приводят
к тавтологиям. Обратное утверждение и представляет собой теоре¬
му о полноте.
Теорема 1.4 (о полноте в широком смысле). Если ППФ А фор¬
мальной системы ФС^ является общезначимой, то она есть теорема
этой системы.
Кроме понятия полноты в широком смысле имеет место понятие
полноты логического исчисления в узком смысле. Исчисление вы¬
сказываний называется полным в узком смысле, если присоедине¬
ние к его аксиомам какой-нибудь не выводимой в нем ППФ приво¬
дит к противоречию.
Перейдем ко второму свойству системы аксиом — непротиворе¬
чивости. Проблема непротиворечивости является одной из карди¬
нальных проблем математической логики.
Любое логическое исчисление называется непротиворечивым,
если в нем не выводимы никакие две ППФ, из которых одна явля¬
ется отрицанием другой. Если мы имеем противоречивую систему,
то в ней мы могли бы вывести любые ППФ, что не представляло
бы никакой ценности, так как в такой системе не было бы разли¬
чий между истиной и ложью.
Например, известно, что следующая ППФ есть теорема, т. е.
t- А\А-+В) и если в противоречивой системе некоторая ППФ
А была бы выводима вместе со своим отрицанием —| А, то по пра¬
вилу МР была бы теоремой любая ППФ В.
Теорема 1.5 (о непротиворечивости). Исчисление высказывании
непротиворечиво.
1.4. НОРМАЛЬНЫЕ ФОРМЫ
21
И наконец, третье свойство системы аксиом — независимость.
Аксиома, не выводимая с помощью правил вывода па остальных
аксиом, называется независимой от этих аксиом, а система аксиом,
в которой ни одна аксиома не выводима из остальных, называется
независимой системой аксиом.
Теорема 1.6 (о независимости). Каждая аксиома формальной
системы OCi независима.
В заключение этого раздела заметим, что с помощью теоремы
о полноте устанавливается факт равноценности понятия общезна¬
чимости и доказуемости. Так как вопрос об общезначимости может
быть эффективно решен для произвольной ППФ, то понятие теоре¬
мы в исчислении высказывании эффективно.
1.4. Нормальные формы
В дальнейшем там, где мы не применяем понятие формальной
системы, будем ППФ называть формулой. Любую формулу исчис¬
ления высказывании удобно представить в виде так называемой
нормальной формы. Атом пли его отрицание будем называть
литерой.
Говорят, что формула В представлена в конъюнктивной нор¬
мальной форме (КНф) тогда и только тогда, когда она имеет фор¬
му В = Вг & В.2 & ... & Вт, где каждая из В{ (1 ^ I ^ т) есть
дизъюнкция литер. Например, В = У П ^>) & (~1 Хг V ^2 V
V ~] Xa) & Хя.
Аналогично говорят, что формула В представлена в дизъюнк¬
тивной нормальной форме (ДНФ) тогда и только тогда, когда она
имеет форму В = V В2 V ... V Вт, где каждая из В, (1 < i < т)
есть конъюнкция литер. Например, В = (~| & Х„ & л3) у (Хх &
&*2)V1*3.
Любая формула исчисления высказываний может быть преоб¬
разована в нормальную форму с помощью следующего алгоритма.
Шаг 1. А ~В = (А-+В)&{В-+ А).
А^В= ~]А у В.
Шаг 2. “П А = А.
~| (Д V В) = ~| А & 1В |
П (Л & В) = п А у -]\в\закон Де-м°Рга™
Шаг 3. А у (В & С) = (А у В) & (А у С) (для КНФ).
А&(Ву С)=А&Ву А&С (для ДНФ).
Пример 1.4. Получим КНФ для формулы {А -> (В у ~] С)) -*■ D.
{А-+(В \/~|С))-Я = (-|А у В у + Ь =
= П ПА V В у ~\ С) у D = (А & ~\ В&С) У D =
= (D У Л) & (D У СП В & С)) = (D У А) & (D У 1 В) & (D У С).
22
ГЛ. 1. ИСЧИСЛЕНИЕ ВЫСКАЗЫВАНИЙ
Пример 1.3. Получим ДНФ для формулы ~] (А & В) & (Л \/ В).
Ч (А & В) & (А V В) = (П А V п В) & (А V В) =
= (П л V 1 Щ & А) V (П л V п В) & i?) = (Л &-] Я) V (» &"1 Л).
1.5. Логические следствия
Очень часто нам приходится иметь дело с утверждениями, кото¬
рые выводятся механическим путем из начального списка рассуж¬
дений, фактов, посылок, аксиом. Этим занимается раздел математи¬
ческой логики — теория дедуктивного вывода. В соответствии
с правилами, установленными в тон или иной логической системе,
заключительному утверждению — теореме, полученной из началь¬
ной системы утверждений — аксиом, посылок, приписывается ис¬
тинностное значение И, если каждой аксиоме, посылке также при¬
писывается значение II. Рассмотрим пример.
Пример 1.6. «Если я поеду автобусом, п автобус опоздает, то
я опоздаю па работу. Если я опоздаю па работу п стану огор¬
чаться, то я не попадусь на глаза моему начальнику. Если я не
сделаю в срок важную работу, то я начну огорчаться н попадусь
на глаза моему начальнику. Следовательно, если я поеду автобусом,
а автобус опоздает, то я сделаю в срок важную работу;). Запишем
все посылки it заключенно в символическом виде:
1) А &В-+С:
2) C&D-+~\E;
3) ~\K^D&E;
4) А&В-+К.
Покажем, что заключение (4) истинно, когда истинны все три
посылки. Представим посылки в КНФ.
(~\(А& В) V С) & П (С & D) V 1 Е) & (К V D & Е) =
= п А V 1 В V С) & п с V 1D V1Е) & (К V D) & (К V Е).
Аналогично заключение: ~] (Л & В) \J К = ~\ А у —| В \/ К.
Задавая интерпретации, в которых истинны посылки, нетрудно
обнаружить, что будет истинно и заключение. Желающие могут
выписать истинностную таблицу, чтобы в этом убедиться.
Таким образом, если даны формулы Fh Ег. ..., Fn и В, то гово¬
рят, что формула В является логическим следствием Fu F«, ..., Fn
(или В логически следует пз Fu ..., F„) тогда и только тогда, ког¬
да для любой интерпретации /, в которой Fx & F2 & ... & Fn— ис¬
тинно, В также истинно.
Логически правильные рассуждения важны для образования
новых истинных утверждений пз истинных посылок. Убеждение в
логической правильности конкретного рассуждения связано с актом
1.5. ЛОГИЧЕСКИЕ СЛЕДСТВИЯ
обобщения, который заключается в переходе от этого конкретного
рассуждения к его форме. Переход от конкретного рассуждения
к его форме можно описать как замену имен, обозначающих кон¬
кретные отношения, функции и константы на непнтериретирован-
ные имена для отношении, функций, констант. 11 наоборот, из лю¬
бого формального рассуждения можно, интерпретируя входящие
в это рассуждение неопределенные имена, получить конкретное
рассуждение. Естественно, если формальное рассуждение логически
правильно, то интерпретированное рассуждение будет истинным.
Для обозначения логического следования формул В из посылок
Fu Рг, ..., Fn будем писать Fu Fz. .... /'„ Н= В. Символ Несть неко¬
торое отношение между формулами, причем, если посылки соеди¬
нены знаком &. то имеет xiedo двуместное отношение N: Ft & Fa&
& ■ • ■ & Fn (= В.
Теперь приведем две простые, но важные теоремы, связываю¬
щие понятия логического следования с понятиями общезначимости
и противоречия.
Теорема 1.7. Даны формулы FF.. .... /■’„ и В. Формула В
является логическим следствием формул F{. F2, ■ • •, Fn тогда и толь¬
ко тогда, когда формула F^ & F2 & ... &Рп-+В общезначима, m. е.
I35 & ^2 & ••• &Fп—*~В.
Теорема 1.8. Даны формулы F,. F,. ..., /•'„ и В. Формула В яв¬
ляется логическим следствием формул F,, F2 Fn тогда и только
тогда, когда формула Fг & F2 & . . . & Fn & —| 'В противоречива.
Таким образом, факт, что данная формула является логическим
следствием конечной последовательности формул, сводится к дока¬
зательству общезначимости или противоречивости некоторой фор¬
мулы. Следовательно, имеется полная аналогия при выводе теоре¬
мы из множества аксиом или посылок в формальной системе,
и многие проблемы в математике могут быть сформулированы как
проблемы доказательства теорем.
Обозначим общезначимую формулу через ■, а противоречи¬
вую — через О. Вернемся к примеру 1.6 н покажем, что формула
С1 А V 1 В V С) & сп с V п D V п Е) & (К V D) &
&{KV Е)&-[(-\Ау-\Ву К)
является противоречивой.
Действительно,
ги V "| д V С) &("I с V "| Я V "I Я) &
& (К V D) & (К V Е) & А & В &П К = А & В &-| К&С &
&(А&В&~\К&ДС У A&B&^K&1D V
Аналогично можно показать общезначимость формулы
ПА V ~|Д VC)&(1C У ID \/-\Е)&(К\/ D)&(K\J Е)-+
-+{ДА\/ДВ\/ К) = Ш.
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОДРЯДА
Применени wit здесь подход для получения противоречивой фор¬
мулы, конечно, далек от практического применения. В дальнейшем
будут даны более аффективные процедуры доказательства общезна¬
чимости пли противоречивости формул.
Г Л А В А 2
ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
2.1. Основные понятия исчисления предикатов
первого порядка
Исчисление высказываний оказывается недостаточным для обо¬
снования, например, таких рассуждений:
1. «Всякое положительное целое число есть натуральное число.
Число 5 есть положительное целое число. Следовательно, о есть на¬
туральное число».
2. «Я видел портрет Мартынова. Мартынов — убийца Лермонто¬
ва. Следовательно, я видел портрет убийцы Лермонтова».
Объяснение лежит в том, что исчисление высказываний ограни¬
чивается структурой предложений в терминах простых высказыва¬
ний, а приведенные выше рассуждения требуют анализа структуры
предложения в смысле связи субъекта и предиката, как это делает¬
ся в грамматике. Правда, в логике слово «предикат» употребляется
в более общем смысле, чем в грамматике, где опо выражает только
то, что говорится о субъекте.
Пусть задано некоторое множество V ={v,. v->, .... vk, ...}, в ко¬
тором, Vi, vz и т. д.— какие-то определенные предметы из этого
множества. Обозначим любой предмет из этого множества через х
н назовем х предметной переменной. Тогда высказывания об этих
предметах будем обозначать в виде P(vl)1 Q(vt, v2) и т. д., причем
такие высказывания могут быть как истинными, так и ложными.
Например, если V ={{, 2, 3, ...}, то высказывание «4 есть четное
число» является истинным, а «7 есть четное число»— ложным.
Если вместо конкретных чисел 4, 7 и т. д. поставим предметную
переменную х, то получим предикат «ж есть четное число», обозна¬
чаемый Р(х).
Таким образом, предикат на множестве I есть логическая функ¬
ция, определенная на V, при фиксировании аргументов которой она
превращается в высказывание со значениями {И. Л}. П данном
случае имеем логическую функцию Р(х), определенную па множе¬
стве V и принимающую два значения: И, Л. В общем случае через
Р(хи х^ .. ., хп) обозначим и-местный предикат, обладающий тем
свойством, что, приписав значения переменным xt. х2, ..., хп из
соответствующих областей определения, получим высказывание со
значениями (И, Л).
2.1. ОСНОВНЫЕ ПОНЯТИЯ
25
Важную роль в излагаемом далее так называемом исчислении
предикатов (слова «первого порядка» для краткости пока будем
опускать) играют две связки V и 3. Связка V называется кван¬
тором общности, а связка 3 — квантором существования. Пусть
Р(.г) означает, что х обладает свойством Р. Тогда договоримся че¬
рез УхР(х) обозначать утверждение: «Нее х области Г обладают
свойством Р» или «Для всякого предмета х области V выражение
Р(х) истинно». Запись ЗаР(.г) будет означать, что существует
предмет .г области Г, обладающий свойством Р, или существует
предмет х области V, для которого Р(х) истинно.
Пусть А — формула исчисления предикатов (определение фор¬
мулы будет дано ниже). В выражении Ух А (или Зх А) форму¬
ла А называется областью действия квантора Ух (соответствен¬
но Зх).
Введем понятия свободного и связанного вхождения неременной
в формулу. Вхождение переменной х и данную формулу называет¬
ся связанным, если х является переменной входящего в эту форму¬
лу квантора Ух (пли Эл) или находится в области действия вхо¬
дящего в эту формулу квантора Vх (или За-); в противном слу¬
чае вхождение переменной х в данную формулу называется сво¬
бодным. Отсюда переменная называется свободной (связанной) пе¬
ременной в данной формуле, если существуют свободные (связан¬
ные) ее вхождения в эту формулу.
В оощем случаеУх\^У ... Ух^^А^х^. т.,. .. В?)» ^де ад^,
. ..,адг являются подмножеством переменных ад, .г.,. ..., хп, будет
пониматься как утверждение, что для любых значений, придаваемых
предметным переменным в, i;,, области определения
А(х..., хп), истинность Л(х,, .... х„) зависят только от свобод¬
ных переменных, входящих в эту формулу. Аналогично Зад Зад3 ...
... 3xirA(xu ад, .... х„), где дд , ..., ад г—также подмножество пере¬
менных хи ад, хп. понимается как утверждение, что существуют
значения переменных хi, ади ..., адг из области определения
А (ад ..., хп) такие, что истинность А (ад, ..., хп) будет зависеть
лишь от свободных переменных, входящих в эту формулу.
Если к формуле А (ад. хг. ..., хп) применяем п раз какие-либо
кванторы, то получаем выражение
^ 1'Н}Пад * * . 'Яп^пА (ад, а.,, . . ., ад,), ув ^ * 3}'
представляющее собой некоторое постоянное высказывание, кото¬
рое называется замкнутой формулой, г. е. формулой без свободных
переменных.
Рассмотрим выражение IV хЛ(х). которое означает, что не
для всех х из области определения А (х) истинно. Это высказыва¬
ние в свою очередь, равносильно высказыванию, что существует но
крайней мере один предмет х из области определения А(х), для
которого А (х) ложно, т. е. ^~| УхА(х) = Зх(~\ А(х)).
26
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
Аналогично можно показать, что "~|3хА(х) = Va;(—| А(х)).
Отсюда кванторы общности и существования называются двой¬
ственными друг другу.
Применяя правило силы операций, будем считать, что кванторы
V и 3 располагаются по силе между связками ~, -> и связками
V, &, <-|. Во избежание недоразумений в ряде случаев будем ста¬
вить скобки.
Таким образом, в исчислении предикатов используются:
хи Хг, ..., хп, ...— предметные переменные;
аи а2, ..., ак, ...— предметные константы;
А\, А?ъ .. ., А1т, Р\, . . . —предикатные буквы;
f\, fi, ..., fk, ... — функциональные буквы.
Верхний индекс предикатной или функциональной буквы ука¬
зывает число аргументов, а нижний служит для различения букв
с одним и тем же числом аргументов.
Правила конструирования термов:
1) всякая предметная переменная или предметная константа
есть терм;
2) если /™ — функциональная буква и tu t2, .... tn — термы, то
fi (ti, t2, ..., tn) есть терм;
3) других правил образования термов нет.
Например, х, у н 1 — термы; mult и plus — двухместные функ¬
циональные символы, тогда plus (г/, 1) и mult(;r, plus (г/, 1))—так¬
же термы.
Правила образования атомов (атомарных формул):
1) всякое переменное высказывание есть атом;
2) если Ai — предикатная буква, a tu ..., tn — термы, то А”
(ti, ..., tn) есть атом;
3) других правил образования атомов нет.
Формулы исчисления предикатов конструируются по следую¬
щим правилам:
1) всякий атом есть формула;
2) если А и В — формулы и х — предметная переменная, то
каждое из выражений-\А, А-+В, А~В, А&В, A\J В, Ух А и
Эх А есть фордтула;
3) других правил образования формул нет.
Как и раньше, будем употреблять скобки только в тех случаях,
которые исключают двусмысленности. Кроме того, всегда предпо¬
лагаем, что свободные и связанные переменные обозначепы разны¬
ми буквами н если один квантор находится в области действия
другого, то переменные, связанные этими кванторами, также обо¬
значены разными буквами.
Пример 2.1. Пусть Р(х) и N(х) обозначают соответственно
«х есть положительное целое число» и их есть натуральное число».
Тогда утверждение «Всякое положительное целое число есть нату¬
ральное число. Число 5 есть положительное целое число. Следова-
2.1. ОСНОВНЫЕ ПОНЯТИЯ
27
телыю, 5 есть натуральное число» будет записано на языке исчис¬
ления предикатов следующим образом:
Vх(Р (х) -> Лг (х))
Р(Ъ)
Лт(5)
Отметим, что для перевода предложении с русского языка на язык
исчисления предикатов не существует механических правил.
В каждом отдельном случае нужно сначала установить, каков
смысл переводимого предложения, а затем пытаться передать тот
же смысл с помощью предикатов, кванторов и термов. Для иллюст¬
рации того, что при переводе могут возникнуть трудности, приве¬
дем два довольно несложных высказывания.
1. Только артисты восхищаются артистами:
Vx Vr/ (В (у, х)&А(х)-+А (у)),
где А(х) — «х есть артист» и В(у, х) —«у восхищается х».
2. Все артисты восхищаются только артистами:
Vx(B (х) V;/ (/? (х, у)-*- А (у))*).
Формулы исчисления предикатов имеют смысл только тогда,
когда имеется какая-нибудь интерпретация входящих в нее
символов.
Под интерпретацией в исчислении предикатов будем понимать
всякую систему, состоящую из непустого множества F, называемо¬
го областью интерпретации и какого-либо соответствия, относящего
каждой предикатной букве И™ некоторое «-местное отношение в
V(т. е. F”b-*-{n, Л}), каждой функциональной букве /"— неко¬
торую «-местную функцию в V (т. е. Vй *-*V) и каждой предмет¬
ной константе а, — некоторый элемент из V. При заданной интер¬
претации предметные переменные мыслятся пробегающими об¬
ласть V этой интерпретации, а логическим связкам ~], —, V» &
и кванторам придается их обычный смысл.
Для данной интерпретации любая формула без свободных пере¬
менных представляет собой высказывание, которое может быть
истинным или ложным, а всякая формула со свободными перемен¬
ными выражает некоторое отношение на области интерпретации,
причем это отношение может быть истинным для одних значении
переменных из области интерпретации и ложным для других.
*) Трудность состоит в необходимости построения некоторого рассужде¬
ния, отражающего смысл высказывания, которое и записывается далее в
символах исчисления предикатов. Например, для перевода первого высказы¬
вания таким рассуждением является: «Из того, что некто восхищается артис¬
том, следует, что он сам является артистом», (Прим. ред.)
28
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
Пример 2.2. Дана формула A- (f\ (х,, х.,), аг). В качестве об¬
ласти интерпретации берем множество всех целых положительных
чисел и интерпретируем А2(х, у) как х^у, х2)— как ад + х2
и а, = 5. Тогда т,), аг) представляет отношение ад + хг 5=
^ л, которое выполнимо для всех упорядоченных троек <6ц &2, Ьъ>
целых положительных чисел таких, что б, + Ь-, 5* о.
Пример 2.3. Дана замкнутая формула (х2, хt).
Пусть область интерпретации — множество положительных целых
чисел и Л2(х, у) интерпретируем как х^у. Тогда записанное вы¬
ражение оказывается истинным высказыванием, утверждающим
существование наименьшего целого положительного числа. В даль¬
нейшем верхний индекс предикатной или функциональной буквы
будем для краткости опускать.
Для выяснения факта, истинна или ложна формула в данной
интерпретации I, необходимо, зада:! область интерпретации, интер¬
претировать, прежде всего, все термы, входящие в формулу, затем
атомы и, наконец, саму формулу.
Пример 2.4. Дала формула V,r (Л (х)—<-В (/(.г), я)). Имеем
следующую интерпретацию: F= (1, 2); я = 2; /(1) = 2; /(2) = 1.
A{i) Л (2) В{ 1,1) В( 1,2) В( 2,1) В( 2,2)
и Л л л и и
Если ж=1, то Л(х)^В(Пх), я) = А(1)-£(Ж), 2) = Л(1) —
-Я(2, 2)= И.
Если х = 2, то А (х) — В (fix), а) = А (2) — B(f(2). 2) = А(2) —
-5(1, 2)= И.
Следовательно, эта формула истинна в данной интерпретации.
Если область V интерпретации конечна, то в принципе можно
выяснить истинность пли ложность любой формулы, перебрав все
различные элементы множества F", где п — число различных пере¬
менных, входящих в формулу. Однако на практике V часто на¬
столько велико или бесконечно, что о переборе не может быть и ре¬
чи. Поэтому логический вывод оказывается просто необходим.
Понятие общезначимости и противоречивости формул, введен¬
ные в исчислении высказываний, сохраняют свою силу и для ис¬
числения предикатов. Кроме того, будем называть формулу выпол¬
нимой (непротиворечнвой), если она истинна но крайней мере в од¬
ной интерпретации. Аналогично формула называется опровержи¬
мой, если она ложна по крайней мере в одной интерпретации.
Отсюда очевидно, что формула А общезначима тогда и только тог¬
да, когда ~| А — невыполнима, и А — выполнима тогда и только
тогда, когда ~] А—опровержима.
Пример 2.5. Покажем, что формула VxP(x)-+P(y) (Р —
предикатный символ) общезначима.
Предположим, что данная формула при некотором распределе¬
нии значений в некоторой области интерпретации V принимает
2.1. ОСНОВНЫЕ ПОНЯТИЯ
29
значение Л. Тогда из определения импликации вытекает, что
VxP(x) есть И, а Р(у) есть Л, чего не может быть. Следова¬
тельно, данная формула общезначима.
Пример 2.6. Покажем, что формула Р (у) Зх Р (х) (Р —
предикатный символ) также общезначима.
Как и в предыдущем примере, зададим такое распределение
приписываемых значений в некоторой области интерпретации V,
при котором 3хР(х) принимает значение Л. Это будет иметь мес¬
то, если Р(х) получает значение Л при измевешш х в пределах
зтон области V. Но тогда и Р(у) должно получить значение Л.
Пример 2.7. Покажем, что формула ЗхР(х)-+- 'ixP (х) не
является общезначимо]"!.
Пусть область интерпретации V ={а. Ь) и пусть Р(а) если И,
а Р(Ь) есть Л. Тогда и вся формула получит значение Л.
Теоремы 1.2 и 1.3 исчисления высказываний имеют моего и для
исчисления предикатов. Что касается теоремы 1.1. то остановимся
на ней подробнее.
Говорят, что формула исчисления предикатов Л [х] (обозначение
А [х\ применяется для подчеркивания зависимости А от х; кроме
того, А [ж] помимо х может содержать другие свободные перемен¬
ные) свободна для переменной у, если в А отсутствуют свободные
вхождения х, входящие в область действия кванторов Vy или 3?/.
Поэтому подставить переменную у вместо переменной х в формулу
исчисления предикатов А — это значит заменить каждое свободное
вхождение переменной х в А вхождением у. Например, если фор¬
мула А[х] есть Р{х, z)\J4yF(y), то эта формула свободна
для у, но если А[х\ есть Р (х) & Чу F (х, у), то она не свободна
для у.
Поэтому во избежание различных недоразумений будем при¬
менять такие подстановки у вместо х в А [ж], что А [ж] свободна
для у.
Аналогично будем называть терм t свободным для неремепной
%г в формуле А, если никакое свободное вхождение ж* в А не ле¬
жит в области действия квантора Va'j или 3xj где х,— пе¬
ременная, входящая в t.
Например, терм /(ж,, xs) свободен' для жд в формуле
^х2Р(х1, x2)-+Q(xj), но не свободен для ад в 3ж3Vx2 (Р (ад, ж2)->
-+<?(х3))-
Приведем в заключение несколько теорем.
Теорема 2.1. Пусть А (х)—формула, свободная для у. Тогда:
а) |= Vx А (х) -> А (у);
б)1= А(у)-+ЗхА(х):
Следствие. Если ■ V-/; А (.г), mo Н А (./).
Доказательство очевидно.
Теорема 2.2. Пусть х — какая-либо переменная, В — какая-либо
формула, не содержащая свободных вхождений х и А(х)—какая-
либо формула. Тогда:
30
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
а) если f=В А (х), то f= В—*- Ух А(х);
б) если Н= А (х) В, то |= 3 хА(х)-*-В.
Следствие. Если Н=Н(х), то Ь= УхА(х).
Таким образом, исчисление предикатов первого порядка пред¬
ставляет собой расширение исчисления высказывании. Опускаемые
всюду слова «первого порядка» говорят о том, что допускается при¬
менение кванторов только к предметным переменным.
2.2. Исчисление предикатов первого порядка
как формальная система
Рассмотрим формальную аксиоматическую систему ФС3 для ис¬
числения предикатов.
1. Исходными элементами ФС2 являются:
а) счетное множество предметных переменных хи х2. ..., хп, ...;
б) конечное (может быть и пустое) или счетное множество
предметных констант аи а2, а3, ...;
в) конечное (может быть и пустое) пли счетное множество
функциональных букв f\, f\, ;
г) непустое конечное или счетное множество предикатных букв
А1 А’ Р1 ■
• • ■ t • ■ ч J /;> ■ • • ’ _
д) символы исчисления высказывании: |, \/, —►;
е) скобки ( ) н занятая;
ж) символы V и 3;
з) других исходных элементов нет.
2. Правила образования ППФ:
а) всякий атом есть ППФ;
б) если А и В — ППФ н х — предметная переменная, то каж¬
дое из выражении ~| А, А-+В, А & В, A\J В,УхА и Зх А есть ППФ;
в) других правил образования ППФ нет.
Таким образом, форма записи ППФ совпадает с записью фор¬
мул исчисления предикатов.
3. Система аксиом.
К системе аксиом исчисления высказываний добавляются еще
две аксиомы:
а12. Ух А (х)—>- A (t). где А(х) есть ППФ и t — терм, свобод¬
ный для х в А (х).
а13. A (t) -+3х А (.г), где А(х) есть ППФ и t — терм, свобод¬
ный для х в А (х).
4. Правила вывода.
п. 1. Все аксиомы выводимы.
п. 2. Правило подстановки. Это правило аналогично правилу
подстановки, которое имело место для исчисления высказывании.
Только для ФС2 мы будем иметь дело с такой подстановкой тер¬
мов t2l ..., tk вместо х\^ .. ■? в А [^i^* что
А [‘Иг’ ХН' • • •> Хч\ свободна ДЛЯ tu к, ..., th.
2.2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ КАК ФОРМАЛЬНАЯ СИСТЕМА
31
Несоблюдение этого условия может привести к неприятным
последствиям. Например, пусть в аксиоме 12 терм t не свободен
для х в А [х] и пусть А [х] есть ППФ вида ~| Vx2 Л (хъ х2) и t есть
х2. Тогда терм t не свободен для xt в ~"| 'ix2A(xl, хг).
Рассмотрим а12:
Vxj (“| Vx, A (ад. х2)) ~1 Vx2.4 (а;2, х2)
и возьмем в качестве интерпретации любую область, содержащую
не менее двух элементов, а в качестве А — отношение тождества.
Тогда посылка Vxx (—| Vx2 А (х1, х2)) в а12 истинна, а заключение
~| Узд, Л (х.,, х2) ложно.
п. 3. Правило modus ponens (МР).
Если h А и Н А В, то Н- В.
п. 4. Правило обобщения (или правило связывания квантором
общности).
Если ППФ В^А( х) при условии, что В не содержит свобод¬
ных вхождений х, выводима, то выводима будет и ППФ
В —>-Vх Л(х). В дальнейшем это правило будем обозначать че¬
рез Gen.
п. 5. Правило конкретизации (или правило связывания кван¬
тором существования).
Если А(х)^В — выводимая ППФ (теорема) и В не содержит
свободных вхождений х, то Зх А (х) -> В также теорема. Обоз¬
начим это правило через Ex.
п. 6. Если А — теорема, имеющая квантор общности и/шш кван¬
тор существования, то одна связанная переменная в А может быть
заменена другой связанной переменной, отличной от всех свобод¬
ных переменных, одновременно во всех областях действия кванто¬
ра и в самом кванторе. Полученная ППФ также является теоремой.
п. 7. Других правил вывода нет.
Пример 2.8. Пусть Ь-П(х). Покажем, что ЬУ.х4(.т).
1) \-В~*А(х) см. пример 1.2;
2) h-B-^'ixA(x) Gen;
3) Н Р Vх А (х) ПС, где Р—теорема;
4) I- УхЛ(х) МР.
Полученное правило иногда называют производным правилом
связывания квантором (см. следствие из теоремы 2.2).
Определение выводимости в исчислении предикатов является
расширением соответствующего определения для исчисления выска¬
зываний. Поэтому среди выводимых ППФ исчисления предикатов
будут находиться все выводимые ППФ исчисления высказываний.
Будем считать, что ППФ В выводима из ППФ .4 (аналогично
из множества ППФ Ль Л2, ..., Л„), если:
1) А выводима пз Л;
2) каждая выводимая в ФС2 ППФ также выводима и пз Л;
32
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДК V
3) из выводимости ППФ 5, п Bt -*■ В, из А следует выводимость
В а из А;
4) если ППФ Bt-^B2(x) выводима из А, причем В, и А не
содержат свободных вхождении х, то и ППФ В1—уУ/хВ2(х) также
выводима из А;
5) если ППФ В2(х)->- Bt выводима из А. причем В, и А не
содержат свободных вхождении ,г, то и ППФ Зх В.> (х) -*■ Вt вы¬
водима из А ;
6) если ППФ В выводима из ППФ А, то и В', полученная из
В подстановкой термов вместо свободных вхождений в В перемен¬
ных, также выводима из А;
7) если В выводима из А. то и В’, полученная из В любым
переименованием связанных переменных, отличных от имен сво¬
бодных переменных, выводима из А.
Пывод ППФ из пустого множества посылок есть /доказательство
этой ПИФ. а сама ППФ называется теоремой.
Для исчисления предикатов также имеет место теорема дедук¬
ции: если At, А-i, .... A n't-В, то У- At -► (А, -*■ (.. ,(Ап В)...)).
Правила силлогизма и перестановки посылок для исчисления
предикатов доказываются аналогично.
II ример 2.9. Докажем, что 3 хЧуА(х. у)—>• V у Зх А (х, у) выво¬
дима.
1) \-ЧуА{х, у) —А (.г. t). а12:
2) (— A (z, t)-+3irA(u\ t), а 13:
•!) |— V// Л (л, у) —*■ Зк' A (iv, t) силлогизм из 1 и 2;
4) ЬЗхЧуА{х, y)-+3wA(w, t), Ex;
5) j- 3.x Vi/ A (x, y)-*Vt3w A(w, t), Gen;
0) (-3 x.4yA(x. ;/)—» Vy 3xA(x, y), np.6.
Пример 2.10. Докажем, что Vx (A (x) —- В (./)) —>- (Зх Лх
—*■ 3.T В (x)).
1) h Vx (A (x) В (x)) - (А (у) - В (у)). al2;
2) \/х(Л(х)-+В(х))^А(у)^В(уУ,
4) |— В (у) —Зх В (х), а13;
4) Vx {А (х) ~^В (х)) А (у) -а- ЗхВ(х) силлогизм из 2 и 3;
5) Vx (А (х)-+В(х)) КЗ у А (у) Зх В (х), Ех;
6) - V./: (Л (,г) В (;/)) —(3 / А (.с) Зх В (х)) теорема о дедук¬
ции и пр. 0.
Остановимся теперь на свойствах исчисления предикатов: не¬
противоречивости и полноте. Как и раньше, будем считать непроти¬
воречивым такое исчисление, в котором не выводимы никакие две
ППФ, из которых одна является отрицанием другой.
2.2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ КАК ФОРМАЛЬНАЯ СИСТЕМА 33
Теорема 2.3. Исчисление предикатов первого порядка непроти¬
воречиво.
Так как аксиомам исчисления предикатов соответствуют выводи¬
мые ППФ исчисления высказываний, то, очевидно, что всякой вы¬
водимой ППФ исчисления предикатов соответствует выводимая
ППФ исчисления высказываний. Из полноты исчисления высказы¬
ваний и непротиворечивости исчисления предикатов вытекает, что
всякая ППФ исчисления высказываний, выводимая в исчислении
предикатов, является выводимой ППФ исчисления высказываний.
Теорема 2.4. Во всяком исчислении предикатов первого поряд¬
ка всякая теорема является общезначимой ППФ.
Обратное утверждение носит название проблемы полноты исчис¬
ления предикатов в широком смысле, которая решается положи¬
тельным образом. Впервые проблему полноты в широком смысле
в 1930 г. доказал выдающийся немецкий математик К. Гедель.
Теорема 2.5 (Геделя о полноте). Во всяком исчислении преди¬
катов первого порядка всякая общезначимая ППФ является тео¬
ремой.
Что касается проблемы полноты в узком смысле, то для исчис¬
ления предикатов первого порядка она решается отрицательно. На¬
помним, что система аксиом называется полной в узком смысле,
если нельзя без противоречия присоединить к данной системе ни¬
какую другую невыводимую ППФ. Исчисление предикатов оказы¬
вается неполным в узком смысле, так как к его аксиомам можно
присоединить без противоречия недоказуемую в нем следующую
ППФ ЭжП(х)—>- Ух А (ж) (см. пример 2.7). Считаем, что преди¬
кат, входящий в данную ППФ, определен на некоторой области V,
состоящей из одного элемента. Тогда данная ППФ вырождается в
ППФ вида АА, которая является выводимой ППФ. Следова¬
тельно, эта ППФ может быть без противоречия присоединена к
аксиомам исчисления предикатов.
До сих пор рассматривалось исчисление предикатов, в котором
отсутствовало такое важное понятие, как понятие равенства. Однако
во многих формальных системах это понятие используется. Не рас¬
сматривая этот вопрос подробно, скажем несколько слов об исчис¬
лении первого порядка с равенством.
Интуитивно понятно, что отношение х = у означает, что хну —
это один и тот же предмет или что ж и у — имена одного и того же
предмета. Равенство обладает следующими свойствами:
1) оно есть отношение эквивалентности (рефлексивно, симмет¬
рично и транзитивно);
2) если ж = у и А есть результат замены одного или нескольких
вхождений х в высказывание В вхождениями у, то А имеет то же
значение, что и В (правило замены равного равным).
Свойства симметричности и транзитивности равенства выводятся
из рефлексивности и правнла замены равного равным.
3 В. Н. Вагин
34
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
Для получения псчисления предикатов с равенством добавим в
рассмотренное нами исчисление предикатов следующее:
1) в число символов предикатный символ =;
2) в правила конструирования ППФ следующее правило: если
х п у— предметные переменные, то х = у — ППФ;
3) в число аксиом следующие две аксиомы:
а!4. Vх1 (хг — хi) (рефлексивность равенства);
а15. 'iх Vy ({х = у)-*- (И (х) -> А (у))) (подстановочность равен¬
ства), где х и у — предметные переменные, А(х) — произволь¬
ная ППФ, а А (у)—ППФ, полученная из А (х) заменой х вхожде¬
ниями у (необязательно всех).
Из аксиом а14 и а15 легко доказываются свойства симметрич¬
ности и транзитивности равенства, т. е.
^(х = у)-^(у =х)
и
ь'(x = y)-*-(y = z-+x = z).
В заключение этого раздела приведем несколько примеров ФС2.
Пример 2.11. Теория частичного упорядочения.
Имеем одну предикатную букву Ах. Обозначим Ai(xu х2) и
*”] Ai (xu х2) через хх < хг и Xi <f х2.
Система аксиом:
1) Vx1(x1<i^x^ (иррефлексивность);
2) Vay V;r3 Vx3 (хх <ix2 & х2 •<.х3-*-х1 < ж3) (транзитивность).
П р п м с р 2.12. Теория групп.
Имеем одну предметную константу щ, обозначаемую как 0, одну
функциональную букву /( и одну предикатную букву At. Обозначим
/i(#i, #2) через Xi + Xziz Ai{xu х2) через х1 = х2.
Система аксиом:
1) Ух1\/х2Чх3 (ж, + (х2 + х3) = (Xi + х2) + хг) (ассоциативность)';
2) Vx^O + хх = хгу,
3) VX} Зх2(х2 + х1 = 0) (существование обратного элемента);
4) V^1(x1 = x1) (рефлексивность равенства);
5) Vx2 (xj = х2-+х2 = хг) (симметричность равенства);
6) ’Vx1'Vx2Vx3 (xt = х2 -*■ (х2 = х3 -*■ Xi = xs) (транзитивность ра¬
венства);
7) V^j Vx2 Уж3 (ж3 = х3 («, + х2 = х,. + х3&хгА- Xi = х3 + хг))
(подстановочность равенства).
Если |— Vay V;r2 (х1 + х2 = х2 + х±), то группа называется абе¬
левой илц коммутативной.
П р и м е р 2.13. Формальная арифметика.
Имеем одну предметную константу щ, обозначаемую как 0, три
функциональные буквы fu /2, /3 и одну предикатную букву At.
Обозначим Ai(xu х2) через xi = x2, /,(ж) — через х\ f2(xu х2)~ че¬
рез Xi + х2 н /3 (хи хг) — через хt • х2.
2.3. ПРОБЛЕМА РАЗРЕШИМОСТИ
35
Система аксиом Пеано:
1) Xi = х2 -э- (х, = х3 -+■ xz — х3);
2) X1 — X2-*-Xi = х2',
3) 0 Фхг;
4) ХХ = Х2 -> = Яа;
5) а?! -h 0 = ;
6) х1А-х2 — (xt + х2)';
7) Xi -0 = 0;
8) х1-х2 = (х1-х2) + хг;
9) А (0) -> (Ух (А (х) -> А (х')) —> Ух А (х)),
где А(х)—произвольная ППФ формальной арифметики, .4(0) и
А(х')—результаты подстановки, соответственно, 0 и i' вместо сво¬
бодных вхождений х в А (х). Интерпретация константы 0 и опера¬
ций следующая: 0 интерпретируется как число «ноль», х' — как
ж + 1, хА-у— как сумма хну, х-у — как произведение хну.
Заметим, что аксиомы с 1 по 8 представляют собой конкретные
ППФ, а аксиома 9 является схемой аксиом, порождающей беско¬
нечное множество аксиом. Приведенная схема аксиом есть принцип
математической индукции.
2.3. Проблема разрешимости
Проблема нахождения эффективной процедуры (алгоритма) решения за¬
дачи из данного класса задач называется проблемой разрешения этого класса.
При определении формальной системы мы требовали существования разре¬
шающей процедуры для понятия вывода, но для понятия выводимости или
доказуемости ППФ этого требования не выставляли. Мы отмечали, что фор¬
мальная система, для которой существует эффективная разрешающая про¬
цедура, позволяющая узнать по данной ППФ, является ли она теоремой или
нет, называется разрешаемой, в противном случае такая формальная система
неразрешима.
Примером разрешимой формальной системы является исчисление выска¬
зываний. Для него мы имеем эффективную процедуру разрешения, выражен¬
ную в виде истинностных таблиц, по которым можно легко судить, является
ли ППФ теоремой или нет.
Исчисление предикатов — пример неразрешимой формальной системы. Нм
птзрешимость исчислеция предикатов доказал в 1936 г. американский логща
|Алонз~6 ‘ЧерчГТТ доказанной им теореме говорится об отсутствии эффективной!
Процедуры при решении вопроса относительно произвольной ППФ формаль-|
Ной системы, содержащей арифметику натуральных чисел, является ли эта
ППФ теоремой. Эта теорема, являющаяся примером «теорем о невозможности»,
отличается от них фундаментальным образом: при доказательстве А. Черч
ffaoT точнор опрелеление понятия эффективной процедуры, претендующее^ на
Jo" чтобы.. охватить все возможные' виды вычислительных процедур.
Из теоремы Черча вытекает теорема Геделя, доказанная им в 1931^ г., ка¬
сающаяся невозможностй~7(оказател^ непротиворечивости формальной те¬
ории, включающей формальную арифметику, конструктивными методами, фор¬
мализуемыми в рамках самой этой теории.
3*
36
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
В другой теореме, обычно называемой теоремой _ГоД??я. о неподнаге* ут¬
верждается, что любая непротиворечивая формальная теория, формализующая
арифметику натуральных чисел, не полна. Гедель показал, что в арифметике
имеется некоторое высказывание А, обладающее тем свойством, что ни А, ни
~\А не являются теоремами, что и доказывает неполноту этой теории. Более
того, поскольку А и Д .4 суть высказывания, то одно из них интерпретируется
как истинное, а другое — ложное. Л так как ни одно из них не доказуемо, то
получается, что в арифметике имеется истинное, но не доказуемое высказы¬
вание, т. е. в арифметике имеется неразрешимое высказывание. Присоедине¬
ние к такой теории этого неразрешимого высказывания в качестве аксиомы
снова приводит к теории, являющейся формализацией арифметики, в кото¬
рой по-прежнему имеются неразрешимые высказывания. Таким образом, тео¬
рема Геделя говорит не только о неполноте, но и о непополнимости формаль¬
ной а рш№£тикйГ^~ '
с После 1936 г. другими математиками была доказапа неразрешимость боль-
шого числа алгебраических теорий. Так, в 1955 г. советский математик
y.rf П. С. Новиков доказал алгоритмическую неразрешимость проблемы тождества
тёбршГ'групп, заключающуюся в невозможности распознавания эквивалент-
r<j¥ ности слов для ассоциативных исчислений специального типа. Проблема эк¬
вивалентности слов для ассоциативных исчислений, т. о. исчислений, состоя¬
щих из совокупности слов в данном алфавите вместе с системой допустимых
подстановок типа Pi — Qt, была впервые сформулирована еще в 1914 г. нор-
вержским математиком Туз. С тех пор предпринимались многие попытки по¬
строить такую общую эффективную процедуру, которая для любого ассоци¬
ативного исчисления и любой пары слов в нет позволила бы установить, эк¬
вивалентны эти слова или нет, т. е. существует ли или нет дедуктивная
цепочка слов, ведущая как от одного слова к другому, так и обратно. В 1946
и 1947 гг. советский математик А. А. Марков ц америкапскин математик
Э. Пост независимо друг от друга построили копкрстные примеры ассоциатив¬
ных исчислений, для каждого из которых проблема эквивалентности слов ока¬
залась неразрешимой.
Долго не поддавалась решению десятая проблема Гильберта, суть кото-
0-1 рой в следующем: требуется найти эффективную процедуру, позволяющую
■А, для любого днофантового уравнения выяснить, имеет ли оно целочисленное
t'' решение. Напомним, что дпофантовым пазывается уравнение вида Р = 0, где
Р — многочлен с целочисленными коэффициентами. Для частного случая
дпофантова уравнения с одним неизвестным такой алгоритм известен и он
сводится к тому, что если уравнепие с целочпсленпымн коэффициентами име¬
ет целый корень х0, то обязательно свободный член в этом уравнении делит¬
ся на хц.
Что же касается общего случая, то вплоть до 1969 г. эта проблема, хотя
пад ней работали многие выдающиеся математики современности, не была
решена. И только в конце 1969 г. советскому математику 10. В. Матиясевизу
.далось доказать, что эта проблема алгоритмически неразрешима.
"'Существование алгоритмически неразрешимых проблем не дает повода
впадать в агностицизм. Действительно, неразрешимость класса однотипных
проблем говорит лишь об отсутствии единой эффективной процедуры для
разрешения всех задач этого класса, но это вовсе не означает, что для кон¬
кретных задач этого класса нельзя найти частичного метода решепия таких
задач. Об этом говорит частный случай днофаптовых уравнепий, об этом гово¬
рит результат Аккермана о разрешимости исчисления одноместных преди¬
катов, результат Пресбургера о разрешимости формальной арифметики, если
из числа ее элементарных символов удалить знак умножения, а в списке ак¬
сиом опустить относящиеся к умножению аксиомы и т. д.
В заключение отметим, что понятие эффективной процедуры является ме¬
таматематическим понятием. Что это значит? Язык, на котором дается описа¬
ние какой-лпбо формальной системы, называется метаязыком в отличие от
предметного языка или языка-объекта, который используется для высказы¬
ваний внутри самой формальной системы. Таким образом, если мы возьмем
2.4. ПРЕНЕКСНЫЕ НОРМАЛЬНЫЕ ФОРМЫ
37
высказывание типа «Исчисление предикатов непротиворечиво», то это есть
высказывание, сделанное па метаязыке. В свою очередь, высказывание типа
Va: (А (х) -*■ В (я)) ->■ (3хА (х) 3х В (х)) есть высказывание, записанное
на предметном языке.
Отсюда понятие теоремы (выводимой ППФ) самой формальной системы
нельзя путать с теоремой, описывающей какие-либо свойства формальной си¬
стемы, последняя есть метатеорема. Вышеприведенное высказывание, напи¬
санное на русском языке, о непротиворечивости исчисления предикатов есть
метатеорема, высказывание же, записанное в терминах V, 3,-> у, &, ~|» ( )
есть теорема исчисления предикатов.
2.4. Пренексные нормальные формы
В исчислении высказываний мы рассмотрели две нормальные
формы—КНФ и ДНФ. В исчислении предикатов тоже имеется
нормальная форма, так называемая пренексная нормальная форма
(ПНФ). Необходимость введения ПНФ будет обусловлена в даль¬
нейшем упрощением процедуры доказательства теорем.
Сначала рассмотри»! некоторые равносильные формулы в ис¬
числении предикатов. Напомним, что две формулы F и Ф равно¬
сильны, т. е. F = Ф, тогда, и только тогда, когда истинностные
значения этих формул совпадают при любой интерпретации F и Ф.
Как и раньше, для подчеркивания факта, что переменная х входит
в формулу F будем писать F{x\, хотя F может содержать и другие
переменные.
Имеем следующие пары равносильных формул:
Vх F [х] \/ Ф = Ух (F [х] V Ф);
Va: F [х] & Ф = V х (F [х] & Ф);
Эх F [х\ V Ф = Эх (F [х] \/ Ф);
Эх F [х] & Ф = Эх (F [х] & Ф)
при условии, что переменная х не входит свободно в формулу Ф.
Равносильность этих формул очевидна, так как формула Ф не со¬
держит свободно х и поэтому не входит в область действия кван¬
торов.
Далее, имеем
Ух F [х] & Ух Ф [х] = Ух\Р [х] & Ф [х]),
Эх F [х] V Эх Ф [х] = Эх (F [х] \/ Ф [х]).
Доказательство этих двух равносильностей оставляем читателю.
Однако
Ух F [х] V Ух Ф [х] ф Ух (F [х] V Ф М),
Эх F [ж] & Эх Ф [х] ф Эх (F [х] & Ф И).
Действительно, взяв область интерпретации V = (1, 2} п поло¬
жив при некоторой интерпретации F [1] = И н F [2] = Л, а Ф [1] =
= Л и Ф [2] — И, получи»! в левой части первого неравенства зна¬
38
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
чение JI, а в правой — И. Аналогично доказывается и второе не¬
равенство. В последних двух случаях производим переименование
связанных переменных, т. е.
VxF [х] V УяФ [х] = VxF [х] V Уу Ф [у] = \fx\fy(F [х\ \J Ф [y])t
Эх F [х] & Эх Ф [х] = 3xF [х] & Эу Ф [у] = Эх Эу (F [х] & Ф [у])
при условии, что переменная у не появляется в F [х].
Теперь дадим определение ПНФ. Говорят, что формула F ис¬
числения предикатов находится в ПНФ тогда и только тогда, когда
ее можно представить в форме Mprj У\^х2 ... У\тхтМ, где каждый
^{^i, i = 1, 2, ...,г есть либоУ^, либо Эх\ и М — бескванторная
формула. Иногда называют Угх2 ... У\тхг префиксом, а М —
матрицей формулы F.
Например, формула
Fx = Эх Уу (Q (х, у) V 1 Р (/ (ж)) -+R{x,g (у)))
находится в ПНФ, а формула
F2 = \/х (Р (х) -> Зу Q (х, у)) — не в ПНФ.
Существует простой алгоритм, преобразующий произвольную за¬
данную формулу в равносильную ей формулу, имеющую пренекс-
ный вид. Алгоритм состоит из следующих шагов.
Шаг 1. Исключение логических связок ~ и Многократно
(пока это возможно) применяется следующее правило: найти самое
левое вхождение связки ~ или и сделать замены:
Г~Ф = П^\/ Ф) & V ~1Ф),:
= Ч F V ф.
Результатом этого шага будет формула, равносильная исходной
и не содержащая связок ~ и
Шаг 2. Продвижение знака отрицания Ч до атома. Многократно
(пока это возможно) делаем замены:
Ч Ч F = F,
Ч (F V ф) = Ч F & Ч Ф,
1(F&0) = 7F)/ ЧФ,
Ч Va;F [х\ = Эх(~\ F [а;])г
h3xF [х] = Уа:(Ч F[x]).
Очевидно, что в результате выполнения этого шага получается
формула, у которой знаки отрицания Ч могут стоять только лишь
перед атомами.
Шаг 3. Переименование связанных переменных. Многократно
(пока это возможно) применяется следующее правило: найти самое
2.4. ПРЕНЕКСНЫЕ НОРМАЛЬНЫЕ ФОРМЫ
39
левое вхождение переменной такое, что это вхождение связано
(некоторым квантором), но существует еще одно вхождение этой
же переменной; затем сделать замену связанного вхождения на
вхождение новой переменной.
Шаг 4. Вынесение кванторов. Для этого используем следующие
равносильности:
Ах F [х\ V Ф = А х (F \х\ V Ф),
'Ах F [х] & Ф = Ах (F [х] & Ф),
Ух F [х\ & Ух Ф [х] = Ух (F [х] & Ф [т]),-
Зх F [ж] V ЗтФ [ж] = Зх (F [х] V Ф [х]),
A,xF [х] V А2х Ф [х] = Агх А2У (F [х] V Ф ly])t
AtxF [х] & А2хФ [х] = AixA^iFlx] &Ф [г/]),
где >1, >1г и >12 — кванторы либо V, либо 3.
После выполнения четвертого шага формула приобретает пре-
нексный вид:
Агхх А2х2 ... АгхгМ.
Пример 2.14. Пусть
F = Ух(Р(х) ~ 3xR(x))-^yyQ{y).
Применяя алгоритм, получаем следующую последовательность
формул.
Шаг 1.
V* Id Р {х) V Зх R (х)) & (Р (х) V п 3 XR (*))] У у Q (у),
^УхЩР (х) V Зх R (х)) & (Р (х) V п Зх R (х))] V Vy Q {у).
Шаг 2.
Эх {1 [('1 Р (х) V Эх R (х)) & (Р (х) V П 3xR (*))]} V Vp Q (у),
Зх {“) П Р (х) V 3xR (х)) V П (Р(х) V П ЗхR (х))} \jyyQ (у),
Зх {('"] ~] Р (х) & П Зх R (х)) y(-]P(x)&~\-\3xR (х))} V У У Q ОУ),
Зх{(Р(х) & П 3xR(х)) V ('1 Рх) & ЗхR (*))} V У У Q(у)«
Зх {(Р (х) & V* 1Д (х)) V С1 Р (х) & Зх R (*))} V У У Q (у).
Шаг 3.
3z {(Р (a) &yx-\R (х)) V ('1 Р 00 & Зх R (*))} V У У Q (У),
3z {(Р (а) & У и, П R (w)) V П Р (г) & Зт R (х))} уУу(? (у),,
Шаг 4.
3z Vw3^Vi/{(P(z)& Г] Д(и;)) V (~]^(z)& Д(я)) V (?(*/)}•
40
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
2.5. Сколемовские стандартные формы
Мы показали (см. теоремы 1.7 и 1.8), что отношение логичес¬
кого следования Fu F2, •••> Fnh=B равнозначно общезначимости
формулы ... & Еп->-5или противоречивости (невыпол¬
нимости) формулы F1ScF2 & ... & Fn & В. Так как в дальней-
[ шем в процедурах доказательства мы будем иметь .дело только с не,-
1 выполнимыми (1) орм у л а м и.тю-б сз потери.обшыос-ти ОГРАНИЧИМСЯ ими.
Очевидно, что если формулы F и Ф равносильны, то F логи¬
чески невыполнима тогда и только тогда, когда логически невы¬
полнима Ф.
Благодаря этому утверждению и в силу того, что алгоритмы
приведения к .ПНФ сохраняют равносильность невыполнимых фор¬
мул, мы ограничимся формулами, имеющими пренексный вид.
Однако можно ограничиться еще более узким классом формул,
так называемых V-формул.
Формула F называется V-формулой, если она представлена в
ПНФ, причем кванторная часть состоит только из кванторов общ¬
ности, т. е.
F = Va:x У/х2 ... Ухт М,
где М—бескванторная формула.
Таким образом, возникает задача устранения кванторов сущест¬
вования в формулах, представленных в ПНФ. Это можно сделать
путем введения сколемовских функций.
Пусть формула F представлена в ПНФ.
F = yi1x1 У\2х2 ... 'АгхтМ, где Xje{V,3}.
Пусть Я* (1 ^ i ^ г) — квантор существования в префиксе
»2^2, ..., >(г^г. Если г = 1, т. е.ни один квантор общности не
стоит впереди квантора существования, то выбираем константу с
из области определения М, отличную от констант, встречающихся
в М, ti заменяем xt на с в М. Из префикса квантор существования
Х^ -вычеркиваем. Если перед квантором существования X, стоит
Xj , Xj2, ..., Xjmкванторов общности, то выбираем m-местный функ¬
циональный символ /, отличный от функциональных символов в
М, и заменяем на/(^i Xj2, ..., ж,-т), называемую сколемовской
функцией, в М. Квантор существования Хкт{ вычеркиваем из пре¬
фикса. Аналогично удаляются и другие кванторы существования в
ПНФ. В итоге получаем V-формулу. Опишем алгоритм последова¬
тельного исключения кванторов существования.
Алгоритм Сколема.
Шаг 1. Формулу представить в ПНФ.
Шаг 2. Найти наименьший индекс i такой, что XltX2, . ..,Х{_
все равны V, но Хг = 3. Если i= 1, т. е. квантор 3 стоит на пер¬
вом месте, то вместо xL в формулу М подставить константу с, от-
2.5. СКОЛЕМОВСКИЕ СТАНДАРТНЫЕ ФОРМЫ
41
личную от констант, встречающихся в М. Если такого i нет, то
СТОП: формула F является V-формулой.
Шаг 3. Взять новый (i — 1) -местный функциональный символ /(,
не встречающийся в F. Заменить F на формулу
VХ^ У3^2 ... V...
. • •, МТХТ Л[ [х±, Х%, • . • j 1? /i (^ii • • • j Х{—i), Xi+\i • . •, Хт]*
Шаг 4. Перейти к шагу 2.
Пример 2.15. Пусть
F = Зх У у УгЗи Vv3w(P (х, ?/)-> 'Т] Д (z, и, и;)).
Применяя алгоритм Сколема, получаем следующую последова¬
тельность формул:
Vy Vz3u Vz;3w(P(c, у)->-"1Д(г, и, v) &Q{u,w)),
У у VzVv3w(P (с, y)->'~\R(z, f(y, z), v)&Q(f(y, z), w))
УуУ гУи(Р (c, y)-+^\R (z, / (у, z), p) & Q (/ (y, z), g (y, z, v)).
Переход от формулы в пренексной форме к V-формуле не за¬
трагивает свойство формулы быть невыполнимой. Это доказывается
следующей теоремой.
Теорема 2.6.Пусть формула F задана в ПНФ и преобразована
в У-формулу. Тогда F в пренексной форме логически невыполним ?
ма тогда и только тогда, когда невыполнима У-формула F.
Однако следует заметить, что если имеется выполнимая форму¬
ла F, то может оказаться, что V-формула F будет невыполнимой.
Действительно, пусть F = 3xP(x) и соответствующая ей V-фор¬
мула есть Р{с). Тогда, задавая область интерпретации F = (l, 2} и
интерпретируя Р(1) = Л и Р(2) = И и положив с = 1, получаем, что
F в пренексной форме выполнима, а V-формула невыполнима в
этой интерпретации.
Таким образом, алгоритм Сколема, сохраняя свойство невыпол¬
нимости, приводит произвольную формулу, имеющую пренексный
вид, к V-формуле.
Напомним, что атом или его отрицание называется литерой.
Литера вида А называется положительной, а вида ДА—отрица¬
тельной.
Рассмотрим теперь преобразование бескванторной части (матри¬
цы) к виду так называемых дизъюнктов. Дизъюнктом называется
формула вида
U V U V... V Lh,
где Li, Lz, ..., Lh — произвольные литеры.
Дизъюнкты, соединенные знаком &, образуют конъюнктивную
нормальную форму (КНФ). Существует простой алгоритм равно¬
сильного преобразования произвольной бескванторной формулы в
КНФ (см. п. 1.4). Здесь дадим его в развернутом виде.
42
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
Алгоритм приведения к КНФ.
Шаг 1. Начало: дана формула F, составленная из литер с при¬
менением связок & и V. Предполагается, что в формуле исклю¬
чены скобки между одинаковыми связками, т. е. нет выражений
вида
Ф,У(Ф2УФз), .(Ф^Ф^УФ,
или
Ф1&(Ф2&Ф3), (Фк&Ф^&Фз.
Шаг 2. Найти первое слева вхождение двух символов V (( или
i)V*). Если таких вхождений нет, то СТОП: формула F находит¬
ся в КНФ.
Шаг 3. Пусть первым вхождением указанной пары символов
является V (. Тогда взять наибольшие формулы Ф1, Ф2, ..., Фг,
.4ri, Тг, ..., такие, что в F входит формула jFi = Ф1 У Ф2 V...
... V Фг У(Т\ & Т'а &...& T'g), которая связана с вхождением V (.
Заменить формулу F,, на формулу (Ф^^г V • • • V V ^1) &(®iV
V Ф2 V • • • V фг V ^2) & • • • & (ф1 V ф2 V • • • V фг V *,).
Шаг 4. Пусть первым вхождением является ) V. Тогда взять
наибольшие формулы Фь Ф2, ..., Фг, Wi, Т-, такие, что в
F входит формула^?1=(1Р1 & Т'з & ... & T'g) V Ф1 V • • • V®r> связан¬
ная с вхождением )V. Заменить на У Фг V Ф2 V •••
. .. V $iV Ф2 V ••• \/Фг)&...&(Чг*уф^...уфг).
Шаг 5. Перейти к шагу 2.
Пример 2.16. Преобразуем формулу
F = Р (х)\/ Р (a)\/_((R {х, y)\/Q (у)) & Р(х) & (R (х, а) V (<? (у) & Р (а))))
в КНФ.
F = (Р(х) V Р {а) V R (*, У) V V ^(а) V Р (*)) &
& (Р (х) V р (а) V R {X, a) \/JQ (У) & р (а))) =
= (Р (х) V Р (а) V R (х, У) V Q (У)) & (Р (х) V Р («)) &
& (Р(х) V р(а) V R (*> а) V Q(y))&(Р(х) V Р(а) V R (х, а) V
v Р (а)) = (Р (х) V р (а) V Я (*, У) V Q (у)) & (Р (х) V Р («)) & (р (х) V
V Р{а) V R (х, а) V Qm&(P(x) \JP{0)\JR{X, а)).
Здесь чертой подчеркнуты вхождения V (. Кроме того, в алго¬
ритме надо предусмотреть приведение подобных членов, а также
всевозможные склеивания и поглощения.
Итак, последовательным применением алгоритма приведения к
ПНФ, алгоритма Сколема и алгоритма приведения к КНФ с сохра¬
нением свойства невыполнимости любая формула F может быть
представлена набором дизъюнктов, объединенных кванторами
общности. Такую формулу будем называть формулой, представлен¬
*) Здесь предполагается, что скобка не является скобкой атома.
2.6. ЛОГИЧЕСКИЕ СЛЕДСТВИЯ
43
ной в Сколемовской стандартной форме (ССФ). В дальнейшем
формулы вида Ух2 ... VxT [D1 & D2 & ... & Dh], где Du D2, ...
..., Dh—дизъюнкты, a xu ..., xr — различные переменные, входя¬
щие в эти дизъюнкты, будет удобно представлять как множество
дизъюнктов S = {Dl, D2, ..., Dh). Например, множеству дизъюнктов
'5 = {ПР(^ /(*))> р(х. У) V g{y)), Q(X)V а)} соот¬
ветствует следующая формула, представленная в ССФ:
Ух У у (“3 Р (х, / (х)) & (Р (х, у) V П Я (*, g (у))) & (<? (ж) V р (*» «)))•
И, наконец, когда говорят, что множество дизъюнктов S =
= {Du D2, ..., Dh} невыполнимо (противоречиво), то всегда подра¬
зумевают невыполнимость формулы УхгУх2 • • • Ухт [Dx &.D2 & ...
••• &Dh], где х^ хг, ..., Xr — различные переменные, входящие в
дизъюнкты.
2.6. Логические, следствия
Понятие логического следствия, введенное в п. 1.5 для исчис¬
ления высказываний, распространяется и на исчисление предика¬
тов. Напомним, что если даны формулы Fu F2, ..., Fn и В, то го¬
ворят, что формула В логически следует из F,, F2, ..., Fn тогда и
только тогда, когда для любой интерпретации I, в которой
pi&pt & • • • & рп — истинно, В также истинна, т. е. Fi, F2, ...
..., Fn\=B.
Пример 2.17. Всякое положительное целое число является
натуральным числом. Число 5 есть положительное целое число.
Следовательно, 5 есть натуральное число (см. пример 2.1). На
языке исчисления предикатов имеем
Ух(Р (x)-+N(x))
р(5)
iV(5)
Нетрудно показать, что из истинности двух посылок вытекает
истинность заключения. Действительно,- если истинна первая посыл¬
ка, то будет истинна и формула P(5)->-N(5). Далее, если истинна
Р{5), то по правилу МР будет истинно и заключение N(5).
Теоремы 1.7 и 1.8, приведенные в исчислении высказываний,
имеют место и для исчисления предикатов. Так как в дальнейшем
мы будем иметь дело с невыполнимыми формулами, то факт, что
формула В является логическим следствием формул Fu F2, ..., F„,
будет сводиться к доказательству противоречивости формулы
pi&P2 & ■ • • ScPuSa^B. Возвращаясь к примеру 2.17, покажем, что
формула У х (Р (х)-* N (х)) & Р (5) & ^.Л/Дб) противоречива. Для
этого приводя ее к ССФ, имеем следующее множество дизъюнктов
В = {^"| Р (х)\/ N (х), Р (5), '”] N (5)}, которое противоречиво. Дей¬
ствительно, заменяя а: на 5 в силу квантора общности и логически
44
ГЛ. 2. ИСЧИСЛЕНИЕ ПРЕДИКАТОВ ПЕРВОГО ПОРЯДКА
перемножая все дизъюнкты, имеем
П р (5) v Я (5)) & р (5) & 1N (5) = С-] Р (5) & Р (5) & 1N (5)) V
Нетрудно видеть, что процедура доказательства противоречи¬
вости формулы далека от эффективности. Приведем еще один
пример.
Пример 2.18. Некоторые студенты любят всех преподавателей.
Ни один студент не любит ни одного невежду. Следовательно, ни
один преподаватель не является невеждой.
Обозначим:
С{х) — х есть студент;
Р(х)—х есть преподаватель;
Н(х) — х есть невежда;
L(x, у) — х любит у.
Посылки и заключение на языке исчисления предикатов будут
записаны в следующем виде:
Построим вывод, применяя аксиомы и правила вывода, введен¬
ные для формальной системы ФС2. Так как в любом исчислении,
в том числе исчислении предикатов первого порядка, в отличие от
алгоритма, нет понятия схемы алгоритма и нет понятия результата,
то и сам вывод не может быть механизирован и возложен на ЭВМ.
5) У У (Р (у) -> L (а, у)) -> (Р (у) -*• L (а, у)) аксиома 12;
6) P(y)-+L(a, у) МР для 4 и 5;
7) Vx(C(x)^Vy{H(y)->llL{x, y)))MC(x)^Vy(H(y)-+1L(xl у)))
8) С (х)-+Уу(Н (у)^"~] L(x, у)) МР для 2 и 7;
9) У у (Я (у) -v ^ Р (а* у)) МР для 3 и 8;
10) Уу(Н(у)-^^]Ь(а,у))->(Н(у)^с~\Ь(а,у)) аксиома 12;
11) Я(у)->\| L(a, у) МР для 9 и 10;
12) (Я(у)-> 1L(a, j))->(Hi(а, (у)) аксиома 9;
У(Я(5)&;Р(5)&1Я(5)) = П.
3x(C(x)c&Vy(P(y)-+L(x,y)))
Ух (С (ж) -> У у (Я (у) -> Ч L (х, у)))
Ух(Р (х)-^г^Н(х))
аксиома 12,
2.6. ЛОГИЧЕСКИЕ СЛЕДСТВИЯ
45
13) П -]L{a,y)^^H(y) МР для И п 12;
14) L (а, у) ->■~] L (а, у) аксиома 10;
15) L (а, у) ->■ ~~] Н (у) силлогизм для 13 п 14;
16) Р (у) ->■ '“I Я (у) силлогизм для 6 и 15;
17) Vp(P(p)-v Ч Н(у)) пример 2.8.
Теперь покажем, что формула
Зх (С (х) £ У У (Р (у) ->■ L (х, у))) £ Ух (С (х)
->Уу(Н (y)->^L{x, у)))£ Ух{Р{х)-^~]Н{х)) = □,
Для этого приведем ее к ССФ:
Зх{С{х)&Уу{-\Р{у)\/ L{x, у))),
Зх У у (С (ж) £ П Р (у) V L (*> у)))г
Уу{С(а)£Пр(У) V L(a, у))),
Ух пс (х) у у У пн (у) V Ч с (ж, у))),
Ух У у (П С (х) V 1 Н (у) V Ч L (ж, у)),
-\УхПР(х)\/ 1Н(х))л
3 х~}ПР(х)У1Н(х))г,
Зх (Р (ж) £ Н (ж)),
Р(а)£ Н (а).
Имеем следующее множество дизъюнктов:
S = {С (а), 1 Р (а) V С (я, а), Ч С (а) V Ч Н (а) \J
V r~]L(a, а), Р (а), Н (а)}.
Оно противоречиво, так как
С(а)&Пр («) У1 («- я)) & (1 С (а) V Ч Н (fl) V Ч р (я, я)) <е Р (а) £
с6 Я (а) = ((С (а) •<£- Р (а) сб Я (а) & 1 Р (а)) V (С (я) £ р (я) <6
£ Я (а) eg L (а, а))) сб (Ч с (я) V Ч’Я (я) V Ч р (а> я)) =
= (С (а) £ Р {а) £ И (а) £ L (а, а) £ ~) С (а)) V (С (а) £Р(а) £
£ Я (а) £ L (а, а) £ Ч Я (а)) V (я) £ Р (а) £
£ Н (а) £ L (а, а) £ Ч я)) = □•
Очевидно, что в системах принятия решений ни первый путь,
нп второй не приведет нас к успеху при доказательстве теорем в
силу их малой эффективности. Нужны более эффективные проце¬
дуры доказательства теорем. Они будут рассмотрены в части III.
Но сначала познакомимся с методами представления пнформации в
системах принятия решений.
ЧАСТЬ II
СЕМАНТИЧЕСКИЕ СЕТИ
Всякой истине суждено одно мгновенье
торжества между бесконечностью, когда ее
считают неверной, и бесконечностью, ког¬
да ее считают тривиальной.
А. Пуанкаре
ГЛАВА 3
ДЕКЛАРАТИВНЫЕ И ПРОЦЕДУРНЫЕ МОДЕЛИ
ПРЕДСТАВЛЕНИЯ ЗНАНИИ
В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИИ
3.1. Декларативные представления
Модели представления знаний формируют так называемую си¬
стему представления знаний, являющуюся одной из главных ком¬
понент систем принятия решений. Система представления знаний
предназначена для хранения совокупности всех знаний о данной
предметной области. Ее организация обычно направлена на то, что¬
бы дать возможность как можно более широко использовать се¬
мантику и специфику предметной области с целью повышения
эффективности работы всей системы принятия решений.
Составной частью системы представления знаний является база
знаний, в которой информация обычно хранится в виде фактов, ак¬
сиом (общих законов) и правил вывода. Под фактами чаще
всего понимаются утверждения, касающиеся текущего состояния
предметной области; они представляются обычно в форме означен¬
ных константами предикатов (фундаментальных предикатов). Аксио¬
мами являются ППФ, которые не содержат фундаментальных литер.
Как известно, для определения концептуальной модели баз дан¬
ных (БД) используются три подхода: перархический, сетевой и
реляционный. Наиболее очевидная взаимосвязь между математиче¬
ской логикой и БД проявляется в реляционной модели данных,
поэтому мы и остановимся на реляционном подходе.
Реляционная модель БД, введенная Коддом, основывается на
математической теории отношений, в основе которой лежит поня¬
тие отношения между элементами множества. Набор отношений
между данными, которые преобразуются и изменяются во времени,
представляет собой реляционную модель данных. Отношение зада¬
ется в виде таблицы. Столбцы таблицы называются простыми до¬
менами или просто доменами. Каждый домен должен иметь свое
имя. Преобразование отношений основано на операциях над доме¬
нами: некоторые из них могут исключаться, добавляться, меняться
их расположение в отношении и т. д. Важно, чтобы строки в отно¬
шении были разные. Если в результате операции над отношениями
3.1. ДЕКЛАРАТИВНЫЕ ПРЕДСТАВЛЕНИЯ
47
появляются одинаковые строки, то в результирующем отношении
оставляется любая из одинаковых строк.
В общем случае п-арное отношение обладает следующими
свойствами:
1) каждая строка представляет собой п-ку или кортеж пз
отношения;
2) все строки различны:
3) порядок строк не играет роли;
4) домены могут быть пронумерованы, т. е. отношение упоря¬
дочено по доменам.
Пример 3.1. Рассмотрим отношение степени 3, названное
Часто на практике в процессе преобразования доменов удобнее
идентифицировать домены по именам. Так, в примере 3.1 отноше¬
ние ОБУЧАТЬ может быть записано в виде ОБУЧАТЬ (С, П, JI),
где С - имя СТУДЕНТ, П - имя ПРЕДМЕТ, Л - имя ЛЕКТОР.
Удобнее для пользователя применять для доменов уникальные
имена, что позволяет манипулировать ими без использования по¬
зиции, в которой находится домен. Один пли несколько доменов,
значения которых однозначно определяют ?г-ки в отношении, на¬
зываются ключами. В случае двух или более ключей один пз них
выбирается произвольно в качестве основного ключа отношения.
Таким ключом в отношении ОБУЧАТЬ является домен СТУДЕНТ,
он же и основной ключ (см. пример 3.1). Смысл выделения основ¬
ных ключей заключается в том, чтобы обеспечить возможность
ссылок на п-ки того же самого или другого отношения.
Кроме простых доменов имеются домены, которые в качестве
своих элементов также имеют отношения. Эти отношения, в свою
очередь, могут определяться на непростых доменах и т. д. Так,
в примере 3.1 простой домен СТУДЕНТ может превратиться в не¬
простой, если его элементам придадим отношения типа СТУДЕНТ
(ФИО, №), где ФИО — фамилия, имя, отчество студента, а Дз—
номер его зачетной книжки. В дальнейшем при рассмотрении БД
простой домен будет также называться атрибутом.
Непростые домены ликвидируются с помощью процедуры, на¬
зываемой нормализацией. Мы не будем касаться подробно процеду¬
ры нормализации, отметим только, что после удаления непростых
доменов мы получим так называемую первую нормальную форму
отношений. Идея дальнейшей нормализации тесно связана с поня¬
тием функциональной зависимости атрибутов в отношении. Говорят,
что атрибут В отношения R функционально зависит от атрибута А
отношения R, если в каждый момент времени каждое значение
ОБУЧАТЬ:
ОБУЧАТЬ (СТУДЕНТ,
ПРЕДМЕТ,
ЛЕКТОР)
ВИКТОРОВ в. н.
ЖЕЛЕЗНОЕ В. В
ИЩЕНКО П. П.
ШИПОВА М. В.
ХРАМОВ С. И.
ХИМИЯ
ФИЗИКА
МАТ. АНАЛИЗ
ФИЗИКА
МАТ. АНАЛИЗ
ДОН. БРИН И. А.
ПРОФ. СУШКОВ В. П.
ДОЦ. БРИН И. А.
48
ГЛ. 3. ДЕКЛАРАТИВНЫЕ И ПРОЦЕДУРНЫЕ МОДЕЛИ
в А не имеет более одного значения в В, соотнесенного с ним
посредством R. Будем писать R. А *R.B, если В функционально
зависит от А в отношении R и R.A — ^R.B, если такой зависи¬
мости нет.
Возвращаясь к примеру 3.1, имеем
ОБУЧАТЬ. (СТУДЕНТ, ПРЕДМЕТ) — ОБУЧАТЬ. ЛЕКТОР,
предполагая, что каждый студент по данному предмету обучается
только у одного лектора;
ОБУЧАТЬ. ЛЕКТОР —ОБУЧАТЬ. ПРЕДМЕТ,
предполагая, что лектор преподает только один предмет;
ОБУЧАТЬ. ПРЕДМЕТ-А ОБУЧАТЬ. ЛЕКТОР,
предполагая, что несколько лекторов преподают один и тот же пред¬
мет (например, физику).
В процессе нормализации отношение ОБУЧАТЬ разобьется на
два отношения:
СТ (СТУДЕНТ, ЛЕКТОР) ЛЕК (ЛЕКТОР, ПРЕДМЕТ)
ВИКТОРОВ В. Н. ДОЦ. БРИН И. А. ДОЦ. БРИН И. А. МАТ. АНАЛИЗ
ЖЕЛЕЗНОВ В. В. ПРОФ. СУШКОВ В. П. ПРОФ. СУШКОВ В. П. ФИЗИКА
ИЩЕНКО П. П ДОЦ. ВРИН И. А. ДОЦ. КРАСНОВ П. С. ХИМИЯ
ШИПОВА М. В. ДОЦ. КРАСНОВ П. С. ДОЦ. УШАКОВ И. П. ФИЗИКА
ХРАМОВ С. И. ДОЦ. УШАКОВ И. П.
Наиболее важной задачей нормализации является задача сохра¬
нения жизнеспособности программы при различных изменениях в
реляционной БД. Некоторые отношения в БД могут обновляться,
вычеркиваться, модифицироваться. Например, вычеркивая инфор¬
мацию в ненормализованном отношении ОБУЧАТЬ о студенте Же-
лезнове В. В., который изучает курс физики, мы также теряем
важную информацию о проф. Сушкове В. П., который этот курс
преподает. Этого не происходит в случае нормализованных от¬
ношений.
И, наконец, нормализованные отношения должны быть свобод¬
ны от транзитивных зависимостей доменов внутри данного отно¬
шения. Более подробно о процессе нормализации можно найти
в литературе, указанной в списке в конце книги, относящейся
к части II.
Мы будем рассматривать БД, в которых храниться факты, как
экстенсиональные БД (ЭБД), а БД для хранения общих законов
(аксиом) как интенсиональные (ИБД). Прежде всего поясним на
примере понятия экстенсионального и интенсионального представ¬
лений знания. Возьмем понятие ПРЕДШЕСТВУЕТ (сокращенно
ПРЕД). Интенсиональный смысл этого понятия состоит в том, что
ПРЕД есть бинарное отношение, определенное на множестве пред¬
метов и удовлетворяющее следующим условиям:
1) если х ПРЕД у я у ПРЕД z, то х ПРЕД z;
2) не существует xlt хг, ..., хт таких, что Xi ПРЕД х2, х2 ПРЕД
хг, хт ПРЕД Xl
3.1. ДЕКЛАРАТИВНЫЕ ПРЕДСТАВЛЕНИЯ
49
Экстенсиональное представление понятия ПРЕД получается
тогда, когда это понятие интерпретируется как множество всех пар
предметов, для которых это отношение истинно.
Пусть, например, предметная область состоит из всех двоичных
слов длины п. Предположим, что отношение ПРЕД определено
так: Gi о2... о„ ПРЕД (5, (52.. • Рп тогда и только тогда, когда
Hi < Pi, а2 ^ р2, • •csn < Р„.
Тогда экстенсиональным представлением понятия ПРЕД будет
множество пар:
(00... О, 00... 01), (00... 00, 00...10), ..., (00... О, 10... 00),
(00...01, 00...11), (00...01, 00...101), ..., (00...01,
10...01), ..., (01...И, 11...1).
Легко показать, что число этих пар равно в данном примере
3" — 2".
При таком экстенсиональном представлении имеется простой
алгоритм, выясняющий для любой пары х, у е (0, 1)" верно ли, что
х ПРЕД у. Этот алгоритм заключается просто в поиске данной па¬
ры (х, у) среди пар экстенсионального представления. Если такая
пара найдена, то ответом будет: «верно, что х ПРЕД у»; если же
такой пары нет, то ответом будет: «не верно, что х ПРЕД у».
Конечно, опираясь только на интенсиональное представление 1)\
2) нельзя для конкретной пары х, у выяснить, верно ли, что х
ПРЕД у. Нужна дополнительная информация об интерпретации.
Можно однако рассматривать «комбинированное» экстенсиональное
и интенсиональное представления, которые позволяют отвечать бо¬
лее эффективно на такие вопросы.
Эффективность алгоритмов вывода очень сильно зависит от вы¬
бранных экстенсиональных и интенсиональных представлений. Ча¬
сто экстенсиональное представление приводит к неэффективным
алгоритмам (в том случае, если экстенсиональное представление
понятий велико) или же вообще не позволяет дать алгоритм (в том
случае, когда экстенсиональное представление бесконечно). С дру¬
гой стороны, чисто интенсиональное представление не позволяет
фиксировать интерпретацию, в частности ее область: необходимо
также и экстенсиональное представление. Логика предикатов пока¬
зывает, что в определенном смысле произвольное знание можно
выразить почти чисто интенсионально: единственным экстенсио¬
нальным представлением является экстенсиональное представление
понятия ИСТИНА. Однако проблемы распознавания в языке логи¬
ки предикатов, как мы уже видели, либо вообще алгоритмически
неразрешимы, либо имеют трудоемкие алгоритмы (алгоритмы
с весьма высокими нижними оценками времени и памяти).
Таким образом, в ЭБД конкретные факты (утверждения) нахо¬
дятся в экстенсиональной форме посредством соответствующих кор¬
тежей (п-ок) отношений. ИБД служит для хранения общих зако¬
нов (аксиом), представленных в интенсиональной форме типа ППФ
4 В, Н. Вагин
50
ГЛ. 3. ДЕКЛАРАТИВНЫЕ И ПРОЦЕДУРНЫЕ МОДЕЛИ
логики предикатов. Следовательно, мы будем рассматривать БД как
совокупность отношений, часть которых определена экстенсиональ¬
но, а часть — интенсионально. Введение интенсиональной части БД
является очень важным с точки зрения дедуктивного вывода и
позволяет нам перейти к рассмотрению дедуктивных БД, являю¬
щихся составной частью дедуктивных систем принятия решений,
обсуждаемых в третьей части книги. Отсюда понятно различие
между обычными БД и дедуктивными: в дедуктивных БД для
получения новых фактов из аксиом используются методы доказа¬
тельства теорем, в то время как в обычных БД пользователь дол¬
жен писать более сложные предложения для запроса, включая не¬
обходимые ему аксиомы. Вопрос об эффективности дедуктивных
реляционных БД оставим до рассмотрения конкретных дедуктивных
систем принятия решений. Отметим только, что дедуктивные воз¬
можности являются, на наш взгляд, интегральной частью любой
технологии БД и как следствие любой системы принятия решений.
Мы будем иметь дело с дедуктивными БД только хорновского
типа. Это значит, что БД работает только с совокупностями дизъ¬
юнктов специального типа, называемых дизъюнктами Хорна.
Дизъюнктом Хорна называется дизъюнкт, имеющий не более
чем одну положительную литеру, т. е. он имеет вид 'Д At
V ПЛ V • • • V П V В пли в имплпкативнои занпси: Аг &
&А2(£ ... сё:]Ап-^-В, где А— условия и В — заключение дизъюнк¬
та. Дизъюнкты Хорна, имеющие как условия, так и заключение,
представляют собой общие законы (аксиомы), соответствующие
интенсиональному представлению знаний. Дизъюнкты без усло¬
вий — это факты, соответствующие экстенсиональному представле¬
нию знаний. II, наконец, дизъюнкты Хорна без заключения — это
отрицания фактов или цели, которые нужно доказать.
Как правило, аргументы литер в дизъюнктах Хорна не будут
иметь функций, т. е. дизъюнкты будут функционально свободными
п, следовательно, функционально свободными будут дедуктивные
БД, что снимает проблемы, связанные с равенством, и позволяет
применять подсистемы доказательства теорем в более простом виде.
Любые отклонения от сказанного будут специально оговариваться.
В дальнейшем при рассмотрении дедуктивных БД дизъюнкты Хор¬
на для краткости будем называть просто дизъюнктами, предпола¬
гая, что мы всегда имеем дело с дизъюнктами Хорна.
Отметим, что в нехорповских дизъюнктах, т. е. дизъюнктах ви-
да Аг & А2 сб .. • <£■ Ап-^В1 V В2 V • • • V в™, где m > 1 (или В1 \J
V в2 \/ • • • V Вт V П At V П А2 V • • • V П Ап) В силу появления
справа от знака импликации нескольких положительных литер
возникают двусмысленности (если А,, Аг, ..., Ал истинны, то имеет
место или Ви или В2, ..., или Вт), что недопустимо для рассмат¬
риваемых БД.
Кроме этого, в системах представления знании для повышения
эффективности алгоритмов поиска и вывода информации будем не-
3.1. ДЕКЛАРАТИВНЫЕ ПРЕДСТАВЛЕНИЯ
51
пользовать типы или сорта переменных. В классической логике
предикатов типы переменных не рассматриваются и ее можно счи¬
тать односортной логикой. С принципиальной точки зрения типы
переменных могут быть исключены путем введения соответствую¬
щих одноместных предикатов. Однако с введением таких дополни¬
тельных предикатов падает эффективность алгоритмов поиска и
вывода. Поэтому типы необходимы, если мы стремимся к эффек¬
тивным алгоритмам.
Многосортная логпка будет применяться для исключения ано¬
малий, связанных с синтаксически правильными, но бессмыслен¬
ными утверждениями, что в конечном счете повысит эффектив¬
ность всей системы принятия решений. Многосортная логика пред¬
полагает, что имеется непустое множество W, элементы которого
называются сортами (типами). Для каждого сорта i имеются пере¬
менные vl, v\, ... этого сорта и аналогично для каждого сорта i
имеется множество (возможно пустое) константных символов это¬
го сорта.
Многосортная логика предикатов используется как средство для
более эффективного представления знаний в системах принятия
решений. Знания представлены фактами (реляционными утвержде¬
ниями) и аксиомами (общими законами). Факты выражены в виде
отношений, представленных таблицами. Однако не все отношения
могут храниться в конечных таблицах. Некоторые отношения со¬
стоят из бесконечного множества элементов (говорят, что их эк-
стенсионал бесконечен) и естественно, хранить такое отношение
в экстенсиональной БД невозможно. Будем называть такие отно¬
шения виртуальными, предполагая, что они не являются экстен¬
сиональными отношениями и представляют собой на самом деле
общие законы, с помощью которых можно определять некоторые
кортежи (тг-кп) отношений. Такие виртуальные отношения хра¬
нятся в интенсиональной БД.
Все модели представления знаний делятся на следующие клас¬
сы: декларативные, процедурные и специальные (из последних
главное внимание будет уделено семантическим сетям). Рассмат¬
риваемая здесь декларативная модель представления знаний в своей
основе использует язык логики предикатов, который является свя¬
зывающим звеном для представления знаний, структур данных и
программ. Точнее сказать из декларативных моделей мы рассмат¬
риваем только предикатные и не имеем дело с другими моделями
декларативного типа (скажем продукционного или редукционного
вида).
При декларативном представлении имеет место четкое разделе¬
ние процедуры поиска решений, приводящей к полному перебору,
и процедуры оптимизации этого поиска с целью сокращения пе¬
ребора. Процедуры поиска не зависят от предметной области н
носят универсальный характер. Но эффективность поиска снижа¬
ется, так как приходится иметь дело с полными описаниями
4*
52
ГЛ. 3. ДЕКЛАРАТИВНЫЕ II ПРОЦЕДУРНЫЕ МОДЕЛИ
состояний системы, носящих синтаксический характер. Процедуры
оптимизации этого поиска отражают эвристическую эффективность.
Эти процедуры определяются знаниями о конкретной предмет¬
ной области и выражают семантику декларативной модели пред¬
ставления знаний. Таким образом, синтаксические знания в де¬
кларативных представлениях отделены от семантических. Наряду
с универсальностью декларативных представлений знаний,
понижающих эффективность этого представления, ввод семанти¬
ческого знания в описания состояний системы н ее операторов
сужает общность такого представления, но увеличивает его эф¬
фективность.
Вернемся к представлению данных в виде таблиц.
Будем называть представление таблиц в виде бинарных отно¬
шений бинарным представлением в отличие от п-арного представ¬
ления, в котором фигурируют 72-арные отношения. Можно спорить
■о преимуществах и недостатках того или иного представления.
Однако согласимся с точкой зрения Роберта Ковальского, который
отдает предпочтение бинарному представлению данных. II вот по¬
чему. Как в случае бинарного представления, так н в случае тг-ар-
ного порядок строк в таблицах не играет никакой ролн. Однако
изменение порядка столбцов таблицы чревато серьезными послед¬
ствиями для тг-арного представления, но совершенно не важно для
-бинарного представления информации. Кроме того, с практической
точки зрения любое изменение в БД: добавление новой информа¬
ции, удаление ненужных данных, различные модификации с дан¬
ными проще осуществляются с бинарным представлением, нежели
с тг-арным. Бинарное представление удобнее также для описания
данных с помощью общих законов.
Модель реляционной БД рассматривает данные как экстенсио¬
нально представленные в таблицах. Подобно абстрактным структу¬
рам данных в программировании таблицы данных обеспечивают
абстрактный взгляд на данные п не дают никаких средств для по¬
лучения общих законов. Из этого не следует, что те или иные дан¬
ные не подчинены какому-либо общему закону. Такие общие за¬
коны есть. Вся проблема заключается в том, как найти, получить
или вывести этот общин закон на основании имеющихся данных.
Но коль скоро этот закон получен, он может быть в некоторых
случаях представлен более эффективно, нежели таблица, особенно,
если размеры ее достаточно велики. Использование общих законов
в БД имеет то преимущество, что они занимают меньше места
в памяти, их легче организовать с целью поступления на вход си¬
стемы п, наконец, они легче подвергаются различным изменениям.
Конечно, не надо впадать в крайность и оперировать во всех слу¬
чаях не с таблицами данных, а с общими законами. Не надо, кроме
того, также забывать, что обычные БД работают только с табли¬
цами и не пригодны для обработки общих законов. Во всех слу¬
чаях нужен компромисс: конкретные факты хранить в таблицах,
3.1. ДЕКЛАРАТИВНЫЕ ПРЕДСТАВЛЕНИЯ
53
а часть информации — в общих законах. Это лишний раз подчер¬
кивает необходимость как ЭБД, так и ИБД.
Мы до сих пор рассматривали данные, которые интерпретиро¬
вались как истинные. Будем называть данные, принимающие зна¬
чение «ложь», негативной информацией. Она может быть выраже¬
на различными способами.
1. Явно. С помощью негативной фундаментальной литеры (на¬
пример, Д] Q (alt а2, ..., ап)).
2. Неявно, путем установления некоторых законов и используя
технику вывода. Такими законамп, например, являются: закон од¬
нозначности, суть которого ясна из следующего примера: утверж¬
дение «Д Г. Р. (Иванов, 1945)» может быть выведено из конкрет¬
ного факта «Г. Р. (Иванов, 1942)» и общего закона: «Каждый че¬
ловек имеет единственный год рождения» (здесь Г. Р.— аббревиа¬
тура от «год рождения»); закон полноты, гласящий: «Любой факт,
который не истинен, ложен». Например, пусть имеем утверждение:
Vx{P{х)-*-(х = a) \J (х = Ь)). Тогда любой факт Р( ), отличный
от Р(а) или Р(Ь) ложен (например, Г] Р (с), аФс, Ъ Ф с, а^=Ъ).
Негативная информация создает трудности при ее обработке.
Выходом из этого положения служат предположения Р. Рейтера об
открытом и замкнутом мирах. Предположение об открытом мире
соответствует обычному подходу теории первого порядка для вы¬
числения запросов: дана БД и дан запрос Q; единственными отве¬
тами на Q являются ответы, полученные доказательством Q пз
посылок данной БД. При предположении о замкнутом мире воз¬
можны как ответы тина Р(а), так н ^7] Я (а). Поясним сказанное
примером (Р. Рейтер).
Пример 3.2. Дана ЭБД: {а, Ъ, с, сЙ— лекторы; {А, В, С} —
студенты.
Введем отношение ОБУЧАЕТ:
ОБУЧАЕТ
а
А
Ъ
В
с
С
а
В
Все запросы имеют форму:
т2/:Г2т • • •, хп/хп | > • • • > (х±, •.«
..хп, г/х, ..., Ут)Уг
где т,- и 0j — типы переменных xt и yt соответственно, W (лц, ..., хп,
Vi, Ут)—бескванторная формула со свободными переменными
ад, ..., хп, уи ..., ут, не имеющая функциональных символов.
Дан запрос: «Кто не обучает студента Я?», или
Q = (лектор/# I \] ОБУЧАЕТ (х, В)У.
54
ГЛ. 3. ДЕКЛАРАТИВНЫЕ И ПРОЦЕДУРНЫЕ МОДЕЛИ
Обозначим через 11(?И множество минимальных ответов (т. е.
таких, что никакое подмножество этих ответов не является отве¬
том) на Q. При предположении об открытом мире, исходя из фак¬
тов ЭБД, ответ будет пуст, т. е. Н(?1! = 0, хотя интуитивно ясно,
что лекторами, не обучающими студента В, будут {с, d}, т. е.
{а, Ъ, с, d} — II <лекто р/ж 1 ОБУЧАЕТ (ж, Б) >11. Причина этого ясна:
в логике предикатов мы имеем дело при выводе с полной инфор¬
мацией о конкретных фактах, которые считаются истинными. Здесь
же 'Д ОБУЧАЕТ (с, В) (аналогично П ОБУЧАЕТ (d, В)) не
представлено в БД и нет смысла говорить об истинности этих фак¬
тов. Чтобы получить нужный ответ, мы должны включить в ЭБД и
негативные факты в виде таблицы ОБУЧАЕТ:
П ОБУЧАЕТ1
а С
Ъ А
Ъ С
с А
с В
d А
d В
d С
В нашей таблице число негативных фактов невелико, но в об¬
щем случае, в реальных БД, их число настолько огромно, что не
имеет смысла их перечислять. Поэтому в ЭБД представлены боль¬
шей частью позитивные факты, а представление негативных фак¬
тов предполагается неявным (как будет показано в п. 6.6 при
рассмотрении дедуктивной вопросно-ответной системы Р. Рейтера,
знание негативных фактов не является необходимым, и любой от¬
вет на произвольный запрос может быть получен из данной БД,
если принять предположение о замкнутом мире).
Таким образом, в предположении о замкнутом мире будем пола¬
гать, что имеется полное знание о данной предметной области.
Говорят, что нет «брешей» в нашем знании предметной области.
Поэтому в нашем примере, если доказано, что лекторы а и Ъ обу¬
чают студента В, то совершенно очевидно, что лекторы с и d его
не обучают. В предположении об открытом мире вся информация,
как позитивная, так и негативная должна быть представлена в БД,
т. е. допускаются «бреши» в знании предметной области.
Подытоживая сказанное о декларативном представлении зна¬
ний, отметим его основные черты:
— универсальный характер процедуры поиска решений;
— эвристическая направленность процедуры оптимизации этого
поиска;
— полное описание состояний системы в виде формул логики
предикатов первого порядка;
3.2. ПРОЦЕДУРНЫЕ ПРЕДСТАВЛЕНИЯ
55
— отделение синтаксического или структурного знания от се¬
мантического;
— ввод семантического знания в структурное сужает общность
декларативного представления, но увеличивает его эффективность.
Теперь перейдем к рассмотрению процедурных представлений!
знаний, имеющих свои особенности и обладающих своими достоин¬
ствами.
3.2. Процедурные представления
Решение задач при процедурном представлении сводится к построению
целенаправленной последовательности процедур различных манипуляций с
объектами и отношениями, имеющих сложную рекурсивную организацию. Но¬
сителями процедурных представлений являются специальные проблемно-ори¬
ентированные языки — языки представления знаний (ЯПЗ).
Процедурные представления наиболее естественно и эффективно реали¬
зуются в таких языках, которые содержат необходимые встроенные механиз¬
мы, обеспечивающие автоматический поиск решения на оспове знаний и по¬
ставленной цели. Для систем принятия решений разработан целый ряд та¬
ких языков. К их числу относятся LISP (Маккарти ДяО, PLANNER (Хью¬
итт К.), CONNIVER (Сассмен Г.), QA4 (Дерксен Дж.), KRL (Бобров Д.), FRL
(Роберст P.), PROLOG (Колмерауер А.) и ряд других.
Перечислим основные характеристики процедурных представлений, при¬
сущих ЯПЗ первого поколения, ярким представителем которого является
PLANNER:
— наличие большого количества специализированных стратегий и правил,
основанных на ряде унифицированных средств и механизмов, встроенных
в язык;
— введение семантической информации в выражспия, хранящиеся в БД;
— использование на каждой стадии процесса решения задачи только тех
выражений из БД, которые необходимы активизированной в данный момент
процедуре и описапы в ней;
— возможность представления предметной области на более высоком
уровне описаний, что в конечном счете сокращает длину решающей после¬
довательности процедур.
Указанные характеристики обеспечивают некоторые преимущества про¬
цедурных представлений перед декларативными:
1) введение семантической информации в описание элементов БД по¬
зволяет легко формализовать некоторые отношения, трудно выразимые в фор¬
ме декларативных представлений;
2) отсутствие трудностей, связанных с обработкой полных описаний.
Естественно, что указанные преимущества покупаются ценой потери общ¬
ности по сравнению с декларативными представлениями. Кроме того, весьма
слабо развитые методы накопления семантического знания в процедурных
представлениях обуславливают значительную неэффективность языков при
решении задач в сложных мирах. Решение этой проблемы обычно находят в
более тесном общенпп системы принятия решений с человеком, на долю ко¬
торого выпадает обязанность ввода ограничивающего перебор семантического
знания.
Языки типа PLANNER представляют средства для описания модели пред¬
метной области в виде БД, состоящей пз выражений языка LISP. Имеются
операции модификации БД п ассоциативного поиска с использованием образ¬
цов. Образец в языках рассматриваемого типа представляет собой частичное
описание списочной структуры, которой должен обладать анализируемый
объект. Образцы могут состоять нз компонент четырех видов: литера, тре¬
бующая точного совпадения, переменная, требующая совпадения с ее значе¬
56
ГЛ. 3. ДЕКЛАРАТИВНЫЕ И ПРОЦЕДУРНЫЕ МОДЕЛИ
нием, шаблонная переменная, получающая значение при сопоставлении, и об¬
ращение к функции, определяющей результат и побочный эффект сопостав¬
ления по произвольному правилу. Использование образцов для анализа
данных существенно повышает понятность программы, а также снимает с
программиста необходимость выписывания длинных последовательностей
кода.
PLANNER поддерживает одновременно существование нескольких вари¬
антов БД, называемых контекстами. Контексты образуют дерево; при создании
нового контекста он наследует состояние текущего; все изменения вносятся
в текущий контекст, при переходе к другому контексту текущий может быть
уничтожен или «заморожен» для последующего использования.
БД описывает состояние модели предметного мира. Для описания зако¬
номерностей и связей между отдельными фактами используются общие за¬
коны или теоремы, представляющие собой процедуры, вызываемые по образ¬
цу. Теорема состоит из образца и тела. При добавлении в БД нового выра¬
жения возбуждаются все теоремы, с образцами которых сопоставимо это
выражение. При этом выполняется тело теоремы, состоящее из операторов
языка LISP и обращений к БД; последние могут повлечь возбуждение дру¬
гих теорем. Так, внесение одного изменения может повлечь сложную модифи¬
кацию БД, возможно сопровождающуюся какими-либо дополнительными дей¬
ствиями системы. Поиск в БД успешен, либо если она содержит выражение,
сопоставимое с образцом поиска, либо если одна из возбужденных этим об¬
разцом теорем вырабатывает в качестве результата «успех».
Несколько теорем, описывающих разные способы достижения цели, могут
иметь сходные образцы. Поэтому в PLANNER встроен механизм, который
обеспечивает выбор одной из альтернатив и возврат к следующей при неудач¬
ном выборе. В программе (теореме) можно указать «развилку», в которой
предлагается несколько вариантов продолжения; если первый вариант не
достигает цели, то он выдает сигнал «неуспех», и управление возвращается к
развилке, после чего рассматривается следующий вариант. Если исчерпаны
все варианты, то сама развилка выдает «неуспех», который обрабатывается
развилкой на предыдущем уровне. Если же какой-либо вариант вырабатывает
«успех», то вычисления продолжаются и обрабатывается выражение, следую¬
щее за развилкой. Совместное использование механизмов сопоставления по
образцу и возврата (бектрекинг) является довольно эффективным средством
программирования, но требует значительных затрат как по времени выпол¬
нения, так и по используемой памяти.
В 70-х годах в программировании произошло переосмысление понятия
программы. Если до того основное внимание уделялось чисто алгоритмической
стороне, то в результате работ по структурному программированию стало пре¬
обладать представление, согласно которому центральное место в программе
занимают структурированные данные, которые организуют процедурную часть
программы.
Появившиеся к этому времени ЯПЗ второго поколения типа KRL (Know¬
ledge Representation Language), FRL (Frame Representation Language) и др.
качественно отличаются от более ранних разработок. Если в первых ЯПЗ вся
информация для ответа находилась фактически в запросе, то система приня¬
тия решений, использующая KRL, позволяет получить дополнительную ин¬
формацию из БД, составленную с помощью ЯПЗ. Проблема организации БД
и извлечение из нее неявной информации при обработке запроса является в
ЯПЗ второго поколения основной.
При таком подходе ЯПЗ второго поколения существенно отличаются от
ЯПЗ первого поколения. Это своеобразие отражается в следующих осо¬
бенностях:
1) описание данных с помощью единиц представления понятий;
2) концентрация информации;
3) механизм сопоставления данных;
4) связывание процедур с описаниями.
3.2. ПРОЦЕДУРНЫЕ ПРЕДСТАВЛЕНИЯ
57
Рассмотрим некоторые особенности языков KRL и FRL, являющихся даль¬
нейшим развитием языка PLANNER.
В основе языка KRL лежит анализ проблемы представления языковых
знаний и смысла естественно-языкового текста. KRL создавался как экспери¬
ментальная система с целью определить, каким должен быть язык более вы¬
сокого уровня, чем LISP.
Основной единицей KRL является «структурный концептуальный объекта,
с которым связаны дескрипторы. Эти объекты служат для представления фак¬
тов, отношений, сценариев, событий, понятий и др. С формальной точки зрения
все они являются списками свойств. Дескрипторы, заполняющие значения
свойств, описывают объект разными способами: они могут указывать кате¬
горию и/или множество, к которым он относится, указывать его роль в более
сложном объекте, задавать уникальное имя, описывать его отношения с дру¬
гими объектами и т. п.
Три основные операции языка позволяют
— добавлять и/или изменять свойства;
— сопоставлять объекты;
— искать объекты, удовлетворяющие заданному описанию.
Основным методом представления являются указания прототипа и уточ¬
нений. Прототипом может быть индивидуальный объект (экземпляр) или по¬
нятие. Возможность работы с таким представлением обеспечивается разви¬
тием механизма наследования: если некоторое свойство не определено для
объекта, используется соответствующее описание для прототипа.
В KRL различаются семь видов концептуальных объектов. Базовые по¬
нятия, подпонятия и обстрактные понятия описывают понятия (классы) пред¬
метной области. Первые два предназначены для иерархической классифика¬
ции, последний — для описания свойств и закономерностей, наследуемых эк¬
земплярами. Основным свойством экземпляров является их уникальность.
Каждый экземпляр соответствует какому-либо отдельному факту или объекту
модели предметной области. Экземпляры содержат ссылки на понятия и до¬
полнительные спецификации в виде описаний. Описания представляют собой
список свойств, характеризующий некоторый экземпляр. Опн используются
для определения конкретных свойств экземпляров, для задания множества
объектов с определенными свойствами, для объектов, индивидуальность кото¬
рых еще не определена, а также в качестве аргументов основных операций
языка. Предикаты и отношения служат для указания функциональной связи
между понятиями или экземплярами. Для той же цели могут использовать¬
ся и произвольные выражения языка LISP.
Сопоставление описаний с понятиями и экземплярами является основой
работы программы на KRL. Сопоставление происходит по свойствам; при этом
учитывается множественность описания, возможность неполноты представле¬
ния и задания одной информации в различной форме. В сопоставлении участ¬
вуют предикаты, отношения и присоединенные процедуры, приписанные срав¬
ниваемым объектам; работа этих процедур может повлечь активацию других
сопоставлений. Сопоставление в KRL можно рассматривать как вывод, уп¬
равляемый пользователем посредством задания присоединенных процедур.
Имеется также два других средства управления обработкой: процедурный
справочник и план; последнее средство предназначено для управления
параллельными процессами, которые возникают при множественном сопо¬
ставлении.
В KRL главное внимание было уделено декларативной стороне языка.
Что касается процедурной сторопы, то процедура в нем оформляется как LISP-
функция, и он использует множество примитивных LISP-функций для мани¬
пулирования со структурами данных.
В FRL описание зданий выполпяется с помощью обобщенного списка
свойств, заключенных во фрейм. Фрейм в FRL можно трактовать как много¬
аспектный список свойств. Если в обычном списке свойств имеются индикато¬
ры и их значения, то во фрейме имеются слоты (аналоги индикаторов). В слоте
58
ГЛ. 3. декларативные и процедурные модели
могут храниться значения под разными аспектами: декларативные, процедур¬
ные и т. д. Кроме этого, значения могут иметь комментарии, в которых может
храниться, например, предыстория появления данного значения или инфор¬
мация для ускорения поиска.
В отличие от обычных списков свойств в FRL имеется возможность хра¬
нить свойства одного фрейма в другом. Это достигается благодаря введению
механизмов наследования, позволяющих объединить фреймы в иерархии и
хранить свойства, общие для элементов некоторого дерева, в его корне¬
вом фрейме.
Система фреймов строится путем указания имен одних фреймов при спе¬
цификации или при заполнении слотов других фреймов. Это дает возможность:
— координировать информацию, содержащуюся в различных фреймах:
— ссылаться из одних фреймов на информацию, заключенную в дру¬
гих фреймах;
—■ создавать иерархии фреймов, в которых фреймы нпжних уровней насле¬
дуют информацию, заключенную во фреймах верхних уровней;
— повышать компактность представления знаний.
Заметим также, что ссылки между фреймами представляют собой не про¬
сто указатели, а некоторым образом вычисляемые указатели. Это открывает
широкий простор для встраивания различных процедурных механизмов в сеть
фреймов, т. е. дает возможность представлять процедурную составляющую
знания. Такими процедурными средствами в языке FRL являются: ЕСЛИ-ДО-
БАВЛЕНО (if-added), ЕСЛИ-НЕОБХОДИМО (if-needed), ЕСЛИ-УДАЛЕНО
(if-removed). В отличие от традиционных языков процедурные средства в
FRL связаны со слотами фреймов, а не с утверждениями произвольной формы.
Языки второго поколения FRL, KRL далеки от теоретической строгости и
завершенности. Следствием этого является постоянное уточнение и измене¬
ние их конструкции и механизмов. Так, например, механизм наследования
требует более гибкого управления. Необходимо также более независимое от
LISP описание процедур, а также наличие механизмов преобразования декла¬
ративной составляющей знания в процедурную и обратно.
Интерес представляет также развитие и уточнение механизма поиска и
сопоставления фреймов. Здесь еще плохо исследована проблема подключения
к поиску и сопоставлению фреймов процедур логического вывода.
В конце 70-х годов появились новые языки, способные составить конку¬
ренцию языку LISP. Эти языки не дают новых мощных средств высокого уров¬
ня, но предлагают модель организации вычислений, в корне отличную от лпс-
повской: это PROLOG, основанный на математической логике, и (SMALLTALK,
основанный на принципах объектно-ориентированного программирования.
Основной особенностью PROLOG, выделяющей его среди других языков,
является наличие нескольких равноправных семантик для его текстов. Текст
на PROLOG может трактоваться как декларативное описание некоторых за¬
кономерностей и как описание некоторых процедур.
PROLOG имеет определенное сходство с PLANNER. Программа на PROLOG
представляет собой множество описаний отношений, являющихся основной
единицей программы, и БД, содержащую факты — экземпляры отношений.
Различаются три вида запросов: проверить истинность выражения, выдать все
объекты, удовлетворяющие описанию, и добавить факт. Все запросы форму¬
лируются в терминах введенных и встроенных отношений. В зависимости от
положения в запросе одному и тому же отношению могут соответствовать раз¬
личные алгоритмы, поскольку в отличие от процедур у отношений не фикси¬
рованы входные и выходные аргументы.
Ненаправленность описаний и возможность их многостороннего исполь¬
зования является одним из наиболее привлекательных свойств языка PROLOG.
Смысл ненаправленности в следующем. Например, отношение R(X, Y, Z) оп¬
ределяет логическую функцию АХ 7Х2-*-{И, Л}, три функции с двумя ар¬
гументами: XXY-+Z, XXZ-+ Y, YXZ-+X илп три функции с одним ар¬
гументом: X-+YXZ, Y^XXZ,Z-+XX Y.
3.2. ПРОЦЕДУРНЫЕ ПРЕДСТАВЛЕНИЯ
59
Если в традиционных языках программирования для вычисления каждого
из этих отображений необходимо записать отдельный алгоритм, то в PROLOG
различные интерпретации однажды написанного отношения работают для вы¬
числения различных отображений. При этом, если отображение однозначно,
отношение работает как функция, а если многозначно, то обеспечивает пере¬
бор вариантов, работая как генератор. При этом циклы, рекурсия и поиск с
возвратом перестают различаться и становятся «невидимыми» для програм¬
миста.
PROLOG представляет новый уровень абстракции: если LISP полностью
«скрыл» от программиста устройство памяти ЭВМ, то PROLOG позволяет «не
заботиться» о потоке управления в программе.
PROLOG предлагает описание проблемы в виде никак не структурирован¬
ной совокупности отношений. Но когда для описания задачи требуются сотни
или тысячи отношений, программа становится очень сложной для понимания,
что сказывается на ее модифицируемости и надежности. Кроме того, возни¬
кают проблемы, связанные с эффективностью языка (хорновские дизъюнкты,
поиск только «в глубину», порядок разрешения литер). Однако все-таки пред¬
полагается включение спецпроцессора для PROLOG как одного из централь¬
ных компонент вычислительных систем пятого поколения (по японскому
проекту).
В последние годы получил широкое распространение новый подход к про¬
граммированию — объектно-ориентированное программирование. В рамках это¬
го подхода программа состоит из взаимосвязанных объектов, обменивающих¬
ся запросами; каящый объект является экземпляром некоторого класса, оп¬
ределяющего правила реакции на различные запросы. Эта концепция нашла
свое наиболее полное выражение в языке SMALLTALK.
Основной единицей программы в этом языке является объект. Объекты
могут представлять элементы программы (классы и их экземпляры), устрой¬
ства ввода — вывода и их части (окна экрана), сегменты памяти, внутренние
структуры интерпретатора.
SMALLTALK имеет оригинальный синтаксис, столь же однородный как в
LISP, но столь же удобочитаемый как в Паскале. Программы на нем обычно
читаются и пишутся непосредственно на экране дисплея; способ записи про¬
грамм ориентирован на работу со структурным многооконным редактором.
Запрос в SMALLTALK соответствует оператору, выражению или обраще¬
нию к подпрограмме в других языках. Обработка запроса выполняется в три
шага: найти правило, шаблон которого совпадает с именем запроса; создать
временные переменные для значений аргументов запроса и рабочих пере¬
менных; выполнить правила последовательностей запросов и вернуть значе¬
ние последнего из них как ответ.
Подобно языку LISP, SMALLTALK является целостной системой програм¬
мирования, в которой вся виртуальная машина доступна из языка. С LISP
его роднит также принцип единообразного представления информации (в
LISP — списки, в SMALLTALK—объекты) и возможности операции над про¬
цедурами.
Во всех последних ЯПЗ прослеживаются общие черты, отличающие их
от традиционных языков программирования. Программа в этих языках состо¬
ит из описания ситуации (в виде БД или сети экземпляров) и описания за¬
кономерностей (в виде теорем, отношений или сети фреймов). Имеются в ос¬
новном следующие операции: поиск, добавление, возврат и сопоставление.
ЯПЗ часто называются языками запросов, особенно при работе с БД. За¬
просы в БД могут быть двух типов: замкнутые и открытые. Замкнутый запрос
требует ответа «да» или «нет». Например, на запрос «Обучает ли преподаватель
Грачева Е. К. студентов специальности 0647 языкам программирования», от¬
вет будет однозначным или «да», или «нет». Открытый запрос для своего
ответа требует множества п-ок. Например, при запросе «Составьте список всех
преподавателей, читающих курс «Математический анализ», ответом будет спи¬
сок этих преподавателей.
60
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Для реляционных БД будем различать три класса языков запроса: языки,
основанные на реляционном исчислении, языки, основанные на реляционной
алгебре, и языки, ориентированные на операцию «отображение». Общим для
них является то, что все они более декларативного тппа, нежели процедурно¬
го, т. е. в них более развиты механизмы описания свойств, чем механизмы пх
нахождения.
В языках запроса, оспованных на реляционном исчислении, ответ на за¬
прос, т. е. отношение, которое нам желательно получить, определяется в тер¬
минах уже имеющихся отношений в БД. Примером такого языка является
язык alpha, разработанный Коддом. Из достоинств этого языка отметим
следующие:
— язык обладает реляционной полнотой. Это значит, что любое отношение,
выводимое пз модели данных с помощью выражения реляционного исчисле¬
ния, может быть получено с использованием этого языка, причем вывод этого
отношения достигается весьма экономным способом;
— язык непроцедурен, т. е. он устанавливает, каким будет результат от¬
вета на запрос, но не указывает, как его получить;
— язык прост для использования п для его расширения.
В языках, основанных на реляционной алгебре, запрос с помощью спе¬
циального механизма редукции преобразуется в последовательность алгебраи¬
ческих операций над отношениями БД. Ответом на запрос является получе¬
ние нужного отношения. Алгебраический язык тоже обладает реляционной
полнотой, так как алгебра реляционно полна. Кроме этого, реляционная ал¬
гебра ближе к процедурному языку программирования, чем исчисление. Что
касается простоты, то реляционная алгебра, как п исчисление, довольно про¬
ста и обладает большой мощностью.
В языках, ориентированных на операцию «отображение», некоторые ат¬
рибуты в отношениях отображаются на атрибуты отношения, заданного в
запросе. Наиболее известными языками этого класса являются sequel (Structu¬
red English Query Language) и QBE (Query by Example). Эти языки также яв¬
ляются реляционно полными и имеются веские доводы, что они проще для
использования, чем языки, основанные па реляционной алгебре и исчислении.
Различие между языками sequel и QBE в том, что последний разработан, глав¬
ным образом, для работы с терминала (дисплея). Кроме того, QBE имеет дву¬
мерный синтаксис, поскольку операции задаются в табличной форме.
В заключение отметим, что процедурное представление можно на самом
деле рассматривать как представление, комбинирующее интенсиональные и
экстенсиональные черты. Интенсиональные черты процедурного представле¬
ния заключены в программной схеме для процедуры (каждой программе (про¬
цедуре) соответствует программная схема, которая рассматривается как не-
интерпретированная программа). Экстенсиональные черты процедуры заклю¬
чены в тех операторах программы, в которых используется поиск по мно¬
жествам.
ГЛАВА 4
СЕМАНТИЧЕСКАЯ СЕТЬ — ФОРМАЛИЗМ
ДЛЯ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ
4.1. Общее понятие о семантических сетях
В последнее время семантический подход к построению систем
принятия решений получает все большее распространение. Он на¬
ходит применение в системах понимания естественного языка,
в вопросно-ответных системах, в различных предметно-ориентнро-
ванных системах управления и принятия решений.
4.1. ОБЩЕЕ ПОНЯТИЕ О СЕМАНТИЧЕСКИХ СЕ^ЯХ
61
В самом общем случае семантическая сеть представляет собой
информационную модель предметной области (совокупность фактов
и утверждений из БД) и имеет вид графа, вершины которого соот¬
ветствуют объектам (понятиям) предметной области, а дуги — от¬
ношениям между ними. В семантической сети выражено, прежде
всего, интенсиональное знание о проблемном окружении. В ней
соединено как синтаксическое (структурное), так и семантическое
(относящееся к данной предметной области) знание, что позволяет
достаточно легко его обновлять в относительно однородной
структуре.
Важной чертой семантических сетей является возможность пред¬
ставлять знания более естественным и структурированным образом,
чем это делается в других формализмах (например, в продукцион¬
ных системах п т. п.).
Исследования по семантическим сетям начались с работы
М. Р. Квиллиана в 1966 г., в которой он попытался формально
представить семантику английских слов. М. Р. Квиллиан ввел тер¬
мин «семантическая память» для системы, в основе которой лежал
формальный язык, выражениями которого были графы с помечен¬
ными вершинами и дугами. Точнее формальные выражения этого
языка были составлены пз вершин, которым отвечали «понятия-
слова», и из «ассоциативных дуг», соединяющих вершины. Эти дуги
фактически исполняли роль
указателей, с помощью которых
одни слова-понятия ссылаются
на другие. Эта структура вза¬
имных ссылок между словами-
понятиями и дает определение
исходного слова-понятия. Ана¬
логичное наблюдается в толко¬
вых словарях, в которых толко¬
вание данного слова конструи¬
руется пз последовательности ?
слов, толкования которых раз¬
бросаны в разных частях ело- ^
варя.
В структуре Квиллиана каж¬
дое слово-нонятпе представля¬
лось как заголовок «страницы»,
содержащей его определение.
Пример выражения языка
Квиллиана дан на рис. 4.1. Ука¬
затели, лежащие в «странице» (сплошные стрелки на рис. 4.1),
формируют структуру определения. Квнллнан постулировал неболь¬
шой набор таких указателей:
подкласс (например, отношение PLANT (завод) к APPARATUS
(аппаратура));
I,
I
-А рА TJS
т
'St
I
1
PEOPLE
/ , 12N1
г,,-'.- =А
1-С Пи ,
х I |-
PROCESS
У \
s' IN
L»-//VZ
' / ,
/ ^INDUSTRY
г I
-t —
* /
Pnc. 4.1
62
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
модификация (например, APPARATUS модифицируется струк¬
турой USE (использовать));
дизъюнкция (OR);
конъюнкция (AND);
субъект/объект (например, от USE к PEOPLE (люди) (субъект)
и к —А (объект)).
Указатели, лежащие вне «страницы» (пунктирные стрелки на
рис. 4.1), ссылаются на слова-понятия, представленные заголовками
на других «страницах».
Одним из главных намерений Квиллиана было развитие инфе-
ренциальных (дедуктивных) возможностей модели семантической
памяти. Он дал несколько примеров техники вывода, основанной
на поиске по пересечению с использованием распространения ак¬
тивности. Поиск ведется по направлению дуг из двух начальных
«страниц» до тех пор, пока не будет найдено пересечение — общая
•вершина. Пути от начальных вершин к общей вершине определяют
потенциальное отношение между двумя словами-понятиями. Такнм
образом, в модели есть возможность для извлечения неявно пред¬
ставленной информации и, следовательно, эта модель может быть
использована для построения дедуктивных систем принятия
решений.
Дедуктивные возможности модели Квиллиана фактически опре¬
делялись отношением «подкласс» и отношением «модификации».
Понятие может быть определено в терминах более общего понятия
(т. е. первое есть подкласс второго) и с помощью модифицирую¬
щего свойства, которое является комбинацией «атрибут — значение
атрибута». При этом свойство, истинное для элементов класса, так¬
же истинно и для элементов любого его подкласса. Таким образом,
семантическая сеть Квиллиана представляла комбинацию двух ме¬
ханизмов: таксономической иерархии, основанной на отношении
«класс — подкласс», и описания свойств (как пар «атрибут — зна¬
чение») элементов класса.
Некоторым развитием первоначальной модели Квиллиана стала
«го система TLG (Teachable Language Gomprehender). В этой си¬
стеме свойство определялось как атрибут (некоторое понятие-отно¬
шение), его значение и, возможно, некоторые дополнительные
«подсвойства». Определение свойств давалось с использованием
«блоков», которые представляли понятия: объекты, события, идеи,
утверждения и т. п.
Практический успех TLG был ограничен, что частично вызыва¬
лось тем, что набор типов связок (дуг) был недостаточен и поиск
не принимал в расчет смысл связок (т. е. не было интерпретиру¬
ющих программ для связок). Однако значение работ Квиллиана
заключается в содержащихся в них идеях, оказавшихся весьма
плодотворными.
В дальнейшем вместе с А. М. Коллинзом М. Р. Квиллиан пред¬
принял серию экспериментов для проверки применимости его сетей
4.1. ОБЩЕЕ ПОНЯТИЕ О СЕМАНТИЧЕСКИХ СЕТЯХ
63
к психологическим явлениям, связанным с запоминанием. Здесь ис¬
пользовались сети с простой структурой, в которых имела место
простая иерархия. Важным результатом пх работы явилось осмыс¬
ление понятия наследование свойств (т. е. передача значения от обще¬
го понятия к менее общему) и понятия семантического расстояния.
Идеи Квиллиана были использованы в 1970 г. Дж. Р. Карбо-
неллом при построении системы SCHOLAR, предназначенной для
обучения с помощью вычислительной машины. Система SCHOLAR
имела базу знаний, описывающих в впде сетей географию Южной
Америки. Здесь была использована новая идея о специализации
(instantiation). Идея специализации состоит в связывании каждого
конкретного индивида с классом, членом которого он является. Но
здесь важно то, что описание индивида основывается на описании
родовых понятий, присущих этому индивиду. Индивид, связанный
отношением специализации с данным классом, есть пример родо¬
вого понятия, описывающего данный класс. Таким образом, хотя
первоначально мы думаем о примерах как о конкретных вещах
в данном мире, т. е. как о строго индивидуальных объектах, все
же их описания являются проявлениями абстрактных понятий.
Работа лингвиста К. Филмора по падежным структурам обра¬
тила внимание исследователей на роль глаголов при описании зна¬
ний. В среде исследователей, занимающихся вопросами создания
программ, «понимающих» естественный язык, возобладало представ¬
ление, что фраза языка есть пара, состоящая из предложения и
модальности. Модальность несет информацию такую, как время,
наклонение, вид, а предложение есть в сущности глагол и множе¬
ство «заполненных» падежей. Считалось, что можно разумным об¬
разом дать небольшой на¬
бор падежей, т. е. отноше¬
ний между существитель¬
ными (именными группа¬
ми) и глаголами. Семанти¬
ческие сети оказались
очень удобными для запи¬
си таких отношений: гла¬
гол представлялся верши¬
ной сети, падежи указы¬
вались дугами, идущими
от вершины-глагола, при¬
чем эти дуги ссылались
на вершины, представляю¬
щие существительные.
Примером системы, использующей язык семантических сетей,
включающий семантические падежи, является система Д. Е. Ру-
мельхарта и Д. А. Нормана. На рис. 4.2 дан пример выражения
в их языке: «Вчера у школы мальчик разбил камнем окно, Прохо¬
жий дал ему нагоняй».
YESTERUAY
1
< WINDOW >
i
OBJ.
INSTRUMENT
f ACTOR 1
ACTOR Z
< STONE > <soY>
Рис. 4.2
64
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Сеть Румельхарта-Нормана включает вершины для понятий,
вершины для событий и вершины для эпизодов (последовательно¬
стей событий, собранных вместе). Общие определения понятий ко¬
дируются в сети непосредственно, причем используются «падеж¬
ные» дуги, указывающие на именные понятия, агенты и объекты
глагола.
Стоит также упомянуть исследования, выполненные Р. Шенком
и его ученикамн по представлению «концептуальной зависимости».
Хотя сам Шенк не применял термин семантические сети к выра¬
жениям своего формального языка, тем не менее его понятие кон¬
цептуализации очень близко к понятиям, введенным Р. Симмон¬
сом, Д. Румельхартом, Д. Норманом и др. Концептуализация со¬
стоит из примитивного действия и некоторых ассоциированных
John <=> INGEST^i
John
A
i
ice cream-
V
TRANS
\° CONT
Spann ice cream
t*
ice cream mouth
§PDSS=8Y
John
Рис. 4.3
с ним падежей, таких, как например; «инструмент», «направление».
На рис. 4.3 показан пример записи в языке Шенка. В этой записи
представлено высказывание: «Джон ест ложкой мороженое».
Здесь R указывает «реципнентный» падеж, а I — «инструмен¬
тальный» падеж. Каждое примитивное действие (например, INGEST,
TRANS) имеет конкретную ассоциированную с ним падежную
структуру. Все глаголы (как здесь глагол «есть»), которые имеют
«высокий уровень», должны быть разложены в канонические струк¬
туры, составленные из примитивных действий. Таким образом,
Шенк не только указывает некоторый набор примитивных отноше¬
ний, он дает набор примитивов знания, нз которых другие понятия
следует строить.
Вклад Шенка в проблему представления знаний признается до¬
статочно важным, хотя его система содержит много неясностей и
противоречий. Можно сказать, что его падежи «атакуют» структу¬
ру знаний на примитивном уровне. Однако системе Шенка свой¬
ственны и недостатки. Например, слишком глубокая структура ста¬
4.1. ОБЩЕЕ ПОНЯТИЕ О СЕМАНТИЧЕСКИХ СЕТЯХ
65
новится очень громоздкой, что затрудняет реализацию. Кроме того,
механизмы вывода для нее усложнены. В созданной Р. Шенком и
К. Ригером программе MARGIE, «понимающей» естественный язык,
существенную часть составлял лингвистический процессор; язык же
концептуальных зависимостей использовался как модель памяти.
Хотя программа работала эффективно, все же ее «понимание» не
выходило за рамки текстов с бытовой тематикой.
В большинстве ранних работ по семантическим сетям концеп¬
туальные отношения и лежащие в их основе механизмы знания
были выражены в неразличимых терминах, благодаря чему такая
однородность не давала возможностей для расширений сетей. Од¬
нако в 1971 г. С. Шапиро ввел важное различие между «предмет¬
ным» или концептуальным уровнем сети и «системным» или
структурным уровнем взаимодействий, который связывает структу¬
рированные утверждения о фактах с предметами, в них участву¬
ющими. Системные отношения в сети отмечены ребрами, и их се¬
мантика определяется набором обрабатывающих программ, опери¬
рующих на них. Предметные отношения являются понятиями и
представлены в сети вершинами. Например, отношение тина LOVES
будет представлено не как ребро, а как вершина семантиче¬
ской сети.
Однако из работы С. Шапиро не ясно, каким образом глагол сам
по себе будет определен в терминах сети (например, что делает
тот же глагол LOVES отличным от любого другого глагола с ана¬
логичной падежной структурой). Кроме того, он не дает никаких
рекомендаций о самом множестве системных отношений, о семан¬
тике предметов, за исключением предположения о важности того
или иного множества при поиске. Несмотря на это, его разделение
представления знаний на концептуальный и структурный уровни,
а также разработка языка, с помощью которого можно разрабаты¬
вать многие модели знания, является значительным продвижением
вперед в области создания моделей представления знаний.
В 1975 г. Г. Хендрикс ввел понятие разбиения на блоки, что
позволило сгруппировать вершины и дуги семантической сети в
отдельные структуры, названные блоками, и благодаря которому
повысилась выразительная мощь семантических сетей. Более по¬
дробно семантическую сеть Г. Хендрикса и ее разбиение на блоки
мы рассмотрим в следующем разделе; здесь же отметим, что эта
идея нашла широкое применение и дальнейшее развитие в моделях
представления знаний, в частности, в модульной структуре систем
представления в виде сети фреймов.
Так, в семантической сети Ф. Хейеса также имеет место идея
разбиения сети на отдельные блоки, которые он назвал «депищия-
»ш> (изображениями, картинками). Сети Хейеса имеют два уровня
структуры: внутренняя структура депикций и структура отношений
между депикциями как таковыми. Депикция включает множество
вершин и ребер, образующих подсеть. Одна из вершин депикции
** в. Н. Вагин
66
ГЛ, 4. СЕМАНТИЧЕСКАЯ СЕТЬ
называется депиктом, где депикт — это выделенная вершина де-
пикции, которая описывается в терминах других вершин, называе¬
мых депикторами. На рис. 4.4 изображена депикция понятия «че¬
ловек», где вершина A-HUM AN—депикт, а все остальные вершины
в пределах замкнутой области — депикторы (A-ARM (рука)’,
A-LEG (нога), A-TORSO (туловище), A-HEAD (голова)).
Поскольку депикции задаются в общем виде, их означивание
частными случаями, т. е. специализация, производится с помощью
особой структуры, называемой связывателем (binder). Связыва-
тель — это структура данных, содержащая имя депикта и список
bead leg torso orm
Рис. 4.4
соответствий между вершинами депикции и их специализацией
(частными случаями). На рис. 4.4 изображен связыватель D-HU-
MAN # 1 для означивания депикции D-HUMAN, представляющий
Фреда, его голову, туловище, руки, ноги.
Наиболее важным в организации семантических сетей является
введение отношений «множество — подмножество» и «целое —
часть» (на рис. 4.4 эти отношения представлены isa и partof). Ос¬
тановимся на них подробнее.
Важной техникой, используемой в семантических сетях, явля¬
ется иерархия или система классификации. В соответствии с этой
техникой объекты, относящиеся к проблемной области, классифи¬
цируются на некоторое число категорий или классов на основании
их общих свойств. Например, множество людей может быть клас¬
сифицировано на мужчин, женщин, детей и т. д. Дети классифи¬
4.1. ОБЩЕЕ ПОНЯТИЕ О СЕМАНТИЧЕСКИХ СЕТЯХ
67
цируются на мальчиков, девочек и т. п. Такого вида классификации
формализуются в семантических сетях с помощью отношения isa
(от английского is а — есть некоторый).
A isa В для двух типов объектов А и В записывается тогда и
только тогда, когда экстенсиональное представление типа А есть
часть экстенсионального представления В в любой допустимой ин¬
терпретации семантической сети. Типы А и В называются экви¬
валентными, если A isa В и В isa А. Одним из важных черт isa-
иерархии — это то, что свойства «высших» типов автоматически
переносятся на «низшие» типы, т. е. на типы, предшествующие
по isa-нерархии. Например, свойство иметь «вес» присуще физиче¬
ским объектам. Следовательно, оно присуще одушевленным объек¬
там, человеку, мужчине, женщине и т. д.
Isa-иерархия позволяет избежать значительной части дублиро¬
вания информации на сети. Так, если некоторый факт истинен для
каждого подмножества некоторого множества, то его можно хранить
только в структуре знания для этого множества.
Ф. Хейес ввел иерархию обобщения депикций. Эта иерархия
представляет собой дерево депикций, причем родительская вершина
является обобщающей для потомков. Ответвляющаяся депикция по
умолчанию включает в себя все ребра и вершины родительской.
Обратная ситуация специально оговаривается. Чем ближе корень
дерева, тем менее специфицировано описание.
Не менее важным является также отношение «целое — часть».
Структура отношений «часть — целое» на депикциях носит назва¬
ние SQN-структуры. На рис. 4.5 показана депикция -D-ARM (рука)',
где A-ARM — деиикт, в то время как в депикции H-HUMAN он
был депиктором (на рис. 4.5 представлены части руки: палец,
кисть, запястье, предплечье, локоть, плечо). Отметим, что связи
(Partof N-ARM iV-HUMAN) и (Connected iV-ARM iV-TORSO), отме¬
ченные на рис. 4.4, не показаны на рис. 4.5, поскольку они счита-
5*
68
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
ются как бы «невидимыми», когда А-ARM рассматривается с точки
зрения Z5-ARM.
SQN-структура позволяет разбивать информацию по уровням
детализации. Кроме того, повторная информация может быть пред¬
ставлена одним узлом иерархии с навешанным квантором. При
необходимости разделить повторную информацию используются
специальные метки-разделители. Например, в случае A-ARM для
различения правой руки от левой используются разделители:
A-LEFT и L-RIGHT.
SQN-структура строится следующим образом: если депикт не¬
которой депикции является частью величины, или каким-то образом
определяет некоторую величину, то данная депикция считается
незавершенной. Ее завершение требует существования депикции
той величины, для которой ее собственный депикт будет являться
депиктором. Так, депикция П-ARM не завершена без определения
П-HUMAN в качестве SQN-депикции для П-ARM. Таким образом,
SQN-структура представляет собой дерево депикций, в котором
каждая родительская вершина является SQN-депикцией для ее по¬
томков. При специализации некоторой депикции должны означи¬
ваться и родительские вершины SQN-иерархии.
В целом введение отношений «часть — целое» п «множество —
подмножество» оказалось весьма эффективным для решения многих
проблем из области принятия решений.
Подытоживая сказанное, перечислим наиболее важные понятия
и принципы, положенные в основу создания семантических сетей:
1) принцип локальности представления информации (фреймы,
блоки, депикции и т. п.);
2) специализация — обобщение понятий (семантика индиви¬
дуальных понятий проявляется в описаниях через общие понятия) ;
3) семантические падежи;
4) наследование свойств;
5) таксономпя, т. е. иерархия понятий;
6) механизмы дедукции и обобщения (о них будем говорить
подробно в III и IV частях книги);
7) процедурная семантика.
4.2. Структура семантической сети
Семантическая сеть, как мы уже выяснили, представляет собой
теоретико-графовую структуру с помеченными вершинами и дугами.
Вершинами могут быть понятия (предметы), события (действия),
свойства (места), а дугами — отношения, которые делятся на линг¬
вистические, логические, теоретико-множественные, квантификаци-
онные. В свою очередь лингвистические отношения делятся на гла¬
гольные (время, вид, род, число, залог, наклонение) и атрибутив¬
ные (цвет, размер, форма, модификация); логические — на дизъюнк¬
цию, конъюнкцию, отрицание, импликацию; теоретико-множествен¬
4.2. СТРУКТУРА СЕМАНТИЧЕСКОЙ СЕТИ
69
ные — на подмножества, а квантификационные отношения делятся
на логические кванторы общности и существования, нелогические
кванторы (много, несколько) и числовые характеристики.
Рассмотрим структуру семантической сети, предложенную
Г. Хендриксом, в которой можно записывать таксономическую ин¬
формацию, общие утверждения (включая квантификацию), инфор¬
мацию о процессах и процедурах, модальности (мнения, желания),
информацию о границах локальных контекстов и т. н. Структура
(universal}
Блок
знаний
do
SITU A TIONS
!) СPHYSOBJS)
.dS
(humans') (companies) (BUILDS ) (.IMPLICATIONS)
ds
ante
\ /в
(automobiles)
Xds
T) (mustangs) f MODEL \
\ П nt P S’ ^ /
(OLD.BLACK)
(lizzy)
Рис. 4.6
этой сети обладает большой выразительностью, в ней наиболее пол¬
но нашли отражение основные принципы построения таких сетей
и кроме того, она явится базой для дальнейшего развития процесса
представления знаний в виде сети фреймов*
Начнем изложение с примера сети Г. Хендрикса, на котором
будут пояснены основные понятия структуры (см. рис. 4.6) . Здесь
UNIVERSAL обозначает универсальный класс (универсум), кото¬
рый объединяет различные объекты. Класс UNIVERSAL содержит
три подкласса: LEGAL PERSONS (юридические лица),
70
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
SITUATIONS (ситуации) и PHYSOBJS (физические объекты).
Метка s обозначает отношение включения, а метка ds кроме отно¬
шения включения, подразумевает, что элементы одного класса от¬
личны от элементов другого (например, элементы подкласса
SITUATIONS отличны от элементов LEGAL PERSONS и PHYSO¬
BJS). Метка е обозначает элемент класса. Метка de обозначает,
что данный элемент отличен от всех других элементов, обозначения
которых указаны другими е (de)-дугами для данного класса (на¬
пример, FORD и G. М. (General Motors) обозначают различные
элементы класса COMPANIES (компании)). Метки agt и obj ис¬
пользуются для обозначения семантических падежей: агент, т. е.
лицо, вызывающее действие, и объект — предмет, подвергающийся
действию, соответственно. Метки conse и ante обозначают соответ¬
ственно консеквент и антецедент импликации.
Семантическая сеть имеет блочный характер, и каждый блок
имеет вершину входа (например, вершины В, В и М для трех
блоков соответственно). Блок — одна из основных структурных еди¬
ниц сети (наравне с вершинами и дугами). Каждая вершина и
каждая дуга сети принадлежит одному или нескольким блокам
(например, вершина М принадлежит трем блокам).
Дуги, принадлежащие блоку, указываются тем, что их метки
записаны внутри прямоугольника (например, дуга, связывающая М
с MUSTANGS, принадлежит блоку, ограниченному самым малень¬
ким прямоугольником, но не принадлежит блоку, ограниченному
большим прямоугольником). Таким образом, разбиение сети на
блоки дает возможность для образования иерархии блоков.
К двум блокам с вершинами В и М добавим классы IMPLICA¬
TIONS (импликация) и BUILDS (строит). Тогда мы получим ут¬
верждение, которое читается: «Если М является элементом класса
MUSTANGS, то для некоторой ситуации В из класса BUILDS
агентом В является FORD, а объектом В является М». На языке
логики предикатов первого порядка это утверждение запишется
следующим образом:
(УМ <= MUSTANGS) (35 е= BUILDS) agt (В) = FORD & obj (В) = М.
Таким образом, в сети имеется возможность представлять ком¬
бинацию кванторов общности и существования.
Иногда удобно скомбинировать несколько блоков в один «пу¬
чок» блоков. Такую комбинацию блоков Хендрикс назвал «видом»
(vista). Эта идея применяется при извлечении информации из сети,
когда выгодно иметь только определенный список блоков — «вид»,
из которых и выбирается нужная информация, т. е. говорят, что
вид «видим» в данный момент. Все структуры, лежащие вне этого
вида, и, следовательно, заключенная в них информация, будут
игнорироваться.
Механика разбиения сети на блоки позволяет создавать иерар¬
хию видов, причем вид наследует информацию родительского вида.
4.2. СТРУКТУРА СЕМАНТИЧЕСКОЙ СЕТИ
71
На рис. 4.7 дан пример использования иерархии видов. Жирные
стрелки указывают на наследование способности выборки инфор¬
мации. Внизу от каждого блока помещен список блоков, составля¬
ющих вид. Так, блок В связан с видом F1, содержащим только
этот блок. Аналогично, вид F2 содержит блоки NP1 и В и, следо¬
вательно, из него «видима» информация, содержащаяся как в NP 1,
так и в В. Однако информация, содержащаяся в U1, «невидима»
из V2 (за исключением случая, когда блоки В и NP 1 содержат те
же самые вершины и дуги, что и £71). Таким образом, из вида F5
R
' (/*£Л/) ([OWNINGS)
(automobiles')
f
И
t
V7={fl}
в
V
/VP 7
0
в
С г
L U1
в
С
#2
={NPtB}j 1 jy3~{U1,B} I
VP1
21
VU ={NP2,8}
V5 = {VP1,U1,NP2,3
V6 ={S1, VP1, NP1, U1, NP2, В}
Рис. 4.7
«видна» глагольная часть фразы: «Некоторый человек М владеет
машиной С», а сама фраза «видна» из F6.
В рассматриваемой семантической сети могут присутствовать
блоки логических операций: отрицания, дизъюнкции и импликации.
Эти блоки особенно важны для логической дедукции при построе¬
нии систем принятия решений. Что касается конъюнкции, то она
реализуется в сети довольно просто с помощью механизма насле¬
дования.
Дизъюнкция, входящая в некоторый блок S, описывает альтер¬
нативные наборы понятий и отношений и утверждает, что понятия
и отношения, удовлетворяющие по крайней мере одному из опи¬
саний, существуют в мире, представленном блоком 5.
Пример сети, в которой закодирована дизъюнкция D = «или
OLD. BLACK была построена компанией Форд, или OLD. BLACK
принадлежит Джону», представлен на рис. 4.8.
Компоненты дизъюнкции D представлены здесь блоками (супер¬
вершинами) 52 и 53, причем они являются различными элемен¬
тами D. Структура дизъюнкции вложена в конъюнкцию блока 51.
Блок 51 обеспечивает частичное описание некоторого мира (т. е.
набора понятий и их отношений) и каждая структура в 51 пред¬
72
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
ставляет собой некоторое понятие или ситуацию, встречающуюся
в этом мире. Таким образом, при рассмотрении сети из 51 такие
понятия как OLD. BLACK и D становятся «видимыми». Однако
структуры в блоках 52 и 53 не «видны» из 51. Так как известно,
что 51 включает ситуации, описанные по крайней мере, в одном
из компонентов D, например, в 52, то мир будет включать все си-
( BUILDS э С OWNINGS*)
S1
( OLD. BLACK')
С JOHN ~)
BISJUNC TIONS
Рис. 4.8
Рис. 4.9
туации, описанные структурами, которые «видимы» из 52. Следо¬
вательно, в данном случае сюда будут включены структуры из 52
и 51, но исключены структуры из 53.
В семантической сети отрицание включает в себя описание не¬
которого множества понятий и отношений, имеющих место в бло¬
ке 5, и означает, что ни одно множество, удовлетворяющее описа¬
нию, не может существовать в мире, выраженном блоком 5. На
рис. 4.9 дана сеть, представляющая утверждение: «Компания G. М.
не строила OLD. BLACK». Как в примере с операцией дизъюнк¬
ции, структуры с отрицанием внутри 52 не «видимы» при рас-
4.2. СТРУКТУРА СЕМАНТИЧЕСКОЙ СЕТИ
73
смотрении сети из SI, хотя отрицание само по себе «видимо». При
обработке такой негативной информации будем полагать, что верно
предположение о замкнутом мире Рейтера.
И наконец, импликация, входящая в блок S, описывает два
набора понятий и отношений, и утверждает, что если понятия и
отношения существуют в мире, представленном блоком S, который
удовлетворяет первому из двух описаний (ante), то понятия и
отношения, удовлетворяющие второму описанию (conse), также су¬
ществуют в этом мире. Импликация представляется вершиной с
дугами, идущими к блокам, содер¬
жащим предшествующее (ante) и
последующее (conse) описания.
Пример сети с импликацией был
дан на рис. 4.6.
Одной из важных особеннос¬
тей сети является ее способность
для представления произвольно
сгруппированных кванторов общ¬
ности и существования. Квантор
существования является «встроен¬
ным» понятием в том смысле, что
если некоторый элемент (вершина или дуга) входит в данный блок,
то соответствующее понятие существует в мире, который данный
блок представляет.
Квантор существования и отрицание могут использоваться для
представления любой формулы с квантором общности (Vrce
<= Х)Р(х), имея в виду следующее преобразование:
(У/х eI)P(j) = *~\~\ [(Va:e= X) Р (х)} = [(3® е= X) П Р (*)].
Эта формула представлена на рис. 4.10.
Такое представление логически верно, но не наглядно. Рассмот¬
рим другое представление квантора общности:
('У/х е X) Р (х) = У/х [(х е X) -+Р (ж)].
Здесь переменная х встречается как в антецеденте, так и в кон-
секвенте. Это свойство используется в системе для представления
переменной с квантором общпости.
Если в формуле основная связка — импликация, то вторую та¬
кую связку вводить необязательно. Например, (Vx е X) [Q(x)-+
R (ж)] = У/х [(же X)->(<2(a;)->i?(a:))] = У/х [((xel) & Q(x))-*-R (ж)].
Произвольное группирование кванторов может быть достигнуто
помещением импликаций в области консеквентов других имплика¬
ций. Например, (Va; е X) (3 у gP)(VzgZ)P (х, у, z) — Чх{(х е!)->
-*■ Зу[(г/еУ) d? Vz((ze Z)-+P (х, у, z))]}.*Ha рис. 4.11а, б. дано пред¬
ставление формул (Эхе1)^(х) и (VxgI)?(x).
Идея разбиения сети на блоки находит свое дальнейшее выра¬
жение в использовании многосортной логики предикатов для более
Рис. 4.10
74
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
эффективного представления знаний. Введение многосортной логи¬
ки в процесс дедуктивного вывода позволяет ограничить область
поиска и тем самым повысить эффективную мощь семантических
сетей. При этом выполняются следующие цели:
— отвергаются вопросы, утверждения БД и общие аксиомы вы¬
вода, предикаты которых имеют переменные, несовместимые с се¬
мантическими ограничениями, накладываемыми на сеть;
— отыскиваются и применяются только те утверждения и об¬
щие законы БД, которые по своей семантике подходят к какой-ли¬
бо части вопроса;
— определяются все семантически возможные ответы на
вопрос.
Область (универсум) рассуждений D распадается на ряд раз¬
личных именованных подмножеств, называемых семантическими
категориями (Дж. Минкер и Дж. Мак-Скимин). В сущности поня¬
тие «семантической категории» эквивалентно понятию «сорта», при¬
меняемому в логике. Семантическая категория — это имя, данное
совокупности определенных элементов в области рассуждений. На¬
пример, «мужчина»— это семантическая категория, состоящая из
имен всех мужчин, имеющихся в БД.
Каждый элемент рассуждений D может быть задан как список
свойств, характеризующих этот элемент. Каждый предикат, задан¬
ный на D, допускает в качестве аргументов только те элементы,
которые обладают определенными свойствами.
В дальнейшем универсум рассуждений будет считаться универ¬
сальной семантической категорией, обозначаемой UNIV.
Имена, даваемые категориями, могут определяться произвольно
л являются синтаксическими объектами. Для задания теоретико¬
множественных отношений между семантическими категориями
4.2. СТРУКТУРА СЕМАНТИЧЕСКОЙ СЕТИ
75
строится граф семантических категорий или просто семантический
граф.
Семантический граф Ga есть конечный граф, вершинами которо¬
го служат семантические категории. Дуги G, указывают теоретико¬
множественные отношения:
1. Категория С{ является частью категории С, (обозначение:
Ct е Cj), если х е Ci =>- х е Cj для каждого х из области UNIV.
2. Категория С{ равна категории Cj (обозначение: C, — Cj), если
Ci — Cj и Cj *= Ci.
3. Категория Ci не пересекается с категорией Cj (обозначение:
Ct0 С,), если С it) Cj=0.
Висячие вершины графа Gs называются примитивными катего¬
риями.
Отношение равенства, здесь введенное, допускает разбиение ка¬
тегории С на конечное число подмножеств Си Ci, ..., Сп таких, что
выполняются следующие условия:
1) U Cj = С и 2) С,ПС, = 0, i¥>j.
i=l
Из категорий с использованием операций пересечения (П), объ¬
единения (U) и дополнения (—|) можно получить так называемые
булевы категорные выражения, которые сильно увеличивают выра¬
зительные возможности семантических категорий (Дж. Минкер и
Дж. Мак-Скимин). Примеры булевых категорных выражений: рас¬
тение U животное, студент П молодой.
Важным видом семантической информации является назначение
ограничений, связанных с семантическими категориями, для аргу¬
ментов. Эти ограничения запоминаются в пространстве семантиче¬
ских форм. Семантические формы используются, главным образом,
для проверки, являются ли вопрос и дизъюнкты из БД несовмести¬
мыми, т. е. семантические формы определяют, какие константы или
функции могут быть подставлены в качестве аргументов некоторого
множества и-ок. Для записи семаптических форм используется
тот же тип выражений, что и для записи утверждений и общих
правил.
Г. Хендрикс называет подобный механизм очерчиванием (deli¬
neation), который позволяет уменьшить перебор при поиске нуж¬
ной информации и резко повысить эффективность механизмов
вывода.
Таким образом, в семантической сети можно выделить следую¬
щие структурные компоненты:
— семантический граф, который определяет теоретико-мпожест-
венные отношения между семантическими категориями;
— база данных, состоящая из утверждений и общих правил
(законов), представленных в виде дизъюнктов;
— пространство семантических форм, которое определяет семан¬
тические ограничения, наложенные на аргументы реляцион¬
ных п~ ок;
7Ъ
ГЛ, 4. СЕМАНТИЧЕСКАЯ СЕТЬ
— словарь, который определяет для каждого элемента области,
каждого функционального имени и предикатного имени ту семан¬
тическую категорию, членом которого он является,
4.3. Представление семантической сети
в виде совокупности фреймов
Свое дальнейшее развитие блочная структура Г. Хендрикса на¬
шла в системах представления знаний в виде сети фреймов, пред¬
ставляющих собой синтаксически-семантические блоки в общем
случае процедурно-декларативного типа. Фрейм содержит информа¬
ционные и процедурные элементы (это деление в достаточной мере
условное), обеспечивающие преобразование информации внутри и
связь его с другими фреймами (здесь трактовка фрейма иная, не¬
жели в ЯПЗ).
В структуре фреймов широко используется концепция слотов,
т. е. незаполненных участков, которые заполняются в процессе
активации, функционирования фрейма в соответствии с определен¬
ными условиями или предписаниями, которыми они сопровож¬
даются.
Будем рассматривать семантическую сеть как некоторый ори¬
ентированный граф с помеченными вершинами и дугами, в котором
выделены также помеченные подграфы, называемые фреймами.
Исходными элементами семантических сетей считаем типы, кон¬
станты, предметные переменные и простые фреймы. Определим эти
элементы.
Типы (сорта, семантические категории) представляют нефор¬
мальные общие, родовые идеи физических или абстрактных объек¬
тов, которые мы выделяем в проблемном окружении. Они являются
интенсиональными объектами: интерпретируются как множества.
Примеры типов: ЧИСЛО, ТОЧКА, ПОСТАВЩИК, ПРЕДПРИЯ¬
ТИЕ, ЧЕЛОВЕК, ПРЯМАЯ и т. п.
Имена типов присваиваются некоторым вершинам семантиче¬
ской сети и записываются большими буквами.
Типы будем делить на две категории: простые типы и составные
типы. Простые типы соответствуют начальным понятиям. Состав¬
ные типы будут определяться с помощью так называемых фреймов
из простых типов.
Константы представляют конкретные предметы из экстенсиона¬
лен типов. Константа есть интенсиональный объект: когда сообща¬
ется, что константа а имеет тип А, то это означает, что при любой
интерпретации типа А значением имени а служит предмет из экс-
тенсионала — интерпретации типа А.
Константа всегда ассоциируется хотя бы с одним типом. Эта
связь указывается дугой семантической сети, помеченной символом
i (от английского instance-of — пример (чего-либо)). Эта дуга ве¬
дет от вершины, помеченной именем константы, к вершине, поме¬
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
77
ленной именем типа. Пример константы: 7 имеет тип ЧИСЛО,
7 имеет тип ПОЛОЖИТЕЛЬНОЕ ЧИСЛО, 7 имеет тип ЦЕЛОЕ
ЧИСЛО и т. п. (см. рис. 4.12).
Переменные представляют собой свободные и связанные пред¬
метные переменные. Являются интенсиональными объектами: они
интерпретируются как предметные переменные, принимающие про¬
извольные значения из экстенсионала — интерпретации типа.
Каждая переменная ассоциируется в точности с одним типом.
Эта связь указывается дугой семантической сети, помеченной
символом t. Дуга ведет от вершины, помеченной именем перемен¬
ной, к вершине, помеченной именем типа (см. рис. 4.13).
Определим понятие фрейма. Фреймы есть некоторые помечен¬
ные подграфы семантических сетей. Фреймы либо представляют
некоторые «куски» знания, которыми можно манипулировать как
целыми блоками, либо представляют некоторые структуры для оп¬
ределения составных (структурных) типов. Соответственно этому
фреймы делятся на функциональные и структурные. Фрейм явля¬
ется простым, если он не содержит в себе других фреймов.
Простой функциональный фрейм содержит единственное поня¬
тие, выражающее функцию или отношение («центральная» верши¬
на фрейма), а также содержит переменные или константы («пери¬
ферические» вершины фрейма). Из центральной вершины простого
функционального фрейма к его периферическим вершинам ведут
помеченные дуги. Одна дуга помечена буквой г (от английского
result — результат). Остальные дуги помечены символами а 1, а2, ...
..., ап. Центральная вершина помечена именем функции, а пери¬
ферические— именами переменных и констант. На рис. 4.14 по¬
казан простой функциональный фрейм.
( ЧИСЛО J {^ПОЛОЖИТЕЛЬНОЕ ЧИСЛО ) с ЦЕЛОЕ чисТпГ)
Рис. 4.12
(ЧЕЛОВЕК ) ( ЗАПЧАСТЬ ) (СПИСОК )
Рис. 4.13
78
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Заметим, что отношение также является функцией, результаты
которой представляют собой значения «истина» или «ложь»
(рис. 4.15).
Из данных типов мы можем образовывать новые более слож¬
ные типы. В семантических сетях можно предусмотреть различные
механизмы для описания составных типов.
Рассмотрим, например, тип D = А X В X С, называемый декар¬
товым произведением типов А, В и С. По определению экстенсио-
нал типа D состоит из всех упорядоченных троек (.х, у, z> из эле¬
ментов экстенсионалов А, В ж С. Тройку <х, у, z> будем описывать
ориентированным графом, как показано на рис. 4.16 (здесь каждая
дуга указывает на соседний справа элемент тройки). Тогда мы
можем описать тип D фреймом, показанным на рис. 4.17.
Фрейм, показанный на рис. 4.17, дает нам пример так называе¬
мого структурного фрейма. Структурные фреймы будем ограничи¬
вать пунктирными линиями.
В качестве другого примера составного типа рассмотрим тип
Ат = В, экстенсионал которого состоит из всех неупорядоченных
пар [х, у], составленных из элементов экстенсионала типа А. Струк¬
турный фрейм, описывающий тип В, показан на рис. 4.18.
Третий пример: тип В, состоящий из ([х, у], z>, где х, у, z
имеют тип А (см. рис. 4.19).
Фрейм F5 уже не является простым, так как содержит под-
фрейм F6. Фреймы F3, F4 (рис. 4.17 и 4.18) являются простыми
структурными фреймами. В общем случае простой структурный
фрейм рассматривается как произвольный ориентированный граф,
вершины которого помечены именами переменных или констант.
Дуги могут быть как помеченными, так и непомеченными. Метки
дуг не несут семантической информации: их функция чисто син¬
таксическая.
Структурные фреймы можно использовать для рекурсивного за¬
дания типов. Например, для задания списков, составленных из чи¬
сел, можно использовать структурный фрейм F-, (см. рис. 4.20).
Рассмотрим еще пример структурного фрейма, задающего тип В
всех конечных неупорядоченных наборов (включая повторения),
составленных из элементов данного типа А. В этом фрейме дуга,
ведущая от z к В кроме символа t несет символ 0, который обоз¬
начает, что при рекурсивном обращении к фрейму его грани¬
ца уничтожается. Благодаря этому, фрейм определяет не выра¬
жения вида [[а, [6, с]], d], а выражения [а, Ь, с, d] и т. п. (см.
рис. 4.21).
Показанный на рис. 4.22 структурный фрейм описывает тип А*
всех конечных слов (т. е. упорядоченных последовательностей) из
элементов типа А. Здесь действует правило: конечная вершина те¬
кущего фрейма присоединяется через дугу к начальной вершине
предыдущего по рекурсии фрейма (границы всех фреймов, кроме
первого в рекурсии, уничтожаются). (В случае произвольных гра-
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
79
( ЧИСЛО
К ( ИСТИННОСТНОЕ
ЗНАЧЕНИЕ
Рис. 4.15
Рис. 4.16
F3 I
| ©
1
I def
Г
-©
о -о •© 6 6 6
-J
Рис. 4.17
80
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
фов, заключенных во фрейм, можно предусмотреть различные об¬
щие способы соединения фреймов после уничтожения границ).
Семантические сети предназначены для представления знания
о проблемных окружениях (или «мирах»). Фактически мы имеем
в каждом конкретном случае дело с одним «действительным» ми¬
ром. Интерпретация понятий семантической сети, соответствующая
этому действительному миру, называется стандартной. Однако огра¬
ничиться одной только стандартной интерпретацией нельзя. При¬
чина этого главным образом в том, что мы заинтересованы в вы¬
ведении следствий из уже описанного знания: но логические след¬
ствия можно получать, предполагая альтернативные миры. Другая
t
причина в том, что действительный мир чаще всего нестатичен.
Следовательно, стандартная интерпретация изменчива. Третья при¬
чина в том, что некоторые понятия действительного мира являют¬
ся «размытыми» и один из способов представления такой «размы¬
тости» — это описание класса альтернативных интерпретаций, при
которых четкие понятия «аппроксимируют» «размытые» понятия.
Пусть / обозначает класс альтернативных интерпретаций, вклю¬
чающих также стандартную интерпретацию. Класс не выбирается
произвольно, но состоит из допустимых для данной семантической
сети интерпретаций. Можно выделить несколько условий допусти¬
мости интерпретации. Эти условия мы будем указывать по мере
введения новых конструкций в семантических сетях. Пока укажем
следующие условия.
Условие 1. Пусть (ре / — произвольная допустимая интер¬
претация. Пусть А9 — интерпретация понятия типа А, т. е. А4 —
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
81
некоторое множество — экстенсионал типа А. Тогда если A isa В,
то Аф — В\
Рассмотрим понятие интерпретации простого функционального
фрейма. Возьмем, например, фрейм F, показанный на рис. 4.23.
Понятие — функция В (центральная вершина фрейма F) интер¬
претируется как некоторая д-местная функция, заданная на эк-
стенсионалах — интерпретациях типов для аргументов и принимаю¬
щая значения из экстенсионала — интерпретации типа для резуль¬
тата.
Допустимые интерпретации должны быть согласованы на поня¬
тиях А1, А2, ..., Ар, В, С в следующем смысле.
Условие 2. Пусть q>e / — допустимая интерпретация. Тогда
для каждого простого функционального фрейма вида F при интер¬
претации ф В* есть функция А1Ф ХП2ФХ ... ХАр* -> Сф, т. е. эк-
стенсионалом понятия В служит
некоторое подмножество множе¬
ства А\*ХА2*Х ...ХАр*Х С* та- F
кое, что для любой упорядоченной
д-ки <щ, и2, . •., иРУ s Al*X А2* X
X ... X Ар* X С* существует един¬
ственный элемент v^C* такой,
что (д+1)-ка iUi, пг, ..., ир, v>
принадлежит этому подмножеству.
Допустимые интерпретации
также должны быть согласованы в
структурных фреймах. Это озна¬
чает, например, для структурного
фрейма F8 (см. рис. 4.21), что В
равно подмножеству всех конечных неупорядоченных наборов из
элементов множества А.
Введем теперь понятия подстановки и специализации. Рассмот¬
рим произвольный простой функциональный фрейм F. Пусть
х,, хг, ..., Хр, у — все переменные, входящие в F, а А1, А2, ..., Ар,
С — типы этих переменных (здесь х< — переменные, соответствую¬
щие аргументам фрейма F, а у — переменная, соответствующая ре¬
зультату) . Пусть В — центральная вершина F.
Элементарной подстановкой для фрейма F называется выраже¬
ние вида
o = {|f/:r<; г)/г/; Di/Ai\ 1 i р}, (4.1)
где |f, г] — либо переменные, либо константы, a Di, Ai — типы. При
этом должно выполняться следующее согласование по типам:
а) если |Дг)) — константа, то тип |,isa тип х{ (соответственно
тип г) isa тип у);
б) если £Дг]) — переменная, то тип |,- эквивалентен типу х{
(соответственно тип ц эквивалентен типу у);
в) Di isa Ai.
® В. Н. Вагин
82
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Подстановка, не содержащая переменных, называется констант¬
ной. Фрейм, не содержащий переменных, также называется кон¬
стантным.
Результат применения подстановки о к фрейму F будет обозна¬
чаться через oF. Таким образом, для любой константной элементар¬
ной подстановки о для произвольного фрейма F фрейм oF явля¬
ется константным.
Константный простой функциональный фрейм F0, показанный
на рис. 4.24, называется истинным в интерпретации ф, если
ЯФ(СТФ, С2Ф, ..., Cf) = <P.
Пусть о — элементарная константная подстановка для простого
функционального фрейма F. Истинный относительно интерпрета¬
ции ф константный фрейм oF будем
называть константным элементар-
с ) ным примером фрейма F. Подстанов^
ку о, приводящую к истинному кон¬
стантному фрейму oF, будем назы¬
вать специализацией.
Рассмотрим теперь подстановку
произвольного вида. Это есть выра¬
жение (4.1), где |« могут быть
константами, переменными или но¬
выми функциональными фреймами;
г| может быть константой или пере-
Рис. 4.24 менной. При этом в дополнение к
условиям а), б), в) (накладываемым
на |i, г| в элементарной подстановке) потребуем также выполнения
следующего условия: г) если есть фрейм, то £isa4i, где £—
тип результата для фрейма
Возьмем два фрейма РЮ и F11, показанные на рис. 4.25.
Обозначим через FW вариант фрейма 740, полученный из по¬
следнего подстановкой
{xl/x; zl/z}.
Тогда подстановка
о = {FiO/yi; Fl07y2; ПОЛОШИТ. ЧИСЛО/ЧИСЛО}
из фрейма F11 образует фрейм F12, который показан на рис. 4.26.
Функциональный фрейм F\2 дает пример составного функцио¬
нального фрейма. Фрейм F12 содержит в качестве подфреймов /ЧО,
FiO' и FI 1.
Рассмотрим еще один пример составного функционального фрей¬
ма, полученного из фреймов 740 и FI 1, а также из фрейма 743,
показанного на рис. 4.27.
Построим прежде фрейм FI4, применяя подстановку {Fil/x)
к фрейму 740. Полученный фрейм изображен на рис. 4.28.
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
( ЧИСЛО ~)
л
I
!\
V
isa
положит, число
D
Рес. 4.25
F12
f ПОЛОЖИТ. \
у ЧИСЛО J
( ЧИСЛО~У
Рис. 4.26
F7J
(меньше.
>
(г
тли. равно')
>
Vj
t /1
(истин. ЗНАЧ.}
Г
Рис. 4.27
84
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Затем к фрейму ^13 применяем подстановку
{F\2Jx-, FlA'Iy),
где F14'— вариант F14 (при подстановке ui/u; z2/z). Имеем F15
(см. рис. 4.29).
FU
Рис. 4.28
( ИСТИН. \
-ъ\ ЗНАЧ. )
►( ПОЛОЖИТ, число
Рис. 4.29
Как видно из рис. 4.29 изображение составного фрейма ^15
выглядит довольно запутанно. Можно однако ввести несколько бо¬
лее компактный способ изображения структуры подфреймов состав¬
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
85
ного фрейма. Этот способ также удобен для представления фрей¬
мов в ЭВМ.
В самом деле можно заметить, что произвольный простой функ¬
циональный фрейм однозначно определяется своей центральной
вершиной: все остальные вершины фрейма являются концами дуг,
исходящих из центральной вершины. В составном фрейме также
можно определить такую вершину а, которая удовлетворяет следу¬
ющим двум условиям:
1) из а исходит дуга, помеченная буквой г;
2) вершина, в которую эта дуга входит, не имеет других вхо¬
дящих вершин (например, центральной вершиной фрейма Е12
является СУММА, а центральной вершиной фрейма F14' — верши¬
на КВАДРАТ).
Исцользуя указанное обстоятельство, мы можем всю информа¬
цию о подфреймах составного фрейма сохранять, приписав имена
фреймов их центральным вершинам. Например, фрейм F15 при
введенном соглашении получит вид, показанный на рис. 4.30.
Во фрейме Fib сделаем подстановку ix/y 1; у/х 1; у/у 2). Тогда
мы получим новый фрейм ЕЮ, которых! изображен на рис. 4.31.
Для сравнения запишем семантическую сеть, показанную на
рис. 4.31, в обычной функциональной записи:
z = КВАДРАТ (х), z 1 = КВАДРАТ (у), ui = СУММА (х, у),
z2 = КВАДРАТ (и1), и = СУММА (z, zl),
v = МЕНЬШЕ. ИЛИ. РАВНО, (и, z2), ТИП (х) = ЧИСЛО,
ТИП (у) — ЧИСЛО, ТИП (и1) = ЧИСЛО, ТИП (z) = полошит,
число,
ТИП (zl) = ПОЛОЖИТ. ЧИСЛО, ТИП (z2) = полошит,
число,
ТИП(н) = ИСТИНН. ЗНАЧЕНИЕ, ТИП (и) = ЧИСЛО,
ЕЮ: z = КВАДРАТ (ж), ЕЮ': zl = КВАДРАТ (у),
Ell": ui = СУММА(х, у), ЕЦ': и = СУММА(г, zl),
Е12: ЕЮ & ЕЮ' & Ell', Е14': ЕЮ" & ЕИ",
Е13': v = МЕНЬШЕ. ИЛИ. РАВНО (в, z2),
Е15: Е13' & Е12 & Е14'.
Рассмотрим стандартную интерпретацию семантической сети
Е16, т. е. такую, при которой экстенсионал типа ЧИСЛО совпадает
с множеством всех вещественных чисел, экстенсионал типа ПОЛО¬
ШИТ. ЧИСЛО — с множеством положительных чисел, экстенсионал
типа ИСТИНН. ЗНАЧЕНИЕ — с множеством (истина, ложь),
КВАДРАТ интерпретируется как функция возведения в квадрат,
СУММА интерпретируется как функция сложения.
Очевидно, что в стандартной интерпретации ф константная под¬
становка {а\х\ Ъ\у; clz; cllzl; c2|z2; din; dllnl; e\v) является спе¬
циализацией фрейма ЕЮ тогда и только тогда, когда удовлетворя¬
ются все функциональные соотношения, выписанные на предыду-
86
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
( F15, F13МЕНЬШЕ. ИЛИ. РАВНО ) Q И СТИН. ЗНАЧ. )
га1
<а2
(F12,F1l'-CynhA ) \ ( F10". КВАДРАТ
Jr
’-2) ^ F№r,Fn -СУММА )
Рис. 4.30
( F1B, F13': МЕНЬШЕ. ИЛИ. РАВНО)
у)-^-^ИСТИН. ЗНАЛ)
(f12,F11''- СУММА ) (сю":квадрат") д >(ц?
' Тг
( F1 а ■■ КВАДРАТ)/ \( F10КВАДРАТ )
М число
i t
Рис. 4.31
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
87
щей странице, т. е. -
(аф)2 = сф,: 0Ф)2 = с?, сф + с? = сР, d? = аф + Ьф,:
с| = (йф)2, d4" ^ сф ■«=► еф == истина.
Эти соотношения не являются независимыми, так как для лю¬
бых чисел а, р имеет место неравенство а2 + р2 (а + р)2. Как раз
последнему утверждению соответствует следующее утверждение.
1. Всякая константная подстановка для фрейма i^l6, являющая¬
ся специализацией для подфреймов фрейма /^16, служит также спе¬
циализацией и самого фрейма F16.
Установление утверждений типа утверждения 1 важно для про¬
цессов автоматической дедукции, в частности, для извлечения от¬
ветов из семантической сети на предъявляемые вопросы.
Перейдем теперь к представлению кванторов на семантической
сети, состоящей из совокупности различных фреймов. В предыду¬
щем разделе в общих чертах говорилось о представлении кванто¬
ров общности и существования на сети. Продолжим это рас¬
смотрение.
Проблема квантификации семантической сети является трудной
и сложной проблемой, особенно для систем принятия решений, ис¬
пользующих механизмы понимания естественного языка. Не охва¬
тывая всей проблемы в целом, мы коснемся лишь некоторых ее
аспектов.
Прежде всего, квантификация будет нами применяться к ин¬
тенсиональным объектам, которые независимы от любой конкрет¬
ной интерпретации, приписываемой этим объектам в различное
время.
Кроме кванторов общности и существования мы рассмотрим
также и численные кванторы, являющиеся удобным средством вы¬
ражения для утверждений, связанных с описанием реальных при¬
ложений.
Введем обозначения:
х е X: х типа X;
[«] х^Х: ровно п элементов х из X, где п = 1, 2, 3, ...;
или п = все;
[?г}а; е X :по крайней мере п элементов х из X, где п = 1,2, 3,...;
{«] х^Х: самое большее п элементов х из X, где п = 1, 2, 3, ...
Пусть А (х) — ППФ в логике предикатов первого порядка с ра¬
венством, где х — свободная переменная в А, а Р — предикат, ко¬
торый удовлетворяется (т. е. истинен) всеми элементами из X и
ни одним элементом вне X.
Тогда имеем
(я е= X) А(х) = Р (х) &А(х);
([«] х]е= X) А (х) = Vx (Р (х) -*'Л (х));
([1} х е X) А (х) — "Зх (Р (х) & А (х))ч
88
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Для всех п ^ 1
([« +l}ieX)i(j:) = 3 у [Р (у) &А(у)& (И х <= X) (х 4= у & А (х))].
Интуитивный смысл квантора п+1: ([в + ШеХ)й(*) истин¬
но тогда и только тогда, когда в множестве X найдутся по мень¬
шей мере п + 1 элементов х таких, что имеет место А (х).
Аналогично для всех п > 1
({«] igI)^ (ж) = Эу (Р (у) & A(lJ) & П((К+ 1} я е= X) И (ж)),.
т. е. [{ге] я е Х)И (а;) истинно тогда и только тогда, когда существу¬
ет не более п элементов х из множества X таких, что имеет мес¬
то А (х).
Очевидно, что для всех п ^ 1
По аналогии с введением открытых и замкнутых формул логи¬
ки предикатов рассмотрим открытые и замкнутые фреймы. Фрейм
называется замкнутым, если он не содержит свободных перемен¬
ных, в противном случае он называется открытым. Тип свободной
переменной мы обозначали через t, которой была взвешена дуга,
ведущая от вершины, помеченной именем переменной, к вершине,
помеченной именем типа. Тип связанной переменной обозначим
через Q, где Q — один из кванторов (общности, существования или
численный) и им взвешена дуга, ведущая от вершины, помеченной
именем этой связанной переменной, к вершине, помеченной име¬
нем типа.
Например, на рис. 4.32 х — свободная переменная типа ПОСТАВ¬
ЩИК, а переменные у и z являются переменными типа ЗАПЧАСТЬ
и ПРЕДПРИЯТИЕ, связанные кванторами [5} и [все] соответственно.
Здесь на аргументных дугах стоят буквы а, о, d, обозначающие
семантические падежи:
а — агент — субъект, вызывающий действие;
([п] х е Х)А (#) = ([п}х ^ Х)А (х)& ({и] х ^ Х)А (я).
F
(ИСТИН. ЗНАЧ.')
Рис. 4.32
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
89
о — объект — реципиент действия;
d — назначение — место реципиента действия, которое он должен
иметь после совершения действия.
Пунктирная линия указывает зависимость кванторов. Сеть, со¬
ставленная из фрейма F вместе с вершинами ПОСТАВЩИК, ЗАП¬
ЧАСТЬ, ПРЕДПР. с соответствующими дугами, представляет пе¬
ременное высказывание с одной свободной переменной, которое в
линейной записи многосортной логики первого порядка может быть
записано так:
(* е ПОСТАВЩИК) ([5}у е ЗАПЧАСТЬ)
([все] z е= ПРЕДПРИЯТИЕ):
снабжать (а : х, о: у, d : z).
В естественном языке это соответствует высказыванию: «Постав¬
щики снабжают по меньшей мере пятью запчастями все предпри¬
ятия».
Это высказывание можно понять двояко: либо как то, что су¬
ществует некоторая совокупность, содержащая не менее пяти зап¬
частей, которая поставляется каждому предприятию, либо как то,
что для каждого предприятия есть своя совокупность, содержащая
не менее пяти запчастей, которая поставляется этому предприятию.
Второй смысл передается выражением:
(х е ПОСТАВЩИК) ([все] я е ПРЕДПРИЯТИЕ)
([5} у е ЗАПЧАСТЬ):
снабжать (а : х, о : у, d : z).
В этом случае во фрейме рис. 4.32 пунктирная стрелка будет на¬
правлена от вершины у к вершине ъ.
Открытые фреймы могут быть организованы в таксономию. По
определению для произвольных функциональных фреймов Fi и Fz
F1 isa F2 тогда и только тогда, когда любая специализация фрейма
Ft является также специализацией фрейма Fz, какова бы ни была
допустимая интерпретация ф. (Здесь предполагается, что специа¬
лизации содержат все переменные из Ft и F2.) Построение isa-ие¬
рархии функциональных фреймов дает возможность более эффек¬
тивной дедукции, в частности, позволяет более эффективно искать
фреймы с заданными свойствами.
Ясно, что если данный открытый фрейм Ft включается в другой
открытый фрейм Fz, т. е. FiisaF2, то утверждение, соответствующее
произвольному замыканию F2 логически следует из утверждения,
соответствующего замыканию Fi (обратное, конечно, неверно).
Отметим, что проблема логического следования замкнутых фрей¬
мов неразрешима алгоритмически, что проистекает из известной
теоремы Чёрча о неразрешимости логики предикатов первого по¬
рядка. Поэтому приходится удовлетворяться неполными процедура¬
ми, выясняющими Е, isa F2. Отсюда видна польза в таксономии от¬
90
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
крытых фреймов, так как благодаря ей мы решаем проблему ло¬
гического следования для некоторого подкласса фреймов.
Теперь выясним, как с помощью логических связок можно стро¬
ить новые фреймы. Прежде всего, будем рассматривать любую ло¬
гическую связку, т. е. пропозициональную функцию от двух или от
одной переменной как простой функциональный фрейм (см.
рис. 4.33).
Считаем, что при любой допустимой интерпретации семантиче¬
ской сети логические связки интерпретируются только стандартным
образом, т. е. связка НЕ как отрицание, связ¬
ка И как конъюнкция, связка ИЛИ как
дизъюнкция, ИМПЛ.— как импликация,
РАВНОЗН.— как эквивалентность. На
рис. 4.34 и 4.35 представлены логические
связки И и ИЛИ в качестве простых функ¬
циональных фреймов и их эквивалентные
преобразования.
Пример семантической сети, использую¬
щей логические связки, показан на рис. 4.36.
Конъюнкцию можно отдельно не выделять
во фреймы, как это видно из рис. 4.36.
На этом рисунке в семантической сети записана следующая ин¬
формация: «Теплоход „Орел“ перевез для предприятия в Одессе
1000 автопокрышек и 500 автомоторов».
Событие в этой фразе — это функция ПЕРЕВЕЗ. Это событие
однократно в том смысле, что его было бы неправильно разделять
на два, считая, что теплоход «Орел» перевез 1000 автопокрышек и
/тт
р\
{истин. ЗНАЧ
перевез 500 автомоторов, и конечно, неверно считать, что было
1500 отдельных перевозок запчастей. Таким образом, мы должны
считать, что перевозка содержит две партии запчастей: 1000 авто¬
покрышек (одна партия) и 500 автомоторов (другая партия). Ясно,
что партию запчастей можно рассматривать как подмножество эле¬
ментов экстенсионала типа ЗАПЧАСТЬ.
Заметим также, что в этой сети мы записали также предпола¬
гаемую информацию о том, что поставщик зафрахтовал теплоход
«Орел» для перевозки партий запасных частей. Так как эту ин-
4.3. ПРЕДСТАВЛЕНИЕ СС В ВИДЕ СОВОКУПНОСТИ ФРЕЙМОВ
91
ЛОЖЬ
А
М
(истин. ЗНА<1)
(ПОСТАВЩИК)
х)^1'а (зафрахтоваЙР)-^-*(истина)
( Орёл )
с
ИСТИН. ЗНАЧ.
о
( ТЕПЛОХОД ) ( ПЕРЕВЕЗ )-
аЗД/ \п2,а
(предприятие) ((место) ( (ЗАПЧАСТЬ)2)
Г ^/def
(jMecca ) К покрышки X И о торы)
zaFv
/
(город) (ЗАПЧАСТЬ yUL
(количество) (количество)
i
( 7ООО. ) ( Jflfl )
<*
КОЛИЧЕСТВ.
IЗНА ч)
Рис. 4.36
92
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
формацию мы предполагаем истинной, то дуга с отметкой г, иду¬
щая от ЗАФРАХТ., указывает на значение «истина». Однако дуга
с отметкой г, идущая от ПЕРЕВЕЗ, указывает на переменное (не¬
определенное) значение и, что говорит о том, что мы не предпола¬
гаем, что теплоход действительно перевез указанный груз. Если и
заменить на «истина», то сеть будет утверждать, что теплоход
«Орел» действительно перевез две партпи запасных частей: партию
автопокрышек и партию автомоторов в некоторое предприятие, рас¬
положенное в городе Одесса. Здесь также использовалась конструк¬
ция типа (ЗАПЧАСТЬ)2, обозначающая множество всех подмно¬
жеств типа ЗАПЧАСТЬ.
4.4. Переход от семантической сети
к реляционной схеме Кодда
Опишем простой алгоритм, который по семантической сети по¬
рождает набор отношений реляционной базы данных, соответствую¬
щий этой сети (Н. Руссопулос).
Для этого будем различать два основных типа отношений в се¬
ти: события (ситуации) и характеристики. Событие в самом общем
виде рассматривается как предикат с некоторым числом аргумен¬
тов, называемых ролями. Например, предикат «Снабжать» (х, у, z),
означающий «поставщик х снабжает запчастями у предприятие z»,
является примером такого события. Характеристики аналогичны
событиям, за исключением того, что аргументы предиката указы¬
вают на некоторую характеристику (свойство) события (ch) и его
значение (и). Например, предикат «Вес» (х, у), означающий «зап¬
часть х обладает весом г/», является примером отношения — харак¬
теристики.
Порожденные отношения в реляционной базе данных будем
классифицировать на три типа: понятия, события и характеристи¬
ки. Напомним, что понятиями являются начальные понятия (про¬
стые типы), константы и переменные (см. 4.3). Отношения, соот¬
ветствующие функциям, не генерируются в реляционной схеме.
Понятия и отношения, примеры которых хранятся в реляционной
базе данных, будем отмечать на сети штриховкой, как это показано
на рис. 4.37.
Понятие является унарным отношением и ему соответствует
столбец таблицы, строки которой заполнены примерами этого по¬
нятия. Например, понятие ЗАПЧАСТЬ, представленное на рис. 4.37,
будет отображаться в реляционной схеме отношением 7?1 на
рис. 4.38, где в первой строке указано, что Ri является отношением
понятия, во второй — имя понятия, а третья строка содержит имя
атрибута отношения Д1. Порожденное отношение 7М называется
реализованным понятием, примеры которого хранятся в соответ¬
ствующих отношениях понятия.
4.4. ПЕРЕХОД К РЕЛЯЦИОННОЙ СХЕМЕ КОДДА
93
Событие соответствует некоторому отношению на сети, которое
отображается в реляционной схеме некоторой таблицей. Например,
событие «снабжать» (рис. 4.37) будет отображаться таблицей R2,
показанной на рис. 4.39. В первой строке таблицы содержатся
роли атрибутов отношения R2, во второй — области определения
ПРЕДПРИЯ ТИЕ) ( КОЛИЧЕСТВ. ЗНА Ч. )
Рис. 4.37
R1
Понятие
ЗАПЧАСТЬ
атрибутов, а в третьей строке находятся имена атрибутов отноше¬
ния R2. Порожденные события связаны со своими соответствующи¬
ми событиями на сети, называемыми реализованными событиями.
Аналогично порождаются и отношения характеристики. Напри¬
мер, характеристика «количество» на рис. 4.37 будет отображаться
таблицей ДЗ, показанной на рис. 4.40.
Таким образом, алгоритм перехода от семантиче¬
ской сети к реляционной схеме заключается в про¬
стой трансляции основных отношений.
Иногда желательно для каждого типа отношения
идентифицировать ключи, играющие важную роль
при нахождении данных в базе. Не останавли¬
ваясь на этом вопросе подробно, отметим, что иден¬
тификация ключа на сети заключается в проверке
некоторых логических условий, накладываемых на событие или
характеристику и нахождении подмножества атрибутов, соответст¬
вующих этим отношениям.
Так, для простого фрейма F атрибуты отношения R, соответ¬
ствующие свободным переменным F, включаются в ключ- В ключ
также включаются и атрибуты, соответствующие связанным пере¬
менным, правда, в зависимости от типа квантора, которым эта пе¬
ременная связана. Например, для отношения «Снабжать» (см.
рис. 4.37) ключом будет {х, у, ъ) или {ПОСТАВЩИК, ЗАПЧАСТЬ,
ПРЕДПРИЯТИЕ).
Рис. 4.38
94
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Что касается составного фрейма, то ключ находится сначала
для простого фрейма, стоящего на самой нижней ступени isa-
иерархии.
В целом, порожденная реляционная схема должна, вообще го¬
воря, использоваться вместе с той семантической сетью, из которой
А ген/77
Объект
Назначение
ПОСТАВЩИК
ЗАПЧАСТЬ
ПРЕДПРИЯТИЕ
X
У
1
Понятие
Хара кт ер истина
ЗАПЧАСТЬ
КОЛИЧЕСТВ.ЗНАЧ.
У
W
Рис. 4.39 Рис. 4.40
она была порождена. Это вызвано тем, что реляционная схема име¬
ет ограниченную выразительную силу. Так, связи между отноше¬
ниями (за исключением тех, которые выразимы через понятие
ключа) не могут быть представлены посредством реляционной
схемы.
4.5. Операторы семантической сети
Будем различать два класса операторов: операторы первого
класса действуют над семантическими сетями (т. е. над интенсио¬
нальным знанием), операторы второго класса действуют над отно¬
шениями реляционной схемы, порожденной сетями (т. е. над
экстенсиональным знанием). В соответствии с этим делением бу¬
дем говорить об интенсиональной алгебре и экстенсиональной ал¬
гебре (Н. Руссопулос).
Пользя от такого разделения заключается в том, что резуль¬
тат каждого оператора первого класса может интерпретироваться
относительно всех знаний, имеющихся в системе принятия реше¬
ний, в то время как некоторые абстрактные математические опе¬
рации, примененные к экстенсиональным знаниям, совсем его не
учитывают и поэтому во многих случаях становятся бессмыслен¬
ными.
В интенсиональной алгебре рассматриваются следующие опера¬
торы: отрицания, конъюнкции (пересечения понятий), дизъюнк¬
ции (объединение понятий), разности понятий, квантификации
над фреймами. Перейдем к определению этих операторов.
Отрицание. Рассмотрим фрейм F и его отрицание F' (см.
рис. 4.41). В естественном языке это соответствует высказыванию:
F: Поставщики снабжают по меньшей мере тремя запчастями
предприятие «Калибр»;
F': Поставщики не снабжают по меньшей мере тремя запчастя¬
ми предприятие «Калибр».
Можно представить значение фрейма F' с помощью другого
фрейма, чей интенсионал IF"' = IF" & ] IF где IF" является ин-
(в НА ЧЕНИЕ. МЕСТОПОЛОЖЕНИЯ) ( ПОСТАВЩИК) ( ЗАПЧАСТЬ )
Рис. 4.42
96
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
тенсионалом фрейма F", полученного из F путем замены связан¬
ной переменной из F свободной (зто следует из понятия интен-
сионала).
Таким образом, оператор отрицания НЕ переводит сеть, состоя¬
щую из фрейма F и вершин ПОСТАВЩИК, ПРЕДПРИЯТИЕ и
ЗАПЧАСТЬ (вместе с подходящими к ним дугами), в полную
сеть рис. 4.41. Дуга с меткой 4isa обозначает отрицание вклю¬
чения.
Пересечение понятий. Факт, что понятие С определяется фрей¬
мом F, будем обозначать через CF или CF [ж], если нужно выде¬
лить переменную х типа С.
Интуитивно очевидно, что пересечение двух понятий есть но¬
вое понятие, удовлетворяющее определению двух исходных поня¬
тий, т. е. является конъюнкцией двух понятий.
Рассмотрим пример: «Поставщики, расположенные в Горьком,
снабжают автошинами все предприятия» (см. рис. 4.42).
Здесь с одной стороны имеем поставщиков, расположенных в
Горьком, и поставщиков, с другой стороны, снабжающих шинами
все предприятия, т. е.
ПОСТАВЩИК 5 = & (ПОСТАВЩИК 3, ПОСТАВЩИК 4).
Таким образом, пересечение двух понятий С1П[ж] и C2F2[y],
для которых (С 1isa С2) & (С2 \] isa Cl) является ^-понятием,
обладающим следующими свойствами:
а) свободная переменная ъ является переменной понятия С,
полученного пересечением понятий С1 и С2 (см. пример 4.42),
заменяет переменные х и у в С1 и С2 соответственно и является
общей как для C1F1, так и для C2F2-
б) в isa-иерархии понятие С находится ниже понятий С1 и С2
(см. пример 4.42) и выше любого другого понятия, находящегося
ниже Ci и С2;
в) интенсионал фрейма F3 есть IF3 = IF1 & IF2, где IF1
и IF2 являются интенсионалами фреймов F1 и F2 соответственно.
И, наконец, пересечение двух понятий ClFl[;r] и C2F2 [г/] в слу¬
чае С2 isaCl есть С2.
Объединение понятий. Интуитивно объединением двух понятий
является новое понятие, удовлетворяющее определению одного или
двух понятий, т. е. является дизъюнкцией этих понятий.
Рассмотрим пример: «Запасные части обладают или желтым
цветом, или весом, или и тем и другим вместе» (см. рис. 4.43).
Здесь ЗАПЧАСЬ 3 = V (ЗАПЧАСТЬ 1, ЗАПЧАСТЬ 2), т. е.
является объединением ЗАПЧАСТЬ 1 и ЗАПЧАСТЬ 2 и представ¬
ляет собой множество запасных частей, которые обладают или
желтым цветом или весом, или и цветом и весом вместе.
Таким образом, объединение двух понятий C1F1M и C2F2 [у],
для которых {Ci П isa С2) & {С2 isa Cl), есть V-понятие со сле¬
дующими свойствами:
4.5. ОПЕРАТОРЫ СЕМАНТИЧЕСКОЙ СЕТИ
97
а) свободная переменная z является переменной понятия С,
полученного объединением понятий С1 и С2 (см. пример 4.43), за¬
меняет переменные х и у в С1 и С2 соответственно и является об¬
щей, как для С1F1, так и для C2F2;
б) в isa-иерархии понятие С находится выше понятий С1 и С2
(см. пример 4.43) и ниже любого другого понятия, находящегося
выше С\ и С2\
в) интенсионал фрейма F3 есть IF3 = IF1VIF2, где IF1 и IF2
являются интенсионаламп фреймов F1 и F2 соответственно.
Для случая С2 isa Cl объединение двух понятий C1F1H и
C2F2 [г/] есть С1.
Разность понятий. Интуитивно разность двух понятий есть новое
понятие, удовлетворяющее определению первого понятия, но не вто-
гС
F3
(Та
ПЧАСТЬ
J
isa
isa
ИЛИ
ЗАПЧАСТЬ
rief
£>
желтый
сЬ
ЗАПЧАСТЬ
F1
def
Ch
Q Вес J
ISQ
^ ISO
(на ЧЕНИЕ ЦВЕТА) ( ЗНА ЧЕНИЕ НЕС А К ЗА ПЧАСТЬ F)
[1] \ / [ясе]
■tj ( жн/ипый ^
h /V
(ТТТ\
Рис. 4.43
рого, т. е. разность является по существу конъюнкцией двух поня¬
тий, второй член которой берется с отрицанием.
Таким образом, разность двух понятий ClFi[F| и C2F2[p] есть
&*-понятие со следующими свойствами:
а) C2F2[p] берется с отрицанием;
б) свободная переменная z является переменной понятия С, по¬
лученного разностью понятий Cl п С2, заменяет переменные хну
7 В. II. Вагин
98
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
в С1 и С2 соответственно и является общей как для C1F1, так и
для C2F2;
в) в isa-иерархии понятие С находится ниже понятия С1 и свя¬
зано с С2 посредством ребра, взвешенного ^ isa и направленного
от С к С2;
г) интенсионал фрейма F3 есть IF3 = IF 1 & <_Т] IF2, где IF1 и
IF2 являются интенсионалами фреймов F1 и F2 соответственно.
Выделение понятия. Эта операция позволяет определять подпо¬
нятие путем указания дополнительного свойства примеров понятия.
def
( ЗАПЧАСТЬ
'li,SQ
[запчасть^ 4 Xisa
/t
(знач. местопол.)
ISQ
('SC
(снабжать)-
( калибр)
,=тР=
[предприятие)
F3
( Гррький )
сЬ
|Ч
[местоппложн и ив)
Рпс. 4.44
Точнее, оператор выделения в качестве одного аргумента получает
понятие Cl, а второго аргумента — фрейм F, называемый выделяю¬
щим фреймом, в котором имеется одна свободная переменная, при¬
надлежащая хотя бы одному фрейму без отрицания во фрейме F.
Тогда из этой переменной проводится дуга с меткой t в опреде¬
ляемое понятие, а из этого понятия к фрейму F проводится дуга с
меткой def.
Например: «Поставщики, расположенные в Горьком, снабжают
запчастями предприятие „Калибр11» (см. рис. 4.44). Здесь выделяю¬
4.5. ОПЕРАТОРЫ СЕМАНТИЧЕСКОЙ СЕТИ
99
щим фреймом является фрейм F3 и ЗАПЧАСТЬ 1 = ВЫДЕЛЕНИЕ
(ЗАПЧАСТЬ, F3), т. е. результатом операции является понятие
ЗАПЧАСТЬ 1, определяемое с помощью F3.
Квантификация. Эта операция заключается в присоединении
кванторов и некоторых дуг включения, о чем уже говорилось ранее.
Теперь рассмотрим основные понятия экстенсиональной алгебры,
являющейся модификацией реляционной алгебры Кодда.
Пусть R — какое-либо отношение и А — атрибут на R. Тогда
для произвольного г е R через г. А обозначается A-компонента на¬
бора г. Если А — список атрибутов: А=(А1, А 2, ..., Ак), то че¬
рез г. А обозначается список (г. А1, г. А2, ..., г.Ак).
ПОНЯТИЕ
R2
ПОНЯТИЕ
3 АПЧАСТЫ
ЗАПЧАСТЬ 2
X
У
Р2
р2
р5
рЗ
рЗ
/74
РБ _
Рис. 4.45
ПОНЯТИЕ
RU
ПОНЯТИЕ
R5
ПОНЯТИЕ
ЗАПЧАСТЬ2
3 АП ЧАСТЫ
ЗАПЧАСТЬ 2
У
X
У
Р2
рЗ
Р1
Р2
рз
рУ
р5
рВ
Р1.
pk
а
с
6
Рис. 4.4G
Пусть N = (N1, N2, ..., Nn) — список всех атрибутов отношения
R, а В — подсписок (длины к < п) списка N. Тогда г. Д В обознача¬
ет список длины п — к, совпадающий с г. Е, где Е — дополнитель¬
ный к В список в N, т. е. список, полученный вычеркиванием из
N атрибутов В.
Проекция отношения R на список атрибутов А определяется
как рг. A# = (г. А: гей},
Пусть R и S — произвольные отношения и А =(А 1, А2, ..Ак),
В —(В 1, В2, ..., Вк) списки атрибутов R н S соответственно. Пусть
Э обозначает одно пз отношений =, Ф, <, >, 3=.
7*
100
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
( СЛУЖАЩИЙ')
( ЗАРПЛАТА
F1
С
ОТЛИЧИЕ
Г руководить J
аг52 г
( зарабатывать^
Рис. 4.47
С СЛУЖАЩИЙ)
( ЗАРПЛАТА )
( зарабатывать)
[1]
arg1
-С.БОЛЬШЕ чей)
/агд2
С ЗОООр') (ИСТИНА)
ИСТИН. ЗНАЧ.
Рис. 4.48
Тогда соединение (точнее Q-соединение) R на Л с 5 на В опре¬
деляется как: i? * S (405) = {(г, s): г е -й & s е S & (г. Ads. В)}t
причем r.AQs.B истинно тогда и только тогда, когда истинно
(г. AiQs. Bl) & {г. A2&S. В2) & ... & (г. AkQs. Bk),
Эквисоединение R на А с S на В определяется как
R @ 5(4 = В)= {(г, s.^B): re=R&se=S&(r.A = s. В)}.
Конкатенация отношений R и S обозначается через
R® S: R®S = {(r, s): rezR&sez S).
4.5. ОПЕРАТОРЫ СЕМАНТИЧЕСКОЙ СЕТИ
101
Дополнение отношения R, определенного на Dl, D2, ..Dn,
есть отношение R' = {r: re(D1 XD2 X ... XDn) &_r<£R).
Операции пересечения, объединения и разности отношений по¬
нятия являются обычными теоретико-множественными операция¬
ми на отношениях. Например, на рис. 4.45 представлены два от¬
ношения ЗАПЧАСТЬ 1 и ЗАПЧАСТЬ 2. Тогда их пересечение,
объединение и разность показаны на рис. 4.46а, 4.46Ь и 4.46с со¬
ответственно.
Таблица 4.1
агент
объект
R2
агент
объект
СЛУЖАЩИЙ
СЛУЖАЩИЙ
СЛУЖАЩИЙ
ЗАРПЛАТА
ж1
х2
г/1
г/2
еЗ
е4
«2
2900
е2
еэ
еЗ
2200
е4
еб
е4
3100
е4
el
е5
2500
е4
е8
еб
3200
el
2300
eS
2400
СМ
агент
объект
СЛУЖАЩИЙ
СЛУЖАЩИЙ
xl
zl
е2
еЪ
е4
el
е4
е8
Таблица 4.2
агент
объект
СЛУЖАЩИЙ
ЗАРПЛАТА
zl
Z2
е5
2500
el
2300
е8
2400
С помощью операций проекции и соединения можно «промоде¬
лировать» экстенсионально введенные ранее операции интенсио¬
нальной алгебры. Рассмотрим, например, операцию конъюнкции
двух фреймов.
Пусть F1 и F2 — два простых фрейма. Пусть Н1 и R2 — их
экстенсионалы со списками атрибутов XI и Х2 соответственно.
При составлении конъюнкции фреймов F1 и F2 производится
отождествление некоторых переменных в F1 и F2. Пусть У1 и
У2— списки атрибутов: У1еХ1, У2еХ2, соответствующие этим
отождествленным переменным. Обозначим также через CF1 и CF2
те компоненты составного фрейма — конъюнкции, которые соответ¬
ствуют исходным фреймам F1 и F2. Пусть CR1 и CR2 — экстен-
102
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
сяоналы фреймов CF1 и CF2. Тогда для конъюнкции F1&F2
CR1 = рг. 71 (Д10 R2 (71 = 72))*
CR2 = рг. Y2{Ri ©Д2(71=72)).
Аналогичные формулы справедливы и для дизъюнкции фреймов,
а именно CR1 = рг. Y1 (Ri ® R2), CR2 = рг. 72 (Д1 ® R2) .
Для разности фреймов Fl\F2
CR1 = рг. 71 (Д1 * R2 (71 Ф 72)), CR2 = R2.
Рассмотрим следующее утверждение: «Служащие руководят
теми служащими, чья зарплата не больше чем 3000 руб. в год».
С этим утверждением мы связываем фреймы Fi, F2 и F3, показан¬
ные на рис. 4.47. Ясно, что фреймы Fi, F2 и F3 утверждают со¬
ответственно: «21 руководит х2 и х1 отличен от 22», «для всякого
служащего у 1 существует единственная зарплата, которую он за¬
рабатывает», «зарплата zi ’больше’ зарплаты z2» (здесь одиночные
кавычки обозпачают переменность предиката «больше чем»: w есть
истинностное значение этого предиката).
Таким образом, вышеупомянутое утверждение может быть пред¬
ставлено составным фреймом Fi&(F2\F3) (с соответствующей
идентификацией переменных). На рис. 4.48 показаны фреймы —
компоненты этого составного фрейма.
Обозначим F2\F3 через FA. Пусть заданы экстенсионалы фрей¬
мов F1 п F2 (см. табл. 4.1). Экстенсионал фрейма F3 задавать
4.5. ОПЕРАТОРЫ СЕМАНТИЧЕСКОЙ СЕТИ
103
не нужно, так как он неявно определяется процедурой вычитания,
«привязанной» к функции БОЛЬШЕ. Ri, R2 и CR1, CR4 обозна¬
чают в соответствии с ранее введенным соглашением экстенсио-
налы фреймов Fi, F2 и компоненты составного фрейма. Зкстенсио-
налы CR1 и CR4 вычисляются па основании формул для конъюнк¬
ции и разности. Они показаны в табл. 4.2.
Можно также рассматривать операции квантификации в интен¬
сиональном и экстенсиональном вариантах. Например, квантифи¬
кация Q в интенсиональном смысле (х е ПОСТАВЩИК) (Калибр е
Таблица 4.3
агент
объект
место назначения
ПОСТАВЩИК
ЗАПЧАСТЬ
ПРЕДПРИЯТИЕ
X
V
z
si
pi
Борец
Л
p2
Борец
s3
p3
Борец
s3
p3
Калибр
s3
pA
Калибр
s4
p2
Калибр
s4
p3
Калибр
s4
pA
Калибр
s4
pb
Калибр
s4
p6
Калибр
s4
P^
Калибр
СП”
агент
объект
место назначения
ПОСТАВЩИК
ЗАПЧАСТЬ
ПРЕДПРИЯТИЕ
ж
V
Z
s3
рЗ
Калибр
s3
рА
Калибр
е ПРЕДПРИЯТИЕ) ({5] у е ЗАПЧАСТЬ): снабжать (а: ж, о: у,
d: Калибр), соответствующая утверждению: «Поставщики снабжа¬
ют самое большее пятью запчастями предприятие „Калибр"», при¬
мененная к открытому фрейму F' (см. рис. 4.49), дает в резуль¬
тате сеть, изображенную на рис. 4.49.
Предположим, что F' имеет экстенсионал R', показанный в
табл. 4.3. Тогда операция экстенсиональной квантификации дает
экстенсионал CR", также показанный в той же табл. 4.3.
104
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
4.6. Организация семантических сетей
в рамках процедурного подхода
Здесь мы опишем подход к представлению знаний, который
увязывает традиционные понятия семантических сетей в рамках
процедурного подхода. Большой вклад в развитие процедурного
подхода к семантическим сетям внесли Дж. Мплопулос и Г. Левек,
чьи идеи мы и изложим в этом разделе.
Имеются две возможности для построения теории семантических
сетей. Одна возможность — формулировать семантику сетей в тер¬
минах классической логики. Хотя этот подход нмеет много преиму¬
ществ и много сторонников, он имеет две теневые стороны. Во-пер¬
вых, спецификация понятий, свойства которых меняются во вре¬
мени, становится громоздкой и запутанной. Эта проблема сущест¬
венна, так как обычно семантическая сеть является неполной мо¬
делью развивающегося мира. Такая модель должна быть готова
принимать новую информацию, определять ее допустимость и
модифицировать соответствующим образом свою структуру. Во-вто¬
рых, семантика классической логики не отражает моментов, свя¬
занных с использованием представления. Например, нет различий
между правилом вывода, которое может быть использовано, и пра¬
вилом вывода, которое следует использовать.
Другая возможность — формулировать семантику сетей с по¬
мощью программ. В этом случае семантика включает понятие по¬
ведения относительно некоторых операций. Это так называемая
процедурная семантика.
Всякое представление должно взаимодействовать на некотором
уровне с программами. В системах, основанных на понятии семан¬
тической сети, где сети обычно трактуются как структуры данных,
обычно строится интерпретатор для
модификации этой структуры и из¬
влечения ответов на запросы. При¬
чем такой интерпретатор не сущест¬
вует изолированно от сети, а распре¬
делен по всей сети в том смысле,
что операторы, осуществляющие
интерпретацию, непосредственно
«привязаны» к каждой вершине —
понятию сети и действуют локально
(т. е. в окрестности этой вершины).
Будем использовать термины класс и (бинарное) отношение для
представления, соответственно, типа понятия и типа отношения.
Частные понятия представляются примерами классов, а отношения
между понятиями формулируются как утверждения. Например,
рассмотрим сеть на рис. 4.50, утверждающую, что возраст студента
Джона равен 21. Здесь идентификаторы PEBSON, NUMBEB,
STUDENT обозначают классы, a AGE — бинарное отношение (как
domalr
С~
I
'EPSON
-AGE -
range
NUMBER
1
• 21
' i UUENT-
Рис. 4.50
4.0. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
105
правило, многоместные отношения использовать не будем). Бинар¬
ное отношение понимается как отображение, вообще говоря много¬
значное, одного класса в другой. Дуга с идентификатором domain ука¬
зывает на область определения отображения, а дуга с идентификато¬
ром range — на область значений. Вообще говоря, утверждения свя¬
заны только с бинарными отношениями, причем каждому утвержде¬
нию соответствует вершина сети, обозначенная точкой. (Оче¬
видно, что утверждение представляет константный факт.) Дуги
21 -*■ NUMBER, john PERSON и John STUDENT представляют
специализации-. 21 есть пример класса NUMBER, john есть при¬
мер класса PERSON и класса STUDENT- Заметим, что специали¬
зации john PERSON и 21 NUMBER можно было бы не ука¬
зывать, так как указания PERSON —■ AGE —NUMBER
уже предполагают, что в каждом утверждении, связанном с отно¬
шением AGE, один нз пндивидумов, участвующих в утверждении,
всегда является примером класса PERSON, а второй — класса
NUMBER, причем благодаря стрелке, идущей от точки к иденти¬
фикатору, мы однозначно определяем этот второй индивид. Нако¬
нец, двойная стрелка STUDENT =*- PERSON обозначает, что класс
STUDENT является подклассом класса PERSON.
Имеются четыре основные операции как на отношениях, так
и на классах.
Операции на отношениях:
1) утверждать, что данное отношение имеет место между дву¬
мя объектами;
2) утверждать, что данное отношение уже далее не имеет ме¬
сто между двумя объектами;
3) выписать все объекты, связанные с другим объектом по дан¬
ному отношению;
4) проверить, имеет ли место данное отношение между двумя
объектами.
Операции на классах:
1) создать пример класса (или утверждать, что соответствую¬
щий объект есть пример класса);
2) аннулировать пример класса (илп утверждать, что сущест¬
вующий объект более не является примером класса) ;
3) выписать все примеры класса;
4) проверить, является ли объект примером класса.
Таким образом, подытоживая сказанное, операциями являются:
а) добавить пример: add;
б) удалить пример: remove;
в) выдать примеры: fetch;
г) проверить: test.
Вызов операции add (ind, CL) приводит к присоединению при¬
мера к сети. Вызов add (ind), inch) приводит к присоединению ут¬
верждения к сети (ведь утверждение можно рассматривать как
106
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
пример отношения). Аналогично выполняются вызовы remove, при¬
водя к удалению примеров.
Вызов операции fetch (CL) приводит к выдаче всех приме¬
ров класса CL, записанных в сети. Вызов fetch (REL) приводит к
выдаче всех утверждений, связанных в сети с отношением
REL.
Вызов test (ind, CL) имеет результатом сообщения: ДА, НЕТ,
причем ДА выдается тогда и только тогда, когда ind является при¬
мером класса CL. При вызове test (indi, ind2, REL) выдается со¬
общение ДА тогда и только тогда, когда indi и ind2 связаны в сети
отношением REL.
Заметим, что операция test, конечно, может быть получена из опе¬
рации fetch. Однако исключать операцию test нецелесообразно, так
как процедура вычисления значений test может быть в ряде слу¬
чаев значительно проще (по вычислительным затратам) по сравне¬
нию с процедурой fetch.
На рис. 4.51 показан новый пример семантической сети в язы¬
ке Милопулоса — Левека. В этом примере заданы отношения
PROFIT (доход), COST (стоимость) и PRICE (цена). В обычном
смысле доход от продукта (в нашем
—гапдЕ , number случае bread (хлеб)), является раз-
I range \ \ranffe ностью между ценой продукта и
profit cost \ его стоимостью. Таким образом, к
‘‘ price вершине PROFIT мы можем «при-
/
/
/
Is-
\ PRODUCT 7? 7 вязать» процедуру minus, находя-
\ | / щую разность между ценой и стои-
ц ^ — I bread ^—*-20 мостью продукта. Точнее, если вы-
J полнены вызовы add (ind, a, COST)
Рис. 4.51 и add (ind, b, PRICE), то автома¬
тически вызывается процедура add
(ind, minus(b, a), PROFIT), результатом которой будет присоедине¬
ние утверждения ind ■ j b — а к вершине PROFIT. Например, к се¬
ти рис. 4.51, рассматриваемой без утверждения, обведенного пунк¬
тирной линией, присоединяется это утверждение. Аналогично вы¬
полнение вызова remove (bread, 20, PRICE) не только приводит
к удалению утверждения bread | ^ 20, но и к вызову remove
PRICE
(bread, 5, PROFIT).
Операция fetch также должна включать процедуру minus. Ре¬
зультатом выполнения вызова fetch (PROFIT) будет список при¬
меров понятия PROFIT, записанных в сети, дополненный приме¬
рами вида (ind, а), где ind и число а таковы, что существуют
числа х ж у такие, что (ind, ж)—пример PRICE, (ind, у) — пример
COST и а = х — у.
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
107
Операция test в вершине PROFIT имеет следующую связь
с операциями test в вершинах COST и PRICE: test (ind, а,
PROFIT) = «ДА» тогда и только тогда, когда существуют числа х
и у такие, что test (ind, х, PRICE) = «ДА», test (ind, у, COST) =
= «ДА» и а = х — у.
Из этого примера видно, что процедурные связи между поня¬
тиями индуцируют связи между операциями add, remove, fetch и
test. В этом смысле можно говорить об изменении «поведения»
примеров классов или отношений под действием этих операций,
т. е. семантика класса или отношения есть их поведение относи¬
тельно операций add, remove, fetch и test.
Таким образом мы имеем:
объект — это концептуальная единица, на которую можно
сослаться как на целое;
класс — это совокупность объектов, обладающих общими свойст¬
вами; эти объекты называются примерами класса и сами могут
быть классами, как это будет указано ниже;
отношение — это отображение одного класса в другой (обла¬
сти определения, domain — в область значений, range);
программа — это класс, примеры которого называются процес¬
сами и соответствуют программным активациям, как будет сказа¬
но ниже; четыре операции—add, remove, fetch, test, которые опре¬
деляются программами, привязанными к каждому классу или от¬
ношению.
До спх пор мы рассматривали случай, когда каждый объект
есть либо класс (отиошеш1е> программа), либо индивидуальный
пример класса (отношения, программы). Теперь возьмем более об¬
щую интерпретацию, в которой каждый объект есть пример неко¬
торого класса.
Рассмотрим, например, ситуацию, в которой известно, что сред¬
ний возраст студента равен 23. Ясно, что свойство «средний воз¬
раст» (AVERAGE — AGE) не является свойством отдельного чело¬
века, а является свойством совокупности людей. Тогда на сети,
показанной на рис. 4.52, будет введен «метакласс», элементами ко¬
торого являются классы индивидов. Этот «метакласс» обозначен
108
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
через PERSON CLASS. Метаклассы удобно считать классами, но,
конечно, необходимо вводить ранги, считая, что индивид имеет
ранг 0, класс индивидов — ранг 1, класс классов индивидов —
ранг 2 и т. д.
Отношение специализации может, очевидно, иметь место между
классом ранга к и классом ранга к +1. Что касается отношения
включения, то оно имеет место только между классами одного ран¬
га. (Если оба класса имеют ранг 0, т. е. являются индивидами, то
отношение включения совпадает с отношением равенства.) На се¬
ти рис. 4.52 класс STUDENT является примером класса PERSON
GLASS, а отношение AVERAGE — AGE связывает класс PERSON
GLASS ранга 2 с классом NUMBER ранга 1. Таким образом, пара
(STUDENT, 23) является примером отношения AVERAGE —AGE.
Как подчеркивают Милопулос и Левек, желательно определен¬
ная организация семантической сети, позволяющая неявно описы¬
вать «стереотипные» отношения между определениями. Организа¬
ция сети рассматривается ими как механизм абстракции, т. е. как
средство «подавления» деталей.
Имеем два механизма абстракции, которые соответствуют обоб¬
щению/ специализации и агрегированию/декомпозиции. В первом
случае подавляются детали, касающиеся сходства между объекта¬
ми; во втором — детали, касающиеся отношений между объектами.
Первый механизм абстракции (наиболее часто используемый в
семантических сетях) — это организация, проистекающая от раз¬
биения классов на подклассы, что порождает таксономию классов,
известную как isa-иерархия. Это определяет частичный порядок
между классами и каждый пример подкласса есть (если другое не
оговаривается) пример надкласса.
Помимо концептуальной пользы от таксономии классов, глав¬
ной целью этой категоризации является то, что называется насле¬
дованием свойств, о чем пойдет речь ниже. В терминах четырех
операций на классах и отношениях isa-иерархия допускает опера¬
ции добавления и удаления не только в непосредственном классе
или отношении, но и во всех более общих классах и отношениях.
Второй механизм абстракции включает объединение в одну
функциональную единицу группы взаимосвязанных объектов. Этот
механизм поясняется следующим примером.
Пусть GRADE обозначает класс всех степеней (для каждого
студента в каждом курсе). Отдельный пример, скажем, grade 21
может означать, что Джон в курсе ml 235 имеет степень 76
(т. е. количество баллов, которые имеет Джон по математической
логике, равно 76). Таким образом, сеть рис. 4.53 представляет
этот факт.
В этой сети PUPIL (учащийся) обозначает отношение между
ртепенью и студентом, MARK (балл)—отношение между степенью
и числом и LESSON (курс) — отношение между степенью и назва¬
нием курса.
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
109
Однако отношение PUPIL имеет следующую особенность: сте¬
пень существует для конкретного студента, при этом, пока в сети
существует пример grade 21, с ним ассоциируется тот же студент.
Если бы grade 21 оказался ассоциированным с другим студентом,
то смысл grade 21 изменился бы — этот пример не представлял
бы степень Джона в курсе ml 235. Следуя В. Вудсу и Р. Брахма¬
ну можно говорить о свойстве типа PUPIL как о структурном
свойстве. Свойство LESSON также является структурным, чего
нельзя сказать о свойстве MARK. В самом деле, отметка Джона
по курсу ml 235 может измениться (при неизменном grade 21),
О свойствах типа MARK можно говорить как об утвердительных
свойствах.
Вместо того чтобы определять структурные свойства как отно¬
шения, определенные на GRADE, ассоциируем с каждой степенью
структуру — группу именованных объектов. Эти объекты называ¬
ются частями структуры. Части структуры порождают организа¬
цию, называемую part-of-иерархией. Таким образом, grade 21 —
структура, имеющая john как pupil-часть (студент) и ml 235 как
lesson-часть (курс). Графически это представляется так, как на
рис. 4.54.
Здесь дуги, помеченные именами pupil и lesson указывают ча¬
сти grade, тогда как <pupil> и <lesson> используются в качестве
«местодержателей» и называются позициями (slots). Каждый при¬
мер GRADE указывается путем заполнения позиций конкретными
частями.
NUMBER
GRADE
STUDENT
COURSE
t
MARK
PUPIL John
LESSON
1
Z
ml 235
grade 21
Рис. 4.53
GRADE
STUDENT <pupil > <lessan>-
lessan> COURSE
Рис. 4.54
110
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
То, что мы теперь представили grade как имеющие утвердитель¬
ные и структурные части, не означает, что какое-либо другое пред¬
ставление является некорректным. Мы только указываем, что оп¬
ределение grade зависит от двух частей и что эти два свойства
не настолько важны, чтобы их независимо определять как отноше¬
ния. В действительности, структурные свойства не имеют изолиро¬
ванной семантики — они являются просто ассоциациями между
объектами. Роль, которую играет часть структуры, определяется
с помощью четырех программ (add, remove, fetch, test), действую¬
щих на классах. Это в корне отличается от ситуации с отношения¬
ми, которые являются независимыми единицами, имеющими свое
собственное процедурное поведение. Таким образом, всякое струк¬
турное свойство может трактоваться как отношение, даваемое со¬
ответствующими программами (как это было в первом представле¬
нии для степеней). Наоборот, если отображение, определяемое от¬
ношением, таково, что для каждого примера из области определе¬
ния фиксирован единственный пример из области значений, тогда
это отношение может трактоваться как структурное свойство. (На¬
пример, отношение MARK могло бы быть структурным свойством
степеней, если бы определению каждой степени отвечала бы един¬
ственная неменяющаяся отметка.)
Заметим, что используя понятие метакласса, мы можем опреде¬
лить понятие RELATION как имеющее структурные части
(см. рис. 4.55). Точно так же мы можем определить с помощью
■RELATION
CLASS
<domain> <range>
=3
7 П 1
John
1
21
f domain , Jrange nr_
PERSON-s AGE NUMBER
■CLASS
< add > < remove > < fetch > < test >
4=
add
PERSON PROG 1
Рис. 4.55
■ PROG 2
Puc. 4.5G
Л
PRUGRAП
семантической сети рис. 4.56 связь между классом и четырьмя
программами. В самом деле, так как программы определяют класс,
к которому они относятся, то они составляют структурные части
этого класса. Здесь PROG1 и PROG2 — конкретные программы.
Таким образом, определение класса состоит в заполнении позиций
класса CLASS конкретными программами. Более того, факт, что
операция класса может быть по умолчанию (default) стандартной
программой, может быть объяснен в терминах программ, которые
являются программами по умолчанию этих позиций.
Отметим, что на рис. 4.55 и 4.56 имя CLASS использовано для
обозначения класса всех классов. Поэтому CLASS есть пример са-
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
111
мого себя и, следовательно, возникает опасность появления пара¬
доксов типа парадокса Рассела. Но противоречие здесь, по-види¬
мому, не возникает ввиду того, что эти определения процедурные.
Рассмотрим сеть на рис. 4.57, связанную с понятием STUDENT.
В этой сети использована метка default. Дуга с такой меткой ука¬
зывает на «ожидаемый» объект, т. е. если специально не указы¬
вается для данного примера другой объект (как для примера bill
нет указания на другой факультет), то частью примера является
тот объект, на который указывает дуга default (т. е. частью при¬
мера bill является факультет вычислительной техники comptec).
UEPARTE1ENJ
< dept :
S Т li П Е N Т
< пит >
nitil
test
-/’KUH J
1
Ph'll GRAM
1
ilefmil t
cumptuc
bill
NUMBER
t-
50137
Рис. 4.57
STUDENT
ml 235 a-COURSE
■GRADE
default
<pupil > < mark > < lesson > < prof >
domain
INSTRUCTOR
| range
PROFESSOR
Рис. 4.58
Еще одним средством, помогающим спецификации структурных
свойств, является указание зависимостей между позициями. На¬
пример, на рис. 4.58 изображена семантическая сеть, определяю¬
щая степени как структуры, имеющие четыре части:
1) pupil — учащийся, который есть студент;
2) mark — отметка, которая есть положительное целое число,
меньшее, чем 100;
3) lesson — предмет, который является курсом ml 235, или не
сообщается другого курса;
4) prof — профессор, являющийся инструктором курса.
INSTRUCTOR
В сети рис. 4.58 подсеть {lesson) f J (prof) как раз
112
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
и выражает факт (4), т. е. зависимость между lesson-частью и
prof-частью структуры GRADE-
Зависимости в структуре могут иметь несколько возможных
процедурных интерпретаций:
1) когда создается пример класса, то отношения, указываемые
в зависимостях, проверяются, и если они не выполнены, то спе¬
циализация не верна (предусловие);
2) когда создается пример класса, эти отношения просто ут¬
верждаются для данного заполнения позиций (побочный эффект);
3) когда создается пример класса с некоторой структурой, то
отношения могут быть использованы для вывода остальной части
структуры (заполнение позиций);
4) операция тестирования на классе может использовать струк¬
туру для распознавания данного объекта, удовлетворяющего за¬
висимостям, как примера класса (сопоставление по образцу).
Важный частью семантических сетей является наследование
свойств. Наследование свойств становится возможным благодаря
AVERAGE-AGE
isa- и part-of-иерархиям. Наследование является механизмом аб¬
стракции, так как в случае isa-иерархии мы подавляем детали, ка¬
сающиеся сходства объектов, и определяем объекты, указывая, как
они отличаются от существующих, более общих объектов. Если
наследование свойств в isa-иерархии более или менее ясно непо¬
средственно, то в part-of-иерархии дело обстоит сложнее.
Рассмотрим сеть, показанную на рис. 4.59. В этой сети john
наследует comptec как dept-часть от STUDENT. Более того, john
должен иметь атрибут dept до того, как этому атрибуту присваива¬
ется значение. Объект john тем не менее не может наследовать
средний возраст 23, так как AVERAGE — AGE не является атри¬
бутом отдельного студента. Кроме того, john может иметь некото¬
рые атрибуты, но не наследовать их значений (например, num
и COURSES — TAKEN (изучаемые курсы)).
Следовательно, можно говорить о наследовании атрибутов от¬
дельно от наследования значений (хотя, конечно, наследование
значения всегда предполагает наследование соответствующего ат¬
рибута).
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
ИЗ
Наследование атрибутов кумулятивно в том смысле, что когда
объект есть пример более чем одного класса, то он наследует ат¬
рибуты каждого из них. В частности, если объект есть пример
класса, который является подклассом другого, то он наследует ат¬
рибуты обоих классов. Другими словами, класс неявно имеет струк¬
туру всех своих надклассов.
Таким образом, наследование атрибутов является удобным ме¬
тодом рассматривать класс как расширение или сужение сущест¬
вующего класса (предполагая, что обычные программы дают со¬
ответствующую интерпретацию).
Рассмотрим теперь, как наследуются значения. В сети рис. 4.60
john наследует comptec как dept-часть, тогда как bill имеет дру¬
гую dept-часть: math.
STUDENT
default
< dept >
^ \
john bill
dept
■ RELATION
I
<domain> <range>
I
default
H . ,+ OBJECT
default |
-comptec domain
PERSON-e CHILDREN
) range
math
ft
OLDEST = CHILD
Рис. 4.60
Рис. 4.61
Таким образом, наследование значений можно считать преиму¬
щественным в том смысле, что объект не наследует всех возмож¬
ных значений для данного свойства, а наследует единственное
значение.
Рассмотрим сеть, изображенную на рис. 4.61. В этой сети
OLDEST — CHILD (самый старший ребенок), будучи отношением,
т. е. примером RELATION, наследуют атрибуты domian и range от
RELATION. Однако, будучи подотноше-
нием CHILDREN, отношение OLDEST —
CHILD наследует PERSON в качестве об¬
ласти определения, а не OBJECT, как это
могло бы следовать из того, что OLDEST —
CHILD есть пример RELATION.
Рассмотрим теперь значения утвердитель¬
ных свойств в связи с анализом наследуе¬
мости. Хотя GRAD — STUDENT имеет атри¬
бут AVERAGE — AGE (как класс людей), он не наследует от
STUDENT значение 23 свойства AVERAGE — AGE (см. рис. 4.62).
Причина этого обстоятельства заключается в различии струк¬
турных и утвердительных свойств. Наследование значений зависит
от понятия сходства и хотя подклассы обычно подобны своим над-
классам по структурным свойствам, они могут радикально отли¬
чаться по утвердительным свойствам.
8 В. Н. Вагин
TUBE NT . 23
AVERAGE=АСЕ
GRAB=STUBENТ
Рис. 4.62
114
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
Как классы, так и их примеры, могут иметь структуру. Напри¬
мер, рассмотрим семантическую сеть, изображенную на рис. 4.63.
Здесь объект STUDENT имеет программы в качестве частей,
причем PROG3 есть значение add-части, a PROG5 — значение test-
части. Примеры класса STUDENT (т. е. студенты) имеют
numbers и departments в качестве своих частей. Таким образом,
имеется 4 типа информации, касающейся свойств, которая ассо¬
циируется с классом:
1) значение утвердительного свойства (например, 23 — средний
возраст студентов) (см. рис. 4.64);
2) значение структурного свойства (например, PROG3 — про¬
грамма для add) (см. рис. 4.64);
■CLASS
'add > < remove > < ^sieh > < test >
IE PAR TRENT j
ETrJDENT-
\<dept > <num>
M-
etC С
deTault j f
n rid
-PROGS -
- PROG о
PRO SRAT1
^
-NUMBER
b i l о
-50137
Рис. 4.63
PR0G3-
AVERAGE-AGE
add
STUDENT
1 9-1
< dept >
domain
COURSES
-23
mnffE
COURSE
Рис. 4.64
3) атрибут утвердительного свойства (например, студент мо¬
жет выбирать курс) (см. рис. 4.64);
4) атрибут структурного свойства (например, студент имеет
факультет) (см. рис. 4.64).
Подводя итог анализу наследственности, рассмотрим класс С,
один из его подклассов В и один из примеров с класса С. Тогда
получаем:
I. Правила наследования По иерархии примеров:
а) если р — значение (структурного или утвердительного) свой¬
ства класса С, то оно не наследуется с;
б) если р — атрибут С утвердительного свойства, то с может
иметь нуль или более соответствующих значений свойства;
в) если р — атрибут структурного свойства класса С, то с име¬
ет соответствующее значение свойства;
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
115
II. Правила наследования по isa-иерархии:
а) если р — атрибут (структурного или утвердительного) свой¬
ства для С, то он наследуется В\
б) если р — значение утвердительного свойства С, то оно не
наследуется В;
в) если р — значение структурного свойства С, то оно наследу¬
ется преимущественно В при условии, что В есть пример метаклас¬
са, имеющего атрибут соответствующего свойства.
Заметим, что по этим правилам свойства наследуются в иерар¬
хии примеров только на один уровень вниз.
Как уже было отмечено, мы определяли семантику классов и
отношений как поведение их осносительно четырех операции: add,
remove, fetch, test. Самая слабая («свободная») семантика опре¬
деляется стандартными программами, обозначаемыми: SAP, SRP,
STP, SFP. Программа SAP заносит пример в БД, программа SRP
удаляет пример из БД, программа SFP выдает список всех приме¬
ров, записанных в БД по адресу соответствующего класса или от¬
ношения, программа STP распознает пример класса или отношения,
основываясь на поиске в БД. При этом ни одна из этих программ
не вызывает никаких побочных эффектов. Метакласс CLASS, имею¬
щий атрибуты add, remove, fetch, test, всегда по умолчанию при¬
дает этим атрибутам значения соответственно: SAP, SRP,
SFP, STP.
На рис. 4.65 изображена семантическая сеть, в которой класс
PERSON имеет стандартную («свободную») семантику, но семан¬
тика классов STUDENT и GRAD — STUDENT уже не свободна,
„ defauLt I CLASS irlpfnnJt
SAP~* ~-j 1 I aetauu^SFp
\<add> <remave> <tesi> <fetch>
/
s/?r , default / \ default ^
test
STUDENT *-PROG 1
ft
GRAD-STUDENT
Рис. 4.65
так как операция test осуществляется программой PROG1 (отлич¬
ной от STP). Класс GRAD — STUDENT наследует значение
PROG1 атрибута test, а не значение STP.
В семантической сети для четырех основных операций для клас¬
сов и отношений в зависимости от приложений (или личных пред¬
почтений пользователя) можно выбирать подходящие программы
или по умолчанию использовать стандартные программы: SAP,
SRP, STP, SFP. Таким образом, имеются два крайних случая:
8*
116
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
одип, когда все программы стандартны для всех классов и отно¬
шений («вполне свободная семантика»), второй, когда все опера¬
ции для всех классов имеют специфические программы («вполне
процедурная семантика»).
Обычно, когда пишут интерпретатор для семантических сетей,
то используют обычные языки программирования (например,
LISP). Однако, как считают Левек и Милопулос, не следует писать
на языке, который не «поддерживает» концептуальные структуры
данных, манипулируемые интерпретатором. Желательно иметь фор¬
мализм программирования, который естественно соответствует тем
видам обработки, которые вызываются представлением. Оказыва¬
ется, что формализм сетей, развитый Левеком и Милопулосом, при¬
годен и для описания программ. Таким образом, программы обра¬
ботки сетей могут быть включены непосредственно в сети.
Имеются два типа программ, необходимых для спецификации
поведения классов и отношений: процедуры и функции (включая
предикаты). Процедуры совершают действия такие, как операции
add и remove. Функции выдают значения, как например, операции
fetch и test (последняя операция соответствует предикату).
Выполнение процедуры включает следующие части:
1) определение допустимости предложенного действия путем
проверки условий, которые должны выполняться прежде чем было
бы возможно совершение действия. Например, прежде чем присое¬
динить пример к отношению, мы должны выяснить, является ли
один объект элементом области определения, а другой — области
значений отношения;
2) в предположении, что начальные условия выполнены (т. е.
выполнена часть 1 процедуры), должно быть выполнено само дей¬
ствие; его выполнение может включать совершение таких прими¬
тивных действий как запоминание результатов в таблице, или бо¬
лее сложных действий, передающих «ответственность» другим клас¬
сам и отношениям (эти действия также могут не пройти);
3) в предположении, что прошли части 1 и 2 процедуры, могут
быть выполнены некоторые дополнительные выводы, требуя даль¬
нейших действий;
4) если часть 2 не прошла, то могут быть сделаны шаги для
исправления ситуации на этом уровне; а не допускать прерывания
процедуры.
Подобное разложение применимо и к программам-функциям
(или, в частности, предикатам). В этом случае начальные усло¬
вия — это предпосылки, которые должны быть выполнены, прежде
чем будет извлечена требуемая информация. Как только значения
получены, может оказаться удобным выполнить такие действия,
как запоминание результатов для обеспечения избыточности. Если
же значения не получены, то возможно исправление и возвраще¬
ние к поиску, в результате чего эти значения все же могут быть
получены.
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
117
Таким образом, каждая из рассматриваемых нами программ
может быть охарактеризована следующими четырьмя частями:
1) предусловие (prerequisite) — логическое выражение, которое
должно быть истинным перед выполнением тела программы;
2) тело (body)—действие для процедур или выражение для
функций;
3) эффект (effect) — действие, совершаемое после успешного вы¬
полнения тела программы;
4) рекламация (complaint) — действие или выражение, которое
должно быть выполнено или использовано в случае неуспешного
завершения тела.
Указанная факторизация программ может быть записана, как
показано на рис. 4.66. Здесь STATEMENT (утверждение) и
EXPRESSION (выражение)—классы, представляющие конструк¬
ции, в терминах которых формулируются программы. Следователь¬
но, конкретная программа определяется путем заполнения позиций.
Например, функция, не имеющая аргументов, которая всегда вы¬
дает объект john, может быть представлена сетью, показанной на
рис. 4.67. Важно отметить, что конкретные программы рассмат¬
риваются сами как классы со структурой, причем позиции трак¬
туются как аргументы программы. Таким образом, классы
PROGRAM, PROCEDURE, FUNCTION и PREDICATE являются на
самом деле метаклассами.
На рис. 4.68 изображена сеть, представляющая программу, вы¬
числяющую тождественную функцию. Чтобы описать значение
функции, которая требует дополнительных функций, будем исполь¬
зовать специальную нотацию, пример которой показан на рис. 4.69.
Здесь использован специальный местодержатель times для функции
TIMES (умножение), называемый формой. Подобно тому, как по¬
зиции есть местодержатели для примеров классов, так и формы
являются местодержателями для примеров программ. Пример про¬
граммы определяется заполнением позиций программы (т. е. ука¬
занием значения для каждого параметра программы). Это иллю¬
стрируется на рис. 4.70. Здесь identity 0015 и identity 0023 — при¬
меры программы IDENTITY. Примеры программ, называемые про¬
цессами, могут быть выполнены и, следовательно, соответствуют
активациям программ. Исполнение процесса может включать и
уничтожение других процессов. Например, функция TIMES — TWO
требует пример функции TIMES для каждой активации (см.
рис. 4.71); отношение DYNAMIC отображает процесс на его дина¬
мического «родителя». Таким образом, стек исполнения представ¬
ляется цепью утверждений из DYNAMIC. Например, рассмотрим
функцию FACTORIAL (факториал) на рис. 4.72. Эта функция в
качестве форм использует функции less р (меньше, чем р), times
и sub 1 (вычитание единицы). Для процесса с заполненной двойной
позицией на самом глубоком уровне композиции мы имеем цепь
утверждений из DYNAMIC на рис. 4.73, где выполнение первого
118
ГЛ. 4. СЕМАНТИЧЕСКАЯ СЕТЬ
ПО П ПО А М .
STATEMENT
L OGICAL =EXPRESSION
ft
r> EXPRESSION
— FUNCTION
body> <complnint>
ft
-PREDICATE
<body> <complnint>
Рис. 4.66
FUNCTION
JOHN = F N —dy*-john
Рис. 4.67
OBJECT -
FUNCTION
\
- IDE NTI~ С ■
Рис. 4.68
j~~)body
FUN C TIC
body
TIMES=TWU
left
-times < x >
right
2 ^ NUMBER
Рис. 4.69
IDE NTITS
'identity 0015
i
identity 0023•
x |
f
Jim
DYNAMIC
TIMES-TWO
times-two 007
I
l£ ^
TINES
A
Рис. 4.70
Рис. 471
4.6. ОРГАНИЗАЦИЯ СЕМАНТИЧЕСКИХ СЕТЕЙ
119
процесса из FACTORIAL требует выполнения IF, которое в свою
очередь требует выполнения TIMES, а оно в свою очередь — вы¬
полнения другого процесса из FACTORIAL и т. д.
Таким образом, восемь стандартных программ для классов и
отношений играют специальную роль в нашей схеме, так как они
являются программами, которые обязательно наследуются всеми
классами и отношениями. Поскольку многие зависимости между
классами и отношениями могут быть выражены процедурно в тер¬
минах предусловий и эффектов, то тела восьми программ насле¬
дуются многими классами и поэтому дают важный интерфейс меж¬
ду представлением и физической реализацией.
/
NUMBER
FA С J О RIA L
ob t , t sst .
—— lessp if
^2)Ьойу
sebj I false
’ * left 1
— < n > times
t of
Sub1
n
I right
- factorial
Рис. 4.72
DYNAMIC
Рис. 4.73
Подводя итог, укажем на два преимущества, вытекающих из
интеграции программ вдоль isa- и part-of-иерархий. Во-первых,
факторизация программы на четыре компоненты позволяет наследо¬
ванию свойств быть более гибким, ибо фактически программы мо¬
гут частично передавать default-ы другим программам. Это верно
не только для программ, но, что более важно, и для классов,
семантика которых указывается процедурно. Во-вторых, что каса¬
ется самих программ, нам кажется, что почти всякая организация
полезна для понимания программ (людьми или другими програм¬
мами). В худшем случае мы заменяем один «черный ящик» че¬
тырьмя «черными ящиками»; в лучшем случае, введение деклара¬
тивной структуры в программы позволяет более легко их анализи¬
ровать.
ЧАСТЬ III
ДЕДУКЦИЯ В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИЙ
Но отрадной до рассвета
Сердце дремой залито.
Все простит пм... если это
Только Это, а не То.
11. Анненский
ГЛАВА 5
ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
5.1. Процедура вывода Эрбрана
Автоматическое доказательство теорем ведет свое начало от ос¬
новополагающих работ Эрбрана, который еще в тридцатых годах
нашего столетия предложил механическую процедуру дедуктивного
вывода. Однако в эти же годы результаты Черча и Тьюринга о
неразрешимости логики предикатов первого порядка в какой-то
степени оттеснили работы Эрбрана на задний план. Интерес к ним
возрос в шестидесятые годы, когда П. Гилмор реализовал эрбра-
новскую процедуру вывода на ЭВМ. Действительно, если нет про¬
цедуры для проверки противоречивости (общезначимости) формул
логики предикатов первого порядка, то самое большее, что можно
сделать, это проверить противоречивость (общезначимость) фор¬
мулы, если она на самом деле таковой и является. П. Гилмору уда¬
лось доказать с помощью процедуры Эрбрана ряд простых теорем
из логики высказываний, но его программа столкнулась с нераз¬
решимыми трудностями при доказательстве теорем логики пре¬
дикатов.
Ненамного эффективнее был метод М. Девиса и X. Патнема,
с помощью которого были доказаны некоторые теоремы из логики
предикатов, не доказанные П. Гилмором. В 1964—1965 гг. неза¬
висимо друг от друга появились обратный метод установления
выводимости С. Ю. Маслова и принцип резолюции Дж. Робинсона.
В те же годы Н. А. Шаниным и его коллегами было разработано
несколько версий алгоритма машинного поиска естественного ло¬
гического вывода в исчислении высказываний (АЛПЕВ). Разра¬
ботка версий системы АЛПЕВ и машинных алгоритмов вывода
на основе обратного метода и принципа резолюции показала прин¬
ципиальную возможность машинных доказательств теорем.
Но вернемся к истокам, к эрбрановской процедуре вывода. Ра¬
нее мы установили, что множество дизъюнктов S невыполнимо
тогда и только тогда, когда оно принимает значение ложь при всех
интерпретациях на любых областях. Однако в силу невозможности
рассмотрения всех интерпретаций на любых областях хорошо бы
найти такую специальную область интерпретации, установив на
5.1. ПРОЦЕДУРА ВЫВОДА ЭРБРАНА
121
которой факт невыполнимости множества дизъюнктов, можно было
бы сделать вывод о невыполнимости этого множества на любых
других областях интерпретаций.
Такая область имеется п она называется универсзгмом Эрбрана.
Определим его. ——
Пусть Яо — множество констант, появляющихся в множестве
дизъюнктов S. Если в S нет констант, то в Я0 включается некото¬
рая константа, например Нц = {а}. Для i = 0, 1, 2, ... Hi+i =
= Hi U t2, .. ., £„)}, где fn — все и-местные функциональные
символы, встречающиеся в 5, a tu t2, .. tn — элементы множества
Ни Тогда будем Н = Ит называть универсумом Эрбрана для S,
a Hi — его уровнем г.
Пример 5.1. Пусть S = {Я (х, a, g (у)) V П Q (х)’ П
а! У) V Q(a)}- Тогда
Я0 = {а};
Hi = {a, /(a), g(a)};
Я2 = {а, /(а), £(а), /(/(a)), f(g(a)), g(f(a)), g(g(a))};
Н„ = \а, /(a), g(a), /(/(а)), .. Л.
Пример 5.2. Пусть 5 = {$(■£) V (2/)’ "1 <2(ж) V ^(2/)}- Тогда
Я = Я„ = Я4 = ... = Ям = (а).
Если под выражением понимать терм, множество термов, атом,
множество атомов, литеру, множество литер, дизъюнкт или множе¬
ство дизъюнктов, то под фундаментальным выражением будем по¬
нимать выражение, не содержащее переменных. Фундаментальным
примером дизъюнкта будем называть дизъюнкт, полученный заме¬
ной всех переменных в это.м дизъюнкте элементами универсума
Эрбрана таким образом, что все вхождения одной и той же пере¬
менной в дизъюнкт заменяются на один и тот же элемент уни¬
версума.
Множество фундаментальных атомов вида Pn(U, t2, ..., £„), где
Рп — все и-местные предикатные символы, встречающиеся в мно¬
жестве дизъюнктов S и ti, ..., tn — элементы универсума Эрбрана,
называется атомарным множеством или эрбрановской базой для S.
Обозначим эрбрановскую базу через А.
Пример 5.3. Пусть S = {<?('г)’ П P(f(x))\/ П (?(£)}• Тогда
H = ia, 1(a), f(f(a)), ..Л.
И = «?(а), Р(а), <?(/(«)), Р(М), Q(f(f(a))), ..Л.
Фундаментальные примеры дизъюнктов: Q(a), г_| P(f(a)) \J Q (a)
XI т. n.
Определим теперь интерпретацию на универсуме Эрбрана и на¬
зовем ее Нмтте^щетацией. Говорят, что интерпретация 1Н является
Я-интерпретацией для множества дизъюнктов S, если выполнены
следующие соответствия:
122
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
— каждому предикатному символу Р™ соответствует некоторое
n-местное отношение в Я;
— каждому функциональному символу /™ соответствует неко¬
торая н-местная операция в Я (т. е. функция, отображающая
Я” в Я);
— каждой предметной константе а{ из S соответствует некото¬
рая константа из Я (т. е. все константы отображаются на самих
себя). ..•*
Пусть А = {А,, А2, ..., Ак, ...} является эрбрановской базой для
S. Тогда Я-интерпретация 1Н может быть представлена множе¬
ством: 1п—{ти т2, ..., тк, ...}, в котором тесть Aj или ~| Aj
для j = 1, 2, ... При этом, если тщ есть Aj, то Априписывается
значение И, в противном случае — JI.
Пример 5.4. Пусть S = {^ Р (f (х)) \J Q(x), R(x)}. Тогда
Я = {a, f(a), f(f(a)), ...}.
А = {Р(а), Q(a), R(a), P(f(a)), Q(f(a)),R(f(a)),...}.
Примеры Я-интерпретаций:
1н = {£* (a), Q (a), R (a), P (/ (a)), Q (/ (a)), Я (/ (a)), ...}.
/|=Пт 10(a), li?(a), IP (/(a)), 10 (/(a)), 1* (/(a)), ..
/н = {P (a), 1 <? («)) 1 R («Ф P (/ (a)), 1 0 (/ (a)), 1 Я (/ (a)), ...}.
При /д оба дизъюнкта выполнимы, при /д первый дизъюнкт
выполним, второй — нет, при /д оба дизъюнкта невыполнимы, т. е.
принимают значение Л.
В случае, если интерпретация задана не на универсуме Эрбра-
на, а на произвольной области D, то можно установить следующее
соответствие между этими интерпретациями. Пусть дана интерпре¬
тация / на некоторой области D. Говорят, что Я-интерпретация
/н соответствует интерпретации /, если имеет место следующее:
пусть hu h2, ..., hn, ...— элементы Я и пусть каждый ht отобра¬
жается на некоторый элемент di области D, тогда, если любой
P(dt, d2, ..., dn) принимает значение И(Л) при интерпретации I,
то P{hu h2, ..., hn) также принимает значение И(Л) при 1Н.
Будет справедлива следующая теорема: множество дизъюнктов
S невыполнимо тогда и только тогда, когда S лоз/сно при всех
Н-интерпретациях.
Доказательство «тогда» очевидно, а «только тогда» доказывает¬
ся от противного введением соответствия между Я-интерпретацией
и некоторой произвольной интерпретацией.
Таким образом, для установления невыполнимости множества
дизъюнктов достаточно рассмотреть не все его интерпретации,
а только Я-интерпретации.
5.2. ПРИНЦИП РЕЗОЛЮЦИЙ ДЛЯ ЛОГИКИ ВЫСКАЗЫВАНИЙ
123
Процедура вывода Эрбрана основывается на его теореме, кото¬
рая гласит: Множество дизъюнктов S невыполнимо тогда и только,
тогда, когда существует конечное невыполнимое множество фунда,-
менталъных примеров дизъюнктов в S.
Таким образом, для установления невыполнимости множества
дизъюнктов необходимо образовать множества Si, S2, .. ., Sn, ...
фундаментальных примеров дизъюнктов и последовательно прове¬
рять их на ложность. Теорема Эрбрана гарантирует, что если мно¬
жество S невыполнимо, то данная процедура обнаружит такое п,
что Sn является ложным.
Пример 5.5. Пусть S = {Р (x)\J ~]Q(x, g (х)), ~j Р (/(а)),
О {у, z)\. Тогда фундаментальными примерами дизъюнктов явля¬
ются 51 = {P(/(a))V 1Q (/(«)> g (/(«))). П P{f{a)),Q{f{a),g(f(a)))}.
Si невыполнимо, так как (Р (/ (а)) V П Q (/ (a)i 8 (/(«))))&
& ~j Р (/ (а)) & Q (/ (а), g (/ (а))) = Р (/ (а)) & П Р (/ (a)) &Q (/ (а),
£ (/ («))) V П Q (/ («)» 8 (/ («))) & 1 Р (/ («)) &<?(/(«). & (/ (а))) = □ V
V □ = □■
Беда процедуры Эрбрана состоит в экспоненциальном росте мно¬
жеств Si при увеличении i. Вот почему Гилмор даже с помощью
вычислительной машины смог доказать только простые теоремы.
Иной подход предложил Дж. Робинсон, который ввел принцип
резолюции, являющийся теоретической базой для построения боль¬
шинства методов автоматического доказательства теорем.
5.2. Принцип резолюции для логики высказываний
Основная идея принципа резолюции заключается в проверке,
содержит ли множество дизъюнктов S пустой (ложный) дизъюнкт
□ . Если это так, то S невыполнимо. Если S не содержит □, то сле¬
дующие шаги заключаются в выводе новых дизъюнктов до тех
пор, пока не будет получен □ (что всегда будет иметь место для
невыполнимого S). Таким образом, принцип резолюции рассмат¬
ривается как правило вывода, с помощью которого порождаются
новые дизъюнкты из S. По существу принцип резолюции является
расширением однолитералъного правила Девиса и Патнема. Дей¬
ствительно, используя это правило, например, для дизъюнктов ти¬
на Р и Д Р V <?> мы получаем дизъюнкт Q. Согласно этому пра¬
вилу в двух дизъюнктах, один из которых состоит из одной ли¬
теры, а второй содержит произвольное число литер (в том числе
и одну), находится контрарная пара литер (например, Р и ДП),
которая затем вычеркивается и из оставшихся частей дизъюнктов
формируется новый дизъюнкт (Q в нашем примере).
Ничего нового по сравнению с известным правилом modus ро-
nens здесь нет, так как ДР \J Q равносильно Р Q и из выво¬
димости Р и Р Q следует выводимость Q.
Дж. Робинсон расширил однолитеральное правило на случай
произвольных дизъюнктов с любым числом литер. Если в любых
124
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
двух дизъюнктах С4 и Cz имеется контрарная пара литер (L и
'I L), то, вычеркивая ее, мы формируем новый дизъюнкт из остав¬
шихся частей дизъюнктов. Этот вновь сформированный дизъюнкт
будем называть резольвентой дизъюнктов и С2.
Пример 5.6. Пусть
Cv PVIQV'-IR,
С2: Q V Р.
Тогда резольвента С\ P\J^\R.
Обоснованность получения таким образом резольвенты вытекает
из простой теоремы, которая гласит: Резольвента С, полученная из
двух дизъюнктов С, и С2, является логическим следствием этих
дизъюнктов.
Если в процессе вывода новых дизъюнктов мы получим два
однолитеральных дизъюнкта, образующих контрарную пару, то
резольвентой этих двух дизъюнктов
будет пустой дизъюнкт. П
Таким образом, выводом пустого
дизъюнкта □ из множества дизъ¬
юнктов S называется конечная после¬
довательность дизъюнктов Си С2,...
..., Ch такая, что любой Cf является
или дизъюнктом из S или резольвен¬
той, полученной принципом резолю¬
цией, и СА = П.
Вывод пустого дизъюнкта может быть наглядно представлен с
помощью дерева вывода, вершинами которого являются или исход¬
ные дизъюнкты или резольвенты, а корнем — пустой дизъюнкт.
Пример 5.7. Пусть 5 = {Р V Q, q Р V Q, Р \J q Q, ^ Р V
V 1 <?}. Тогда:
1. i’ve- 5. Q (1, 2).
2. n^ve. 6. пе(з,4).
3. Р V П Q- 7- □ (5> 6) (см. рис. 5.1).
4- п^упе-
В заключение приведем пример вывода формулы из множества
посылок принципом резолюции. Напомним, что доказательство вы¬
вода формулы G из множества посылок Fu Fz, ..., Fn сводится к
доказательству противоречивости формулы Рг & Р2 & . . . & Fn & ~~| G
(процедура опровержения).
Пример 5.8. Если команда А выигрывает в футбол, то город
А' торжествует, а если выигрывает команда R, то торжествовать
будет город R'. Выигрывают или А или R. Однако, если выигры¬
вают А, то город В' не торжествует, а если выигрывают В, то не
будет торжествовать город А'. Следовательно, город В' будет тор¬
PVQ 1PVQ PVIQ 1PV1Q
5.3. ПРИНЦИП РЕЗОЛЮЦИИ ДЛЯ ЛОГИКИ ПРЕДИКАТОВ
125
жествовать тогда и только тогда, когда не будет торжествовать
город А'.
Напишем посылки и заключение на языке логики высказываний
и приведем их к форме дизъюнктов:
1. А-+А'. 4. А-+^В'.
2. В-+В'.
3. А у В. 6. В'~^А'.
Ч(Я'~Ч4') = Ч(ПЯ'V 1А')&(В' \М')) = ППЯ' V 1А') V
1 (в' V 4') = (В’ & А') V п в' & П л') = (А> V "1 вг) & С1 А' V В').
1. П А\/А'. 8. А’у В (1,3).
2. П^вув'. $.-\B\JA' (2,6).
3. А V В. 10. А' (8, 9).
4. 14LV15'. И. А V “И' (3>5)-
5. пв V 12- П ^ V 1 А’ (4, 7).
6. А' VI 5'. 13. Ч А' (11,12).
7.^А'\/В'. 14. □ (10,13).
Для сравнения докажите это заключение средствами формаль¬
ных систем, приведенных в гл. 1.
5.3. Принцип резолюции для логики предикатов
первого порядка
Если в логике высказываний нахождение контрарных пар не
вызывает трудностей, то для логики предикатов это не так. Дей¬
ствительно, если мы имеем дизъюнкты типа
Ср. Р(х) V ЧД(аг),
С2: ~{Р(е(*))М(у),
то резольвента может быть получена только после применения к С,
подстановки g (х) вместо х.
Имеем
c'l. P(g(x))V lR(g(x))
Ср. ^]P{g(x)) V Q{y)
С: lR(g(x))VQ(y)
Cp P(f(x))y 1В(х)
Cp !P(g(x))yQ(y),
Однако для случая
126
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
очевидно, никакая подстановка неприменима и никакая резольвента
не образуется. Отсюда следует определение того, что является под¬
становкой.
Подстановкой будем называть конечное множество вида {tjxt,
t2/x2, ..., tn/xj, где любой t{ — терм, а любая ад — переменная
(1 «£ i «£ и), отличная от 1*.
Подстановка называется фундаментальной, если все (l^i^n)
являются фундаментальными термами. Подстановка, не имеющая
элементов, называется пустой подстанзвкой и обозначается через е.
Пусть Q = {tl/xl, tjx2, .. ., tjxn} — подстановка и W — выражение.
Тогда WQ будем называть примером выражения W, полученного
заменой всех вхождений в W переменной xt, i^i^n, на вхож¬
дение терма ti. F/Q будет называться фундаментальным примером
выражения W, если 0 — фундаментальная подстановка.
Например, применив к W = {P{x, f(y)) V ^ Q (z)} фундамен¬
тальную подстановку 0 = {а/лг, g(b)/y, f(a)/z}, получим фундамен¬
тальный пример WQ = {P(a, f(g(b)))\/~]Q(f(a))}. Пусть 0 =
{t л Хх, t2/х2, ..., tnf xn} и X {iti/у i, и2/у 2, ..., Hm/у — Две под¬
становки. Тогда композицией 0°Х двух подстановок 0 и X называ¬
ется подстановка, состоящая из множества
{tih/Xi, t2X/x2, ..., tJJxn, Ui/yu и2/у2, ..., ujyj,
в котором вычеркиваются tiX/x, в случае td. = xt п u/yh если у,
находится среди ад, х2, . . ., хп.
Пример 5.9. 0 = {g(,r, у)/х, z/u} и Х = {а/х, b/y, c/w, y/z),
Q°X = {g{a, Ъ)/х, у/у, а/х, b/y, c/w, y/z) = {g(a, b)/x, c/w, y/z).
Можно показать, что композиция подстановок ассоциативна, т. е.
(0 ° л) ° ц = 0 0 ({X ° д).
Подстановку 0 будем называть унификатором для множества
выражений {W,, W2, . . ., ТЕП, если И л) -ЛГПО = ... = WkQ. Будем
говорить, что множество выражений {Wt, W2, . .., V/J унифици¬
руемо, если для него имеется унификатор. Унификатор а для мно¬
жества выражений {W i, W2, ..., 1FJ называется -уаиборее общим
унификатором (НОУ) тогда и только тогда, когда для каждого
унификатора 0 для этого множества выражений найдется подста¬
новка X такая, что 0 = а 0 X.
Пример 5.10. W = {P{x, a, j(g(a))), P(z, у, f(u))}. Тогда
o={z/x, а/у, g (а)/и) есть НОУ, a Q = {b/x, а/у, Ъ/z, g(a)/u} есть
унификатор.
Опишем теперь алгоритм унификация, который находит НОУ,
если множество выра*женпй W унифицируемо, и сообщает о неуда¬
че, если это не так.
1) Установить к = 0, Wh=W и ок — е. Перейти к пункту 2.
2) Если Wk не является одноэлементным множеством, то пе¬
рейти к пункту 3. В противном случае положить а = ак и окончить
работу.
3) Каждая из литер в Wh рассматривается как цепочка симво¬
5.3. ПРИНЦИП РЕЗОЛЮЦИИ ДЛЯ ЛОГИКИ ПРЕДИКАТОВ
127
лов и выделяются первые подвыражения литер, не являющихся
одинаковыми у всех элементов Wk, т. е. образуется так называемое
множество рассогласований типа {xk, tk}. Если в этом множестве
xh — переменная, a tk — терм, отличный от хк, то перейти к пунк¬
ту 4. В противном случае окончить работу: W неунифицируемо.
4) Пусть ah+l = ак ° {tjxh} и Wk+l = Wh{th/xk}.
5) Установить к : = к + 1 и перейти к пункту 2.
Пример 5.11. Найти НОУ для W = {P(y, g{z), f(x))t
Р(а, х, f{g{y)))).
1) Со = е и Wo = IF.
2) Так как W0 не является одноэлементным множеством, то пе¬
рейти к пункту 3.
3) {у, а), т. е. {а/у}.
4) Ci = с0 о {а/у} = е ° {а/у} = {а/у}.
Wt = W<s{a/y} = {Р(а, g(z), f{x)), Р(а, х, f(g(a)))}.
5) Так как W, опять неодноэлементно, то множество рассогла¬
сований будет {g(z), х}, т. е. {g(z)/x}.
6) с2 = Ci»{g{z)/x} = {а/у, g{z)/x},
W2 = Wi{g(z)/x} = {P(a, g{z), f(g(z))), P(a, g(z), f(g(a)))h
7) Имеем (z, а}, т. e. {a/z}.
8) 03 = 02 ° {a/z} = {a/у, g(a)/x, a/z},
Ws = Wz{a/z) ~ {P(a, g(a), f(g(a))), P(a, g(a), f(g(a)))} =
— {P(a, g(a), f(g(a)))},
a3 = {a/y, g(a)/x, a/z} есть НОУ для W.
Можно показать, что алгоритм унификации всегда завершается
на шаге 2, если множество W унифицируемо, и на шаге 3 — в про¬
тивном случае.
Если две или более одинаковые литеры (одного и того же зна¬
ка) дизъюнкта С имеют НОУс, то Со называется фактором дизъ¬
юнкта С.
Пример 5.12, Пусть С = Р (х) V Р (g(y)) V ^~\R{x). Тогда
НОУс = {g{y)/x} и фактор Со = P{g\y)) R{g(y)).
Пусть Ё и Сг — два дизъюнкта, не имеющие общих перемен¬
ных (это всегда можно получить переименованием переменных).
И пусть L, и Ь2 = *д| Lt — литеры в дизъюнктах и Сг соответ¬
ственно, имеющие НОУс. Тогда бинарной резольвентой для С4
и Сг является дизъюнкт вида С = (Сщ — L,o) U (С2с — L2o). Бинар¬
ная резольвента может быть получена одним из четырех способов:
1) резольвента для Ct и С2;
2) резольвента для С\ и фактора дизъюнкта С2;
3) резольвента для фактора дизъюнкта Сt и С2;
4) резольвента для фактора дизъюнкта С\ и фактора дизъюнк¬
та С г.
Пример 5.13. Пусть
C^P{f{g{a))) V !R(b),
С2=1Р{х)У lP{f{y))\f Q{y).
128
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
Тогда С2а = С'2 = ~\Р (f(y))\J Q(y) п резольвентой для Сi и С'%
будет С = ~\R(b)\j Q(g(a)).
Принцип резолюции обладает важным свойством — полнотой,
которое устанавливается следующей теоремой (Дж. Робинсон):
Множество дизъюнктов S невыполнимо тогда и только тогда, когда
существует вывод из S пустого дизъюнкта.
К сожалению, в силу неразрешимости логики предикатов пер¬
вого порядка для выполнимого множества дизъюнктов S процедура,
основанная на принципе резолюции, будет работать бесконечно
долго.
Приведем два примера, иллюстрирующие принцип резолюции
для логики предикатов.
Пример 5.14. Существуют студенты, которые любят всех пре¬
подавателей. Ни один из студентов не любит невежд. Следователь¬
но, нн один из преподавателей не является невеждой (см. при¬
мер 2.18).
Запишем эти утверждения па языке логики предикатов и при¬
ведем пх к стандартному виду:
3.x (С {х) & Vy (Р {у) -> L {х, у)))
Vx(C(x)^Vy(H(y)-*-\L(x,y)))
Чу{Р{у)^1Н{у))
1. С {а).
2. ^Р(у)У L (а, у).
3. ~}С(х)\/ -}H{y)\J -]L{x,y).
П Vy С1 P (у) V П Н (у)) = 3у(Р(у)&Н (у)).
4. Р(Ь).
5. Н(Ъ).
6. L {а, Ь) (2,4). о = {Ь/у}.
7. ПЯ(у) V ~]L(a,y) (1,3). сг = {а/х).
8. П L(a,b) (5.7). а = {Ь/у}.
9. □ (6,8).
Пример 5.15. Все люди — животные. Следовательно, голова
человека является головой животного.
Пусть L(x), А(х) и G(x, у) означают «х— человек», «х— жи¬
вотное» п «х является головой у». Тогда
Vy(£ (у)-+А(у))
Vx(3y (L(y) &G(x, y))-*3z(A(z) &G(x, z)))
П Vx (By (L (y) & G (x, y)) 3z (A (z) & G (xt z))) =
5.4. СЕМАНТИЧЕСКАЯ РЕЗОЛЮЦИЯ
129
= 1 Vx(T~\3y{L(y)&G(х, у)) V 3z(A(z) & G (х, z))) =
- 1 V* (Vу ("1 ь (у) V (*. У)) V Эг (4 (г) & G (х, z))) =
= П Vz Vy 3Z С~1 L (у) V п G (х, у) у A (Z)&G (х, z)) =
= Зх Зу Vz (L (у) & G (х, у)&(~] A(z)\/ 1 G{x,z))).
1. ПL{y)yA(y).
2. Ь(Ъ).
3. G(a, b).
4. l-4(z) V 1 <?(я. г)-
5.4(6) (1,2). o = {b/y).
6. lG(a,6) (4,5). G = {b/z}.
7. □ (3,6).
Принцип резолюции является более эффективной процедурой
вывода, нежели процедура Эрбрана. Но и он страдает существен¬
ным недостатком, заключающимся в формировании всевозможных
резольвент, большинство из которых оказываются излишними и
поэтому ненужными. С 1965 г. и по сей день появляются всевоз¬
можные модификации принципа резолюции, направленные на на¬
хождение более эффективных стратегий поиска нужных дизъюнк¬
тов. Количество этих модификаций настолько внушительно, что их
даже трудно перечислить, не говоря о том, чтобы рассмотреть.
Остановимся только на некоторых, нашедших наиболее широкое
применение в дедуктивных системах принятия решений, хотя и
они являются отражением только субъективной точки зрения
автора.
Предварительно отметим, что, как правило, за некоторым иск¬
лючением, которое будет специально оговариваться, будем исклю¬
чать из рассмотрения порождаемые дизъюнкты типа тавтологий, так
как невыполнимое множество дизъюнктов, содержащее дизъюнкт-
тавтологию, останется снова невыполнимым после его удаления.
Аналогично будем вычеркивать поглощенные дизъюнкты, которые
также не меняют невыполнимость множества дизъюнктов. Дизъ¬
юнкт Ci поглощает дизъюнкт С2 тогда и только тогда, когда име¬
ется подстановка б такая, что С\б s С2. Дизъюнкт С2 называется
поглощенным дизъюнктом. Например, пусть Ci=P(x) и С2 =
= Р(а)\/ R(a). Если б = {а/х), то С1б = Р(я). Тогда Cib^C2 и С\
поглощает С2, т. е. С2 можно без ущерба для вывода вычеркнуть.
5.4. Семантическая резолюция
Одной из эффективных модификаций принципа резолюции явля¬
ется семантическая резолюция, предложенная Дж. Слейглом. Вы¬
черкивание дизъюнктов-тавтологий и поглощенных дизъюнктов при
9 В. Н. Вагин
130
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
полном переборе дизъюнктов в процессе вывода лишь незначитель¬
но уменьшает число ненужных и излишних дизъюнктов. Нужны
более кардинальные средства, которые генерировали бы только
нужные дизъюнкты. Такими средствами являются интерпретация
н упорядочение предикатных букв. Рассмотрим пример.
Пример 5.16. Пусть S= {P\/~]Q\/~\R, P\JQ, P\J Rx ~| P}.
Метод полного перебора дает:
1. P ' /Q.
2. Р V R.
3. Р V 1 Q V ~1Д.
4. ~\Р.
5. P\J ~\R (1,3).
6.С (1,4).
7. Р V ~\Q (2, 3).
8.R (2,4).
9- ~| 0 V '1Д (3,4).
10. Р (1,7).
11. ~\R (4,5).
12. Н0 (4, 7).
■13. □ (4.10).
Для краткости мы опустили здесь некоторые повторяющиеся
дизъюнкты. Анализируя вывод, можно видеть, что при доказатель¬
стве используются только два дизъюнкта: (7) и (10); все осталь¬
ные лишние.
Одним из способов запрещения генерирования излишних дизъ¬
юнктов "является разделение исходного множества дизъюнктов на
два подмножества при условии запрещения образования резольвент
от дизъюнктов, входящих в одно и то же подмножество, и генери¬
рования резольвент только от дизъюнктов из разных подмножеств.
В семантической резолюции для разбиения множества на два под¬
множества используется интерпретация.
Пусть / — некоторая интерпретация множества дизъюнктов S,
которая в одно подмножество Si включает дизъюнкты, которые ею
не удовлетворяются (т. е. ложны), а в другое подмножество S2 —
дизъюнкты, ею удовлетворяемые. Для невыполнимого множества
дизъюнктов оба подмножества будут непустыми. В нашем примере
интерпретация / = {~| Р, 0, 'Д R} разделит исходное множе¬
ство S на Si = {P V0, PVR} и 52 = {П V П0 V
Тем самым в S2 будет блокировано резольвирование Р и 'Д-Р и обра¬
зование дизъюнкта (9).
5.4. СЕМАНТИЧЕСКАЯ РЕЗОЛЮЦИЯ
131
Другим способом ограничения количества генерируемых дизъ-
юнктов является упорядочение предикатных букв. В примере 5.16
введем следующее упорядочение: R>Q>P. В двух дизъюнктах
(один взят из S1, а другой из S2) будем резольвировать только
такую литеру дизъюнкта из Si, которая является наибольшей пре¬
дикатной буквой. В нашем примере такой буквой является R, а Р —
наименьшая предикатная буква. Это ограничение блокирует обра¬
зование дизъюнктов (6) и (8).
Таким образом, введенные нами средства: интерпретация и упо¬
рядочение предикатных букв дают возможность сгенерировать для
нашего примера только два дизъюнкта: Р V ~1-^ (5) и Р V *1 СЧ?)-
Оба эти дизъюнкта удовлетворяются интерпретацией I —
= П<?- 1Д> и поэтому отнесем их к подмножеству S2.
Повторяя эту операцию, получим дизъюнкт Р или путем резоль-
вирования (1) с (7) или (2) с (5). Дизъюнкт Р не удовлетворяет¬
ся этой интерпретацией (он ложен) и поэтому отнесем его к Si.
Но в S2 имеется дизъюнкт ~~\ Р, поэтому, резольвируя Р и ~| Р,
получим пустой дизъюнкт.
В пашем примере существует два способа получения дизъюнк¬
та Р: ((1), (2), (3)) или ((1), (3), (2)). Способы отличаются
только порядком использования дизъюнктов. Для избежания тако¬
го дублирования вводится понятие клаша. Идея клаша заключается
в генерировании дизъюнкта Р непосредственно из (1), (2) и (3)
без образования «промежуточных» дизъюнктов (5) и (7).
Определим формально семантическую резолюцию. Пусть I —
интерпретация и пусть Р — упорядочение предикатных букв. Ко¬
нечное множество дизъюнктов {Е,, Е2, ..., Er, N}, г>1 называется
семантическим клашем относительно Р и / (PI-клашем) тогда
и .только тогда, когда Еи ..., Ег (называемые электронами) и N
(называемое ядром) удовлетворяют следующим условиям:
1. Ei, Ег, Ег ложны в интерпретации I.
2. Пусть Rt = N. Для каждого i = 1, 2 ..., г существует резоль¬
вента Ri+i, образованная из R{ и Ей
3. Резольвируемая литера в Е{ является наибольшей предикат¬
ной буквой.
4. 7?г+1 ложна в интерпретации I. Rr+i называется Р1-резольвен-
той, полученной из PI-клаша {Еи ..., Ет, N).
В PI-клаше {Еи ..., Ег, N} Е, рассматривается как первый элек¬
трон, Е2 — второй, а Ег — последний. Фактически порядок электро¬
нов не является существенным. Мы можем пометить любой элек¬
трон как первый, среди оставшихся любой как второй и т. д. Не¬
зависимо от выбранного порядка мы получим одну и ту же PI-
резольвенту. Следовательно, мы можем избежать генерации одной
резольвенты многими способами.
Пусть / — интерпретация для множества дизъюнктов S и пусть
Р — упорядочение предикатных букв, появляющихся в S. Вывод
из S называется PI-вьгвоЗолг тогда и только тогда, когда каждый
9*
132
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
дизъюпкт в выводе является или дизъюнктом из S или Р1-резоль-
В0НТОЙ.
Пример 5.17. Если я поеду автобусом, а автобус опоздает,
то я опоздаю на работу. Если я опоздаю на работу и стану огор¬
чаться, то я не попадусь на глаза моему начальнику. Если я не
сделаю в срок важную работу, то я начну огорчаться и попадусь
на глаза моему начальнику. Следовательно, если я поеду авто¬
бусом, а автобус опоздает, то я сделаю в срок важную работу
(см. пример 1.6).
В символическом виде имеем
А&В-+С,
C&D^~\E,
^K->D&E,
А & В—у К,
или, на языке дизъюнктов:
1. ПИ V IB ус. 5. А.
2. П^ V ID V 1Е. 6. В.
3. К V D. 7. П К.
4. К V Е.
Пусть / = {А, В, П С, П D, ~\Е, ~\К) ж Р есть упорядо¬
чение, в котором C>D>E>A>B>K. Имеем: Е1='~\А\/
V П В v С, Е2 = к у D, Е3 = К у Е. Пусть R1 = N1= ~\С \/
V П Е V 1Е. Получаем резольвенты: R2= Н V П ^ V [ V
7?з= П А V П в V ПЯ Vtf и Д4= П ^ V ~]В\/ К. R, явля¬
ется PI-резольвентой, полученной из PI-клаша {Еи Е2, Е3, Лг1=
= П С V П# V П^}-На рис. 5.2 показан PI-вывод дизъюнкта
из S.
Интересно отметить, что в семантической резолюции можно ис¬
пользовать любую интерпретацию и любое упорядочение предикат¬
ных букв. Например, если в примере 5.17 взять / = {А, В, С, D,
Е, К} и D>C>A>B>E> К, то мы получим вывод пустого
дизъюнкта, изображенного на рис. 5.3.
Доказано, что семантическая резолюция полна. Теорема о пол¬
ноте семантической резолюции гласит: если Р — упорядочение пре¬
дикатных буке в конечном невыполнимом множестве дизъюнктов S,
а I — интерпретация множества S, то существует PI-еывоЗ пустого
дизъюнкта из S.
Рассматривая частные интерпретации, в которых каждая литера
содержит знак отрицания или его не содержит, мы придем к двум
специальным случаям семантической резолюции: положительной и
отрицательной гиперрезолюциям.
Будем называть дизъюнкт положительным, если он не содержит
знаков отрицания, и аналогично дизъюнкт называется отрицатель¬
5.4. СЕМАНТИЧЕСКАЯ РЕЗОЛЮЦИЯ
133
ным, если каждая его литера содержит знак отрицания. Дизъюнкт
называется смешанным, если он не является ни положительным,
ни отрицательным.
Шоложителъной гиперрезолюцией будем называть специальный
случай PI-резолюции, в которой каждая литера в интерпретации
I содержит знак отрицания. Положительной она называется в силу
того, что все электроны п PI-резольвенты здесь положительны.
Е-- 1A41BVC EfKVB Ej=KVE /Vr = 1CVH7VlE
f„ = icvirviE £2=ik n^kvb
Для примера 5.17 при интерпретации 1 = {~\А, “] В, С, ~| D,
П Е, К) и упорядочения А> В> С> К> Е> D вид положи¬
тельной резолюции представлен на рис. 5.4.
Отрицательной гиперрезолюцией называется специальный случай
PI-резолюции, в которой каждая литера в интерпретации I не со¬
держит знака отрицания. В отрицательной гиперрезолюции все
электроны и PI-резольвенты являются отрицательными дизъюнкта¬
ми. Пример отрицательной гиперрезолюции был изображен на
рис. 5.3.
134
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
■ Из полноты семантической резолюции следует полнота положи¬
тельной и отрицательной гиперрезолюций.
Рассмотрим другую специализацию семантической резолюции.
Вспомним, что для доказательства того, что формула В логически
следует из формул Аи А2, ..., А„, мы доказывали невыполнимость
формулы А1 & А, & .. . & Ап & ^ В. Так как посылки А„ А2, ...
Е^КУП «,= !/< Е2=КУЕ Ej=A Е^ = в N2 = UV1B'/C
..., Ал всегда выполнимы, то естественно запретить резольвиро-
вание литер в А± & А2 & .. . & Ап. Таким образом, пусть S — ко¬
нечное невыполнимое множество дизъюнктов и 5, есть подмно¬
жество S такое, что S — St выполнимо. Так как S — Sl выполнимо,
то существует интерпретация /, которая удовлетворяет дизъюнктам
множества S — St. Выберем данную интерпретацию. Пусть Р — лю¬
бое упорядочение предикатных букв в S. На основании полноты
PI-резолюции можно утверждать, что
при выбранных Р и I существует вы¬
вод пустого дизъюнкта из S. Рассмотрим
каждый PI-клаш {Еи Е2, ..., Er, N).
По определению PI-клаша электроны
ложны в /, поэтому ни один дизъюнкт из
S — St не является электроном. Р1-ре-
зольвента этого клаша может быть полу¬
чена как результат последовательных би¬
нарных резолюций Ei и N, затем Ег и
резольвенты, полученной на предыдущем
шаге и т. д. Таким образом, в каждой
бинарной резолюции одновременно оба
резольвнруемых дизъюнкта не принадле¬
жат множеству S — St.
Резолюция, удовлетворяющая данному требованию, называется
резолюцией множества поддержки, а множество St — множеством
поддержки.
Выводом множества поддержки называется вывод, в котором
каждая резолюция является резолюцией множества поддержки.
Из приведенного рассуждения и полноты Р I-резолюции следу¬
ет, что стратегия множества поддержки полна.
А В ТА VIBVC
5.5. ЛИНЕЙНАЯ РЕЗОЛЮЦИЯ
135
Для примера 5.17 вывод множества поддержки изображен на
рис. 5.5. Здесь = {А, В, ~| К), I = { ~j A, В, ~] С, D, Е, К} и Р =
= Л >B>C>K>D>E.
5.5. Линейная резолюция
Линейная резолюция была предложена независимо друг от дру¬
га Д. Лавлендом и Д. Лакхемом.
Линейным выводом пз множества дизъюнктов S называется по¬
следовательность дизъюнктов (Ci, С2, ■ ■Сп), в которой Ci^S,
а каждый член Ci+(, i = 1, 2, ..., п — 1, является резольвентой дизъ¬
юнкта Ci (называемого центральным дизъюнктом) и дизъюнкта В{
(называемого боковым дизъюнктом), который удовлетворяет одно¬
му из двух условий (см.
рис. 5.6): 1. Bi^S. 2. В{ явля- ь1 < п R pvir
ется некоторым дизъюнктом С,,
предшествующим в выводе
дизъюнкту С,, т. е. j < i.
Пример 5.18. Пусть S =
= {Р у R, ~\Р у R, Р V "|Д,
Д Р V —(Щ- Тогда линейный
вывод пустого дизъюнкта пз
S представлен на рис. 5.7. От-
метим, что из четырех боковых
дизъюнктов три принадле¬
жат S и только один Р являет- Рис. 5.6
ся центральным дизъюнктом.
Отсюда очевидно, что невозможно построить линейный вывод
пустого дизъюнкта, если в качестве боковых дизъюнктов брать толь¬
ко дизъюнкты из S, хотя в этом случае мы имели бы довольно
эффективное и простое правило вывода. Назовем дизъюнкты мно¬
жества S входными дизъюнктами. Тогда резолюция, у которой хотя
бы один из 'дизъюнктов при резольвировании является входным,
называется входной резолюцией. Входная резолюция проста, эф¬
фективна, но к сожалению, как было видно из примера 5.18,
не полна.
Однако линейная резолюция, как она была нами определена,
полна, и этот факт устанавливается следующей теоремой: Множе¬
ство дизъюнктов невыполнимо тогда, и только тогда, когда суще¬
ствует линейный вывод пустого дизъюнкта.
Линейная резолюция может быть существенно усилена введе¬
нием понятия упорядоченного дизъюнкта и использованием инфор¬
мации о резольвированных литерах.
Идея упорядочения дизъюнктов заключается в рассмотрении
дизъюнкта как последовательности литер, а не как множества ли¬
тер. Отсюда упорядоченным дизъюнктом будем называть дизъюнкт
с определенной последовательностью литер.
136
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ' ВЫВОДА
Говорят, что литера L2 старше литеры Li в упорядоченном дизъ¬
юнкте тогда и только тогда, когда L2 следует за L4 в последова¬
тельности, определенной упорядоченным дизъюнктом. Отметим, что
старшая (наибольшая) литера дизъюнкта является последней ли¬
терой дизъюнкта, а младшая литера — первой. Например, в упо¬
рядоченном дизъюнкте P(a)VP(6)VP(c) Р(с) является старшей
литерой, а Р(а)— младшей.
Если две или больше литер (с одинаковыми знаками) упорядо¬
ченного дизъюнкта С имеют НОУо, то упорядоченный дизъюнкт,
полученный из последовательности Со вычеркиванием любой ли¬
теры, идентичной младшей литере, называется упорядоченным фак¬
тором дизъюнкта С.
Пусть имеется упорядоченный дизъюнкт
C = P(x)V R(x)V Р(а),
тогда о = {а/х} и Со = Р(a)V Л (а) V Р(а). Здесь имеются две иден¬
тичные литеры Р(а). В соответствии с определением младшей ли¬
терой считается литера, расположенная левее. Для получения упо¬
рядоченного фактора надо из Со удалить литеру, идентичную
младшей литере. В нашем примере это последняя литера. Следо¬
вательно, упорядоченным фактором будет последовательность ли¬
тер: Р (а) V R(a).
Отметим, что связывание понятия упорядоченных дизъюнктов
с линейпой резолюцией но нарушает ее полноты, что, к сожалению,
имело место для семантической резолюции, но существенно уве¬
личивает эффективность метода.
Другим усилением линейной резолюции является использование
информации о рсзольвированных литерах. Обычно при выполнении
резолюции образование резольвенты происходит путем удаления ре-
зольвированных литер. Однако оказывается, что эти литеры 'несут
полезную информацию, которая может быть использована для уси¬
ления линейной резолюции.
Вернемся к примеру 5.18. Мы видим, что один из боковых
дизъюнктов (дизъюнкт Р) не является входным дизъюнктом. Было
бы полезно найти необходимое и достаточное условие, при котором
центральный дизъюнкт, полученный ранее, становится боковым.
Это условие может быть определено, если используется понятие
упорядоченных дизъюнктов и соответствующим образом записыва¬
ется информация о резольвированных литерах. Вывод, использую¬
щий оба эти понятия называется линейным упорядоченным выво¬
дом (OL-выводом).
Таким образом, сначала образуем резольвенту для упорядочен¬
ных дизъюнктов. Пусть С, и С2 — упорядоченные дизъюнкты. Упо¬
рядоченная бинарная резольвента дизъюнктов С, и Сг (не имею¬
щих общих переменных) определяется следующим образом. Пусть
Lx и Ь2 = — литеры s С, и С, соответственно. Если Т, и Lt
имеют НОУо и С есть упорядоченный дизъюнкт, полученный из
5.5. ЛИНЕЙНАЯ РЕЗОЛЮЦИЯ
137
конкатенации последовательностей Cta и С2а путем удаления £{сг
и Ь2о и вычеркивания из оставшейся последовательности любой
литеры, которая идентична младшей литеры последовательности,
то С называется упорядоченной бинарной резольвентой.
Например, если Cl = Р (х)\/ Q (x)\J ~\R (х) и Сг = —| Р (а) \/
V Q (я) — упорядоченные дизъюнкты, то конкатенация Сщ и С2о,
где а — {а/х), дает последовательность Р (а) V Q (®) V "~]-^(a)V
\J ~}Р (а) V <?(«)• Удалив Р{а) и ~]Р{а), а также старшую
литеру Q(a), получим упорядоченную бинарную резольвенту
С — (? (а) V “!*(«)■
Теперь вместо удаления обеих резольвированных литер будем
оставлять в резольвенте первую пз них, но помечать ее особым об¬
разом. Мы будем записывать резольвиро-
ванные литеры в рамке и называть их
обрамленными литерами. Если за обрам¬
ленной литерой не следует никакая дру¬
гая литера, то ее будем вычеркивать. Та¬
ким образом, продолжая вышеупомяну¬
тый пример, получим следующую упоря¬
доченную резольвенту:
PV1R о
JOPVR
Р йг
J31PVR
\P\VR СГ
niPVIR
0V0V1P Сг
Р(а) \/Q(a) V 1 R(a).
Возвращаясь к примеру 5.18, получим
линейный упорядоченный вывод, пред- Рис. 5.8
ставленный на рис. 5.8.
Рассмотрим на этом рисунке подчеркнутую резольвенту. Отличи¬
тельной чертой этой резольвенты является то, что в нее входит
литера ~1Р, являющаяся дополнением к обрамленной литере [ Р
Данное обстоятельство и является указанием на необходимость
использования центрального дизъюнкта Р в качестве бокового. Ре-
зольвируя LlMjlIv с р’ мы получим | Р | V | | V I ~I -И-
Так как за этими обрамленными литерами не следует никакой дру¬
гой литеры, то вычеркивая их, получаем пустой дизъюнкт □.
Упорядоченный дизъюнкт С будем называть приведенным упо¬
рядоченным дизъюнктом тогда и только тогда, когда последняя
литера С унифицируется с отрицанием некоторой обрамленной ли¬
теры в С.
Таким образом, при получении приведенного упорядоченного
дизъюнкта нет необходимости искать, с каким из полученных ра¬
нее дизъюнктов он образует линейную резолюцию. Вместо этого
можно просто вычеркнуть последнюю литеру в этом упорядочен¬
ном дизъюнкте. Будем называть это вычеркивание операцией при¬
ведения (редукции). Операция приведения позволяет не запоми¬
нать в OL-выводы промежуточных дизъюнктов. Эта особенность
138
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
OL-вывода делает его очень удобным для реализации на вычисли¬
тельной машине. Операцию вычеркивания обрамленных литер, за
которыми не следуют пикакие другие литеры, будем называть опе¬
рацией сокращения.
Приведенный упорядоченный дизъюнкт образуется применением
операций приведения и сокращения. Упорядоченная бинарная ре¬
зольвента упорядоченных дизъюнктов С, и С2 получается конкате¬
нацией последовательностей Сщ и С2с, где а есть НОУ для литер
Li и Ь2 = “] Lx в Ci и Сг соответственно путем:
1) заключения в рамку Lie;
2) вычеркивания Ьга;
3) вычеркивания любой необрамленнон литеры, которая иден¬
тична младшей необрамленной литере последовательности;
4) применения операции сокращения.
Теперь формально определим OL-вывод. Пусть дано множество
упорядоченных дизъюнктов S и упорядоченный дизъюнкт С\ из S.
Линейный вывод дизъюнкта Сп из 5 с начальным дизъюнктом Ci
называется OL-выводом, если выполнены следующие условия:
1. Для i = l, 2, ..., га —1, Ci+l является упорядоченной резоль¬
вентой дизъюнкта Ci (называемого центральным упорядоченным
дизъюнктом) и дизъюнкта 5, (называемого боковым упорядочен¬
ным дизъюнктом); при этом резольвированная литера в Ci (или
в упорядоченном факторе С,) является последней литерой С,-.
2. Bi является или некоторым дизъюнктом Cj, / < i (если С,- есть
приведенный упорядочепный дизъюнкт), или дизъюнктом из S (во
всех остальных случаях). Если В( есть некоторый дизъюнкт С],
/ < i, то С;+1 является приведенным упорядоченным дизъюнктом.
3. В выводе нет тавтологий.
Определение упорядоченного дизъюнкта может быть использо¬
вано для доказательства следующего утверждения:
В OL-выводе, если Ct есть приведенный упорядоченный дизъ¬
юнкт, то существует центральный упорядоченный дизъюнкт Cj,
} < i такой, что приведенный упорядоченный дизъюнкт С(+.i, по¬
лученный из Сц является упорядоченной резольвентой Ct и С}.
Следующая теорема устанавливает полноту OL-резолюции, ко¬
торую мы приводим без доказательства (Лавленд, Ковальский,
Кюнер).
Теорема о полноте OL-резолюции: если С есть упорядоченный
дизъюнкт в невыполнимом множестве упорядоченных дизъюнктов
S и если S — {С} выполнимо, то существует OL-опровержение из S
с начальным упорядоченным дизъюнктом С.
Легко показать, что резолюция множества поддержки является
следствием OL-резолюции, т. е. полнота OL-резолюции гарантирует
полноту резолюции множества поддержки.
Рассмотрим пример реализации OL-резолюции.
Пример 5.19. Преподаватели принимали зачеты у всех сту¬
дентов, не являющихся отличниками. Некоторые аспиранты и сту-
5.5. ЛИНЕЙНАЯ РЕЗОЛЮЦИЯ
139
денты сдавали зачеты только аспирантам. Ни один из аспирантов
не был отличником. Следовательно, некоторые преподаватели были
аспирантами.
Пусть С(х), О(х), Р(х), А(х) и S(x, у) означают «х есть сту¬
дент», чх есть отличник», «х есть преподаватель», «х есть аспи¬
рант» и чх сдает зачеты у». Тогда на языке исчисления предика¬
тов имеем
Дерево OL-вывода пустого дизъюнкта изображено на рис. 5.9.
Для иллюстративных целей мы выбрали не самый короткий
путь доказательства. Здесь можно было бы ограничиться частным
WCx)VlA(x)
lC(X)VD(x)VS(x,f(X))
IWaJlviC(a)VS<a,f(a)) У
lS(a,y)VA(y)
[l 0(a)} v 1 СШ \S(a,f(a)j VA(f(a))
IPix)VU(x)
|Жа)|У1 C(a)v|5(o/(g))|v \A(f(a)iviP(f(a)) <x"°
1 C(x)VO(x)VP(f(x))
|TP("o)lviCta)v|S(g,f(Q))lvlA(f(Q))|v[TP(f(a))lvp(g)jr^0
10(a)
\lO(a)\y 10(a) r
0(a)
Рис. 5.9
Vx(C(x)& "1 Q(x)-+3y(P(y)&S{x, y)))
Зх (A (x) & С (x) & У у (S (x, y) A (y)))
Ух (A (x)^-\0(x))
3 x(P {x)&A{x))
или, в стандартной форме:
1. -\С{х)У0(х)\/РЦ{х)).
2. ~-\C(x)\J 0(x)\J S(x,f(x)).
3. С (а).
4. А (а).
5. -]S(a,y)VA(y).
6. ПО(х)\/ ЧА(х).
7. ~]P(x)V 1А(х).
140
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
случаем линейной резолюции — входной резолюции и построить
более короткий вывод. Желающие могут сделать это в качестве
упражнения.
Отметим, что OL-вывод успешно конкурирует практически со
всеми методами за счет простоты организации поиска. Простота
эта объясняется тем, что не нужно запоминать промежуточные
дизъюнкты, а также тем, что здесь всегда определен один из ре-
зольвируемых дизъюнктов.
5.6. Другие модификации принципа резолюции
Рассмотрим методы доказательства теорем, основанные на аб¬
стракции (Д. А. Плейстид, 1981). Для этого будем использовать
идею аналогии, заключающуюся в общих словах в том, что данная
проблема А преобразуется в более простую проблему В. Далее,
если А имеет решение, то и В также имеет решение, причем одно
из решений для В будет иметь структуру, аналогичную структуре
решений для А. Поэтому мы можем использовать решение для В
как руководство в поиске решений для А. Конечно, может слу¬
читься, что В может иметь решения, даже если А их не имеет.
Как и раньше, будем говорить, что дизъюнкт Ct поглощает
дизъюнкт С2, если имеется подстановка 0 такая, что Ci0 является
подмножеством С2 (т. е. С$^С2). Дизъюнкты С и D варианты,
если они являются примерами друг друга, т. е. С и D те же самые,
за исключением переименования переменных.
Абстракцией будем называть соотнесение множества дизъюнк¬
тов /(С) с любым дизъюнктом С таким, что / обладает следующи¬
ми свойствами:
1. Если дизъюнкт Сг является резольвентой дизъюнктов С, и
С2 и Л3е=/(С3), то существуют Л1е/(С1) и D2^j(C2) такие, что
некоторая резольвента дизъюнктов Л, и Л2 поглощает Л3.
2. /(□) = {□}.
3. Если С, поглощает Л2, то для любой абстракции Л2 для С2
имеется абстракция Л, для Ct такая, что Л, поглощает Л2.
Если / является отображением, обладающим этими свойствами,
то будем называть / отображением абстракций. Если
то назовем D абстракцией дизъюнкта С. Абстракции обычно удов¬
летворяют свойству, что любой D в /(Л) является тавтологией,
если С — тавтология.
Д. А. Плейстид доказал две теоремы, дающие достаточно общий
метод конструирования абстракций. Мы приведем их без до¬
казательства.
Теорема 5.1. Предположим, что Ф является отображением ли¬
тер на литеры. Расширим Ф до отображения дизъюнктов на
дизъюнкты с помощью Ф(Л) = {Ф(А): Lef}. Пусть Ф удовлет¬
воряет следующим двум свойствам:
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
141
1. ф(1[Ь)= j Ф (i), т. е. Ф сохраняет свойство дополнения.
2 Если С и D — дизъюнкты и D является примером С, то
Ф(Ю) является примером Ф(С), т. е. Ф сохраняет свойство спе¬
циализации.
Тогда Ф является отображением абстракции или более точно
f является отображением абстракции, где }(С)={Ф(С)}.
Следующая теорема дает более общий результат.
Теорема 5.2. Предположим, что F является множеством ото¬
бражений литер на литеры. Предположим также, что для всех
ф ef и для всех литер L Ф ( | L) = Ф (L). Если С — дизъюнкт,
то пусть, как обычно, Ф(С)={Ф(£): tsC}. Предположим, что,
если дизъюнкт D является примером дизъюнкта С, то для всех
ф2еЕ существует Ф4еЕ такое, что Ф2(И) является примером
ФДС). Определим / через f(C)=^(C): фе?}. Тогда f является
отображением абстракции.
Используя эти теоремы, мы может теперь строить абстракции.
Приведем примеры построения таких абстракции.
Примеры синтаксических абстракций.
1. Фундаментальная абстракция. Если С — дизъюнкт, тогда
f{C) — {C':C' является фундаментальным примером для С}. Заме¬
тим, что /(С) обычно состоит из бесконечного множества дизъ¬
юнктов.
2. Пропозициональная абстракция. Если С — дизъюнкт вида
{Lh Ьг, ..., LJ, тогда f(C) есть {С'}, где С' — дизъюнкт вида
Ьъ Ь’2, . .., b'h} и L\ для 1 < i < к определяется следующим об¬
разом: если Li находится в виде P(t,. 1г, ..., tn), то Lj есть Р.
Если Ь{— в виде ~] Р (tx, t2, ..., tn), то L\ есть ~| Р. Таким
образом, }(С) является множеством дизъюнктов в исчислении вы¬
сказываний.
3. Переименование предикатных и функциональных символов.
Для дизъюнкта С f(C) = {С'}, где С' есть дизъюнкт, в котором все
функциональные и предикатные символы дизъюнкта С переимено¬
ваны некоторым систематическим образом- Переименование может
не быть взаимно однозначным: два различных предикатных или
функциональных символа могут быть переименованы в один и тот
же символ. Однако предикатный и функциональный символы не
могут быть переименованы в один и тот же символ.
4. Изменение знаков литер. Пусть Q — множество предикатных
символов. Если С — дизъюнкт вида {L,. L2, ..., LJ, то f(C) есть
{Cl, где С' — дизъюнкт вида [Llr L2, ...,Lk) и L\ определя¬
ется для 1 i к следующим образом: если L; — типа P{ti, t2, ...
• •tn} и P^Q, тогда Li есть ~| Р (tv i.„ ..., tn). Если Li— типа
1Р(и, t2,...,tn) и P<=Q, тогда L\ есть P{tu t2, ..., tn). В про¬
тивном случае Li есть Li.
142
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
5. Перестановка аргументов. Для дизъюнкта С f(C) = {С'}, где
С' есть С с упорядочиванием некоторых функциональных или
предикатных символов, переставленных некоторым систематиче¬
ским образом-
6. Вычеркивание аргументов. Для дизъюнкта С f(C) = {С'),
где С' есть С с вычеркнутыми некоторыми аргументами. Например,
g(ti, t2, ..t,,) может быть заменен на g(t2, t3, ..tn). Заметим,
что пропозициональная абстракция является специальным случаем
этой абстракции.
Пример семантической абстракции. С каждым дизъюнктом С мы
связываем множество дизъюнктов }(С) следующим образом.
Пусть I — интерпретация множества дизъюнктов на некотором
множестве функциональных и предикатных символов. Пусть /?х —
область интерпретации I. Интерпретация I может трактовать равен¬
ство как любой другой предикатный символ, т. е. а, = а2 будет
истинным в I, если даже а, и а2 являются различными элемен¬
тами Di.
С каждой фундаментальной литерой вида P(tu t2, ..., tn) мы
связываем литеру Р(аь а2, ..., а„), где a,^Di и at яв¬
ляется значением U в интерпретации I. С литерой t2, ...
..., tn) мы связываем <-| Р (аг, а2, ..., а„).
С каждым фундаментальным дизъюнктом С = {L\, L2, .. ., Lh}
мы связываем С' = [Lt, Ь2, . .., Lh\, где /д связывается с Li, как
было сказано выше. Если С i — произвольный дизъюнкт, тогда
f(Cl) = {D: D связывается с С для некоторого фундаментального
примера С дизъюнкта CJ. Назовем / /-абстракцией или абстрак¬
цией, полученной из I.
Пусть / — обычная интерпретация арифметики. Тогда с дизъ¬
юнктом {~] (х <1 у), ~] (у <1 z), х <1 z} мы связываем дизъюнкты {~](1^
<2), П(2<3), 1<3}, П(1<5), П(5<2), 1<2},{П(8<7), П(7<
<!6), 8^6} и т. д. Дизъюнкты f (C) будут истинны в I, если С
истинен.
Покажем, каким образом абстракции могут помочь в поиске
доказательства дизъюнкта С из множества дизъюнктов S. Если /
есть отображение абстракции и S — множество дизъюнктов, тогда
запись f(S) означает U{/(C): C^S).
Приведем теорему, которая важна тем, что доказательство не¬
которого дизъюнкта из j(S) дает нам структуру возможного дока¬
зательства из S.
Теорема 5.3. Пусть S — множество дизъюнктов и /—отбраже-
ние абстракции для S. Пусть С' — дизъюнкт, выводимый из S
путем резолюции, и D'^f(C'). Тогда имеется дизъюнкт В',
выводимый из f(S) путем резолюции такой, что В' погло¬
щает D'.
Следствие. Если S противоречиво, то противоречиво и f(S).
Пример 5.20. Рассмотрим следующее доказательство (см.
рис. 5.10).
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
143
Возьмем пропозициональную абстракцию. Тогда доказательство
с помощью этой абстракции или сокращенно абстрактное доказа¬
тельство будет представлено на рис. 5.11.
Пример 5.21. Рассмотрим следующее доказательство (см.
рис. 5.12).
Тогда доказательство с помощью пропозициональной абстрак¬
ции будет иметь вид, представленный на рис. 5.13.
Здесь имеет место потеря литеры ~]Р(Ь).
1 P(X>VIZ(X)VR(X) Р(&) IP V# VR
Рис. 5.10 Рис. 5.11
Доказательством Т с помощью резолюции будем называть ко¬
нечное множество вершин совместно с множеством троек этих
вершин. Каждая вершина N имеет метку (пишем LA(iV)), пред¬
ставляющую собой дизъюнкт. Никакие две различные метки вер-
шип из Т не могут быть вариантны, но один и тот же дизъюнкт
может быть отмечен более, чем одной вершиной из Т. Если
<Ду, N2, N3> — тропка вершин из Т, то пусть LA (А3) есть резоль¬
вента LA (Ni) и LA(A2). Пусть множество троек из Т обознача¬
ется через Res (Г), а множество вершин — через Nod (Г)- Каждую
тройку вершин назовем резолюцией.
Вершина из Т, не являющаяся третьей компонентой тройки,
называется начальной вершиной, а метка, ей соответствующая, на¬
чальным дизъюнктом. Далее, вершина, не являющаяся первой и
второй компонентой тройки, называется терминальной вершиной
из Т, и метка такой вершины — терминальным дизъюнктом. И на¬
конец, пусть глубина вершины N (обозначается как d(N)) опре¬
деляется следующим образом:
144
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
а) d (N) = 0 для всех начальных вершин N из Г;
б) d(N) — l + min{max(d(iV1), d(N2)): <N{, Nz, Ю e Res (Г)}.
Отсюда видно, что доказательство не имеет циклов. Иногда
будем ссылаться на тройку {Nu N2, N3> как на (Си С2, С3>, где
Ci — LA (А,), С2 = LA(A2) hC3 = LA(A3).
Запись А : С означает, что С — метка вершины N.
Пример 5.22. Пусть имеем доказательство (см. рис. 5.14).
Здесь Ni, Л'2 и Л'3 — начальные вершины, которым соответству¬
ют начальные дизъюнкты. Терминальной вершиной является вер¬
шина N5 с терминальным дизъюнктом Р3. Глубина Nu N2 и N»
равна нулю, глубина Л'4 — единице, а глу¬
бина Nb равна двум, т. е. глубина доказа¬
тельства Т в этом случае равна двум.
Пусть Ti и Т2— два доказательства
резолюции. Тогда Т{ с: Т2 означает, что
Res(ri) является подмножеством Res(Т2),
a Nod(Ti) — подмножеством Nod (Гг). На¬
зовем Ti частью доказательства Т2.
В примере 5.22 <А), N2, А4> и <iV4, N3, Аб>
являются частями доказательства Рг. Если
терминальный дизъюнкт С доказатель¬
ства Т единственен, то С является ре¬
зультатом этого доказательства и обозначается через Result(T’).
Пусть Т — доказательство резолюции из исходного множества
дизъюнктов S. Будем говорить, что Т — минимальное доказатель¬
ство резолюции из S, если:
1) Т имеет только одну терминальную вершину и
2) для каждой неначальной вершины N из Т имеются верши¬
ны Ni п N2 из Т такие, что (Nu N2, N"> ^Res(T) и <N2, Nu A> e
eRes^) и никакие другие тройки вершин из Т не имеют N в
качестве третьей компоненты.
Таким образом, Т — минимальное доказательство дизъюнкта С
из S, если Т — минимальное доказательство из S и Result(T’) = С.
Приведем два примера неминимальных доказательств (см.
рис. 5.15 и 5.16).
Пример 5.23. S = {“) Ръ Рг \J Р.г, “| Р2}.
Имеем две терминальные вершины.
Пример 5.24. S = {Рг, ~]Р X\J Р2, ~~| Р3, Р3 \/ Рг}-
Имеем две различные резолюции.
Пусть Т н Т' — два доказательства резолюции. Тогда будем го¬
ворить, что Т н Т' имеют одну и ту же форму, если имеется от¬
ношение ~ между вершинами в Т и Т' такое, что оно обладает
следующими свойствами:
1. Для всех вершин N пз Т существует вершина N' из Т' та¬
кая, что N ~ N\ и, наоборот, для всех вершин N' из Т' существует
вершина N из Т такая, что N ~ N'.
2. Пусть <Nt, JV2, N3} — резолюция из Т (т. е. элемент Res(I’))
N^.Rj Ы2ПР1ЧР2
N5:P3
Рис. 5.14
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
145
и (N'i, JV2, А3)—резолюция из Т'. Пусть А3 ~ А3. Тогда или Aj ~-
~ А^ и А2 ~ Лт'2 пли N1 ~ N2 и А2 ~ Н[ и они истинны, если
Ni = N2 или N[ = Nt.
3. Пусть А — вершина из Т и А' — вершина из Г и JV~ А'.
Тогда А является начальной вершиной в Т тогда и только тогда,
когда А' является начальной вершиной в Т'. Аналогично А —тер¬
минальная вершина в Т тогда и только тогда, когда А' — терми¬
нальная вершина в Т'.
Рис. 5.15 Рис. 5.16
4. Отношение ~ является взаимооднозначным отношением ме¬
жду терминальными вершинами из Г и Т'.
Назовем отношение ~ соответствием формы между Т и Т’~
Свойство (1) соответствия формы является на самом деле логиче¬
ским следствием свойств (2), (3) и (4). Основная идея соответст¬
вия формы заключается в том, что если Г и Г выражены в ка¬
честве множеств деревьев доказательства резолюции, тогда эти
множества деревьев будут иметь одну и ту же форму (игнорируя
метки вершин на деревьях). Пишем Т ~ Т', если отношение ~
является соответствием формы между Т и Т'. Заметим, что это
отношение является отношением эквивалентности. Очевидно, что
если Т ~ Т', то глубины Т и Т' равны.
Рассмотрим пример соответствия формы между доказательства¬
ми, имеющими различную «структуру» (см. рис. 5.17).
Пример 5.25. Здесь следующие вершины связаны соответ¬
ствием формы:
т
Г
т
Г
Хг
х„ А13
Хъ
Х1в
х2
^1о> Xгг
X6
Хп
х3
х12
а7
х19
Хг
Xп, А15
^8
Хц
Расширим отношение ~ между Г и Г' до отношения между
резолюциями из Т и Т' следующим образом. Пусть <А,, N2, А3> е
е Res (Т) и {Ац А2, A3)<=Res (Т'). Тогда говорят, что <АХ, А2, А3> ~
Ю В. Н. Вагин
146
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
~ (А'\, А2, А3), если Ац Ац, А\, \'2 и А3 Аг3 или Ах —- N',,
А2 ~ N[ и а3~а;.
Если Тi и 1\ — доказательства резолюции и отношение ~ яв¬
ляется соответствием формы между Т4 и Т2, тогда говорят, что
Сi ~ С2 тогда, и только тогда, когда существует вершина Nt из h
и вершина N2 из Г2 такие, что C^LAfAA п C-, = LA(A2) и
A, ~N2.
Рис. 5.17
Пусть R — бинарное отношение на дизъюнктах. Расширим R
до бинарного отношения на доказательствах резолюции U и U'
следующим образом: R(U, U') истинно тогда и только тогда, когда
U я U' имеют ту же самую форму и существует соответствие
формы ~ между U и U' такое, что С ~ С' влечет R(C, С') для
всех дизъюнктов С в U и всех дизъюнктов С' в V.
Пусть R1 и R% — бинарные отношения на дизъюнктах, a U ц
U' — доказательства резолюции. Тогда говорят, что (Ru R2)
(U, U'), если имеется соответствие формы ~ между U и U' та¬
кое, что
а) если А — начальная вершина U и А' — начальная вершина
U' и А ~ А', то /?t(LA(A), LA (А')) истинно;
б) если А—неначальная вершина U и А' — неначальная вер¬
шина U' и А ~ А', то RZ(LA(N), LA (А')) истинно.
В примере 5.25 R(U, U') будет истинно, если истинны R(Ci,Cs),
R(Ci, С и), R(C2, R(C2, Сп), R(C3, С is) и т. д. Аналогично
(Ri, R2) (U, U') будет истинно, если истинны Ri(Ci,C9), Ri {Си С13),
Ri(C2, Сю), Ri(C2, Сц), Ri(Cз, Cl2), R1 (С3, Сю), а также /?2(С4, Си),
Ri(Cit Сю), R2(Cs, Сп) и т. д.
Пусть R — отношение равенства, т. е. R(Ci, С2) истинно тогда
и только тогда, когда С, и С2— те же самые дизъюнкты. Говорят,
Ь.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
147
что доказательства U и U' изоморфны тогда и только тогда, когда
R(U, U') истинно.
Таким образом, изоморфные доказательства имеют одинаковые
дизъюнкты в соответствующих вершинах, хотя их структура мо¬
жет несущественно отличаться. Заметим, что изоморфные доказа¬
тельства имеют одну и ту же глубину.
Рассмотрим теперь процедуру доказательства теорем, основан¬
ную на абстракциях. Пусть Т — доказательство дизъюнкта С' из
S и П'е/(С"), где /— отображение абстракции на множество
дизъюнктов S.
Согласно теореме 5.3 имеется доказательство U из f(S) неко¬
торого дизъюнкта В', поглощающего D'. Часто оказывается, что
Т и U имеют одну и ту же форму. Поэтому путь поиска доказа¬
тельства дизъюнкта С' из S заключается в поиске доказательств
U некоторого дизъюнкта В’ из f(S) и в нахождении доказатель¬
ства Т дизъюнкта С' из S, которое имеет ту же самую форму, что
и доказательство U.
Имеем /—отображение абстракции. Пусть Bt(B, С)—отноше¬
ние B^f(C) и В2(В, С)—отношение «В поглощает элемент из
/(С)». Будем писать T-*-U, означающее, что доказательство U
является абстракцией доказательства Т посредством / или
(/?,, B2)(U, Т). В примере 5.20 дано доказательство Т, имеющее
абстракцию доказательства U такое, что T-^U, где /—пропо¬
зициональная абстракция. Однако это неверно для примера 5.21.
Д. Плейстид предложил процедуру абстрактного доказательства
U, с помощью которой пытаются найти доказательство Т такое,
что T-*-U.Он назвал эту процедуру «ndfind».
Пусть S — множество дизъюнктов и U — доказательство из
f{S). С каждой вершиной N в U процедура «ndfind» сохраняет
множество дизъюнктов, принадлежащих N, причем имеется началь¬
ная часть доказательства U1 из U и минимальное доказательство
из S такое, что и С = Result (7\), а N — единственная
терминальная вершина из £7,. Опишем процедуру.
procedure ndfind (U, S, f);
(полагаем, что для всех начальных вершин N из U дизъюнкты
(N) = {C^S: LA (N)^f(C)} ii дизъюнкты (Д') = 0 для неначаль¬
ных вершин N пз U).
loop
while (существуют вершины iV,, N2, N из U и дизъюнкты С,, С2,
С такие, что
1. <А„ А2, Ю е Res (Н).
2. С, е= дизъюнкты (Ад) и С2 е= дизъюнкты (N2).
3 .С — резольвента для С, и С2.
10*
148
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
4. С Ф дизъюнкты (N).
5. LA(N) поглощает элемент из /(С));
добавить С к дизъюнктам (N);
repeat
end, ndfind.
Пусть Z — доказательство резолюции, образованное процедурой
ndfind. Нетрудно показать, что Z — наименьшее доказательство
(вплоть до изоморфизма), удовлетворяющее следующему условию:
если U, — начальная часть доказательства U и W’i — доказатель¬
ство из S такое, что W1-*~U1, тогда W1 изоморфно начальной ча¬
сти доказательства Z.
Пусть мы ищем доказательство дизъюнкта С из множества
дизъюнктов S, используя абстракцию /. Для этого мы выбираем
D' в f(C) и выполняем следующие шаги для d = 1, 2, 3, ... до
тех пор, пока не будет найдено доказательство дизъюнкта С'. Та¬
ким образом, имеем:
1. Пусть V — множество доказательств резолюций глубины d
пз f(S).
2. Пусть Vi — начальная часть доказательства V, содержащая
все резолюции, которые содействуют доказательству глубиной d
некоторого дизъюнкта, погло¬
щающего D'. Заметим, что Ft
может иметь более, чем одну
терминальную вершину.
3. Инициализировать дизъ¬
юнкты (N) для вершин N из Vu
как требует процедура ndfind.
4. Процедура ndfind (Vu
S, /).
Д. Плейсид назвал эту про¬
цедуру «proofsearch 1».
Пример 5.26. Пусть S = {~| Р (х) \/ Д Q (х) \/R(x), Р (х), Q(a)} и
/ — пропозициональная абстракция. Необходимо найти доказатель¬
ство дизъюнкта R (а) из S.
Образуем доказательства из f(S) некоторого дизъюнкта, погло¬
щающего R, и затем применяем процедуру «ndfind». f{S) =
= {-] Р V 1 <? V *?}• Полагая, что глубина доказательства
равна двум, получаем следующее абстрактное доказательство, пред¬
ставленное на рис. 5.18.
Чтобы использовать «ndfind», установим сначала дизъюнкты
(Ni), равными (Р(х)} дизъюнкты (N2) — (~j Р (x)\J ~] Q(x) \J R (я)},
а дизъюнкты (N3) равными {@(а)}, в то время как дизъюнкты
вершин (Ni), (N5) и (Ns) равны пустому множеству.
При выполнении «ndfind» добавим V R (х) к дизъюнктам
(Nk), ^~\P(a)\/R(a) к дизъюнктам (Ns) ж R (а) к дизъюнктам
Рис. 5.18
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
149
(Л’6). Таким образом, R(a) будет получен двумя различными путя¬
ми из S с помощью резолюции.
Однако процедура «ndfind» не полна. Проиллюстрируем это
простым примером.
Пример 5.27. Пусть S ={~\Р (а)\/ ~\Р (Ь)\/ Q(c), P(b)\/R (d),
Р(а)}. Используем пропозициональную абстракцию. Нам необхо¬
димо найти доказательство дизъюнкта Q(c)W R(d).
На рис. 5.19 дано абстрактное доказательство U глубиной 1.
При выполнении «ndfind» будут образованы ~] Р (Ъ) \/ Q (с) в
вершине ЛД и ~] Р{а) \J Q{c) \J R (d) в вершине N5, а дизъюнкт
Q(c) V R(d) не образуется. В то же время очевиден вывод этого
дизъюнкта из S.
Для преодоления этого существенного недостатка введем по¬
нятие мультидизъюнкта, в котором одна и та же литера встречает¬
ся более, чем один раз.
Пусть мультимножество М есть множество S вместе с функцией
g, отображающей S в множество положительных целых чисел. Бу¬
дем ссылаться на S как на Set (М) и „ „
с / \ N : Р N„:1PVQ N,:PVP
для х^Ь g(x) обозначается через 2 ^ J
mult(;r, М). Для удобства mult(;r, М) =
= 0, если x<£S.
Интуитивно ясно, что мультимно¬
жество является множеством, в кото- ,
- N :П Nr:C[VR
ром элементы появляются более, чем и * а
один раз. Для x^S mult(.r, М) гово- рИС- 5,19
рит «сколько раз хп встречается в М.
Будем писать М как {щ*^, ..., nh*xh}, где mult(;r, М) = 2 пу
j,Xj=X
Если х встречается один раз, то он будет записан как 1 * х.
Будем рассматривать обычное множество А как мультимноже¬
ство М, в котором каждый элемент А встречается только раз.
Мощность \М\ мультимножества M = {nl*xi, ..., пк* хк) опре-
и
деляется через 2 щ.
г=1
Если Mt и Мг — мультимножества, тогда их объединение
+
М1 (J М2 определяется как
mult (х, Мг U Ж2) = mult (х, Мг) + mult (х, М2).
Аналогично пересечение f| Ж2 определяется как
+
mult Жх П Ж2^ = min (mult (х, ЖД, mult(;r, Ж2)).
И наконец, разность Mi — Ж2 — как
mult(a;, Mi — М2) = max(0, mult(a:, МД —mult(;r, Л/Д).
450
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
Если Л/i и М2 — мультимножества, тогда будем писать Л/, с; М2
(Mi —пасть мультимножества М,), если для всех х
mult(х, Mi)< mult(;r, М2).
Если М — мультимножество и g—отображение Set(M) в мно^
+
жество N, тогда g(M)= (J {g (х)}. Таким образом, mult (у, g(M)) =*
хем
= 2 muit fa М) и | g (м) | = | м |.
Я, /(*)=»
Мультидизъюнкт (или сокращенно т-дизъюнкт) есть мульти¬
множество литер, т. е. каждой литере сопоставлено некоторое по¬
ложительное целое число, говорящее о том, сколько раз она встре¬
чается в m-дизъюнкте. Будем писать в нг-дизъюнкте литеры столь¬
ко раз, сколько они в нем повторяются. Напрнмер, {Р, Q, Q} — тп-
дизъюикт, где кратность Р равна единице, а кратность Q — двум.
Если С—нг-дизъюнкт и 0 — подстановка, то C0 = {L0: Ь^С)
или mult(Ьг, С0) = 2 mult (L, С). Таким образом, |С0| — |С|,
и если С — {L\, L2, ..., LJ, то CQ = (Ls0, L20, .. ., L„0}.
Пусть С, и C2—то-дизъюикты и пусть 4j<=Ci и A2czC2. Это
значит, что каждая литера в А1(Аг) встречается не большее число
раз, чем эта же литера в Ci(C2). Предположим, что существуют
подстановки 04 и 02 такие, что для некоторой литеры L
Set(4101) = {L} и Set (П202) = (~| L}. Пусть 04 и 02— НОУ. Тогда
(С1 — Hj) 0Х [J (С2 — ^2)^2 является m-резольвентой для и С2.
Пример 5.28. Пусть Сг = ~j Р (а) \/ ДР(а:)и С2 — Р(а). Тогда
~|jP(a) 11 ^ являются нг-резольвентами для и С2.
Обыкновенные дизъюнкты могут быть рассмотрены как нг-дизъ-
юнкты, в которых кратность каждой литеры равна единице.
Приведем без доказательства несколько теорем Д. Плейстида,
касающихся нг-резолюции.
Теорема 5.4. Пусть С3 — обычная резольвента дизъюнктов
и С2. Пусть Di и D2 — m-дизъюнкты такие, что Set(Z)4) = C1 и
Set(Z)2) — Сг. Тогда существует m-резольвента D3 для и П2 та¬
кая, что Set(Z)3) = Сг-
Теорема 5.5. Пусть дизъюнкт С выводим из множества дизъ¬
юнктов S с помощью обычной резолюции. Тогда имеется т-дизъ¬
юнкт D, выводимый из S с помощью m-резолюции такой, что
Set{D)= С. (Заметим, что если С = □, тогда D = □.)
Теорема 5.6. Пусть m-дизъюнкт D3 является m-резольвентой т-
дизъюнктов Dj и D2. Тогда некоторая обычная резольвента для
Set (Di) и Set (D2) поглощает Set {D3).
Теорема 5.7. Пусть S — множество дизъюнктов и т-дизъюнкт
D выводим из S с помощью m-резолюции (дизъюнкты из S рас¬
сматриваются как m-дизъюнкты). Тогда имеется обычный дизъюнкт
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
151
С, выводимый из S с помощью обычной резолюции такой, что S
поглощает Set(D).
Введем понятие m-абстракции. Пусть m-абстракция есть ото¬
бражение / нг-дизъюнктов в множества пг-дизъюнктов, удовлет¬
воряющее следующим свойствам:
1. Если Сг — пг-резольвента для С± и С2 и D3^f(C3), тогда су¬
ществуют П1е/(С1) и П2е/(С2) такие, что D3 является примером
некоторой нг-резольвенты для Di п D2.
2. /(□)={□}.
Аналогично теоремам 5.1 и 5.2 приведем три теоремы, касаю¬
щиеся построения тп-абстракции.
Теорема 5.8. Пусть -ф — отображение литер на литеры. Расши¬
рим яр до отображения m-дизъюнктов на m-дизъюнкты следующим
образом:
п2 * Ь2, ..., nh*Lh)) =
= {щ * яр^), н2*яр(£2), ..., nh* яр (£*)}.
Таким образом, lip (С) 1= |С|, но яр— не взаимно-однозначное
отображение. Пусть яр удовлетворяет следущим свойствам:
1. ф ( j L) — ~] яр(£) для всех литер L.
2. Если иг-дизъюнкт D — пример пг-дизъюнкта С, то яр(П)—
пример яр (С).
Тогда отображение /, определенное на т-дизъюнктах с помощью
f{C)= {яр(С)}, является отображением т-абстращии.
Теорема 5.9. Пусть F — множество отображений литер на ли¬
теры. Для каждого яр ef расширим яр до отображения тп-дизъюнк-
тов на m-дизъюнкты как в предыдущей теореме. Предположим,
что для всех яр е Е яр(~\L)— "^яр(Е) для всех литер L. Предполо¬
жим также, что если m-дизъюнкт D является примером т-дизъюнк-
та С, то для всех яр2еЕ существует яр! s Е такое, что яр2(П) является
примером яр1(С). Определим отображение / на m-дизъюнкты с по¬
мощью f(C) = {яр (С): яр е F). Тогда / является отображением т-
абстракции (заметим, что f(C)—обычное множество т-дизъюнктов).
Если /— пг-абстракция, то говорят, что / определена в терминах
литеральных отображений.
Теорема 5.10. Если / — m-абстращия, определенная в терминах
литеральных отображений, то f также удовлетворяет следующему
свойству: для всех m-дизъюнктов и С2, если поглощает С2,
то для всех D2^f(C2) существует Dl^f(C1) такой, что Di погло¬
щает D2.
■ Говорят, что пг-дизъюнкт Di поглощает т-дизъюнкт Л2, если
существует подстановка 0 такая, что Di0 е Л2, т. е. для всех L е £>,0
mult(L, DiQ)< mult(£, D2).
Приведем примеры нг-абстракций.
152
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
1. Фундаментальная m-абстракция. Если С — m-дизъюнкт типа
{Lu L2, LJ, то f(C) = {{LiQ, L20, L*0}: L$ — фундаменталь¬
ные литеры (1 < г < к)}.
2. Пропозициональная m-абстракция. Если С — m-дизъюикт типа
[Lu L2, ..., Lh}, то j(C) есть {D), где D — m-дизъюнкт типа
[Ьг, Ь2, .. ., Lh} н Li получается из L, путем удаления всех ар¬
гументов предикатного символа. Таким образом, если Lt =
В (L, t2, • •., tn), то Р1 и если Li = J Pit-,, t2, . . ., tn)i то Li =
_ r-| р
Аналогично мы можем определить m-абстракции, основанные на
переименовании предикатных или функциональных символов, из¬
менении знаков литер, изменении порядка аргументов различных
функциональных или предикатных символов или удалении аргу¬
ментов из функциональных или предикатных символов.
3. Семантическая m-абстракция. Пусть / — интерпретация мно¬
жества дизъюнктов на некотором множестве функциональных и
предикатных символов. Пусть D, область интерпретации 7. Как
при определении обычной абстракции с каждой фундаментальной
литерой L мы связываем литеру L' и с каждым фундаментальным
m-дизъюнктом С = {Li, ..., Lh} m-дизъюнкт С' = \LX, ..., L'h\. Заме¬
тим, что \С'\ = |С1. Если Ci — произвольный m-дизъюнкт, то
f(Ci)—{D: D связывается с С для некоторого фундаментального
примера С m-днзъюнкта CJ. Таким образом, например, если 7 —
обычная интерпретация арифметики, то (3=^3, 3 < 3) — одна из
m-абстракций {х у, у s? х). Назовем / m-абстракцией, получен¬
ной из 7.
Понятие доказательства m-абстракции, глубины доказательства
m-абстракцин н т. п. определяются аналогично соответствующим
понятиям в обычной резолюции. Обозначим вершины доказатель¬
ства m-резолюции V через Nod(F) и т-резолюции — через
MRes(F). Л/-резолюция доказательства F есть тройка вершин
<А1, N2, iV3> таких, что LA(A3) — m-резольвента m-дизъюиктов
LA (А,) п LA(A2).
Если / — отображение m-абстракций и S-множество т-дизъюнк-
тов, то /(S) обозначает множество U f{C). Заметим, что /(S) —
CSS
обычное множество т-дизъюнктов.
Пусть Т п U — доказательства m-резолющш, а / — отображение
m-абстракций. Пусть Mi(B, С)—отношение типа В е }{С),
а М2(В, С)—отношение «В имеет пример в /(С)». Тогда T-^-U,
если (Л7,; Мг) (U, Т) истинно (см. обычную резолюцию), т. е.
U — абстракция доказательства Т.
Теорема 5.11. Пусть Т — минимальное доказательство т-дизъ-
юнкта С' из множества S m-дизъюнктов, и пусть / — отображение
m-абстракций. Тогда для каждого m-дизъюнкта D’ в f(C') сущест¬
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
153
вует доказательство m-резолюций U из f(S) такое, что T-*-U
и Result(U) определен и имеет D' в качестве примера.
Этот результат устанавливает связь с обычной резолюцией.
Пусть дизъюнкт С' выводим из множества дизъюнктов 5 с помощью
обычной резолюции. Пусть / — отображение ггг-абстракций. Тогда
существует ш-дизъюнкт такой, что Set(Ci) = C' и для всех
£)'е/(С'1) дизъюнкт, имеющий D' в качестве примера, выводим из
f(S) с помощью ггг-резолюции.
Пример 5.29. Рассмотрим следующее доказательство ггг-резо-
люции (для сравнения см. пример 5.21), представленное на
рис. 5.20. Здесь используется пропозициональная ггг-абстракция.
TP(a)ViP(.e)VQ(c> Р(а) ipvipvq р
Q(OVP(d) QVP
Рис. 5.20
Определим теперь процедуру «ndfindm» аналогично процедуре
«ndfind» для т-дпзъюнктов. Пусть / — отображение ггг-абстракций.
Дано доказательство ггг-резолюции U из f(S) и требуется найти
все доказательства Т из S такие, что T-^U.
procedure ndfindm (U, S, f);
(полагаем, что ггг-дизъюнкты {N)={C^S\ LA(IV)e/(С)} для
всех начальных вершин N из V и ггг-дизъюнкты (N)=P для всех
неначальных вершин N из U)
loop
while (существуют вершины Nu Лт2, N из U и «г-дизъюнкты
С1, С2, С такие, что
1. <А„ N», 1V> е=М Res (17).
2. С1 е гтг-дизъюнкты (Nt) и С2е ггг-дизъюнкты (iV2).
3. С — ггг-резольвента для Ci и С2.
4. С ггг-дизъюнкты (N).
5. LA(A) имеет пример в /(С));
добавить С к ггг-дизъюнктам (N);
repeat
end ndfindm.
Для всех вершин N из U ггг-дизъюнкты (N) содержат точно
го-дизъюнкты С, обладающие следующим свойством: существует
154
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
начальная часть доказательства из U и минимальное доказатель¬
ство ТУ1 пз Этакие,что W±-^-Ul и С = Result(ТУД и N— единствен¬
ная терминальная вершина доказательства СЛ. Кроме того, если ТУ —
доказательство иг-резолюций из S такое, что W -*■ Ux для некоторой
начальной части доказательства Ui из U, то ТУ изоморфно началь¬
ной части доказательства из доказательства, сгенерированного про¬
цедурой «ndfindm».
Пусть Т — доказательство с помощью иг-резолюции ггг-дизъюнк-
та С' из множества иг-дизъюнктов S. Пусть U — доказательст¬
во иг-резолюций из f(S) такое, что T-+-U. Пусть U — началь¬
ная часть доказательства У. Тогда с помощью процедуры
ndfindm (У, S, /) мы доказываем С'. Если Т имеет глубину d, то
и U будет иметь ту же глубину d.
Поэтому, если имеется доказательство иг-дизъюнкта С' глуби¬
ной d, то можно выбрать некоторый иг-дизъюнкт D' в f(C') и вы¬
звать процедуру ndfindm (У, S, /), где У содержит все доказатель¬
ства U из f(S) такие, что U имеет глубину d и D' является при¬
мером единственного терминального дизъюнкта из U.
На этой идее построена полная стратегия доказательства тео¬
рем, основанная на иг-абстракциях. Образование У и У4 в этой
процедуре аналогично образованию У и У4 в «proofsearch 1». Вер¬
шины в V и Vi представлены в форме <Dt, d,), где Di — ггг-абстрак-
ция некоторого гтг-дизъюнкта и di — глубина вершины.
Доказательство Vt строится таким образом, что если U являет¬
ся минимальным доказательством с помощью тгг-резолюции неко¬
торого гтг-дизъюнкта, имеющего D' в качестве примера из f(S) и
U имеет глубину d, то U изоморфно начальной части доказатель¬
ства из Vi. Рассмотрим эту процедуру.
procedure proofsearch 2 (S, С' f);
(пытаемся построить доказательство С' пз S, пспользуя отобра¬
жение ттг-абстракций /. Имеем полную стратегию доказательства
теорем).
выбираем D' в f(C')\
S,-{<Д 0>: (Э CeS)Oe/(C)};
для всех <D, 0> е St do
пг-дизъюнкты (<D, О))— {С ^ S: D^f(C)} od;
for d = 1 to oo until С' не образуется из S do (найти доказа¬
тельство С' пз S глубиной d)
пусть У — наименьшее доказательство с помощью тгг-резолюции
такое, что
а) 5,<=Nod(y),
б) если <BU d^ е Xod (V), <В2, d2>eNod(y), d, < d, d2<d и
B3 — ггг-резольвента для В{ и В2, то <S3, d3>eNod(y) и <<Bt, d,),
<В2, d2>, <BS, d3>> e MRes(E), где d3 = 1 + max^, d2);
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
155
пусть Vt — наименьшая часть доказательства V такая, что
а) если <S', d)eNod(F) и D' — пример В', то <В', d> е
в Nod (У.),
б) если <ЛГ4, Nz, N3>ezM Res(F) и 7V3eNod(F1), то iV) <=
eNod(Ft), Nod(F1) и <Nh Nt, N3> e M Res(F1);
(замечание: F может быть найдено путем полного поиска и V3
может быть получено путем удаления вершин и иг-резолюций
пз F),
для всех новых иеначальных вершин N из V3 do ггг-дизъюнк-
ты (N) 0 od; (все начальные вершины из F4 будут находиться
в Si и иметь присвоенные им т-дизъюнкты)
ndfindm(F, S, /)
od\
end proofsearch 2.
Пример 5.30. Пусть S = {~] Р (а) V '"] Р (b) V (?(с), Р {o)i
Р (Ь) \/ В (d)}, С' =*{Q(c)V R(d)} и /—пропозициональная ггг-аб-
стракция. Тогда имеем доказательство F глубиной d = 2, представ¬
ленное на рис. 5.21.
Для простоты здесь вывод N9 опущен, хотя он может быть
получен из N3 и iV4 или из и Ns. Не надо путать вершину N3
N/-PVR N2nPVTPVQ Nj'-P
с N9, так как после вызова процедуры «ndfindm» в Л;5 получим
дизъюнкт "~| Р(а)У Q(c)V B(d), что не соответствует (?(c)V B(d)
в N9 (см. пример 5.27, где процедура «proofsearch 1» терпит не¬
удачу). Таким образом, при доказательстве Ns при d = 2 вершины
N5, N7, N3 и ЛГ10, как ненужные, выбрасываются, и нужная часть
доказательства F, оперирует только с оставшимися шестью верши¬
нами. Перед вызовом процедуры «ndfindm» ттг-дизъюнкты (Nt),
лг-дизъюнкты (N,) и гтг-дизъюнкты (N3) будут установлены
в P(b)\/R(d), ~] Р (а) \/ Р (b) V Q (с) и Р{а) соответственно.
Затем процедура «ndfindm» будет генерировать П ^ (а) V (? (с) V
VR(d) в Na, ПР(Ъ) V Q(c) в N, и Q{c)VR{d) в Nt.
Пусть М — предикат, аргументы которого есть гтг-дизъюнкты,
т. е. если Си С2, ..., Ск — ггг-дизъюнкты, то М(С{, ..., Ск) прини¬
мает два значения: И или JI. Далее, пусть Ult U2, ..., Uk — дока¬
156
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
зательства с помощью иг-резолюции. Тогда M{UU ..., TJk) истинен
тогда и только тогда, когда все Ut находятся в одной и той же
форме и существуют соответствия формы между U{ и Ui+, та¬
кие, что для всех вершин 7V, в Uu N2 в U2, Nk в Uk, если
iVi ~ iiV„ N2~2N3, ..., Nk—i ~ k-iNk, to Ж (LA (iV,), ПА(Аг), ...
..., LA (Nk)) истинен. Заметим, что если Ж, ii Ж2 — отношения
такие, что Mi(Cu ..., Ск)-+ М2(СХ, ..., Ск) для всех ш-дизъюнктов
Си ..., Ск, то Ж,(?71, ..., Uh)->- M2{UU ..., Uk) для всех доказа¬
тельств Uu ..., Uk.
Пусть / — отображение m-абстракции и пусть М(В, С)—отно¬
шение типа «30 50 е/(С)» на яг-дизъюнктах, где 0 — подста¬
новка. Известно, что если Т-*-U, то M(U, Т) истинно. Пусть /„
/а, • • •, fk — отображения пг-абстракций. Пусть Uu U2, ..., Uk — до-
h
казательства с помощью иг-абстракции такие, что T-*-Ux для
1 i < к. Пусть М'{Ви В2, ..., Вк)—отношение типа
(ЭС) [30! еде/! (С), 3 02еде/,(С), ..., 30ft BkQh е fk (С)]
где 0,, ..., 0к — подстановки. Тогда нетрудно показать, что
что М'(U1, U2, ..., Uk) истинно.
Отсюда вытекает стратегия поиска. Пусть мы ищем доказатель¬
ство нг-дизъюнкта С' из множества нг-дизъюнктов S. Выбираем
5je/i(C) для 1 ^ i ^ к. Находим доказательства U( дизъюнктов
Bi из fi(S) такие, что D2 является примером дизъюнкта Вх и
такие, что M'(U{, U2, ..., Uh) истинно. Кажется маловероятным,
что такие доказательства будут существовать, если только не
существует соответствующего доказательства нг-дизъюнкта С' из S.
Если найдены такие доказательства Ut, то используем их как ру¬
ководство для поиска доказательства Т пг-дизъюнкта С' из S.
Отношение Ж' может быть слишком сложным для вычисления,
поскольку не так просто проверить, существует ли в качестве нуж¬
ного дизъюнкт С. Однако легко вычислить отношение Мх такое,
что M'(Bt, В2, ..., Вк) влечет MX(BX, В2, ..., Вк). А затем мож¬
но искать доказательства Uu ..., Uh такие, что ...,Uk)
истинно.
Например, Ш1(В1, ..., Bh) может определить, что \В1\ =
== \В2\ = ... = I-BJ. Это будет иметь место, если /г определены
в терминах литеральных отображений. Если /f сохраняют номера
предикатных символов для 1 < i < к, то Мх (Вх, . . ., Bh) может
определить, что все Bt имеют те же самые номера литер, что и
предикатные символы. Если /( сохраняют знаки литер, то это тоже
может быть отражено в Мх. Если Т U% Для то
MX(UX, ...,Uk) будет истинно.
Поэтому можно искать доказательства Ut дизъюнктов В\ из
fi(S) такие, что MX(UX, ..., Uk) истинно и использовать эти дока¬
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
157
зательства как руководство к поиску доказательства дизъюнкта С'
из S, причем полнота доказательства теорем сохраняется.
Теперь перейдем к процедуре поиска доказательства, которая
использует одновременно более, чем одну лг-абстракцию. Однако
зта процедура заранее не сопоставляет лг-абстрактные доказатель¬
ства с любыми другими доказательствами, т. е. не проверяется,
имеют ли все лг-абстрактные доказательства одну и ту же форму
и удовлетворяет ли соответствующее отношение тому или иному
доказательству.
procedure proofsearch 3(S, С', {/,, /2, ..., /„});
(поиск доказательства дизъюнкта С' из S, используя множество
(не обязательно различных) лг-абстракций {/ь /2, ..., /„}).
for г = 1 to п do выбрать Dj в fi(C') od;
for i=l to n do 0): (3 С ^ S) D ^ fi (C)} od;
for d = 1 to oo until С’ выводится из S do
(ищется доказательство глубиной d)
for t = 1 to n do
V\ 4— наименьшее доказательство с помощью лг-резолюции та¬
кое, что
а) Si cz Nod (F() и
б) если <В15 d{) <= Nod (FJ), <В2, d2> е Nod (F{), di<d, d2<d
и B3 — лг-резольвента В{ и В2, то Ф3, d3> е Nod (FJ) и «5Х,
di>. Ф2, d2>7 <53, ф)>>е MRes ГДе d3 = 1 + max (dx, d2); V\±-
наименьшее доказательство с помощью лг-резолюции такое, что
а) если <В, d) е Nod (Fj) ii Di — пример дизъюнкта В, то
(В, d) е= Nod (Fi) п
б) если N3eNod(Fi) и <iV1? iV2, N3} e MRes (Fj), to e
eNod(Fi), .V2 eNod(Fj) н <JV„ iV2, iV3> «= MRes(Fj)
od;
{V\ представляют собой доказательства глубиной d т-дизъ¬
юнктов пз /г(5), имеющих Di в качестве примера)
W-S;
(если вершина N представлена в виде <5,, <D>, то LA(N) = DS
и глубина (N) = с?,)
loop
while (С' & TF и существуют лг-дизъюнкты Си С2, С, такие,
что
158
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
а) Cl S W, С2 е W и С3 Ф W,
б) Сг — гег-резольвента С, и С2,
в) для всех i (1 < г < ге) существует <Nv N2, N3) е MRes (Fj)
такое, что глубина (С1) = глубина (А,), глубина (С2) = глубина (N2),
LA^) имеет пример в ft(Ci), LA(N2) имеет пример в fi(C2) и
LA(A3) имеет пример в /{(П3));
добавить С3 к TF;
(помогают выбрать Ch С2 и С3 таким образом, чтобы max (глубина
(С{), глубина (С,)) была как можно больше).
repeat-,
ocl;
end proofsearch 3.
Здесь W — доказательство с помощью гег-резолюции.
Главное преимущество этой процедуры заключается в экономии
времени и ресурсе памяти при построении гег-абстрактных доказа¬
тельств. Так, если имеется ге гег-абстракций, то эта процедура
работает приблизительно в ге раз быстрее, нежели процедура
«proofsearch 2» с одной иг-абстракцией.
Однако можно ввести аналогичную стратегию, использующую
одновременно более чем одну гег-абстракцию, которая пытается «со¬
поставить» гег-абстрактные доказательства перед поиском доказа¬
тельства из исходного множества гег-дизъюнктов.
Пусть, как и раньше, М, и Мг — отношения на кортежах из
цг-дизъюнктов, причем М, определяет отношение на дизъюнктах,
которым сопоставлены начальные вершины, а М2 определяет отно¬
шение на дизъюнктах, которым сопоставлены неначальные дизъ¬
юнкты. Пусть ТI, Тг, ..., Тк — доказательства с помощью гег-резо¬
люции и пусть Si, S2, ..., Sk — множества гег-дизъюнктов. Предпо¬
ложим, что Vt—множество иг-резолюций из £<. Процедура «match»
(сопоставление) находит все кортежи {Ти Т2, ..., Тк> доказательств
с помощью иг-резолюции из Si, S2, ..., Sk соответственно такие,
что Ti — начальная часть доказательства F,- для 1 =5 i =5 к и
(Мр, M2)(Ti, Т2, ..., Тк) истинно.
Векторной иг-резолюцией будем называть тройку <ц, у, гге) вер¬
шин такую, что для некоторого к метки (LA) и, v и w являются
кортежами гег-дизъюнктов. Потребуем, чтобы для всех г
t-й компонент LA(ire) был гег-резольвентой i-x компонентов LA(re)
и LA(y).
Определим доказательства с помощью векторной иг-резолюции
точно так же как и для гег-резолюции и обычной резолюции. Если
F — доказательство с помощью векторной гег-резолюции, то потре¬
буем, чтобы все векторные гег-дизъюнкты в F имели то же самое
число компонент. Будем писать VMRes(F) для указания, что это
множество векторных гег-резолюций доказательства F.
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
159
Пусть В — кортеж (вектор) лг-дизъюнктов, т. е. В = (Ви В2, ...
..., ВкУ. Пусть ЯД7?, С) — отношение, определяющее, что В{ есть
С, где С — т-дизъюнкт.
Если V — доказательство с помощью векторной лг-резолюции и
р—доказательство с помощью обычной лг-резолюции, то будем
писать ЯДЕ, Т), если имеется соответствие формы между V и Т
такое, что, если Ni е Nod(F), N2 <= N0(1(7') и Ni ~ АД, то 77i(LA(./Vi),
LA(N2)) истинно. Таким образом, если ЯДЕ, Т) истинно, то Т
является г-м компонентом доказательства V.
Процедура «match (Ft, F2, ..., Vh, V, Mu M2)» выдает доказа¬
тельство F с помощью векторной лг-резолюцин, которое имеет сле¬
дующее свойство.
Предположим, что Vи F2, ..., Vk—доказательства с помощью
лг-резолюции. Предположим также, что 7\, Т2, ..., Th — начальные
части доказательств Ft, F2, ..., Vk соответственно. И наконец, пред^
положим, что (Ж); М2) (Ти Т2, ..., Тк) истинно. Тогда имеется на¬
чальная часть доказательства W из F такая, что ЯДРЕ, 7\) истин¬
но для 1 < г < к. Таким образом, PF имеет Tt в качестве своего
г-го компонента и PF представляет собой сопоставления доказа¬
тельств Тi, Т2, ..., Тк. Поэтому доказательство F представляет
всевозможные способы сопоставления начальных частей доказа¬
тельств Fi, F2, ..., Ffc.
procedure match (Fi, F2, ..., Vk, F, Mu M2);
(доказательство F с помощью векторной лг-резолюцнн является
доказательством таким, что для всех Ти Т2, Тк, если Tt есть
начальная часть доказательства из Е; для 1 ^ г к и если
{Мр, М2) {Ти Т2, Тк) истинно, то имеется начальная часть до¬
казательства PF из F такая, что ЯДРЕ, Tt) истинно для (1 < i < к)).
FMRes(F)«-0;
Nod(F)-<- {(Nu N2, ..., АД): АД есть начальная вершина в F* и
Л/ДЬА(АГ.), LA(A2), ..., LA(Nk)) истинно};
(говорят, что для вершины N из F вида {АД, АД, ..., АД)
LA(A)=<LA(iVt), LA(A2), ..., LA(ЛД)>)
loop
while (существуют вершины хну из V такие, что х и у вме¬
сте еще не резольвнровались. Здесь х и у также являются корте¬
жами вершин);
[резольвнровать хну]
для всех г таких, что <£,, г/,. z) = MRes(F,) для всех г, 1 i^k н
A/2(LA(z,), LA(z2), ..., LA(zJl)), do добавить z к Nod(F);
добавить <x, y, z> и (у,х,1У к VMRes(F);
160
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
od;
repeat',
end match.
Покажем теперь, каким образом доказательство с помощью век¬
торной иг-резолюции, полученное процедурой «match», может быть
использовано в качестве руководства для поиска доказательства в
исходном пространстве.
Пусть /2, ..., fh — отображения m-абстракций. Пусть
М,(х, С)—отношение типа хг е fx (С) & х2 е /2 (С) & ... & хк е
е Д (О- Пусть М2(х, С) — отношение типа «я, имеет пример в
х2 имеет пример в f2(C), • • •, хк имеет пример в fh(C)». Как
и раньше, расширим М, и М2 до отношений между доказатель¬
ствами. Тогда легко показать, что если Т — доказательство с по¬
мощью m-резолюции, то существует доказательство W с помощью
векторной m-резолюции такое, что (М,; М2) (W, Т) истинно. Такое
доказательство будет удовлетворять П{(\¥, Т{) для и не-
н
которого Ti такого, что Т—*• Т, истинно.
Заметим, что если Т — доказательство из S, (ММ2) (W, Т)
истинно и IIi(W, Т() истинно для 1 ^ г ^ к, то {Ий R2){Tit Т2, ...
..., Th) будет также истинным. Здесь отношения /?( и R2 опреде¬
лены следующим образом:
Ri{Du D2, ..., Dk) истинно тогда и только тогда, когда(ЭС е S
(Dj е fi(C), l^i^k);
R2(Ri, В2, ..., Bh) истинно тогда и только тогда, когда (3 Се
<= S) (30, Я,0, е= U {С), 1 < i < к).
Пусть мы ищем доказательство m-дизъюнкта С' из S. Пусть
D, — произвольные m-дизъюнкты такие, что Di е /, (С), 1 *3
i sg к. Пусть, наконец, V{ — доказательство с помощью т-резо-
люции из ft{S) такое, что Vt содержит изоморфные копии всех
минимальных доказательств глубиной d m-дизъюнктов В2« имею¬
щих Di в качестве примера для 1 ^ i < к. Если имеется доказа¬
тельство Т дизъюнкта С из 5 такое, что Т имеет глубину d, то
имеются доказательства Т( т-дизъюнктов 5, из /,-(5) для 1<
/ i
такие, что Т-+Т\ и Г* являются начальными частями
доказательств из F,. Поэтому {R\\ R2){T\, Т2, ..Тк) будет ис¬
тинным.
Процедура «match(F„ V2, ..., Vh, V, Ru R2)» будет генериро¬
вать некоторое доказательство W такое, что II^W, Т{) будет истин¬
ным для 1 «£ i ^ к. Чтобы быть точным, W будет начальной частью
доказательства, полученного с помощью процедуры «match».
Отсюда приемлемой стратегией поиска является стратегия вызо¬
ва процедуры «match» для генерирования такого W и использова¬
ния процедуры «ndfindm» по этому W, которое дало бы возмож¬
ность получить Т. Для этого необходимо модифицировать проце-
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
161
дуру «ndfindm» путем введения доказательств с помощью вектор¬
ной m-резолюции. Этому служит стратегия доказательства теорем,
названная «proofsearch 4», которая аналогична «proofsearch 2» за
исключением того, что «proofsearch 4» использует одновременно
более чем одну т-абстракцию.
Дадим описание процедуры «proofsearch 4»
procedure proofsearch 4 {S, С', Д, f2, fh, D[, D2, D'h)
(ищется доказательство m-дизъюнкта С' из S, используя необяза¬
тельно различные отображения m-абстракций /4, /2, fk и т-дизъ-
юнкты Di такие, что Di s= Д (С') для 1 < i < к. Стратегия яв¬
ляется полной).
Пусть Mi(Di, D2, ..Dk)—отношения на m-дизъюнктах
(ЭС ^ S) (Di е ft(C) для 1 «£ i ^ к).
Пусть М2(В,, В2, ..., Вк)—некоторое отношение на т-дизъюнк-
тах такое, что
(3С) (30{ <= fi (С) для 1 «£ i к) влечет М2 (Ви В2, ..., Bh);
for d== 1 to until С' выводится из S do (поиск доказательства
глубиной d)
for i = I to к do
Vi ■*- доказательство с помощью m-резолюции, содержащее
в качестве начальных частей доказательств изоморфные копии всех
минимальных доказательств Т m-дизъюнктов, имеющих Di в ка¬
честве примера из ft(S) такого, что Т имеет глубину d;
(Vi образуется как в процедуре «proofsearch 2»)
od;
match (сопоставить) (F4, V2, ..., Vk, V, Mt, M2);
для всех iVeNod(F) таких, что N является начальной вер¬
шиной в F
do
m-дизъюнкты (N) •<- (С е= S: D, е= Д(С), 1 «£ i < к), где LA(iV) =
= (Di, D2, ..., Z)A) od;
для всех N e Nod(F) таких, что N не является начальной вер¬
шиной в V do
m-дизъюнкты (N) -«-О od;
loop
while (С' не выводимо из S, и существует векторная т-резо-
люция (Ni, N2, N3> в YMRes(F) и т-дизъюнкты Ci} С2, С3 такие,
что
а) С, е m-дизъюнкты (2Vt) и С2 е m-дизъюнкты (N2),
б) С3 является m-резольвентой С4 и С2,
И В. Н. Вагин
162
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
В) С3 Ф 771-ДИЗЪЮНКТЫ (N3) ,
г) для всех 7, 1 г < /с 30» е= /, (С3), где <5И Я2, ..5*> =
= LA(iV3));
добавить С3 к ттг-дизъюнктам (N3);
repeat-,
od;
end proofsearch 4.
Эта стратегия доказательства также полна. Кроме того, за счет
процедуры сопоставления мы приходим к более ограниченному
Р(в> WiB)VP(B) 7 P(B)VP(a)
Р(а)
~iP(a)VP(6) 1P(B)VP(8)
Рис. 5.23
<Р(П),Р(В)> <lP(.a)VP(B),lP(B)VP(8)> <lP(B)VP(8),lP(B)VP(a)>
Рис. 5.24
Р(с,в) 'lP(n,6)VP(B,B) lP(B,B)VP(B,a)
PiBJB)
"Р(В,Ю
Рис. 5.25
поиску, нежели в процедуре «proofsearch 3». Дадим пример исполь¬
зования процедуры «proofsearch 4».
Пример 5.31. Пусть S = {P(a,b), Ь)\/Р(Ь, Ъ),
"ДР(6, b) V Р (Ь, я)}, С' = Р(Ь, а) и /1 отображает Р(х, у) на
Р(х) и /2 отображает Р(х, у) на Р(у). Для простоты считаем, что
один из родительских дизъюнктов является положительным. Тогда
U(S) = {P(a), П Р(а)уР(Ь), П Р(Ъ)\/Р(Ъ)} и U(S) = {P(b)t
^P(b)\J P(b), П Рф)УР(а)}.
Доказательство Ft глубиной d = 2 показано на рис. 5.22. Ана¬
логично доказательство V2 глубиной d = 2 представлено на рис. 5.23.
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
163
При сопоставлении F, и F2 мы получаем следующее доказатель¬
ство (см. рис. 5.24).
Отсюда легко находится нужное доказательство дизъюнкта
Р(Ь, а) (см. рис. 5.25).
Заметим, что здесь необходимы тавтологии типа '""j P{b)\J Р (Ъ)
в Fi и F2. Нетрудно также видеть, что абстрактные литеры могут
унифицироваться, в то время как исходные лнтеры не унифици¬
руемы. Отсюда возникает опасность получения ложных дока¬
зательств.
Рассмотренные процедуры используют упрощенные доказатель¬
ства из упрощенного множества дизъюнктов (т-дизъюнктов), яв¬
ляясь путеводителями в поиске доказательств из исходного множе¬
ства дизъюнктов. Абстракции, основанные на конкретных интер¬
претациях, особенно привлекательны в силу того, что они близки
к формализации идеи доказательства теоремы для данного приме¬
ра, свойственного человеку. Они особенно полезны, если область
Интерпретации конечна, что ведет к конечному пространству по¬
иска. Отсюда и вытекает их применимость к реальным системам
принятия решений, имеющих конечный универсум.
Наряду с методами доказательства теорем, основанными на
представлении формул в виде конъюнктивных нормальных форм,
в последнее время находят широкое применение процедуры, ис¬
пользующие другие представления. Будем говорить, что ППФ F
находится в негативной нормальной форме (ННФ) тогда и только
тогда, когда каждое вхождение знака в F атомарно, т. е. отри¬
цание стоит перед атомом. ППФ может быть легко преобразована
в равносильную ей ННФ, используя законы: '~|!-1.F = .F, '"1 (F V
v<?)= H(F&G)= ^F\I^G,-\VxF[x] = 3x{-}F[x\)
3xF [ж] = Уж(~|.Р[ж]).
ППФ является универсально квантифицированной тогда и толь¬
ко тогда, когда все вхождения ее кванторов общности являются
положительными, т. е. находятся в области действия четного числа
вхождений знака а все вхождения ее кванторов существования
отрицательны, т. е. находятся в области действия нечетного числа
вхождений знака
Пусть, например, мы имеем общезначимую ППФ А:
N Зж Vy (Р (ж) ~ Р (у)) -у (3хР (ж) ~ \/уР (у)).
Удаляя логические связки ~ и получаем ППФ В:
В = 1 {Зх Vy [(-] р (ж) V Р (У)) &ПР(у)УР (ж))] & п К1 3 хР (ж) V
V VyP(y)) & (“1 VyP(y) V ЗжР(ж))]} =
= 1 {Зх Vy [(■п р (ж) V Р (У)) & П-Р(у) V Р И)] &
& [(Зж Р (ж) & Зу 1P (у)) V (Vy Р (у) & Уж р (ж))]}.
Тогда ППФ С = Зж Vy [("] Р (ж) V Р Ш & (1 Р{у) VР(х))Ш(ЗхР(х)&
11*
164
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
& Зу '“I Р (у)) V (Vy Р (у) & Уж'“] Р (ж))] находится в ННФ (т. е. В =
= Г] С)- Затем формула, представленная в сколемовской стандарт¬
ной форме, для С будет иметь вид
D = Vp [П ^ (я) V ^ (У)) &HP(y)VP (а))] &
& IP (b) & п Р (с) V (Vz р (2) & v*n р (*))]■
В данном случае D является универсально квантифицированной
ППФ, которая не имеет модели (т. е. не выполнима) тогда и толь¬
ко тогда, когда формула А общезначима.
Будем говорить, что ППФ F нормализована тогда и только
тогда, когда ни одна переменная в F не является свободной и
связанной одновременно и все переменные, стоящие под знаками
квантора, отмечены различными буквами.
Пусть универсально квантифицированная формула D находится
в ННФ. Будем говорить, что ППФ R' получена из ППФ П посред¬
ством квантифицированного удвоения тогда и только тогда, когда
R' является результатом замены некоторой подформулы R вида
УжМ на VхМ & Уж Д. Если имеется последовательность ППФ
вида Д, ..., Д (для иЗг 1) такая, что Di+i получена из Д путем
квантифицированного удвоения для каждого i<n, то говорят, что
Д получена из Д посредством последовательности квантифициро¬
ванных удвоений. Предположим, что Е получена из D некоторой
последовательностью квантифицированных удвоений, и F — норма¬
лизованная форма для Е, a G — результат удаления всех кванто¬
ров из F. Тогда G будем называть расширением D.
Вернемся к указанному выше примеру, где
Е> = Уу{(~\Р(а)\/ Р (у)) & П Р (У) V £*(«))] &
& [(i> (Ь) & Ч Р (с)) V (Vz Р (2) & Уж П Р (ж))].
Квантифицированное удвоение дает
Е = У у (('П Р (а) V Р (У)) &П Р (У) У Р («))] &
& Уу [П Р (а) V Р (У)) &ПР(У)УР (а))] &
& [(i> (Ь) & Ч Р (с)) V (VzP (2) & Уж П Р (ж))].
Нормализация приводит к
F=Vy[(-\P(a)VP (У)) &ЦР(У) У Р (а))] &
& У w[(""| Да) V P{w)) & V ?(«))] &
& [(/»(Ь) & П Р М) V (VzP (z) & Уж П Р (ж))].
И, наконец, удаление кванторов дает нам ППФ:
G= [(~1?(а) V Р (у)) & Р (у) V ?(я))] & V Р И)&
& п Р и V Р(я))] & Г(Р(6) & п Р (с)) V (Р(г) & п Р И)]*
которая является расширением ППФ D.
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
165
Для удобства представим теперь G в виде матрицы таким об¬
разом, что дизъюнкты расположим по горизонтали, а конъюнкты —
по вертикали. Получим
G: 1Р{а)УР{у)
1 Р (У) У Р (а)
П Р (а) V Р (ш)
1 Р (ш) V Р (а)
Р(Ъ) 1 Г Р (Z)
LnPWj vb ^(*)J
Таким образом, пусть G — ППФ, свободная от кванторов и
представленная в виде матрицы. Пусть 3 (G) — множество вхож¬
дений литер в G, a 3(G)2 — множество упорядоченных пар эле¬
ментов из 3(G). Тогда под сцепкой (mating) М для G будем по¬
нимать бинарное отношение на 3 (G) такое, что имеется подста¬
новка 0 такая, что KQ = ~\ LQ всякий раз, когда LMK, где L и К —
сцепленные литеры.
Для нашего случая сцепку изобразим в виде линий, соединяю¬
щих сцепленные литеры. Имеем
G-
1Р(а)
V
Р(!/\
ЛР(>0
Уу
Р 1 а)
1Р( а)
P(w)
1P{W)
V
У^{а)
' Ркьу
V
'P(z)
1 Pic)
W(xY_
Говорят, что сцепка М является сцепкой опровержения для ППФ
G тогда и только тогда, когда G ложна относительно любого при¬
писывания истинностных значений к атомам. В нашем случае мы
выбрали такие подстановки 0 (т. е. сцепки), которые делают G
ложной (т. е. здесь М — сцепка опровержения). Получили ППФ G':
G': 1Р(а)уР(Ь)
1 Р (b) V Р (а)
~] Р (а) у Р (с)
I Р (с) V Р (а)
Р(Ъ) 1 Г Р(«)
.ПР(с)] V |Л P(&)J
Сцепка состоит из двух процессов: а) процесса спаривания, ко¬
торый решает, какую пару литер необходимо сцепить и б) процесса
унификации, который определяет, имеется ли подстановка, делаю¬
щая сцепленные литеры контрарными. Для процесса спаривания
необходим критерий, названный критерием допустимости (П. Знд-
рюс), обладающий следующими свойствами:
166
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
1) при неудаче со сцепкой критерий должен выбрать способ
благоприятного изменения сцепки, приводящий к успеху;
2) критерий должен быть совместим с последовательным кон¬
струированием сцепки так, что информация, приобретаемая в про¬
цессе проверки критерия на одном шаге, могла быть использована
на следующем;
3) критерий должен быть совместим с процессом, при котором
конструирование сцепки опровержения комбинируется с выбором
соответствующего расширения опровергаемого выражения.
Определим вертикальный путь для ННФ G, свободной от кван¬
торов и представленной в виде матрицы как последовательности
элементов S’(G), состоящей из литер или конъюнкций литер
дизъюнктов. Интуитивно одним из таких вертикальных путей для
вышеупомянутой ППФ G будет путь вида ПР(я), —I Р (у), ИР (я),
ПРИ, Р(Ъ), ПР(с).
Формально вертикальный путь для G индуктивно определяется
следующим образом:
а) если ННФ G состоит из литеры L, то вертикальный путь
для G содержит только эту литеру L;
б) если G имеет вид [G, V G2], то один вертикальный путь про¬
ходит через Gu а другой — через G2\
в) если G имеет вид [Gx & G2] и Pt является вертикальным
путем через для i = 1, 2, тогда конкатенация PtP2 этих после¬
довательностей является вертикальным путем через G.
Пусть М — сцепка свободной от кванторов формулы G, пред¬
ставленной в ННФ. Будем говорить, что М является допустимой
некоторым путем сцепкой (р-допустимой) тогда и только тогда,
когда каждый вертикальный путь через G содержит сцепленную
пару литер. П. Эндрюсу принадлежат следующие утверждение и
теорема.
Утверждение. Пусть G — свободная от кванторов ННФ и пусть
М — сцепка для G.
а) Если имеется подстановка 0 такая, что G0 является проти¬
воречием, то G имеет p-допустимую сцепку.
б) Если М — p-допустимая сцепка, то М является сцепкой оп¬
ровержения.
в) Если М — сцепка опровержения, то GQ — противоречие.
Теорема 5.12. Пусть D — универсально квантифицированная
ННФ. Тогда D не выполнима (т. е. не имеет модели) тогда и только
тогда, когда некоторое расширение D имеет сцепку опровержения
и как следствие p-допустимую сцепку.
Возвращаясь к примеру, видим, что для G имеется р-допусти-
мая сцепка: {'
^Р(ш), Р(Ьу
P(z), 1 Р(х); С
-1Р(,г);(Р(у),'
Р(У), Р(Ь)) Для пути П р(о), П?(р), ПР(а)>;
р Iе); (Р (у), 1р (%)) для пути Р (у), Р (а), Р (w), Р (а),
Р{а), Р(а)) для П?(я)’ Р(а)> P(w)i р(а). РЫ>
Р (у)) для Р (у), Р (у),^ Р (a), q Р (га), Р (Ъ), 1 Р (с)
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
167
и т. д. всего 32 пути. Отсюда, очевидно, G противоречива (т. е. не
имеет модели).
Опишем теперь в общих чертах процедуру опровержения, осно¬
ванную на р-допустимости. Она включает в себя:
1) ППФ А, которую необходимо доказать;
2) универсально квантифицированную D, представленную
в ННФ. D будем называть начальной ППФ процесса опровержения;
3) универсально квантифицированную F, представленную в ННФ
и полученную из D путем квантифицированного удвоения и нор¬
мализации, т. е. F является расширением D;
4) сцепку М для F и соответствующую подстановку 0М;
5) граф связи r(D) для D\
6) граф связи ru(F) для F относительно сцепки М.
Определим граф связи. Пусть F находится в ННФ и пусть ли¬
теры К ж N находятся в S’iF). Литеры К ж N составляют потен¬
циальную сцепку относительно М для F тогда и только тогда, ког¬
да некоторый вертикальный путь содержит как К так и N и су¬
ществует подстановка а такая, что (NQM) ° = ^ (Гдш) а. Тогда
Fм {F) = {(К, N)^ 3? (F)2, \ К ж N составляют потенциальные сцепки
относительно М}, т. е. это бинарное отношение, представленное
в виде графа. Г (D) будет определяться как граф связи для D
относптельно пустой сцепки.
Процедура опровержения показана на рис. 5.26. Рассмотрим ее
по шагам.
Шаг 1. Предварительная обработка.
1а. Упростить и нормализовать С так, чтобы получить ННФ Си
которая в дальнейшем при сколемизации имела бы простые сколе-
мовские функции. Например, ППФ С вида Ун; Vz Зу 3z (Р (w, у) &
&Q(x, z)) следует заменить на Ун; Чх(Эу Р (w, у) & 3zQ(z, z)).
lb. Удалить кванторы существования (сколемизация).
1с. По возможности получить ННФ, имеющих как можно мень-
шне области действия кванторов общности. Например, ППФ
Vx 3у (Р (х, у) &Q (ж, у)) заменяем на Vx (Р (ж, / (ж)) & Q (ж, / (ж))) и
затем на VжР (ж, /(ж)) & Vz(2(z, /(z)).
Id. Полученную формулу обозначить через D.
Шаг 2. Получить граф связи r(D).
При реализации этой процедуры совсем необязательно получать
F{D). Граф связи нам нужен только для того, чтобы избежать
необходимости вычисления нужной нам информации более одно¬
го раза.
Шаг 3. Пусть F есть D.
Шаг 4. Пусть М — пустая сцепка для F. Используя F(D), по¬
лучить Гм(F).
Шаг 5. Проверить М. Является ли сцепка М р-допустимой?
июли да, то опровержение закончено. В противном случае перейти
к шагу 6.
168
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
Заметим, что поскольку число вертикальных путей в ППФ мо¬
жет быть довольно значительным, то существенное внимание долж¬
но быть уделено эффективности, с которой выполняется эта про¬
верка. Нет необходимости рассматривать каждый вертикальный
путь отдельно и в полной мере. Как только найдена пара сцеп¬
ленных литер на некоторой части пути, следует исключить из
дальнейшего рассмотрения все расширения этой части. Также по-
Рис. 5.26
скольку М проверяется и конструируется по шагам, то вся ин¬
формация о сцепленных парах на вертикальных путях должна
сохраняться при переходе от одного этапа к другому.
Для уменьшения числа вертикальных путей коротко остано¬
вимся на методе упрощения F для исчисления высказываний. Пусть
Ft имеет вид (L1 & Рх V ... V Ln & Рп) & (C^i & • • • & L'n & <?) V д)*
где п 5® 1, Lt и Li — литеры, а Р{, Q и R — произвольные ППФ.
И пусть F2 типа &Р\\1 • • ■ V Ln & Рп) & Р, где также Llt
5.6. ДРУГИЕ МОДИФИКАЦИИ ПРИНЦИПА РЕЗОЛЮЦИИ
169
Ь2, ..Ln — литеры, а Ри Р2, ..Рп, R — произвольные ППФ.
Предположим, что ППФ F содержит вхождение ППФ Ft и F* по¬
лучена из F путем замены вхождения Ft вхождением F2, что
в матричной форме изображено в следующем виде:
F:
V — V
VR
Q
F*:
lpi
V ... V
R
Нетрудно видеть, что если Li=^~\Li для каждого i
< п), то Ё F ~ F* и, таким образом, F сводится к F*, имеющей
меньше путей, чем F.
1 х
1 Z
It
V
V
V
V
V
У
t
и
w
j- la: V
I
[ЖЛ
1а:
1Z
11
■ v
Лх
V
Z
1а
V
V
V
(Ь)
V
1 и
Z
t
и
V
(d)
(Q)
У
t
и
w
1а:
У
Г
“I
V
1а
z |
1 tv и
v V w
1Z
V
t
It
V
и
V
V
w
(o')
1 X
V у
(d>
Рис. 5.27
Г'
1а
_£
t
Qt__V _aj
v V w
(to
(С)
la: V у
la: V
1 и
i и 1
□
Z
z
t
t
v V w
v V
(е)
□
(вг)
Кроме того, используя элементарные законы типа коммутатив¬
ности, ассоциативности, идемпотентности и т. д. для конъюнкции и
дизъюнкции можно еще более упростить F и даже свести ее к □,
что будет говорить о конце процедуры опровержения. Проиллюст¬
рируем такое упрощение на рис. 5.27, где (а') получено из (а)
170
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
применением элементарных законов, (Ъ) из (а') сведением и т. д.
Пунктирные линии обрамляют те части ППФ, которые участвуют
в сведении одной ППФ к другой. В итоге такого сведения полу¬
чили □ .
Шаг 6. Выбрать вертикальный путь Ра через F.
По крайней мере один такой путь может быть найден на ша¬
ге 5. Однако к выбору пути необходимо отнестись внимательно.
Например, можно с помощью графа связи FM(F) выбрать путь
с минимальным числом пар потенциальных сцепок.
Шаг 7. Проверить, имеется ли по крайней мере одна пара по¬
тенциальных сцепок на пути Ра? Еслп да, то перейти к шагу 8.
Если нет, перейти к шагу 9.
Шаг 8. Выбрать пару потенциальных сцепок (К, N) на пути Ра
и заменить М на MU{(K, N)}. Соответственно, установить 0Jf и
rM(F). Возврат к шагу 5. Отметим, что на шагах 5—8 мы просто
проверяем, является ли сцепка М допустимой и изменяем ее, если
это не так. Изменение сцепки управляется критерием допустимостн.
Конечно, если на шаге 8 делается неподходящий выбор сцепки,
то, естественно, система должна осуществить бэктрекинг. Для об¬
легчения этой проблемы необходимы более сложные методы изме¬
нения М нежели те, которые выбирались на шагах 6—8. Упомянем
коротко об одном из них.
Пусть мы фиксируем вертикальный путь Ра посредством сцеп¬
ки пары литер на этом пути. Так как имеется много способов
фиксации данного пути в общем случае, то некоторые из них мо¬
гут быть несопоставимы со способом фиксации другого пути (из-за
несопоставимости соответствующих подстановок) и следовательно,
эти способы не применимы. Рассматривая все возможные способы
одновременного фиксирования всех путей на множестве вертикаль¬
ных путей, начиная с единичного множества и затем постепенно
расширяя его, можно устранить много ненужных способов фикса¬
ции путей.
Шаг 9. Все ли сцепки для формулы F были использованы? Если
«да», то перейти к шагу 10. Если «нет», то вернуться назад и
пытаться найти другие сцепки. В любом случае необходимо запом¬
нить информацию о текущей сцепке, которая может быть полезна
при квантифицированном удвоении.
Шаг 10. Осуществить квантифицированное удвоение формулы
F, нормализовать ее и результат послать в F. Перейти к шагу 4.
Выбор квантора для удвоения следует производить как можно
внимательней и осторожней, поскольку каждое квантифицирован¬
ное удвоение расширяет ППФ. Однако ненужное квантифицирован¬
ное удвоение не мешает в конечном счете нахождению приемлемой
сцепки. Конечно, эвристики, используемые для выбора кванторов
для удвоения, должны сохранять полноту процедуры.
Поскольку сложность поиска приемлемой сцепки резко возрас¬
тает с ростом числа литер в ППФ F, стоило бы затратить значи¬
5.7. РЕАЛИЗАЦИЯ АЛГОРИТМОВ ДЕДУКТИВНОГО ВЫВОДА
171
тельные усилия для понижения этой сложности. Поэтому мы и де¬
лаем области действия кванторов общности по возможности мини¬
мальными, чтобы при удвоении не создавать больше, чем нужно
новых литер.
Так как процедура опровержения должна быть полна, необхо¬
димо кванторы удваивать некоторым систематическим образом. Ко¬
нечно, хотелось бы знать, сколько раз необходимо удваивать каж¬
дый квантор, но к сожалению, это для логики предикатов первого
порядка невозможно выяснить в общем случае.
Если на каждом шаге будем удваивать каждый квантор (напри¬
мер, «двигаясь» по ППФ справа налево), то при условии вхожде¬
ний литеры в области действия п кванторов общности будем по¬
лучать 2" копий этой литеры. Поэтому для уменьшения числа этих
копий будем удваивать только те кванторы (названные наиболее
удаленными кванторами), которые не находятся в области действия
других кванторов. П. Эндрюс показал, что процедура удвоения
только наиболее удаленных кванторов полна. Вот почему в приве¬
денном примере мы удваивали только наиболее удаленный квантор
(ради справедливости следует упомянуть, что в некоторых случаях
удвоение наиболее удаленного квантора приводит к более сложному
поиску допустимой сцепки).
5.7. Реализация алгоритмов дедуктивного вывода
в системе управления энергообъединением
Сложность оперативно-технологического управления в энергетике обус¬
лавливается как спецификой задач оперативного управления, при котором
приходится учитывать большое количество взаимосвязанных, а иногда и про¬
тиворечивых факторов, так и трудностью алгоритмизации процесса принятия
решений в условиях, когда нет четких критериев управления, и персоналу
приходится зачастую принимать решения, основываясь на собственном опыте
и интуиции. Кроме этого, задача разработки алгоритмов оперативного автома¬
тизированного управления энергообъединением с помощью ЭВМ требует ре¬
шения вопросов организации четкого взаимодействия диспетчера с ЭВМ, при¬
чем язык такого общения должен быть близок к естественному.
В самом общем виде цель диспетчерского управления энергообъединением
состоит в обеспечении бесперебойной, надежной и экономичной работы объ¬
единения с учетом указаний ЦДУ ЕЭС СССР. Для организации такой работы
вполне естественным является решение создать систему-советчика диспетче¬
ру в ситуациях, возникающих на объекте управления. Такая система должна
выполнять следующие задачи:
— анализировать и распознавать ситуации, сложившиеся на объекте уп¬
равления;
— идентифицировать поступившие запросы;
— вырабатывать список рекомендаций по управлению энергообъединени¬
ем в критической ситуации;
— организовать вывод ответов на запросы;
— организовать ведение непротиворечивой базы данных и знаний.
Для реализации этих функций была разработана система оперативно-тех¬
нологического управления энергообъединением, состоящая из трех программ¬
ных комплексов: информационно-решающей фактографической системы (фак¬
тографический процессор), системы принятия решений для выработки управ-
172
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
пяющих воздействий (дедуктивный процессор) и системы обмена информацией
с внешними устройствами и идентификации поступающих запросов (процес¬
сор-интерфейс). Архитектура системы представлена на рис. 5.28.
Основное внимание будет уделено дедуктивному процессору, в то время
как о фактографическом процессоре и процессоре-интерфейсе будет сказано
Процессор интерфейс
I
Лицо, принимающее
решение
Вы дача
сообице HULL
Объект
управления
Ввод
сообщений
1 Г
Идентификация
Входных сообщении
1
^~фактогра-
щи ческой
процессор
база
Управляют а я программа
А дмин истратив пая
Система печати
Подсистема работы с
оперативной базой данных
А дми нистрати В на я
система обмена
L.
Динами чес¬
Модуль
ка я область
чтения
памяти
Входных
сообщений
Двдуктидныи
процессор
"1
ДИСПЕТЧЕР
CD*
ВХОД
массивов
входных
Оообщений
ТЕКСТ
массивов
выходных
Запись
текущих
сообщений
в массивы
ВХОД
и
ТЕКСТ
Анализ
ситуаций
Класси¬
фикация
Обучение
Вывод
решений
Рис. 5.28
Лишь несколько общих слов. Желающие детально ознакомиться с этими про¬
цессорами, а также с системой в целом отсылаются к литературе в конце
книги, относящейся к части III.
Процессор-интерфейс обеспечивает, главным образом, связь фактографи¬
ческого и дедуктивного процессоров с диспетчером и с базой данных, в ко¬
торой отражено состояние объекта управления. Кроме того, интерфейс иден¬
тифицирует входные сообщения в систему и на основании этого передает
запрос либо на дедуктивный, либо на фактографический процессор, а также
организует вывод информации на дисплей или печатающую машинку.
Фактографический процессор представляет собой информационно-поиско¬
вую систему, работающую с массивами информации, представленными в виде
объектно-характеристических таблиц. Он позволяет:
— обращаться к накопленной информации на языке, понятном данному
кругу абонентов;
5.7. РЕАЛИЗАЦИЯ АЛГОРИТМОВ ДЕДУКТИВНОГО ВЫВОДА
173
поддерживать входной язык (его лексический состав и синтаксис) на
уровне текущих требований объектов системы;
— оперативно включать процедуры пополнения, обновления, выборки и
группировки знаний;
допускать обучение системы в части алгоритмов распознавания вход¬
ного текста, формирования правил корреляции, порождения новых аксп-
ом в БД.
Дедуктивный процессор осуществляет анализ и распознавание наблюдае¬
мых ситуаций, а также формирование списка рекомендаций по управлению
энергообъединением. С помощью логического вывода он реализует процедуру
принятия решений.
В результате анализа ситуаций возникает следующее:
а) текст нераспознаваем, что позволяет организовать обращение к фак¬
тографическому процессору на предмет обучения распознаванию исходного
входного текста;
б) текст неконфликтен (т. е. в нем отражены ситуации, не требующие
вмешательства диспетчера, но вызывающие необходимость корректировки БД),
что требует организации обращения к фактографическому процессору на
йредмет коррекции информационной модели системы;
в) текст конфликтен (т. е. имеются конфликтные ситуации, требующие
вмешательства диспетчера) и необходимо организовать вывод рекомендаций
но управлению объектом лицу, принимающему решения.
Последний вызывает проведение следующих действий:
а) проводится классификация входных текстов;
б) организуется выбор типовых задач, логико-лингвистических моделей
и методов вывода;
в) производится пастройка логико-лингвистических моделей на входной
текст и одним из методов доказательства теорем, основанных на прин¬
ципе резолюций, производится дедуктивный вывод рекомендаций по уп¬
равлению;
г) на основе списка рекомендаций по управлению производится сужение
исходного списка;
д) организуется выдача синтезированного списка рекомендаций лицу, при¬
нимающему решения.
В состав дедуктивного процессора входят следующие основные блоки (см.
рис. 5.28): блок анализа ситуации, блок классификации задач управления и
порождения семантических стратегий выбора решений по управлению, блок
обучения, блок вывода решений, диспетчерская программа, база данных. Рас¬
смотрим функции каждого блока.
Блок анализа ситуаций выполняет следующие функции:
— производит сравнение текущей ситуации с предшествующей; на осно¬
вании этого сравнения формируется входное сообщение;
— осуществляет распознавание конкретной ситуации, идентифицируя ее
с каким-либо одним правилом распознавания;
— выявляет конфликтные ситуации, т. е. те, которые требуют вмешатель¬
ства диспетчера с целью ликвидации отклонения какого-либо параметра от
нормы;
— выявляет неконфликтные ситуации, не требующие вмешательства дис¬
петчера, но вызывающие необходимость корректировки БД;
— выявляет нераспознаваемые ситуации, т. е. ситуации, пе попадающие
ни под одно правило распознавания и не идентифицирующие процессором;
— формирует выходное сообщение, информируя диспетчера о нераспоз¬
нанных ситуациях и сообщая ему при этом, почему данная ситуация не
распознана;
— формирует запросы к фактографическому процессору на предмет кор¬
рекции его БД;
— корректирует свою БД.
Блок классификации реализует следующие функции:
174
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
— производит обобщение конкретной ситуации, относя ее к некоторому
классу, для которого существует стратегия поиска решений;
— определяет ложность корреляционных предикатов (т. е. предикатов,
в которых содержатся данные об изменении параметров объекта или среды);
— выбирает стратегию поиска решений для той или иной конфликтной
ситуации.
Мы вернемся к блоку классификации, когда будем рассматривать в гл. 8
методы обобщения и их реализацию в системах принятия решений.
Блок обучения выполняет следующие функции:
— формирует новые правила корреляции в соответствии с указаниями
эксперта и записывает эти правила в базу корреляционных предикатов;
— формирует новые правила распознавания ситуаций, сформулирован¬
ные экспертом;
— записывает в свою БД знания об изменениях топологии объекта и о
новых правилах управления, вводимых экспертом путем изменения существу¬
ющих аксиом модели управления или добавления новых.
Блок вывода решений реализует следующие функции:
— в соответствии со стратегией поиска выбирает из БД аксиоматическую
модель, отражающую правила принятия решений по управлению для данного
класса задач;
— настраивает выбранную аксиоматическую модель на текущую ситуа¬
цию, осуществляя подстановку переменных;
— реализует дедуктивный вывод решения методом резолюции;
— формирует варианты решений по управлению с учетом заранее введен¬
ных технологических и других ограничений на выполнение тех или иных
операций;
— осуществляет проверку непротиворечивости базы знаний (модели уп¬
равления) и в случае, если система аксиом противоречива, формирует тексто¬
вое сообщение об этом.
Входным текстом, поступающим на данный блок, является текст типа ак¬
сиоматической логико-лингвистической модели, позволяющий строить цепочку
вывода на основании принципа резолюции. В качестве метода вывода бра¬
лись семантическая резолюция и линейная резолюция, а также некоторые эв¬
ристики, использованные для получения эффективного вывода.
Рассмотрим сначала реализацию семантической резолюции, точнее реали¬
зацию положительной гиперрезолюции, считая, что отрицательная гиперрезо¬
люция может быть получена подобным образом. Для этого берем только по¬
ложительные упорядоченные дизъюнкты (т. е. упорядоченные дизъюнкты, не,
содержащие знак отрицания) в качестве кандидатов для электронов и отрица¬
тельные упорядоченные дизъюнкты — для ядер. Условимся, что для любых не¬
положительных упорядоченных дизъюнктов отрицательные литеры ставятся
после положительных литер.
Пусть S — множество упорядоченных дизъюнктов, а Р— упорядочение пре¬
дикатных символов в S. Тогда алгоритм вычисления положительной гиперре¬
зольвенты будем представлять следующей последовательностью шагов:
Шаг 0. Входной текст представлен множествами положительных 5+ и не¬
положительных S~ упорядоченных дизъюнктов (5+ IJ S~ = S).
Шаг 1. Установить / = 1.
Шаг 2. Входной текст имеет вид А0 = 0 и В0 = S~.
Шаг 3. Установить i = 0.
Шаг 4. Если At содержит □, то STOP; противоречие найдено. В противном
случае перейти к следующему шагу.
Шаг 5. Если Bi пусто, перейти к шагу 8. В противном случае перейти
к следующему шагу.
Шаг 6. Образовать множество Wi+i = {упорядоченные резольвенты для
С\ и С2, где Ci — упорядоченный дизъюнкт или упорядоченный фактор упоря¬
доченного дизъюнкта в 5+, а С2 — упорядоченный дизъюнкт из В<, причем ре-
зольвировапная литера в Ct содержит наибольший предикатный символ, а ре-
5.7. РЕАЛИЗАЦИЯ АЛГОРИТМОВ ДЕДУКТИВНОГО ВЫВОДА
175
зольвированная литера в С2 является «последней» литерой}. Пусть 4i+!
и Вг± 1—множества всех положительных и неположительных упорядоченных
дизъюнктов в !Fi+i соответственно.
Шаг 7. Положить i = г + 1 и перейти к шагу 4.
Шаг 8. Установить Т = Аа II Ах (j ... [J Af п 5+ = Т [J S+.
Шаг 9. Установить / = j + 1.
Шаг 10. Образовать множество R = {упорядоченные резольвенты для С\
и Сг, где С\ — упорядоченный дизъюнкт или упорядоченный фактор упорядо¬
ченного дизъюнкта из Т, а С2 — упорядоченный дизъюнкт из S~, причем ре-
зольвированная литера из Ci содержит «наибольший» предикатный символ
в Ci}. Заметим, что в данном определении R резольвированная литера для С2
может быть любой литерой, не обязательно последней.
Пусть 40 и So — множества всех положительных и неположительных упо¬
рядоченных дизъюнктов в R соответственно.
Шаг 11. Перейти к шагу 3.
Этот алгоритм для невыполнимого множества дизъюнктов S всегда нахо¬
дит пустой дизъюнкт. Поясним это па примере.
Пример 5.32. Имеем множество упорядоченных дизъюнктов
s = {QtM <?6- <?4 V Q&, Qx Q2, Qsyn Q&, n Qt, Q2 V
v -1 e5 V -I Q3}.
Пусть P — упорядочение предикатных символов такое, что Q1<Q2<Q3<Z
< Qi < Qs < Qe- Разобьем 5 на S+ и S~. Имеем
= <<?А V <?в, <?4 V <?5, V <?Л-
5" = D Qi v “I е2> Q3 V 1 Qa, 1QV Q2V -1Q5V ~1 Q3}.
Цикл 1. / = 1.
В. Л0 = 0, = s-=p ?1V1 Qv Qav-1 Qv ~i <?4, Q2 v -I Q5y-\Q3y
b. Wi = {<?4 v Qs, Qi), A! = {£>4 V Qs, <?i}, в 1 = 0.
c. Так как R\ пусто, то перейдя к шагу 8, имеем
Т = Аа\] А\ = «?4 V<?3, <?i}.
5+ = г U 5+ = {£>4 V Qs, Qu Q< V Qs, <?4 V Qs, Qi V <?4}.
Цикл 2. j = 2.
a. 7? = {<?3, "I Q2}, откуда Л0 = {Q3}, BQ = p Q2}.
b. Wi = 0,Ai = 0, Bi = 0.
c. 'Гак как B\ пусто, то
Т = А0[}А{ = {£>3}.
S+ = т U 5+ = {£>3, £>4 V Qs, Qu Q* V Qs, <?4 V Qs, Qi V &>.
Цикл 3. ) = 3.
a. Применяя шаг 10, получим R = {Q2 V ~I C*5}- Следовательно,
A„ = 0, ^0 = {<?2 V “I <?J-
b. Wi = {£>4 V £>2}, откуда 4i = {£>4 V (M и£, = 0.
c. Так как Bt пусто, то
Г = 40и^1 = {<?4V<?2}-
S+ = г u s+ = {£>4 v <?2, ^4 V <?3, <?1, <?4 V <?6, <?4 V Qs, Qi V <?»}.
Цикл 4. 7- = 4.
а. R = {&}, A0 = {£>,}, B0 = 0.
176
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
Ь. Т = Aq = {(У-
5+ = т U 5+ = {Qb QK v Q*, Qb Qa V C* Qu Qt V Qe, Qa V Qt, Qt V &}.
Цикл 5. / = 5
a. R = {-IQ1), Ao = 0, = {“I <?!>•
b. Wi = {□}, A, = {□}, Я, = 0.
c. Так как A t содержит пустой дизъюнкт, алгоритм заканчивает свою
работу.
В этом примере алгоритм не образовывал лишних резольвент.
Рассмотрим реализацию алгоритма линейного вывода. Из всех известных
модификаций линейной резолюции возьмем наиболее эффективную — модифи¬
цированный метод поиска в глубину, алгоритм которого состоит из следую¬
щих шагов:
Шаг 1. Входной текст: S и самый верхний центральный дизъюнкт С0.
Найти все упорядоченные дизъюнкты в S, которые могут быть боковыми
для С0. Если таковых не существует, то конец. В противном случае создать все
возможные пары {С0, Я01}, ..{Со, Я0г}, где Я01, В02, ..., В0г — боковые дизъюнк¬
ты. Пусть СП — список всех таких пар, упорядоченных произвольным образом.
Шаг 2. Если СП пуст, то конец. В противном случае перейти к шагу 3.
Шаг 3. Пусть (С, В) — первая пара в СП. Вычеркните ее из СП. Введем
понятие глубины дизъюнкта. С0 имеет глубину равную нулю. Если глубина
некоторого упорядоченного дизъюнкта С равна k, a R — упорядоченная резоль¬
вента для С и некоторого бокового дизъюнкта, то глубина R равна (к Ц 1).
Пусть d* — пороговая глубина, определенная заранее. Если глубина дизъюнк¬
та С из пары (С, В) больше, чем d*, то перейти к шагу 2. В противном случае
перейти к следующему шагу.
Шаг 4. Резольвировать С с В. Пусть Я[, Яг, ..., Ят — упорядоченные ре¬
зольвенты для С ж В. Пусть Я* (1 ^ г ^.т)—приведенный упорядоченный
дизъюнкт для Яг, если Я< приводимо (см. линейную резолюцию). В противном
случае Я* = Я;.
Шаг 5. Если некоторый Я* — пустой дизъюнкт (1^7<т), то конец.
В противном случае переход к шагу 6.
Шаг 6. Для каждого i = 1, 2, ..., т найти упорядоченные дизъюнкты
в S, которые могут быть боковыми для Я*. Если таковых не существует, вы¬
черкнуть Я*. В противном случае, пусть Вц, Вц, .. -,Bik.—боковые дизъюнкты.
Создать пары (Я*, Я^),.. . ,(Я*, Я{й.^. Поместить полученные пары (в произ¬
вольном порядке) в начало списка СП и перейти к шагу 2.
Этот алгоритм, примененный к системе управления энергообъединением,
показал наибольшую эффективность.
В модифицированный метод поиска в глубину были введены также неко¬
торые эвристики. Не останавливаясь на этом вопросе подробно, отметим, что
такими эвристиками являются, например, вычеркивание тавтологий и погло¬
щенных дизъюнктов.
Рассмотрим в качестве примера работу дедуктивного процессора для за¬
дачи стабилизации напряжения в энергообъединении за счет его увеличения.
На вход процессора ИНТЕРФЕЙС поступают телеизмерения стабилизиру¬
емых параметров в контрольных точках. ИНТЕРФЕЙС определяет принадлеж¬
ность данного вида информации и передает ее на вход дедуктивного процес¬
сора. Главная процедура блока анализа определяет тип ситуации, возникшей
на объекте управления. Если эта ситуация конфликтна, то в работу вступает
блок классификации, который выбирает план вывода решений, определенный
на данных задачах, и задает тип логико-лингвистической модели, к которой
принадлежит задача ликвидации возникшей ситуации. Предположим, что в ка¬
честве типа логико-лингвистической модели выбрана модель стабилизации на¬
пряжения, а в качестве верхнего центрального дизъюнкта С0 взят дизъюнкт
5.7. РЕАЛИЗАЦИЯ АЛГОРИТМОВ ДЕДУКТИВНОГО ВЫВОДА 177
Ч УВЛ (и (ж)) (УВЛ — сокращенное наименование УВЕЛИЧИТЬ НАПРЯЖЕ¬
НИЕ). Тогда решение будет определяться формулой вида
УжЗг (РЕШ (г) -*■ УВЛ (и (ж))),
где х — название точки объекта, в которой произошло отклонение стаби¬
лизируемого параметра; г — рекомендуемое управляющее воздействие, которое
* необходимо найти.
Так как принцип резолюции является процедурой опровержения, то от¬
рицание вышеприведенной формулы сопоставляется с моделью, настроенной
на ситуацию и если при некоторых значениях переменной z выявляется про¬
тиворечие, то при этих же значениях переменной формула решения логиче¬
ски следует из модели. Имеем
Ч Уж32(Ч РЕШ (г) V УВЛ (и (ж))) = ЗхУг Ч (Ч РЕШ (г) V УВЛ (и (ж))) =
= Зг Vz (РЕШ (г) &Ч УВЛ (и (ж))).
Дизъюнктами будут С0: Ч УВЛ (и (я4)) и С\\ РЕШ(г).
Логико-лингвистическая модель стабилизации напряжения представляет
собой множество аксиом, выражающих причинно-следственные связи, в кото¬
рых отражены (в качественном виде) физические возможности регулирова¬
ния параметров. Эти аксиомы приведены ниже в порядке приоритетности спо¬
собов регулирования:
УхУу [СДН (а;, у, RQ) & РЕАЛ (ОТКЛ. РЕАКТ (у)) -*■ УВЛ (и (г))];
Ух Уу [СДН (а:, у, RQ) & РЕАЛ!(ВКЛ. БСК (у)) УВЛ (и (а:))];
УхУу [СДН (х, у, R0) & РЕАЛ (ЗАГР. КОМП (у)) -> УВЛ (и (ж))];
УхУу [СДН (ж, у, RQ) & РЕАЛ (ЗАГР. ГЕНЕР Q (у) -> УВЛ (и (ж))];
УжУу [СДН (ж, у, Л0)&РЕАЛ (ПОДНЯТЬ НАГР. (у)) -> УВЛ (и (ж))];
УхУу [СДН (а;, у, flQ) & РЕАЛ (ПЕРЕКЛ. ВВЕРХ ТРР (у))->УВЛ(ив(ж))];
УхУу [СДН (аг, у, R0) & РЕАЛ (ПЕРЕКЛ. ВНИЗ ТРР (у)) ->• УВЛ (ин (ж))];
УхУу [СДН (ж, у, Rq) & РЕАЛ (ПЕРЕКЛ. ВВЕРХ ВДТ {у)) -»УВЛ(ыв(ж))];
УхУу [СДН (ж, у, Я0) & РЕАЛ (ПЕРЕКЛ. ВНИЗ.ВДТ {у)) -> УВЛ (ин (ж))];
Уz [РЕШ (z) & РЕЗ (г) -> РЕАЛ (г)];
У у [РЕАКТ (у, ВКЛ) -> РЕЗ (ОТКЛЮЧИТЬ РЕАКТ (у))];
Vу [БСК (у, ОТКЛ) -* РЕЗ (ВКЛЮЧИТЬ БСК (у))];
Уж У у Уг [<? КОМП (ж, у) & МАКС (ТКОМП (ж, г) & Б (г, у) ->
->■ РЕЗ (ЗАГР. КОМП (ж))];
Уж Уу Уг [Q ГЕНЕР (ж, у) & МАКС Q ГЕНЕР (ж, г) & Б (г, у) ->
->• РЕЗ (ЗАГР. ГЕНЕР Q (ж))];
Уж Уу Уг [Р ГЕНЕР (ж, у) & МАКС Р ГЕНЕР (ж, z)& Б (г, у) -*•
->• РЕЗ (ПОДНЯТЬ НАГР (ж))];
Ух У у Уг [ПЕРЕКЛ. ТРР (ж, у) & МАКС. ПЕРЕКЛ. ТРР (ж, г) & Б (г, у) -*•
-»• РЕЗ (ПЕРЕКЛ. ВВЕРХ ТРР (ж))];
Ух У у Уг [ПЕРЕКЛ. ТРР (ж, у) & МИН. ПЕРЕКЛ. ТРР (ж, г) & Б (г, у) ->
-»• РЕЗ (ПЕРЕКЛ. ВНИЗ. ТРР (ж))]
12 В. Н. Вагин
178
ГЛ. 5. ДЕДУКТИВНЫЕ ПРОЦЕДУРЫ ВЫВОДА
УхУу Vz [ПЕРЕКЛ. ВДТ (ж, у) & МАКС ПЕРЕКЛ. ВДТ (х, г) & Б (г, у)
-> РЕЗ (ПЕРЕКЛ. ВВЕРХ ВДТ (ж))];
Vx У у Уг [ПЕРЕКЛ. ВДТ (ж, у) & МИН. ПЕРЕКЛ. ВДТ (х, г) & Б (г, у) ->•
-v РЕЗ (ПЕРЕКЛ. ВНИЗ ВДТ (х))[.
Здесь СДН, РЕАЛ. БСК, ЗАГР. КОМП, ЗАГР. ГЕНЕР, ТРР, ВДТ, РЕЗ, Б
означают «соединить хну через сопротивление До», «реализовать», «батарея
статических конденсаторов», «загрузить компенсатор», «загрузить генератор»,
«трансформатор», «вольтодобавочный трансформатор», «резерв», «больше».
1 У8Л(и(х,))
lCMH(xvy,Ra)v
~\РЕАЛ(ОГКЛ.РЕАКТ.(уV
1РЕАЛ(0ТКЛ- РЕАКТ. (г/;))
1 РЕ Ш (О ГК Л. РЕ АКТ- (у-.) > V
ЛРЕЗ(0ТКЛ.РЕАКТ. (у,Р
~\РЕШ(ОТКЛ.РЕАКТ. (у. У'1 V
1 РЕАКТ(у1,ВКЛ)
1РЕШ (РТКЛ. РЕ А К Т. (У; >)
Цепочка вывода в модели стабилизации напряжения за счет его увеличе¬
ния представлена на рис. 5.29 в виде дерева вывода. Для упрощения обрам¬
ленные литеры здесь не показаны.
Блок ДИСПЕТЧЕР обеспечивает взаимодействие дедуктивного процессора
с ИНТЕРФЕЙСОМ и организует последовательность прохождения программ
дедуктивного процессора. Он реализует следующие функции:
— обрабатывает запросы, поступнвшие от процессора ИНТЕРФЕЙС;
— организует планирование способа построения цепочки вывода;
— организует последовательный доступ к разделенным массивам ВХОД
н ТЕКСТ.
В связи с этим ДИСПЕТЧЕР представляет собой набор пз трех блоков:
— блока обработчика запросов;
— блока планировщика дедуктивного вывода;
— блока доступа к разделенным массивам ВХОД п ТЕКСТ.
Рассмотрим коротко функции каждого блока.
Блок обработчика запросов выполняет функции, связанные с умением пра¬
вильно реагировать па каждый сигнал, прпходящпй от процесса ИНТЕРФЕЙС
и организовать прием информации, поступившей с объекта управления — ее
yeE(U(X))V1C£K(X,y,P0)V
1РЕ АЛ(ОТКЛ. РЕ АКТ. ( у))
СДН(Х1.У1,РВ)
1РЕШ(1^1РЕЗ(1)УРЕАЛ(1)
1РЕАКТ(г/.ВКЛ)УРЕЗ(0ТКЛ.РЕАКТ.(у))
РЕАКТ(У^. ВКЛ)
РЕШИ)
"Ь (Z =ОТКЛ. РЕАКТ(уЛ)
Рис. 5.29
6.1. ОСОБЕННОСТИ СЕМАНТИЧЕСКИХ СЕТЕЙ
179
буферизацию. Кроме того, он осуществляет обработку сигналов, поступающих
от планировщика дедуктивного вывода.
Блок планировщика дедуктивного вывода осуществляет планирование де¬
ятельности, направленной па построение всевозможных цепочек вывода на
входного текста (так называемое статическое планирование), а также органи¬
зует работу по выполнению цепочек вывода, идентифицируемых входным
текстом (так называемое ситуационное планирование). Таким образом, если
на первом этапе планирования строятся цепочки вывода, то на втором этап»
происходит настройка полученных цепочек на входной текст.
Блок доступа к разделенным массивам ВХОД и ТЕКСТ осуществляет вы¬
полнение функции записи информации, получаемой в процессе вывода, либо
в массив ВХОД и ТЕКСТ для последующей обработки ее фактографическим
процессором (например, по сигналу «ситуация не распознана»), либо в массив
ТЕКСТ для организации ее выдачи лицу, принимающему решения (например,
по сигналу «решение»), либо в массив ВХОД и в БД дедуктивного процессора
(например по сигналу «ситуация не конфликтна»).
ГЛАВА 6
ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
6.1. Особенности семантических сетей
для систем принятия решений
Основные понятия и структура семантических сетей были рас¬
смотрены в гл. 4. Здесь же мы остановимся на той структуре се¬
мантических сетей и ее особенностях, которые были использованы
в алгоритмах дедуктивного вывода, примененных в системе опера¬
тивно-диспетчерского управления сложными объектами.
Как уже говорилось, в семантической сети вершины представ¬
ляют собой понятийные объекты, а дуги — семантические отноше¬
ния. Среди понятийных объектов можно выделить такие виды как
собственно понятийные объекты, объекты — события и объекты —
характеристики (свойства).
Понятия являются константами области знаний, описываемой
семантической сетью и указывают предметы или абстракции.
Событиями семантической сети являются конкретные или абст¬
рактные действия. На.графе событие представлено вершиной, по¬
меченной именем события, из которой выходят дуги, соответству¬
ющие падежным семантическим отношениям. Семантические паде¬
жи определяют объекты и характеристики данного события. Данный
тип отношений играет ключевую роль в общей организации семан¬
тической сети, определяя как взаимосвязи отдельных объектов, так
и структуру вывода в сети.
Характеристики (свойства) служат для описания понятий, со¬
бытий и даже самих характеристик. Для понятий характеристиками
являются свойства и состояния, которые присущи понятию или
приписаны ему; для событий характеристики описывают общие
свойства, которые имеют постоянное значение в любом контексте.
12*
180
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
В семантических сетях связями между понятиями являются струк¬
турные, логические и процедурные связи. Поясним их на примере
предметной области, касающейся учета текущей успеваемости сту¬
дентов на факультете.
Сведения о конкретном студенте могут включать его фамилию,
специальность, группу, в которой он учится, курс, дисциплину
и т. п. Тогда между понятиями СТУДЕНТ и ДИСЦИПЛИНА име¬
ется структурная связь. Между понятиями УСПЕВАЮЩИЙ и
СТУДЕНТ есть тривиальная логическая связь: всякий индивидуум,
принадлежащий понятию УСПЕВАЮЩИЙ, принадлежит также
понятию СТУДЕНТ. Более сложная логическая связь наблюдается
между понятиями УСПЕВАЮЩИЙ, ОЦЕНКА, БАЛЛ и ДИСЦИП¬
ЛИНА: индивидуум является успевающим тогда и только тогда,
когда его оценка по каждой дисциплине не меньше трех баллов.
Между понятиями СРЕДНЯЯ УСПЕВАЕМОСТЬ, ГРУППА и ДИС¬
ЦИПЛИНА имеется процедурная связь, заключающаяся в том, что
средняя успеваемость студентов по данной дисциплине в группе
вычисляется как арифметическое среднее оценок всех студентов из
группы, полученных ими по данному предмету. В системах, осно¬
ванных на семантических сетях, как правило, используются струк¬
турные связи, а логические и процедурные связи применяются
меньше.
Слабое использование логических связей сильно ограничивает
дедуктивные способности систем, поэтому в дальнейшем основное
внимание будет уделено логическим связям.
Рассмотрим примеры высказываний и их соответствующие се¬
мантические сети. Например, высказывание «Книга 1 лежит на
столе 1», которое в исчислении
предикатов первого порядка име¬
ет вид: лежит (книга 1, стол 1),
можно выразить так, как показано
на рис. 6.1.
В сети буквой Р обозначена
пропозициональная вершина, со¬
ответствующая данному высказы¬
ванию в целом. Из пропозицио¬
нальной вершины выходят дуги
(CASE1, CASE 2, PRED), которые являются бинарными отноше¬
ниями. Дуги с меткой PROP указывают пропозициональную верши¬
ну и помогают в поиске таких вершин.
В семантической сети мы можем отобразить выражения разной
сложности, например, высказывания, которые выражают причинно-
следственные связи. Все это осуществляется за счет введения но¬
вых отношений. Например, предложение «Если робот находится
в комнате 1, тогда дверь 1 открыта в комнате 2», будет выражено
следующим образом: находится (робот, комната 1)-+открыта
(дверь 1, комната 2). Для того чтобы выразить такое высказыва¬
6.1. ОСОБЕННОСТИ СЕМАНТИЧЕСКИХ СЕТЕЙ
Ш
ние в семантической сети, введем новые отношения типа «условие»
и «заключение».
Более сложное высказывание типа
М {а, Ъ) & Q (с, а) -у М (е, /) V R (с, h)
отображается в сети введением отношений конъюнкции (К1 и К2)
й дизъюнкции D1 и D2 (см. рис. 6.2).
В дальнейшем для простоты дуги с меткой PROP будем опу¬
скать. Дизъюнкт вида ~| Вх \/ П V • • • V П Вт V V ^2 V • • • V А
будем в дальнейшем представлять как & В2 & ...
V А2 V • • • V^n, где Bi, В2, ..., Bm —условия, a Ah Аг, ..., Ап —
заключения (решения) дизъюнкта. Дизъюнкты без условия явля¬
ются утверждениями.
Рассмотрим примеры предложений и их соответствующие дизъ¬
юнктные формы. Пусть дано следующее выражение: «Куб номер 2
находится всегда в том же месте, где куб номер 1». В форме дизъ¬
юнкта это выражение имеет следующий вид: В(КУБ1, х)-у
-*-В(КУБ2, х). Здесь В —предикат «находится в месте», а х пред¬
ставляет собой любой индивидуум (связан квантором общности).
Утверждение «Куб номер 1 находится в месте а» будет запи¬
сано как И->В(КУБ1, а) или в дальнейшем будем употреблять
сокращенную запись: ->-В(КУБ1, а).
Выражение «Куб номер 1 не находится в месте а» будет иметь
вид: В(КУБ1, а)->Л или в сокращенной записи: В(КУБ1, а)-*,
что позволяет выражать отрицание. Аналогично записываются вы¬
ражения, содержащие конъюнкцию условий п/или дизъюнкцию
заключений.
182
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Если в выражениях имеются кванторы существования, то пере¬
менные, связанные этими кванторами, заменяются сколемовскими
функциями, а оставшиеся кванторы общности удаляются, считая,
что все переменные, ими связанные, являются универсально кван¬
тифицированными.
Рассмотрим эквивалентную совокупности дизъюнктов семанти¬
ческую сеть. Семантические сети должны быть организованы таким
образом, чтобы извлечение, вывод и анализ информации происхо¬
дил по возможности быстрее и эффективнее. С этой целью над
семантическими сетями введем операцию типа раскраски семанти¬
ческих сетей.
В нашем случае семантические сети представлены как раскра¬
шенные ориентированные графы. Представление в раскрашенном
виде семантических сетей уменьшает перебор при поиске инфор¬
мации, а также помогает во время вывода новых утверждений, что
повышает эффективность работы системы принятия решений.
Рассмотрим следующее правило раскраски семантических сетей:
если имеется дизъюнкт В -> А, то условие дизъюнкта В будет
«раскрашено» на семантической сети цветом Ц1 (на рисунках соот¬
ветствующие дуги изображены непрерывной линией), а заключе¬
ние А — цветом Ц2 (на рисунках — пунктирной линией). Это пра¬
вило распространяется также на случай множества условий и за¬
ключений дизъюнкта и на его частные случаи. Поясним сказанное
примером.
6.1. ОСОБЕННОСТИ СЕМАНТИЧЕСКИХ СЕТЕЙ
183
Пример 6.1.
Допустим имеется следующий набор высказываний:
1. Если куб номер 1 находится в месте а, то куб номер 2 тоже
находится в том же месте.
2. Если куб номер 1 находится в месте а, то куб номер 3 нахо¬
дится в месте Ъ.
3. Куб номер 1 находится в месте а.
В дизъюнктной форме эти высказывания имеют следующий вид:
1. В(КУБ1, д)-> В(КУБ2, а).
2. В(КУБ1, а) -*■ В (КУБЗ, Ь).
3. -*■ В(КУБ1, а).
Соответствующая раскрашенная семантическая сеть имеет вид,
представленный на рис. 6.3.
Допустим, мы хотим найти в сети утверждение
-*■ В(КУБ1, а).
Сначала находим все пропозициональные вершины, которые
связаны с вершинами «В», «КУБ1» и «а»; такими вершинами яв¬
ляются Р2, Pi, Р6. Затем последовательно проверяем эти вершины,
обнаруживая, что Р2 и Pi являются условиями дизъюнкта и по¬
этому они исключаются, а вершине Р6 соответствует третье утвер¬
ждение. Аналогично находится любое другое утверждение. За счет
локального возбуждения того или иного участ¬
ка сети значительно уменьшается время по¬
иска нужного утверждения. ss.
Таким образом, преимущество такого пред- KlX.
ставления заключается в следующем: \
а) дается эффективная индексация инфор¬
мации с помощью раскрашенных графов, что
позволяет обрабатывать сети большой раз- Рис. 6.4
мерности;
б) эффективно удаляется из сети информация, не относящаяся
к данному вопросу или к данной ситуации.
В дальнейшем для простоты будем изображать семантическую
сеть, состоящую из дизъюнктных вершин, т. е. вершин, которым
соответствуют исходные дизъюнкты, предикатных вершин и дуг,
помеченных двумя цветами (непрерывной линией представлено ус¬
ловие дизъюнкта, а прерывистой — заключение). Тогда семантиче¬
ская сеть на рпс. 6.3 после этих упрощений будет иметь вид, по¬
казанный на рис. 6.4. Здесь gh g2, g3 — исходные дизъюнкты,
а В — предикат.
Такие упрощенные семантические сети будем называть L-сетя¬
ми. Формально L-сеть задается четверкой вида L = <G, Р, Fu Fz>,
■где G — множество дизъюнктных вершин, Р — множество преди¬
катных вершип, F, — отображение G в Р, причем это отображение
осуществляется на дугах, «раскрашенных» цветом Ц1, и Fz — ото¬
бражение G в Р, которое осуществляется на дугах, «раскрашен¬
184
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
ных» цветом Ц2. L-сети введены нами только для удобства иллю¬
страций процедур дедуктивного вывода.
Семантические сети, являясь формализмом представления зна¬
ний в системах принятия решений, обладают, таким образом, сле¬
дующими особенностями.
1. В семантической сети представлены такие виды объектов,
как понятия, события, ситуации, а также специализированные ме¬
тоды вывода. При этом следует учесть, что увеличение номенклату¬
ры объектов снижает однородность сети и приводит к необходимо¬
сти увеличения арсенала методов вывода.
2. Многомерность семантических сетей позволяет представить
в них многочисленные семантические отношения, связывающие от¬
дельные понятия, понятия и события в предложениях, а также
предложения в текстах. Кроме того, в семантической сети может
быть отражена семантическая иерархия специализированных мето¬
дов вывода, определяющая их взаимоподчиненность.
3. Формализация, как структурное представление семантических
знаний, позволяет наложить на эти знания некоторую суперсеман¬
тику, отражающую относительную «силу» семантических отноше¬
ний, что способствует повышению эффективности вывода в семан¬
тических сетях.
4. На каждой стадии решения задачи можно четко разделить
полное знание системы (полная семантическая сеть) и текущее
знание — возбужденный участок семантической сети, в котором
производятся некоторые операции (процесс «понимания», выво¬
да и т. д.).
Необходимо учесть, что семантические представления часто про¬
игрывают в представлении чисто структурных отношений, легко
реализуемых в исчислении предикатов или процедурном представ¬
лении.
Поэтому ряд современных исследований в области представле¬
ния знаний идет по пути вложения в семантическое представление
некоторых фрагментов процедурных и декларативных представле¬
ний с целью объединения их преимуществ в новом, смешанном
представлении.
6.2. Методы дедукции на семантических сетях
в системах принятия решений
В связи с ограниченностью революционных методов дедуктивно¬
го вывода были разработаны нерезолюционные процедуры доказа¬
тельства теорем, использующие семантику предметной области.
Рассмотрим основные дедуктивные процедуры, ориентированные на
представление знаний о предметной области в виде семантических
сетей.
1. Метод поиска перечислений. Этот метод широко используется
в семантических сетях. Основная идея этого метода заключается в
6.2. МЕТОДЫ ДЕДУКЦИИ НА СЕМАНТИЧЕСКИХ СЕТЯХ
185
доказательстве истинности некоторого высказывания, заданного вы¬
ражениями (ключами), представимыми вершинами сети, между ко¬
торыми имеются явные связи. Поиск этого высказывания осущест¬
вляется одновременно от каждой из двух вершин сети, например,
А я В во всех направлениях (ограниченных дугами определенного
вида) до тех пор, пока не произойдет пересечение в некоторой вер¬
шине путей, идущих из вершин А (длина пути 1А) и В (длина пу¬
ти 1в) • Обычно выбирается та вершина, для которой сумма 1А + 1в
минимальна. В общем случае может быть найдено пересечение
в более чем одной вершине.
2. Метод наложений. В данном случае происходит сопоставле¬
ние отдельных фрагментов семантической сети. Суть такого сопо¬
ставления состоит в наложении одного фрагмента на другой и ус¬
пешным считается то наложение, в результате которого фрагменты
семантических сетей (структуры) оказываются идентичными.
Обычно считается, что переменная одной структуры может быть
идентична любой константе (или подструктуре) другой структуры.
Иногда на переменные, входящие в структуру, накладываются тре¬
бования, определяющие тип констант, с которыми они могут сопо¬
ставляться.
3. Специализированные выводы. В ряде систем для вывода оп¬
ределенных фактов используются специализированные правила
(или процедуры). Эти методы основаны на свойствах отношений.
Например, если отношение R является транзитивным и надо дока¬
зать истинность факта aRb, то в сети надо найти путь от а до Ъ по
отношению R. Если такой путь существует, то отсюда вытекает ис¬
тинность факта aRb. В общем случае определяют отношения как
композицию других отношений: R = Ri ° R2 °... ° Rn, и они исполь¬
зуются как схемы поиска при выводе новых утверждений.
Основной недостаток этих методов заключается в ограниченно¬
сти дедуктивных возможностей вывода, связанный с комбинатор¬
ным ростом числа наложений или пересечений и негибкостью этих
методов при переходе с одной предметной области на другую.
В последнее время разрабатываются дедуктивные алгоритмы,
приспособленные для решения задач в широком спектре систем
принятия решений и гибко реагирующие на любые изменения
предметной области.
Логико-лингвистическая модель, которую мы будем рассматри¬
вать, на языке исчисления предикатов первого порядка имеет вид
В1&В1&-'. StB^Aly А\у ...
В1&В1&...&B%2^Aly а\у ... (6Л)
В[ & в\ & ... & BTmr->A[ v а; V ... V Апг,
где, как и раньше, В\ — условия вывода, А\ — заключения (реше¬
186
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ. СЕТЯХ
ния) вывода, выраженные предикатами, и каждая формула этой
модели представляет собой дизъюнкт. Дизъюнкты, имеющие как
условия, так и заключения, представляют собой общие законы (ак¬
сиомы), соответствующие интенсиональному представлению знаний.
Дизъюнкты без условий — это факты, соответствующие экстенсио¬
нальному представлению. И наконец, дизъюнкты без заключений —
это отрицания фактов или цели, которые нужно доказать. Как
обычно, используем процедуру опровержения при доказательстве
теорем. Канадой логико-лингвистической модели сопоставляется эк¬
вивалентная ей семантическая сеть.
Математически задача дедуктивного вывода формулируется сле¬
дующим образом. Задана логико-лингвистическая модель (6.1)
в виде соответствующей семантической сети и на ее вход подается
ситуация, представленная совокупностью фактов (утверждений)',
имеющих вид А{, Аг, ..Аи
Эта ситуация, накладываемая на семантическую сеть, представ¬
ляет собой текущее состояние системы принятия решений, отража¬
ющее динамику ее изменения. Кроме того, на вход модели подает¬
ся запрос следующего вида:
(ATi & & • • • & ^ \J N% \] ... \/Nh),
где >14<= {V, 3}, Mi и Ni — условия и заключения запроса.
Решением задачи дедукции является получение противоречий
в семантической сети или пустой сети (по аналогии с получением
пустого дизъюнкта в принципе резолюции). С прикладной точки
зрения решением задачи дедуктивного вывода будет являться по¬
лучение управляющих воздействий для системы принятия решений,
представляющих собой значения переменных при сопоставлении
фрагментов семантической сети в процессе вывода пустой сети.
Отметим, что процедура дедуктивного вывода основана на исполь¬
зовании многосортной логики предикатов первого порядка, что по¬
зволяет существенно ограничить область поиска необходимых ут¬
верждений.
В главе 3 отмечалось, что введение типов или сортов перемен¬
ных увеличивает выразительную мощь процедур дедуктивного
вывода.
Напомним, что сорт — это имя, данное совокупности известных
элементов в предметной области. Примерами сортов могут быть
«электростанция», «напряжение», «трансформаторы» и т. п. в пред¬
метной области, описывающей систему управления электростанция¬
ми. Все сорта являются подмножествами общего сорта UNIV.
Из сортов с помощью теоретико-множественных операций пересече¬
ния, объединения и дополнения можно построить более сложные
выражения (сложные сорта), которые применялись в алгоритмах
семантической обработки данных. Например, выражение «напряже¬
ние П высокий» означает множество высоких напряжений.
6.2. МЕТОДЫ ДЕДУКЦИИ НА СЕМАНТИЧЕСКИХ СЕТЯХ
187
Использование многосортной логики требует, чтобы алгоритм
унификации, разработанный Робинсоном (см. 5.3), был модифици¬
рован. Поясним на примере эту модификацию.
Пример 6.2. Пусть даны следующие предложения и области
определения их аргументов, заданные в виде непростых сортов или
явным перечислением их значений: ([а, Ъ, d]/xu [d, ё\/х2 «стан¬
ция 1 »/xk)P(xl, х2, f(xu х2), хк); ([а, Ъ, с, е]/уи «станция 2»/у2,
«станция П высокочастотный»/^, «станция П высокочастотный»/
yi)P(yu У*, у3, У-/), где [а, Ъ, с, d, е, ...]/ж означает, что х прини¬
мает значения из множества \а, Ь, с, d, е, ...], заданным явно пу¬
тем перечисления своих элементов, а А/у, что у принимает значе¬
ния из множества А, заданным неявно в виде сорта.
Требуется унифицировать эти предикаты. Для унификации
данных предикатов находим как в алгоритме синтаксической уни¬
фикации множество рассогласований {хи yj, элементы которого
есть переменные, что говорит о возможности подстановки. Затем
находим пересечение их сортов, т. е. [а, Ъ, d] П [а, Ъ, с, е] = [а, Ь],
которое не пусто, что говорит о возможности продолжения семан¬
тической унификации. Аналогично анализируем пересечение хг и у%
и проверяем, принадлежат ли элементы d или е элементам сорта
«станция 2». Пусть, например, йе«станция 2», а е ^«станция 2»,
тогда результирующая подстановка будет \d\/z2, где z2 — новое имя
переменных х2 и у2. Затем имеем множество рассогласований
{f(xi, х2), Уз). Подстановка возможна только в том случае, когда
алгоритм анализа функции f{xu х2) определит, принадлежит ли
область ее значений множеству элементов в сорте «станция» П «вы¬
сокочастотный». Пусть, например, значения функции j(xu х2) =
= [с, т, е] принадлежат элементам этого сорта, тогда результирую¬
щая подстановка будет f{xu х2)/у3. И, наконец, имеем {хк, у4).
Находим пересечение сортов «станция 1» и «станция» П «высокочас¬
тотный». Пусть выявлено, что «станция 1»с«станция»П«высокочас-
тотный». Тогда результирующая подстановка будет «станция 1 »/z4,
где Zi — новое имя переменных хк и у4. В итоге имеем ([a, b]/zu
[d]/z2, «станция l»/z4)P(zl, z2, f(zu z2), z4).
В алгоритме имеют место различные случаи согласования: двух
заменяемых переменных, заменяемой переменной и константы,
заменяемой переменной и функции и двух функций, из которых
одна описывает другую.
Алгоритм семантической унификации.
1. Установить к — 0, Wh = W и ok = е, где W — унифицируемые
выражения и oh — наиболее общий унификатор.
2. Если Wk не является одноэлементным множеством, то перей¬
ти к п. 3. В противном случае положить о = ак и окончить работу.
3. Каждая из литер в Wh рассматривается как цепочка симво¬
лов и выделяются первые подвыражения литер, не являющихся
одинаковыми у всех элементов Wh, т. е. образуется так называемое
множество рассогласований типа {vh, th).
188
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Имеют место следующие случаи:
а) если vk и tk — переменные и их соответствующие значения,
заданные явно в виде перечисления элементов, пересекаются, то их
непустое пересечение будет значением новой переменной, взятой
вместо vh и th. Аналогично, если vh и th — переменные и их соответ¬
ствующие значения, заданные неявно в виде сортов, пересекаются,
то их непустое пересечение будет значением новой переменной,
взятой вместо vh и th. Перейти к п. 4. В противном случае STOP,
выражения неунифицируемы;
б) если th—функция, a vh — переменная и пересечение их об¬
ластей значений не пусто, то подстановка функции вместо пере¬
менной имеет место, а это пересечение будет новой областью опре¬
делений для данной переменной. Переходим к п. 4. В противном
случае STOP, выражения неунифицируемы;
в) если th и vh—функции, область значений одной из которых
является подмножеством области значений другой, то унификация
продолжается. В унифицируемое выражение подставляется функ¬
ция, область значений которой является подмножеством области
значений другой функции. Переход к п. 4. В противном случае
STOP, выражения неунифицируемы;
г) если vk — переменная, a th — константа того же сорта, что и
переменная, то имеет место обычная подстановка константы вместо
переменной.
4. Пусть о„+1 = °{th/vh) и Wk+i = Wh{tjvh).
5. Установить к к + 1 и перейти к п. 2.
Алгоритм семантической унификации использовался во всех
алгоритмах дедуктивного вывода на семантических сетях.
В качестве правил вывода в алгоритмах дедукции применялись
modus tollens и modus ponens:
1) В-у А 2) В-у А
A-у -+В
В-+ -уА
С помощью первого правила получаем отрицания литер из исход¬
ных дизъюнктов, а с помощью второго правила — утверждения. На¬
пример, пусть заданы следующие дизъюнкты:
1) ПЕРЕКЛ. ТРР(х, у) & МАКС. ПЕРЕКЛ. ТРР(х, у)-у
~у РЕ АКТ (у, ВКЛ);
2) РЕАКТ(yl, ВКЛ) —;
где предикаты РЕАКТ ( ), ПЕРЕКЛ. ТРР( )' означают «вклю¬
чить некоторый реактор», «переключить трансформаторы».
Тогда по 1-му правилу получаем следующее отрицание
ПЕРЕКЛ. ТРР(х, yi) & МАКС. ПЕРЕКЛ. ТРР(х, yl)-y.
Например, если заданы дизъюнкты:
1) - СДН(xi, yi, ВО);
6.2. МЕТОДЫ ДЕДУКЦИИ НА СЕМАНТИЧЕСКИХ СЕТЯХ
189
2) -* РЕАКТ (xl, ВКЛ);
3) СДН(*1, у, R0)& РЕАКТ (х, z) -> РЕАКТ (у, z),
где СДН(ж1, г/1, R0) означает «соединить объекты и уи черег
сопротивление До», то, применяя 2-е правило, получаем новое ут¬
верждение:
РЕАКТ (г/1, ВКЛ) .
Рассмотрим выводы в семантической сети с применением 1-го и
2-го правил в упрощенном виде.
П ример 6.3. Допустим, имеется следующая логическая модель,
представленная в форме дизъюнктов:
-*■ А
АВ
В -> С (6.2)
C-+D
D -> Е
Необходимо доказать истинность утверждения Е. Соответствую¬
щая L-сеть показана на рис. 6.5.
Здесь gu g2, g3, gi, g5 обозначают вершины, соответствующие
дизъюнктам логической модели (6.2). Для доказательства возьмем
отрицание доказываемого и выводы
осуществляем до тех пор, пока не
получим противоречие.
Отрицанием доказываемого будет
Е-*-. После добавления этого дизъ¬
юнкта и после многократного приме¬
нения 1-г о правила семантическая
сеть преобразуется так, как показа¬
но на рис. 6.6, а, б, в, г, д. Напом¬
ним, что непрерывными линиями обозначены дуги, обозначающие
условия дизъюнктов (цвет Ц1), а прерывистыми линиями — заклю¬
чения дизъюнктов (цвет Ц2).
На последнем этапе получили противоречие, так как в семанти¬
ческой сети находится как факт ->А, так и его отрицание А-*-. Это
означает, что факт ->LJ доказан в данной логической модели.
Применение 2-го правила рассмотрим на следующем примере.
Пример 6.4.
А->■ В, В-+С, С (6.3)
Допустим, надо доказать дизъюнкт А отрицанием которого
является -»- А. L-сеть после добавления этого дизъюнкта примет
вид, показанный на рис. 6.7, а.
После применения 2-го правила данная сеть преобразуется так,
как показано на рис. 6.7, б, в.
190
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Получили противоречие — это означает, что А -*■ доказано
в данной логической модели. При доказательстве мы можем комби¬
нировать 1-е и 2-е правила.
В этих примерах мы рассматривали простейшие Z-сети. В даль¬
нейшем будем рассматривать L-сети более сложной структуры, учи¬
тывающие другие логические связки.
<§>©©©
Разработанные алгоритмы дедуктивного вывода на семантиче¬
ских сетях, описанные в следующем параграфе, можно разделить
на два вида:
1. Алгоритмы, в которых в процессе вывода семантическая сеть
ее изменяется;
6.3. АЛГОРИТМЫ ДЕДУКТИВНОГО ВЫВОДА
191
2. Алгоритмы, которые основаны на преобразовании семантиче¬
ских сетей.
В первом случае семантическая сеть рассматривается как абст¬
рактная структура данных, которая задает эффективную индекса¬
цию информации с помощью раскрашенных графов.
Во втором случае вводятся операторы преобразования семанти¬
ческих сетей. Эти операторы задают правила преобразования се¬
мантических сетей. Преобразование семантических сетей происхо¬
дит до тех пор, пока не обнаружено противоречие в сети. Кроме
того, разработанные алгоритмы подразделялись на полные и непол¬
ные. Естественно, что неполные алгоритмы работали более эффек¬
тивно (с точки зрения временных ресурсов и ресурсов памяти) для
данного класса задач, чем полные. Поэтому для решения задач вы¬
вода в системе оперативно-диспетчерского управления электростан¬
циями в основном были использованы неполные алгоритмы.
6.3. Алгоритмы дедуктивного вывода
на раскрашенных семантических сетях
Здесь будут рассмотрены два неполных алгоритма дедукции и
один полный алгоритм.
а) Алгоритм дедукции на раскрашенных семантических сетях
(алгоритм ALi).
Основная идея алгоритма AL, состоит в следующем: для дан¬
ной предикатной вершины Р выбирается любая контрарная пара
литер, которая затем резольвируется. Если вершина содержит дру¬
гие контрарные пары, то они рассматриваются, как альтернативные,
и их выбор происходит только после неудачи с унификацией теку¬
щей контрарной пары.
Если в вершпну входят дуги только одного цвета (так называе¬
мые «чистые» дизъюнкты), то они не влияют на процесс вывода
пустой сети и удаляются из рассмотрения. Процесс продолжается
до тех пор, пока не будет выведена пустая сеть. Данный алгоритм
относится к первому типу (в процессе вывода семантическая сеть
не изменяется).
При описании алгоритма используются следующие обозначения
и операции:
1) CAR(A)—выбирается первый элемент из списка А;
2) CDR(A)— исключается первый элемент из списка А;
3) CONS (А, 5)—первым элементом списка В становится под¬
список А;
4) о — наиболее общий унификатор;
5) NIL — пустой список;
б) Еспомогательные списки:
PC — рабочий список;
СА — список альтернатив.
192
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Каждый элемент списка PC имеет вид
(Р, g, I), (6.4)
где Р — предикатный символ, g — имя дизъюнкта, которому при¬
надлежит предикат Р, I — индикатор, причем
I = 1, если дуга (g, Р) раскрашена цветом Ц1;
1 = 2, если дуга (g, Р) раскрашена цветом Ц2.
Структуру предиката Р мы можем установить из семантической
сети с помощью структурных связей.
Алгоритм вывода пустой сети AL,:
1) PC ■<- NIL; СА ■*- NIL;
2) А-^-F\.(g)\} F2{g); где F1 и F2 — отображения G в Р для
двух цветов (см. формальное определение L-сети в 6.1);
3) Множество А модифицируется таким образом, чтобы каждый
его элемент имел вид (6.4);
4) PC ■*- А;
5) Берется первый элемент PC, имеющий вид (Р, g, 7);
PC-CDR(PC);
6) Если 7 = 1, то G — F2"1 (P)\g;
Если 1 = 2, то G ■*- Fl~i (Р) \g, где FI-1 и F2~l — отображения,
обратные F1 и F2\
7) Для всех g' е G повторяются шаги 8 -т-15 до тех пор, пока
не будет исчерпан список G;
8) B+-Fl(g')UF2(g')-,
9) Модифицируется В в соответствии с (6.4);
10) Берется первый элемент (Р', g', I') из списка Б и он ис¬
ключается из этого списка, причем имена предикатов Р и Р' сов¬
падают, а /' = 1, если 1 = 2 и Г = 2, если 7=1; если таких эле¬
ментов нет для Vg' е G, то переход к п. 18;
11) Находим наиболее общий унификатор а для Р и Р';
12) В*- В U PC;
13) В*-Во\
14) Если В = NIL, то процедура закончилась успешно, в про¬
тивном случае переход к п. 15;
15) СА■«- CONS(5, СА);
16) PC CAR(CA); CA^-CDR(CA);
17) Переход к п. 5;
18) Если CA = NIL, то процедура закончилась неудачно, в про¬
тивном случае выполнение следующего действия:
PC ■<- CAR(CA); CA4-CDR(CA);
19) Переход к п. 5.
Поясним работу алгоритма на примере.
Пример 6.5. Пусть множество дизъюнктов имеет вид:
&: Q(x, у)&М(у, в)-*-.
g2: М(и, v)&H(v, w)-+ Q(u, w).
g3: F(x, y)& M(z, y)-+ H(x, z).
6 3. АЛГОРИТМЫ ДЕДУКТИВНОГО ВЫВОДА
103
g4: -*■ м(Ъ, а).
£5: — F(c, а),
g6: — M(d, с).
Соответствующая логическая сеть показана на рис. 6.8.
Алгоритм ALl
1. PC-NIL; СА — NIL.
2. А -Ш, <?}.
3. А +-{(М(у, a), gu 1), [Q{x, у), gu 1)}.
4. PC — {(М(у, a), gu 1), у), gu 1)}.
5 -ь 16:
G — {#4, g6}.
B+-Fi(gl)UF2(gl).
В -ШК
В*-{(М(Ъ, a), gi, 2)}.
о — {Ь/у}.
В дальнейшем для краткости будем показывать только измене¬
ние PC (п. 16) и СА (п. 18).
16. PC-{(<?(*, Ъ), gl, 1)}.
о+-{х/и, b/w}.
PC— {{М{х, v), g2, 1), (Я(у, Ъ), g2, 1)}; о— {b/х, a/v).
PC—{(Я(а, Ъ), gz, 1)}; о— {а/х, b/z).
СА —{{(Я(с, Ь), gz, 1)}}.
PC— {(M(b, у), gs, 1), (F(a, у), g3, 1)); о — {а/у}.
PC—{(/'’(а, a), gz, 1)}. Тупик, переход к п. 18.
18. PC — CAR(CA) ={(Я(с, b),gz, lh
СА — CDR(CA) = NIL.
о “*■—{с/х Ь/z\
PC— {(М(Ь, у), gz, 1), (F(c, у), gz, 1)}; ff-{a/i/}.
PC — {(Я(с, a), gz, 1)}; o—{ ).
PC-{ }.
Процедура закончилась успешно.
Разработанный алгоритм позволяет обрабатывать сети большой
Размерности и извлекать нужную информацию более быстрым и
13 в. Н. Вагин
194
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
эффективным способом, нежели методами дедукции, основанными
на принципе резолюции.
Алгоритм дедукции АЦ неполон, т. е. он не гарантирует в лю¬
бых случаях получение пустого дизъюнкта □ для невыполнимого
исходного множества дизъюнктов S. Доказательство неполноты это¬
го алгоритма проведем путем рассмотрения контрпримера.
Пример 6.6. Имеем невыполнимое множество дизъюнктов
S = {Q-»P, P-+Q, ->PVQ, P&Q-+}.
Зацикливание алгоритма ALi происходит на шаге 5, так как в
рабочем списке PC поочередно порождаются дизъюнкты Н Q, "~\Р
~] Q, ~| Р и т. д. Однако этот алгоритм эффективен для примене¬
ния в таких системах принятия решении, которые описываются на¬
бором дизъюнктов типа хорновских, обладающих тем свойством,
что в резольвировании всегда участвует один из исходных дизъюнк¬
тов. Поэтому данный метод дедуктивного вывода на семантических
сетях успешно применялся в системе оперативно-диспетчерского
управления энергообъединением.
б) Алгоритм дедукции с использованием операторов удаления и
расщепления вершин семантических сетей (алгоритм AL2).
Опишем алгоритм преобразования семантических сетей, ре¬
зультатом которого является получение пустой сети — проти¬
воречия, т. е. ситуации, в которой находится как факт, так и его
отрицание.
Сначала рассмотрим основные операторы преобразования семан¬
тических сетей. Эти операторы следующие:
1. Оператор удаления вершины.
2. Оператор расщепления вершины.
Будем говорить, что предикатная вершина свободна от мульти¬
дуг, если число дуг, выходящих из одной и той же какой-нибудь
другой вершины и входящих в данную вершину, не больше
единицы.
1. Оператор удаления вершины. Если в L-сети имеется верши¬
на, которая свободна от мультидуг, тогда сеть всегда может быть
преобразована так, чтобы она не содержала этой вершины. Если
таких вершин несколько, то все они могут быть удалены из сети.
Например, на рис. 6.9 вершины Р и R свободны от мультидуг,
а вершина Q имеет мультидуги.
Правило удаления вершины следующее: если в А-сетн имеется
вершина Р п этой вершиной связаны дизъюнкты gu g2l ..., gn. то
после всевозможных резольвировании дизъюнктов gu ..., ga по
предикату Р из сети удаляются дизъюнкты gu ..., gn и добавляют¬
ся новые дизъюнкты, полученные резольвированием gt, ..., gn. На¬
пример, после удаления вершины R на рис. 6.9, а получаем А-сеть,
которая показана на рис. 6.9, б. Вершина будет также удалена из
сети в случае «чистого» дизъюнкта.
6.3. АЛГОРИТМЫ ДЕДУКТИВНОГО ВЫВОДА
195
Покажем, что такое преобразование является эквивалентным.
Обозначим оператор удаления вершпны Р через UF. Сначала дока¬
жем эквивалентность такого преобразования для фундаментальных
примеров.
Допустим имеется множество фундаментальных примеров
дизъюнктов;
s = {Р V Л- р V Л. ..., р v гп, п р v #i, П р V я2, ...
..., -\р\/пп, Фх, ф2, ..., ФД,
где Г i, Г ..., Гр, Пи П2, ..., Пт; Ф4, Ф2, ..., Ф; являются дизъ¬
юнктами, которые не содержат предиката Р. Это соответствует то¬
му, что в L-сети предикатная вершина Р свободна от мультпдуг.
^ б
Рис. 6.9
После применения оператора UF множество дпзъюнктов S при¬
мет вид
rlvnmrtvnl,...
. . ., Гп V Пи .. ., Гп V Пт, Фи 02, ..., ФД-
Чтобы показать эквивалентность [/-преобразования рассмотрим два
случая:
1) множество дизъюнктов S выполнимо тогда и только тогда,
когда при каждой интерпретации пли (Л, Г2, ■ • •, Л) пли
{Пи П2, ..., Пт} принимают значение И. Это значит, что множест¬
во дизъюнктов Si также выполнимо;
2) множество S не выполнимо тогда и только тогда, когда
5' = {Я, Пт, Фи ..., ФД и 5" ={л, Г2, Ли Фи ФД Яв¬
ляются также невыполнимыми множествами. Это значит, что мно¬
жество дизъюнктов Si также не выполнимо. Этим доказывается
эквивалентность [/-преобразования. Для доказательства эквивалент¬
ности [/-преобразования в общем случае логики предикатов первого
порядка применим теорему Эрбрана и лемму подъема.
2. Оператор расщепления вершины. Оператор расщепления вер¬
шины применяется при налпчии в предикатной вершине мультидуг.
Обозначим его через Ri, что означает расщепление вепшины Р по
Дуге I.
13»
196
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Например, для L-сети на рис. 6.10а после применения оператора
й образуется L-сеть, изображенная на рис. 6.106.
Формально оператор расщепления определим следующим обра¬
зом. Пусть имеется множество дизъюнктов S — {Р V Г, Ф}, где
РУГ — дизъюнкт, в котором компонент дизъюнкта Г содержит
также литеру Р, а Ф — любое подмножество дизъюнктов. Тогда
после применения оператора R множество S примет вид
Надо отметить, что й-преобразование не дает эквивалентного
преобразования, где под эквивалентным преобразованием понима¬
ется следующее.
Пусть S — выполнимое множество дизъюнктов. Тогда после й-
преобразования получается множество дизъюнктов S', которое так¬
же является выполнимым. Это легко доказывается от противного.
В случае же невыполнимого множества дизъюнктов S данное
преобразование в общем случае является неэквивалентным, что
обуславливается неразрешимостью логики предикатов первого по¬
рядка. Поэтому алгоритмы, разработанные на основе й-преобразо-
вания, являются неполными. Однако проверка этих алгоритмов на
конкретных конечных предметных областях показала их высокую
эффективность по времени решения задач и ресурсов памяти ЭВМ.
Алгоритм вывода пустой сети с использованием операторов уда¬
ления и расщепления состоит в следующем.
1. Если в семантической сети присутствуют вершины, к кото¬
рым применим оператор U, то после применения этого оператора
эти вершины удаляются.
2. Если имеются вершины с мультидугами, то применяем опе¬
ратор расщепления й, результатом которого являются вершины,
свободные от мультидуг. После этого снова применяем оператор U
и т. д., пока не получим противоречие в сети.
Рассмотрим примеры решения задач с применением операто¬
ров U и R.
б
Рис. 6.10
6.3. АЛГОРИТМЫ ДЕДУКТИВНОГО ВЫВОДА
197
Пример 6.7. Пусть задано следующее множество дизъюнктов:
-> Q(a) VR(x),
^ ^ )
R(x)&S(a)-+T(b),
Т(х)^.
Соответствующая сеть показана на рис. 6.11, а. После последо¬
вательного применения оператора U получаем сети, показанные на
рис. 6.11, б, в, г, причем на последнем рисунке получили противо¬
речие. Это говорит о том, что исходное множество дизъюнктов про¬
тиворечиво.
При доказательстве противоречивости множества S в примере
6.7 мы использовали только оператор U, так как семантическая
сеть не содержала мультидуг. Теперь рассмотрим пример, где ис¬
пользуются как оператор U, так и оператор R.
Пример 6.8. Пусть задано множество дизъюнктов:
S(y)&S (х) &Р{х,1 (у), z)-*-S (z), (
-v S (а),
S(e)-+.
Соответствующая L-сеть показана на рис. 6.12, а. После приме¬
нения оператора Up имеем сеть, представленную на рис. 6.12, б.
а
6
и
8
Рис. 6.11
198
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД ПА СЕМАНТИЧЕСКИХ СЕТЯХ
Далее последовательное применение операторов R и U приводит к
получению противоречивой сети. Соответствующие шаги показаны
на рис. 6.12, в, г, д, е.
Описание алгоритма AL2.
1. Если в сети имеется вершина, которая свободна от мульти¬
дуг, то переход к п. 2, иначе к п. 8.
S(y>[ \S(e~ О (у)/ \S(s)
A
d
Рис. 6.12
О
\3(S)
\
CD
> /
S<a>/ \S(?
r\
2. Выделяем предикатную вершину P, которая свободна от
мультидуг.
3. Вычисляем A +-Fl~l(P).
4. Вычисляем В F2~i (Р).
5. F+-A UB.
6. Резольвируем дизъюнкты из множества F по предикату Р\
если получили пустой дизъюнкт, то процедура закончилась успеш¬
но, иначе переход к п. 7.
7. В семантическую сеть добавляются все дизъюнкты, сгенери¬
рованные в п. 6, и из семантической сети удаляются все дизъюнк¬
ты из множества F; переход к п. 1.
8. Применяем оператор Вр, пока не получим вершину, свобод¬
ную от мультидуг. Переход к п. 1.
Эксперименты показали, что стратегии преобразования сетей
дают большую эффективность в системах принятия решений.
в) Полный алгоритм дедукции на семантических сетях (алго¬
ритм ALj).
6.3. АЛГОРИТМЫ ДЕДУКТИВНОГО ВЫВОДА
199
Имеем множество дизъюнктов S. Выделим из каждого дизъюнк¬
та какую-нибудь литеру. Получим последовательность литер
Li, Lz, ..Ln. Любую последовательность литер назовем путем на
множестве дизъюнктов S. Например, для S = {F (а) V Q Ф),
"~\P(x)\J С (d), Д С (я)} путем будет следующая последователь¬
ность литер: Р (а), Д Р (х), Д С {х).
Опишем алгоритм вывода пустого дизъюнкта из противоречиво¬
го множества дизъюнктов S.
1. Выделяем какой-нибудь путь р из исходного множества
дизъюнктов S.
2. Выводим всевозможные дизъюнкты на этом пути, т. е. если
на пути р имеются контрарные пары, то они резольвируются и из
оставшихся частей дизъюнктов, к которым принадлежат эти пары,
формируются новые дизъюнкты.
3. Вновь сформулированные дизъюнкты добавляются в множест¬
во S и в выбранный путь р добавляем новые литеры из новых
дизъюнктов. Процесс продолжается до получения пустого дизъ¬
юнкта.
На семантической сети выделение литеры соответствует выделе¬
нию соответствующей вершины по дуге, которая взвешена этой ли¬
терой. Тогда путем на множестве дизъюнктов будем называть мно¬
жество выделенных соответствующими литерами вершин на семан¬
тической сети.
Для семантических сетей этот алгоритм состоит в следующем:
после выделения предикатных вершин получаем множество выде¬
ленных вершин, дизъюнкты которых или резольвируются или нет.
После резольвирования литеры вновь образованных дизъюнктов до¬
бавляются к выделенным вершинам и процесс продолжается до
получения противоречия в сети.
Данный алгоритм может быть использован вместе с оператором
удаления. Использование оператора расщепления в данном алго¬
ритме приводит к потере полноты алгоритма. Приведем пример вы¬
вода для следующего множества дизъюнктов (см. рис. 6.13, а).
Пример 6.9.
-+Р{х, 1(х), е),
S(x)&P(x, 1(у), e)-*-S(z),
S(а),
е)->.
После применения оператора удаления вершины получается
сеть, показанная на рис. 6.13, б. Далее применяется алгоритм AL3,
шаги которого показаны на рисунках 6.13, в, г. По шагам алгоритм
АЬ3 можно описать следующим образом.
1. В Р записываем множество всех предикатных вершин.
2. Формируем списокАч- (J F1-1(P), Лч- у F2-1 (Р), F4-A у Bs
р v
где ре р.
200
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
3. Для каждого дизъюнкта из списка F выделяем литеру и со¬
ответствующую вершину на L-сети. Кроме того, для одинаковых
литер выделяется одна вершина. Множество выделенных вершин
записываем в список D.
4. Для каждой вершины из D резольвируем дизъюнкты по пре¬
дикатам из D. Если получили пустой дизъюнкт, то процедура за¬
кончилась успешно, иначе переход к п. 5.
5. Из вновь сформированных дизъюнктов выделяем литеры и
добавляем их к соответствующим выделенным вершинам; пере¬
ход к п. 4.
Алгоритм AL3 полон, что устанавливается следующими леммой
и теоремой.
Лемма. Если S — невыполнимое множество фундаментальных
дизъюнктов, то имеется вывод пустого дизъюнкта по алгоритму AL3.
Теорема 6.1. Если множество дизъюнктов противоречиво,
то имеется вывод пустого дизъюнкта по алгоритму AL3.
6.4. Параллелизм в дедуктивном выводе
на семантических сетях
Прежде чем говорить о параллельном выводе на семантических
сетях, остановимся коротко на видах параллелизма, возникающих
в логическом программировании, ориентированном в основном на
языки типа PROLOG.
6
В
г
Рис. 6.13
6.4. ПАРАЛЛЕЛИЗМ В ДЕДУКТИВНОМ ВЫВОДЕ
201
Обычно интерпретатор логических программ начинает свою ра¬
боту с целевого утверждения, например, такого как Р (х) &
&Q(x) &П(у)*\ состоящего из трех подцелей P(z), Q(x) и П(у)
и пытается с помощью принципа резолюции вывести пустой дизъ¬
юнкт. Для этого он ищет подходящий дизъюнкт, который разреша¬
ет подцель, скажем Р(х) и формирует новое целевое утверждение.
В образующемся дереве вывода возникают следующие виды парал¬
лелизма:
1. OR-параллелизм. Система вывода параллельно сопоставляет
некоторое целевое утверждение с головами тех дизъюнктов-канди-
датов, подходящих для такого сопоставления. При этом параллель¬
но происходит унификация соответствующих литер и генерация но¬
вых дизъюнктов.
2. AND-параллелизм. Система вывода параллельно решает две
или более подцелей, находящихся в целевом утверждении. Здесь
появляются довольно сложные проблемы. Так, в вышеприведенном
целевом утверждении две подцели Р{х) и Q{x) имеют общую пе¬
ременную х, и система вывода должна гарантировать, что при па¬
раллельном разрешении этих подцелей переменная х будет связана
одним и тем же значением. В противном случае возникает противо¬
речие, которое необходимо разрешить.
Будем называть переменную х простой переменной, если она
появляется в дизъюнкте только один раз (конечно, при последова¬
тельной унификации переменная будет также простой и при более
чем одном ее вхождении в дизъюнкт).
Переменная х называется разделенной, если она имеет более
чем одно вхождение в дизъюнкт при условии параллельной унифи¬
кации (т. е. один и тот же терм должен быть связан с каждым
вхождением этой переменной).
При унификации простой переменной с некоторым термом не
образуется, как говорят, никакой связи, а осуществляется простая
подстановка этого терма вместо переменной. При унификации раз¬
деленной переменной с некоторым термом формируется так назы¬
ваемая среда связей, представляющая собой список разделенных
переменных и их подстановок (примеров) для проверки непротиво¬
речивости этих связей при параллельной унификации. Естественно,
что система вывода может эффективно использовать AND-паралле-
лизм лишь при условии простых переменных и требует довольно
сложной организации в случае разделенных переменных.
В процессе доказательства утверждений в логико-лингвистиче¬
ской модели, реализованной в виде соответствующей семантической
сети, можно выделить следующие типы параллелизма (используем
алгоритм вывода с операторами удаления и расщепления вершин).
а. Параллелизм в процессе унификации, осуществляемый внут¬
ри одной вершины, свободной от мультидуг. Относящиеся к преди¬
*) Здесь используется нотация языка PROLOG.
202
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
катной вершине дизъюнкты резольвируются по литере, принадле¬
жащей этой вершине, т. е. осуществляется параллельная унифика¬
ция аргументов литеры цвета 1 (2) с аргументами литер-кандида-
тов цвета 2 (1) и параллельная генерация новых дизъюнктов.
Пример 6.10. Имеем невыполнимое множество дизъюнктов:
1. Q&M^ .
2. M&H^Q.
3. F&M -+Н.
4. -«-ЛГ.
5. F.
В представленной на рис. 6.14, а сети, описывающей данное мно¬
жество дизъюнктов, вершине М соответствуют три дизъюнкта
(1, 2, 3) с литерой М цвета 1 и один дизъюнкт (4) с литерой М
Рис. 6.14
цвета 2. Их параллельная унификация (для простоты аргументы
литер опущены) сопровождается генерацией также параллельно
новых дизъюнктов 6, 7, 8, изображенных на рис. 6.14, 6 (причем
происходит копирование дизъюнкта (4) столько раз, сколько име¬
ется дизъюнктов-кандидатов на параллельную унификацию, в на¬
шем случае 3 раза).
Замечание', параллельную унификацию не надо путать с парал¬
лельной обработкой всех аргументов литеры одновременно. В на¬
шем случае аргументы литеры обрабатываются последовательно.
Этот вид параллелизма соответствует OR-параллелизму в логи¬
ческих программах.
б. Параллельное удаление вершин, свободных от мулътидуг,
не имеющих общих дизъюнктов, т. е. параллельное применение
оператора удаления вершин. Для выбора вершин, не имеющих об¬
щих дизъюнктов, можно применить простое эвристическое правило:
выбираются вершины с минимальным числом дуг, связывающих их
с другими вершинами.
6.4. ПАРАЛЛЕЛИЗМ В ДЕДУКТИВНОМ ВЫВОДЕ
203
Пример 6.11. Имеем невыполнимое множество дизъюнктов:
1. N-+P. 6. Т & R-+Q.
2 .P^S. 7. Q^N.
3 .S-M. 8.
4. М-+Т. 9. -+Т.
5. -+MVR. 10. IV-*-.
Соответствующая им сеть показана на рис. 6.15, а. Параллель¬
но удаляем вершины Р, Q, М (возможны другие варианты). В ре¬
зультате получаем сеть, представленную на рис. 6.15, б. Затем ана¬
логично удаляем одновременно вершины S и R. Получаем сеть,
представленную на рис. 6.15, в.
KQ
б
Рис. 6.15
в. Параллельная стяжка мулътидуг одного цвета (если это воз¬
можно) как внутри одной вершины, так и среди множества вер¬
шин, что соответствует получению фактор-дизъюнктов в принципе
резолюции.
Пример 6.12. На рис. 6.16, а показана сеть, соответствующая
следующему множеству дизъюнктов:
204
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
1. Р{х, у)->- R(а, х).
2. R(u, f(x))&R(v, iv)-+.
3. — P(f(x), y)V P{w, z).
Здесь для дизъюнктов 2 и 3 имеем наиболее общие унификато¬
ры (НОУ) Oi={u/v, f(x)/w} и o2={f(x)/w, y/z} соответственно,
что приводит их к виду
2'. Я (и, f{x))^ .
3'. “*■ РU(x)i у)
и к сети, представленной на рис. 6.16, б.
г. Параллельное расщепление внутри одной вершины, имеющей
несколько мультидуг. С помощью оператора расщепления произво-
[ | R<u,f(X)) !
/?(V,ZD>\ ’ '
\ / Рпп 7)'
PiU',Z)
Рис. 6.16
дим параллельное расщепление внутри одной вершины, имеющей
несколько мультидуг (неваяшо одного или разных цветов).
Пример 6.13. Имеем
1. Р(х, y) + P(f(x), у).
2. Р(и, }{x))&P{v, g(w))— .
3. ^P(g(x), y)VP(a, z).
4. -+P(a, x),
что соответствует сети на рис. 6.17, а. Производим параллельпое
расщепление трех мультидуг (трех «лепестков») вершины Р с по¬
мощью оператора расщепления, в результате чего получаем четыре
вершины Pi, Р2, Р3, Р (их число на единицу больше числа «ле¬
пестков»), четыре копии дизъюнкта 4, три копии «расщепленного»
дизъюнкта 1, две копии «расщепленного» дизъюнкта 2 с его дуб¬
лированием в вершине Р и «расщепленный» дизъюнкт 3 с его
дублированием в вершинах Р и Р3 (см. рис. 6.17, б).
Для наглядности введем следующий фиктивный порядок рас¬
щепления (хотя никакого «порядка» нет, так как все делается па¬
раллельно): сначала расщепляется мультидуга (1 — Р), затем
(2 — Р) и, наконец, мультидуга (3 — Р).
д. Параллельное расщепление нескольких вершин, имеющих
мультидуги. Параллельно применяе.м оператор расщепления к вер¬
шинам имеющим мультидуги.
6.4. ПАРАЛЛЕЛИЗМ В ДЕДУКТИВНОМ ВЫВОДЕ
205
Пример 6.14. На рис. 6.18, а представлена сеть, соответствую¬
щая следующему множеству дизъюнктов:
1. Q(x, y)^Q(f{x), у).
2. Р(и, v) Q(a, х).
3. ->■ P(f(x), y)V Р(а, z).
4. Q(u, v) .
Имеем две вершины с мультидугами, расщепление которых
можно производить параллельно. В результате получим сеть, пока¬
занную на рис. 6.18, б.
Возможно параллельное удаление вершин, свободных от муль¬
тидуг и не имеющих общих дизъюнктов, производить одновременно
с параллельной унификацией внутри этих вершин (т. е. комбина¬
ция параллелизмов типа а и б). Аналогично, если имеется несколь¬
ко вершин с мультидугами, то можно произвести параллельное рас¬
щепление этих вершин с параллельным расщеплением внутри
каждой такой вершины (т. е. комбинация параллелизмов ти¬
па г и д.).
Приведем теперь параллельный алгоритм вывода на семантиче¬
ских сетях.
208
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Алгоритм PAL.
1. Если в семантический сети имеются вершины, свободные от
мулындуг, то переход к п. 2, иначе к п. 8.
2. Выделяем предикатные вершины Р, Q, ..R, не имеющие
общих дизъюнктов (эвристическое правило: выбираются вершины
с минимальным числом дуг, связывающих их с другими вер¬
шинами) .
P(a,z) | \Р(Г(х\у)
\ \ !
СЁЭ
С (и v\ ^1 (Х’ / A(f(x>’pA(u, V)
I
СЮ „С£5
Рпс. 6.18
3. Параллельно вычисляем
A^-Fi1 (Р),
Am-fr-F^1 (R),
где F^1 (Р) — отображенпе предикатной вершпны Р в множество
дизъюнктов, ей соответствующих, для цвета 1, и Ai, Л2, .... Ат —
списки.
4. Параллельно вычисляем
BX+-F?(F),
B2+-F^ (<?),
Bh^-F^{R),
6.4. ПАРАЛЛЕЛИЗМ В ДЕДУКТИВНОМ ВЫВОДЕ
207
где F.21 (Р) — отображение вершин Р в множество дизъюнктов, ей
соответствующих, для цвета 2, и J5lt Z?2, ..., Вк— списки.
5. D.^-A.UB,,
D2 Аз U В2,
6. Параллельное резольвирование дизъюнктов из множеств
D1, Д>, ..., Di по предикатам Р, Q, ..., R одновременно с парал¬
лельной унификацией внутри каждой предикатной вершины
Р, Q, R. Если получили пустую сеть (противоречие), то про¬
цедура закончилась успешно, иначе переход к п. 7.
7. В семантическую сеть добавляются все дизъюнкты, сгенери¬
рованные в п. 6, и из сети удаляются все дизъюнкты из списков
Du D2, ..., Z)(, т. е. удаляются параллельно вершины Р, Q, ..., R.
Переход к п. 1.
8. Произвести параллельную стяжку мультидуг одного цвета в
вершинах Р, Q, R (что соответствует нахождению фактор-
дизъюнктов) и переход в п. 1, иначе переход к п. 9.
9. Используя оператор расщепления вершины, произвести па¬
раллельное расщепление вершин с мультидугами одновременно
с параллельным расщеплением внутри каждой вершины, имеющей
несколько мультидуг, до тех пор, пока не получим вершины, сво¬
бодные от мультидуг. Переход к п. 1.
Для иллюстрации этого алгоритма приведем пример.
Пример 6.15. Имеем невыполнимое множество дизъюнктов:
1. М(с, а)&Я(а, u)-+Q{f{x), z).
2. М (z, у) &F(x, у)-*-Н(х, z).
8. М (и, v) & Н (v, w)-*-Q (и, w).
4. Т (у, v)->-R(a, х)У М(и, v).
5. с) V Т(х, и) V R(b,v).
6. F (с, у) & Н (х, с) & S (и, d) .
7. Q(x, у) & М (у, а) -»■.
8. -+М(Ь, а).
9. -> М (d, с).
10. -vF(c, а),
сеть для которого представлена на рис. 6.19, а. «Зажигаем» сеть
с трех сторон, т. е. активизируем вершины Q, F, Т (па рис. 6.19, а
они заштрихованы). После параллельного удаления этих вершин
получаем сеть на рис. 6.19, б. Затем последовательно удаляем вер¬
шины Н п S, причем в вершине S дизъюнкты не унифицируемы,
208
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
поэтому они удаляются вместе со своей вершиной (см. рис. 6.19, в,
г). Производим параллельную стяжку мультидуг в вершине М и
удаляем вершину R вместе со своим дизъюнктом. Получаем сеть
г 3 в ж
Рис. 6.19
на рис. 6.19, д. Затем вершину М расщепляем и имеем противоре¬
чие (см. рис. 6.19, е, ж), что говорит о невыполнимости исходного
множества дизъюнктов.
6.5. СИСТЕМА УПРАВЛЕНИЯ ЭНЕРГООБЪЕДИНЕНИЕМ
209
Отметим, что в предложенной процедуре параллельной дедук¬
ции поиск и вывод осуществляется не только «сверху—впиз» или
«снизу—вверх» или их комбинацией, но и по всем возможным
«фронтам» сети одновременно. Как говорят, метод «атакует» се¬
мантическую сеть со всех возможных стороп, что снимает вопросы
организации бэктрекинга или порядка разрешения литер в
дизъюнктах.
Алгоритм параллельного вывода может быть использован при
реализации параллельной машины вывода. Предлагавшиеся до сих
пор архитектуры параллельных машин вывода ориентированы,
главным образом, на языки логического программирования типа
PROLOG, которые на наш взгляд страдают существенными недо¬
статками. Эти недостатки связаны не только с ограниченностью
процедуры вывода (хорновские дизъюнкты, неполная входная резо¬
люция, поиск «только в глубину», порядок разрешения литер),
но также и тем, что языки логического программирования, как они
развиты на сегодняшний день, ориентированы, главным образом, на
фон-неймаиовскую архитектуру машин, что, конечно, является не¬
достаточным для создания принципиально новых образцов вычисли¬
тельных машин.
6.5. Применение алгоритмов дедукции на семантических сетях
в системе управления энергообъедннением
В п. 5.7 говорилось об основных программных комплексах системы уп¬
равления энергообъединенпем. Здесь яге мы коротко остановимся на архи¬
тектуре интерпретируемого комплекса программных средств данной системы
и на соотношениях между механизмами интерпретации и компиляции при ор¬
ганизации вычислительных процессов поиска решений.
Архитектура интерпретируемого комплекса программных средств системы
управления энергообъединением представляет собой композицию четырех
процессоров:
— ИНТЕРФЕЙС, коротко работа этого процессора была описапа в п. 5.7.
— ДИАЛОГ — данный процессор состоит из трех блоков. Блок обработки
вопроса — QUESTIOND осуществляет распознавание входного запроса. Блок
PROOF работает с базой знаний LISPKBD, вычисляя в последней область по¬
иска ответа на запрос. Блок ANSWER работает с базой данных LISPDBd, вы¬
деляя в последней подмножество дапных, поддерживающих область поиска
ответа. Взаимодействие этих блоков позволяет процессору выводить ответ на
запрос пользователю.
— ПОИСК РЕШЕНИЙ — данный процессор состоит из 4-х блоков. Блок
QUESTION^ осуществляет распознавание сообщений, поступающих из энерго¬
системы с целью выявления ситуаций, требующих принятия решений. Блок
PROOF осуществляет поиск в базе знаний LISPKBy, используя помощь блока
ISA. Блок ISA помогает блоку PROOF осуществлять поиск в иерархии базы
знаний. Блок ANSWER осуществляет вывод множества управляющих реше¬
ний пользователю — ЛИР.
— АДАПТАЦИЯ — данный процессор помогает организовать настройку
системы на предметную область управления. В его состав входят три блока.
Блок ввода аксиом AXIOM, который в диалоге с пользователем позволяет на¬
полнять базы знаний LISPKBd и LISPKBy. Блок ввода фактов, описывающих
предметную область — NET. Этот блок, работая в диалоге с пользователем, по-
14 в. п. вагин
210
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
зволяет паполнять базы данных LISPDBd и LISPDBy. Блок МЕТ осуществля¬
ет связь с системой первичной обработки, передавая входные сообщения па
вход процессора поиска решений.
Разработанные программные средства позволяют оргапизовать модели пред¬
метной области (LISPKB), модели данных (LISPDB), формально представляе¬
мых семантической сетью, осуществлять дедуктивный вывод решений на се¬
мантической сети.
Таким образом структурно-функциональные программные средства систе¬
мы управления энергообъединением состоят из:
1) препроцессора AXIOM — программы ввода в LISPKB моделей пред¬
метной области;
2) препроцессора NET — программы ввода фактуальной информации в
LISPDB:
3) ЛИСП-процессора PROOF-программы дедуктивного вывода (поиска
ответов);
4) препроцессора постановки запросов QUESTION к LISPKB;
5) препроцессора формирования от¬
ветов ANSWER:
6) процессора ISA-программы пост¬
роения isa-иерархии в LISPKB;
7) процессора работы с моделью
данных LISPDB.
Все программы реализованы средст¬
вами ЛИПС ЕС ЭВМ. Их объем состав¬
ляет 1800 ЛИПС-функций. Время реак¬
ции программного комплекса на запрос
в среднем составляет 1.5 минуты.
Теперь несколько слов о соотноше¬
нии между механизмами интерпрета¬
ции и компиляции при организации
вычислительных процессов поиска ре¬
шений.
Выбор одпого из механизмов орга¬
низации вычислительного процесса в
системе — компиляции или интерпрета¬
ции — определяется требованиями к ре¬
активности системы, с одной стороны,
п требованиями к времени разработки
системы, с другой стороны. Учитывая
это, в системе управления энергообъ¬
единением принята идеология, позволя¬
ющая совместить преимущества и недо¬
статки этих методов, а именно, для
проблемной области, в которой базы
знаний и данных полны, предлагается
использовать механизм компиляции, ко¬
торый дает быстрые времена ответа си¬
стемы на внешние ситуации; для про¬
блемной области, в которой базы зпа-
пий и данных далеки от полных, пред¬
лагается использовать мехапизм интерпретации. Понятие далекости от пол¬
ного здесь трактуется как несостоятельность заказчиков системы одновремен¬
но и точно описать предметную область и поставить на ней задачи. Предпо¬
лагается, что эта процедура итеративна и сильпо растянута по времени.
Последнее, в случае компилятивного подхода требует больших затрат на пе¬
ределку элемептов компиляции при каждой итерации и перестройку всех
связей элемептов как в базе знаний, так и в базе данных, что не совсем
просто и требует большого количества сил и высокой программистской ква-
W
.2,0
’,0
т
{.чел/легц
200
■Pl
-LISP
U-UL
Рис. 6.20
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 211
лифнкацип. Механизм интерпретации в силу того, что в каждый момент он
работает только с одним элементом, позволяет сколько угодно долго уточнять
и видоизменять этот элемент, не затрагивая самого механизма интерпретации.
А это как раз и требуется.
В данной системе в основу организации вычислительных процессов поиска
решений положен мехапизм интерпретации. В качестве средств программной
поддержки этого механизма используется стандартный ЛИСП-интерпрета-
тор ОС ЕС.
Одпой из задач исследований является установление ресурсных соотноше¬
ний между компилятивным и интерпретирующим подходами к построению
систем типа управления энергообъединением. Реализация механизмов систе¬
мы в интерпретирующем варианте и сравнение ее с уже имеющимся компи¬
лятивным вариантом позволила явпо выявить эти соотношения, которые и
представлены на рис. 6.20. Здесь в качестве ресурсов рассмотрены W — объем
программного раздела оперативной памяти, требуемой для работы системы
в килобайтах; Т — время, затраченное на программирование системы; TR —
время реакции системы на ситуацию/запрос; V — объем модели предметной об¬
ласти, выраженной в предложениях, описывающих причинно-следственные
связи вида А & В -*■ С.
Анализ получепных соотношений позволил сделать следующие выводы.
1. При компилятивном варианте достигается существенная экономия опе¬
ративной памяти и удается достичь приемлемых времен реакции системы на
входные ситуации, но требуется много квалифицированных людских ресурсов.
2. При интерпретационном варианте резко снижается количество людских
затрат на создание системы, что позволяет в сравнительно короткие сроки
проверять пригодность тех или иных механизмов поиска решений, полноту и
непротиворечивость баз знаний, механизм поддержания целостности баз;
данных.
Исходя из проведенного анализа, можно стропть архитектуру систем уп¬
равления энергообъединением.
6.6. Дедуктивный вывод в реляционных базах данных
Как и раньше, будем рассматривать БД, состоящую из двух
частей: экстенсиональной (ЭБД) и интенсиональной (ИБД^. Тогда
вычисление запроса в такой БД сводится к нахождению ответа
в ЭБД с помощью обычной коддовской техники и применению де¬
дуктивного механизма в ИБД с помощью процедур дедуктивного
вывода. Так как мы имеем дело с многосортной логикой предикатов
первого порядка, то БД содержит только типовые ППФ вида (Мат.
логика/ж) Обучать (Краснов, х), означающая, что Краснов обучает
всем курсам Математической логики. Здесь (Мат. логпка/ж) чи¬
тается как «для каждого х, который является Мат. логикой»,
а Обучать (Краснов, х) — обычная ППФ логики предикатов первого
порядка.
В общем случае типовая ППФ имеет вид
(тJXi, tJx2, ..., %Jxn) W
Для re ^ 0, где W — любая бескванторная ППФ, не содержащая
Функциональных символов, и т4, т2, ..., хп — типы (сорта) перемен¬
ных хи хг, ..хп, содержащиеся в W.
14*
212
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Формально запросом будем называть любое выражение вида
( Ti f X if ■ • ., TyJ Хп (9т/УтУт) УУ (^Н ■ • У if • • ч Ут')'^ 1
где (б/щщ) есть либо (0>/щ), либо(0j/3j/i) для ти 0-
типы и W(xlt ..., х„, ylt ..., Угп) — бескванторная формула, не со¬
держащая функциональных символов. Здесь (0i/3j/j) читается как
«существует у, типа 0,-». Сокращенно запрос будем представлять
в виде <т/х| (Q/qy) W7(х, у), означающее множество всех гс-ок х та¬
ких, что хе |т| и (0/9у)ИДх, у) истинно.
Мы предполагаем, что через |т! обозначено множество всех кон¬
стант типа т. Если т = ти т2, ..., т„, то тогда I т I = I tJ X... X |т„|.
Ответом на запрос Q = <т/х| (0/gy) НДх, у)> относительно БД
будем называть множество re-ок {с(1>, ..., с(г)} таких, что
1) с(,) е | тI, г = 1, 2, ..., г;
2) БД (— V (0/9у) W (c(i), у).
%<Г
Заметим, что если {с(1), с<2), ..., с<Г>} является ответом на запрос
Q и с — любая п-ка констант такая, что с ^ I т I, то {с(1>, с<2), ...
..с(г\ с} также является ответом на Q-
Ответ А на запрос Q называется минимальным, если никакое
подмножество А не является ответом на Q. Если А состоит из
единственной и-ки, т. е. \А\ = i, то А является определенным от¬
ветом на Q. В противном случае, А — неопределенный ответ. Обоз¬
начим неопределенный ответ через с(1) V с<2> V ... V с(г>, что под¬
разумевает х = с(1) или х = с(2) пли...или х = с(г). Наконец, обозна¬
чим !!<?'! как множество минимальных ответов на Q. Запрос вида
<т,х|(0/Зу)ИДх, у) будем называть экзистенциальным запросом.
Рассмотрим теперь процесс доказательства теорем, с помощью
которого может быть извлечено множество запросов Qt, ..., Qm в
предположении, что экстенсиональная часть БД намного больше,
чем интенсиональная. Для этого обратимся к примеру.
Пример 6.16 (Р. Рейтер). Интенсиональная часть БД (ИБД)
состоит из следующих общих законов:
1) лектор А обучает всем курсам «Математического анализа»:
(cal/z)Teach(/l. z);
2) лектор В обучает всем курсам «Математической логики»:
(ML/y)Teach(fi, у);
3) если лектор и обучает курсу v и студент w посещает лекции
по курсу v, тогда и является лектором студента w: (Teaclicr/w,
Course/г, Student/in)Enrolled (w, i>)&Teach(u, v) ->■ Teacher-of (w, u).
Экстенсиональная часть БД (ЭБД) состоит из следующих фактов:
1) I Teacher I = {А, В, С, D};
2) iStudent) = {а, Ъ, с, d)\
3) I Course I = {C100, C200, ML100, ML200, ML300, Я100, Я200,
P100, P200, P300}, где С, ML, H, P — сокращенные названия кур¬
сов математический анализ, математическая логика, химия, физика
соответственно;
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 213
4) I Calculus I = {СТ00, С2001:
5) IMath. Log.I = {ML100, ML200, ML3001;
у
С 100
Р 300
ML 100
С 200
ML 200
ML 300
Я 100
С 100
Я 200
Р 200
Р 300
Имеем запрос: «Кто является лектором студента а»?
Q = <Teacher/;r| Teacher-of (а, х)У.
Используем метод лннейпого опровержения, беря в качестве
верхнего дизъюнкта ~\ Teacher-of (а, х). При этом имеются две воз¬
можности:
а) этот верхний дизъюнкт может быть резольвирован с элемен¬
том ЭБД или
6) он может быть резольвирован с дизъюнктом ИБД.
Выбираем вторую возможность, резольвируя П Teacher-of (а, х) с
третьим дизъюнктом из ИБД, приведя предварительно его к виду
*~| Enrolled (w, v) V Д Teach (и, v) V Teacher-of {w, и). Получили ре¬
зольвенту Д Enrolled (а, y)V\| Teach(£, v), для которой, как и в
предыдущем случае, имеются две возможности: резольвироваться
или с элементом из ЭБД или с дизъюнктом из ИБД. Снова выбираем
вторую возможность, резольвируя ее как с первым, так и со вторым
дизъюнктом из ИБД. Шаги дедукции показаны на рис. 6.21.
Здесь литеры, заключенные в фигурные скобки, представляют
собой литеры, которые могли бы быть, но не резольвированы от¬
носительно элементов ЭБД. Метки, стоящие на дугах, указывают
на номера дизъюнктов из ИБД. Неотмеченные дуги говорят о воз¬
можности резольвироваиия с элементами из ЭБД, но не о самом
резольвировании, для чего соответствующие литеры и помещаются
в фигурные скобки. Литера ответа ANS(;r) введена для отслежи¬
вания значений переменной х. Здесь была использована стратегия
линейной резолюции с упорядоченными дизъюнктами, в которой
резольвируются самые правые литеры дизъюнктов.
Теперь перейдем к рассмотрению терминальных вершин, напри¬
мер, (ANS(z), П Enrolled(a, v), П Teach(x, к)): NIL. В силу на¬
шей договоренности ни одна литера еще не резольвирована отно¬
сительно элементов ЭБД. Поэтому запрос^1=<ТеасЬег/ж| (Course/Эк)
Enrolled (a, v) & Teach (х, и)} необходимо вычислить экстенсионально
и ответ (или ответы) на него будет являться ответом на исходный
запрос Q.
6) Teach
X
У гг. 7) Enrolled
X
А
р 100 '
а
В
Р 200
а
С
Р 300
а
D
Я 100
Ъ
D
Я 200
Ъ
214
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Аналогичпо остальные терминальные вершины дадут следую¬
щие запросы для экстенсионального вычисления:
Qi~ <TeaclierAr!Teacher-of(а, х)У,
Qs = <ТеасЬег/ж| (Calculus/3z) Enrolled (a, z)&x = A>,
Qi = <ТеасЬег/ж| (ML/3у) Enrolled (а, у)&х = В}.
Ответы на Q 1} Q2, Qs, Qi имеют следующие экстенсиональные
значения {С}, 0, {А), {В} соответственно. В итоге l\Ql\ = {А, В, С).
Заметим, что дедуктивный процессор работает здесь только с
ИБД, что и отражено на рис. 6.21, запечатлевшим первую фазу
{ / N S (х)}: 1 Те ocher -of<G.z)
CJ)
{ANS(x), 1 Teacher-of(nrx)}- NIL
{ДNS(x),ЛТeach (x,v)}'-lEnrolled (a. v)
{ a ns < x i}:7 En г о 11 e a (a. vH 'тс а с I <x.7 ■)
(2)
{ANS( В)}: 1 Er'7':ll Ed
(77
\A NS<A)}-'Enrolled(a,z)
{ans(x), 7 Teach(x,v), 7 Enrolled (n,v)} •' NIL
{A NS( B),lEnrallecl(a,h)}-NIL
{A NS( A), 7 Enrol led(a,z)} •• NIL
Рис. 6.21
вычисления запроса. Что касается второй фазы — экстенсиональ¬
ного вычисления запросов Qu Q2, Qs, Qi, то естественно применить
обычную систему управления реляционной БД, которая будет ра¬
ботать намного эффективней с большой ЭБД, чем любая техника
доказательства теорем.
Р. Рейтер показал, что если вычислитель, работающий с ЭБД,
дает все ответы на данный запрос, и соответствующий дедуктив¬
ный процессор используется для интенсиональной обработки, тогда
можно говорить о полноте вычисления запроса, т. е. будут найдены
на данный запрос все ответы, включая неопределенные. Правда,
полнота вычисления запроса касается только нерекурсивных акси¬
ом, характеризующихся конечным деревом поиска доказательства
теоремы. Чуть позже мы коснемся и вопроса вычисления запроса
для рекурсивных аксиом.
Процесс вычисления запроса значительно упрощается, если вос¬
пользоваться предположением о замкнутом мире Рейтера, краткое
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 215
описание которого было дано в гл. 3. Напомним, что это предполо¬
жение говорит о полном знании предметного мира, т. е. об отсут¬
ствии пробелов («брешей») в нашем знании мира. В дальнейшем
считаем, что при вычислении запросов действует предположение о
замкнутом мире. Тогда за счет введения операций объединения и
пересечения мы можем свести сложные запросы, включающие связ¬
ки & и V, к более простым, т. е. шмеем:
1) II <т/х | (в/ay) (w, v вд> 1 = II <т/х | (e/зу) wj I и
1 <т/х| (0/3y) W2y ;
2) 1 <т/х | W, & W2> I] = !| <т/х | WJ Ц П 1 <t/x IW2y ||,
причем во втором случае запрос бескванторный.
Однако эти равенства не выполняются при предположении об
открытом мире (см. гл. 3), что видно из следующих двух примеров.
Пример 6.17.
БД: P(a)Vi?(a),
It! = {a},
Q = <x/x\P(x)V R(x)>.
В предположении об открытом мире Н@Н = {а), но
\\(.т/х\Р(х) >11 = \\(.x/x\R(x) >11 = 0.
Пример 6.18.
БД: P(a)VP(b),R(a), R(b),
Iх! = {а, b},
Q — (т/х\Р{х) & R (х) >.
В предположении об открытом мире И@И = {а V Ь), но
(1 <т/ж 1 Р(х) >11 = {а V Ь} и \l(r/x\R {х) >11 = (а, М.
Далее, в предположении о замкнутом мире Рейтером было по¬
казано, что если W, W1 и W2— бескванторные формулы н
БД U ~1 ЭБД непротиворечива, то
1. <т/х I -| РГ> Ц = | Т1 — II <т/х I И^> ||.
2. <т/х | и\ & ДИД> « = || <т/х | ИД> 1! -1| <т/х | W2} ||.
Однако нетрудно показать, что эти равенства неверны для
предположения об открытом мире и для экзистенциальных запросов.
Однако экзистенциальные запросы также могут быть сведены
к более простым. Атомарным запросом обозначим любой запрос
вида <т/х|(0/Зу)Р(П’^2i • • ч Р1))’ где Р — предикатный символ,
а t — х, у или константа.
Пусть Q = (т/х, ф/zlWO, где В7 —формула, имеющая кванторы
существования и х = хи х2, ..., х„. Тогда II@11 есть множество
(ге+1)-ок и проекцией 11@11 относительно z (обозначим я211@11) бу¬
дет множество п-ок, полученных из 11@11 удалением (га+1)-й ком¬
поненты из каждой (п+ 1)-ки Н@Н.
216
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Например, если Q = <ti/хи т2/ж2, \h/zlPF) и если 11(21! = {(а, Ъ, с)',
(а, Ъ, d), (с, а, Ь)}, то nzWQW = {(а, Ъ), (с, а)}.
Не забывая о предположении о замкнутом мире, имеем (без
доказательства):
Таким образом, введением операций объединения, пересечения,
разности и проекции вычисление любого запроса может быть све-
депо к вычислению атомарного запроса.
Рейтером получен принципиальный результат. Будем говорить,
что БД непротиворечива с предположением о замкнутом мире тогда
и только тогда, когда БДиДЭБД непротиворечива. Тогда если БД
непротиворечива с предположением о замкнутом мире и Q — ато¬
марный запрос, то 11(211 в предположении о замкнутом мире будет
равно Н(2Н в предположении об открытом мире. Другими словами,
вычисление запроса в предположении о замкнутом мире сводится
к вычислению атомарного запроса в предположении об открытом
мире, вследствие чего не требуется знание элементов П ЭБД,
Вернемся к примеру 6.16, полагая, что действует предположение
о замкнутом мире. Определяем все доказательства для предиката
Teach(ии п2), т. е. все опровержения с верхним дизъюнктом
^]Teach(uj, и2). Переменные щ и м2 имеют тип U. Как и раньше,
используем для этого только дизъюнкты ИБД. На рис. 6.22 пока¬
зано дерево поиска опровержения для Teach. Теперь мы хотим
определить 11(211, где
а. I <т/х | (0/Зу) W > I = лу || <т/х, 0/у | W> ||,
где яу есть л^, л^, ..., пУт.
б. I <т/х | (0/Зу) П W} I = лу 1 <т/х, 0/у | Д W) || =
= Яу (I Т I х | 0 I — II <Т I х, 0 I у I W) ||.
в. II <т/х I (0/Зу) W1 & W2> II = Лу (|| <т/х, 0/у I Wxy II п
Л I <т/х, 0/у | W.2) Ц.
{ A NS ( и1, U2)}: 1 ТеасТ? (V1,u2): U/u,, и/и2
\_ANS(uvu2), 1 Teach (i/,, i/2>}; NIL;
U/u1, U/u2
{ANS(B,U2)}-NIL-,nL/u2
|ANS(A, L'J j: NIL i Calculus/и2
Pnc. 6.22
Q= (Teacher/ж!Teach(x, ML 100)).
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 217
Для этого сделаем подстановки х типа Teacher вместо щ и
ML 100 вместо и2. Видим, что х/щ удовлетворяет ограничениям ти¬
пов на Ui во всех вершинах дерева, ML 100/и2 не удовлетворяет
ограничению типа на и2 в вершине 2, так как ML 100^ I Calculus I.
Следовательно, только вершины 1 и 3 участвуют в вычислении
запроса Q и они формируют два запроса:
Q, = (Teacher/ж [Teach (ж, ML 100) >,
Q3 = < Teacher/ж! х = ВУ.
Экстенсиональное вычисление Qi и Q3 дает 0 и В соответствен¬
но, следовательно 11@11 = {5}.
Теперь мы используем дедуктивный процессор как компилятор,
информация для которого заложена только в терминальных вер¬
шинах дерева поиска опровержения, т. е. нужная информация пред¬
ставлена следующими тремя формулами:
1) ТеаМДщ, и2), U/ut, U/u2,
2) ut = А & и2 = и2, U/uu Calculus/u2,
3) и, = В & и2 = и2, U/uu ML/u2.
Мы ссылаемся па этн формулы как на компилятивную форму
предиката Teach.
Продолжим пример:
Q= (Teacher/ж | (ML/Зу) Teach (х, у)).
Сделаем подстановки ж/щ и у/и2 в формулы 1, 2, 3. Имеем противо¬
речивость в формуле 2, следовательно, формируются два запроса:
Q1 = (Teacher/ж! (ML/Зу) Teach (ж, у)},
@3 = <Teacher/ж | (ML/Зу) х = В & у = у).
Экстенсиональное вычисление этих запросов дает 0 и В соот¬
ветственно, следовательно Н@Н = {/?}.
Теперь построим дерево поиска опровержения для предиката
Teacher-of (см. рис. 6.23). Из его терминальных вершин получим
следующую информацию:
4) Teacher-of (щ, и2), U/ui, U/u2,
5) (Course/Зн) Teach (u2, v) &Enrolled(w1 v), Student/u1, Teacher/w2;
6) (Calculus/Зк) Enrolled (их, v) & u2 = A, Student/u1;
7) (ML/Зк) Enrolled (u1, v) & u2 = B, Student/^.
Вычислим запрос Q = (Student/ж!Teacher-of(x, B)>.
Подстановки x/nL п B/u2 в формулы 4, 5, 6, 7 дают нам сле¬
дующие запросы для экстенсионального вычисления:
@4 = (Student/ж | Teacher-of (ж, В)},
@6 = (Student/ж | (Course/Зк) Teach (В, v) & Enrolled (ж, и),
@6 = (Student/ж | (Calculus/Зи) Enrolled (ж, v) &В = Ay,
@7 = (Student/ж | (ML/3u) Enrolled (ж, v) & В = By.
218
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Ответы на них соответственно будут 0, {d}, 0 и {'а, Ы, следо¬
вательно IIQII = {a, b, d).
Наконец, рассмотрим вычисление следующего сложного запроса:
Q = <Teacher/x j Teacher-of {а, х) & ~] Teah (х, ML 100)>.
Тогда Н<?11 = П([Teacher| — ll@JI), где
Qi = (Teacher/xl Teacher-of (а, х)У,
Qz — <Teacher/xlTeach(x, ML100)>.
Вычисление Qh используя формулы 4, 5, 6, 7 для Teacher-of,
дает L4, В, С), а ответ на Qz есть {В}. Следовательно, !!<?И = {А, С).
{A NS (и, ,и2)}:1 ТеасЬег-of < г/,, У2 > ■ U/u,. U/u2
{hNS{u..u,,), 7 leacber-D"' и,,иЛ '■ NIL; \(J)
U/u1, U/u2
\
{ A 'VAT (и,. и,)}: 7 Fnr о 11 ec < Uj, v) M7 Те j с A (и c, v4
{ A NS (щ, u2). 7 7'bdcMv2 , 1 Enrol led (k1 , у >
\(1)
{,4 NS i" . 4 >}: 7 Enrol led <.uvv) \
| A МУ (u1,u2\~i Те neb (-j„, v).
1 Err oil Ed ( и j, v)\: NIL
Student/и,, Teacher/u2 .Ccvres/v
\ \ANS(u.,8),IS/irel^SI.u,,v)\iC>.
\ Student/u7. hi, v
{ANS<lt.A !, "■trreHseCdj.v)}'- NIL -.Student/u7,
TalculbS/v
Рис. 6.23
Несколько слов о непротиворечивых БД. Не каждая непротиво¬
речивая БД остается непротиворечивой при предположении о замк¬
нутом мире.
Пример 6.19.
БД: Р (а) V Р(Ь).
Тогда, поскольку БД \/-Р(а) и БД \/-Р(Ь), то Д ЭБД = {Д Р (а),
<~| Р (6)}, откуда БД U ~| ЭБД оказывается противоречивой.
Естественно, необходимо работать с такими БД, которые оста¬
ются непротиворечивыми при предположении о замкнутом мире.
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ
219
БД будем называть хорновской (ХБД), если каждый дизъюнкт,
в ней хранящийся, является дизъюнктом Хорна.
Рейтер показал, что при предположении о замкнутом мире ХБД
непротиворечива, т. е. БДиТЭБД непротиворечива. Более того,
для ХБД негативные дизъюнкты не оказывают никакого влияния
на вычисление запроса, и они могут быть без ущерба дальнейшего
вычисления запроса удалены из ХБД.
Таким образом, использование непротиворечивых ХБД всегда
будет давать нам возможность эффективного вычисления запросов,
причем никаких неопределенных ответов в этом случае не воз¬
никает. Процесс компиляции, кроме того, резко уменьшает время
вычисления запроса.
Теперь перейдем к вычислению рекурсивных запросов, харак¬
теризующихся бесконечным деревом поиска доказательства теоре¬
мы. Для этого остановимся на подходе Ч. Ченя, предложившего
дедуктивный язык запросов для реляционных БД (DEDUCE).
Язык Ченя — это язык многосортной логики первого порядка:
отличия лишь в том, что вместо позиционной записи для аргумен¬
тов предикатов в этом языке используется атрибутная запись,
и кроме того, с данным именем предиката (понятия) в формуле
может указываться неполный список аргументов.
Более точно, термом называется выражение одного из следу¬
ющих видов: р = х, р — с, где р — атрибут, х — переменная, ас —
константа. Атомарная формула есть выражение вида C(tu t2, ..., tT),
где С — пмя понятия, a tj — термы с различными атрибутами, при¬
сущими данному понятию (т. е. входящими в структурную связку,
начинающуюся с имени понятия С).
Пример 6.20. Пусть семантическая сеть содержит структур¬
ную связку
СТУДЕНТ [фам: СЛОВО, №-гр: НОМЕР-ГРУППЫ, спецк.:
ДИСЦИПЛИНА, оценка: БАЛЛ, вр. сд: ДАТА].
Тогда СТУДЕНТ (фам = ИВАНОВ, спецк = х, оценка = у) есть
атомарная формула.
Произвольная формула языка Ченя получается из атомарных
с помощью логических связок —|, &, и кванторов V и 3.
В этом языке в качестве атомов допускаются также и такие,
которые содержат пмена предикатов и функций с фиксированной
интерпретацией.
Пример 6.21. Рассмотрим следующую сеть:
S = (СТУДЕНТ [фам: СЛОВО, №-гр: НОМЕР - ГРУППЫ, спецк:
ДИСЦИПЛИНА, оценка: БАЛЛ], ПРЕПОДАВАТЕЛЬ [фам:
СЛОВО, каф: КАФЕДРА, спецк: ДИСЦИПЛИНА], QUES [фам:
СЛОВО], w (ПРЕПОДАВАТЕЛЬ, СТУДЕНТ, QUES)},
где w=Vx[QUES (фам=ж) ~ Vp (3»х ПРЕПОДАВАТЕЛЬ (фам =
220
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
= Уи каф.= киберн., спецк = у)-+3у23у1 СТУДЕНТ (фам = х,
№-гр = у2, спецк = у, оценка у3))].
Здесь w — формула этого языка, QUES — вопросное понятие.
Предположим, что нас интересует вопрос: «Каковы фамилии и
номера групп тех студентов, которые получили среднюю оценку
(по всем слушаемым ими спецкурсам) не меньше 4?». Его струк¬
тура передается связкой
QUES [фам: СЛОВО, №-гр: НОМЕР-ГРУППЫ]. (6.5)
Чтобы выразить логическую связь QUES с понятием СТУДЕНТ,
удобно ввести вспомогательное понятие СРЕДН.-ОЦЕНКА, выра¬
жающее среднее арифметическое по всем оценкам, полученным (по
всем слушаемым курсам) данным студентом. Таким образом, име¬
ем структурную связку
СРЕДН. — ОЦЕНКА [фам: СЛОВО, средн.-оц: ЧИСЛО]. (6.6)
Логическая связь между QUES и СРЕДН.-ОЦЕНКА выражается
формулой
Vx [Зу QUES (фам = х, №-гр = у) ~3z (СРЕДН.-ОЦЕНКА
(фам = х, средн.-оц: = z) & z^s 4)]. (6.7)
В языке Ченя в качестве термов допускаются также выражения
вида: р > х, р х, р>х, р < х, р> с, р > с, р «S с, р < с. Исполь¬
зуя эту возможность, формулу (6.7) можно записать короче:
Vx [3у QUES (фам = х, №-гр = у) ~ 3z (СРЕДН.-ОЦЕНКА
(фам = х, средн.-оц > 4)) ].
Если условиться, что когда в атомарной формуле, начинающей¬
ся с имени понятия С, отсутствует атрибут р, присущий понятию
С, то формулу (6.7) можно записать еще короче:
V4QUES (фам = х)~ СРЕДН.-ОЦЕНКА (фам = х,
средн.-оц 4)].
Для полноты нужно также указать логическую связь между
понятиями СТУДЕНТ и СРЕДН.-ОЦЕНКА и ввести промежуточ¬
ные понятия: Сп.-ОЦЕНОК (список оценок), КОЛИЧ-СПЕЦК,
СУММ-ОЦЕНКА (суммарная оценка), СПИСОК. Мы для эконо¬
мии места не будем этого делать.
Отметим только, что исходное понятие (в нашем примере СТУ¬
ДЕНТ) представляется экстенсионально, а сформированные новые
понятия (виртуальные) задаются чисто интенсионально.
Рассмотрим следующий пример, на котором будут демонстриро¬
ваться все конструкции языка DEDUCE.
Пример 6.22 (Ч. Чень).
S = (ЕМР [name: WORD, sal: NUMBER, mgr: WORD, dept:
DEPARTMENT], SALES [dept: DEPARTMENT, floor:
0.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 221
FLOOR], SUPPLY [comp: COMPANY, dept: DEPARTMENT,
item: ITEM, vol: NUM], CLASS [item: ITEM, type: TYPE]}.
Перевод идентификаторов указан в следующей таблице:
Идентификатор
Перевод
Идентификатор
Перевод
ЕМР
паше
WORD
sal
NUMBER
mgr
DEPARTMENT
СЛУЖАЩИЙ
ИМЯ
СЛОВО
зарплата
ЧИСЛО
управляющий
ОТДЕЛ
SALES
ITEM
vol
floor
SUPPLY
COMPANY
CLASS
TYPE
ПРОДАЖИ
ТОВАР
объем
этаж
СНАБЖАТЬ
КОМПАНИЯ
КЛАСС
ТИП
Запросами к сети S будут служить так называемые конъюнк¬
тивные экзистенциальные запросы.
Конъюнктивный экзистенциальный запрос в DEDUCE имеет
следующую форму: 3хг3х2...3xm(R\& • • где
RL, ..., ^„ — реляционные формулы вида i?(L, tz, ..., th) (R — от¬
ношение, ti, t2, ..., th — термы) и F — формула, не являющаяся
реляционной. Сокращенно такой тип запроса будем представлять
как Ri & R% & • • • & Rn & R•
Например:
а. «Дать все компании, снабжающие товарами типа А».
SUPPLY (* comp, item = х)& CLASS (item = x, type = A).
Здесь символ * означает список компаний, который должен
быть выведен на печать.
б. «Найти имена служащих в отделе игрушек, которые получают
больше чем их управляющие».
EMP (*name, sal = х, mgr = у, dept = toy) & EMP (name = у,
sal = z) & z.
Представим запрос в виде графа, где Ru ..., Rn и F являются
вершинами графа, которые соединены дугами в случае появления
в них одной и той же переменной. Так, вопросный граф для при¬
мера б) показан на рис. 6.24. Вершины, соответствующие Ri,...,Rnr
называются реляционными вершинами. Вершину назовем висячей,
если она связана не более чем с одной другой вершиной. На
рис. 6.24 ни вершина А], ни вершина А2 не является висячей.
Для простоты будем говорить о понятиях исходной сети (реля¬
ционной схемы) S как о базовых. Понятия вопросного графа Q
222
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
будут называться производными, если они не входят в исходную
сеть S. (Понятие QUES в расчет не принимается.)
Пусть задан вопрос, содержащий только базовые понятия, ко¬
торый записан в языке Ч. Ченя.
В общих чертах ответ на заданный вопрос может быть вычислен
следующим образом:
1. Порождение графа. Сначала запрос представляется графом G.
2. Вычисление ограничений.
f умР лЁ name, -5ZI - х, myr=y, dept^tay))
Х
Ч X >2
ГЕМР(пате = у, sclTz)j
^ ) ш- У
/
Рис. 6.24
Если реляционная вершина имеет ограничения (т. е. в запрос
входпт выражение вида /1(..., р — с, ...), где с — константа), то
необходимо вычислить это ограничение.
3. Исключение вершин.
а) Многократно, пока это возможно, выполпить следующее: най¬
ти висячую вершину N, которая содержит переменную х, по пе
содержит символа «печати» *. Найти всевозможные значения си ...
. . ., Сг ДЛЯ X И Поместить В ПРЯМОУГОЛЬНИК формулу (Х — С\ V ...
... V х = сг), т. е. породить вершину вида _F_ • Исключить вер¬
шину N.
б) Если в графе остается единственная реляционная вершина,
то выписать все примеры понятия А соответствующего этой вер¬
шине, которые удовлетворяют условию, представленному в графе.
4. Слияние вершин.
Пусть реляционные вершины (понятия) Nt и N2 связаны между
собой непосредственно пли через вершину вида 1 F \. Тогда слить
вершины Ni и Д?2. выполняя соответствующие соединения. Поясним
это па примере.
Пример 6.23. Сначала мы выполняем ограничение на вершине
Л7! для графа рис. 6.24. Пусть TOY-EMP — понятие, получаемое
после ограничения. Тогда рис. 6.24 сведется к рис. 6.25.
Поскольку нет висячих вершин на рис. 6.25, то мы выполняем
слияние вершин Nt и Л7г, причем соединение выполняется по пере¬
менной у. Пусть ТЕМП обозначает полученное после слияния по¬
нятие. Таким образом, рис. 6.25 приводится к рпс. 6.26.
Теперь ЛГ3 — единственная реляционная вершина. Совершая иск¬
лючение этой вершины, мы получаем список имен желаемых слу¬
жащих.
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 225
Кроме базовых понятий (отношений) к исходной реляционной
схеме S могут присоединяться новые понятия, определяемые с по¬
мощью логических связок и, возможно, структурных связок. В ча¬
стности, такое присоединение новых понятий происходит при фор¬
мировании запроса к S. Новые отношения, как уже говорилось,.
будем называть производными (или виртуальными) отношениями.
Используемые аксиомы имеют следующий вид:
Ух2Ух2 ... VХр {Зхр+1 ... Эхг (А & л2 & ... & Ап &F) -А- В), (6.8)
где каждая из ..., Ап есть реляционная формула, включающая
базовое или производное отношение, В — реляционная формула, со¬
держащая только переменные хи xz, ...
..., хр, a F — формула, свободная от базо¬
вых или производных отношений. F мо¬
жет содержать определенные пользова¬
телем предикаты, а также системно¬
определенные предикаты, такие, как =,
<, <, >, 5* и т. п. (формула F однознач¬
но вычисляется, когда уточняются зна¬
чения переменных).
Заметим, что аксиома вида (6.8) эквивалентна следующей ак¬
сиоме:
УхгУх2 .. . V.TpVzp+i ... Vxr(A1 & д2 & . .. &An&F->В).
В самом деле, если Ci и С* — произвольные формулы и если
переменная у не входит в С2, то Va:(3yC1-> С.2) = Va:d "ЗуС1 \J С2) —
= УатУуП^ V С2) = Ух Vy(d-> С2).
Пример 6.24. Предположим, что мы хотим определить новое
отношение COMMAND(х, у), означающее, что х командует у. Тог¬
да мы вводим структурную связку
COMMAND [superior: WORD, name: WORD]
и две аксиомы;
а) Ух Vy (EMP (name = y, mgr = x)
-a- COMMAND (superior = x, name = y)), (6.9)
N3
( TEMP(*name, sal=x,sal=zi)
“1 |
F
Puc. 0.26
224
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
б) VccVi/(3z (EMP (name = z, mgr = y)&
& COMMAND (superior = x, name = y))~*~
-> COMMAND (superior = x, name = z)). (G.10)
Первая аксиома говорит, что если х есть менеджер у, то х ко¬
мандует у. Вторая аксиома говорит, что если х командует ушу
есть менеджер z, то х командует z. Как только задано производное
отношение COMMAND (х, у), пользователь, используя его и поня¬
тие реляционной схемы, может задавать вопросы. Например, за¬
прос «Найти всех лиц, которыми командует ДЖОН и которые
продают игрушки» может быть представлен в виде
EMP («пате = ж, dept = у) &_
SALES (dept = у, item = toy) & (6.11)
COMMAND (superior = Jones, name = x).
Теперь опишем, как по данному запросу строится некоторая си¬
стема продукций, которая затем используется для синтеза некото¬
рой программы извлечения ответа на этот вопрос.
Сначала определим так называемый граф связи (Р. Ковальский).
Каждая аксиома вида {Аг & . . . & Ап & F) -> В представляется
формулой
Каждую из литер А,, ..., Ап мы назовем левой литерой, F на¬
зывается левой формулой, а В называется правой литерой.
Запрос В\ & ... & Вт & G представляется в графе формой
\R1\...\Rm\G\
Напомним, что А,, .. ., А„, Ви ..., Rn — реляционные формулы,
a F — формула, свободная от базовых и производных отношений.
Затем для каждой пары литер и Ь2, входящих в формы-
вершины графа, 1) если L{ it Ь2 унифицируемы (см. 5.3) 2) если
и Ьг содержат производное отношение и 3) если Li — правая
литера, a L2 — левая, то от Lt к Lz проводится дуга, которая по¬
мечается меткой.
Пример 6.25. Для аксиом (6.9) и (6.10) и запроса (6.11)
в примере 6.24 мы получаем граф связи, показанный на рис. 6.27
(на графе сделано переменованне переменных так, чтобы в разных
вершинах не было общих переменных).
Система продукций получается из графа связей следующим
образом:
а) Для каждой левой литеры п, если ти ..., тг — все правые
литеры, из которых ведут дуги к п (см. рис. 6.28), то мы полу¬
чаем продукцию
W(п) = atW(mt) U ... U aTW(mr),
где W(nii)— «синтаксические» классы.
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ
225
б) Для каждой аксиомы, если существует дуга, идущая из пра¬
вой литеры п, как показано на рис. 6.29, то мы получаем следу¬
ющую продукцию
W(n) = Pu Р2, ..., Рг,
где
) W (тщ), если m-i — литера, содержащая производное отношение;
nii в противном случае.
А
=
Рис. 6.27
в) Для запроса, показанного на рис. 6.30, получаем продукцию
Т = Qi, Qz, ..Qm,
где
Qi
PFL(i?i), если Ri — литера, содержащая производное отношение
Ri в противном случае.
Рис. 6.28
В вышеуказанных продукциях Т или W ( ) трактуются как
нетерминальные символы коптекстно-свободной грамматики; осталь¬
ные символы — терминалы.
пь
Рис. 6.29
Рис. 6.30
В дальнейшем примем следующие обозначения: если С ■— вер¬
шина графа связи, то Сп обозначает п-ю (в порядке слева напра¬
во) литеру в С.
15 В. Н. Вагин
226
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
Пример 6.26. Для графа связи, изображенного на рис. 6.27,
мы получаем следующие продукции:
1. W(b2) = а,ТУ(а2) U a3W (b3) по (а).
2. 1К(с3) = а21К(а2) U а4Ш(Ь3) по (а).
3. W(a2) = a, по (б).
4. W(b3) = btW(b2) по (б).
5. Т = CiC2W(с3) по (в).
Здесь Т, W(с3), W(b2), W (b3) и W(а2)—нетерминальные сим¬
волы, а a,, bu с{, с2, аи а2, а3 и а4 — терминальные символы кон¬
текстно-свободной грамматики.
Эти продукции могут быть заменены, очевидно, на следующие:
С. W(62) = Hla, U a3biW(b2). (6.12)
7. Т = с3с2а2ази cic2aib1W(b2). (6.13)
Заметим, что система из последних двух продукций составляет
регулярную грамматику.
Синтез программ по запросам в общпх чертах выполняется сле¬
дующим образом:
1. По данному запросу и аксиомам получаем граф связи.
2. По графу связи получаем систему продукций.
3. По системе продукций, еслп она представляет регулярную
грамматику, строится регулярное выражение.
4. По регулярному выражению стронтся программа.
Шаги (1) и (2) были нами описаны ранее. Теперь опишем шаги
(3) и (4).
Проблема нахождения регулярных выражении оппсана в теории
конечных автоматов. Очень коротко напомни.м основные положения
из этой теории. Конечная строка символов называется словом. Пу¬
стая строка символов образует пустое слово, которое обозначается
через К. Конкатенация слов со, и со2 есть оцюг- Если Si и S2 —
множество слов, то конкатенация St и S2 определяется как S,S2 =
= {(ЩСОг! COj ^ Si н (О 2 ^ S',}. Для простоты, если (0 — слово, то мно¬
жество (со) также обозначим через ю. Пусть S'—множество слов.
Тогда S* определяется как S* = К U S U S2 U S3 U ... Пустое множе¬
ство обозначается через 0.
Регулярное выражение на алфавите А = (а,, а2, ..., aj опреде¬
ляется индуктивно следующим образом:
а) а,, а2, ..., ah, Я и 0 — регулярные выражения.
б) Еслп Р и Q — регулярные выражения, то Р U Q, PQ н Р* —
также регулярные выражения.
в) Все регулярные выражения образуются конечным примене¬
нием правил а) и б).
Затем индуктивно определил! функцию б, зависящую от регу¬
лярных выражений п принилтющую значения 0 или 1, следующим
образом:
а) б(а,) = 0,
б) 6(0) = О,
6.G. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 227
в) б(Х)= 1,
г) цр и <?) = {'
j0, если как б (Р), так и б (Q) равны 0;
11 в противном случае;
1, если как б (Р), так и 6(0 равны 1;
О в противном случае;
Д) &(PQ) = Jo’
е) 6(Р*)=1.
Из теории конечных автоматов известна следующая теорема.
Теорема 6.2. Уравнение вида D = a U bD, где а и Ъ — регулярные
выражения и б (а) = 0 имеет решение D = Ь*а.
Рассмотрим на примере, как строятся регулярные выражения
по системе продукции.
Пример 6.27. По продукциям (6.12) и (6.13) в примере 6.26,
используя теорему 6.2, получаем следующие регулярные выра¬
жения:
где порядок символов должен быть сохранен.
В регулярном выражении для Т заменим а,, а2, сс3 и а4 на
соответствующие пары литер, которым на графе соответствуют
вершины, связапные ребрами, помеченными од, а2, а3 и а4. Напри¬
мер, на рпс. 6.27 сд помечено ребро, связывающее вторую литеру
А (т. е. а2) со второй литерой В (т. е. Ъ2). Таким образом, од за¬
меняется на (Ъ2а2). Сделав соответствующие замены для а2, сс3 и
од, получим
причем первая литера в каждой паре литер является левой лите¬
рой, а вторая — правой.
Теперь опишем метод построения программы по регулярному
выражению, заметив, что оператор * в регулярном выражении ука¬
зывает цикл.
Иллюстрацию этого метода будем производить на правой части
регулярного выражения для Т из примера 6.27. Таким образом,
имеем
W (Ь2) = (a36i) *a4ai,
Т = CiC2a2a, U CiC2a4&i (a3fei) *сда4,
Т = c,c2{c3a2)al U сщ, (c3b3) b,{ (b,b3)b,}* (b,a2)a1} (6.14)
CiC2(c363)6i{(fr263)6i}*(62$2)^i)
которое представим в виде
(6.15)
228
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
(6.16)
Подставляя вместо at, bh ск обозначаемые ими литеры, получим
EMP (* name = s, dept = t)
SALES (dept = t, item = toy)
/ COMMAND (superior = Jones, name = s)'
\ COMMAND (superior = w, name = u)
EMP (name = u, mgr = v)
i / COMMAND (superior = w, name = v)
j \COMMAND (superior = ww, name =uu),
EMP (name = uu, mgr = vv)
(COMMAND (superior = ww, name = vvy
COMMAND (superior = x, name = y)
EMP (name = y, mgr = x).
В выражении (6.15) есть две копии литеры В\ поэтому, начиная
со второй копии, чтобы различить ее, мы ставим дублированные
переменные, т. е. uu, vv, ww.
Теперь унифицируем каждую пару литер. Для этого возьмем
подстановку
{Jones/», s/u, w/ww, v/uu, ww/x, vv/y}.
Ясно, что эта подстановка эквивалентна следующей:
(Jones/», s/u, Jones/ww, v/uu, ww/x, vv/y}.
Применяя последнюю подстановку к (6.16) и исключая литеры,
входящие в унифицированные пары, мы получим
EMP (*name = s, dept = t)
SALES (dept = t, item = toy)
EMP (name = s, mgr = v) (6.17)
(EMP (name = i>, mgr = vv)}*
EMP (name = vv, mgr = Jones).
Символ итерации * в (6.17) указывает, что (6.17) представляет
последовательность запросов. Для того чтобы породить эту после¬
довательность, мы можем следующим образом применить оператор
«.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 229
* к выражению ЕМР(пате = н, mgi = vv):
(EMP (name = v, mgr = vvY есть L
(EMP (name = v, mgr = im)}1 есть EMP (name = v, mgr = rt>),
{EMP (name = v, mgr = ну)}2 есть EMP (name = v, mgr — vv)
EMP (name = vv, mgr — vvv)
{EMP (name = v, mgr = vv)}3 есть EMP (name = v, mgr = vv)
EMP (name = vv, mgr = vvv)
EMP (name = vvv, mgr = vvvv)
... и Т. Д.
Таким образом, (6.17) соответствует следующая последователь¬
ность запросов:
EMP («name = s, dept = t)
SALES (dept = t, item = toy)
EMP (name = s, mgr = v)
EMP (name = vv, mgr = Jones)
EMP («name = s, dept = f)
SALES (dept = t, item = toy)
EMP (name = s, mgr = v)
EMP (name = v, mgr = vv)
EMP (name = vv, mgr = Jones)
EMP («name = s, dept = t)
SALES (dept = t, item = toy)
EMP (name = s, mgr = v)
EMP (name = v, mgr = vv)
EMP (name = vv, mgr = vvv)
EMP (name = vv, mgr = Jones)
... и т. д.
Заметим, что эта последовательность запросов не учитывает
случая, когда служащий подчинен непосредственно Джону. Этот
случай соответствует регулярному подвыражению сщДсзаДа, в
(6.14).
Трактуя (6.17) как запрос, можно представить его в виде гра¬
фа, показанного на рис. 6.31.
Графу рис. 6.31 соответствует следующая программа:
(al) EVALUATE EMP («name = vv, mgr = Jones);
(a2) *E«- * VV;
(bl) DO WHILE* V¥=0;
(cde) EVALUATE (EMP (name = s, mgr = v)&
EMP (* name = s, dept — t) &
SALES (dept = f, item = toy)) для каждого v^*V;
PRINT * S;
соответствует
{EMP (name = v,
mgr = vv)}°
соответствует
{EMP (name = v,
mgr = ни)}1
соответствует
{EMP (name = v,
mgr = vv)Y
230
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
(Ь2) EVALUATE ЕМР(*пате = н, mgr = vv) для каждого
vv е *VV\
(ЪЗ) *VV ■*- * V;
END.
Обозначим эту программу через П и разъясним, как она стро¬
ится. Сконцентрируем внимание на вершине В, так как она вклю¬
чает оператор * (см. рис. 6.31). С вершиной В связаны два под¬
графа: А п СОЕ (заметим, что подграф СОЕ можно рассматривать
как обобщенную «висячую» вершину). Так как подграф CDE со¬
держит символ печати ’*’, мы не можем применить шаг исключе¬
ния вершины (см. процедуру вычисления запроса, п. 3).
Е ■■ SALES (dept =t, item =toy)
П: EMP(*name =s, dept = t)
C- E tiP{ name = s, mgr = v)
В'■ {EMPinams = v,mgr=vv)}*
A■ Et1P(nnme = vv,rngr=janes)
Рис. 6.31
Но вершина А не содержит символа печати ’*’, поэтому мы
можем применить к ней шаг исключения вершины. По существу,
этот шаг соответствует оператору (al) программы П. Команда
EVALUATE берет запрос, вычисляет его и возвращает множество
значений, указанных символом Возвращенное множество также
обозначается символом за которым следует записанная заглав¬
ной буквой переменная. Например, в операторе (al) возвращаемое
множество для запроса EMP (*name = vv, mgr = Jones) обознача¬
ется через *VV, так как переменная есть vv. Вообще, синтаксис
для EVALUATE есть EVALUATE (запрос) [для каждой (перемен¬
ная) е (множество)].
Оператор (а2) должен инициировать «V. Он соответствует слу¬
чаю, когда выражение {EMP (name = v, mgr = im)}* в вершине В
есть (EMP (name = v, mgr = im)}°. В этом случае v есть то же
самое, что и vv.
Операторы (b 1), (Ь2) и (ЬЗ) соответствуют вершине В на гра¬
фе рис. 6.31. Так как вершина В имеет символ * итерации, то
необходим цикл. При итерации, когда (EMP (name = v, mgr = vv}*
есть (EMP (name = v, mgr = vv}0, после того как частичный запрос,
представляемый вершиной А, вычислен (как показано оператором
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ 231
(а!)), следующий подлежащий вычислению запрос — это тот, ко¬
торый представлен подграфом CDE (см. рис. 6.31). Чтобы это сде¬
лать, мы должны быть уверены, что множество значений для v
не пусто. Поэтому необходим оператор (М). Если *F не пусто, то
мы имеем оператор (cde), который соответствует подграфу CDE.
Множество *S, возвращаемое оператором (cde) и в конечном счете
печатаемо, есть множество имен запрашиваемых служащих. После
начальной итерации мы должны рассмотреть следующую итерацию,
при которой {ЕМР(пате = к, mgr = i?i?)}* есть (EMP (name = к,
mgr =in?)}'. Это означает, что нам нужно найти новые значения
V. Поэтому мы имеем оператор (Ь2). Чтобы подготовить следующую
итерацию, необходим оператор (ЬЗ).
Изложенная техника годится также и для обработки запросов
тппа ДА/НЕТ. Например, рассмотрим запрос: «Работает ли Мартин
£•' SALES (dept = t, item = toy)
В ■ EIIP (no.'me = Martin, dept = t)
С- E HP {no me = Martin, mgr = v)
В•' { ЕПР(пате = v, mgr-vv)} *
I-
A: EMP (name - vv,mgr=janes)
Рис. 6.32
в том отделе, который продает игрушки и является ли Джон на¬
чальником Мартина?» Этот запрос представляется как
EMP (name = Martin, dept = у) &
SALES (dept = у, item = toy) &
COMMAND (superior = Jones, name = Martin).
Используя вышеуказанный метод, мы получаем следующее вы¬
ражение:
EMP (name = Martin, dept = t)
SALES (dept = t, item = toy)
EMP (name = Martin, mgr = v)
(EMP (name = v, mgr = vv)}*
EMP (name — vv, mgr = Jones).
Этому выражению соответствует граф, изображенный на
рис. 6.32. Программа, соответствующая этому графу, такова:
232
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА СЕМАНТИЧЕСКИХ СЕТЯХ
(al) EVALUATE EMP («name = vv, mgr = Jones);
(a2) *V^*VV;
(bl) DO WHILE •V¥>0;
(cde) VERIFY (EMP (name = Martin, mgr = v) &
EMP (name = Martin, dept — t)&
SALES (dept = L item = toy)) для каждого v^*V;
IF RETURN = YES, PRINT YES and LEAVE;
(b2) EVALUATE EMP («name = v, mgr = vv) для каждого
vv e *VV;
(ЬЗ) *VV*F;
END.
Команда VERIFY берет запрос типа ДА/НЕТ и возвращает
YES или N0 в зависимости от того, имеются или нет значения,
удовлетворяющие запросу. (Программа, конечно, сразу останавли¬
вается, как только будет получен YES).
Рассмотрим еще один, несколько более сложный запрос: «Найти
всех служащих, которые зарабатывают больше своих начальников»:
COMMAND (superior = р, «name = q)&
EMP (name = р, sal = s) &
EMP (name = q, sal = t) & t > s.
Используя описанный метод, получаем следующее выражение
(нерекурсивная часть которого игнорируется):
EMP («name = q, mgr = o)
{EMP (name = v, mgr = vv) }*
EMP (name = vv, mgr = p)
EMP (name — p, sal = s)
EMP (name = g, sal = t)
t> s.
Граф, соответствующий этому выражению, показан на рис. 6.33.
Так как name является ключом понятия ЕМР, то вершины Е и D
представляют один пример. Поэтому рис. 6.33 может быть упрощен
до рис. 6.34.
Структура рекурсивного запроса, представленная графом
рис. 6.34, отлична от структур, представленных графами на
рис. 6.31 и 6.32. Так как граф рис. 6.34 не имеет висячих вершин,
то мы не можем применить шаг исключения вершины. Решением
этой задачи является использование другой программной схемы:
(dl) DO для каждого (q, v, t)e EMP (name = q, mgr = v, sal = t);
(d2) *F-{i>);
(d3) *VV ■*- *V;
(cl) DO WHILE * VV Ф 0;
(ab) VERIFY (EMP (name = vv, mgr = p)&
EMP (name = p, sal — s)&t>s) для каждого vv^*VV-,
6.6. ДЕДУКТИВНЫЙ ВЫВОД В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ
233
IF RETURN = YES, PRINT q and LEAVE;
(c2) EVALUATE EMP (name = n, *mgr = yy)
для каждого v e * 7;
(c3) *77^ *7;
END;
END.
Эта программа получается в результате попытки сделать вер¬
шину D рис. 6.34 висячей. Для этого мы последовательно выбираем
В-
Е- Е МР ( пате = q ,sal=tA
В- EMP (*пате -q,mgr = v)
С- {EMP (патв = v,mqr=vv)}*
ЕМР(,патв = vv, mqr=p)
A:
E MP (name =p,sal = s)
Рис. 6.33
В: EMP(*nnme=q,mg-r=v,sal = tA
E-.
{ЕМР[патв - v,mqr = vv)}
E МР[патв = vv, mffr=p)
H' BMP(name =p,sal=s)
Рис. 6.34
тройки (примеры) из EMP (name = q, mgr = v, sal = £). Как только
мы выбрали тройку (q, v, t), рис. 6.34 преобразуется в рис. 6.35,
где v и t трактуются как константы. Очевидно, что рис. 6.35 по¬
добен рис. 6.32. Поэтому цикл DO WHILE в последней программе
подобен циклу DO WHILE в программе, соответствующей рис. 6.32.
(Заметим, что возможны и другие программные схемы. Например,
мы могли бы попытаться сделать подграф АВ обобщенной висячей
вершиной).
Вообще нахождение «хорошей» программы по графу рекурсив¬
ного запроса является плодотворной областью для исследований.
Хорошая программа зависит от многих факторов. Например, от то¬
го, какие пути доступа (индексирование, хэш-адресация, сортиров¬
234
ГЛ. 6. ДЕДУКТИВНЫЙ ВЫВОД НА семантических сетях
ка и т. п.) имеются в системе управления БД; если таких путей
доступа нет, то какие пз них следует создать; какие управляющие
v
I
С: {EMP ( пате-v, туг = vv)} '
В: EMP (пате = vv, m$r=p)
д: EMPiname - р, sales')
t >S
Рис. 6.35
структуры разрешены в порождаемой программе. Одним из важ¬
ных факторов является способ декомпозиции графа рекурсивного
запроса в простые вопросные графы.
Отметим, что метод Ченя работает только для случая, когда
система продукций состоит только из регулярных продукций. Та¬
кие продукции порождаются, исходя из таких логических связок,
что в левой и правой частях стоит не более одного производного
отношения. Следует иметь в виду, что логическая связка, не удов¬
летворяющая этому условию, может быть иногда заменена на экви¬
валентную регулярную связку. Например, логические связки
ОТЕЦ (х, у)-*- ПРЕДОК (х, у),
ПРЕДОК (х, у) & ПРЕДОК (z, х)-*- ПРЕДОК (z, у)
могут быть заменены на
ОТЕЦ (х, у)-> ПРЕДОК (х, у),
ОТЕЦ (х, у) & ПРЕДОК (z, х)-*- ПРЕДОК (z, у).
Таким образом, подход Ченя к вычислению запросов, содержа¬
щих производные отношения, заключается в генерации программ.
Этот подход имеет очень ясный интерфейс с системами управления
реляционными БД. То есть аксиомы, определяющие производные
отношения, используются для генерации программы, в то время
как факты, хранимые в базовых отношениях, применяются для
выполнения программы. Другие подходы (например, PROLOG) не
имеют такого ясного интерфейса. В системе PROLOG дизъюнкты
выполняются непосредственно как программы, и управление может
«прыгать» взад и вперед по аксиомам и фактам. Ч. Чень считает,
что подход в PROLOG может оказаться слишком тяжелым для
обработки «всех типов» запросов, так как системе слишком трудно
быть уверенной в том, что «все возможные» пути дедукции были
ею рассмотрены.
ЧАСТЬ IV
ОБОБЩЕНИЕ В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИЙ
— Вот Я п говорю,— сказал Шалтай-Болтай.
— Все па одно лицо: два глаза (и он дважды
ткнул большим пальцем в воздухе)... в середи¬
не — нос, а под ним — рот. У всех всегда одно
ц то же. Вот если бы у тебя оба глаза были на
одпой стороне, а рот на лбу, тогда я, возможно,
тебя бы запомнил.
— Но это было бы так некрасиво! — возразила
Алиса.
J1. Кэрролл
ГЛАВА 7
ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
7.1. Постановка задачи обобщения понятий по признакам
Необходимость применения методов обобщения информации в
системах принятия решений обусловлена как построением обобщен¬
ных моделей данных (знаний), так и обработкой больших масси¬
вов экспериментальных данных, полученных в ходе наблюдений
различного рода процессов и явлений.
Под обобщением обычно понимается переход от рассмотрения
единичного объекта о или некоторой совокупности объектов О к
рассмотрению множества объектов V такого, что о е V или О <= V.
Под объектом может рассматриваться реальный физический объект,
реализация некоторого процесса или явления.
Пусть О — ioi, ог, ..., о„) — множество объектов, которые могут
быть представлены в системе знаний Z, характеризуемой набором
признаков {Zu Z2, ..., Zr}, где Zh = {zhU zh2, ..., zhm} (l^ks^r) и
Zu являются зпачениями признаков. Каждый объект ot е О, 1 <
г п, представляется как множество значений признаков, т. е.
Oj = (zftj}, где zu^Zh, 1 к < г, Такое описание объекта
будем называть признаковым описанием.
На практике в качестве примеров признаков объектов могут
служить: цвет, размер, форма, скорость, состояние здоровья и т. п.
Описания разных объектов отличаются друг от друга значениями
признаков.
В основе процесса обобщепия лежит сравнение описаний исход-
ных’о'бъектов, заданных совокупностью значений признаков, и вы¬
деление паиболее характерных фрагментов этих описаний. В рабо¬
тах психологов этот процесс получил название индуктивного фор¬
мирования понятий.
Хотя слова «понятие» и «формирование понятий» использова¬
лись психологами и философами задолго до появления кибернетики,
236
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
их определения до настоящего времени во многом противоречивы
и не отражают специфики этих определений.
Будем придерживаться здесь определения понятия, данного
В. П. Гладуном.
Понятие — обобщенная информация о множестве объектов, пред¬
ставленных наборами значений признаков, которая:
а) отображает характерные для этого множества логические от¬
ношения между отдельными значениями признаков;
б) является достаточной для различения с помощью некоторого
правила распознавания объектов, принадлежащих множеству, от
объектов, не принадлежащих ему.
В словах «обобщенная информация» слово «обобщенная» озна¬
чает, что понятие включает лишь существенные значения призна¬
ков, характеризующие множество объектов в целом, и не включает
некоторые частные значения признаков, индивидуализирующие от¬
дельные объекты.
Так как в определении понятия уже присутствует слово «обоб¬
щенная», то выражения «обобщение понятий» или «обобщенное
понятие» будут некорректными в силу вышесказанного. Однако в
дальнейшем, говоря о задаче формирования понятий для множества
объектов, заданных наборами значений признаков, мы не будем
столь строги к терминологии и будем применять более сокращенную
запись этой задачи, употребляя выражения «обобщение понятий»
или «обобщенное понятие».
Множество объектов, которому соответствует понятие, называ¬
ется объемом понятия. В зависимости от того, входит или не входит
объект в объем некоторого понятия, назовем его положительным
или отрицательным объектом для этого понятия.
Пусть О — множество всех объектов, представленных в некото¬
рой системе знаний, V — множество положительных объектов и
W — множество отрицательных объектов.
Будем рассматривать случай, когда
О = V U W, V П W = 0, w = U W{ и Wi П W, = 0
i
Пусть К — непустое множество объектов такое, что К = К+ U К~,
где К+ <= V и К~ сг W. Будем называть К обучающей выборкой.
Задача индуктивного формирования понятий (в дальнейшем за¬
дача обобщения понятий по признакам) состоит в том, чтобы на
основании анализа обучающей выборки К построить понятие, раз¬
деляющее его положительные и отрицательные объекты, т. е. такое
понятие, па основе которого можно, применяя некоторое правило
распознавания, правильно распознавать все положительные и отри¬
цательные объекты множества обучающей выборки К.
В общем случае понятие, сформированное на основе обучающей
выборки, является приближением к понятию множества F, причем
степень близости этих понятий зависит от представительности обу¬
7.1. ПОСТАНОВКА ЗАДАЧИ
237
чающей выборки, т. е. от того, насколько полно в ней отражены
особенности множества V.
Понятие, таким образом, представляется в виде логической
функции, в которой булевы переменные, отражающие значения
признаков, соединены логическими операциями конъюнкции, дизъ¬
юнкции и отрицания. В зависимости от типа логической операции
будем различать конъюнктивные, простые и дизъюнктивно-конъ¬
юнктивные понятия.
Поставим в соответствие каждому значению признака ztj е Zt
(1 < г < г, 1 булеву переменную htl такую, что она равна
1, если t-й признак принимает j'-e значение, и равна 0 в противном
случае.
Тогда конъюнктивным понятием называется понятие, описывае¬
мое выражением вида & fey, где i — индекс признака, / — индекс
i
его значения.
Простым понятием называется понятие вида & V fey*
г 3
Дизъюнктивно-конъюнктивные понятия описываются выраже¬
нием V aft> гДе ak = & Ьц.
k г
Класс дизъюнктивно-конъюнктивных понятий отражает наибо¬
лее сложные закономерности, присущие множеству объектов, вклю¬
чая понятия с исключающими признаками. Эти понятия имеют
кроме значений признаков (или их конъюнкции), характерных для
положительных объектов, также значения признаков (или их конъ¬
юнкции) , которыми отрицательные объекты отличаются от положи¬
тельных. Использование отличительных признаков отрицательных
объектов позволяет в ряде случаев выразить понятие более простой
формулой.
На процесс обобщения понятий по признакам может оказать
большое влияние структура множества значений признаков Z{. Бу¬
дем различать три основных типа множества Ъи
1. Наиболее полную информацию об объектах по их признако¬
вому описанию мы будем иметь тогда, когда на множествах зпа-
ченпй введена метрика, позволяющая дать количественную оцепку
тому или иному значению, а также проводить полное количествен¬
ное сравнение различных значений признака между собой. В этом
случае Zu как правило, представляет собой подмножество натураль¬
ных или действительных чисел, наделенных обычной евклидовой
метрикой. Например, для признака «время нагрева заготовки» Z;
есть отрезок оси действительных чисел типа [0, 1000], где каждое
значение с означает количество секунд, идущих на нагрев.
2. Элементы множества Z; могут иметь качественный характер,
но быть при этом упорядочены друг относительно друга, образуя
ранговую (или порядковую) шкалу. Например, признак «размер»
может иметь значения: огромный, большой, средний, маленький,
а признак «цена» — дорогой, дешевый, бесплатный. Характерной
238
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
особенностью шкал порядка является то, что по ним мы можем
судить, какой из двух объектов является «наилучшим» с позиции
некоторого критерия, но не о том, насколько эти объекты близки
или далеки по этому критерию.
3. В самом общем случае множества не наделены никакой
структурой, то есть составляющие их значения имеют вид каче¬
ственных описаний, никак не связанных между собой. Например,
признак «материал» может иметь значения: железо, камень, дере¬
во и т. п.
Помимо задания структур на множестве значений признаков
£i существуют другие способы введения дополнительной информа¬
ции об объектах в описаниях частных примеров. Например, каждо¬
му признаку может быть приписан вес в виде числа, отражающего
степень его важности для описания объекта, указать степень связ¬
ности различных признаков между собой или ввести различные
отношения (например, лингвистические) не только между призна¬
ками, но и между отдельными значениями.
В зависимости от структур будем различать алгоритмы коли¬
чественного и качественного обобщения. Алгоритмы количественно¬
го обобщения применяются для обработки числовых или шкалиро¬
ванных результатов научных экспериментов. Алгоритмы обобщения
объектов, описания которых строятся на множествах, не наделен¬
ных структурой, буде.м называть качественными. Последние будем
рассматривать как наиболее общие, так как они могут применяться
к любым описаниям, в том числе и к обладающим структурой. Са¬
ми алгоритмы количественного и качественного обобщения будут
рассмотрены в § 7.3 и 7.4.
Формирование понятий по сути является процессом выделения
закономерностей, свойственных множествам объектов. Естественно,
что возможности человека в выделении этих закономерностей огра¬
ничены, поэтому разработка программ формирования понятий, пре¬
восходящих человеческие возможности, сулит исследователям по¬
мимо теоретических предпосылок создания принципиально новых
методов решения задач также п большие практические возможности
во многих областях знаний.
Мы не будем останавливаться на всех известных подходах к
решению проблемы формирования понятий по признаковым описа¬
ниям. Желающие ознакомиться с ними отсылаются к списку лите¬
ратуры, относящемуся к части IV. Мы рассмотрим только неко¬
торые подходы, и в первую очередь подход М. М. Бонгарда к обоб¬
щению понятий по признакам, тем более, что основные идеи, им
высказанные, используются в большинстве других методов обоб¬
щения.
Иллюстрацию метода М. М. Бонгарда будем проводить на одной
графовой задаче, точное решение которой практически трудно (во
многих случаях невозможно) получить для графов большой раз¬
мерности.
7.2. МЕТОД БОНГАРДА И РАЗРЕЗАНИЕ ГРАФА
239
7.2. Метод М. М. Бонгарда на примере решения задачи
о разрезании графа
Так как со времени выхода монографии М. М. Бонгарда прошло
значительное время, кратко опишем суть его метода.
Решение задачи формирования понятий по признаковым опи¬
саниям основывается на двух процедурах: обучении и экзамене.
В процедуре обучения используются две выборки примеров, при¬
чем первая содержит примеры, относящиеся к интересующему
обобщенному понятию, а вторая — контрпримеры. В результате
обучения строится некоторое решающее правило, которое для лю¬
бого конкретного примера указывает, принадлежит ли он к данно¬
му обобщенному понятию или нет. После того как на обучающей
выборке решающее правило построено, приводится в действие вто¬
рая процедура — экзамен. В процедуре экзамена также использу¬
ются две выборки, но примеры в них, естественно, другие, чем в
обучающих выборках. Если во время экзамена решающее правило
даст допустимое качество разделения экзаменационной выборки,
то п^одещ£а_обоб12ения заканчивается. В противном случае ре¬
шающее правило уточняется за счет обработки новой обучающей
выборки, в качестве которой может использоваться и та экзамена¬
ционная выборка, которая дала неудовлетворительные результаты
экзамена.
Теперь перейдем к детальному описанию метода М. М. Бонгарда
на примере решения задачи о минимальном разрезании графа.
Основанием для выбора этой задачи явилось то, что существует
довольно много практических задач, для которых задача о мини¬
мальном разрезании графа оказывается теоретической моделью,
позволяющей находить решения этих практических задач.
Так, в связи с бурным развитием социалистической экономики
одной из проблем научной организации управления производствен¬
но-хозяйственной деятельностью отрасли является проблема созда¬
ния комплексной отраслевой автоматизированной системы управле¬
ния (КО АСУ). Производственно-технической базой КО АСУ яв¬
ляется отраслевая сеть вычислительных центров (ОС ВЦ), которая
содержит следующие структурные компоненты:
а) абонентские периферийные пункты;
б) вычислительные центры (ВЦ), в которых локализованы вы¬
числительные мощности системы (так называемые зоны);
в) разветвленную сеть связи, обеспечивающую информационное
взаимодействие вышеперечисленных частей ОС ЁЦ.
Осуществление процессов управления в системе невозможно без
интенсивного информационного обмена как между ВЦ и перифе¬
рийной частью (абонентскими пунктами), так и между самими ВЦ.
Для ОС ВЦ можно сформировать некоторые общие принципы
проектирования и в частности: оптимальность структуры ОС ВЦ в
отношении критериев, учитывающих степень достижения постав¬
240
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
ленных целей и затраты на их достижение; обеспечение надежного
функционирования ОС ВЦ; максимальная унификация используе¬
мых технических средств; решение вопросов накопления, обработки
и распределения информации и т. п.
Решение всех этих вопросов связано, в частности, с нахожде¬
нием такого размещения программ по зональным ВЦ отраслевой
сети, которое минимизировало бы запросы между ними (т. е. мини¬
мизировало бы затраты по магистральной сети связи, обеспечиваю¬
щей взаимодействие зональных ВЦ). Эта задача сводится к нахож¬
дению разрезания графа на заданное число блоков (подграфов)
с минимальной связностью между ними, где число программ, кото¬
рые нужно распределить, интерпретируется как число вершин рас¬
сматриваемого графа, а число зональных ВЦ — как число блоков,
на которые нужно разрезать граф.
Аналогичная задача возникает при распределении этих программ
по вычислительным машинам любого зонального ВЦ. В этом слу¬
чае все программы для каждого ВЦ интерпретируются как верши¬
ны графа, а число машин ВЦ — как число блоков, на которое не¬
обходимо разрезать граф, и между которыми нужно распределить
программы. Задачей ставится нахождение минимального разбиения
этого графа.
Другими практическими задачами разрезания графа на подгра¬
фы с минимальной связностью между ними являются задачи сег¬
ментации программ, страничной организации виртуальной памяти,
размещения модулей в блоках при модульном проектировании циф¬
ровой аппаратуры и электронных схем.
Перейдем к формальной постановке задачи о минмальном раз¬
резании графа.
Задан граф G с N вершинами и V дугами, не имеющий петель
и мультидуг, в виде матрицы смежности Их,,!! (г = 1, 2, ..., ЛГ; j =
= 1, 2, ..., N) и набор из s целых положительных чисел ти т2, ...
..., ms такой, что + тг + ... + т„ = N. Требуется найти разбие¬
ние графа на s подграфов по ти т2, ..., ms вершин в каждом,
имеющее минимальную связность. Под связностью разбиения будем
понимать суммарное количество ребр, соединяющих вершины из
разных подграфов.
Эта задача сводится к одной из проблем списка проблем Р. Кар¬
па, характеризуемых тем, что все известные в настоящее время
методы их решения требуют экспоненциального характера длитель¬
ности вычислений, причем неизвестно, существует ли алгоритм ре¬
шения, время вычисления по которому полиномиально относительно
размерности задачи, т. е. оканчивающий свою работу за время
(число шагов), ограниченное полиномом от длины входных данных
(числа вершин графа).
Точные алгоритмы решения задачи разрезания графа представ¬
ляют собой варианты сокращения перебора всех возможных его раз¬
биений и для графов большой размерности становятся практически
7.2. МЕТОД БОНГАРДА И РАЗРЕЗАНИЕ ГРАФА
241
неприменимыми. Так, общее число различных разбиений графа
G(N, U) на s подграфов {Gu G2, GJ таких, что GiHGj = 0
(i = 1, 2, ..., s; / = 1, 2, ..., s; i¥=f) и Gt U G2 U ... U Gt = G равно
H (ttli, ГП2, . . .) TTls) ~ Gn . . . ■ Cjv—rrij^—m2—...— ms_2 (^-l)
в случае, когда все Hi; различны и
Н' {тх, т2, . .., 7Я,) =
1
«! (5! 7!...
#(»*!, пг2, ms)
(7.2)
в случае, когда имеется а, Р, 7, ... одинаковых т,и Поэтому возни¬
кает необходимость поиска новых эвристических методов решения
задачи разбиения графов большой размерности, причем метод
М. М. Бонгарда оказался перспективным и показал свою достаточ¬
но высокую эффективность в решении этой задачи.
Сначала рассмотрим случай разрезания графа G на два под¬
графа Gt п G2. В силу (7.1) и (7.2) число разбиений довольно ве¬
лико, поэтому для уменьшения их числа введем понятие класса
разбиений, предложенное Л. Л. Горинштейном. Классом разбиений
будем называть всю совокупность разрезаний графа, для которых
число переставляемых вершин из одного подграфа в другой оди¬
наково.
Одно из произвольных разрезаний графа назовем исходным
(или опорным). Тогда любое другое разрезание может быть полу¬
чено из исходного перестановкой вершин между подграфами.
Пусть Ni — подмножество вершин графа G, принадлежащих в
исходном разрезании подграфу г, и пусть N# — подмножество вер¬
шин множества Ns, которые в результате перестановки попадают
в подграф г, причем среди Мц могут быть и пустые подмножества.
Обозначим через ац количество элементов множества Njt. Тогда
S S
2 aji = а;, где щ — число элементов множества Nt, и 2 ац — ah
j=1 i=l
где fifj — число элементов множества N}.
Таким образом, имеем матрицу
где 1 С г < s и К j < s.
Например, для нашего случая (s = 2) при разрезании графа из
восьми вершин на два подграфа по четыре вершины в каждом име¬
ем следующие матрицы:
К 0 =
4 0
0 4
К1
3 1
1 3
Ко
2 2
2 2
кя =
1 3
3 1
Если К0 считать за исходное разбиение, то имеем всего два класса
разбиения Ki и К2 (из-за симметрии Kt эквивалентно Ks).
Матрица смежности llv,,II исходного графа G разбивается на че¬
тыре части: НСЛН — подматрица графа G, определяющая внутреннюю
связность подграфа Gp, \\Сгг\\ — подматрица графа, определяющая
внутреннюю связность подграфа G2; IIC12II — подматрица графа,
определяющая внешнюю связность Gi и G2; ||С21|| = является
16 В. Н. Вагин
'242
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
транспонированной подматрицей IIС1211. Затем методом полного пе¬
ребора находим все возможные классы разбиений и составляем
таблицы, соответствующие этим классам, содержимое которых есть
следующее:
an (i = 1, 2) — полусумма всех элементов подматриц 1\Сц\\ и о12—
сумма всех элементов подматрицы \\С12\\\
msi
/1 = | ®11 ®22 1> /г = ®11 "Ь ®22> /з [Cij]n = 2 Vnq {ii ] — 2),
9=1
где mSi — число вершин Gl или Gz, п — номер строки подматрицы
UCtfll,
mS1
/4 = 2 ‘vgn' 7 = 2),
9=1
где тг'— номер столбца подматрицы НС,,!!,
m5
/5 г = 2 viq + 2 Vqi (С 7 = 2).
9=1 9=1
Арифметические функции /1 -г- /5 имеют следующий смысл:
определяет разницу меящу внутренними связностями подграфов
Gi и бг2; /2 определяет суммарную внутреннюю связность Gi и G2;
/з — сумма элементов v;i в п-й строке подматрицы UCyi (г, j = 1, 2);
/4 — сумма элементов v« в п'-м столбце подматрицы ПСУ (i, 7 =
= 1, 2); /5 — сумма элементов, находящихся в Z-й строке и Z-м
столбце подматрицы НС«Н (i, / = 1, 2).
В соответствии с методом М. М. Бонгарда сформируем признаки
принадлежности данного разрезания к классу разбиения, сделаем
отбор существенных признаков с точки зрения выбранного крите¬
рия и минимальной связности графов и на их основе построим
минимальный базис признаков.
Признаки формируются по следующему правилу: к каждой стро¬
ке таблицы применяем два логических оператора (выбор необхо¬
димых логических операторов определяется конкретно для каждого
случая и проверяется машинным экспериментом), результатом при¬
менения которых являются 0 или 1, т. е. две логические перемен¬
ные Xi и Х2. Применение числа логических операторов больше
двух в практических задачах, как правило, сильно затрудняется
из-за довольно большого числа логических функций. К полученным
логическим переменным Х2 и Хг применяем одну из логических
функций двух переменных F^(XU Х2).
Таким образом, каждая такая логическая функция будет яв¬
ляться признаком строки таблицы, т. е. выражение вида (L,-, L,,
Fk)r, где Li и Lj — некоторые логические операторы, a Fh — логиче¬
ская функция двух переменных, и есть признак r-й строки табли-
7.2. МЕТОД БОНГАРДА II РАЗРЕЗАНИЕ ГРАФА
243
цы. Отсюда признаком всей таблицы будет логическое произведе¬
ние признаков всех строк, составляющих эту таблицу.
Для решения задачи разбиения графа на два подграфа с мини¬
мальной связностью между ними оказалось достаточным использо¬
вание следующих логических операторов:
| 1, если /х<2,
1 ( 0 в противном случае,
тле Li проверяет наличие минимальной разницы между внутренни¬
ми связностями G» и G2;
f'l, если /2>о12,
2 \ 0 в противном случае,
где L2 проверяет разницу между внешней и внутренней связностью
графа G;
[ ms
l3 = 1, если /з [Cij\n^-^ — 1 (г, / = 1, 2; п = 1 т$1),
( 0 в противном случае,
где оператор L3 проверяет в подматрице ПСД] наличие вполне свя¬
занной строки п. Вполне связанной строкой будем называть строку,
сумма элементов которой не меньше maJ2— 1:
| 1, если /4 [Су]„/ > msJ2 — 1
L4 = (i, /=1,2; п' = Ims^,
( 0 в противном случае,
где Lk проверяет наличие вполне связанного столбца п' в подмат¬
рице \\Сп\\ (вполне связанный столбец определяется аналогично
вполне связанной строке);
_ ( 1, если xl3 & XLi = 1,
5 (Ов противном случае,
где и XLi — логические переменные, полученные в результате
применения логических операторов L3 и L4;
1, если (XLi V XLа) &xl2 = 1,
(Ов противном случае,
где Хт п XL —логические переменные, полученные после исполь-
1 2
зования операторов Li и L2;
р | 1» если fk[C12]n>P (Л = 3,4),
7 ' ’ j 0 в противном случае,
где р — номер класса разбиения, соответствующий числу перестав-
16*
244
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
ляемых вершин, п — строка или столбец, которые рассматриваются.
Операторы L% (3, п) и Щ(4,п) определяют наличие в 11С1211 строк
и столбцов, сумма элементов которых не меньше р.
Введем, кроме того, функцию /6(к, п)\ (к = 3, 4)— ариф¬
метическое суммирование значений переменных Хгр,, д получен-
L/n\R)Vb)
ных после применений оператора Щ (к, п), и оператор
LP^f если /6[Ь?(3, re)]>p&/6[L?(4, ге)]>р,
О в противном случае.
Этот оператор имеет значение 1 тогда и только тогда, когда в
подматрице \\Ci2W существует не меньше чем р строк и не меньше
чем р столбцов, для которых оператор Щ (к, п) принимает значе¬
ние 1. Эти строки и столбцы обозначим соответственно (в общем
виде) через
[h, г2’ • • ч ?Р' ■ • ч 111 72> • • • > ]pi • ‘ ; 7s2]>
где Si, s2 > p.
Рассмотрим еще арифметическую функцию /7[ч> Ч, • » Ьд 7и
/2, ..., /s2], которая производит суммирование всех элементов лду, вхо¬
дящих в соответствующие строки г2, ..., ] (s1'^= р) и столбцы
[h> 7г> • • •’ Пг] (s2^ р) одновременно.
Введем еще один оператор:
1, если max /7 Г^, . .., is ; j\, .. ., /s 1 > 2 К,
L 1 21 I£=l
О в противном случае
где р — номер класса разбиения.
Оператор Ь% проверяет наличие в IIС12Н вполне связанной под¬
матрицы Мр (£,, ..., y'j, ..., /р), т. е. подматрицы, сумма элемеп-
р
тов которой не меньше S К.
К=1
После построения исходных признаков, число которых может
достигать огромной величины, выделяем существенные, и затем для
каждого класса таблиц формируем минимальный базис признаков.
К существенным будем относить признаки, которые принимают
противоположные значения (0 или 1) на таблицах, несущие ин¬
формацию о примерах, и таблицах, несущих информацию о контр¬
примерах.
Под минимальным базисом признаков некоторого класса разбие-
пий будем понимать ту минимальную совокупность признаков,
конъюнкция которых имеет значение 1 для этого класса разбиений
и значение 0 для всех остальных классов. В дальнейшем этот ми¬
нимальный базис признаков будет использоваться как набор пра¬
вил или как обобщенное описание, позволяющее для каждого кон¬
7.2. МЕТОД БОНГАРДА И РАЗРЕЗАНИЕ ГРАФА
245
кретного разрезания указать, к какому классу разбиений оно отно¬
сится.
Так, например, при разрезании графов из 20 вершин на два
подграфа (экспериментально) выделены с помощью ЭВМ следую¬
щие минимальные базисы признаков для пяти классов разбиений,
не считая исходного Ка\
Кг
<Pi
= (Ь2,
L„
F2) & (Lb,
L6, F2),
к2
Ф2
= (L2,
L6,
Р^&Ф»
Lq> Fi) & (^i> L2, Fa),
к3
Фз
= (Ll
Ll
Fi)&№
Ll Fj,
Кг
Ф 4
= №,
T 4
■^9
Рг)&№
, Ll Fj,
К5
Ф5
= {К
Tb
•^91
Рг) & W
Ll Fj,
где = Хх &X2, F2 = Хх V Х2, F3 = Хх \J “1 Х2, Fi =Х1&Х2 Ц \
1 Хг & Х2. Для классов разбиений Кр (2 < р ^ 5) в результате
обобщения выражений получаем следующий минимальный базис:
К9 (2 < р < 5): Фр = (LI Ц, Fj) & (Ц, Ц~\ F,).
Совокупность минимальных базисов признаков для всех классов
таблиц составляет требуемый минимальный набор признаков, ко¬
торый при данном материале обучения является достаточным. От¬
сюда можно ввести критерий оценки достаточности обучения: если
для некоторого класса таблиц нельзя найти минимальный базис
признаков, то либо а) материал обучения недостаточен, либо
б) способ формирования признаков (логические операторы) явля¬
ются неподходящими для данного материала обучения.
Этап обучения заканчивается после выбора существенных при¬
знаков и минимального базиса этих признаков.
На этапе проверки (экзамена) неизвестной ситуации (т. е. от¬
дельной строке таблицы) присваивают характеристики по всем ото¬
бранным при обучении признакам. Затем полученные характери¬
стики сравниваются с характеристиками таблиц, использованных
при обучении. Сравнение заключается в подсчете числа признаков,
по которым характеристики совпадают (не совпадают). В резуль¬
тате можно сделать заключение, к какому классу следует отнести
неизвестную ситуацию.
Конечно, практически нельзя ожидать, что программа после
обучения будет безошибочно классифицировать ситуации. Так как
экзамен производится лишь на материале обучения, то отсюда вы¬
текает возможность делать на экзамене лишь утверждения вероят¬
ностного характера, что требует со своей стороны некоторых ста¬
тистических оценок.
В случае, когда не отобрано достаточное количество существен¬
ных признаков, можно предложить следующие меры:
246
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
1) использование вместо одпой контрольной таблицы не¬
скольких;
2) увеличение числа строк в обучающих таблицах;
3) включение нескольких признаков, дающих одинаковое раз¬
биение на множество объектов;
4) введение градации логических функций и в соответствии
с ней упорядочивание признаков (например, признак, полученный
с помощью функции конъюнкции, можно считать более существен¬
ным, чем тот, который получен с помощью функции дизъюнкции);
5) применение в каждой строке таблицы не двух, как обычно,
а трех и более логических операторов.
Таким образом, определение класса разбиения — обобщение на
первом этапе — является базой для проведения обобщения на вто¬
ром этапе — определение переставляемых вершин. После определе¬
ния класса разбиений находим правила перемещения вершин
внутри данного класса, ие давая полный перебор этих вершин,
называемых в дальнейшем предпочтительными. Для этого вводим
следующие логические операторы:
. _ , 1, если /5[Си];==тт{/5} (i = 1 й- т$1),
О в противном случае,
г 1, если /5 [C22]j = min {/5} (/ = 1 й- msJ,
— \ 3
[ 0 в противном случае,
(7.4)
где mSi и т5г— число вершпн в подграфах Gi и G2. Операторы Л<
и Aj указывают на те строки п столбцы подматриц ИСАИ и ИСАИ
соответственно, для которых сумма элементов vtj, содержащихся
в них, является минимальной (т. е. они определяют минимально
связанные вершины в подграфах Gt п G2).
Аналогично
( 1, если /3 [С12]; = max {/3} (i = 1 й- т$1),
I г
[ 0 в противном случае,
1, если /4 [C12]j = шах {/4} (/ = 1 й- ms ),
з 2
О в противном случае.
(7.5)
Операторы Н4 и Н,- указывают на те строки и столбцы подматрицы
ПСАФ сумма элементов которых максимальна (т. е. они определяют
максимально связанные вершины подграфов Gi и Gz в подматри¬
це ИСАИ).
G помощью машинного эксперимента для класса разбиений най¬
дено выражение ф (J.J, которое определяет i-ю и /-ю переставляемые
7.2. МЕТОД БОНГАРДА И РАЗРЕЗАНИЕ ГРАФА
247
вершины для Gi и G2:
ф (j.) = {(A,, Aj, & (Sf, 2,-, FJh), (7.6)
где Ft = & X2.
Таким образом, из бч в G2 переставляются те вершины, кото¬
рые являются минимально связанные с бч и максимально связан¬
ные с G2. То же самое относится к вершинам G2, переставляе¬
мым в бф
Для класса разбиений Кг обобщенное выражение имеет сле¬
дующий вид (также найденный экспериментально):
■ф (; *) = {(Л,, Hj, ^)}iiU & (Aj, Sj, FJjJ. (7.7)
При этом в Gi выделяются вершины (i, и), максимально свя¬
занные с G2 и минимально связанные в бч, которые переставля¬
ются с вершинами (у, I) в G2, минимально связанными в G2 и
максимально связанными с Gt.
При определении переставляемых вершин классов разбиений К3,
Ki, ..., Кр используем заранее определенные вполне связанные
подматрицы Mp[ii, i2, ..., гР; jи j2, ..., /р]. Вершины (ц, i2, ..iP)
для класса КР являются переставляемыми вершинами для бч,
a (;'i, j2, ..., jР)—те вершины, которые остаются в G2. Таким об¬
разом, полный перебор переставляемых вершин значительно умень¬
шается.
При разрезании графа из N вершин на три подграфа матрица
смежности Hv.,11 условно разбивается на 9 подматриц. При этом
\\Сц\\ (£ = 1, 2, 3) — подматрицы графа G, определяющие внутрен¬
ние связности подграфов бч, G2, G3; 11<712И, Иб23Н, IIC13II — подматрицы,
определяющие внешние связности соответствующих пар графов;
остальные три подматрицы являются транспонированными подмат¬
рицами: 1 С2i II = IС121, ЦС32|| = I! Саз II, IIС811| = II 11-
Так как число классов разбиений растет довольно быстро с уве¬
личением числа вершин в исходном графе и полный перебор их
становится затруднительным при разрезании графа на три подгра¬
фа, то целесообразно ввести так называемые обобщенные классы
разбиении А”, которые указывают на то, между какими подгра¬
фами производится обмен вершинами без определения числа пере¬
ставляемых вершин. Для нашего случая можно выделить 9 таких
обобщенных классов (стрелки указывают на направление обмена
вершинами):
К\: G,^G2,
К\: б2+±б3,
К°3: Оу ^ С3,
248
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
(7.8)
Таким образом, при разрезании графа на три подграфа сначала
нужно построить обобщенный класс разбиения и затем выделить
конкретный класс, определяющий число переставляемых вершин
внутри этого обобщенного класса. Для этого формируем обучаю¬
щиеся таблицы, соответствующие 9 классам разбиений, содержимое
которых есть следующее: (i = 1, 2, 3) — полусумма всех эле¬
ментов Vu подматриц НСДН, \\С22\\ и IlCTJI соответственно; Gi2, о23,
O13 ■— сумма всех элементов v« подматриц 11С12И, ПСгзИ и UCWI соот¬
ветственно.
Затем аналогично случаю разрезания графа на два подграфа
строим минимальный базис признаков. В связи с введением обоб¬
щающих классов разбиений имеют место следующие операторы.
Оператор Llm указывает на максимальную внешнюю связность
двух подграфов:
где тройка (i, /, к) принимает последовательно значения (1, 2, 3),
Оператор Ь2т проверяет различие внутренних связностей двух
подграфов:
где пара (г, /) принимает последовательно значения (1, 2), (2, 3),
(1, 3).
Оператор L3m устанавливает соотношение между внутренними
связностями двух подграфов:
где пара (i, ;') принимает последовательно значения (1, 2),
1, если Оц = max(oy, Ojk, aih) (m — 1, 2, 3),
О в противном случае,
(2, 3, 1) и (3, 1,2).
1, если ОцФоц (т = 1, 2, 3),
О в противном случае,
1, если (т = 1,2,3),
О в противном случае,
(1. 3), (2, 3).
7.2. МЕТОД БОНГАРДА И РАЗРЕЗАНИЕ ГРАФА
249
L4m —
Оператор Lim указывает на наличие минимальной внутренней
связности одного из подграфов графа G:
1, если о и = min (cru, аИ, ahh) (m = 1,2,3),
О в противном случае,
где (i, /, к) принимают последовательно значения (1, 2, 3), (2, 3, 1)
и (3, 1, 2).
Оператор Ь5т проверяет соотношение между внешними связно¬
стями двух подграфов:
1, если Oij^Ojk (т — 1) 2, 3),
О в противном случае,
L^m —
где (i, /, к) принимают последовательно значения (1, 2, 3),
(2, 3, 1) и (3, 1,2).
Оператор Ьвт указывает на минимальную внешнюю связность
двух подграфов графа G:
1, если оу = min(c7y, ajk, aih) (т=1, 2, 3),
О в противном случае,
где (i, ;, к) принимают последовательно значения (1, 2, 3), (2,3, 1)
и (3, 1, 2).
Оператор Ь1т проверяет соотношение между суммой внутрен¬
них связностей двух подграфов графа G и соответствующей им
внешней связности:
Lam. —
Lym —
1, если (аи + <Ху)^оу (т = 1, 2, 3),
О в противном случае,;
где (i, /) принимают последовательно значения (1, 2), (2, 3)
и (1, 3).
С помощью машинного эксперимента выделены следующие ми¬
нимальные базисы для обобщенных классов К\
Fi- Ф1 = {L221 L231 Fj) £ {L301 L33, F7) (£ (F41, L22, F4) & (L\\, L23, F4),
F-2. Ф2 = (F21, ^237 ^l) & (^317 L321 F2) (g (L12, L21, F4) (g (F12, L23, F4),
K3: Фз = (L2i, L22, F4) <g (L31, L33, Fg) e? (L13, L21, F4) (g (L13, F22, F4),
К4: ф4 = (Ln, Li3, F4) eg (F12, L41, F4) eg (L13, Li2, F4) eg
& (Li-2, Ls2, Fg) d? (L13, Lsl, Fg), (7.9)
F3: Ф5 = (^117 Li3, F4) eg (F12, L41, F4)&(L13, L42, F4) eg
<& (L1V F53, F7) (g (L13, F5l, F7),
Ks- фб = (L12, L41, F4) eg (Llv L73, F5) 0? (Li2, L71, F5) <g (F41, L72, F4),
TsT7: ф7 = (L13, F42, F4) (g (L\2, L72, Fg) <g (F41t F71, F5) (g (F13, F73, F4)t
250
ГЛ. 7. ОБОБЩЕНИИ ПОНЯТИЙ ПО ПРИЗНАКАМ
^8: Фв — (■^'111 Ьа, Рг) <jl (LiV L73, Fъ) eg (А13, L72, F-a) d? (Ln, ^71, £\),
Ф9 = (^1. ^72 > ^5) (^тг) ^ТЗ’ £^b)>
где
Fx = Xx eg X2, F2 = X1\J X2, F3 = Xx V 1 Xt,
F4 = Xx <£ X2 V П Xx cfi 1 X2,
Ffi = П *1 £■ 1 X2, Fe=n^1V^ F1 = 1 Xi V П За¬
полученные выражения используем как набор эвристических
правил, позволяющий для каждой конкретной ситуации определить,
к какому обобщенному классу она относится.
После нахождения обобщенного класса определяем конкретный
класс разбиения п предпочтительные переставляемые вершины. Для
обобщенных классов К\, К% в силу того, что обмен верши¬
нами происходит между двумя подграфами, применяем выражения,
полученные при разбиении графа на два подграфа: (7.3),
(7‘6)’ (7-7)о'
Для Ki и К5 конкретные классы разбиений также определя¬
ются из выражений минимального базиса признаков (7.3) с ис¬
пользованием соответствующих пар подграфов (см. 7.8). Предпоч¬
тительные переставляемые вершины для обобщенных классов К\
и К\ определяются по принципу выделения максимально связан¬
ных вершин подграфа G, с G2, G2 с подграфом G3 и G3 с Gt для
класса К\ g G, с G3, G3 с G2 и G2 с G, для класса При опре¬
делении переставляемых вершин внутри данного класса разбиений
используем операторы (7.4), (7.5), а также
( 1, если ]ъ [С33]г = min {/5} (Z = 1 -у т.),
Лг = ‘ (7.10)
( U в противном случае,
где mSs—число вершин в подграфе Gs.
Оператор Лг указывает на те строки и столбцы подматрицы
IIC33II, для которых сумма содержащихся в них элементов v,j мини¬
мальна. Аналогично оператор
( 1, если /3 [Сп V С2з V C13]i = max {/3} (i = 1 -у Аг),
©i = * (7.11)
( U в противном случае,
указывает на те строки подматриц ИСД! (i, / = 1, 2, 3; i Ф j), сум¬
ма элементов которых максимальна, а оператор
( 1, если /4 [С12 V С23 V С13]} = max {/4} (; = 1 -У N),
в} = J (7.12)
{ 0 в противном случае
7.2. МЕТОД БОНГАРДА И РАЗРЕЗАНИЕ ГРАФА
251
указывает на те столбцы подматриц 11С«Н (i, / = 1, 2, 3; i^j),
сумма элементов которых максимальна.
Таким образом, для классов А° и К\ экспериментально най¬
денные обобщенные описания для переставляемых вершин i, j, I
с использованием операторов типа (7.4), (7.5), (7.10), (7.11), (7.12)
имеют следующий вид:
% (А°) = (0; (С12), Л,, FJ <g (0, (Со3), Aj, FД сб(0; (С18), Л„ FJ, (7.13)
(А?) =(0г(С13), Л{, FД d? (0j (С2Я), Alt АД <g (0j (C12), Aj, АД. (7.14)
Выражения типа @{(СА) обозначают, что к подматрице ПСУ
применяются операторы (7.11) или (7.12).
Для остальных обобщенных классов А° К° конкретные
классы разбиений, определяющие число вершин, участвующих в об¬
мене, находятся для соответствующих пар подграфов с использо¬
ванием выражений (7.3). Так, например, для класса Ад найден¬
ный минимальный базис признаков для перестановки вершин из
одного подграфа в другой имеет следующий вид:
Ф М = (0; (С1г), Qi (Cla), АД £. (0j (С1г), Aj, АД flg (0 j (<713), Л„ АД.
(7.15);
Для классов А?, А3, Ад выражения имеют внд, аналогичный
(7.15).
С помощью машинного эксперимента было получено разрезание
на два подграфа 18 графов, но в отличие от известных методов
разрезания, которые позволяли резать графы с числом вершин не
более 30, здесь же были взяты графы с числом вершин от 40 до
120. Найденные минимальные базисы признаков (7.3) определяли
класс разбиений, внутри которого с помощью выражений (7.6),
(7.7) находились предпочтительные переставляемые вершины, что
и составляло один шаг разбиения.
В табл. 7.1 приведены некоторые полученные результаты.
Так как нахождение абсолютно минимального разбиения для
графов большой размерности не представляется возможным (см.
(7.1) и (7.2)), то в качестве критерия эффективности предложен¬
ного метода берется так называемое квазиминимальное разбиение,
полученное человеком, имеющим опыт решения таких задач. Ре¬
зультаты эксперимента говорят о высокой эффективности данного
метода.
Другой эксперимент был проведен прн разрезании на три под¬
графа 30 графов с числом вершин от 30 до 120. Сначала был най¬
ден с помощью выражений (7.9) обобщенный класс разбиений,
затем, используя выражения (7.3),— конкретный класс и, наконец,
внутри него с помощью (7.6), (7.7), (7.13), (7.14), (7.15) опреде¬
лялись переставляемые вершины. Каждый шаг разбиения состоит
из решения перечисленных трех задач.
252
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
В табл. 7.2 приведены некоторые полученные результаты при
разрезании графа на три подграфа.
Как и в случае разрезания графа на два подграфа, результаты
машинного эксперимента говорят о высокой эффективности пред¬
ложенного метода. Следует также отметить, что с ростом размер¬
ности число шагов разбиения (не число операций, затрачиваемых
на нахождение минимальной связности) растет в темпе роста этой
размерности.
Таблица 7.1
Номер
графа
Число
вершин
графа
Связность на¬
чального разбие¬
ния
Число шагов
разбиения
Связность по¬
лученного
разбиения
Связность квази-
минимального
разбиения
1
40
30
4
14
14
2
50
22
5
12
12
3
60
21
4
11
10
4
60
35
4
13
13
5
80
53
7
17
14
6
100
32
7
17
15
7
120
42
8
22
20
8
120
63
9
21
20
При разрезании графа на s подграфов, где s > 3, резко возра¬
стает число классов разбиений и как следствие невозможно ввести
какую-то их общую классификацию. Основной целью эксперимента
было проверить возможность применения найденных минимальных
Таблица 7.2
Номер
графа
Число
вершин
графа
Связность на¬
чального разбие¬
ния
Число шагов
разбиения
Связность по¬
лученного
разбиения
Связность квази-
минимального
разбиения
1
30
26
5
И
10
2
45
21
5
12
12
3
60
43
5
22
19
4
81
46
6
21
20
5
81
30
7
8
7
6
90
45
6
19
16
7
120
55
6
22
20
8
120
60
7
18
17
базисов признаков (7.3) и (7.9) при разрезании графов на число
подграфов больше трех. На каждом шаге разбиения из s подгра¬
фов сначала выделяются три подграфа, для которых затем опреде¬
ляются обобщенный класс разбиения, число переставляемых вер¬
шин и предпочтительные переставляемые вершины. Так как от
7.3. АЛГОРИТМЫ КАЧЕСТВЕННОГО ОБОБЩЕНИЯ
253
выбранных подграфов зависит конечный результат, то можно при¬
менить следующее эвристическое правило по выбору этих подгра¬
фов: берутся те подграфы 6Ц, Gu2, Gu^ из s подграфов, для ко¬
торых сумма элементов \’у в соответствующих подматрицах | CUiuj |
(г, / = 1, 2, 3; i^j) имеет максимальпое значение по сравнению
с суммой внешних связностей любых других трех подграфов из s.
Таблица 7.3
Номер
графа
Число
вершин
графа
Число
подграфа
Связность на¬
чального раз¬
биения
Число шагов
разбиения
Связность по¬
лученного
разбиения
Связность
квазимини-
мальяого раз¬
биения
1
24
4
22
5
8
8
2
50
5
45
8
19
16
3
30
6
33
4
15
13
4
60
6
43
7
12
10
5
28
7
30
4
12
9
6
49
7
50
6
21
19
7
32
8
37
6
17
12
8
80
8
60
8
14
14
В табл. 7.3 приведены некоторые результаты при разрезании гра¬
фов на s подграфов (s менялось от 4 до 8).
Результаты эксперимента говорят, что предложенный метод ре¬
шения поставленной задачи для разрезания графа на два и три
подграфа может быть с успехом применен и для разрезания гра¬
фов на s > 3 подграфов.
7.3. Алгоритмы качественного обобщения по признакам
В процессе формирования обобщенного понятия спачала выде¬
ляется признак, одно из значений которого z0 соответствует всем
объектам данного множества объектов, называемого в дальнейшем
классом. Затем из всей совокупности объектов (включающей раз¬
личные классы объектов) отбираются те из них, которые обладают
общим для них значением z0. Их описания в пространстве призна¬
ков составляют выборку примеров К+. Другая часть объектов, не
принадлежащих к данному классу, составляет выборку контрпри¬
меров К~. Выборка К~ не является обязательным, а лишь жела¬
тельным компонентом процедур обобщения, обеспечивающим их
более эффективную работу. На основе сравнительного анализа вы¬
борок К+ и К~ строится логическая функция принадлежности
к обобщенному понятию, которая может служить решающим пра¬
вилом, позволяющим проводить классификацию объектов, представ¬
ленными своими признаками.
254
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
Таким образом, обобщенное понятие, как уже упоминалось в 7.1,
представляется в виде логической функции П0, в которой пере¬
менные, отражающие значения признаков, соединены операциями
конъюнкции, дизъюнкции и отрицания.
Формируемая логическая функция П0 является гипотезой, по¬
лученной в результате анализа обучающих выборок К+ и Кг. Она
не обязательно будет выполняться для всех объектов класса со
значением признака z0, выходящих за пределы К+. Однако для
рассматриваемых ниже алгоритмов обобщения потребуем выполне¬
ния следующего условия: для всех примеров из выборки К+ зна¬
чение Я0 будет равно 1, а для всех контрпримеров из выборки К~
значение П0 будет равно 0 при условии, что каждому пз значений
признаков поставлена в соответствие переменная, принимающая
значение 1 или 0 в зависимости от того, имеет или не имеет объект
данное значение признака.
Первый алгоритм обобщения, названный ДРЕВ, основан на раз¬
биении выборок частных примеров на подвыборки в соответствии
с наличием в них разделяющих значений признаков (см. ниже) и
позволяет получать логическую функцию принадлежности Па ценой
небольшого числа просмотров этих выборок.
Пусть обобщенному понятию (т. е. классу объектов со значе¬
нием признака z0) соответствуют выборки описаний А+ = {К
КТ, Kt\, К~ = (Ж7, КТ, ..., KJ], где Kj= hl5 £ h2j£... с£-hrj,
где hiS — булевы переменные (см. 7.1) и г—число признаков.
На первом этапе работы алгоритм пытается построить конъюнк¬
тивное обобщенное понятие К\:
П\ = hr j £ hr j £ ... £ hr .• .
i/l ' 2j2 ^ 'mJm
Для этого берется теоретико-множественное пересечение
к+ = Kt n Kt п • ■ • n Kt,
где каждое Kf понимается как упорядоченное по признакам мно¬
жество значений.
Если К+ фКу, / = 1, 2, . .., t, то П\ = К+. В случае, если
К+ = 0 или найдется KJ такое, что К+ сг KJ, то выборки К+ и
К~ как бы меняются местами и делается попытка построить
К~ = КТ П КТ П • • • П КТ с учетом тех же условий.
В случае успеха Пд выдается на терминал пользователя.
Независимо от того, удалось ли получить непустое конъюнктив-
nh
ное понятие Л0 или нет, алгоритм переходит к построению дизъ-
ЮНКТПВНОЙ формы обобщенного ПОНЯТИЯ пЕсли ^/7^ =7^= 0> то
перед этим этапом из выборок К+ и К~ исключаются признаки,
значения которых вошли в Пд.
7.3. АЛГОРИТМЫ КАЧЕСТВЕННОГО ОБОБЩЕНИЯ
255
Построение П® начинается с поиска среди элементов К+ такого
значения z, которое является наиболее существенным для форми¬
рования понятия с точки зрения одного из критериев существен¬
ности Ф4, Ф2. ..Ф„. Найденное значение z будем называть раз¬
деляющим, так как на его основе происходит разбиение выборок
К+ и ' на две пары подвыборок Kt, К\ и К-ъ KZ где г. с-. А',
и z ф КЕХ.
Критерии Ф4, Ф2, ..Ф9 составляют набор эвристических пра¬
вил, встраиваемых в алгоритм, которые могут взаимозаменяться
в диалоге с пользователем и тем самым оказывать влияние на вид
получаемой ППоскольку множества значений признаков не на¬
делены никакой структурой, позволяющей извлекать дополнитель¬
ную информацию, основным параметром, влияющим на существен¬
ность значений признаков в формулах, соответствующих Ф4, слу¬
жит частота появления их в К+ и К~.
Приведем в качестве примера одну из таких формул:
гДе Хщ — частота появления /-го значения i-го признака в при¬
мерах и контрпримерах, а ол — число различных значений i-ro при¬
знака в К+ и К~. Здесь разделяющее значение z = ziS, для которого
эта формула удовлетворяется.
После разбиения выборок на подвыборкн на основе найденного
значения г затем к каждой паре подвыборок рекурсивно применя¬
ется уже описанная процедура. По шагам алгоритм выглядит сле¬
дующим образом.
Алгоритм ДРЕВ.
1. Формирование П„ на К+ п К~. В случае успеха переход
к п. 2, в противном случае — к н. 3.
2. Печать По и исключение признаков, вошедших в П
3. Нахождение разделяющего значения г.
4. Разбиение выборок на две пары подвыборок.
5. Формирование П\ на подвыборках. В случае неудачи воз¬
врат к п. 3, в противном случае — к п. 6.
6. Формирование п печать Л о - Стоп.
Работу алгоритма ДРЕВ можно проиллюстрировать с помощью
дерева, пример которого показан на рис. 7.1.
Конечным вершинам дерева соответствуют подвыборки, для ко¬
торых либо удалось построить П%, либо одной из подвыборок
соответствует пустое множество 0. Причем, если пустой оказалась
KZ, то делается попытка построить П„ на подвыборке KJ и
в случае успеха закончить этим данную ветвь. В случае неудачи
ветвь заканчивается пустым понятием NIL. Если же К* = 0, то
'256
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
вся ветвь, начиная с К* вместе с разделяющим значением, исшпо-
TjD
чается из понятия Л0 •
По окончании ветвления алгоритм приступает к построению
ППонятие, соответствухгцее самой левой конечной вершине, со¬
единяется знаком & с разделяющим значением z.-, соответствующим
ребру, ведущему в эту вершину. Построенное понятие служит пер¬
вым конъюнктивным членом вышеуказанной вершины, который
соединяется знаком дизъюнкции с понятпем, образованным на дру¬
гой ветви, исходящей из этой вершины.
G3ZD
(SET) (к-2 н-г) 2' к~г^) Сф к-2')
п&в&с
d&e
(EKE) (ШИ)
NIL Km,&s>
Рис. 7.1
Логические функции конъюнкции, дизъюнкции и отрицания
образуют полную систему функций алгебры логики, поэтому алго¬
ритму доступно формирование понятий, которым соответствуют
сколь угодно сложные логические функции принадлежности.
Так, дереву на рис. 7.1 соответствует понятие
П„ = \ (h2 £ a eg Ь £ с V 1 К <& (h V (т & s))) V
V \ & К £ d £ е = \ eg h2 £ а £ b £ с \J h1£ ~\h2 £hx\j
V К £ “1 h2 eg “j hx eg (m eg s) V d? A3 eg d £ e,
где A,, A2, h3 nhi — булевы переменные для zu z2, z3, zs.
Приведем пример из области медицинской диагностики, иллюст¬
рирующий работу алгоритма ДРЕВ.
Пример 7.1. В табл. 7.4 представлена выборка К+ описании
состояний нескольких больных, страдающих заболеванием z0, а так¬
же состояний людей, не страдающих этим заболеванием (К~).
Функция принадлежности, построенная алгоритмом ДРЕВ в ре¬
зультате обработки выборок таблицы 7.4, имеет вид
БОЛЕЗНЬ z„ = ПОЖИЛОЙ ВОЗРАСТ о? (ГОЛОВНЫЕ БО¬
ЛИ £ ОЗНОБ V НАЧАЛЬНАЯ СТАДИЯ £ ~| АППЕТИТ).
7.3. АЛГОРИТМЫ КАЧЕСТВЕННОГО ОБОБЩЕНИЯ
257
Алгоритм ДРЕВ по своей структуре и принципам работы яв¬
ляется модификацией алгоритма обобщения Э. Ханта CLS. Рас¬
смотрим нх основные отличительные особенности:
1. В случае получения конъюнктивного понятия По работа
алгоритма ДРЕВ не заканчивается как в CLS, а происходит уда¬
ление из К+ и К~ тех признаков, значения которых вошли в П„,
после чего программа приступает к построению П®. При этом пз
выборок удаляются признаки, которые для всех примеров и контр¬
примеров имеют одипаковые значения и, следовательно, не несут
существенной информации. В результате работы алгоритма ДРЕВ
формируется функция П0 = По <& П®, которая способствует убыст¬
рению процесса поиска новых закономерностей при автоматизиро¬
ванной обработке результатов научных экспериментов.
Таблица 7.4
Значения
признаков
Признаки
Возраст
Пол
Стадия
болезни
Больные
места
Темпера¬
тура
Прочие ощуще¬
ния
1
пожилой
жен.
средн.
голова
36.6
озноб
2
пожилон
муж.
средн.
голова
36.4
озноб
3
пожилой
муж.
поздн.
голова
36.7
озноб
4
среднии
жен.
качал.
голова
37.8
никаких
К* 5
пожилой
жен.
начал.
нет
38.0
нет аппетита
6
пожилой
муж.
начал.
спина
36.3
нет аппетита
7
пожилоп
муж.
начал.
нет
36.6
нет аппетита
8
пожилой
муж.
позди.
голова
38.2
озноб
1
молодой
муж.
—
нет
36.6
никаких
2
средний
жен.
средн.
живот
37.7
тошнота
1
СО
пожилой
жен.
начал.
руки
36.7
никаких
4
пожилой
муж.
поздн.
иоги
36.4
нет аппетита
2. Осуществляемая в диалоговом режиме общения с пользова¬
телем возможность выбора критерия существенности Ф,-, г = 1,
2, ..., q позволяет избежать таких недостатков CLS как несиммет¬
ричность п нестабильность. Несимметричность алгоритмов обобще¬
ний CLS заключается в том, что выбор разделяющих значений
признаков осуществляется только на основе анализа примеров К+.
Это может привестп к резкому ухудшению работы алгоритма, когда
набор контрпримеров К~ должен оказывать большое влияние на
результирующее понятие.
Нестабильность алгоритма может проявляться в том, что при
Уменьшении объемов выборок К+ п К~ критерий выбора z стано-
П В. н. Вагин
258
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
вится статистически неустойчивым. Это может, например, про¬
изойти при следующем критерии выбора разделяющего значения
признака г:
Ф = max
г
где а:-—число вхождении z в К+, а у- — число вхождений г в К~.
3. Обобщенные понятия могут формироваться в вершинах дере¬
ва подвыборок (см., например, рис. 7.1) при отсутствии контрпри¬
меров, что способствует повышению достоверности понятий за счет
уточнения П0.
К основным достоинствам алгоритма ДРЕВ можно отнести его
компактность и быстроту сходимости, а также простой вид форми¬
руемых им понятий.
В целях сравнительного изучения различных подходов к фор¬
мированию обобщенных понятий, а также для обеспечения возмож¬
ности варьировать эти подходы в зависимости от требований, на¬
лагаемых конкретной системой принятия решений, рассмотрим
другой алгоритм качественного обобщения по признакам, получив¬
ший название АФОП (алгоритм формирования обобщенных поня¬
тий). Этот алгоритм построен по иным принципам, нежели рас¬
смотренный выше алгоритм ДРЕВ и, в общем случае, на тех же
выборках частных примеров формирует другие функции принад¬
лежности к обобщенному классу объектов со значением z0.
Главная идея, заложенная в основу алгоритма АФОП, заклю¬
чается в разделении сразу всего множества признаков на суще¬
ственные и несущественные и последующем формировании П0 на
выделенных значениях существенных признаков. Такой подход
становится особенно эффективным, когда множество признаков
имеет большую размерность и большинство признаков не являются
существенными для формируемого обобщенного понятия.
Введем несколько определений. Остаточными конъюнктивными
членами относительно признака Z; (l^i^Sr) будем называть
конъюнкции вида
hij (jj hoj <£•••(& • • • d? k-rj
или
kim ~ him ^2m l,m ^rra,
где 7 = 1, 2, ..., I для примеров и m = 1, 2, ..., t для контрприме¬
ров. Иначе говоря, остаточные конъюнктивные члены получаются
в результате удаления из выборок К+ и К~~ всех значений при¬
знака Z,.
Признак будем называть существенным, если найдется хотя
бы одно описание Kf е К+, l^j^l и хотя бы одно описание
Km е К~, такие, что kfj =
7.3. АЛГОРИТМЫ КАЧЕСТВЕННОГО ОБОБЩЕНИЯ
259
Другими словами, существенными будем считать все признаки,
для которых можно найти пример п контрпример, описания кото¬
рых отличаются только значением этого признака.
Нетрудно показать, что каждый существенный признак имеет
хотя бы одно значение, которое обязательно должно войти в функ¬
цию принадлежности П0, формируемую алгоритмом обобщения
АФОП.
Таким образом, при обобщении объектов, представленных вы¬
борками частных описаний, в первую очередь необходимо выделить
существенные признаки, так как их значения обязательно должны
войти в обобщенное понятие. Далее необходимо выделить те значе¬
ния существенных признаков, которые могут войти в П0. Будем
называть их существенными значениями.
Существенными значениями признака Z,- будем считать такие
значения е Kf и zim е Km (1 ^ ^ I, l^m^t), для которых
Т~± Тг
пгу — г^гт-
Каждый существенный признак Zu вообще говоря, может иметь
несколько существенных значений. Поэтому далеко не все суще¬
ственные значения будут входпть в П0. При этом, если существен¬
ное значение е Кт, то оно может входить в Пй только со своим
знаком отрицания.
Работа алгоритма АФОП состоит из двух основных этапов. На
первом этапе происходит сравнение остаточных конъюнктивных
ленов примеров и контрпримеров относительно каждого из при¬
знаков Z,. Если при этом не находится ни одной совпадающей па¬
ры, то данный признак Zf считается несущественным и удаляется
из выборок К+ и К~ со всеми своими значениями.
В случае, когда признак оказывается существенным, происходит
запоминание его существенных значений в отдельном списке 3.
При этом каждому значению приписывается числовой вес, опреде¬
ляемый по одному пз критериев существенности Ф4, Ф2, ..., Ф„
аналогичных тем, что используются в алгоритме ДРЕВ. Признаки,
оказавшиеся существенными, при дальнейшем рассмотрении из вы¬
борок А+ и К~ не удаляются. Для иллюстрации рассмотрим сле¬
дующий простой пример.
Пример 7.2.
К+: 1
2
3
4
К~: 1
2
3
4
А
В
с
D
А
V
R
D
Е
Р
Е
Ъ
Е
Р
W
Y
R
В
Y
L
N
С
Y
J
X
V
Е
М
М
в
Е
М
Р
с
Е
W
А
Т
С
D
F
в
D
V
R
в
Е
V
N
S
Е
D
L
R
Е
W
17*
260
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
В первой строке стоят номера (имена) признаков, во всех ос¬
тальных — значения признаков для частных примеров.
Сравнив остаточные конъюнктивные члены признака 1 в К+ и
К~ приходим к выводу, что признак 1 не является существенным.
Удаляем его из выборок. После этого, проделав аналогичную опе¬
рацию для признака 2, убеждаемся в его существенности и полу¬
чаем набор существенных значений: В2, V2, С2, ~j Т2, ~] В2, ~~|Й2.
Оставляя признак 2 в выборках и продолжая проверки на суще¬
ственность, получаем существенные значения признака 3: ДЗ,
'~(Е3. Признак 4 — не существен. Отобранные существенные
значения заносятся в список 3.
Очевидно, что набор получаемых существенных признаков и
значений может зависеть от последовательности пх проверок. По¬
этому для получения всех существенных значений необходимо рас¬
смотреть всевозможные последовательности проверок. Легко видеть,
что общее число проверок N = r-r\, где при каждой проверке про¬
исходит I просмотров выборки К~ (как и ранее, г — число призна¬
ков, I — число примеров в К+). Исключая из рассмотрения дубли¬
рующие друг другу проверки, будем иметь
У = гт!— S [И — г (г — 1) (г — 2) ...(r-k + 1)] =
fe = l
г—2
= г- г! — (г — 2) *г! + 2 г (г — 1) (г — 2) ... (г — ft + 1) =
fc=i
2Н + 2 тт4ж =r! 2
(г — /с)! ’ ^ (г — к)\
h=l ' к=1 ' '
Второй сомножитель есть частная сумма известного ряда, схо¬
дящегося при г -*■ <*> к числу е. Поэтому имеет место оценка
N < е - г!.
На практике с ростом количества существенных признаков число
проверок еще более сокращается, достигая величины г! в случае
существенности всех признаков Z,. Например, если выбранный при¬
знак Zi оказался существенным на некотором этапе проверок, то
он, очевидно, останется существенным на всех других этапах, где
набор просматриваемых признаков включается в набор признаков,
при котором Zt существен и, следовательно, эти проверки делать
не нужно. Далее, если Zi — не существен при определенном наборе
просматриваемых признаков, то он будет не существен на
любом наборе, включающим данный. Подобные эвристики, сокра¬
щающие число проверок на существенность, встроены в алгоритм
АФОН.
Алгоритм построен таким образом, что на первом этапе всегда
будет отобран хотя бы один существенный признак. В крайнем
7.3. АЛГОРИТМЫ КАЧЕСТВЕННОГО ОБОБЩЕНИЯ
261
случае им автоматически становится последний из г перебираемых
признаков, если предыдущие г — 1 признаков оказались несуще¬
ственными.
На втором этапе после проведения очередной последовательно¬
сти проверок делается попытка построить Я0 на полученных суще¬
ственных значениях из списка 3. Для этого в 3 отбираются те
значения, которые отсутствуют в К~. Кроме того, строятся всевоз¬
можные конъюнкции двух, трех и т. д. значений из 3, среди кото¬
рых также отбираются присутствующие в К+ и одновременно
отсутствующие в К~. Для конъюнкций подсчитываются коэффици¬
енты существенности, аналогично тому, как это делалось для от¬
дельных значений. Отобранные конъюнкции будем называть раз¬
деляющими.
Дизъюнктивная нормальная форма (ДНФ) Я0 строится следу¬
ющим образом. Выбирается разделяющая конъюнкция с макси¬
мальным коэффициентом существенности и отмечаются те описания
выборки К+, на которых она принимает значение 1. Затем, если
в К+ остались неотмеченные строки, берется следующая по вели¬
чине коэффициента существенности разделяющая конъюнкция и
соединяется знаком дизъюнкции с предыдущей. При этом в вы¬
борке К+ дополнительно отмечаются строки, удовлетворяющие
этому новому члену ДНФ.
Если в результате присоединения к ДНФ очередной разделяю¬
щей конъюнкции все строки К+ оказываются отмеченными, то
алгоритм заканчивает работу и выдает на выход построенную
к этому моменту Па. Если список разделяющих конъюнкций ис¬
черпан, а в К+ остались неотмеченные строки, то алгоритм пере¬
ходит к следующей последовательности проверок и построению
нового списка. Построенная Я0, которая не удовлетворяет всем
примерам из К+, при этом запоминается вместе с теми строками,
которые остались не отмеченными.
Если после испытания всех последовательностей проверок на
существенность не удается построить Я0, удовлетворяющую всем
положительным примерам, то из запомненных на каждом цикле
проверок функций Я0 выбирается та, которая связана с минималь¬
ным числом неотмеченных строк в К+. Конъюнкции значений
каждой неотмеченной строки добавляются в качестве дополнитель¬
ных членов в ДНФ этой Я0, которая становится результатом ра¬
боты алгоритма.
Для рассматриваемого нами примера 7.2 на первом цикле про¬
верок удается построить Я0 = 0,43 (В2 & ~\ Е3), которая не пол¬
ностью покрывает выборку К+. (Число 0,43 служит коэффициен¬
том существенности, за который здесь для простоты будем прини¬
мать частоту присутствия конъюнкции в К+. Подробно вопросы
расстановки этих коэффициентов рассматриваются в гл. 9).
На следующем цикле получается точно такая же ситуация. На¬
конец, на третьем цикле проверок, когда в качестве существенных
262
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
отбираются признаки 2-й и 3-й, а список 3 имеет вид
3 = (0,43В2; 0Д4Р2; 0,14V2; 0Д4С2; 0,14S2; 0Д4СЗ; 0,57ЕЗ;
О,МУЗ; 0.14D3; 0,14 И Т2; 0,43 ~| В2; 0Д4 Ч С2; 0,43 ~|
““] ЕЗ; 0,14 ~] W3; 0,14 П R3; 0,14 П^З)
получается
П0 = 0,43 (В2 eg П ЕЗ) V 0,57 (П В2 <& ЕЗ),
которой полностью удовлетворяют все примеры выборки К+ и не
удовлетворяет ни один контрпример выборки К~.
По шагам алгоритм АФОП выглядит следующим образом:
1. i := 1.
2. Если необходимо провести очередную проверку выборок К+
и К~ с целью выяснения существенности признака, то переход к
следующему пункту. В противном случае — к п. 8.
3. Получение и сравнение конъюнктивных членов примеров и
контрпримеров относительно каждого из признаков (К i < г).
4. Если признак Zt оказался существенным, то переход к сле¬
дующему пункту. В противном случае — к п. 6.
5. Запоминание существенных значений в списке 3. Переход
к п. 7.
6. Исключение несущественного признака Zt из выборок К+ и К~.
7. Исключение проверок, связанных с введением эвристик, со¬
кращающих число проверок на существенность признака.
8. i := i + 1.
9. Если i > г, где г — число признаков, то переход к следующе¬
му пункту. В противном случае — к п. 2.
10. Отбор разделяющих конъюнкций в списке 3.
11. Подсчет коэффициентов существенности значений признаков.
12. Построение ДНФ для П0.
13. Если П0 удовлетворяет всем примерам из К+, то переход к
следующему пункту. В противном случае к п. 15.
14. Вывод на печать П0 и стоп.
15. Запоминание По и неотмеченных строк в К+.
16. Если имеются еще последовательности проверок выборок К+
и К~ на существенность, то переход к п. 1. В противном случае —
к п. 17.
17. Выбор По с минимальным числом неотмеченных строк в К+.
18. Формирование Па и переход к п. 14.
Алгоритм АФОП является развитием процедур обобщения, рас¬
смотренных И. С. Лосевым и В. В. Максимовым. Применяемое там
правило обобщения является частным случаем этапа отбора сущест¬
венных признаков в АФОП. Отличие заключается в том, что в про¬
цессе обобщения у И. С. Лосева и В. В. Максимова существенную
роль играет дополнительная информация в форме весовых коэффи¬
циентов, навешиваемых на логические связки, которые не исполь¬
зуются в АФОП.
7.4. АЛГОРИТМЫ КОЛИЧЕСТВЕННОГО ОБОБЩЕНИЯ
263
Алгоритм АФОП особенно эффективно работает в тех случаях,
когда примеры и контрпримеры мало отличаются своими описания¬
ми в пространстве признаков и большое число признаков являются
несущественными.
К его недостаткам следует отнести то, что он обязательно тре¬
бует для своей работы наличия выборок контрпримеров К~ и в
большой степени его работа зависит от их подбора. Первая часть
алгоритма, где отбираются существенные признаки, может быть ис¬
пользована как вспомогательная программа для сокращения раз¬
мерности пространства признаков с последующим применением
других алгоритмов обобщения, например алгоритма ДРЕВ.
7.4. Алгоритмы количественного обобщения по признакам
Алгоритмы количественного обобщения используются для обра¬
ботки числовых или шкалированных результатов научных экспери¬
ментов как в виде самостоятельных обобщающих процедур, так и
для предварительной обработки выборок на входах программ ка¬
чественного обобщения ДРЕВ и АФОП, работающих с признаками
в описаниях частных примеров, никак не связанных между собой.
Очевидно, что большие массивы цифровых данных представляют
собой мало выразительное средство, не позволяющее человеку
быстро делать выводы относительно скрывающихся за цифрами за¬
кономерностями без предварительной их обработки. Эта обработка
часто сводится к различным геометрическим интерпретациям: по¬
строению графиков, диаграмм, сводных таблиц и т. п., которые
отнимают у исследователя много времени.
Поэтому и разрабатываются алгоритмы количественного обобще¬
ния, которые в диалоговом режиме общения с пользователем позво¬
ляют существенно повысить эффективность обработки эксперимен¬
тальных данных и сократить затраты непроизводительного труда
исследователя.
Одним из простейших способов количественного обобщения мно¬
жеств значений признаков является процедура установления порога
между значениями в выборках К+ п К~. Суть ее сводится к сле¬
дующему.
Если для числовых или шкалированных значений признака Zt
существует число (значение) я4 такое, что для всех е К+
и для всех zf gF выполняется 4 и zj (или zf ^я*
и то результатом обобщения может служить замена всех
значений признака в выборке К+ высказыванием
а в выборке К~ — Z4 < я. (Zf 13= я,). Истинность полученных вы¬
сказываний, установленных в результате индуктивного обобщения
частных примеров выборок, может служить индуктивной гипотезой,
подлежащей проверке или уточнению в ходе дальнейших исследо-
264
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
Кроме установления одного порога между значениями в выбор¬
ках К+ и К~ можно построить процедуру, которая порождает про¬
извольное число порогов, разбивающих набор числовых данных на
несколько групп («куч»), каждой из которых может быть присвое¬
но качественное значение (типа большой, средний, малый и т. п.).
Эвристическая процедура обработки числовых значений, названная
«развал на кучи», была предложена М. М. Бонгардом и реализована
в системах классификации геометрических изображений.
Следует отметить, что процедура «развал на кучи» может ра¬
ботать, имея на входе только числовые данные, поскольку она
основана на измерениях длин интервалов между отдельными чис¬
лами и, следовательно, требует наличия метрики на множествах
! ! U rchn ; j i DL-HiU-. .liiliLJL!—! ~
Рис. 7.2
значений признаков. На выходе программы мы всегда будем иметь
упорядоченный набор значений, который при желании может быть
рассмотрен как числовой, если задать расстояния между кучами,
или как шкалированный и даже просто как качественный, если пре¬
небречь информацией о порядке следования куч.
Основная идея программы «развал на кучи» состоит в следую¬
щем. Известно, что измерения различных величин часто сопровож¬
даются ошибками, дающими некоторое отклонение от их истинных
зпачешш. Кроме того, выбранная точность измерения в ряде слу¬
чаев может оказаться излишней для описания объекта. Поэтому
иногда, полученные в результате измерений числа, хотя и будут
иметь различные значения, все же могут образовывать некоторые
скопления, «кучи».
В таких случаях, проводя обобщение, имеет смысл заменить
каждое числовое значение средним арифметическим всех чисел,
образующих соответствующую кучу, или качественным значением,
представляющим имя данной кучи, например, А, В и К, как пока¬
зано на рис. 7.2.
Полученное обобщенное описание можно использовать на входах
программ качественного обобщения или подвергать дальнейшим ко¬
личественным преобразованиям, а также использовать как самостоя¬
тельные результаты.
Еще одним направлением в исследовании механизмов количест¬
венного обобщения является выделение функциональной зависимо¬
сти между значениями характеристик признаков, заданных в виде
набора числовых значений.
7.4. АЛГОРИТМЫ КОЛИЧЕСТВЕННОГО ОБОБЩЕНИЯ
265
Большое количество числовых экспериментальных данных, сня¬
тых с различных приборов, требует от экспериментатора их дли¬
тельной и кропотливой обработки. Алгоритм выявления функцио¬
нальных зависимостей между признаками распознает типы зависи¬
мостей, полученных в результате эксперимента и заданных табли¬
цами типа табл. 7.5.
Таблица 7.5
X
*1
х2
х3
хг
■rn
У
г/i
Уз
Уз
yi
Уп
Задача заключается в построении гипотезы о наличии простой
функциональной зависимости y = f(x) из некоторого класса фор¬
мул W, который обычно подсказывается самой природой исследуе¬
мого процесса, а также направлением исследований.
Проведя поиск, программа выдвигает предположение о виде эм¬
пирической зависимости, снабженное сведениями о степени его
правдоподобия. Проверка и дальнейшее уточнение предложенной
гипотезы предоставляется исследователю, который, исходя из своего
опыта и творческой иптуиции, может отвергнуть большинство ги¬
потез, заинтересовавшись лишь наиболее правдоподобными и ин¬
формативными.
Построение эмпирической зависимости слагается из двух этапов:
1. Выяснение общего вида зависимости путем перебора всех
имеющихся классов формул W и выбора наиболее подходящего;
2. Определение параметров зависимости.
Перебор классов формул носит направленный характер, что по¬
зволяет в случае большого их числа значительно сократить время
решения задачи. Для этого используется древовидная иерархиче¬
ская структура поиска.
Анализируя множества значений х и у в табл. 7.5, относительно
наличия у них таких свойств как монотонность, периодичность
и т. п. можно приблизительно определить, в какой из классов вхо¬
дит соответствующая им зависимость.
Найдя нужный класс, программа приступает к непосредствен¬
ному построению эмпирической формулы. В ходе поиска в данном
классе алгоритм предполагает, что между исходными данными с
различными степенями приближения существует любая функцио¬
нальная зависимость из класса. Для доказательства того, что неко¬
торая функциональная зависимость с достаточной точностью удов¬
летворяется данным набором значений переменных без предва¬
рительного нахождения параметров, применяется метод выравни¬
вания.
266
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
Входная последовательность чисел из таблицы 7.5 преобразуется
в соответствии с приведением к линейному виду каждой из формул
класса, а затем преобразованная последовательность значений х и
у проходит проверку на наличие линейной зависимости.
Пусть для переменных х и у соответствующие значения ад и
таковы, что точки Л/(ад, у{) не располагаются на прямой линии.
Тогда, вводя новые переменные Х = ф(а:, у), Y—ф(ж, у) можно
добиться того, чтобы преобразованные точки Ni(Xt, Yi), где Yi =
= ф(ад, г/j) и Xi = cp(a:i, уf) лежали на некоторой прямой линии
плоскости OXY (метод выравнивания).
После линеаризации всех формул класса происходит проверка
на линейную зависимость каждой из линеаризованных таблиц чисел
и выбор оптимальной.
Дадим аналитический критерий для прямолинейности ряда точек
Mi{Xi, yt).
Положим
Axt = xi+l — х,,
А Уг = yi+l - Pi,
и (; = 1’2,"-4
Если Ki = const, то точки Mi{x,, у{), очевидно, лежат точно на
одной прямой линии, если же
Кх « К, * К, * ... * Кп-и (7.16)'
то точки Mi(Xi, у^ приблизительно расположены на прямой линии.
В зависимости от точности выполнения соотношений (7.16) реша¬
ется вопрос: следует или не следует искать эмпирическую зависи¬
мость между величинами х и у в виде линейной функции.
Критерием для решения этого вопроса является сравнение не¬
четких коэффициентов точности приближения KOEF. Программа
вычисляет подобные коэффициенты для всех линеаризованных фор¬
мул класса и выбирает наименьший. Значение KOEF пропорцио¬
нально средней величине отклонения исследуемой совокупности то¬
чек от прямой
Если величина минимального коэффициента точности приближе¬
ния превышает допустимое значение, то программа переходит к вы¬
бору очередной пары списков числовых значений двух признаков,
а пользователю выдается ответ «Зависимости нет». В случае же
7.5. СИСТЕМЫ АВТОМАТИЗАЦИИ НАУЧНЫХ ИССЛЕДОВАНИЙ
267
успешного завершения поиска, когда значение KOEF не превышает
максимально допустимого, программа переходит к расчету парамет¬
ров выбранной формулы.
Угол наклона прямой к оси ОХ рассчитывается следующим об¬
разом:
SUMM о ттигл г V Ayi
у = 1Г—Г, где SUMM = 2^
i=l *
Затем программа переходит к вычислению точки пересечения пря¬
мой с осью OY
2 (Wi — v*4)
£ = .
П
Когда параметры рассчитаны, программа приступает к форми¬
рованию выбранной формулы для печати. Далее происходит выдача
найденной формулы с рассчитанными параметрами на терминал
пользователя.
7.5. Примеры использования алгоритмов обобщения
по признакам в системах автоматизации научных исследований
Разработанпые алгоритмы качественного и количественного обобщения с
использованием аппарата нечетких переменных (подробности смотри в гл. 9)
вместе с совокупностью сервисных программ положены в основу диалоговой
системы автоматизации научных исследований (ДСАНИ).
ДСАНИ обеспечивает пользователю быстрые и удобпые способы обраще¬
ния к алгоритмам обобщения, различпые преобразования подлежащих обра¬
ботке данных, а также возможности обучения системы в целях адаптации ее
к конкретным условиям.
Для работы пользователя в диалоговом режиме разработан набор спе¬
циальных функций, позволяющих ему активпо вмешиваться в процесс реше¬
ния задач путем внесения изменений в структуры данных и вызова тех или
иных алгоритмов обобщения. Такими функциями, например, являются функ¬
ции ВВОД ПОНЯТИЙ, ПОИСК, ОБОБЩИТЬ и ряд других функций, исключаю¬
щих или добавляющих признаки объектов, а также изменяющих наборы опи¬
саний объектов в выборках К+ и К~. ДСАНИ реализована па языке LISP и
была практически использовапа для автоматизированной обработки больших
массивов экспериментальных данных в таких областях как химия, металлур¬
гия и экономика, что позволило в несколько раз повысить скорость обработки
данных, сократить затраты непроизводительного труда исследователя и рас¬
ширить сферу научного поиска. Рассмотрим вкратце результаты применения
ДСАНИ к каждой из вышеупомянутых областей исследований.
1. Автоматизация исследований в химии.
Большое количество экспериментов по использованию системы ДСАНИ
было проведено для выявления новых, неизвестных ранее закономерностей в
химии. В частности, была предпринята попытка использовать методы логиче¬
ского анализа (построение логических функций принадлежности) в проблеме
выявления признаков, влияющих на взаимодействие органических реагентов
с ионами металлов. Эти реакции имеют большое практическое значение в ана¬
литической химии и изучение механизмов их протекания представляет боль¬
шой интерес как с прикладной, так и с теоретической точки зрения.
268
ГЛ. 7. обобщение понятий по признакам
Особенности взаимодействия каждого металла (Me) с одним п тем же
реагентом определяются структурой его электронной оболочки. Целью экспе¬
риментов было выяснить, какие параметры электронной оболочки Me явля¬
ются наиболее важными, определяющими его свойства по отношению к
реагенту.
В качестве параметров (признаков), характеризующих электронную обо¬
лочку Me, былп взяты следующие: число валентных электронов с указанием
их s-, р-, d- или /-типа, указание о том, какому инертпому газу соответствует
остов иона Me, потенциалы ионизации первых четырех валентных электронов
с указанием s-, р-, d~, /-типа, число неспаренных электронов и их тип, спект¬
ральные характеристики атома Me, электроотрицатсльность и т. д. Всего ис¬
пользовалось 33 признака.
В качестве органического реагента брался сульфохлорфенол и рассматри¬
валось его взаимодействие с металлами Zr, Hf, Nb, Mo, V, Al, In, Ga, Cu, Be,
Sc. Из литературных дапных известно, что вторая группа металлов: Ti, Fe,
Та, W не взаимодействует с данным реагентом в условиях, характерных для
протекания реакций с металлами первой группы.
На начальном этапе использования ДСАНИ первая группа металлов бра¬
лась в качестве положительных примеров К+, а вторая — в качестве контр¬
примеров К*. Работа с системой в режиме диалога начиналась с ввода опи¬
саний частных примеров с помощью команды ВПОН (ввод понятий). Затем
использовалась команда ОБОБЩИТЬ СФНС, где СФНС — имя попятия-класса.
В результате первой попытки качествеппого обобщения не было получено
конъюнктивного понятия, т. е. первая группа металлов не имела общих свойств
электронной оболочки, характеризующих взаимодействие этой группы с рас¬
сматриваемым реагентом. Это можно объяснить двумя причинами: либо таких
общих свойств вообще нет, либо они не были указаны в выборках К+ и К~.
Полученное дпзъюпктивное понятие указывает на 5 групп (конъюнкций зна¬
чений) признаков, которые определяются следующими главными значениями:
NP1 (0.73) — отсутствие в оболочке р-электронов;
E4D (0,71) — d-тип 4-го ионизируемого электропа;
ND (0.44) — отсутствие заполненной d-М оболочки;
PI1 070 (0,62) — потенциал ионизации 1-го электрона ~ 7 эв.
Числа в скобках означают здесь нечеткие коэффициенты существенности.
В дизъюнктивной форме понятия первая конъюпкция содержит все 4 указан¬
ных признака, остальные пе содержат; все четыре признака. Этим конъюнк¬
циям признаков могут быть сопоставлены металлы, электронные оболочки ко¬
торых характеризуются входящими в конъюнкции значениями. Таким обра¬
зом, имеем
Полученное сопоставление групп признаков группам металлов дает важ¬
ную информацию для рассмотрения взаимосвязи полученных результатов с
экспериментальными данными.
Дальнейшее исследование выборки в диалоговом режиме позволило про¬
верить устойчивость даппого решения по отношению к присутствию других
признаков. При исключении признаков ,не входящих в состав основных, обоб¬
щенное понятие пе меняло своего вида. При исключении признака со значе¬
нием ND группа меди Си слилась с группой Hf. При отсутствии в выборке
признаков АР п NP1 в качестве разделяющего значепия вместо NP1 про¬
грамма выделила E1S, при этом число групп не изменилось. Это свидетельст¬
вует о взаимосвязи и обоюдном влиянии этих признаков на протекание реак¬
ции с заданным реагентом.
1 группа: NP1 & E4D & ND & PI 1070 - Nb, V, Mo, Zr.
2 группа: NP1 & E4D & ND d? “1 PI 1070 - Hf.
3 группа: NP1 & E4D & “1 ND
4 группа: NP1 & ND d? 1 E4D
5 группа: ~1 NP1
-Cu.
— Be, Sc.
— Al, In, Ga.
7.5. СИСТЕМЫ АВТОМАТИЗАЦИИ НАУЧНЫХ ИССЛЕДОВАНИЙ
269
Диалоговый режим взаимодействия с системой позволил также оператив¬
но менять состав выборок К+ и Кг, исключая и добавляя различные металлы.
При перемене местами К+ и К- с помощью функции ОБРАТНО был выявлен
основной признак, обусловливающий отсутствие взаимодействий металлов Ti,
W, Та, Fe с данным реагентом. Им оказался радиус электронной оболочки,
имеющий значение R04, выраженное в условных единицах.
Полученные результаты хорошо согласуются с основньши свойствами
рассмотренных элементов. Так, например, Al, In, Ga образовали одну группу
по признаку наличия р-электронов в их оболочке. Интереспо выделение Си
(меди) в отдельную группу из-за наличия заполненной а = 10 оболочки. Эле¬
менты 1-й и 2-й групп характеризуются незаполненными d-оболочками. Эти
данные позволяют провести аналогию с квантово-химическим расчетом комп¬
лексов Me, когда первоначальный вид волновой функции Me строится с уче¬
том s-, р-, d-типа его валентных электронов.
Приведенный пример с группой металлов отражает лишь малую часть
серии экспериментов, проводимых по использованию системы ДСАНИ. По¬
лученные данные позволяют сделать ряд важных выводов, которые могут
определить дальнейшие перспективы развития исследований по указанной ме¬
тодике. Во-первых, представляет интерес дальнейшее сопоставление получен¬
ных логических зависимостей с различными экспериментальными данными,
которые еще предстоит получить. Во-вторых, очевидна необходимость добав¬
ления в выборки описаний других признаков, например, различных энергети¬
ческих параметров с последующей проверкой их влияния на формируемую
логическую функцию. В-третьих, поскольку большинство используемых до сих
пор признаков имеют качественные значения, представляет интерес введения
в выборки других важных параметров, имеющих числовые значения, с пред¬
варительной обработкой их алгоритмами количественного обобщения.
2. Автоматизированная обработка характеристик технологического процес¬
са в металлургии.
В ходе исследований были изучены возможности применения системы
ДСАНИ для выявления основных закономерностей, влияющих на процесс об¬
работки стальных заготовок на прокатном стане 2000 НМЛЗ (Ново-Липецкого
металлургического завода). Процесс выявления таких закономерностей был
затруднен из-за большого количества экспериментальных данных, имеющих,
как правило, числовые значения. В результате исследователю приходилось
проводить долгую, кропотливую работу по сбору, упорядочиванию, округле¬
нию, классификации и преобразованию данных, составлять таблицы, строить
графики и гистограммы, проводить многочисленные расчеты. Применение си¬
стемы ДСАНИ позволило значительно снизить затраты умственного труда ис¬
следователя, сократить время обработки экспериментальных данпых, помочь
в выявлении новых физических закономерностей процесса обработки металла.
Здесь мы рассмотрим несколько примеров, иллюстрирующих работу си¬
стемы ДСАНИ при обработке экспериментальных данных, представленных
списками значений 20 признаков, на основании которых рассматривается изу¬
чаемый технологический процесс.
В качестве имени класса, разбивающего множество описаний частных при¬
меров процесса стальной прокатки на подклассы, бралась точность темпера-
туры раската до 5 °С, обозначенная здесь Т = 1070. В число других признаков
вошли: марка стали (МАР), типовые размеры заготовок (ДЛ, ШИР, ГА, Р),
степени обжатия на стане (П1; 01; 02; 03; 04; ГЛ), температурные и времен¬
ные характеристики.
Диалог исследователя с системой начинается с ввода исходных данных
с помощью функции ВПОН. Исходные данные содержат: имя класса Т = 1070,
список имеп признаков (МАР ДЛ ВРЗ), выборки описаний частных
примеров К+ и контрпримеров К~ в виде списков значений вышеуказанных
признаков. В этом примере большинство признаков имеют числовые значе¬
ния, вычисление которых всегда сопровождается определенными погрешностя¬
ми, а выбранная точность часто превышает необходимую для выявления свя¬
270
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
зывающих признаки закономерностей. Поэтому, прежде чем исследовать вы¬
борки качественными методами, целесообразно подвергнуть их обработке ал¬
горитмами количественного обобщения. Например, в результате применения
алгоритма «раздел на кучи» значения признаков как бы округляются, при¬
нимая среднее значение той «кучи», в которую они входят. При этом чпело
различных числовых значений резко уменьшается, сокращая пространство
поиска решения.
На следующем шаге введенная выборка обрабатывается алгоритмом ка¬
чественного обобщения ДРЕВ. Для этого исследователь набирает на терми¬
нале команду (ОБОБЩИТЬ Т = 1070). После чего система выдает ответ в
виде функции принадлежности Л0, представленной в трех основных формах.
Кроме того, распечатывается имя класса, список признаков и выборки при¬
меров и контрпримеров. Вид функции П0 говорит о том, что в качестве глав¬
ного разделяющего значения была выбрана марка стали ЗСП с коэффициен¬
том существенности 0,79 (ЧАСТО). Одпако описание класса Т = 1070, исходя
только из марки стали, не дает исследователю исчерпывающей информации
о других значениях признаков и их влияния на П0. Кроме того, известно, что
марка стали не является основным признаком, определяющим класс, поэтому
выделение значения признака МАР следует отнести к случайностям выборки.
Учитывая это, на следующем этапе работы исследователь применяет коман¬
ду (РИКО uj Т = 1070 , , ЗСП), позволяющую провести обобщение на выборке,
из которой исключен признак МАР со всеми значениями. Вид сформирован¬
ной системой функции свидетельствует о том, что разделяющим значением
на этот раз выбрана степень сжатия 39, относящаяся к признаку ГЛ. Она
сопровождается конъюнкцией значений признаков 01, 02, 03, 04, также ха¬
рактеризующих различные степени сжатия заготовок. Эти значения образуют
главный конъюнктивный член обобщенного понятия. Другие члены, входящие
в По, дают исследователю вторую более слабую гипотезу о существенности
признака ГЛ, а также признаков В21 и ВРЗ, характеризующих временные ха¬
рактеристики.
С целью подтверждения гипотезы о существенности признаков, характе¬
ризующих степень сжатия, можно провести обобщение, исключив из выборок
признак ГЛ, а также признаки МАР и П1. Для этого воспользуемся комапдой
(ИНО Г = 1070 (1 6 И)), которая исключает признаки в списке пмен
с порядковыми номерами 1, 6, 11. В результате, несмотря на отсутст¬
вие призпака ГЛ, в главный конъюнктивный член Я0 вошли значения ос¬
тавшихся в выборке признаков сжатия, причем разделяющими служат при¬
знаки 03 и 04.
Изменяя выборки частных примеров и продолжая взаимодействие с си¬
стемой с помощью команд диалогового процессора, можно получить подтверж¬
дение гипотезы о существепности временных признаков: ВРЗ, В21. Естествен¬
но, что при этом пе все попытки обобщения дают исследователю правильную,
полезную информацию. Тем не менее, построенная в данных примерах гипо¬
теза о существенности для описания класса Т = 1070 степеней сжатия заго¬
товки, для которых главным является признак ГЛ, а далее идут 03 и 04,
подтвердилась в ходе дальпейших исследований, где была установлена функ¬
циональная зависимость, связывающая эти параметры. Кроме того, в ходе
дальнейших экспериментов на этой и других выборках подтвердилась также
существенность отобранных системой признаков ВРЗ и В21 и была установ¬
лена их взаимная зависимость с помощью алгоритмов количествеппого
обобщения.
3. Исследование экономических ситуаций.
Рассмотрим процесс построения логических описаний заданных классов
экономических ситуаций, представленных табл. 7.6. Значения признаков, ис¬
пользуемых для описания этих ситуаций, представляют собой типичные ка¬
чественные шкалы порядков, представленные в табл. 7.7. Действительно, зна¬
чения признаков, например, Д1, Д2, ДЗ, хотя и являются качественными,
но сохраняют упорядоченность по отношению к соответствующему колпчест-
7.5. СИСТЕМЫ АВТОМАТИЗАЦИИ НАУЧНЫХ ИССЛЕДОВАНИЙ
271
венному критерию, например, темпу прироста, выраженному в процентах или
других единицах.
Переход к описаниям в табл. 7.7 может быть также осуществлен автома¬
тически с помощью алгоритма «развал на кучи». Правда, для этого понадобят¬
ся выборки, содержащие значительно большее число примеров, представлен¬
ных числовыми значениями тех же признаков, что и в табл. 7.6. С другой
Таблица 7.6
Наборы показателей, характеризующие экономические ситуации
№
Описание ситуации
Страна
Год
Тип ситуации
1
ДЗ,
пз,
32,
тз,
сз,
БЗ,
Х2,
ГДР
1958
Высокие несбалан¬
2
ДЗ,
ПЗ,
33,
тз,
сз,
БЗ,
XI,
ГДР
1959
сированные темпы
3
ДЗ,
ПЗ,
31,
Т2,
С2,
Б2,
хз,
ЧССР
1966
развития
4
ДЗ,
пз,
31,
Т2,
сз,
Б2,
хз
ВНР
1966
5
ДЗ,
П2,
32,
ТЗ,
С1,
БЗ,
Х2
ВНР
1967
Средние сбалан¬
6
Д2,
П2,
31,
ТЗ,
С2,
БЗ,
XI
ПНР
1964
сированные темпы
7
Д2,
П2,
31,
ТЗ,
С1,
БЗ
хз
ПНР
1965
развития
8
Д2,
ПЗ,
31,
Т2,
С2,
Б2,
XI
ГДР
1964
9
Д2,
П2,
31,
Т2,
СЗ,
Б2,
Х2
ГДР
1968
10
Д2,
П1,
32,
Т2,
СЗ,
Б2,
ХЗ
ВНР
1958
Средние несбалан¬
И
Д2,
П2,
32,
ТЗ,
С2,
БЗ,
Х2
ВНР
1959
сированные темпы
12
Д2,
ПЗ,
31,
тз,
С2,
БЗ,
Х2
ВНР
1961
развития
13
Д2,
П2,
32,
ТЗ,
С1,
Б2,
Х2
ВНР
1963
14
Д2,
П1,
32,
ТЗ,
С1,
БЗ,
XI
ВНР
1970
15
Д2,
П2,
31,
Т2,
С2,
БЗ,
XI
ЧССР
1961
16
Д2,
П2,
32,
Т2,
СЗ,
Б2,
Х2
ЧССР
1967
17
Д2,
П2,
32,
Т2,
сз,
Б1,
XI
ГДР
1969
18
Д1,
П2,
31,
Т1,
сз,
Б2,
хз
ГДР
1963
Низкие сбаланси¬
рованные темпы
развития
19
Д1,
П1,
31,
Т2,
С2,
Б2,
XI
ВНР
1965
Низкие несбалан¬
20
Д1,
П2,
31,
Т1,
С1,
Б2,
XI
ГДР
1962
сированные темпы
21
Д1,
П1,
31,
Т1,
сз,
Б2,
XI
ЧССР
1962
развития
22
Д1,
П1,
31,
Т1,
сз,
Б1,
Х2
ЧССР
1964
стороны, описания, представленные шкалированными значениями, можно под¬
вергнуть обработке количественным алгоритмом БОЛЬШЕ-МЕНЬШЕ, являю¬
щимся частным случаем алгоритма «развал на кучи», который дает большую
степень обобщения. Например, если примеры с 1-го по 17-й в табл. 7.6 отнести
к л , а с 18-го по 22-й — к К~, то значения признака ДД разобьются на две
группы ДД ^ Д1 и ДД > Д2.
272
ГЛ. 7. ОБОБЩЕНИЕ ПОНЯТИЙ ПО ПРИЗНАКАМ
При разбиении частных описаний таблицы 7.6 на группы примеров К+
и контрпримеров К~ в соответствии с типом экономических ситуаций и по¬
следующей обработки их алгоритмами качественного обобщепия мы будем
получать очевидные п малоинтересные закономерности. Например, при отне¬
сении примеров с 1-го по 4-й к выборке К+, а остальных — к К~ в качестве
Таблица 7,7
Описание экономических ситуаций
Хг
Признак
Значение
признака
Обозначение
значения
признака
1
Темп прироста произведенного на¬
менее 3
Д1
ционального дохода (в %). ДД
3-7
Д2
болео 7
ДЗ
2
Темп прироста производитель¬
менее 3
П1
ности общественного труда (в %) •
3-7
П2
ПИ
более 7
ПЗ
3
Темп прироста реальной зарпла¬
менее 3
31
ты рабочих и служащих (в %). 33
3—7
32
более 7
33
4
Темп прироста розничного това¬
менее 3
Т1
рооборота (в %). ТТ
3-7
Т2
более 7
ТЗ
5
Сальдо внешнеторгового баланса
менее 30
С1
(в ед. нац. вел.). СС
30-30
С2
более 30
СЗ
6
Темп прироста производства
менео 3
Б1
промышленной продукции предме¬
3-7
Б2
тов потребления (группа «Б»
более 7
БЗ
(в %)). ББ
7
Темп прироста валовой продук¬
менее 3
XI
ции сельского хозяйства (в 96). XX
3-7
Х2
более 7
ХЗ
основной закономерности, определяющей класс «высокие несбалансированное
темпы развития», выделится конъюнкция ДЗ & ПЗ. Кроме того, будут выде¬
лены также максимальные значения признаков СС. ТТ и ББ.
В ходе исследований специалист, использующий систему ДСАНИ. может
провести классификацию, воспользовавшись произвольным разбиением, ска¬
жем таким: 1 -е 13 — примеры, 14 4-22 — контрпримеры. С помощью функции
ВПОН введем выработки К+ и К~ в систему, дав им имя ЭКОНОМ. Затем
проведем обобщение, воспользовавшись командой ОБОБЩИТЬ. Первой конъ¬
юнкцией, вошедшей в ДНФ понятия, является Д2 & П2 & ТЗ. Она характе¬
ризует средине темпы прироста национального дохода и производительности
8.1. ПОСТАНОВКА ЗАДАЧИ
273
труда, а также высокие темпы прироста розничного товарооборота. Интересно,
что при сохранении первых двух показателей п отсутствии третьего (И ТЗ)
в следующем конъюнктивном члепе наблюдается, в частности, высокое сальдо
внешнеторгового баланса (СЗ) и низкие темпы прироста реальной заработной
платы (31), что дает нам гипотезу об обратной взаимосвязи этих показателей.
Кроме того, представляет интерес выделенное алгоритмом предложение о не¬
совместимости высоких темпов прироста национального дохода ДЗ и низких —
для реальной заработной платы рабочих и служащих.
В некоторых случаях имеет смысл провести классификацию, поменяв
местами выборки К+ и К~. Для этого используется функция ОБРАТНО. Ос¬
новным конъюнктивным членом полученного понятия здесь служат 31 & Д1,
что подтверждает гипотезу о взаимосвязи этих двух характеристик и вполне
соответствует классу, определенному типами частных ситуаций.
Заметим, что в ходе выполнения команд ОБОБЩИТЬ и ОБРАТНО вид
первопачальпо введенпой структуры данных не менялся (за исключением до¬
бавления обобщенных понятий Па в список понятий). Допустим теперь, что
мы хотим провести обобщение, предварительно переместив примеры 10 -з- 13
из К+ в К~, В построенных функциях принадлежности самая естественная
картина интенсивного экономического развития представлена членом (Н 31 &
ДЗ & ТЗ & БЗ & Н 32), определяемая максимальными значениями основных
характеристик. Остальные конъюнктивные члены, входящие в понятие, опре¬
деляют другие возможные варианты интенсивного развития экономики, при
которых темпы роста реальной заработной платы несколько отстают от тем¬
пов роста по другим показателям.
ГЛАВА 8
ОБОБЩЕНИЕ ПОНЯТИИ ПО СТРУКТУРАМ
8.1. Постановка задачи обобщения понятий по структурам
При создании систем принятия решений необходимо решить две
задачи, тесно связанные между собой. Традиционно они называются:
задачами классификации и распознавания образов. Задача класси¬
фикации заключается в нахождении методов выделения классов
ситуаций на объекте управления, каждый из которых связан с тем
или иным принимаемым решением.
Задача распознавания образов состоит в нахождении методов,
с помощью которых для каждой конкретной ситуации требуется
найти класс, к которому она относится.
Каждая ситуация системы принятия решений характеризуется
совокупностью состояний ее элементов, связанных между собой си¬
стемой отношений, что обусловливает практическую невозможность
их описания в виде совокупностей признаков, как это делается в
большинстве существующих методов распознавания образов.
Действительно, пусть каждая ситуация характеризуется состоя¬
ниями ее элементов ei'.ei^E, причем обычно \Е\ > 1 и множест¬
вом отношений Pj, выполняющихся на множестве Е в данной ситу¬
ации. При переводе ситуации в образ (т. е. машинное представле¬
ние объекта распознавания) возникает необходимость учета сово¬
купности отношений, выполняющихся на множестве ее элементов.
18 в. Н. Вагин
274
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Пусть п=\Е| и к — арность некоторого отношения Ри определенно¬
го на Е. Нетрудно видеть, что в общем случае число способов вы¬
бора аргументов данного отношения из множества Е равно Сп-к\.
Из сказанного следует, что при попытке отобразить такого рода
объект при помощи некоторой совокупности признаков потребова¬
лось бы в общем случае число признаков, ограниченное величиной
комбинаторной степени сложности. Таким образом, модели распо¬
знавания, основанные на представлении объектов совокупностями
признаков, оказываются во многих случаях неприемлемыми.
Остановимся коротко на существующих методах распознавания
образов. Имеется некоторое множество объектов О и известно, что
классы Ki, Кг, .. ., Кп являются подмножествами множества О.
Задано описание множества О, информация Inf о классах Ки К2, ...
... ., Кп и описание некоторого объекта о, е О. Требуется установить,
которым из классов Кt, К2, ■.., Кл принадлежит объект о,.
Ю. И. Журавлев выделяет следующие модели распознавания:
1. Модели, основанные на принципе разделения. Объекты иссле¬
дования представляются точками n-мерного признакового простран¬
ства, а классы представляют собой некоторые области данного про¬
странства. В режиме обучения строятся разделяющие поверхности
между совокупностями точек элементов обучающей выборки, отно¬
сящихся к различным классам. Разделяющие поверхности задаются
при помощи разделяющих функций, которые, как правило, берутся
линейными, квадратичными или кусочно-линейными. Принадлеж¬
ность объекта классу К определяется знаками соответствующих
разделяющих функций. Обязательным требованием здесь является
наличие метрики в признаковом пространстве.
2. Статистические модели, используемые в случаях, когда из¬
вестны определенные вероятностные характеристики (как, напри¬
мер, функция распределения) для классов Ки Кг, . . ., Кп. Среди
них особое место занимают Байесовские модели.
3. Модели, использующие метод потенциалов, в рамках которых
•строятся потенциальные функции, служащие для вычисления при¬
надлежности объекта заданным классам.
4. Модели вычисления оценок (голосования), в которых вначале
определяется совокупность решающих подмножеств на множестве
косвенных признаков — обычно это множества тупиковых тестов
или подмножества выбранной мощности к,— а затем определяется
мера близости объекта каждому из классов К{ на основании срав¬
нения значений признаков объекта из заданных подмножеств с со¬
ответствующими значениями признаков эталонных объектов (при¬
меров). Имеются также смешанные модели.
Другой подход к представлению объектов в теории распознава¬
ния образов получил название структурного распознавания. В за¬
дачах структурного распознавания каждый класс характеризуется
множеством отношений между частями образов в классе. Эти задачи
отличаются обычной комбинаторной сложностью и поэтому при рас-
8.i. ПОСТАНОВКА ЗАДАЧИ
275.
дознавашш вместо метода оценивания ошибок (как в статистиче¬
ском распознавании) используется техника теории покрытий. Р. Ха-
ралик рассматривает покрытия множеств, правила продукций и
лингвистические методы как специальные классы одной основной
задачи покрытия (covering paradigm).
Наиболее известными здесь являются лингвистические методы
распознавания. В данном случае каждому классу X, сопоставляется
некоторая формальная грамматика Gr4 (или некоторый нетерми¬
нальный символ Ti в определенной грамматике Gr0). Объектам клас¬
са Kt ставятся в соответствие слова, выводимые в грамматике Gr4
(выводимые из нетерминального символа Ti в грамматике Gr0).
Развитие этих методов обусловлено тем, что во многих случаях
информацию о классах нецелесообразно задавать в виде обучающих
выборок элементов классов. Подобно тому, как это делается во мно¬
гих областях дискретной математики, классы задаются алгебраиче¬
ски: задается множество базисных элементов и операции, с по¬
мощью которых порождаются новые элементы. Для каждого вход¬
ного объекта алгоритм распознавания должен установить, может
ли он быть получен из базисных элементов посредством примене¬
ния указанных операторов.
Известные на сегодняшний день структурные, в частности,
лингвистические методы распознавания достаточно эффективны при
решении ряда конкретных задач. Однако к их недостаткам следует
отнести сильную зависимость методов построения грамматик (или
других решающих правил) и их эффективности от конкретной
предметной области и специфики задачи. Помимо этого, известные
модели структурного распознавания, так же как и модели распозна¬
вания по признакам, не позволяют строить образы, достаточно пол¬
но учитывающие структуру распознаваемых объектов; учитываются
лишь частные виды структурных связей, чаще всего иерархическо¬
го типа.
Так как нас интересуют модели и методы структурного распо¬
знавания и классификации для систем принятия решений, где мо¬
дели распознавания по признакам практически не применимы, то
для разработки этих методов будем использовать аппарат семанти¬
ческих сетей, обладающих широкими возможностями для представ¬
ления структурной информации об объекте.
Таким образом, проблема формирования классов для принятия
решений может быть поставлена как задачи классификации и рас¬
познавания на множестве взвешенных структур — графов или муль¬
тиграфов, служащих для представления знаний об объекте.
Разработка таких методов актуальна для решений таких задач,
как создание систем управления сложными технологическими объек¬
тами, в частности, систем управления энергообъединениями, воз¬
душным движением и т. п., создание систем прогнозирования
свойств химических соединений, систем опознавания трехмерных
изображений, систем структурного проектирования.
18*
276
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Имеется множество объектов О, описываемых с помощью взве¬
шенных графов (мулмиграфов) G специального вида, называемых
в дальнейшем семантическими графами SG и обладающих следую¬
щими свойствами:
1. Если объект (в частности, состояние системы) задается по¬
средством определения множества отношений, выполняющихся между
его элементами, то его можно представить некоторым семантиче¬
ским графом SG.
2. Каждой формуле исчисления предикатов первого порядка,
имеющей вид конъюнкции литер, можно поставить в соответствие
некоторый SG, и напротив, каждому SG соответствует некоторая
формула указанного вида, истинная тогда и только тогда, когда
выполняются все отношения, определенные на данном SG.
Пусть далее класс К входит в О: К^О. Обозначим через vK и
wK обучающие выборки примеров и контрпримеров класса К: vK —
sA, г:’кП/{ = 0. Требуется построить алгоритм AL распознавания,
позволяющий определить принадлежность произвольного объекта
Oi<^0 классу К.
Алгоритм AL мы будем представлять в виде композиции двух
алгоритмов: алгоритма обобщения AL0 на множестве семантических
графов SG, предназначенного для формирования решающего прави¬
ла, и алгоритма распознавания ALP (применения решающего пра¬
вила) входного объекта относительно некоторого обобщенного пред¬
ставления Як класса К, полученного в результате работы алгорит¬
ма AL0.
Под обобщением будем понимать формирование семейства Y
подмножества^ множества О, в совокупности покрывающих К и
обладающих следующими свойствами:
1. (LiezY)=>(vKnLt'*0).
2. (феУ)^(юкПф = 0).
3. kjt S и Li.
Li = Y
Обобщенное^ представление класса К будем искать в виде мно¬
жества Як = {Gi, G2, ■ ■ Gi) специального вида структур, называе¬
мых обобщенными графами, каждому из которых однозначно соот¬
ветствуют некоторое Lt е Y.
8.2. Семантические графы и обобщение информации,
представленной семантическими графами
Предлагаемые ниже методы структурного обобщения информа¬
ции рассчитаны ыа применение в различных по своей организации
системах принятия решений, удовлетворяющих следующим, весьма
общим, требованиям:
— наличие isa-иерархии, т. е. структуры множеств {Th j — 1, п}
объектов данной предметной области, пересекающихся только по
включению (каждое множество Т, будем называть ISA-множеством);
8.2. СЕМАНТИЧЕСКИЕ ГРАФЫ И ОБОБЩЕНИЕ ИНФОРМАЦИИ 277
— наличие средств, позволяющих хранить информацию в базе
данных либо в структурной форме, либо в декларативно-логической
форме, что должно дополняться средствами перехода от деклара¬
тивной формы представления к структурной н обратно для обес¬
печения возможности подключения подсистемы обобщения;
— наличие средств структурного вывода («наложения») при от¬
сутствии описанных выше средств преобразования данных;
— каждое состояние системы должно полностью задаваться по¬
средством определения совокупности отношений, выполняющихся
в данный момент на множестве ее элементов.
Заметим, что требование о присутствии в системе логических
средств представления и вывода знаний не является обязательным.
Основной единицей структурного представления знаний в си¬
стемах рассматриваемого класса будет являться упомянутый выше
семантический граф SG. SG может служить для представления те¬
кущего состояния системы, множества состояний, посылок струк¬
турного вывода и т. д. Каждый SG представляет собой взвешенный
по вершинам и ребрам граф (или мультиграф). Веса ю,- вершин F,-
семантического графа могут принимать следующие значения.
Вес ®i = Tj или (Oi = <r„ Tj>, где Т-3 — имя ISA-множества, к ко¬
торому относится данный объект, г{ — числовой или нечеткий кван¬
тификатор, служащий для обозначения группы идентичных объек¬
тов. Вершины такого типа будем называть объектными.
Вес on = jC77j,Ln>, где Tlh / = 1, k — имя признака, которым может
обладать объект, к — общее число таких признаков, а я — значение
данпого признака. Вершина V{ в этом случае называется признако¬
вой и ей может быть инцидентна единственная дуга, идущая от
данной вершины к некоторой объектной вершине.
Вес оц = Р; или (Dj = ~|Pj, где Pj— предикатный символ из мно¬
жества предикатов, определенных на данной предметной области.
Вершина F,- в данном случае называется предикатной. Предикат¬
ной вершине, которой приписано имя н-местного предиката, инци¬
дентно п дуг, ведущих к объектным вершинам. Дуги взвешены ро¬
левыми (падежными) отношениями, определяющими место терма,
соответствующего вершине, в данном предикате.
Вес#'
— fu где fj — функциональный символ из множества
функций, определенный на данной предметной области. Вершина
V{ в этом случае называется функциональной. В каждую функцио¬
нальную вершину входят дуги, ведущие из объектных или функцио¬
нальных вершин и исходит одна дуга, инцидентная также функцио¬
нальной или объектной вершине. Для каждой функциональной
вершины Vi имеется путь, ведущий из некоторой объектной вер¬
шины к другой объектной вершине и проходящий через F,-.
Вес (В,; = Nj_, где Nj — имя (номер) некоторого объекта или неко¬
торое значение. Вершина F, называется в этом случае именной вер¬
шиной. Каждой именной вершине инцидентна единственная дуга,
ведущая к объектной вершине. Значения Ns соответствуют констаи-
278
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
там в логическом выражении. Объектная вершина, смежная с не¬
которой именной вершиной, называется поименованной и служит
для обозначения конкретных объектов. Объектная вершина, в ко¬
торую не входят дуги, инцидентные функциональным вершинам,
называется свободной. Других вершин и ребер в семантических
графах нет.
Отметим, что на признаковых вершинах представляются обычно
одноместные функции или предикаты. В случае когда в системе
нет необходимости в применении операторов обобщения к предикат¬
ным символам, допустимо представление двуместных предикатов
на дугах SG.
Нетрудно видеть, что отличие термина «семантический граф» от
«семантическая сеть» носит чпсто терминологический характер.
На рис. 8.1, например, приведена сеть, описанная нами в 4.3—
4.5: «Поставщики снабжают предприятия запасными частями». На¬
помним, что a, d, о — падежные отношения, соответственно, аген-
тивный, назначения и объектный; t — отношение «элемент из».
Рис. 8.2
В наших обозначениях данная сеть будет иметь вид семантиче¬
ского графа, представленного на рис. 8.2. Здесь Р£ — отношение
«снабжать», Г, — «поставщик», Тг — имя множества «запасные ча¬
сти», Т3 — «предприятие», г—квантификатор «столько-то». Бук¬
вой р обозначены предикатные вершины, ob — объектные.
Если SG используется для представления текущего состояния
системы, то все его свободные объектные вершины являются по¬
8.2. СЕМАНТИЧЕСКИЕ ГРАФЫ И ОБОБЩЕНИЕ ИНФОРМАЦИИ
279
именованными. Обозначим класс семантических графов такого типа
через SG1. На seSG1 представима любая формула исчисления пре¬
дикатов первого порядка, имеющая вид конъюнкции литер, все тер¬
мы которой замкнуты.
Класс семантических графов, включающих в себя свободные
непоименованные объектные вершины, мы будем обозначать че¬
рез SG2.
Если некоторая формула Ф исчисления предикатов первого по¬
рядка имеет вид конъюнкции литер, то ей можно естественным об¬
разом поставить в соответствие семантический граф s® = SG1 U SG2,
если только все переменные формулы Ф квантифицированы по мно¬
жествам isa-иерархии данной предметной области. При этом каж¬
дому терму формулы Ф ставится в соответствие некоторая объект¬
ная вершина семантического графа s®, причем переменным и кон¬
стантам соответствуют свободные вершины.
Так, например, формуле Фх = Тг (х) £ Т2 (а) £ Р (х, а) £
п<?(/ (ж)>: а) можно поставить в соответствие , приведенный
на рис. 8.3. Здесь Ти Тг — множе¬
ства, определенные в данной си¬
стеме; ft, Тг — их характеристи¬
ческие предикаты. Через ob обо¬
значены объектные вершины, р —
предикатные, /—функциональ¬
ные, I — именная вершина, U —
универсальное множество.
Обозначим через Is(tu t2, ...
..., tn) предикат, истинный на тех
наборах значений термов ti, t2, ...
..., tn, соответствующих объект¬
ным вершинам семантического
графа s, для которых одновре- Рис. 8.3
менно выполняются все отноше¬
ния, определенные на s. Так, например, для s® (рис. 8.3)
= ^1-
Тогда если семантический граф s не включает в себя квантифи¬
каторов г„ введенных выше, то предикат Is{ti, tz, .. ., tn) будет в
общем случае иметь вид
£Ти{Ь)\ £ t2, ..., «„)),
где tu i = 1, п — термы, соответствующие объектным вершинам s\
Тц— характеристические предикаты ISA-множеств Lj — ли¬
теры, приписанные предикатным вершинам s.
Если семантический граф s включает в себя простейшие чис¬
ловые или нечеткие квантификаторы, служащие для обозначения
280
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИИ ПО СТРУКТУРАМ
множеств идентичных объектов и определенные па объектных вер¬
шинах s, то предикат Is (t, 5) будет иметь вид
где t = <tu t2, ..., Ц>, Е = (Ei, Ег» • • ■ > Sn2): щ + пг = га; п — число
объектных вершин семантического графа s; — переменные, обо¬
значающие множества идентичных объектов, а предикаты р;(Е0
определяют границы этих множеств и соответствуют квантификато¬
рам г,-.
Таким образом, предикат Is(t, |) оказывается истинным, если
только все объекты (множества объектов), представленные на объ¬
ектных вершинах семантического графа s, входят в соответствую¬
щие ISA-множества и при этом истинны все предикаты (или их
отрицания), определенные на предикатных и признаковых вер¬
шинах s.
Прежде чем рассматривать задачу обобщения семантических
графов, введем ряд понятий. Пусть М — некоторое множество взве¬
шенных графов. Назовем граф G обобщенным графом относительно
множества М, если имеется правило F, согласно которому графу G
можно однозначно сопоставить некоторое непустое множество
mF(G) графов из М. Обозначим через Мр множество обобщенных
графов. Будем требовать, чтобы F было таково, что если G е М, то
mF(G) = {Gi, откуда М <=, Мр.
Граф 6 ед .1/1 назовем более общим, чем граф G"^MF:
G'^>G", если mF(G" )<= mF(G'). Нетрудно видеть, что отношение
У~ является отношением частичного порядка на графах.
Оператор гр, определенный на графах множества МF, называ¬
ется оператором обобщения, если результат применения г|) к G есть
граф G' из М*р такой, что G' У- G.
На отношение >- целесообразно наложить следующие семанти¬
ческие ограничения. Пусть графу G' соответствует формула Ф' ис¬
числения предикатов первого порядка, а графу G" —формула Ф".
Тогда, если G’У-G", необходимо, чтобы Ф' была истинна на всех
тех интерпретациях, на которых истинна Ф". В связи с этим кон¬
кретные операторы обобщения можно вводить, если определено по¬
нятие интерпретации для знаний, представленных на графах мно¬
жеств М, MF. Этим свойством обладают, в частности, семантиче¬
ские графы, операторы обобщения которых будут описаны ниже.
Пусть класс К является подмножеством множества М, причем
известно множество Кк = lG]cf G\, .. ., Gk}' vk e К, называемое обу¬
чающей выборкой класса К. Будем искать обобщенное представление
класса К в виде множества обобщенных графов: RK = iGi, Gz, ...
8.2. СЕМАНТИЧЕСКИЕ ГРАФЫ И ОБОБЩЕНИЕ ИНФОРМАЦИИ
281
..Gi), причем будем требовать, чтобы:
а) vK^mF(RK), где mF(RK) = у
б) (Gi<= RK)^ (vk П mF{Gi)¥* 0),
в) (Gemf(Sj[))^ri(G),
где Гя — предикат, определяющий множество ограничений, накла¬
дываемых на элементы класса К. Таким образом, каждый из Gi ^
ейх задает некоторое покрывающее подмножество mF(Gi) для
класса К.
Рассмотрим теперь задачу обобщения семантических графов.
Обозначим через N(V, s) оператор удаления из семантического гра¬
фа s именной вершины, связанной ребром с объектной вершиной V.
Пусть дан семантический граф s0: s0^SGl. Пусть далее st получен
из s0 в результате последовательного применения оператора N к
свободным поименованным вершинам Vj Р,2, . . Vjt семантическо¬
го графа s0- Очевидно, что sL е SG2. Таким образом, оператор N
переводит семантический граф из класса SG1 в класс SG2. (Напом¬
ним, что через SG1 по-прежнему обозначается множество SG, не
включающих в себя свободных объектных вершин; графы класса
SG2 включают в себя по меньшей мере одну свободную объектную
вершину каждый.) Введем еще ряд операторов.
Оператор NV(V, s) — оператор удаления произвольной вершины
V из семантического графа s вместе со всеми инцидентными ей
дугами. Если V— объектная вершина, то удаляются также все
признаковые, функциональные, предикатные п именные вершины,
с ней смежные. Если оператор NV применяется к функциональной
вершине, то она удаляется, если только полученный терм стано¬
вится более общим. Мы будем называть терм tt более общим, чем
терм G, если имеется подстановка 0 = {щ/ж,, г,/хг, ..., rq/xq} такая,
что tS = t2, где xt, хг, ..., хя —- переменные из ft, a Ti — термы, вхо¬
дящие в t,. Помимо этого будем требовать, чтобы область изме¬
нения каждой из переменных хt включала в себя область изменения
т{. Данное требование обусловливается тем, что если семантический
граф s' является более общим, чем s" (m(s" )cz m(s')), то необхо¬
димо, чтобы предикат IS’, соответствующий s', был истинен на
всех тех интерпретациях, на которых истинен Is«.
Оператор TV(V, Т', Т", s) —оператор замены имени Т' мно¬
жества, приписанного объектной вершине V, именем Т", причем
Т' с Т".
Оператор TaV(V, s, со, а)— оператор замены значения со веса
вершины V множеством о значений таким, что иео или со о,
если со — множество. Множества а могут задаваться перечислением
возможных значений, интервалами значений, могут являться об¬
ластями, ограниченными некоторыми разделяющими поверхностями,
иметь нечеткие или лингвистические характеристики.
Оператор TS(u, s)—оператор замены подграфа и семантиче¬
ского графа s отдельной вершиной, которой приписан вес W, явля¬
282
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
ющийся именем класса обобщенных SG, причем u^W (понятие
обобщенного SG будет введено немного ниже).
Оператор N является частным случаем оператора NV, оператор
TV является частным случаем оператора TaV.
Сеть s0, полученную из s = SG1 U SG2 в результате применения
к s последовательности операторов N, NV, TV, TaV, TS, будем на¬
зывать обобщенным семантическим графом. Класс обобщенных се¬
мантических графов обозначим SG°, SG2 s SG°.
Каждому графу s0 s SG° поставим в соответствие множество
m{s0) семантических графов s' е SG1 таких, что имеется изоморф¬
ное наложение s0 на некоторый подграф s’, причем:
С1) объектная вершина V' обобщенного графа s0 наложима на
объектную вершину V" семантического графа s', если:
— для каждого терма t, полученного в результате выбора
одного функционального символа из каждого множества, приписан¬
ного функциональным вершинам, лежащим на пути из некоторой
свободной вершины семантического графа s' в V", найдется терм в
s0, полученный аналогичным образом для вершины V' и являю¬
щийся более общим, чем t;
— вершине V' приписано множество W, а вершине V" — ISA-
множество Т, то Ts=W;
С2) объектная вершина V' наложима на подграф и семантиче¬
ского графа s', если и относится к классу W, имя которого припи¬
сано V'\
СЗ) предикатная, признаковая или именная вершина V' из s0
наложима на вершину V" семантического графа s* того же типа,
если значение со" веса V" входит в множество а' значений, при¬
писанное V.
Семантический граф s' е SG2 U SG0 будем называть более общим,
чем (обобщенный) семантический граф s" е SG1 U SG0, если
m(s")<= m(s').
Нетрудно убедиться, что применение любого из введенных выше
операторов к s из множества SG1 U SG2 U SG0 приводит к обобщен¬
ному s' е SG0 такому, что s' У- s, и операторы N, NV, TV, TaV, TS
являются операторами обобщения в указанном выше смысле.
Каждому обобщенному s0 можно поставить в соответствие пре¬
дикат Т$0 (t, £, v), в общем случае имеющий следующий вид:
Wj. (ti)j (g Jcg (li != Wj.)^ & Jcg di (Vi)j (g
(cf'Pi(Ei)) (& Q(t, y, v)j.
Через Wj. обозначены классы объектов, соответствующие объ¬
ектным вершинам семантического графа s0; Wj.— характеристи¬
ческие предикаты классов W jC, Q(t, у, v)—формула исчисления
8.2. СЕМАНТИЧЕСКИЕ ГРАФЫ И ОБОБЩЕНИЕ ИНФОРМАЦИИ
283
предикатов первого порядка вида об ^у L\(t, у, v)j, где Ь\— лите¬
ры; конъюнкция берется по всем предикатным (признаковым) вер¬
шинам s0, а выражения L\(t, у, v)j оказываются приписанны¬
ми предикатным вершинам Vi в результате применения оператора
TaV к предикатным или функциональным вершинам исходных
графов. Через обозначены переменные, соответствующие значе¬
ниям признаков, а предикаты ai(vt) определяют области изменения
этих переменных. Переменные служат для обозначения множеств
идентичных объектов; предикаты определяют границы этих
множеств.
Проиллюстрируем применение описанных операторов обобщения
на примере.
Пример 8.1. Допустим, что строится модель управления энер¬
госистемой, состояния которой можно отобразить на семантических
графах. На рис. 8.4 приводится граф slt отображающий состояние
некоторой части энергетической сети, причем известно, что в данном
состоянии требуется включить резервную мощность на станции Ci.
ISA — множества для данной системы обозначаются следующим
образом: П — потребитель; ЛЭП— линия электропередачи; СТ —
электростанция. На именных вершинах (/) графа s, указаны схе¬
матически имена конкретных объектов из данных множеств. На
признаковых (я) вершинах отображаются признаки: ТМ—требуе¬
мая мощность; РМ — резервная мощность; ПС — пропускная спо¬
собность ЛЭП. Все значения приводятся в условных единицах.
284
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Отношение «быть связанным посредством ЛЭП» (СВ) представлено
на предикатных вершинах s,. Через П, ЛЭП, СТ обозначены ха¬
рактеристические предикаты ISA — множеств П, ЛЭП, СТ соот¬
ветственно. Решение: Чтобы дать потребителю П1 требуемую мощ¬
ность 100 (условных единиц), необходимо включить резерв на стан¬
ции Ci.
Предикат ISl для имеет вид
1&1 (П1, 771, Л2, С1, С2) ~ U (771) & ЛЭП (771) & ЛЭП (Л2) <£•
СТ (Ci) & СТ (С2) & СВ (С 1, 771, 771) & СВ (С2, Л2, П2) &
ПС (771, 300) (ё ПС (Л2, 100) & РМ (С 1, 200) & PM (С2, 50) &
ТМ(Л{, 100),
причем верно: /^(/71, 771, 772, Ci, С2)=>-ВКЛ. РЕЗЕРВ (Ci).
Применяя к sj операторы обобщения N, NV, получаем семанти¬
ческий граф s2, представленный на рис. 8.5. Ему соответствует
предикат
VX1, Х2, ХЗ (/,g(Xl, Х2, ХЗ) ~ П(Х1)& 77Э77(Х2) & СТ (ХЗ) &
ТМ (XI, 100) &РМ(Х3, 200) & ПС (Х2, 300) & СВ (ХЗ, XI, Х2));
VX1, Х2, Х3(7,2 (XI, Х2, ХЗ) =>- ВКЛ. РЕЗЕРВ (ХЗ)).
Предикат 7Sa(Xl, Х2, ХЗ) истинен тогда и только тогда, когда
XI — потребитель, Х2 — ЛЭП, ХЗ — электростанция, причем потре¬
битель XI связан с электростанцией ХЗ посредством 77,977X2; тре¬
буемая мощность в точке XI равна 100; пропускная способность
ЛЭП Х2 равна 300, и резервная мощность на станции ХЗ равна 200.
Применяя далее оператор TaV к признаковым вершинам графа
s2, получаем семантический граф s3 (см. рис. 8.6), которому соот¬
8.3. ТОЧЕЧНОЕ И ДИЗЪЮНКТИВНОЕ ОБОБЩЕНИЕ
285
ветствует предикат
VX, У (Is3(Xi, Х2, ХЗ, Yi, Y2) ~Л(Х 1) & ЛЭП (Х2) &
СТ(Х3) & СВ(Х3, XI, Х2) & ГА/(XI, 100) & ПС(Х2, У1)<е
РЛ/(ХЗ, Y2) & (У1 > 100) d? (Y2 > 100)),
VX, У(/,8(Х1, Х2, ХЗ, У1, У2) =>• BKJI. РЕЗЕРВ (ХЗ)).
Иа семантических графах можно также определить и более
сложные операторы обобщения, учитывающие имеющиеся зависи-
Г"
I
OS
—<
2 ^
1
j Решение
! os
JU [
BE'S-
РЕЗЕ FE
| !
(ли)
f
rt
C2
i
7t |
j (^rv.wiP)
(nc.
,100)
('pm. >,100) I
Рис. 8.6
мости между значениями весов вершин семантического графа. Од¬
нако это приведет к неоправданным трудностям при практической
реализации алгоритмов структурного обобщения.
8.3. Точечное и дизъюнктивное обобщение
Пусть известно, что некоторое множество К семантических гра¬
фов является подмножеством класса SG1 и известно, что г’к =
= Uk, «к, ..., slK] является обучающей выборкой для К: vK^K.
Пусть предикат Гк определяет множество ограничении для К.
Множество RK обобщенных семантических графов, полученных
из s1k е vk в результате применения к ним операторов обобщения,
называется обобщенным (структурным) представлением класса К,
если выполняется следующее.
al. Для каждого из slK^.vK найдется s3^RK: s%K&m(si)
и, напротив, для каждого из sj ^ RK: то(яДП vK¥=0.
а2. Множество m(RK) удовлетворяет ограничениям Гк, опре¬
деленным для данного класса. Будем задавать ограничения следую¬
щим образом. Пустьи^к = (s1,s2j — множество SG таких, что
wK Г\ К — 0, а также m(si)0 К = 0, i = l, h для случая, когда
*= SG°. Ограничения Гк для множества RK будут в этом случае
286
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
иметь вид
m(RK)f]wK= 0, m(RK){) ( (J m(si)\ = 0.
^jS^lSG0 J
аЗ. Если s'^RK, s"^RK, то не выполняется ни одно из усло¬
вий: s' s", s" s', m(s')=* m(s").
На множестве обобщенных представлений (ОП) Rk класса К,
удовлетворяющих требованиям al, а2, аЗ, задается обычно некото¬
рая целевая функция у (Rvk), вид которой зависит от конкретных
условий и цели сообщения. Искомое ОПТ? к должно соответствовать
некоторому экстремальному значению функции у(7?к).
Обобщенное представление RK класса К определяет множество
SG\ WK = m(RK)= U
sisRK
Множество RK таково, что s ^vK =*- s е m(RK). Если также se
е К => s е m(RK), то представление называется корректным.
Процесс получения ОП Rk для класса К будет заключаться в
построении последовательности применения операторов обобщения
к sxK s vK (возможно к Sjе wK) такой, чтобы Rk удовлетворяло
требованиям al, а2, аЗ и у(7?ж) = extr у (7?^).
V
В зависимости от того, какие операторы применяются при обоб¬
щении, будем рассматривать отдельно задачу точечного обобщения
и задачу дизъюнктивного обобщения.
В первом случае используются только операторы N, NV. Обоб¬
щенное представление класса К ищется в виде множества Rk =
= {s\ s2, ..., s1} такого, что
Т1) выполняются условия al, аЗ;
Т2) графы s] е Rk получаются в результате применения к
примерам класса К только операторов N, NV, не выводящих за
пределы класса SG2;
ТЗ) множество ri(Rk) не содержит в себе контрпримеров и не
пересекается с множествами m(si), задаваемыми контрпримерами
из классов SG2, SG° и их обобщениями;
Т4) обозначим через Rk множество SG, получаемых из приме¬
ров sk ^ г'к класса К в результате применения к их вершинам опе¬
раторов N, NV таких, что применение тех же операторов к s’^RK
приводило бы к получению семантических графов, не удовлетворя¬
ющих ограничениям, в то время как т, (Rk) П т (Rjc) = 0-
При точечном обобщении для определения целевой функции
у (Rk) целесообразно использовать следующие критерии:
— RlK^RK;
8.3. ТОЧЕЧНОЕ И ДИЗЪЮНКТИВНОЕ ОБОБЩЕНИЕ
287
— мощность множества Rr ограничена некоторым заданным
числам и.г.;
— для каждого s3 (= Rr число sr е vr\ SR^m (sj) по возмож¬
ности, максимально;
— число вершин каждого на s3 е Rr, по возможности, мини¬
мально.
Таким образом, точечное обобщение основывается на принципе
выделения тех наиболее общих фрагментов структур обучающей
выборки vK, которые не входят в качестве подграфа ни в один и®
SG множества wK контрпримеров класса К.
При дизъюнктивном обобщении применяются операторы TV,
TaV, TS. Обобщенное представление класса К ищется в виде мно¬
жества Rr семантических графов, удовлетворяющих условиям:
Д1) выполняются условия al, а2, аЗ;
Д2) графы s3 е Rr получаются в результате применения к
графам s'r 6ЕЕ vr операторов TV, TaV, TS и поэтому наложение
s е К на s3 6= Rr. s^.m(s3), удовлетворяя требованиям Cl, С2, СЗ
(см. 8.2), должно устанавливать взаимно однозначное соответствие
вершины s и s3;
ДЗ) аналогично ТЗ;
Д4) число обобщенных SG во множестве Rr ограничено:
Rk | ^ п0 и для каждого s3 е Rr число покрываемых им приме¬
ров, т. е. величина |m(sJ)n vK\, по возможности, максимально.
Алгоритмы точечного и дизъюнктивного обобщения взаимно до¬
полняют друг друга, являясь отдельными этапами решения одной
и той же задачи обобщения.
Реализация алгоритмов точечного и дизъюнктивного обобщения
затрудняется рядом обстоятельств, основным из которых является
значительная вычислительная сложность задачи об изоморфизме
графов. Поэтому мы будем рассматривать алгоритмы обобщения для
некоторого достаточно широкого класса структур, называемых /-
графами, обладающих, с одной стороны, большими возможностями
для представления знаний и, с другой стороны, допускающих эф¬
фективное решение задачи об изоморфизме графов.
/-граф представляет собой связный, взвешенный по вершинам
и ребрам граф или мультиграф, удовлетворяющий следующим
условиям:
/1. /-граф G включает в себя т непересекающихся подграфов
т
G1, G2, ..., Gm, причем G= (J &i- Подграфы G, (i=l, m) на-
i—1
зываются подграфами уровня.
/2. Вершина лч подграфа G, может быть связана ребром с вер¬
шиной у\ подграфа Gt, если только t = i—l или t = i или t — i+i.
Каждая вершина х\ е Gi связана с одной вершиной г/i—i ^ Gi-i,
288
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
причем у\-г называется предком вершины х{, а х\— потомком вер¬
шины y\-i- Подграф Gi содержит одну вершину, называемую кор¬
нем /-графа.
/3. Если вершина х\ е G4 связана ребром с вершиной х\ е Gj,
то их предки совпадают. Таким образом, каждый из Gi оказывается
разбит на компоненты g\ £ Gi, вершины каждой из которых об¬
ладают указанным свойством (имеют общего предка).
/4. Число вершин каждой из компонент gi ограничено неко¬
торым фиксированным числом N0.
На рис. 8.7 в виде /-графа представлена часть некоторой энерго¬
сети (обозначения те же самые, что и на рис. 8.4).
Обозначим через Т0 время решения задачи об изоморфизме
графов (мультиграфов) общего вида, число вершин которых не
превосходит N0. Пусть I — число уровней рассматриваемых /-гра¬
фов, а М — максимально возможное число компонент g\ на каждом
из уровней i. Тогда время решения задачи об изоморфизме /-гра¬
фов Тj будет ограничено величиной
Т, < I ■ м2 • Го.
Выбирая N0 разумным образом (в зависимости от специфики
предметной области), получим класс графов, допускающих эффек¬
тивное решение задачи об изоморфизме. Благодаря данному свой¬
ству задачи обобщения на сетях, имеющих вид /-графов, решаются
5.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ
289
довольно эффективно. Отметим, что задачу представления семанти¬
ческого графа в виде /-графа (свертки в /-граф) можно сформули¬
ровать как задачу обобщения.
Задачу свертки SG в /-граф можно решить с помощью следую¬
щей процедуры.
Экспертом задается и классифицируется множество примеров
наиболее «мелких» подграфов, входящих в SG обучающего мно¬
жества. Далее производится формирование обобщенных представ¬
лений классов на множестве выбранных подграфов и производится
«свертка» SG обучающего множества, т. е. каждый конкретный
подграф v из построенных классов, входящий в семантические
графы обучающей выборки, заменяется объектной вершиной V,
которой приписано имя соответствующего класса, a v переносится
на следующий уровень получаемого /-графа (его предком будет
вершина V). Полученные структуры вновь подаются на вход опи¬
санной процедуры, если только это целесообразно.
При достаточно небольших размерах SG из множеств RK, задаю¬
щих достаточные условия «свертки», данная задача представляется
разрешимой за реальное время. В процессе дальнейшей работы си¬
стемы каждый SG, представляющих! собой, например, конкретное
состояние системы, поступающее на вход алгоритма распознавания,
«свертывается» в /-граф, используя полученные в режиме обучения
понятия. Множества Wсоответствующие полученным классам (по¬
нятиям), пополняют isa-перархпю системы.
При обобщении SG, уже представленных в виде /-графов, при¬
менение оператора TS носит характер замены компонент gi (под¬
графов потомков отдельных вершин) множествами альтернативных
обобщенных компонент.
Структуры, имеющие вид /-графов, являются довольно распрост¬
раненными структурами в прикладных задачах для представления
объектов исследования, и в них естественным образом отобража¬
ются отношения типа «часть-целое», «прпзнак-элемепт»; «элемент-
множество» и т. п.
8.4. Алгоритмы точечного обобщения семантических графов
В соответствии с постановкой задачи точечного обобщения се¬
мантических графов общего вида излагаемой ниже алгоритм ALJ
строит необходимую последовательность применения операторов
удаления вершин из графов, являющихся примерами класса К,
в процессе поиска на некотором дереве целей.
Алгоритм ALJ.
Шаг 0. Выбрать число па (в конкретных алгоритмах п0 было
выбрано равным 2-N:2, где А2=|ук1. Моделирование на ЭВМ по¬
казало, что дальнейшее увеличение числа п0, связанное со значи¬
тельными затратами памяти ЭВМ, не оправдано).
19 в. Н. Вагин
290 ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Поместить в список, обозначаемый Li, все графы из множества
vK. Приписать каждому графу Gi^Li оценку щ = f{n\, п\, и®}, где
п1 — число вершин графа Gt, п\ — число примеров G3K класса К
таких, что G3K е m(Gi), п\— число вершин графа G1, удаление каж¬
дой из которых по отдельности из Gt не нарушает заданных огра¬
ничений (требование ТЗ, см. п. 8.3).
Величина щ должна быть тем больше, чем больше и? и п\ и чем
меньше п\. В результате моделирования на ЭВМ была выбрана
следующая оценка:
= (1 + — п\) ^1 + 2
где Ni — максимальное число вершин примеров класса К. Граф
Gn е Li считается «лучше» графа Gi2 е Li, если ац > oi2.
Шаг 1. Выбрать ннепомеченный граф G0 из Li, обладающий наи¬
большей оценкой. Образовать множество Mg графов g таких, что:
— каждый из графов получается в результате приме¬
нения к одной из вершин графа G0 оператора NV (или в частном
случае N);
— wK П m(g) = 0,
— граф g еще не порождался к данному моменту поиска.
Приписать каждому g^Mc0 оценку ag, определенную по фор¬
муле (8.1). Пометить граф G0.
Шаг 2. Выбрать непомеченный граф G* из Мg0 с наибольшей
оценкой Ос*. Пометить G* в Mq0-
Если I Li 1 < п0, то поместить G* в Li и перейти к шагу 3.
Выбрать в списке Li граф G* с наименьшей оценкой такой,
что если удалить пз Li G% и добавить G*, то по-прежпему
vK s U m(Gi).
GjSLi
Если такого G* в списке Li нет, то перейти к шагу 3. Если
ас*^.стс*, то перейти к шагу 4. Поместить граф G* в список Li на
место графа G*.
Шаг 3. Если во множестве Mq есть непомеченные элементы,
то перейти к шагу 2.
Шаг 4. Если в списке Li есть непомеченные элементы, то перей¬
ти к шагу 1.
В противном случае, КОНЕЦ.
В процессе моделирования на ЭВМ было установлено, что об¬
ласть практического применения алгоритма ALJ в общем случае
ограничивается графами, число вершин которых не превышает 20
(в случае Nt — 25; \vK\ — \wK\ = 10 время работы ALJ на ЭВМ
ЕС 1033 превышает 5 часов).
АС
(8.1)
8.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ
291
Поэтому основное внимание уделялось разработке п исследова¬
нию алгоритмов обобщения /-графов, поскольку, с одной стороны,
структуры такого типа часто встречаются в реальных задачах, а с
другой стороны позволяют строить эффективные алгоритмы обоб¬
щения для графов сравнительно большей размерности (50 и более
вершин).
Рассмотрим алгоритм точечного обобщения структур, имеющих
вид /-графов.
Будем говорить, что некоторый подграф g /-графа GlK е ик
покрывает граф G^<=wK, если G^^ m(g) и m{G^ f\m(g) = 0.
Рассматриваются только подграфы, имеющие общий корень с Gk-
/-граф g, являющийся подграфом некоторого /-графа G и вклю¬
чающий вершину V <= G в качестве корня, будем называть /-под¬
графом, исходящим пз вершины Е. Если вершина Е находится на
5-м уровне /-графа G, то g называется /-подграфом 5-го уровня.
/-граф G, покрывает /-граф G2, либо если веса их корней раз¬
личны. либо если в Gt имеется /-подграф первого уровня, покры¬
вающий G2.
Будем говорить, что вершина Е* /-графа Gr класса К входит
в покрытие, если во множестве покрывающих подграфов RK име¬
ется покрывающий /-подграф gx, изоморфно наложимый (с учетом
весов) на некоторый /-подграф g графа Gr, содержащий вер¬
шину V\.
Введем следующие обозначения:
W)
И;г (5) =
1, есливг-м примере г-я вершина на 5-м уровне
входит в покрытие;
О в противном случае;
1, если вес г-й вершины г-ro примера не совпадает с
весом 7-й вершнны Z-ro контрпримера;
О в противном случае.
Пусть TFJ = (K)1(1), ...,E^s_i(5 — 1)}—множество вершин, ле¬
жащих на пути из корневой вершины в Е*(5), a Qj = (со^ , ...
. . ., — список весов этих вершин. Назовем вершину V) (5)
контрпримером для вершины Е- (5), если выполняется следующее:
1) V) (5)— вершина 5-го уровня Z-ro контрпримера;
2) Qi = Qj, т. е. веса вершин-предков данных графов совпадают;
3) для каждой вершины VrVk(k)^W\ имеется исходящий из
нее /-подграф, покрывающий максимальный /-подграф, исходя¬
щий из Е^ (k) е Wj;
292
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
4) Имеется /-подграф с корнем в V\, покрывающий максималь¬
ный /-подграф, исходящий из V\ (S).
Если значение веса вершины F[ (S) совпадает с весом вершины
1^(5), toF^S) называется г-контрпримером для вершины Vru
а вершина V* — v-существенной.
Вершина У\ (S) называется существенной, если множество
вершин, являющихся для нее контрпримерами, непусто, и несу¬
щественной — в противном случае.
Введем величину Z\]lr(S) следующим образом:
II, если вершина Щ является контрпримером
для вершины VI;
О в противном случае.
Если вершина V\ (S) не имеет потомков, то
Zii(S).^^(S)- (8.2)
В противном случае
^(5) = ni:‘(5)V
VI V (сё rKx{S+!)£-( £ Zfft(S + l)^V (8.3)
\К1&Й \K2B1\idKl) )))
Здесь А —множество всех пар (г£, т].^) наборов индексов вер¬
шин /-графов Gr <= ик, Gi и?к, обладающих следующими свой¬
ствами:
1) rjj = Vv ^2, • • ч imi) — множество индексов вершин Gr, опре¬
деляющее некоторое подмножество потомков вершины Vx;
2) т]з = (/(, /г, ..., fmV) — множество индексов вершин Gh опре¬
деляющее некоторое подмножество потомков вершины Vу,
3) x\2{Ki) — некоторое подмножество Лг такое, что ни одно из
выражений Z^r(S + 1): К2*=Г[г(К\) не обращается в ноль;
4) подграф, полученный в результате выделения в Gr вершипы,
индексы которых входят в i]j, покрывает подграф потомков верши¬
ны V] при условии, если считать значение веса каждой вершины
V%2: К2 е т\1 (К1) отличным от веса вершины VrKl.
Таким образом, величина Zi\lr(S) обращается в единицу, либо
если веса вершин V\ и V] различны (т. е. РпЛ^) = 0’ либо, если
найдется совокупность tjJ потомков V^i вершины V\ (им соответ¬
ствуют переменные XrK1: Ki ^г\[) такая, что образованный ими
подграф покрывает подграф потомков вершины V\ при условии,
что для каждой вершины V^i имеется совокупность исходящих из
8.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ
293
Vlm из списка у\[(К\)
Формулы типа (8.2) и (8.3) мы будем называть в дальнейшем
Z-выражениями. Пусть, далее,
Выражение UT обращается в единицу, если только в /-графе G,
найдется /-подграф, покрывающий все контрпримеры. Если под¬
ставить в (8.4) все входящие в него Z-выражения вплоть до по¬
следнего уровня и раскрыть все скобки, то получим некоторую
дизъюнктивную нормальную форму (ДНФ), каждая импликанта
которой соответствует одному из покрывающих /-подграфов пер¬
вого уровня /-графа Gr.
Для получения искомого множества RK требуется из каждой
ДНФ, соответствующей некоторому UT, выбрать и поместить в RK
некоторое подмножество импликант так, чтобы:
— U, = 1 для каждого г: Gr <= ик,
— число вершин каждого из /-подграфов, соответствующих вы¬
бираемым импликантам, было по возможности, минимально;
— число /-графов из vK, на которые наложим каждый из вы¬
бираемых /-подграфов, по возможности, максимально.
Однако, поскольку как сами Z-выражения, так и их произведе¬
ния имеют комбинаторную сложность, такой метод поиска обоб¬
щенных представлений RK класса К, в общем случае, не применим.
Ниже предлагается приближенный алгоритм ALj для решения
данной задачи. ALj предназначен для поиска множества Rr I
обобщенного представления класса К.
Алгоритм AL}.
Шаг 1. Установить множество существенных вершин для каж¬
дого пз графов данного класса. Удалить из них несущественные
вершины.
Шаг 2. S:=m— 1 (m — число уровней /-графов класса К).
Определить список Lo.
Шаг 3. Выбрать первую у-существенную неотмеченную верши¬
ну (S) S-ro уровня некоторого /-графа GTi класса К и помес¬
тить ее в список Lo. Просмотреть все примеры данного класса и
поместить в список Lo все у-существенные вершины V\ (S') дан¬
ного уровня такие, что (оЦ = сщ и &Ц = Q|. Пометить выбранные
вершины.
Шаг 4. Для каждой вершины Lj(S) из списка Lo построить
множество Si импликант, обладающее следующими свойствами:
— число импликант, входящих в Si, ограничено некоторым чис¬
лом (в конкретных случаях jVj выбиралось от к до 2к, где к —
максимально возможное число потомков вершин /-графов из vK);
Ur= & Z\[lr (1) eg X\ (1).
(8-4)
294
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
— имшшканты из 5г соответствуют /-подграфам, исходящим
из и удовлетворяют ряду критериев, изложенных ниже;
— /-граф, полученный в результате объединения /-подграфов,
соответствующих импликантам из S[, покрывает все r-контрприме¬
ры для вершины V\.
Для получения множеств S\ служит алгоритм AL*, приводп-
мый ниже. Обозначим через Sl0 объединение множеств S\ по всем
элементам списка Lo. Если S — 1, то перейти к шагу И.
Шаг 5. Для каждой вершины Ei(S') из списка Lo построить
матрицу М\, строки которой соответствуют импликантам из S\,
а столбцы — г-контрпримерам для вершины V\ (S). На пересече¬
нии строки к п столбца j стоит 1, если /-подграф, соответствующий
данной импликанте, покрывает данный контрпример, и 0 — в про¬
тивном случае.
Шаг 6. Построить единую матрицу М0 следующим образом.
Строки матрицы М0 будут соответствовать всем возможным раз¬
личным (т. е. множества, задаваемые графами, соответствующими
данным импликантам, не совпадают) импликантам из SLo. Матри¬
ца Ма состоит пз нескольких фрагментов, каждый из которых со¬
ответствует одной из матриц М\. В i-м фрагменте матрицы Ма /-я
строка равна той строке М\, которая соответствует данной импли¬
канте. Если такой строки в М\ нет, то j-я строка данного фраг¬
мента матрицы Мя будет нулевая.
Шаг 7. Решить задачу минимального покрытия столбцов матри¬
цы М0, минимизируя число переменных, входящих в запись покры¬
тия. Для этой цели используется эвристический алгоритм покрытия,
основывающийся на последовательном включении в покрытие пм-
пликант, имеющих наилучшую оценку. Оценка учитывает число
вершин подграфов, соответствующих выбираемым импликантам и
число покрываемых ими контрпримеров. Отметим следующие осо¬
бенности задачи покрытия в данном случае. Допустим, что на не¬
котором шаге алгоритма в покрытие была включена некоторая
импдпканта Im е SLo. Тогда i-му фрагменту Ма соответствует под¬
матрица Мшокрытия контрпримеров вершин V\. Положим, что для
импликант Im, Im' s SLo имеются равные им импликанты в списке
и допустим, кроме того, что на данном шаге имеются непокры¬
тые еще контрпримеры в данном фрагменте. Рассмотрим в нем
строку, соответствующую Im'. После выбора имшшканты Im дан¬
ная строка может измениться, а именно, в ней появятся единицы
в столбцах, соответствующих тем контрпримерам, которые покры¬
ваются /-подграфом, получаемым в результате объединения подгра¬
фов, соответствующих импликанте Im' и импликантам, уже вошед¬
шим в покрытие данного фрагмента, но не покрываются ни одним
из этих /-подграфов по отдельности. Помимо этого, при подсчете
8.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ
295
числа переменных в Im', переменные, уже вошедшие в запись по¬
крытия рассматриваемого фрагмента, не учитываются.
Шаг 8. Удалить из множества S\ имшшканты, не вошедшие
в покрытие.
Шаг 9. Очистить список Lo. Если на данном уровне оста¬
лись еще неотмеченные у-существенные вершины, то перейти
к шагу 3.
Шаг 10. 5 := 5 — 1. Перейти к шагу 3.
Шаг 11. Формирование искомого множества Rk- Будем считать,
что корневые вершины всех /-графов из vK, wK взвешены одина¬
ково, т. е. список Lo включает все корневые вершины графов из vK.
На данном уровне списки S\ строятся таким образом, чтобы под¬
графы, соответствующие входящим в них импликантам, покрывали
все контрпримеры (в данном случае, это GL ^ wk). Построим мат¬
рицу Mi, строки которой соответствуют всем различным импликан¬
там (непзоморфным подграфам) из Slo, а столбцы — примерам
класса К. На пересечении строки il и столбца i2 ставится 1, если
Си е m(gi2) н 0, в противном случае. На данной матрице решается
задача покрытия с учетом требования Т4 (см. п. 8.3). Подграфы,
соответствующие выбранным импликантам, включаются в мно¬
жество Rk-
КОНЕЦ.
Алгоритм ALj выделяет из примеров класса К максимально
сходные между собой покрывающие подграфы.
Для получения множеств SI покрывающих импликант на ша¬
ге 4 алгоритма AL} служит алгоритм ALj. Пусть + 1), .. .
.. ., {S + l)j— совокупность непосредственных потомков вер¬
шины V\ (S), a Sj ..Srjv— соответствующие им множества
импликант, полученные после обработки (£+1)4:0 уровня. Обозна¬
чим через g\ /-подграф, включающий в себя вершину V-, вершины
Vj , ...,F)V, а также все вершины, входящие в /-подграфы, соот¬
ветствующие импликантам из Sj , ре( 1, v) (и все ребра, соединя¬
ющие эти вершины в Gr). В процессе работы алгоритма AL) при
получении списка S\ строится дерево поиска D0, каждой верши¬
не которого ставится в соответствии некоторый подграф /-гра¬
фа й.
Алгоритм ALj.
Шаг 1. Поставить в соответствие корневой вершине дерева D0
граф g\. Ввести в список S\ импликанту, соответствующую данно¬
му графу. Перейти к шагу 3.
Шаг 2. Произвести ветвление вершины и дерева D0 соответству¬
ющей наилучшей (р = max) непомеченной импликанте из списка
296
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
S\. Ветвление производится следующим образом. Вершина де¬
рева D0 является потомком вершины щ если или
— /-подграф Ojj /-графа g\, соответствующий вершине и-^, по¬
лучен из /-подграфа сг,2 в результате удаления из сг^ некоторой
вершины Vrjp (S + 1), р~ l,v, вместе со всеми ее потомками, пли
— /-подграф Oj получен из а,- посредством удаления из Oj2 не¬
которого подграфа, соответствующего одной из импликант множе¬
ства у iSj , причем реально удаляются лишь вершины, отсутству-
ip
ющне в других подграфах, входящих в
Шаг 3. Каждому /-подграфу а графа g\, соответствующему не¬
которой вновь построенной вершине дерева D0, поставить в соот¬
ветствие оценку р(о), вычисленную по следующим принципам:
— число ni вершин /-графа а, по возможности, минимально;
— число п2 контрпримеров, покрываемых данным подграфом,
по возможности, максимально;
— число пЗ вершин из Lo таких, что о изоморфно наложим на
один из /-подграфов, имеющих корнем данную вершину, по воз¬
можности максимально.
Оценка р(о) ищется в виде некоторой функции от ni, п2, пЗ:
р(о) = /(и1, п2, пЗ), например р (о) = (пО — ni + 1) (а2 п2 + а3 пЪ),
или р (о) = oll ni + а2 п2 + пЗ, где пО— число вершин gi (в ре¬
зультате моделирования по первой формуле было выбрано а2 = 1,
а3 = 1).
Шаг 4. Если в списке S\ имеются свободные позиции, то туда
помещаются нмпликанты, соответствующие нанлучшим (р (о) ==
= max) из полученных /-подграфов.
В противном случае, импликанта, соответствующая наилучше¬
му нз найденных подграфов о*, помещается на место наихудшей
(р (с*) = min) нмпликанты ex* списка такой, что
а) р (о*) > р (а*),
б) при условии замены ст* на о* число контрпримеров, покры¬
ваемых /-подграфом, являющимся объединением подграфов из Si,
не уменьшается. Процесс повторяется до тех пор, пока это воз¬
можно.
Шаг 5. Пометить импликанту из списка Si, соответствующую
раскрытой вершине дерева Da. Если в списке S% остались еще не¬
помеченные нмпликанты, то перейти к шагу 2.
В противном случае, КОНЕЦ.
Проиллюстрируем работу алгоритма AL} на примере.
Пример 8.2. Допустим, что в пределах некоторого района
энергосистемы решается задача повышения напряжения в некото¬
рой точке П энергосети (П — потребитель). Будем строить обоб¬
8.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ
297
щенное представление класса К, включающего те состояния энер¬
госети, для которых возможно решить данную задачу за счет вклю¬
чения резервной мощности (РМ) на некоторой станции СТ. Состоя¬
ния энергосети отображаются на /-графах (см. рис. 8.8). Мы со¬
храняем введенные ранее обозначения (см. рис. 8.4), причем будем
помечать звездочкой ту точку сети, где необходимо повысить на¬
пряжение, а также станцию, на которой включается резервная
мощность. Алгоритм точечного обобщения не будет удалять эти
вершины из примеров класса К. К контрпримерам будем относить
сети, на которых решение поставленной задачи либо невозможно,
Рис. 8.8
либо не требуется. В целях доступности изложения задача сильно
упрощена.
В режиме обучения системе предлагается 3 примера и 3 контр¬
примера объектов (состояний энергосети) класса К. На рис. 8.8
представлен /-граф, соответствующий первому примеру, заданному
для класса К, а в таблице 8.1 приведены веса вершин всех /-гра¬
фов — примеров и контрпримеров класса К, которые полагаются
структурно изоморфными (для каждой пары /-графов из vK и wK
имеется два варианта наложения с точностью до совпадения типов
вершин). Через ТС обозначен тип станции: Т — для теплостанций
и Г — для гидроэлектростанций. Поскольку СВ «быть связанным
посредством ЛЭП» — единственный предикат в системе, предикат¬
ные вершины для удобства не вводятся. Веса вершин 1-^7 совпа¬
дают для всех графов.
298
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Алгоритм ALj начинает работу с обработки вершин второго
уровня, деля их на три группы: вершины с весом П, ЛЭП и СТ
(он = со,-, Q; = Qj).
Таблица 8.1
Номер
вершины
Примеры класса X
Контрпримеры класса К
1
2
3
1
2
3
8
100
100
100
0
100
100
9
Л
Л1
лг
л
л
л
10
50
100
500
50
50
50
11
лг
лг
л
лг
лг
лг
12
100
100
100
100
50
100
13
СТ
С2
СТ
СТ
СТ
СТ
14
Г
Г
Г
Г
Г
Г
15
100
50
100
100
100
100
16
сг
СТ
сг
С2
сг
сг
17
т
т
т
Т
т
т
18
100
100
100
100
100
50
К первой группе относятся вершины V\, V\, Fg, единственным
контрпримером для которых является вершина FJ (шестая верши¬
на первого контрпримера).
Во вторую группу входят вершины VI, V\, V\, V%, V\, V\,
контрпримерами для которых являются V\, V\, V\, V2, V\, F{j.
Списки Sj для каждой из этих вершин выглядят следующим об¬
разом:
Si = [XlX'A XlXl XlXlо), Lo = {Fi Fi, V\, V\, Fi V*},
Cl I ylyl yl ylyl ylyl 1
D4 = {А4ЛпЛ121 a4A11i A4 12 ) i
o2 I у‘2 V2 y2 y2 y2v2 1
*32 = I A 2 A 9A IOi A2A9? A 2 A 10 M
С2 ( y2 y2 y2 V2V2 V2 V
*>4 — |A4A11A12, A4A11, A4A
c3 f уЗуЗуЗ уЗуЗ уЗ уЗ \
02 — I А 2 А0А10’ А2А9? А 2 А10Ь
03 f уЗуЗ v3 уЗ уЗ уЗуЗ 1
*34 — 1А4АпА12, Л4А41, А4А12).
Импликантам из множества S = U Si соответствует множе-
г,г
ство различных между собой подграфов, приведенных на рис. 8.9.
8.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ 299
Матрица М0 покрытий для вершин второй группы имеет вид
Номер
фрагмента
<у\)
*М)
со
to to
4(v0
b(vl)
»«)
контрпример
246
1345
123456
1345
12356
123456
£l
111
0000
000 000
0000
00 000
000 000
ёг
111
0000
010 101
0000
00 000
010 101
ёз
101
0000
000 000
0000
01 001
000 000
ёи
ООО
1111
000 000
1111
00 000
000 000
ёъ
ООО
1101
000 000
1101
10 110
000 000
ёз
ООО
1111
101 110
1111
00 000
101 110
ё7
ООО
0000
111 111
0000
00 000
111 111
ёз
ООО
0000
000 000
0000
11 111
000 000
где каждый фрагмент соответствует некоторой вершине пз списка
Lo, строкам матрицы М0 соответствуют подграфы из множества Q
(см. рис. 8.9), а столбцам каждого фрагмента — контрпримеры для
соответствующей вершины (рассматриваются лишь контрпримеры,
покрываемые /-подграфом, исходящим из данной вершины).
(Л2 ) (/7С. 10o')
^ f ч
( лзп )
CZD ( ПС. 100 )
В результате работы алгоритма покрытия (с учетом числа вер¬
шин покрывающих подграфов и числа покрываемых ими контр¬
примеров) были выбраны следующие /-подграфы:
ge, соответствующий импликантам XlXj2, Х\Х\9, Х\Х’12,
g2 — импликанты Х]Х], Х\Х\,
gs — импликанта Х2Х9Х'
10-
300
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Остальные нмпликанты из списков S\ (£ = 2, 4; г=1, 2, 3)
удаляются.
В результате обработки вершин первой группы в списках Si
остаются нмпликанты:
с»1 iVlVll О2 f v2 V2 I o3 Iv3v3\
Об — |ЛбЛ8}, Об — (ЛбЛ8}, 06 — [Л6Л8|.
Вершины третьей группы образуют список: Lo = {F3, V\, Fg,
F5, Л, ^1)- Списки покрывающих импликант в данном случае
формируются и обрабатываются аналогичным образом, в резуль¬
тате чего получается следующее:
SI = да}41, si = {ВД7, XlXUl
С2 \ v2 V2 V2 V- \ 02 f v2 V2 v2 V2 V2 V2 I
^3 = 1А3А14» A3A13 I ? ^5 ~ lA5A17> A5A18> A5A16)i
c»3 ( \ f v3\r3 уЗуЗ 1
^3 — lA3A14M ~ I A5A 17? A5A18 J •
На рис. 8.10 показан граф Glt полученный из 1-го примера
класса К после обработки вершин второго уровня.
Рис. 8.10
Далее алгоритм переходит к обработке вершин первого уровня
/-графов примеров класса К. Поскольку все корневые вершины
взвешены одинаково, в список Lo входят вершины V\, V\, F7.
Проиллюстрируем работу алгоритма ALj на примере построе¬
ния списка S\. Считаем, что | S\ \ 10. В табл. 8.2 приведена по¬
8.4. АЛГОРИТМЫ ТОЧЕЧНОГО ОБОБЩЕНИЯ
301
следовательность импликант (/-подграфов), попадающих в этот
список.
В первой строке стоит импликанта, соответствующая исходному
/-графу (см. рис. 8.10). В первой позиции таблицы стоит номер
данной импликанты в списке S\, во второй позиции — список но¬
меров вершин /-графа Gu ее образующих, в третьей позиции —
Таблица 8.2
Номер
в списке
*i
Номера вершин J-подграфа, соответст¬
вующего данной импликанте
Номе р
предка
Удаленная
импликанта
Оценка
1
1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 17, 18
—
—
5
2
1, 3, 4, 5, 6, 8, 12, 14, 17, 18
1
Х{ Х\
18
3
1, 2, 4, 5, 6, 8, 9, 12, 17, 18
1
Ч
15
4
1, 2, 3, 4, 5, 6, 8, 12, 14, 17, 18
1
XI* XI
12
5
1, 2, 3, 4, 5, 6, 8, 9, 12, 17, 18
1
Ч*
10
6
1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 18
1
*1т
10
7
1,4, 5, 6,8, 12, 17, 18
2
*3 Ч*
30
8
1, 3, 5, 6, 8, 12, 14, 18
2
У1* У1
5 17
24
9
1, 4, 5, 6, 8, 12, 18
7
У1* У1
5 17
36
номер (i) предка (т. е. той импликанты, в результате удаления из
которой некоторого подграфа получилась данная), в четвертой —
импликанты, соответствующие удаляемым из 1-го подграфа верши¬
нам (вершины, помеченные звез¬
дочкой, реально не удаляются)
и в пятой — оценка р, вычислен¬
ная по формуле р = (и0 — щ)Х
Х(п2 + п3), где и0 = 13 (увеличен¬
ное на 1 число вершин максималь¬
но возможного подграфа) тг4 —
число вершин импликанты, п2 и
п3 — число примеров, в которые
входит данная импликанта и чис¬
ло контрпримеров, которые она
покрывает. Поскольку в данном
случае идет обработка первого уровня, то в список помещаются толь¬
ко импликанты, покрывающие все контрпримеры (так, при удалении
из Gi вершины 12, второй контрпример не будет покрыт). Ветвле¬
нию подвергаются импликанты, обладающие наибольшей оценкой.
( ГМ.100 ) ( пс.юо
18
С РМ. Юр)
Рис. 8.11
302
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Девятая имплпканта обладает тем свойством, что при удалении
из нее любой вершины, она перестает покрывать все контрприме¬
ры. Более того, это единственная импликанта (подграф графа G4),
обладающая данным свойством (см. рис. 8.11).
При обработке вершин V\ и Е® списка Lo получаем нмпликан-
ты, соответствующие подграфам, изоморфным, приведенному на
рис. 8.11. Полученный /-граф £к, таким образом, является обоб¬
щенным представлением класса К: Rk= (gx).
8.5. Алгоритмы дизъюнктивного обобщения
семантических графов
При дизъюнктивном обобщении используются операторы TV,
TaV.
Назовем М-склейкой вершин V' и V" графов G' и G" замену
значений со' и со" весов этих вершин множеством а таким, что
ю'ео и а"ео, если о/ и со" —некоторые фиксированные значе¬
ния из множества QT, определяемого типом т вершин V' и V" и
со'^а, со" ^ а, если о/ и со" —подмножества Qt.
Если QT является конечным множеством, то а = {со', а»"} (о =
= ©'11(0"), т. е. а определяется перечислением элементов.
Если Qt — множество действительных чисел (или некоторое его
подмножество), то а можно определить как минимальный проме¬
жуток, включающий как о/, так и со".
Если в £2* имеются некоторые известные поименованные под¬
множества т\, т\, . .., т\, то о может определяться как сг = m\(i =
= 1, s): со', со" е= т\ (со', со" с т\).
В случае если Qt — векторное пространство размерности боль¬
ше 1, то о может быть получено в результате определения разде¬
ляющей поверхности F в
х е а <=*- F (х) < 0.
В случае когда со' и со" —множества, а может быть определено
как пх объединение.
Склепка вершин V' и V" представляет собой результат приме¬
нения оператора TaV к данным вершинам.
Мы полагаем, что графы G' и G" либо относятся к множеству
vK примеров класса К (ко множеству и>к его контрпримеров), либо
получаются из графов бхеУх^ею^) в результате примене¬
ния к ним операторов обобщения TV, TaV.
Склейка вершин V' и V" графов G' и G" будет называться
корректной, если для полученных в результате графов Gx и Gx
выполняются заданные ограничения (условие D3 неналожпмости
на контрпримеры в п. 8.3).
Назовем склейкой графов G' и G" такую совокупность % склеек
их вершин, что:
8.5. АЛГОРИТМЫ ДИЗЪЮНКТИВНОГО ОБОБЩЕНИЯ
303
а) все склейки из к в совокупности корректны;
б) полученные графы изоморфно наложимы с точностью до
совпадения весов всех вершин и ребер: Gx = d'x = Gx.
Обобщенный граф Gu полученный в результате, будем в даль¬
нейшем также называть склейкой графов G' и G".
На рис. 8.12 приведены примеры склеек графов G' и G". Gx и
G2 — обобщенные графы, полученные в результате осуществления
различных между собой со¬
вокупностей и %2 скле¬
ек вершин графов G' и
G".
Рассмотрим теперь ал¬
горитм ALq дизъюнктив¬
ного обобщения графов
общего вида.
Алгоритм АЦ.
Шаг 1. Образовать спи¬
сок L. Поместить в спи¬
сок L все графы из мно¬
жества vK.
Шаг 2. Для каждой па¬
ры графов (Gi, Gj) из
списка L образовать множество
фов такое, что:
— число обобщенных графов в S\ не превышает некоторого Nx
(в конкретных алгоритмах Nx было выбрано равным 10);
— графы в S{ упорядочены согласно критерию Кг, определен¬
ному ниже.
Алгоритмы формирования множеств S{ рассматриваются в даль¬
нейшем.
Шаг 3. Построить граф ^о, называемый графом склеек, следую¬
щим образом. Число вершин графа равно числу графов в L. Вер¬
шины Fi0 и Vj0 графа у0 связаны ребром г\, если множество S)
склеек непусто. Ребру г\ приписывается вес, равный числу элемен¬
тов в S{. Нижней оценкой для искомого минимального числа обоб¬
щенных графов может служить число р0 — минимальное число
полных подграфов графа "(о.
Шаг 4. Начинает работу алгоритм эвристического поиска. Стро¬
ится дерево DR поиска, в котором вершинам соответствуют неко¬
торые множества тщ обобщенных графов, а ребрам — осуществле¬
ние склейки некоторой пары графов.
Пусть список Ь\ содержит все склейки, вошедшие в множества
*S£i (rl, г2 = 1, п) — число примеров класса К). Тогда пусть корню
дерева поиска соответствует исходное множество примеров тп0 =
Рис. 8.12
S3 корректных склеек данных гра-
304
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
= [Gk\ = vK. Припишем корневох! вершине дерева DR оценку
р0 = Цо, где Цо — минимальное число полных подграфов в 'Yo- По¬
томком вершин U, дерева DR будет вершина Uh которой соответ¬
ствует множество обобщенных графов, полученных в результате
осуществления над парой графов из множества тщ одной из скле¬
ек, имеющихся в списке L\.Тогда раскрытие вершины Ut дерева DR
подразумевает порождение всех тех потомков вершины С/,, которые
еще не были порождены к данному моменту поиска. Чтобы полу¬
чить оценку для вновь построенной вершины Uh для каждого клас¬
са строится граф уз и вычисляется оценка ^ + а2щ, где щ —
минимальное число полных подграфов у3-, щ — число склеек списка
Ь\, оказавшихся некорректными в результате осуществления дан¬
ной склейки. В процессе моделирования на ЭВМ были исследованы
следующие варианты:
1) cti = 0; сс2 = 1; 2) at = l; а2 = 1;
3) ai = l; а2 = 0
(склейка тем «лучше», чем меньше ^).
Было выяснено, что учет второго слагаемого, хотя и дает не¬
сколько более точную оценку, связан, однако, со значительными
затратами машинного времени, в результате чего при конкретной
реализации был выбран третий вариант.
Список Ь\ получается пз L\ следующим образом. Допустим,
что склеиваются графы Grl и Gr2. Тогда из L\ удаляются все мно¬
жества 5^1, *ST2, v = 1, п и добавляются мпожества Svr, где г — но¬
мер, приписанный графу G, полученному в результате осуществле¬
ния данной склейки. Из остальных множеств 5Д склеек (il, i2¥=
Фг1, г2) удаляются склейки, запрещаемые данной (т. е. такие,
что в результате осуществления (Grl, Gr2) и (Git, Gi2) перестает
выполняться условие m(RK) П т (R-ц) = 0)- Такая ситуация мо¬
жет возникнуть, если множества Rk и Як ищутся параллельно и
Gh, Gi2 е К. При подсчете щ в него включается число вершин гра¬
фа ■у,, смежных как с Vri, так и с Vn, но не смежных с Vr в ys.
Эвристических! поиск осуществляется по следующим прин¬
ципам:
— строятся в первую очередь вершины, имеющие наилучшую
(наименьшую) оценку;
— число вершин на каждом уровне дерева DR не превосходит
некоторого числа N3 (при конкретнох! реализации Ns было выбрано
равным 5).
Множество тп{ обобщенных графов, соответствующее висячей
вершине дерева DR и включающее в себя наименьшее чис¬
ло элементов, будем считать решением поставленной задачи:
RK = тпи
Алгоритм AL0 является общим для всех типов графов. Дан¬
ных! алгоритм осуществляет эвристический поиск на дереве DR.
5.5. АЛГОРИТМЫ ДИЗЪЮНКТИВНОГО ОБОБЩЕНИЯ
305
Эвристические критерии и ограничения (ограничивалось число
исследуемых склеек пар графов и число вершин на каждом уровне
дерева DR) были выбраны в процессе моделирования на ЭВМ.
С другой стороны, алгоритмы получения множеств Srrl склеек
для случаев графов общего вида и /-графов значительно отлича¬
ются друг от друга.
Рассмотрим алгоритм получения множеств склеек 5г? графов
Gn, Gr2 общего вида, являющихся либо примерами класса К, либо
их обобщениями. Будем выделять следующие случаи:
а) веса вершин графов являются либо элементами конечных
множеств, либо действительными числами;
б) веса вершин графов могут быть точками векторных прост¬
ранств размерности больше 1.
Алгоритм склейки для случая (а) обозначим А0,
Пусть для каждого типа т вершин в пределах множества Qt опре¬
делены поименованные подмножества т\, т%, . .., mTT: т\ s Q-с
и заданы алгоритмы распознавания элементов а е Qt относительно
этих подмножеств.
Склейка вершин V и V" графов G' и G" (графы G' ц G"
принадлежат множеству vK, или же получены в результате обоб¬
щения графов из vK), имеющих тип т и веса со', со" соответствен¬
но, приводит к замене со' и со" в каждом из графов множеством о,
где о = а4 U о2 U ... U аг.
Каждое из a,, i = 1, г может являться:
— отдельным значением, если Q* — конечное множество;
— интервалом (отрезком) значений вещественных чисел;
— одним из множеств т\, т\, т\, .. ., т.тт.
Множеству а, полученному при склейке вершин V' и V", при¬
писывается оценка
8Т = ai + a2 + ... + ar, aj^l, i—l,r, (8-5)
причем каждое пз а, зависит от вида соответствующего о,-. Приве¬
дем алгоритм Al поиска множества склеек графов Grl, Gr2.
Через 7V0 обозначим максимально возможное число элементов в SJ|.
Алгоритм А].
Шаг 1. Построить матрицу М0 (йХв), строки которой соответ¬
ствуют вершинам графа Grl, а столбцы — вершинам Gr2;
0, если тип г-ой вершины Grl не совпадает с типом
/-ой вершины Gr2 или же известно, что не существует
наложения Grl на Gr3, включающего наложение данных
вершин;
t{, где tl — ссылка на список т{ возможных склеек дан-
( ных вершин.
20 в. H. Вагпн
К {h /')
306
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Каждый список Т\ склеек вершин Е,- е Grl и V, е Gr2 содержит
перечисление всех возможных вариантов av их склеек, каждому из
которых соответствует оценка б^, вычисленная по формуле (8.5).
Шаг 2. Используя матрицу М0, найти корректную склейку гра¬
фов Gn и Gr2 такую, что суммарная оценка склеек их вершин
минимальна:
Уо = 2 8?j = min (yv).
i,i V
Если такой склейки нет, то конец; список S™ пуст.
Поместить граф G, полученный в результате осуществления
найденной склейки, в список Sll вместе с его оценкой у0.
Шаг 3. Построить дерево D поиска. Корневой вершине V0 его
соответствует матрица Ма вместе с множеством списков склеек
вершин, а также найденная минимальная склейка на М0 и ее
оценка у0. Вершина V} является непосредственным потомком вер¬
шины Vi на дереве D поиска, если множество (J склеек
получено в результате удаления из некоторого списка Т)и2, отно¬
сящегося к вершине V(, одного элемента, соответствующего мини¬
мальной склейке, определенной для вершины Матрица Mj сов¬
падает с матрицей Mt, если только список T)i,j2 не оказался пуст;
в этом случае М,(] 1, j2): = 0. Для новой вершины Vs ищется ми¬
нимальная склейка и определяется оценка ^ Если такой коррект¬
ной склейки нет, то Vj удаляется из дерева поиска.
Поиск множеств наилучших склеек производится по следую¬
щим принципам:
— в первую очередь строятся вершины дерева D, обладающие
наименьшей оценкой, причем соответствующие им обобщенные
графы помещаются в список S™ вместе со своей оценкой;
— если |8'ri| = A,'0, то поиск прекращается и конец;
— если дальнейшее ветвление невозможно, конец.
Рассмотрим случай (б), т. е. случай, когда веса вершин графов
примеров и контрпримеров класса К могут быть точками конечно¬
мерных векторных пространств размерности больше 1. Без ограни¬
чения общности можно считать, что этим свойством обладают все
вершины данных графов.
Множества о, приписываемые вершинам типа т обобщенных
графов, будем искать в виде о = щ U о2 U ... U ог, где о; либо явля¬
ются некоторыми поименованными подмножествами областей из¬
менения весов графов; m\ ^ QT, либо определяются разделяющими
поверхностями: F{(x)< 0. В последнем случае мы будем требовать
существования такого вектора малых положительных чисел б =
= (8i, б2, ..., б„), чтобы классы К и К (К — класс контрпримеров
для К) были б-разделимы, т. е. б-разделимы любые два графа Gi
и G2: Gi е К и G2 е К, для которых т (Gi) П m(G2) = 0.
8.5. АЛГОРИТМЫ ДИЗЪЮНКТИВНОГО ОБОБЩЕНИЯ
307
В теории распознавания образов разделяющие поверхности обыч¬
но задаются либо линейными или кусочно-линейными функциями,
либо являются поверхностями второго порядка. Мы выбрали по¬
следний случай.
Пусть Gri, Gr2 являются примерами класса К, или же получены
из них в результате обобщения. При работе алгоритма А% склейки
для каждох! вершины V графов Gri, Gr2 определены следующие
egличины:
— множество 0„ значений, задаваемое некоторо1“х совокуп¬
ностью разделяющих поверхностей;
— множество Xv = {xl, xl, . . ., х\\ значеншг весов вершин-при¬
меров^ класса К, по которым было построено данное сг„: сг„,
7 = 1, s (т. е. наххдется oj. = {а: | .F£, (ж) 0) такое, что ^(а^,)^0);
— множество Yy={y\, . ..,г/£1 значений весов графов из.
Wk (yl Щ /' = У р), использованных при построении а„: для каж¬
дого yl, = 1, р и каждого al i = 1, г выполняется y3v ф al
(Fl U)> 0).
Если графы Gri и Gr2 являются элементами обучающей! выбор¬
ки, то для них Х„ ={со1}, Yv = 0, a„={coJ, где хо„—вес выбранной
вершины V.
Рассмотрим теперь алгоритм А$ поиска списков наилучших
склеек, использующий аппарат разделяющих поверхностей.
Алгоритм А2а.
Шаг 1. Построить таблицу Т0, строки которой соответствуют
вершинам графа GrU а столбцы — вершинам Gr2.
Элемент таблицы T0(i, j) содержит:
— признак запрета, если склейка вершин У,- <= Gri и V} е Gr2
невозможна (т. е. вершины неналожимы или же их склейка не¬
корректна) ;
— множество X — XtU Xj значений весов, которые должны вхо¬
дить в множество а, получаемое в результате склейки;
— множество У = У.- U У,- значений весов, не содержащих¬
ся в а;
— множество а, построенное в пространстве QT в рамках тео¬
рии распознавания образов. Элементы X считаются положительны¬
ми примерами для множества о, а элементы у е У — контрприме¬
рами. Множество о определяется совокупностью разделяюхцих по-
BepxHocTeii второго порядка, поиск которых производится с исполь¬
зованием симплекс-метода.
Вычислить оценку б<3- данной склейки сх вершин У; и У,; б,-,- про¬
порциональна числу членов в а.
Шаг 2. Нахйти очередное, еще не построенное к данному момен¬
ту поиска наложение графов Grl и Gr2 с минимально возможной
оценкой 7 = 2 Sjj.
i,j
30*
508
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИИ ПО СТРУКТУРАМ
Если граф G, полученный в результате осуществления склейки
Gn и Gr2, соответствующей! данному наложению, удовлетворяет ус¬
ловию корректности (ДЗ): m(G) П wK = 0,m (G) П т (ciR) = гДе
—j
Gg — графы, полученные к данному моменту обобщения на мно¬
жестве контрпримеров, то записать G в список S™ и перейти
к шагу 3. В противном случае, построить дерево d поиска коррект¬
ных склеек следующим образом. Корневой вершине d соответству¬
ет граф G. Если некоторой вершине и< дерева d соответствует граф
Gi, то в случае, если для графа G( выполняется условие корректно¬
сти (ДЗ), данная вершина является тупиковой. В противном слу¬
чае, пусть G — некоторый контрпример, на который наложим граф
G,-, и пусть /: Gi~*-G—некоторое конкретное наложение. Тогда
строится множество {иц, Щг, Щг) потомков и{ по числу вер¬
шин в Gi.
Граф G}i, 1=1, п — строится следующим образом:
— полагается G,; = G„
— рассматривается вершина Vг графа G, и тогда:
XiiGji): = Xi(Gi),
Yi(Gji): = 7i(Gi)U у'.
Здесь Xi(Gji), Yi(Gji)—множества X, Y, приписанные вершине
Vi графа Gji; Xi(Gi), Yt (G<) — соответствующие множества для вер¬
шины Vi графа Gi, у' — значение веса вершины V' контрпримера
G, на который происходит наложение Vt: V
Далее находится множество а, для вновь полученного множест¬
ва примеров и контрпримеров. Если а, получить не удается, то вер¬
шина иц удаляется из дерева d. Каждому наххденному графу при¬
писывается оценка у = и ветвятся в первую очередь вершины
ij
дерева d с наименьшей оценкой. Полученные корректные склейки
помещаются в список £>?. Если данный список уже заполнен, то в
дереве d не строятся вершины, оценки которых не меньше наи¬
большей оценки графов из списка SrrВ противном случае по¬
строенные склейки заменяют «наихудшие» из Srrl. Когда ветвление
закончено, перейти к шагу 3.
Шаг 3. Если имеются еще возможности наложения Grl и Grz,
то перейти к шагу 2.
КОНЕЦ.
Отметим, что реализация алгоритма Al в общем случае гораздо
сложнее, нежели реализация алгоритма А\, и оценки времени его
работы также существенно хуже. Во многих случаях удается полу¬
чить те же результаты более простыми методами.
Пусть — некоторое пространство весов вершин графов раз¬
мерности больше 1. Тогда поиск разделяющих функций Ft в об-
8.5. АЛГОРИТМЫ ДИЗЪЮНКТИВНОГО ОБОБЩЕНИЯ
309
щими методами неопределенных коэффициентов зачастую можно
заменить поиском на множестве заранее заданных конкретных
функций l-Pjl, в соответствие которым ставятся поименованные
подмножества т3х множества Ох: mi = [х | F) (х) 0]. Рассмотрим
пример.
Пример 8.3. На рис. 8.13 а, б приведено два примера состоя¬
ний энергосистемы, соответствующих рассмотренному уже ранее
об 1
Рис. 8.13
классу «повысить напряжение в толке у, для чего включить резерв
на станции х». На рис. 8.14 приведен контрпример для данного
класса. Считается, что примеры и контрпримеры получены после
этапа точечного обобщения. Известно также, что искомые значения
параметров «пропускная способность ЛЭП» и «резервная мощность
электростанции» зависят от требуемой мощности ТМ на данном
310
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
потребителе П. Таким образом, в вершинах У6 и V7 сетей решение
ищется в пространствах Qnc X QTM и 0РМ X 0Гм. Обычно известно,
что разделяющие поверхности в данных пространствах должны
иметь вид:
х2 ^ xi (х2 < xi): х2 е Qnc, xi е firM;
х2> ^ .rl (хЪ < :rl): хЪ е QPM.
Таким образом, определив множества
пг1={<а:1, ж2>|ж2 5s xi), mz={(xi, x2>\x2<xl),
m3={<xi, x3>\x3 > xi), mi={<x 1, хЗУ\хЗ < xi)
и применив алгоритм A\, получаем обобщенное представление RK
класса К, полученное в результате работы алгоритма дизъюнктив¬
ного обобщения (см. рис. 8.15).
Как уже отмечалось, алгоритм ALq не зависит от типа вход¬
ных структур; от типа структур зависят лишь алгоритмы Al, Al
поиска списков склеек графов, эффективность которых можно по¬
высить, учитывая особенности этих структур.
Разберем особенности алгоритмов дизъюнктивного обобщения
для случая /-графов, применимых для структур довольно большой
размерности.
Введем сначала понятие помеченного /-графа, получаемого в
результате применения оператора обобщения TS (см. 8.2) к ис¬
ходным структурам.
Помеченным 1-графом будем называть /-граф G, обладающий
следующими свойствами:
— среди вершин /-графа G имеются вершины, каждой из кото¬
рых приписана некоторая метка U^La, где La = {lu ..., 1п), такие
вершины называются помеченными;
— если некоторая помеченная вершина F'eG является непо¬
средственным потоком вершины V", то помечены все непосредст¬
венные потомки вершины V";
— если помеченная вершина V' уровня s смежна с вершиной
того же уровня, то их метки совпадают;
8.5. АЛГОРИТМЫ ДИЗЪЮНКТИВНОГО ОБОБЩЕНИЯ
311
— предки вершины, помеченных одной и той же меткой, совпадают;
— если среди непосредственных потомков некоторой вершины
V е G имеются вершины, помеченные различными метками, то вес
вершины V представляет собой множество пар Qv = ((^ip ^х)’ • • ■
..., (/ir, охг)), где li,h2, ..., hr — метки, приписанные потомкам
вершины V, а сщ, со2, • ■и, — значения (множества значений),
которые могут принимать веса вершин обобщенных /-графов. Каж¬
дой паре (Jij, (Oj) ставится в соответствие совокупность потомков
вершины V, помеченных меткой/^ (см. рис. 8.16). Вершину такого
типа будем называть альтернативной.
Рис. 8.16
—■- ^
При определении изоморфной наложимости /-графов G' и G"
альтернативная вершина V' е= G' наложима на V" е(?",еели име¬
ются элементы (Ь’а, (щ) е Qv и (L"a, от,-) <= Qv« такие, что сово¬
купность непосредственных потомков вершины У', помеченных
меткой Ь'а, наложима на совокупность непосредственных потомков
вершины V", помеченных меткой L" а, причем %= соДили со4р)(о;=/=
Ф 0). Наложимость остальных вершин определяется так же, как
в случае обобщенных графов.
Помеченный /-граф можно получить в результате осуществле¬
ния операции склейки несколько иного типа, нежели 4-склейка
(об 4-склейке говорилось в самом начале этого параграфа).
5-склейкой вершин V' и V" /-графов Grl и Gr% называется за¬
мена /-подграфов g' и g", исходящих из V' и V", помеченным
/-подграфам g, включающим в себя /-подграф g', вершины которо¬
го, являющиеся непосредственными потомками V', помечены мет¬
кой Ь’а, и /-подграф g", вершины второго уровня которого поме¬
чены меткой L"а. Корневой вершине полученного подграфа при¬
писывается пара (<Ь'а, со'), <5"а, со")), где со', со" —веса вер¬
шин V' и V" соответственно.
Понятия корректности 5-склейки и склейки /-графов аналогич¬
ны ранее изложенным. На рис. 8.16 приведен пример склейки
/-графов, где G0 — результат склейки /-графов G' и G". Здесь
312
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
вершины 1, 3, 6 /-графа G' склеиваются с вершинами 1, 3, 5
/-графа G" посредством 4-склейки, а вершина 2 графа G' — с вер¬
шиной 2 графа G" посредством 5-склепки.
Отметим основные особенности алгоритмов склейки /-графов.
1. Графы, входящие во множества Srr\ склеек /-графов Grl и
Gn, получаются в результате осуществления как 4-, так и 5-скле¬
ек вершин данных графов, причем 4-склейка предпочтительнее,
а 5-склейка тем «хуже», чем больше число вершин полученного
помеченного /-графа.
2. Поиск /-графов-склеек Gri и Grz происходит по уровням, на¬
чиная с верхних. Поиск и оценка склейки подграфов г-го уровня
осуществляется отдельно для каждой пары подграфов потомков
вершин Gn и Gri по принципам, изложенным в дизъюнктивном
обобщении семантических графов с учетом наложимости и значе¬
ния оценки склейки предков вершин данных подграфов и оценки
возможностей склейки потомков этих вершин методами направлен¬
ного перебора.
Построенные в результате работы алгоритмов точечного и дизъ¬
юнктивного обобщения обобщенные представления должны быть
корректными. Пусть по некоторой начальной выборке vk{Wk) по¬
строены обобщенные представления RK и 5-g классов К и К.
Обобщенные представления RK и 5^. считаются корректными»
если:
1. КП m(5K) = /0_
2. £Пт(%) = К.
3. m(RK) П К = 0.
4. т{Щ)ПК = 0.
Если хотя бы одно из приведенных условий не выполняется,
то обобщение считается некорректным.
В заключение рассмотрим взаимосвязь методов обобщения ин¬
дуктивной логики и методов структурного обобщения.
Плоткиным Г. Д. были предложены методы обобщения логиче¬
ских выражений (дизъюнктов и литер), использующие алгоритмы
«антиунификации» и принцип «наименее общего обобщения». Под
антиунификацией термов t, и t2 в алгоритмах обобщения дизъюнк¬
тов понимается применение к ним подстановки 0 ={ujxu и2/х2, ...
..., ип/хп), где хи ..., хп — переменные, ии ..., ип — термы, входя¬
щие в tu t2, такой, что G0 = G0-
Если рассмотреть алгоритм антиунификации двух литер, то не¬
трудно убедиться, что он сводится к последовательности применения
операторов N, NV к функциональным и именным вершинам семан¬
тических графов.
По аналогии с методом Плоткина для пары семантических гра¬
фов можно определить понятие наименее общего обобщения. Пусть
даны графы G' и G". Обобщенный семантический граф G° назы¬
8.5. АЛГОРИТМЫ ДИЗЪЮНКТИВНОГО ОБОБЩЕНИЯ
313
вается наименее общим обобщением G' и G", если G' е m(G°) пли
m(G')£m(G°) и G"^m(G°) или m(G" )^/n(G°); и при этом не
имеется семантического графа G* такого, что G*-\G° и G' е m(G*)
или m(G') £= m(G*) и G" е m(G*) или m(G")s m(G*).
Пусть далее требуется построить обобщенное представление
класса X; — множество примеров класса К и Гк — ограничения,
определенные для данного класса. В случае, когда не задана целевая
функция, определяющая «наилучшее» обобщение, а также
недостаточны или же вообще отсутствуют ограничения Гк, обобщен¬
ное представление RK класса К можно строить, исходя из принци¬
пов получения «наиболее интересных гипотез» (по Плотки-
ну Г. Д.). Пусть 3T{vK)—совокупность всех семантических графов,
являющихся наименее общими обобщениями пар семантических
графов из vK и удовлетворяющих ограничениям Гк. Далее
пусть vxK = ик (J ЗГ (vk), vk = vr (J (цк)> . .Vk = vk x\]3~ (v% *),
Обобщенное представление RK можно выбирать как подмноже¬
ство некоторого Kki исходя из заранее определенных критериев
получения «наиболее интересных гипотез».
Описанными принципами можно пользоваться при обобщении
выражений типа Ф =^~ L{tu t2, . ■., tr), где Ф — формула исчисления
предикатов первого порядка, имеющая вид конъюнкции литер;
L — литера.
Пусть имеется множество формул:
Ф1^/^, t\, ..., txr),
Фи1=^(^\ tf, ...,tT).
Будем строить обобщения для посылок вывода в приведенных
выражениях. Пусть К—класс формул Ф'’ таких, что Фv=$~L(tl, ...
...,^г). Данная задача может быть сформулирована как задача по¬
лучения обобщенного представления RK класса К и решаться ука¬
занным выше способом. При этом выдвигается дополнительное тре¬
бование о неприменении оператора NV к объектным вершинам, со¬
ответствующим термам, входящим в L. Рассмотрим пример.
Пример 8.4. (Плоткин Г. Д.) Пусть имеются два утвер¬
ждения:
1. «Если кусок железа 1 нагреть до температуры 1500°С, то он
расплавится».
2. «Если кусок железа 2 нагреть до температуры 2000°С, то он
расплавится».
Пусть BI — предикат «быть куском железа», HEAT — «на¬
греть», MELTS —«расплавиться». Тогда можно записать:
1. BI (bit 1) & HEAT (bit 1, 1500 °С) => MELTS (bit 1).
2. BI (bit 2) & HEAT (bit 2, 2000 °C) =*- MELTS (bit 2).
314
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Посылкам вывода в данных выражениях соответствуют семан¬
тические графы G1 и G2 (рис. 8.17 а, 6). На рис. 8.18 приведен
обобщенный семантический граф G0, соответствующих! наименее
общему обобщению графов G1 и G2. При этом
I о (ж, t) ~ BI (ж) & HEAT (х, t) & (1500 °С < t < 2000 °С)
и
Уж, t (IG0 (ж, t) METLS (ж)),
или «Если любой кусок железа нагреть до температуры от 1500 °С
до 2000 “С, то он расплавится».
г;
( вт') >( Si
НЕАТу^-*( Т° У* ( 1500°С ) | (MELTS )
J
Не:
| ( НЕ А Г Т ° У ( 2000° С ) | ( MEL TS )
Рис. 8.17
Принимая решение, что некоторый граф G относится к классу
К, производится проверка изоморфной наложимости хотя бы одно¬
го из G1 е RK на некоторых! подграф семантического графа G
(с учетом требований а), б), в) в 8.2). Если такое наложение
Г'
I
{melts') f-( BI *) ( r° ~)*—([1500°,20(]0оС})
I 4 /
j V /2
I
L.
p
Рис. 8.18
возможно, то Ge£ В противном случае делается вывод, что
G<£K. Если решение, по мнению эксперта, является ошибочным,
то производится корректировка обобщенных представлений.
8.6. СИСТЕМА УПРАВЛЕНИЯ ЭНЕРГООБЪЕДИНЕНИЕМ
315
8.6. Реализация алгоритмов структурного обобщения
в системе управления энергообъединением
Одной из основных особенностей энергосистемы как объекта оперативно-
диспетчерского управления является то, что способы вывода в подобных си¬
стемах базируются па методах классификации ц распознавания относительно
различных классов решений па данной предметной области. Так, состояния
системы, отображаемые на семантических сетях, объединяются в классы,
каждый из которых соответствует решению, например, принимаемому дис¬
петчером в данной ситуации.
Рассмотренные алгоритмы обобщения п классификации структурной ин¬
формации были реализованы в виде программных комплексов JGRAPH1 п
JGRAPH2 и использованы в рамках системы управления энергообъединетшем
для получения обобщенных представлений классов решений, формируемых
на основании обучающей выборки на множестве состояний энергосистемы и
соответствующих тем или иным оперативным решениям, принимаемым при
оперативно-диспетчерском управлении системой. Данные решения обычно свя¬
заны с необходимостью повышения или понижения напряжения в тех или
иных точках энергосети пли регулирования перетоков по ЛЭП и заключаются
во включении пли отключении линий электропередачи, подключении резерв¬
ных мощностей электростанции и т. п.
В дедуктивном блоке системы (подробнее см. 5.7) в случае возникновения
конфликтной ситуации необходимо организовать вывод рекомендаций по уп¬
равлению. Он выполняется следующим образом:
— производится классификация входных ситуаций, т. е. отнесение их к
тому или иному классу решаемых задач, и порождаются семантические стра¬
тегии поиска подмодели данного класса задач;
— соответствующая подмодель настраивается на ситуацию, и методом до¬
казательства теорем производится дедуктивный вывод решений;
— из совокупности полученных решений синтезируются рекомендации че¬
ловеку-технологу.
Разработанные программные комплексы JGRAPH1 (реализующий алгоритм
точечного обобщения /-графов) и JGRAPH2 (реализующий алгоритм дизъюнк¬
тивного обобщения /-графов) предназначены для автоматического форми¬
рования решающих правил, позволяющих классифицировать входпую си¬
туацию.
Классы решений К соответствуют диспетчерским решениям по управле¬
нию энергосистемой (в случае конфликтной ситуации) и задаются в режиме
обучения обучающими выборками vK, wK, элементами которых являются си¬
туации, относимые экспертом к данному классу (vK) и ситуации, заведомо не
входящие в данный класс (ivK).
Получаемые обобщенные представления имеют вид множеств обобщен¬
ных графов таких, как, например, на рис. 8.6.
Поскольку алгоритмы дедуктивного вывода в системы управления энерго-
объедяпением рассчитаны на декларативную форму представления знаний,
полученные структурные обобщенные представления преобразуются сначала
в декларативную форму, а затем к виду множеств предложений во внутрен¬
нем представлении системы.
К элементам обучающей выборки, включающей в себя примеры состоянии
системы, относимые к данному классу, первоначально применяется алгоритм
точечного обобщения (при этом требуется, чтобы число полученных в резуль¬
тате графов не превышало п0: п0 было выбрано равным 2IV, где N= \ик\),
К полученным структурам применяются алгоритмы дизъюнктивного обобще¬
ния, после чего решается задача минимального покрытия элементов обучаю¬
щей выборки i-к графами из Rk, представляющего собой множество обобщен¬
ных графов. При этом гейк покрывает Gesj, если G<=m{g). Состояния
энергосети представляются в виде /-графов.
316
ГЛ. 8. ОБОБЩЕНИЕ ПОНЯТИЙ ПО СТРУКТУРАМ
Программный комплекс JGRAPH1 имеет объем порядка 1500 операторов
языка PL/1 (около 250 К с учетом рабочих массивов). В разработанной версии
предполагалось, что:
— число вершин исходных графов не превышает 50;
— число непосредственных потомков вершин 7-графов не превышает 20;
— число примеров, так же как п число контрпримеров классов не превы¬
шает 50.
При данных ограничениях все программные модули так же как и масси¬
вы данных одновременно загружаются в оперативную память ЭВМ ЕС-1033
(256 К).
В процессе моделирования было установлено следующее:
— отклонение от оптимального решеппя в исследованных случаях дости¬
гало не более 20%;
— корректность получаемых обобщенных представлений классов с точки
зрения решения задачи распознавания в целом зависит от объема и качества
обучающей выборки. В случае когда |гк| ^ N и \ wK\ А, где N — число вер¬
шин графов из vK, wK, полученные решения в 80% случаев сказывались кор¬
ректными, в противном случае, неопознанные ситуации добавлялись к обуча¬
ющим выборкам и производилось переобобщение.
Программный комплекс JGRAPH2 пмеет объем порядка 1000 операторов
языка PL/1 (200 К).
Поскольку данные алгоритмы рассчитаны на использование в режиме обу¬
чения, сравнительно большое время их функционирования (порядка 5 часов
работы ЭВМ ЕС-1033 для случая \vK\ =50, |и>к| = 50 и число вершин ис¬
ходных графов также равно 50) является допустимым.
В рабочем режиме функционирования системы распознавания входного
объекта относительно полученных обобщенных представлений занимает не
более 20 с.
Таким образом, при апробации разработанных алгоритмов обобщения в
задачах формирования классов диспетчерских решений прп оперативном уп¬
равлении энергосистемой, была установлена сравнительно высокая эффек¬
тивность данных алгоритмов и возможность их применения в системах уп¬
равления энергетическими районами. При наличии достаточных ресурсов
оперативной памяти ЭВМ программный комплекс JGRAPH применим для об¬
работки структур гораздо большей размерности (порядка 200 вершин при
числе непосредственных потомков вершин No ^ 20 -г- 25).
ЧАСТЬ V
НЕЧЕТКО ЗАДАННЫЕ ПОНЯТИЯ
В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИЙ
Ты поюнна и вабна,
Душу ты пьянишь, как
струны,
В сердце входишь, как
волна!
Ну же, звонкие погоны,
Славу легких времирей!
В. Хлебников
ГЛАВА 9
НЕЧЕТКИЕ ПЕРЕМЕННЫЕ ПРИ ФОРМИРОВАНИИ
ОБОБЩЕННЫХ ПОНЯТИИ
9.1. Основные определения
Недостаточная эффективность создания моделей многих схем
принятия решений отчасти объясняется несовместимостью высокой
точности количественных методов современного математического
аппарата с большой сложностью этих систем, на поведение кото¬
рых сильное влияние оказывают суждения п восприятия человека.
В связи с этим значительный интерес представляет изучение воз¬
можностей применения в моделировании так называемых нечетких,
а также лингвистических переменных, которые широко использу¬
ются в естественном языке для описания сложных объектов реаль¬
ного мира. Что касается проблемы обобщения, то введение аппара¬
та нечетких множеств в процесс формирования обобщенных поня¬
тий приводит к уточнению модели внешней среды за счет допол¬
нительной информации, связанной с нечеткими переменными и
способствует повышению эффективности человеко-машинного диа¬
лога в системах принятия решений.
Формально нечетное множество М универсального множества
элементов U определяется функцией принадлежности p.v: U ->"
[0, 1], которая каждому элементу u^U ставит в соответствие
число цм из интервала [0, 1], характеризующее степень принад¬
лежности элемента и множеству М.
Если М — одноэлементное множество, т. е. существует всего
один элемент u^U, для которого цм{и)¥^ 0, то будем писать
М = рЛг(и)/и. Нечеткое множество можно рассматривать как объ¬
единение его одноточечных подмножеств, следовательно, М пред¬
ставимо в виде М = 2 Рм(и)/и> где символ суммирования обозна-
us U
чает операцию объединения одноточечных нечетких множеств.
Если М состоит из конечного числа элементов с ненулевыми зна-
318
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
пениями функции принадлежности, то М записывается в виде
П
М = Pm(Wi)/Mj. + . . . + Рм(М/“п = 2 Рм(и4)/н4.
г—Х
Для количественного описания семантики («смысла») понятия
введем понятие нечеткой переменной. Нечеткая переменная харак¬
теризуется тройкой (7, U, /?(У, и)), где У — название перемен¬
ной, U — универсальное множество, и — название элементов мно¬
жества U, R(Y, и)—нечеткое подмножество множества U, пред¬
ставляющее собой нечеткое ограничение на значения переменной
и, обусловленное У. Так, определенное R(Y, и) задает значение
понятия У.
Широкие возможности для приближенного описания явлений,
не поддающихся описанию в общепринятых количественных тер¬
минах, представляет лингвистическая переменная, которая отлича¬
ется от числовой переменной тем, что ее значениями являются но
числа, а слова плн предложения в естественном или формальном
языке.
Формально лингвистическая переменная представляется пя¬
теркой:
<Х, Т(Х), и, G, F>, (9.1)
где X—название переменной, Т(Х) обозначает терм-множество
переменной X, т. е. множество названий лингвистических значений
переменной X, причем каждое из таких значений является нечет¬
кой переменной У со значениями из универсального множества U
с базовой переменной и, G—синтаксическое правило (имеющее
обычно форму грамматики), порождающее названия (термы) У
значений переменной X, a F — семантическое правило, которое
ставит в соответствие каждой нечеткой переменной У ее смысл
F(Y), т. е. нечеткое подмножество F(У) универсального мно¬
жества U.
Обозначим п-арную составную лингвистическую переменную
следующим образом: X = (Xlt Х2, .. Хп), где X,, i = 1, п — унар¬
ная лингвистическая переменная с терм-множеством T(Xi), уни¬
версальным множеством [/( и базовой переменной щ.
Будем различать физическое понятие (объект) и понятие —
класс (обобщенное понятие). Физическое понятие формально зада¬
ется либо набором значений признаков, определяющих это понятие
(например, понятие «золото» имеет определенное число призна¬
ков— вес, блеск, плавкость, ковкость и т. д.), либо непосредствен¬
но по имени, когда невозможно выделить измеримые признаки, ха¬
рактеризующие понятие (например, доброта, зло, интеллектуаль¬
ность и т. п.). Под понятиями-классами будем понимать совокуп¬
ность физических понятий (объектов), носящих одно и то же наи¬
менование, например понятия «металл», «жидкость», «книга» и т.п.
9.1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ
319
Таким образом, под признаком понимается некоторая характе¬
ристика, которая принимает значения из непустого множества зна¬
чений и позволяет определять то, в чем объекты, понятия сходны
друг с другом или в чем они отличаются друг от друга. Нечеткие
понятия-классы характеризуются тем, что множества физических
понятий, носящих общие наименования, являются нечеткими мно¬
жествами, так как объекты могут иметь частичную принадлеж¬
ность соответствующим множествам.
Имеется довольно много литературы, где описаны методы по¬
строения по экспертным оценкам функции принадлежности нечет¬
кого множества. Не останавливаясь на этой проблеме подробно,
мы проиллюстрируем применение аппарата нечетких переменных
лишь только для проблемы обобщения понятий по признакам на
примере алгоритмов ДРЕВ и АФОП, рассмотренных в 7.3.
Для этого в качестве примера возьмем лингвистическую пере¬
менную ЧАСТОТА, являющуюся одним из объектов исследования
настоящей главы. В случае, когда множество Т (X) состоит пз не¬
большого числа термов, синтаксическое правило G удобно свести к
простому перечислению этих термов (для бесконечного числа тер¬
мов G имеет вид формальной грамматики).
Например,
Т (ЧАСТОТА) =(КАК ПРАВИЛО, ОЧЕНЬ ЧАСТО, ЧАСТО,
НЕ ОЧЕНЬ РЕДКО, НЕРЕДКО И НЕ ЧАСТО, ВРЕМЯ
ОТ ВРЕМЕНИ, ИНОГДА, РЕДКО, ОЧЕНЬ РЕДКО).
В качестве базовой переменнохй для лингвистической перемен¬
ной ЧАСТОТА возьмем действительное число и =-^-, где m — число-
появлений некоторого значения признака в выборке частных при¬
меров, а п — общее число примеров в выборке. Смысл нечеткой
переменной определяется функцией принадлежности р(и), которая
ставит в соответствие каждому значению базовой переменной и е U
число из интервала [0, 1], отражающее степень соответствия и дан¬
ному значению лингвистическох1 переменной.
Возьмем, например, переменную РЕДКО и пусть для опреде¬
ленности функция принадлежности для нее имеет вид Рредко(м) =
, полученных! annpoixciiMapneii экспериментальных кри¬
вых на основе опроса экспертов. Эта зависимость получается, если
по оси абсцисс отложить термы лингвистическохх переменной ЧА¬
СТОТА, а по оси ординат — значения функции принадлежности.
Точньпх вид зависимости р(и) для нечетких переменных носит
субъективный характер н зависит от контекста. Л. Заде предлага¬
ет часть термов из Т (X) называть первичными, а вид функции
принадлежности для них считать априори заданными. Тогда се¬
мантическое правило F определяет способ вычисления смысла для
320
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
всех нечетких переменных из терм-множества через функции при¬
надлежности для первичного терма.
Например, если в терм-множестве Т(Х) переменную РЕДКО
взять в качестве первичной, и семантическое правило имеет вид
F (ОЧЕНЬ ... ОЧЕНЬ РЕДКО) = (РЕДКО)2?!и F (НЕ РЕДКО) =
к
= 1 — РЕДКО, то смысл таких нечетких переменных как НЕ
ОЧЕНЬ РЕДКО и ОЧЕНЬ НЕ РЕДКО будет определяться через
функции принадлежности следующего вида:
Очевидно, что не решив вопрос об интерпретации смысла не¬
четких переменных, нельзя приступить к практическому моделиро¬
ванию систем, использующих нечеткие понятия. Для этого и рас¬
смотрим методы подбора смысла для первичных термов, а также
синтаксических и семантических правил, согласно которым можно
выбирать наиболее подходящие нечеткие переменные для форми¬
рования обобщенных понятий в форме, близкой к естественному
языку.
Приведенные в 7.3 алгоритмы ДРЕВ и АФОП при отборе су¬
щественных значений признаков пе учитывают степени пх значи¬
мости для формируемого обобщенного понятия, хотя она, как пра¬
вило, далеко не одинакова. В силу того, что формируемое понятие
рассматривается нами не как окончательная закономерность, опре¬
деляющая класс, а лишь как гипотеза, подлежащая уточнению
в процессе диалога, было бы весьма целесообразно снабдить значе¬
ния, входящие в понятие, коэффициентами, отражающими степень
их существенности или значимости.
Очевидно, что в первом приближении о степени значимости
каждого значения можно судить по частоте его появления в вы¬
борке частных примеров. В зависимости от этой частоты можно
снабдить формируемое обобщенное понятие нечеткими переменны¬
ми естественного языка из терм-множества Т(Х), определяемого
некоторым синтаксическим правилам G. Тогда для примера 7.1 из
области медицинской диагностики (см. 7.3) система должна сфор¬
мировать нечеткое обобщенное понятие, которое будет иметь вид
БОЛЕЗНЬ z0 = КАК ПРАВИЛО ПОЖИЛОЙ ВОЗРАСТ &
& (ЧАСТО (ГОЛОВНЫЕ БОЛИ & ОЗНОБ) V ИНОГДА (НА¬
ЧАЛЬНАЯ СТАДИЯ АППЕТИТ)).
Легко видеть, что это нечеткое понятие по форме и содержа¬
нию очень близко к следующей фразе на естественном языке:
«Этой болезнью, КАК ПРАВИЛО, страдают люди пожилого возра¬
9.2. ПСИХОМЕТРИЧЕСКИЕ ИЗМЕРЕНИЯ
321
ста; она ЧАСТО сопровождается головными болями и ознобом,
ИНОГДА, в начальной стадии наблюдается отсутствие аппетита.»
Такая естественная языковая форма обобщенных понятий очень
удобна для общения человека п машины в режиме диалога. Одна¬
ко для решения ряда задач в системах принятия решений (в част¬
ности задач автоматизации научных исследований) желательно
иметь более точное количественное описание, где вместо нечетких
языковых кванторов должны стоять числовые коэффициенты, отра¬
жающие степень совместимости конъюнкций отобранных состоя¬
ний с одним из значении лингвистической переменной ЧАСТОТА.
Тогда для того же примера из медицинской диагностики должно
сформироваться понятие типа
БОЛЕЗНЬ z0 = 0,70 (ПОЖИЛОЙ ВОЗРАСТ & ГОЛОВНЫЕ
БОЛИ & ОЗНОБ) V 0,24(ПОЖИЛОЙ ВОЗРАСТ & НАЧАЛЬНАЯ
СТАДИЯ &"1 АППЕТИТ).
Таким образом, за счет введения нечетких переменных мы рас¬
ширим алгоритмы обобщения ДРЕВ и АФОП, которые в итоге бу¬
дут формировать нечеткие обобщенные понятия в двух видах:
1) с числовыми коэффициентами совместимости (а():
П0 = Kj (Zjj & Z12 & . . . V • • • V (zni & zn2 & • • • & (9-2)
где гц — существенное значение признака и ос, s [0, 1];
2) с нечеткими значениями у} лингвистической переменной X:
П0 = У\ (zn & Z12 & • • • & Z1 r1) V ■ • • V У™ (zml & Zmi & • • • & zmrm) ,
(9.3)
где у^Т(Х).
Кроме того, алгоритмы должны обеспечивать возможность обу¬
чения в режиме диалога, в ходе которого происходит коррекция
функций принадлежности р(н) и семантического правила F в за¬
висимости от конкретной ситуации и субъективных представлений
учителя. Коррекция доляша проводиться системой за счет сравне¬
ния понятий вида (9.2) пли (9.3), сформированных программой и
учителем на контрольных обучающих выборках.
9.2. Психометрические измерения по определению
смысла нечетких переменных
Механизмы нахождения «смысла» нечетких переменных для
получения как числовых, так и лингвистических коэффициентов в
обобщенных понятиях призваны моделировать соответствующие
аспекты человеческого поведения. Поэтому с целью изучения этих
механизмов был проведен ряд экспериментов с людьми, результаты
которых были использованы для построения соответствующих ал¬
горитмов обобщения понятий.
21 В. Н. Вагин
322
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
В психометрии существуют различные методики для измерения
субъективных расстояний между ощущениями. В частности, для
измерения субъективных расстояний между ощущениями частоты
встречаемости применялись три методики: метод парных сравне¬
ний, метод ранжирования и метод последовательных интервалов.
Эксперименты, описываемые в данном разделе, скорее всего можно
было бы отнести к экспериментам, проводимым по методу ранжи¬
рования, хотя они сложнее и дают больше информации.
Суть экспериментов сводилась к следующему. Большим груп¬
пам людей (студентам четырех групп по 25 человек в каждой
группе) раздавались одинаковые карточки, на которых были напе¬
чатаны наборы нечетких переменных из некоторого терм-множест¬
ва Т(Х). В качестве X бралась лингвистическая переменная ЧА¬
СТОТА. Испытуемым предлагалось разбить интервал от 0 до 100
на подынтервалы, каждый из которых соответствовал бы одному
терму из Т(Х), а границы определяли бы такое число появлений
некоторого отвлеченного события из ста возможных, которое по¬
зволяло бы испытуемому охарактеризовать частоту появления это¬
го события соответствующим значением лингвистической перемен¬
ной X. Разрешалось перекрытие интервалов.
Таким образом, каждый испытуемый ставил в соответствие не¬
четкой переменной числовой интервал, который, по его мнению,
наилучшим образом соответствовал этой переменной. Эксперимен¬
ты проводились с различными терм-множествами Т (А); при этом
предполагалось не иметь в виду какие-либо конкретные события.
Обработка результатов экспериментов этой серии проводилась
следующим образом:
а) над предлагаемым интервалом [0, 100] строились отрезки
прямых, длина и расположение которых соответствовала результа¬
там, указанным испытуемыми в карточках. В итоге получались
гистограммы, где каждой нечеткой переменной соответствовало
скопление отрезков. По виду этих скоплений можно было судить
о степени размытости нечетких переменных;
б) для каждого такого скопления проводилось суммирование
числа отрезков по вертикальной оси. В результате строились дру¬
гие гистограммы, которые также отражали степень расплывчато¬
сти той или иной нечеткой переменной в зависимости от высоты
ее пирамиды, интегральной площади под ступенчатой кривой, чис¬
ла локальных экстремумов и т. п. Одним из важных моментов яв¬
лялось то, что эти гистограммы позволяли разбивать интервал па
подынтервалы в соответствии с областями максимума каждой из
пирамид. Это разбиение являлось усредненной статистической
оценкой по множеству испытуемых и использовалось в соответст¬
вующих алгоритмах обобщения;
в) на основе этих гистограмм, проводя нормирование по осям и
сглаживание ступенчатых кривых, были построены функции при¬
надлежности ц(и) для исследуемых нечетких переменных (см.
9.2. ПСИХОМЕТРИЧЕСКИЕ ИЗМЕРЕНИЯ
323
рис. 9.1). Построенные функции принадлежности послужили осно¬
вой выбора модели аппроксимации при организации обратной свя¬
зи в диалоговом режиме.
Классический метод ранжирования дает возможность упорядо¬
чить набор термов по некоторому признаку (частоте). Приводимые
здесь эксперименты позволили не только упорядочить элементы из
Т (X), но и сопоставить каждому из них некоторый интервал
частот.
Особенность метода ранжирования состоит в том, что испытуе¬
мый работает сразу со всем набором термов и дает оценки на ос¬
нове сравнения их между собой. Таким образом, оценка любого
терма зависит от оценок, приписанных остальным. Отсюда к недо¬
статкам метода можно отнести то,
что при достаточно большом числе
термов испытуемому становится
трудно охватить и учесть все ранее
произведенные оценки и таким об¬
разом результаты эксперимента на¬
чинают терять надежность.
Поэтому для увеличения надеж¬
ности результатов экспериментов
первой серии, а также для получе¬
ния некоторых дополнительных дан¬
ных была проведена вторая серия
экспериментов по методу последова¬
тельных интервалов. В этой серии
испытуемым раздавались одинаковые
карточки, на которых были изобра¬
жены интервалы от 0 до 100 с раз¬
личными разбиениями на подынтер¬
валы в соответствии с усредненными
первой серии.
На доске выписывалось терм-множество Т0(Х) (Х-ЧАСТОТА),
которое с избытком покрывало все используемые ранее терм-мно-
жества Г,-(Х) (для всех i, 7\(Х)<= Та (X)). Испытуемым
надлежало выбрать из Т0(Х) те нечеткие переменные, которые, по
их мнению, наилучшим образом соответствовали каждому подын¬
тервалу предложенного им разбиения. На этапе обработки резуль¬
татов экспериментов для каждого разбиения, соответствующего не¬
которому Ti(X), подсчитывалось число попаданий каждой нечеткой
переменной в соответствующий интервал. На основе этого были
также построены соответствующие гистограммы.
При обсуждении результатов психометрических измерений не¬
обходимо учесть следующие моменты.
1. Порядок расположения максимумов гистограмм второй серии
для каждого терма согласуется с порядком разбиения на подынтер¬
валы в первой серии. Это упорядочивание также хорошо согласу-
21*
Рис. 9.1
результатами экспериментов
324
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
ется с результатами Р. М. Фрумкиной и А. П. Василевича (что
также учитывалось при моделировании) и позволяет построить
ранговую шкалу классификации для множества значений базовой
переменной и.
2. Разбиения множества U на неравные интервалы для различных
Ti(X) дают возможность переходить от числовых значений базовой
переменной к соответствующим нечетким значениям из Tt(X).
3. Если порядок относительного расположения максимумов
гистограмм не зависит от набора термов в Tt(X), то разбиение на
подынтервалы может значительно меняться при переходе от одно¬
го терм-множества к другому. При этом одной и той же нечеткой
переменной не могут соответствовать различные интервалы частот.
Это необходимо учитывать при моделировании семантических
правил F.
4. Отметим, что гистограммы в зависимости от расположения
их максимумов, как правило, распадаются на три группы. Напри¬
мер, к первой группе относятся термы, максимум которых располо¬
жен на [0, 10]: ПРАКТИЧЕСКИ НИКОГДА, ЧРЕЗВЫЧАЙНО
РЕДКО, ОЧЕНЬ РЕДКО, ИЗРЕДКА.
Основываясь на гипотезе о существовании «индекса частоты»
для слов естественного языка (Р. М. Фрумкина), в каждой группе
можно выделить один главный терм, который является наиболее
часто употребляемым. В нашем случае такими главными термами
могут быть: РЕДКО, НЕ ЧАСТО и НЕ РЕДКО, ЧАСТО. Остальные
термы из группы разбивают смысл главного терма на несколько
оттенков — более мелких градаций, подобно тому, как, например,
цвет КРАСНЫЙ имеет оттенки: АЛЫЙ, ПУРПУРНЫЙ, КУМА¬
ЧОВЫЙ и т. п.
Такой подход позволяет выделять терм-множества различной
степени сложности, которые используются в естественном языке в
зависимости от того, с какой точностью мы хотим охарактеризовать
частоту появления того или иного события. Как уже отмечалось,
при переходе от одного терм-множества к другому меняются и се¬
мантические правила F. Поэтому для правильного определения
«смысла» нечетких переменных очень важно знать, какое терм-
множество имеется в виду при употреблении того или иного тер¬
ма. Приведенные соображения служат основой для подбора син¬
таксических правил G, порождающих наборы элементов 7\(Х) на
основе анализа термов, которыми пользуется учитель в процессе
диалога.
9.3. Алгоритм формирования и коррекции нечетких понятий
с числовыми коэффициентами
Результаты психометрических измерений, описанные в предыду¬
щем разделе, не могут служить окончательными, четко определен¬
ными истинами при создании конкретных моделей обобщения в
различных системах принятия решений. И хотя роль их, безуслов¬
9.3. ФОРМИРОВАНИЕ И КОРРЕКЦИЯ НЕЧЕТКИХ ПОНЯТИЙ
325
но, очень велика для построения общей структуры моделирующих
алгоритмов, необходимо оставить возможность для адаптации моде¬
ли к конкретным условиям. Иными словами, должна существовать
обратная связь, позволяющая перестраивать функции принадлеж¬
ности ц(и), синтаксические правила G и семантические правила
F на основе сравнительного анализа результатов работы алгорит¬
мов и высказываншг учителя в ходе диалога. Это объясняется
главным образом тем, что смысл при использовании нечетких пере¬
менных зависит от многих субъективных факторов и может меняться
при переходе от одних ситуаций к другим.
В этом разделе мы остановимся на формировании нечетких обоб¬
щенных понятий вида (9.2) с числовыми коэффициентами а„ от¬
ражающими степень совместимости отобранных конъюнкций
zn & zia & • • • & ziki с нечеткой переменной СУЩЕСТВЕННО, ко¬
торая одна составляет все терм-множество. Как уже отмечалось,
о степени существенности того или иного конъюнктивного члена
в понятии П0 можно в значительной мере судить по частоте появ¬
ления его в выборке частных примеров и контрпримеров. Кроме
того, в отдельных случаях выборка может содержать дополнитель¬
ную информацию о существенности значений признаков в виде
нечетких термов (или просто числовых коэффициентов), приписан¬
ных этим значеппям исследователем, использующим алгоритм.
Поскольку в обычной практике не существует единой числовой
шкалы для измерения степени существенности, естественно будет
в качестве базовой переменной ве[0, 1] взять частоту появления
конъюнкций в выборке частных примеров. В случае необходимости
можно учитывать, помимо частоты, дополнительную информацию
о существепностп. Для этого базовая переменная и должна под¬
вергаться коррекции путем преобразования ее в соответствии с
формулами <Щ, £ = 1, q (см. 7.3), названными критериями суще¬
ственности.
Однако, помимо явной информации, содержащейся в выборке,
существует ряд субъективных факторов, оказывающих влияние на
ВИД функции Ц (и), ПО которой ВЫЧИСЛЯЮТСЯ коэффициенты Cii. По¬
этому в каждом конкретном случае точный вид функции р. (и) не¬
известен.
Все же, основываясь на результатах психометрических измере¬
ний, мы можем выделить некоторые ее особенности. В случае, когда
терм-множество Т (X) состоит только из одной нечеткой перемен¬
ной СУЩЕСТВЕННО, р(и) для нее монотонно возрастает с уве¬
личением частоты и, при этом р(0)«0, а р(1)«1. Отсюда в ка¬
честве первого приближения р(и) можно выбрать некоторую функ¬
цию, обладающую этими свойствами. Для этого, например, подой¬
дут функции семейства ип или sin"-^-, и 7s 0.
Пусть выбрано некоторое приближение р0Щ) функции принад¬
лежности р(и). Теперь для уточнения ее вида можно воспользо¬
326
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
ваться учебными выборками. На этих выборках программой будет
сформировано ряд понятий вида (9.2), дающих набор коэффици¬
ентов сц, отражающих степень совместимости конъюнкций с пере¬
менной СУЩЕСТВЕННО. Коэффициенты в программе подсчи¬
тываются в соответствии с выбранной р,0(и):
cci = p.o(Ki), а2 = Миг), • •ah=\x0{uh),
где щ (l^i^k) есть частота появления в выборке К+ элемен¬
тарной КОНЪЮНКЦИИ Zi! & zi2 & . . . & zik..
Для тех же выборок учитель может предложить своп версии
обобщенных понятий, содержащих, вообще говоря, другой набор
коэффициентов: осх, а2, На основе анализа версии, предло¬
женной учителем, программа должна изменить функцию принад¬
лежности так, чтобы формируемые ей коэффициенты приблизились
к {аД, причем степень изменения должна характеризоваться не¬
которым параметром Par, отражающим то, в какой мере учитель
настаивает на своей версии. Таким образом, задача сводится к по¬
строению функции ц(и) по известному набору ее значений в
некоторых точках. При этом имеют место следующие особен¬
ности:
а) новый набор значений {аЩ полученный из обобщенных по¬
нятий, данных учителем, нельзя считать абсолютно точным, так
как при определении человеком число¬
вого значения степени существенности
каждой конъюнкции вполне возможна
некоторая погрешность;
б) вид неоткорректированной функ¬
ции Цо(м), первоначально заложенный
в алгоритм, нельзя игнорировать пол¬
ностью, так как он в той или иной мере
отражает зависимость искомых коэффи¬
циентов от частоты и. Поэтому к на¬
бору значений {«(] можно добавить
0 1 и несколько значений ц0(гЩ
Рис. 9.2 полученных при обобщении па выбор¬
ках, отличных от той, по которой счи¬
тались a,i, и давались учителем их поправки в виде а*. Число добав¬
ляемых значений ц0(и) зависит от величины параметра Par;
в) исходя из экспериментальных наблюдений можно заключить,
что функция ц(и) является сравнительно гладкой с небольшим ко¬
личеством экстремумов у ее первой производной. На рис. 9.2 изо¬
бражена неоткорректированная функция р.0(и), набор новых точек
(ccj) и новая искомая функция ц(и), которая не обязательно долж¬
на проходить через все точки {осД.
9.3. ФОРМИРОВАНИЕ И КОРРЕКЦИЯ НЕЧЕТКИХ ПОНЯТИЙ
327
Основываясь на приведенных соображениях и исходя из ана¬
лиза данных, имеющихся по численным методам, приходим к за¬
ключению, что для решения поставленной задачи хорошо подходят
классические методы точечной аппроксимации, в частности метод
наименьших квадратов. Действительно, этот метод позволяет полу¬
чить достаточно гладкую функцию р(и), которая равномерно при¬
ближается в смысле среднего квадратического отклонения к задан¬
ному набору точек, не обязательно совпадая с ним. При этом важ¬
ным является тот факт, что число п и расположение точек аппрок¬
симации может быть произвольным т (где т — степень ап¬
проксимирующего полинома).
Итак, будем искать функцию р.(и) в виде обобщенного аппрок¬
симирующего полинома:
т
Q (и) = 2 Cj<Pj (и), (9.4)
3=0
где коэффициенты с, определяются из условия максимума суммы
квадратов отклонений Sm:
П
Sm = 2
i=0
2 CjCpj (щ) — р (щ)
.3=0
Для успешного применения метода наименьших квадратов по¬
требуем выполнение условия линейной независимости системы
функций {фДи)} (0«£/«£лг) на множестве точек (щ) (0 ^i<n),
т. е. из выполнения равенств
ТП
2 bjtp (щ) = о, i = o,»,
3=0
должно следовать Ь} = 0 для любого j — 0, m.
Простой наиболее широко используемой системой функций,
удовлетворяющей условию линейной независимости, является си¬
стема: 1, и, и2, и3, ..., ит при натуральном г. Выбор этой системы
обусловлен также и тем, что, как отмечалось выше, на отрезке
[0, 1] эти функции удовлетворяют основным предположениям о
виде р(и). Поэтому при подстановке в полином (9.4) ф}(u) = us
следует ожидать хорошей аппроксимации даже при небольшом
числе членов полинома. В нашей модели использовалась величина
тп = 3, которую в случае необходимости можно было увеличить до
пяти и снова уменьшить с помощью специальной команды, исполь¬
зуемой в диалоговом режиме. Таким образом, аппроксимирующий
полином примет вид (2 < тп < 5):
Q(u) = с0 + с,и + ... + cmum. (9.5)
Пусть имеется набор коэффициентов совместимости {oii}, 0^
^ i к, указанный учителем для некоторого набора обобщенных
328
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
понятий, построенных программой. К набору значений ц (щ) — oq
добавим несколько значений неоткорректированной функции р0(мг),
г = 1, 2, ..р, где Ur^Ui, a р = /(Par); /(Par) — монотонно убы¬
вающая функция от Par, которая подбирается эмпирическим пу¬
тем и отражает степень коррекции Цо(м), на которой настаивает
исследователь, использующий алгоритм. Например,
/(Par) - 3 - Par (Par = 0, 1, 2, 3).
Очевидно, что чем больше значений [г0(м) будет добавлено к
набору точек аппроксимации, тем большее влияние она окажет на
вид функции ц(и). Полученный в результате добавления к {а*}
набор точек (ос0, иа), (alt щ), ..., (а„, ип) используется для на¬
хождения коэффициентов Cj, 0 полинома (9.5). При этом
необходимо решить систему из т+ 1 линейных уравнений:
I со$о + ci^i + .. . + cmSm = t0,
I ЧА + с152 + . . . + CmSm^i = Пт (9.6)
I CgSm + C1Sm+1 + . . . + CmS2m = tm,
где
Sk = Uq + Ui + . . . + un (h — 0, 1, .. ., 2ni),
tk — u0a0 "P ulal + . . . "Ь Undn.
Система (9.6) решается относительно неизвестных с}, 0s£j<hi.
Число уравнений т в системе берется равным числу неизвестных
(обычно т = 3, а вообще 5), поэтому система всегда разре¬
шима. Для решения системы линейных уравнений (9.6) в алгорит¬
ме используется метод исключения по компактной схеме Гаусса.
После нахождения коэффициентов с, полином (9.5) берется в
качестве откорректированной функции ц(и)= Q(u). Используя эту
функцию принадлежности, программа строит новые обобщенные
понятия иа тех же учебных выборках. Результат вновь выдается
на терминал и, если он не удовлетворяет учителя, то последний
может вновь сформировать свои версии понятий и инициировать
повторную работу алгоритма.
Инициация работы алгоритма производится с помощью специ¬
ального приказа (КОРРЕКЦИЯ*—^Yr ■—< Par), входящего в набор
команд диалогового общения с пользователем, где Yr — новая вер¬
сия учителя, Par — описанный выше параметр коррекции.
По шагам алгоритм формирования и коррекции нечетких поня¬
тий с числовыми коэффициентами имеет следующий вид.
Шаг 1. Задание контрольных обучающих выборок формируемого
обобщенного понятия.
Шаг 2. Формирование обобщенного понятия П0 с нечеткими
коэффициентами с использованием алгоритмов ДРЕВ и АФОП (см.
п. 7.3).
9.4. ФОРМИРОВАНИЕ И КОРРЕКЦИЯ ОБОБЩЕННЫХ ПОНЯТИЙ
329
Шаг 3. Выдача пользователем команды КОРРЕКЦИЯ.
Шаг 4. Определение частот щ, и2, ■.., ик для конъюнктивных
членов понятия.
Шаг 5. Получение набора ии щ, ..., ик в результате анализа
версий учителя Yr.
Шаг 6. Добавление новых точек аппроксимации, исходя из
функции ро(^) и Par.
Шаг 7. Решение системы линейных уравнений вида (9.6) и
получение новой функции р(н).
Шаг 8. Формирование нового обобщенного понятия на тех же
выборках с применением ц(и).
Шаг 9. Необходима ли повторная коррекция? Если да, то пере¬
ход к шагу 3, в противном случае КОНЕЦ.
Продолжая рассмотрение примера 7.1 (см. 7.3), алгоритм фор¬
мирования и коррекции нечетких понятий с числовыми коэффици¬
ентами даст следующее обобщенное понятие:
БОЛЕЗНЬ Zq = 0,95 (ПОЖИЛОЙ ВОЗРАСТ) & (0,74 (ГОЛОВ¬
НЫЕ БОЛИ & ОЗНОБ) V 0,26 (НАЧАЛЬНАЯ СТАДИЯ &
“I АППЕТИТ)).
Этот алгоритм был практически использован в диалоговой си¬
стеме автоматизации научных исследований для автоматизирован¬
ной обработки больших массивов экспериментальных данных в та¬
ких областях, как химия, металлургия и экономика, что позволило
сформировать обобщенные понятия с числовыми коэффициентами,
которые дали возможность исследователю судить о степени влия¬
ния тех пли иных значений признаков на формируемые закономер¬
ности и способствовали целенаправленности человеко-машинного
диалога, проводимого в ходе исследования (см. 7.5).
9.4. Алгоритм формирования и коррекции обобщенных понятий
с использованием нечетких переменных
С помощью метода, рассмотренного в 9.3, в ходе диалогового
общения с учителем можно построить функцию принадлежности
для любой нечеткой переменной, входящей в заданное терм-мно¬
жество Т (А).
Пусть, как и раньше, X — лингвистическая переменная ЧАСТО¬
ТА. Рассмотрим в качестве примера некоторое ее терм-множество;
Т (Х)= {ОЧЕНЬ ЧАСТО, ЧАСТО, ИНОГДА, РЕДКО,
ОЧЕНЬ РЕДКО) (9.7)
Возьмем в качестве главного терма (см. 9.2) одну из нечетких пе¬
ременных в (9.7), например, ЧАСТО, и построим для нее функцию
принадлежности щ(и) с помощью числовых коэффициентов ос,-. При
таком построении функции принадлежности всегда имеется в виду,
330
ГЛ. 9. нечеткие переменные
что соответствующая ей нечеткая переменная одна состав¬
ляет Т(Х). В терм-множестве (9.7) вид функции принадлежности
для переменной ЧАСТО естественно меняется благодаря влиянию
других нечетких переменных. Это подтверждается и результатами
психометрических экспериментов. На рис. 9.3 изображена функция
принадлежности для главной переменной ЧАСТО, полученная ме¬
тодом из раздела 9.3 (пунктирная линия), и функции принадлеж¬
ности для переменных из (9.7).
Допустим, что согласно некоторому семантическому правилу F
функции принадлежности для нечетких переменных из (9.7) можно
выразить через ц,(и) для главного терма. Тогда, построив эти
функции, можно полу¬
чить разбиение R обла¬
сти значений базовой
переменной а на под-
интервалы, в каждом
из которых значения
одной из функций пре¬
восходят значения ос¬
тальных и, следователь¬
но, наиболее уместно
употреблять соответст¬
вующую ей нечеткую
переменную для описа¬
ния события, имеющего
данное числовое зна¬
чение частоты и (см.
рис. 9.3). Главная функция принадлежности позволяет отобразить
это разбиение R на оси абсцисс в соответствующее разбиение R' на
оси ординат, где каждому подынтервалу будет также соответство¬
вать одно из значений лингвистической переменной.
Теперь, зная числовые коэффициенты совместимости cci = p4(u),
можно сопоставить каждому из них терм из (9.7) в зависимости
от того, в какой интервал из R' попадает а,-. Очевидно, что, зная
R, можно поступить и проще при выборе нечеткого терма для
конъюнкции zц & zi2 & ■■■ & zikV определив, в какой подынтервал
на оси абсцисс попадает соответствующая ей базовая переменная и.
Однако па практике вид семантического правила F, а следова¬
тельно, и разбиения R бывает неизвестен. Наша задача заключа¬
ется в том, чтобы путем изменения функции ц(гг) для главного
терма подобрать такое разбиение R (семантическое правило), ко¬
торое позволит формировать нечеткие обобщенные понятия, близкие
к представлениям учителя в данной конкретной ситуации.
Зафиксируем разбиение R' в виде равных подынтервалов, число
которых соответствует числу элементов в Т(Х). Как показано на
рис. 9.4, меняя \х{и) для главного терма, можно получить различ¬
ные разбиения R на оси абсцисс. Предположим теперь, что для
9.4. ФОРМИРОВАНИЕ И КОРРЕКЦИЯ ОБОБЩЕННЫХ ПОНЯТИЙ
331
данной контрольной выборки программой сформировано понятие
вида
п = y£i V p2p2 V ... V уп$п, (9.8)1
где уi <= Т (X), р.- — элементарные конъюнкции, для которых изве¬
стны частоты появления их в выборке примеров: щ, гг2, • • •,
Для данного понятия учитель может предложить свою версию,
с другим набором нечетких термов: у±, Уг, ...,Уи- Тогда для тех
же значений базовой переменной {uj мы будем иметь,
вообще говоря, другой набор значений р(щ), в качестве которых
можно брать середины соответствующих интервалов разбиения R'
(см. рис. 9.5).
Получив новый набор значений ц(и) и добавив к ним несколько
значений неоткорректированной функции ц0(и), мы могли бы по¬
строить новую непрерывную функцию ц(и), подобно тому, как это
делалось в предыдущем разделе. Однако в данном случае, в силу
того, что мы хотим получить не числовые значения оц из беско¬
нечного подмножества действительных чисел [0, 1], а несколько
нечетких термов из конечного набора Т(Х), естественно предста¬
вить ц(гг) в виде ступенчатой функции, где каждой ступени со¬
ответствует у{, а длина ступеней определяет разбиение R (см.
рис. 9.6, а).
Процедура получения аппроксимирующего полинома по методу
наименьших квадратов требует большого числа вычислений, свя¬
занных в основном с решением системы линейных уравнений (9.6).
Подсчет коэффициентов cs аппроксимирующего поли¬
нома (9.4) можно проводить значительно эффективнее, если в ка¬
честве ф/(и) взять функции, ортогональные на множестве точек
^1? ^2) • • Un. В этом случае аппроксимирующий полином выра¬
жается через частичную сумму разложения искомой функции р(и)
в ряд Фурье по ортогональным функциям ф}{и). Коэффициенты с}
332
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
суть коэффициенты Фурье и могут вычисляться по формуле
п IП
Cj = 5 р (щ) cpj (щ)/2 ф! («г). (9.9)
i=0 fi—О
Важным фактором является также и то, что согласно известной
теореме о наилучшей аппроксимации именно ряд Фурье дает наи¬
лучшую аппроксимацию в смысле квадратичного отклонения Sm.
Однако, в случае использования фор¬
мулы (9.9) для подсчета с} по извест¬
ным значениям функции р(н) в ко¬
нечном числе точек мы наталкиваемся
на некоторые трудности. Дело в том,
что известные системы функций (три¬
гонометрическая система, полиномы
Чебышева, Лежандра и т. п.) являются
ортогональными на непрерывных от¬
резках значений аргумента и не явля¬
ются таковыми в произвольном ко¬
нечном наборе точек ии Поэтому для
использования (9.9) нужно каждый
раз для нового набора точек и( под¬
бирать систему функций фДн), удов¬
летворяющую условию ортогональности
в этих точках:
П
2 фр (ui) фд (ui) = 0» Для всех р и q,
i=0
1<|р<:те, 1 g <| те.
Этот путь связан с большими слож¬
ностями как алгоритмического, так и
вычислительного характера.
Если все же остановиться на одной из известных ортогональ¬
ных систем, то подсчет cs придется производить по формуле для
непрерывного случая:
ъ
сз = drii И* (“) Ф; (и) du> (9.Ю)
ь
где I фз || = J ф| (и) du, [а, Ъ] — отрезок, на котором ортогональна
а
система функций {'фД.
В случае непрерывной р(н) подсчет интегралов по имеющемуся
у нас подбору значений р(щ) требует дополнительных вычислений,
да к тому же дает погрешность в результатах. Поэтому в пре¬
дыдущем разделе мы предпочли для подсчета коэффициентов ре¬
шать систему линейных уравнений точными методами. Однако,
9.4 ФОРМИРОВАНИЕ И КОРРЕКЦИЯ ОБОБЩЕННЫХ ПОНЯТИЙ 333
в случае ступенчатой функции подсчет с помощью (9.10) резко
упрощается и становится целесообразным применять методы ап¬
проксимации рядами Фурье. Для этого необходимо выбрать под¬
ходящую ортогональную систему функций.
В теории ортогональных рядов известна ортонормированная на
[О, 1] систол! а, которая особенно удобна для аппроксимации сту¬
пенчатых функций. Это система функций Хаара: {%к(и)}.
Множество функций Хаара (%а(и)} удобно разбить на группы:
{ХтДи)}, ; = 1, 2, ..., 2m_1; т = 1, 2, ... Связь между двойной
нумерацией (т)) и обычной к выражается соотношением:
к = 2т-‘ + /.
Причем первая функция jk(ii)=l остается вне групп. Опре¬
деление функций Хаара имеет вид
771 — 1
} 2
при U '
Ч- 1 / —V*
I 2т— 1’ 2m_1 I’
771 — 1
2
- 2 ■ при и S jA;],
О в остальных случаях
(9.11)
(при / = 2т~1 отрезок изменения и замкнут также справа). На
рис. 9.7 представлены первые четыре функции Хаара.
Точки разрыва функций Хаара соответствуют степеням двойки
2т~\ поэтому для достаточно точной аппроксимации ступенчатой
-1
%тг(и)
1/2
V2
1 и
1/U
-V2
V2
1/2 1 и
-V2
“)
I
1/2 '
1 и
Рис. 9.7
функции ц(н) (см. рис. 9.6, а) необходимо взять довольно много
функций Xaapa. Однако разбиение R' фиксирует число и высоту
«ступенек» |х(и), а нас интересует только длина интервалов раз¬
биения.
334
ГЛ. 9. НЕЧЕТКИЕ ПЕРЕМЕННЫЕ
Учитывая сказанное, сделаем следующее. Поставим в соответ¬
ствие функции ц(и) ступенчатую функцию x(i), изображенную
на рис. 9.6 6. Высота ступенек %{t) соответствует точкам разбие¬
ния R, а длина — интервалу постоянства функций Хаара. Число
функций Хаара, необходимых для аппроксимации %(t) в точности
равно числу термов в Т (X), т. е. т. Левые концы интервалов
постоянства х(£) соответствуют нечетким термам у{^Т(Х)
(1 *£ i < m).
Таким образом, анализ версии нечеткого понятия, предложенный
учителем, дает новый набор точек, не совпадающий, в общем слу¬
чае, с функцией %(t). Добавляя к нему несколько значений имев¬
шейся ранее функции x(i), получим набор точек аппроксимации
щ, и2, ..., ип, исходя из которого можно построить функцию x(i),
дающую новое разбиение R. Число точек аппроксимации подбира¬
ется равным числу интервалов постоянства (п = тп). Если несколь¬
ко точек щ попадает на один интервал, то берется среднее ариф¬
метическое значений х(щ). Новую функцию х(£) естественно пред¬
ставить в виде частной суммы ряда Фурье — Хаара.
ТП
х(0 = Sm (г) = 2 ChXk(t).
k=l
Так как система функций нормирована на [0, 1], то под¬
счет коэффициентов ck можно производить с помощью формулы
1
ck= j %{u)xk(u) du,
о
которая упрощается в силу ступенчатости подынтегральных функ¬
ций:
ТП
Си “ 2 X. (щ) Xk (щ) Ikii
г=1
где 1М — длина интервала постоянства в окрестности точ¬
ки Ui.
Степень коррекции функции %(t) зависит от пожелания учи¬
теля и выражается через параметр Par, который влияет на число
добавочных точек аппроксимации, взятых от неоткорректированной
гЬункции х(£). Инициация процесса коррекции осуществляется с
помощью команды (УТОЧНИТЬ И Par), где П — понятие,
сформированное учителем для данной обучающей выборки, Par —
параметр коррекции, который может принимать значения: СИЛЬ¬
НО, СЛАБО, ЕДВА.
Рассмотрим алгоритм формирования и коррекции обобщенных
понятий с использованием нечетких переменных по шагам.
9.4. ФОРМИРОВАНИЕ И КОРРЕКЦИЯ ОБОБЩЕННЫХ ПОНЯТИЙ
335
Шаг 1. Задание контрольной обучающей выборки.
Шаг 2. Формирование нечеткого обобщенного понятия П0 с ис¬
пользованием кванторов у{.
Шаг 3. Проверяем, содержит ли понятие П0 кванторы г/4 Ф- Т (X).
Если содержит, то переход к шагу 4. В противном случае, переход
к шагу 8.
Шаг 4. Обращение к синтаксическому правилу G для переоп¬
ределения Т(Х).
Шаг 5. Получили ли новое Т(Х)1 Если получили, то переход
к шагу 7, в противном случае — к шагу 6.
Шаг 6. Обращение к учителю для доопределения Т(Х).
Шаг 7. Формирование на основе Т (X) разбиения R и функ¬
ции x(i).
Шаг 8. Формирование узлов аппроксимации функции x(f) с
учетом Par.
Шаг 9. Подсчет коэффициентов ск. Формирование нового раз¬
биения R и функции %{t).
Шаг 10. Выдача на терминал откорректированного обобщенного
понятия.
Шаг 11. Необходима ли повторная коррекция? Если да, то пере¬
ход к шагу 3, в противном случае КОНЕЦ.
В этом алгоритме блоки, формирующие элементы Т (X), орга¬
низованы следующим образом. Если в своей версии учитель упо¬
требляет некоторый терм у}, который не содержится в первона¬
чальном терм-множестве, то необходимо переопределить Т(Х), най¬
дя место нового терма в нем.
На основе результатов экспериментов (см. п. 9.2) удалось выя¬
вить взаимное расположение для довольно большой группы линг¬
вистических значений переменной ЧАСТОТА. Эти данные заложе¬
ны в синтаксическое правило G, которое позволяет расширить Т(Х)
в случае появления новых термов, а также получить новое разбие¬
ние R для расширенного терм-множества, используя семантическое
правило F. Если же сведений о новом терме, используемом учи¬
телем, нет в G, то алгоритму остается обратиться с вопросом к
учителю для того, чтобы тот доопределил терм-множество Т(Х),
включающее новый терм. Изменение состава Т(Х) влечет пере¬
счет интервалов постоянства для системы функций Хаара.
Программа может также обращаться с вопросом к учителю о
переопределении Т(Х), если несколько повторных попыток кор¬
рекции не приводят к удовлетворению требований учителя. Для
переопределения Т(Х) используется диалоговая команда (НОВ
СЛОВА ' X У), где Х = Т(Х), а У — список чисел, отражающих
разбиение [0, 1] на подынтервалы, соответствующие новому набору
термов из Т (X).
Этот алгоритм также использовался в диалоговой системе авто¬
матизации научных исследований (см. 7.5).
336
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
ГЛАВА 10
ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
10.1. Качественный анализ систем принятия решений
Прп рассмотрении систем принятия решений с нечетко задан¬
ными понятиями большую роль играют качественные методы ана¬
лиза таких систем, необходимость которых обуславливается как ка¬
чественным характером исходной информации о системе, так и
качественным характером результирующей информации, которую
необходимо получить в результате анализа системы.
Под качественным описанием системы принятия решений по¬
нимается представление системы в виде совокупности подсистем,
классификации элементов системы, упорядочение ее элемептов, фор¬
мирование структуры системы, выявление основных, существенных
связей между элементами системы, отнесение системы к опреде¬
ленному классу «типовых» систем и т. п. Подобные задачи каче¬
ственного описания систем известны как задачи структурного ана¬
лиза и синтеза систем, декомпозиции систем на подсистемы, кон¬
струирования систем и их укрупненного представления, обобщения
ситуаций п формирования понятий, классификации и распознава¬
ния образов, принятия решений и анализа рациональности, согла¬
сованности предпочтений и т. д.
Качественное описание системы может проводиться в различ¬
ных целях. Прп исследовании технических н организационных си¬
стем качественное описание системы может проводиться с целью
упрощения анализа и моделирования системы, с целью исследова¬
ния систем на ранних этапах их проектирования, оценки техниче¬
ской и экономической целесообразности разработки системы,
с целью создания в определенном смысле оптимальной структуры
системы, определяющей наиболее эффективное решение поставлен¬
ных перед системой задач п т. д.
Прп исследовании эмпирических данных, характеризующих не¬
которое сложное физическое или социальное явление, качественное
описание данных может проводиться с целью выявления законо¬
мерностей, лежащих в основе исследуемых явлений, описания со¬
вокупности данных в терминах небольшого числа обобщенных по¬
нятий — классов, признаков, факторов.
При исследовании поведения человека и процессов принятия
решений их качественное описание может проводиться с целью
формирования классов ситуаций, соответствующих принимаемым
решениям, анализа рациональности исследуемых процедур, оценки
оптимальности принимаемых решений и т. д.
Исходная информация о системе обычно имеет качественный
впд, если она носит семантический характер, задана в виде клас¬
сов взаимосвязанных элементов системы, представляется в виде от¬
ношения или графа связей между элементами системы, еелн эле¬
10.1. КАЧЕСТВЕННЫЙ АНАЛИЗ
337
менты и связи между ними характеризуются различными призна¬
ками и т. п. Подобная исходная информация о системе имеет
место в логико-лингвистических моделях систем, при анализе эм¬
пирических данных и экспертной информации, в теории принятия
решений.
Исходная информация о системе принятия решений может быть
задана и в количественном виде. Например, элементы системы
могут описываться с помощью набора количественных признаков,
связи между элементами системы могут носить функциональный
характер или измеряться в количественных шкалах. В этом случае
задача качественного анализа систем часто формулируется как за¬
дача поиска структуры системы, оптимизирующей некоторый чис¬
ленный показатель.
Во многих задачах качественного анализа систем исходная ин¬
формация о системе может быть представлена в виде взвешенного
графа, определенного на множестве элементов системы и характери¬
зующего связи между ними. Эта же информация может быть пред¬
ставлена в виде матрицы связей между элементами системы.
Задачи качественного анализа систем в случае, когда веса дуг
взвешенного графа связей измеряются в количественной шкале,
в настоящее время достаточно хорошо изучены. Методы решения
этих задач разрабатывались в рамках теории сетей, структурного
анализа систем, в кластерном анализе, в анализе данных.
Так, задача формирования структуры системы может решаться
как методами дискретного программирования, так и методами клас¬
терного анализа. Кластерный анализ известен также под названием
автоматической классификации, таксономии пли обучения без учи¬
теля. Алгоритмы кластеризации строят разбиение объектов, либо
иерархию разбиений на классы сходных между собой объектов на
основе матрицы сходства или различия между объектами.
Исходная информация о системе может быть также представ¬
лена в виде взвешенного графа, веса которого измерены в поряд¬
ковой шкале (типа шкалы, рассмотренной в 9.2). Подобная ка¬
чественная информация о системе возникает, как правило, в двух
случаях. В первом случае веса связей измеряются непосредственно
в порядковой шкале, а во втором случае веса графа связей изме¬
ряются в количественной шкале, но достоверным при таком изме¬
рении является лишь ранговая упорядоченность силы связей между
объектами.
Непосредственное измерение силы связей между элементами
системы может производиться экспертом, который оценивает ин¬
тенсивности связей фразами типа: «очень сильная связь», «сильная
связь», «связь средней силы», «слабая связь», «очень слабая связь»,
«отсутствие связи» и т. п. Подобная ситуация возникает в теории
принятия решений при оценке экспертом интенсивности предпочте¬
ния альтернатив, в кластерном анализе и структурном анализе си¬
стем при оценке экспертом сходства между объектами. В логико-
22 в. Н. Вагин
338
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
лингвистических моделях систем управления и принятия решений
■семантические сети могут быть представлены в виде взвешенных
графов, веса которых измерены в порядковой шкале, или более
обще, частично упорядочены.
Во втором случае, который часто возникает при обработке эм¬
пирической и экспертной информации, интенсивности связей между
элементами системы, хотя и предполагаются измеряемыми в коли¬
чественной шкале, но фактически измеряются в порядковой шкале,
поскольку достоверным при количественном измерении связей яв¬
ляется лишь ранговая упорядоченность интенсивностей связей. По¬
добная ситуация возникает либо в случае, когда от экспертов
требуют оценить интенсивности связей в количественной шкале,
но эксперт способен оценить их лишь в порядковой шкале, поэтому
в получаемой от него количественной информации достоверной яв¬
ляется лишь ранговая упорядоченность интенсивности связи, либо
в случае, когда величины связей вычисляются иа основе некоторой
количественной информации об элементах системы, но способ вы¬
числения характеризуется определенным произволом, в результате
чего вычисленные количественные интенсивности связей измеря¬
ются наиболее достоверно лишь в порядковой шкале. Первая си¬
туация возникает или из-за отсутствия объективного критерия, по
которому эксперт может оценить интенсивности связей, или из-за
неспособности эксперта количественно оценить связи объектов по
этому критерию, если он имеется. Вторая ситуация возникает, на¬
пример, в случае, когда элементы системы описываются набором
признаков, и матрица связей между элементами системы вычис¬
ляется на основе некоторой функции близости, определенной па
множестве наборов признаков. Тогда нормировка исходных данных,
выбор конкретной меры близости и другие преобразования данных
могут существенно повлиять на структуру получаемой в результате
матрицы связей. Наиболее достоверной информацией, которую дает
в этом случае матрица связей, является лишь информация о ран¬
говой упорядоченности интенсивностей связей между элементами
системы. Более того, даже ранговая упорядоченность интенсивно¬
стей связей между объектами может меняться в зависимости от
способа их вычисления.
В настоящее время методы качественного анализа систем на
оспове взвешенных графов с весами, измеренными в порядковой
шкале, разработаны довольно слабо, и разработка подобных мето¬
дов является актуальной задачей для систем управления и приня¬
тия решений.
Известные методы качественного анализа систем на основе
взвешенных графов, веса которых измерены в порядковой шкале,
как правило, основаны либо на интерпретации подобных весов как
количественных, что не всегда является правомерным, либо на све¬
дении их к дихотомным за счет отождествления весов, лежащих
тю одну сторону от некоторого фиксируемого порога. В последнем
10.1. КАЧЕСТВЕННЫЙ АНАЛИЗ
339
случае взвешенный граф представляется в виде обыкновенного гра¬
фа или отношения, либо в виде системы обыкновенных графов и
отношений, получаемых при выборе различных порогов. Подобное
сведение взвешенного графа с порядковой шкалой к обыкновенно¬
му графу, либо к системе обыкновенных графов, и применение ме¬
тодов теории графов и отношений для качественного описания си¬
стемы на основе полученных обыкновенных графов, является рас¬
пространенным подходом в задачах качественного анализа систем.
Однако, сведение взвешенного графа к обыкновенному приводит к
отождествлению отличающихся друг от друга весов, оказавшихся
по одну сторону от выбираемого порога, н потере исходной ин¬
формации о системе. Лишь одновременное рассмотрение системы
обыкновенных графов при всевозможных порогах приводит к оп¬
ределенному снятию этого недостатка, однако значительно услож¬
няет анализ и подтверждает необходимость разработки специальных
методов, ориентированных на обработку взвешенных графов с по¬
рядковой шкалой.
Развитие методов качественного анализа систем на основе взве¬
шенного графа с порядковой шкалой имеет большое значение для
разработки семиотических систем управления. Семантические сети,
применяемые при построении моделей знаний в семиотических си¬
стемах, часто могут быть представлены в виде взвешенных графов
с весами, измеренными в порядковой шкале. Решение задач обоб¬
щения семантической информации, формирования понятий-классов,
принятия рациональных решений на семантических сетях требует
разработки и методов анализа таких графов.
В теории принятия решений разработка методов анализа пред¬
почтений экспертов, которые при парных сравнениях альтернатив
измеряют силу предпочтений в порядковой шкале, также является
актуальной. Учет силы предпочтений в парных сравнениях позво¬
ляет более адекватно описывать предпочтения эксперта по срав¬
нению с подходом, при котором устанавливается лишь факт пред¬
почтения. Это предопределило интерес, проявляемый в последнее
время к анализу моделей подобных взвешенных предпочтений,
в которых веса в графе предпочтения характеризуют силу, интен¬
сивность, степень предпочтения между парами альтернатив. Однако
учет силы предпочтений в парных сравнениях производится, как
правило, с целью количественного описания предпочтений, н по¬
этому от эксперта обычно требуется измерять попарные предпоч¬
тения в количественной шкале — в шкале интервалов или шкале
подобия (шкала отношений), хотя и в этих случаях возникают
парадоксы, требующие довольно сложных процедур для их устра¬
нения. Но эксперту обычно трудно измерять свои предпочтения
в количественной шкале и наиболее удобной для эксперта является
часто лишь порядковая шкала. Исследования же взвешенных от¬
ношений предпочтения с порядковыми шкалами практически не
проводились.
22*
340
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
Таким образом, задачи качественного анализа систем на основе
взвешенного графа, веса которого измерены в порядковой шкале,
возникающие в структурном анализе систем, в кластерном анализе,
в теории принятия решений и теории семиотических систем, тре¬
буют создания принципиально новых методов решения этих задач.
10.2. Постановка задачи иерархической кластеризации
Взвешенным отношением будем называть весовую функцию
R : X X X -<- W, где X — множество объектов системы, a W — мно¬
жество весов. Тогда взвешенный граф задается тройкой G =
= (X, R, W">. Для каждой пары вершин ад, хг графа G функция R
ставит в соответствие элемент Д(ад, х2) из W, определяющий вес
дуги (xi, х2) в G. В случае, когда множество весов W линейно
упорядочено, элементы из W могут быть измерены в порядковой
шкале. Под взвешенным графом с весами, измеренными в поряд¬
ковой шкале, мы будем понимать граф G = <Х, R, W>, где W —
линейно упорядочено. В более общем случае иод W будет пони¬
маться решетка, т. е. частично упорядоченное множество, на ко¬
тором определены операции взятия наименьшей верхней грани V
и наибольшей нижней грани Д. Эти операции связаны с отношени¬
ем частичной упорядоченности «£ в W следующим образом: для
всех а, Ъ е W положим а^Ь, если а/\Ь = а и аУ Ъ = Ъ.
Множество всех весовых функций R будем обозначать Д. По¬
лагая множество X конечным, функция R (и соответствующий
граф G) может быть представлена в виде матрицы, строки и столб¬
цы которой соответствуют элементам множества X, а на пересече¬
нии строки Xi и столбца хг стоит элемент R{xu х2).
Обыкновенный, невзвешенный граф можно задать с помощью
отношения, определенного на множестве X, которое содержит та¬
кие и только такие пары элементов (ад, ад), для которых в этом
графе имеется дуга из ад в ад. Это отношение может быть пред¬
ставлено в виде функции
R: 1Х1^{0, 1}
таким образом, что (ац, ад) принадлежит отношению тогда и только
тогда, когда R(xt, х2)= 1. Таким образом, обыкновенный граф мож¬
но рассматривать как взвешенный граф, в котором дуга имеет
вес 1, если она имеется в обыкновенном графе, и вес 0, если дуга
в обыкновенном графе отсутствует.
Интерпретируя функцию R как взвешенное отношение, можно
с помощью операций V и Д из W построить алгебру взвешенных
отношений, аналогичную алгебре обыкновенных отношений.
С помощью операций V и Д из W можно ввести операции U
и П на Л, которые будут определяться поэлементно следующим
образом:
(Ri U R2) (xi, x2) = Ri(Xi, x2)V R2(x i, x2) для всех ад, x2 ^ X,
(RiCiR2)(Xi, x2) = Ri(xu x2) ДR2(xu x2) для всех ад, x2 ^ X.
10.2. ПОСТАНОВКА ЗАДАЧИ ИЕРАРХИЧЕСКОЙ КЛАСТЕРИЗАЦИИ 341
Нетрудно увидеть, что операции U и П определяют решетку на
множестве всех взвешенных отношений Л. Отношения равенства
и частичной упорядоченности на Л определяются следующим
образом:
Л, = Л2 Л( (ж£, ж2) = Л2 (ж£, х2) для всех ж£, хг ^ X,
Л£ s Н2 -<=i- Л£ (ж£, ж2) ■ Л2 (ж£, ж2) для всех ж£, ж2 е X.
Взвешенное отношение Л-1, обратное отношению Л, может быть
определено следующим образом:
Л~‘(ж£, ж2) = Л(ж2, ж£) для всех ж£, х2еХ.
Другие понятия, аналогичные понятиям для обыкновенных от¬
ношений, могут быть введены для взвешенных отношений подобным
же образом. Так, отношение равенства Е определяется следующим
образом:
'I, если хх = х2 для всех ж1; ж2 ^ X,
Л (xv х2) в ПрОТИВНОМ случае,
где / и со — наибольший и наименьший элементы W соответственно.
Различные типы взвешенных отношений могут быть определе¬
ны с помощью свойств, аналогичных свойствам обыкновенных от¬
ношений.
1. Симметричность'.
Л = Л-1, Л(ж£, ж2) = Л(ж2, для всех ж£, ж2еХ. (10.1)
2. Антисимметричность-.
R[\R~i^E, R(xt, х2) Д Л(ж2, Xt) = со
для всех ж£, х2 еХ, ж£ Ф х2. (10.2)
3. Асимметричность:
ЛПЛ~‘ = 0, R(Xi, х2) Д Л (ж2, х^ = со для всех ж£, ж2 е X, (10.3)
где 0 — пустое отношение, равное наименьшему элементу со из W.
4. Полнота:
ЛиЛ-1 = £7, Л(ж£, x2)V R(x2, ж£) = / для всех ж£, ж2еХ, (10.4)
где U — универсальное отношение, равное наибольшему элементу
I из W.
5. Рефлексивность:
E^R, R(x, х) = 1 для всех ж<=Х. (10.5)
6. Антирефлексивность:
R П Е = 0, Л (ж, ж)=со для всех цеХ, (10.6)
7. Слабая рефлексивность:
Л (ж, x)>R(x, у) для всех #, i/eX. (10.7)
342
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
8. Сильная рефлексивность:
R(x, x) = I, R(x, у)<1 для всех х, у^Х, хФу. (10.8)
9. Слабая антирефлексивность:
R(x, x)^R(x, у) для всех х, у^Х. (10.9)
10. Сильная антирефлексивность:
R{x, х)= со, R(x,y)> со для всех х, у е X, хФу. (10.10)
И. Слабая полнота:
R(x, y)V R(y, х)> ц> для всех х, у^Х, хФу. (10.11)
Возможны и другие обобщения аналогичных свойств обыкно¬
венных отношений.
Первое обобщение понятия отношения было проведено JL Заде
в рамках теории нечетких множеств. В определении нечеткого от¬
ношения Заде под W понимался интервал вещественных чисел
[0, 1]. Алгебра нечетких отношений Заде послужила основой для
развития методов анализа «нечетких» систем, т. е. систем, в кото¬
рых моделируются нечеткие понятия.
Однако математический аппарат, развитие которому было поло¬
жено в теории «нечетких» систем, имеет более широкое значение
и может использоваться для построения и анализа моделей систем,
связи между которыми взвешены, но имеют достаточно произволь¬
ную интерпретацию, не обязательно лишь нечеткую.
Под задачей качественного анализа систем будем понимать за¬
дачу преобразования взвешенного отношения R: XX X W во
взвешенное отношение Re: XXX-+W, принадлежащее заданному
классу транзитивных взвешенных отношений (их определения см.
дальше) и определяющее искомую структуру системы. Задачу по¬
строения допустимого, «рационального» преобразования R в Re бу¬
рей решать в контексте задачи иерархической кластеризации мно¬
жества X, а отношения Re выбирать в классе транзитивных взве¬
шенных отношений сходства при W, являющемся порядковой
шкалой.
Введем еще несколько понятий. Симметричные и рефлексивные
отношения будем называть отношениями сходства. В теории обык¬
новенных отношений симметричные и рефлексивные отношения
называются отношениями толерантности. Отношениями сходства
являются различные меры сходства между объектами, подобные
меры, например, широко используются в кластерном анализе, в ви¬
де отношений сходства могут быть представлены также различные
типы связей между элементами сети, например, связи, характери¬
зующие пропускные способности каналов и т. п. Отношения сход¬
ства представимы в виде соответствующих матриц сходства.
Симметричные и антирефлексивные отношения будут назы¬
ваться отношениями различия. Отношениями различия являются
10.2. ПОСТАНОВКА ЗАДАЧИ ИЕРАРХИЧЕСКОЙ КЛАСТЕРИЗАЦИИ 343
разнообразные меры различия, функции расстояния и т. п. Отно¬
шения сходства и различия двойственны друг другу. Многие усло¬
вия, записанные для одного из этих отношений, могут быть запи¬
саны двойственным образом и для другого заменой символов V, А,
S*, U, 0 на двойственные им символы Д, V, S*, 0, U со¬
ответственно.
Антисимметричные отношения в теории принятия решений на¬
зываются отношениями упорядочения или порядками. Рефлексивные
порядки называются нестрогими порядками, а антирефлексивные —
строгими порядками. Антисимметричные отношения, представимые
в виде взвешенных односторонне ориентированных графов, могут
характеризовать упорядоченность элементов множества X, домини¬
рование одних элементов над другими, направление потоков в се¬
тях, иерархичность элементов.
Рефлексивные отношения называются слабыми порядками. По¬
добные отношения характеризуют в теории принятия решений от¬
ношения слабого предпочтения.
Рассмотренные взвешенные отношения обладают слишком об¬
щими свойствами и практически не учитывают связи между силой
отношений для разных пар объектов множества X. Условия, учи¬
тывающие эту связь, называются условиями транзитивности. Тран¬
зитивные отношения имеют определенную структуру и определяют
некоторый «правильный» вид взвешенного отношения.
Число отличающихся друг от друга условий транзитивности за¬
висит от типа отношения, для которых они формируются. Наибо¬
лее интересным условием транзитивности, которое может быть
рассмотрено для взвешенных отношений произвольного вида, явля¬
ется условие (V, А)-транзитивности:
R (z, z)^ \J (R (ж, y)/\R (у, z)) для всех i,zel (10.12)
vsx
Это условие транзитивности обобщает условие транзитивности
обыкновенных отношений, которое обычно записывается в виде
R^R °R, где ° — операция композиции обыкновенных отношений.
Взвешенные отношения различных типов, удовлетворяющие усло¬
вию транзитивности (10.12), обладают свойствами аналогичных
обыкновенных отношений. Например, симметричное, рефлексивное
и (V) А)-транзитивное взвешенное отношение, называемое взве¬
шенным отношением эквивалентности, является аналогом обыкно¬
венного отношения эквивалентности и определяет систему разбие¬
ний множества X на классы эквивалентности. Рефлексивное и
(V, А)-транзитивное взвешенное отношение, называемое взвешен¬
ным квазипорядком, является аналогом обыкновенного квазипо¬
рядка и определяет систему разбиений множества X на упорядо¬
ченные классы эквивалентности.
Условия транзитивности взвешенных отношений могут быть за¬
писаны с помощью соответствующим образом определенных one-
344
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
раций композиции взвешенных отношений. Будем рассматривать
операции композиции двух типов. Пусть R, Q, S и Т — взвешенные
отношения, такие, что R: XXY W; Q, S: YXZ-+W; Т: ZX
XV-+W. Тогда операцией (V, *)-композиции будет называться
операция композиции взвешенных отношений °, определяемая соот¬
ношением
(R ° S) (х, z) = V (R (х, у) * S (у, z)) для всех х^Х и zgZ. (10.13)
узУ
Операцией (Д, *) -композиции будет называться операция ком¬
позиции:
(R ° S) (х, z) = Д (R (х, у) * S (у, z)) для всех х^Х и zgZ, (10.14)
VSY
Так как здесь W — полная дистрибутивная решетка, то на W
существуют операции V и Д а) по всем множествам индек-
сов J: cij^W. Операция * будет означать некоторую возможно
отличную от V и Д операцию, определенную на конкретной реа¬
лизации W и удовлетворяющую на W условию ассоциативности,
условию монотонности: из а> b следует а * с> Ъ * с, с * а ^ с * Ъ,
а также условиям дистрибутивности по отношению к соответству¬
ющим по (10.13) и (10.14) операциям V и Д:
jsJ j=J
( V ai\ *c=V (®j*c), a*(V = V (a*ci)> (10.15)
\jS J J }S J \}Sj ) }EiJ
( Д * с = Д (a} * c), a*(/\ Cj) = Д (a*cj). (10.16)
\j=J J i~J \j=J / js J
Операции (V, *)-композиции и (Д, *) -композиции определяют,
соответственно, условия (V, *)-транзитивности
R^RoR (10.17)
п (Д. *)-транзитивности
R^=R°R (10.18)
взвешенных отношений, заданных на X. Общие свойства этих ус¬
ловий двойственны друг другу и могут быть получены друг из
друга заменой V на Д, э па s и > на <. Обозначим /«“ = R и
Rh = Rk~l о R для всех /г = 2,3
Транзитивным замыканием взвешенного отношения R называ¬
ется отношение R, определяемое для (V, *)-композиции как
R = R[)R2[)R3U..., (10.19)
а для (Д, *) -композиции как
/? = ДПЯ2ПЯ3П.... (10.20)
Понятие транзитивного замыкания взвешенных отношений тес¬
но связано с понятием силы оптимальных путей во взвешенном
10.2. ПОСТАНОВКА ЗАДАЧИ ИЕРАРХИЧЕСКОЙ КЛАСТЕРИЗАЦИИ
345
графе отношения Л. Путем длины к из х в z будет называться
последовательность lk{x, z) = (x, yh у2, ..., yh-i, z) элементов из X.
Силой пути 1к будет называться элемент gk(lk) 113 W такой, что
gk(k(x, z)) = R(x, г/i) * R (уи у2)* ...* R(yh-U z). Оптимальной си-
лой пути длиной к из ж в z называется для (V, *) -композиции
gk(x,z)= V gb(h(x,z)), а для (Д, *)-композиции ^(ж, z) =
lh(x,z)
= A gk{h(x, z)). Оптимальной силой пути из ж в z будет на-
зываться, соответственно, g(x, z) = \f gk (x, z) и g(x, z) = Д gk (x, z).
ft ft
Нетрудно увидеть, что для всех х, ге! Rh(x, z) задает опти¬
мальную силу пути длиной к пз х в z, a Л (х, z) — оптимальную
силу пути из х в z.
Таким образом, транзитивное замыкание отношения R перево¬
дит его в транзитивное отношение R, в котором веса R{x, z) ха¬
рактеризуют силу оптимального пути из х в z по графу R. R(x, z)
может означать в зависимости от характера графа и типа операции
транзитивного замыкания максимальную пропускную способность
между вершинами х и z по графу Л, длину кратчайшего пути меж¬
ду х и z, максимально возможную вероятность безошибочной пе¬
редачи сигнала, взятую по всем возможным путям из х в z и т. п.
Другим широко используемым условием транзитивности являет¬
ся условие (Д, +) -транзитивности, определяемое в случае, когда
W является множеством неотрицательных вещественных чисел,
включая +05, т. е., когда W = [0, +«>]. Это условие R(x, z)<
<Л(ж, y)+R{y, z) для всех х, у, геХ известно под названием
неравенства треугольника. Отношения различия, удовлетворяющие
этому условию, называются псевдометриками, псевдометрики, удов¬
летворяющие условию сильной антирефлексивности (10.10), называ¬
ются метриками. Так, для (Д, +) -композиции Л(х, z) может
быть интерпретировано как длина кратчайшего пути между х и z
во взвешенном графе расстояний, задаваемом взвешенным отноше¬
нием Л. Понятия (Д,+)-транзитивности и (Д,-+) -транзитивного
замыкания могут использоваться и в случае, когда W = [— +«>].
Когда мы говорим о связи между свойствами взвешенных и
обыкновенных отношений, то эта связь объясняется одним из важ¬
нейших свойств взвешенных отношений, заключающемся в том, что
взвешенные отношения могут быть представлены в виде иерархи¬
ческой совокупности вложенных друг в друга обыкновенных отно¬
шений. Это разложение (декомпозиция) взвешенных отношений на
совокупность вложенных друг в друга обыкновенных отношений
основано на понятии a-среза взвешенного отношения.
Пусть W линейно упорядочено, т. е. для любых ос, fi ^ W вы¬
полняется одно пз неравенств а ^ или {1 а. Тогда а-срезом
(а>ы) взвешенного отношения Л: XXX ->■ W называется обык¬
346
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
новенное отношение Да: ХХХ->-{0, 1), удовлетворяющее условию
Нетрудно показать, что a-срезы взвешенного отношения упоря¬
дочены по включению, и имеет место следующее соотношение:
Доказана теорема, что взвешенное отношение й на X допускает
разложение: R = U oci?a, где наименьшая верхняя грань (J
a=W a=W
берется по всем а ^ W, а > со.
Также доказано, что если R является взвешенным отношением
эквивалентности, то все его ос-срезы также будут отношениями
эквивалентности, причем из (10.21) следует, что классы эквива¬
лентности этих отношений будут вложены друг в друга. Таким
образом, взвешенное отношение эквивалентности определяет иерар¬
хическую систему вложенных друг в друга разбиений множества X
на классы эквивалентности отношений Ra. Аналогично этому, взве¬
шенный квазипорядок R определяет иерархическую систему вло¬
женных друг в друга разбиений множества X на упорядоченные
классы эквивалентности отношений Ra.
Перейдем теперь непосредственно к задаче иерархической кла¬
стеризации. Задача иерархической кластеризации множества объек¬
тов X — задача формирования иерархии вложенных друг в друга
разбиений множества X на классы «сходных» объектов—может
рассматриваться как задача формирования на множестве X некото¬
рого взвешенного отношения эквивалентности Rэ, определяющего
подобную иерархию разбиений. Отсюда иерархические алгоритмы
кластеризации определяют иерархию разбиений множества объек¬
тов X, ставя в соответствие каждому разбиению некоторое число,
характеризующее сходство объектов внутри классов этого раз¬
биения.
Иерархию разбиений с набором таких чисел мы будем называть
иерархической кластеризацией или иерархической группировкой
множества X. Нетрудно установить связь, существующую между
иерархическими кластеризациями и взвешенными отношениями
эквивалентности Ra: X X X W, где W —- множество вещественных
чисел, определяющими своими a-срезами иерархию вложенных друг
в друга обыкновенных отношений эквивалентности, и как следствие,
иерархию вложенных друг в друга разбиений множества X на
классы эквивалентности. Иерархические алгоритмы кластеризации
1, при R (ж,г/)> а,
0 в противном случае для всех х, у е X.
из а J3 следует RasRp.
Пусть aRa означает взвешенное отношение, такое что
(10.21)
^ fee при Ra(x, у) = 1,
(со при Rа (х, у) = 0 для всех х,у^Х.
10.2. ПОСТАНОВКА ЗАДАЧИ ИЕРАРХИЧЕСКОЙ КЛАСТЕРИЗАЦИИ 347
производят кластеризацию объектов на основе заданной матрицы
сходства (различия) между объектами, которую можно интерпре¬
тировать как взвешенное отношение сходства (различия) между
объектами. Результат работы иерархического алгоритма кластери¬
зации может быть представлен в виде взвешенного отношения
эквивалентности. Таким образом, работу иерархических алгоритмов
кластеризации можно рассматривать как преобразование заданного
взвешенного отношения сходства между объектами в некоторое
взвешенное отношение эквивалентности. Это позволяет поставить
задачу иерархической кластеризации данных как задачу преобра¬
зования заданного взвешенного отношения сходства между объек¬
тами во взвешенное отношение эквивалентности.
Постановка задачи иерархической кластеризации как задачи
преобразования взвешенного отношения сходства во взвешенное
отношение эквивалентности рассматривается нами в рамках общей
постановки задачи качественного анализа систем как задачи преоб¬
разования исходной неструктурированной информации о системе в
структурированную информацию из заданного класса.
Задача иерархической кластеризации как задача преобразования
неструктурированной информации в структурированную, рассмат¬
ривалась неоднократно в различных постановках. В работах
Н. Джардайна и Р. Сибсона задача иерархической кластеризации
формулировалась как задача преобразования взвешенного отноше¬
ния различия в (Aj V)тРанзитивное отношение различия. Этот
подход двойственен предлагаемому нами. С. Джонсон предложил
алгоритмы кластеризации, известные под названием «ближайший
сосед» и «дальний сосед». Эти алгоритмы имеют простую интерпре¬
тацию в терминах взвешенных отношений. Алгоритм «ближайший
сосед» преобразует исходное отношение сходства Rc в его (V > Д)~
транзитивное замыкание Йс, которое является взвешенным отноше¬
нием эквивалентности. Алгоритм «дальний сосед» преобразует Дс
во взвешенное отношение эквивалентности, классами подобия кото¬
рого являются взвешенные аналоги предклассов толерантности от¬
ношения R0. Недостаток последнего алгоритма — неоднозначность
результатов его работы, что предъявляло к нему многочисленные
претензии.
Существенной особенностью подхода Н. Джардайна и Р. Сиб¬
сона является процедура (Д, +)-транзитивного замыкания исход¬
ного взвешенного отношения различия i?p, которая формирует бли¬
жайшее в пространстве взвешенных отношений различия транзи¬
тивное отношение йре, удовлетворяющее условию Дре — Rp. По¬
пытка аксиоматического обоснования иерархических алгоритмов
кластеризации, предпринимаемая в работах Н. Джардайна и Р. Сиб¬
сона, привела к тому, что единственным алгоритмом, удовлетворяю¬
щим сформулированному выше требованию, оказался алгоритм
«ближайший сосед». Нами далее предлагается целая схема алго¬
ритмов» удовлетворяющих аналогичному требованию.
348
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
Другая постановка задачи иерархической кластеризации рас¬
сматривалась Дж. Хартиганом в терминах «матриц, имеющих струк¬
туру дерева». Подобные матрицы сходства соответствуют взвешен¬
ным отношениям эквивалентности и определяют некоторое дерево
(иерархию) разбиений. Формировалась задача аппроксимации ис¬
ходной матрицы сходства матрицей, имеющей структуру дерева, и
указывалось решение задачи аппроксимации для любого заданного
наперед дерева разбиений. Решение задачи аппроксимации при не¬
известном дереве разбиений, что обычно и имеет место в практиче¬
ских задачах, производится либо путем перебора по всем деревьям,
либо путем вариации дерева, для которого соответствующая мат¬
рица уже вычислена. Этот подход приводит к просмотру всех воз¬
можных деревьев, число которых очень быстро растет с увеличением
числа элементов исходного множества.
Аналогичная постановка задачи иерархической кластеризации
ставилась А. А. Ляпуновым в терминах графов p-сходства. Исход¬
ная информация о сходстве объектов представляется в виде взве¬
шенного графа сходства. Задача иерархической кластеризации ста¬
вится как задача аппроксимации взвешенного графа сходства
иерархией вложенных друг в друга графов, компоненты связности
которых являются полными подграфами. Различные оценки реше¬
ния этой задачи для графов частного вида были получены
Г. Ш. Фридманом, однако, эффективный алгоритм решения этой
задачи в общем случае не известен. Задача аппроксимации взве¬
шенных графов сходства естественным образом формулируется
в терминах взвешенных отношений как задача аппроксимации
взвешенного отношения сходства взвешенным отношением экви¬
валентности.
В терминах нечетких отношений задача иерархической класте¬
ризации в аналогичной постановке также исследовалась многими
авторами. Связь нечетких отношений эквивалентности с иерархиче¬
скими кластеризациями отмечалась Л. Заде. С. Тамура, С. Хигучи
и К. Танака в качестве иерархического алгоритма кластеризации
предложили процедуру транзитивного замыкания исходного нечет¬
кого отношения сходства. Дж. Данн показал, что такая процедура
эквивалентна кластеризации по алгоритму «ближайший сосед».
A. И. Аверкин и С. П. Макеев в задаче аппроксимации нечетких
отношений установили оценку различия между исходным нечетким
отношением сходства и оптимальной аппроксимацией для одного
типа расстояния между отношениями. Ю. П. Дробышевым и
B. В. Пуховым рассматривалась задача аппроксимации нечетких
отношений обыкновенными отношениями эквивалентности.
Аналогичный отмеченному выше подход в терминах обыкновен¬
ных отношений толерантности и эквивалентности рассматривался
Б. Г. Миркиным.
Иерархические алгоритмы кластеризации выполняются по сле¬
дующей схеме.
10.3. ВЫДЕЛЕНИЕ МНОЖЕСТВА ДОПУСТИМЫХ ПРЕОБРАЗОВАНИЙ 349
Шаг 1. Множество X разбивается на совокупность непересека-
ющпхся классов G0 = Ы01, А02, ..., А0n}, A0j = {zj), 7 = 1, Щ
и A0j = X, AojnA,k = 0, к Ф /; i = 0, а0 = М, где W = [ О, М\ и
1
М — положительное вещественное число.
Шаг 2. Если i = п, то СТОП, в противном случае переход
к шагу 3.
Шаг 3. Находятся наиболее сходные кластеры Ац, Аи раз¬
биения Gi, т. е. такие, что Rc{Aij,Aii) = max Rc (A{j, Аи),
где It (.1Ац) — сходство между кластерами Ау, Аи, определяемое
для каждого метода особо.
Шаг 4. Строится разбиение Gt+l, которое получается из раз¬
биения Gi в результате объединения классов Ац и ai+1 =
= Rc (Ац,А*и), г := г + 1.
Шаг 5. Вычисляется сходство между вновь построенным классом
и всеми остальными классами разбиения G{.
Шаг 6. Переход к шагу 2.
Конкретные алгоритмы кластеризации отличаются друг от дру¬
га шагом 5 — способом вычисления сходства между кластерами.
В заключение этого раздела отметим, что исследование задачи
иерархической кластеризации в терминах взвешенных отношений
обладает следующими преимуществами:
1) более адекватно отражается сущность задачи кластеризации
из-за естественной связи между понятиями разбиения и отношения
эквивалентности, иерархии разбиений и взвешенного отношения
эквивалентности;
2) сущность многих известных алгоритмов иерархической кла¬
стеризации может быть лучше понята прп интерпретации их в тер¬
минах взвешенных отношений;
3) для анализа задачи иерархической кластеризации могут быть
привлечены свойства взвешенных отношений сходства и эквива¬
лентности, свойства пространства взвешенных отношений и алгеб¬
раический аппарат теории взвешенных отношений;
4) задача иерархической кластеризации может рассматриваться
в рамках общей задачи структурного анализа систем, что позволяет
установить связи этой задачи с другими задачами анализа струк¬
туры систем.
10.3. Выделение множества допустимых
транзитивных преобразований
В настоящее время существует достаточно большое количество
методов кластеризации, отличающихся друг от друга способом
объединения объектов в кластеры, критериями, определяющими
оптимальность разбиения на кластеры, используемым математике-
350
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
ским аппаратом. Все эти методы обычно имеют содержательное
обоснование, однако дают в общем случае различные разбиения
исходного множества объектов. Наличие разнообразных методов
кластеризации объясняется тем, что, по-видимому, не существует
универсального метода кластеризации, пригодного для всех воз¬
можных типов исходных данных, контекстов и целей классифика¬
ции. Более того, выбор конкретного метода кластеризации, наибо¬
лее удачно классифицирующего имеющиеся данные, сам по себе
является довольно сложной задачей, так как пользователю часто
бывает легче сравнить результаты классификации с интуитивным
представлением о структуре данных, чем сформулировать принципы
формирования кластеров. Подобная ситуация особенно часто возни¬
кает в задачах анализа структуры впервые встретившихся «не¬
стандартных» данных, когда кроме исходной матрицы сходства
между объектами и интуитивных представлений пользователя
о структуре данных отсутствует какая-либо априорная информация
о данных, которая может быть формализована в виде определен¬
ных формальных требований к алгоритму кластеризации и резуль¬
тату его работы.
В связи с этим возникают две задачи: исследование множества
всех допустимых кластеризаций исходного множества объектов,
которые могут быть построены на основе заданной матрицы сход¬
ства между объектами, и разработка схем алгоритмов кластериза¬
ции, различные реализации которых позволяли бы пользователю
исследовать возможные структуры данных.
Исследования множества допустимых, рациональных кластери¬
заций и алгоритмов кластеризации, касающиеся «компактности»
кластеров, «хорошей» разделимости кластеров, стабильности мето¬
дов кластеризации, независимости их от слабых возмущений в
данных и т. п., проводятся с целью выделить достаточно узкий
класс «хороших» алгоритмов кластеризации, удовлетворительно
решающих задачу кластеризации.
Однако в разных задачах в зависимости от целей кластериза¬
ции одни и те же данные могут быть сформированы в совершенно
различные структуры. Поэтому в задачах кластеризации данных,
когда отсутствуют априорные представления о структуре данных,
возникает задача исследования множества допустимых иерархиче¬
ских кластеризаций, основывающаяся не на попытке выделить не¬
которые «хорошие» алгоритмы кластеризации, а на попытке найти
то общее, что есть у большинства алгоритмов кластеризации, и так
или иначе содеряштся в различных точках зрения на понятие
«разумности» кластеризации.
В соответствии со сформулированной выше задачей мы рассмот¬
рим множество допустимых иерархических кластеризаций, в основу
которого будут положены наиболее слабые требования о «разум¬
ности» кластеризации, содержащиеся у большинства, часто проти¬
воречивых принципов кластеризации. Эти требования основаны на
10.3. ВЫДЕЛЕНИЕ МНОЖЕСТВА ДОПУСТИМЫХ ПРЕОБРАЗОВАНИЙ 351
представлении о кластере как о связном множестве ядер, лежащем
в основе большинства представлений о «разумном» кластере. По¬
нятие связности ограничивает максимальные размеры кластера,
а понятие ядра ограничивает его минимальные размеры.
Различные нормативные подходы к задачам кластеризации пы¬
таются сформулировать условия, позволяющие выделить некоторую»
«золотую середину» между этими двумя крайними точками зрения.
Однако, как уже отмечалось выше, эти крайние точки зрения име¬
ют равное с другими точками зрения право на существование
(и часто используются в практике), поэтому мы будем исследовать
все множество допустимых кластеризаций.
Большинство известных алгоритмов кластеризации при приме¬
нении их к обыкновенному отношению сходства (толерантности)
Rc выделяют в качестве кластеров связные подграфы графа отно¬
шения Rc. Максимальными такими подграфами являются связные
компоненты этого графа,— подобные кластеры строит алгоритм
«ближайший сосед». Минимальными подграфами — кластерами яв¬
ляются полные подграфы,— подобные кластеры выделяет алгоритм
«дальний сосед». Другие алгоритмы строят кластеры, промежуточ¬
ные между этими двумя крайними случаями.
Заметим, что, так как максимальные полные подграфы (клики
графа) пересекаются, а алгоритмы кластеризации строят разбиения
на непересекающиеся кластеры, то результат работы алгоритма
«дальний сосед» будет в общем случае неоднозначным, так как
может существовать большое количество отличных друг от друга
разбиений графа на полные непересекающиеся подграфы. Полными
подграфами, целиком входящими во все возможные кластеры, фор¬
мируемые алгоритмом «дальний сосед», являются некоторые под¬
графы, вершины которых образуют ядра отношения толерантности
Rc. В терминах теории графов ядрам будут соответствовать наи¬
меньшие непустые пересечения максимальных полных подграфов Rc.
Ядра обыкновенного отношения толерантности йс могут быть
легко определены следующим образом. Назовем элементы х, у <= X
неразличимыми по отношению толерантности йс, если Rc{x, z)==
= Rc(y, z) Для всех zej. Ядром называется максимальное под¬
множество множества X, все элементы которого неразличимы меж¬
ду собой. Ясно, что отношение неразличимости является отноше¬
нием эквивалентности, и ядра совпадают с классами эквивалент¬
ности этого отношения. Ядерным отношением для Rc мы будем
называть обыкновенное отношение эквивалентности Л„, классы
эквивалентности которого совпадают с ядрами отношения Rc. Таким
образом, для обыкновенных отношений ядерпое отношение для Re
легко может быть получено следующим образом:
(1, если Rc(x, *) = Rc(y, *),
■^Я (Я, У) | г»
' (0 в противном случае,
где Rc{x, *) означает строку х в матрице отношений Rc.
352
ГП. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
Мы будем здесь предполагать, что ядра отношения толерантно¬
сти Ra должны быть неделимы при любом «разумном» алгоритме
кластеризации, и каждое ядро отношения Rc должно целиком вхо¬
дить в некоторый кластер, формируемый подобным алгоритмом.
Заметим, что ядра отношения Re будут максимальными полными
подграфами, целиком входящими в кластеры, формируемые алго¬
ритмом «дальний сосед», при любой исходной нумерации объектов
множества X. Ядра отношения Rc будут также считаться наимень¬
шими возможными кластерами, которые можно рассматривать как
«разумные» кластеры.
Основываясь на приведенных выше соображениях, в качестве
необходимых условий, которым должен удовлетворять «разумный»
кластер, формируемый на основе обыкновенного отношения толе¬
рантности Дс, мы будем считать условие связности графа, пред¬
ставляющего кластер, и условие неделимости ядер отношения RK.
Формально эти условия можно записать следующим образом.
Пусть Rc — обыкновенное отношение толерантности (сходства)
на множестве X. Допустимым кластером для отношения Rc будет
называться подмножество A s X, удовлетворяющее следующим
условиям:
П1. ух, z <= А зг/ь уг, ..., ук^А: Rc(x, у,) =
= Rc{y 1, уг) = ... = Rc(у*, z) = l.
П2. ух^А, уу^Х: yz е'Х (Rc (х, z) = Rc (у, z)) => у <= А.
Условия П1 и П2 определяют в качестве допустимого кластера
любое связное подмножество ядер отношения Rc. Допустимым раз¬
биением множества X будет считаться любое разбиение его на
связные подмножества ядер.
Нетрудно увидеть, что для любого отношения Rc, удовлетво¬
ряющего условию Ля£Йс£ Rc, связные компоненты соответ¬
ствующего ему графа образуют допустимое разбиение множества
X и, наоборот, любое допустимое разбиение множества X состоит
из связных компонент графа некоторого отношения Rc е [йя> Нс].
Учитывая, что классы эквивалентности отношения эквивалентности
Rc совпадают со связными компонентами графа отношения Rc,
получаем, что между множеством допустимых разбиений множе¬
ства X, и множеством отношений эквивалентности Rc таких, что
Rc^[Ra,Rc], можно установить взаимно однозначное^ соответ¬
ствие. Таким образом, двухэтапная процедура Rc~^ Rc~^~ Rc преоб¬
разования исходного отношения сходства Rc в отношение эквива¬
лентности Rc позволяет получить все допустимые разбиения
множества X и только такие разбиения.
Подобная процедура транзитивного преобразования отношения
сходства RB в отношение эквивалентности Rc будет называться
10.3. ВЫДЕЛЕНИЕ МНОЖЕСТВА ДОПУСТИМЫХ ПРЕОБРАЗОВАНИЙ 353
допустимым транзитивным преобразованием отношения Rc. Множе¬
ство всех отношений эквивалентности Rc таких, что Rc е [йя, Rc]
будет называться транзитивной окрестностью отношения й0,
а отношения R с — транзитивными аппроксимациями отношения
Rc. Как нетрудно увидеть, транзитивная окрестность отноше¬
ния Rc содержится в интервале [йя, йс], но в общем случае
не совпадает с множеством транзитивных отношений из этого
интервала.
Рассмотренная процедура транзитивного преобразования обык¬
новенного отношения сходства (толерантности) Rc может быть лег¬
ко обобщена п на случай взвешенных отношений сходства. В этом
случае транзитивное преобразование взвешенного отношения сход¬
ства во взвешенное отношение эквивалентности будет определять
иерархическую кластеризацию множества X, которую мы будем
называть допустимой иерархической кластеризацией. Для случая
взвешенных отношений взвешепное ядерное отношение йя будет
определяться следующим образом.
1. Строится ядерное отношение на максимальном уровне a^W.
Сходство между объектами, объединенными на этом уровне в одно
ядро, полагается равным k: Rn{x, у) = к. Сходство между ядрами
этого уровня х, у — X определяется как наименьшее сходство меж¬
ду их элементами Rc{x, у) = f\^Rc{x,y).
х= ху~ у
2. Для вновь полученного взвешенного отношения Rc, опреде¬
ленного на полученном множестве ядер X, ищется максимальный
уровень а е W, при котором происходит объединение некоторых
элементов из X в новые ядра. Полагаем Ra{x, у) = к для всех х,
у е X, объединенных на этом уровне в одном ядре и находившихся
до этого в разных ядрах. Вычисляется сходство между вновь полу¬
ченным ядром и всеми остальными ядрами у <= X: Rc(x, у) =
= Д Rc{xi, у), где Xi — ядра, из которых формируется новое
Xj€= X
ядро х. Если все элементы множества X объединены в одно ядро,
то СТОН, иначе, возврат к шагу 2.
Допустимое транзитивное преобразование взвешенного отноше¬
ния сходства будет осуществляться по рассмотренной выше общей
схеме: на первом этапе взвешенное отношение сходства преобра¬
зуется во взвешенное отношение с ^ а на втором
этапе это отношение Rc преобразуется в его (V» Д) -транзитив¬
ное замыкание Rc■ Построенный класс допустимых транзитивных
преобразований определяет широкий класс допустимых иерархиче¬
ских кластеризаций множества X на основе заданного взвешенного
отношения сходства Rc. Конкретное преобразование из класса до¬
пустимых будет определяться способом преобразования взвешенного
отношения Rc во взвешенное отношение Rc ^ [^я, ^с]-
354
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
Предложенная общая схема допустимых транзитивных преобра¬
зований позволяет получать новые иерархические алгоритмы кла¬
стеризации, в основу которых могут быть положены различные эв¬
ристические принципы коррекции отношения Rc, определяющие
способ его преобразования в отношение Rc^ [Rn,Rc]- В следу¬
ющем разделе будет рассмотрено несколько конкретных реализаций
предложенной общей схемы.
10.4. Общая схема допустимых транзитивных преобразований
и алгоритмы ее реализации
Общая схема допустимых транзитивных преобразований может
быть записана в виде диаграммы:
К*
где TR означает допустимое транзитивное преобразование взвешен¬
ного отношения сходства Rc во взвешенное отношение эквивалент¬
ности Rа. ТС означает процедуру (V> А)-транзитивного замыкания,
a F — процедуру коррекции отношения Rc.
Различные реализации общей схемы определяются видом пре¬
образования F, которое осуществляет ослабление некоторых связей
в отношении Rc. Различные принципы, лежащие в основе такой
«корректировки» связей, могут быть использованы для построения
конкретных реализаций общей схемы допустимых транзитивных
преобразований.
Как уже отмечалось, общая схема допустимых транзитивных
преобразований была нами построена на основе наиболее общих
предположений о допустимой иерархической кластеризации. На
множестве всех допустимых транзитивных преобразований могут
быть наложены дополнительные требования рациональности пре¬
образований с целью выделить с той или иной точки зрения «ра¬
зумные» преобразования. Еще раз отметим, что такие требования
отражают лишь одну из возможных точек зрения на понятия ра¬
циональности, однако играют важную роль при выборе конкретных
решений из всего множества допустимых решений, позволяя умень¬
шить произвол в выборе решений. Наиболее распространенными
требованиями такого рода являются требования инвариантности
решений, применяемые как в теории принятия решений, так и в
кластерном анализе.
10.4. ОБЩАЯ СХЕМА ДОПУСТИМЫХ ПРЕОБРАЗОВАНИЙ
355
Рассмотрим условия рациональности процедуры кластеризации,
аналогичные условиям, используемым в работах Н. Джардайна и
Р. Сибсона. Эти условия будут следующими.
а) Независимость результата кластеризации от порядка исход¬
ной нумерации (от перестановки) объектов:
ПЗ. TR(Rc) = TR(aRc).
Здесь oRc означает взвешенное отношение, получающееся из Rc
при перестановке а элементов множества X.
б) Транзитивное преобразование взвешенного отношения экви¬
валентности не меняет его:
П4. TR(R3) = R3.
Это требование выполняется в нашей общей схеме допустимых
транзитивных преобразований, так как ядерное отношение взве¬
шенного отношения эквивалентности совпадает с ним, т. еМя — КЯ-
Поэтому интервал [Я£,ДЭ] состоит из одного элемента R3.
А транзитивное замыкание взвешенного отношения эквивалентности
также не меняет его:
ТС (R3) = R3 = R3.
в) Независимость результата кластеризации от любых строго
монотонных преобразований весов отношения Дс:
П5. TR(f Rc) = f-TR(Rc).
Здесь / • Rc означает взвешенное отношение, получающееся из
отношения Rc: XXX->-W при любом строго монотонном преобра¬
зовании / весов множества W. Условие П5 требует, чтобы транзи¬
тивное преобразование TR(RC) учитывало лишь линейную упоря¬
доченность элементов множества W.
Условие П5 является важным требованием к алгоритмам клас¬
теризации, так как в практических задачах лишь информация об
упорядоченности шкалы W является обычно наиболее достоверной.
Уяснение подобного обстоятельства привело к возросшему в послед¬
нее время интересу к разработке неметрических методов обработки
эмпирических данных (см., например, работы Р. Н. Шепарда и
А. И. Орлова).
г) Транзитивное преобразование взвешенного отношения сход¬
ства должно формировать взвешенное отношение эквивалентности
R\ близкое к исходному отношению:
Пб. d(RCj TR(RC)) мало.
Здесь d — некоторая мера различия в пространстве взвешенных
отношений.
Условие П6 будет рассматриваться как некоторое «пожелание»,
которого разумно придерживаться, и это условие будет определяю¬
щим при решении задачи аппроксимации взвешенных отношений.
Однако, здесь мы не будем требовать обязательного выполнения
этого условия, так как существуют «разумные» алгоритмы класте¬
ризации, которые не удовлетворяют этому свойству. Примером та-
23*
356
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
кого алгоритма является алгоритм «ближайший сосед», который
позволяет выявлять «цепочечные» свойства кластеров и дает обыч¬
но плохие в смысле критерия Пб аппроксимации исходного от¬
ношения.
д) Транзитивная аппроксимация должна содержать все «есте¬
ственные» кластеры исходного отношения сходства:
П7. TR (Яс) содержит все классы подобия отношения Яс.
Напомним, что классом подобия на уровне ос отношения сход¬
ства Rc будем называть подмножество А ^ X такое, что если су¬
ществует a^W, то Rc{x, у)> а и Яс(ж, z)< ос для всех х,у<^А,
z<£A.
Таким образом, любое допустимое транзитивное преобразование
удовлетворяет условиям П4 и П7. Требование Пб может присут¬
ствовать в виде «пожелания». В качестве основных требований,
которых рационально придерживаться при реализации общей схемы
допустимых транзитивных преобразований, можно выбрать условия
ПЗ и П5. В общей схеме допустимых транзитивных преобразований
преобразование ТС — транзитивное замыкание отношения Rc —
является однозначно определенным и удовлетворяет условиям ПЗ
и П5. Поэтому выполнения условий ПЗ и П5 достаточно потребо¬
вать лишь от преобразования F. Преобразование F осуществляет
корректировку отношения Яс за счет ослабления некоторых связей
между элементами множества X. Такая корректировка отношения
Яс может происходить за счет влияния друг на друга связей между
объектами множества X.
Рассмотрим некоторые алгоритмы реализации общей схемы
транзитивных преобразований, основывающиеся на приведенных
рассуждениях.
Алгоритм Fd. Алгоритм переводит Rc в Rc:
ЯС(ЯС) = ЯС.
Суммарное транзитивное преобразование переводит Яс в Яс:
TRd (Re) = TC{Fd (Rc) ) = TC(Rc) = Rc.
Этот алгоритм совпадает с известным алгоритмом «ближайший
сосед» и формирует кластеры, представляющие из себя «цепочки»
объектов.
Алгоритм Яя. Алгоритм переводит Rc в Яя:
Яя(Яс) = Яя,
которое уже транзитивно, что в результате дает
TRr (Я„) = ТС (Яя (Яс)) = ТС (Яя) = Яя = Яя.
Алгоритм выделяет взвешенные аналоги ядер отношения Яс.
При наличии «естественных» кластеров, эти кластеры будут выде¬
лены алгоритмом Яя. При равномерном распределении связей меж¬
10.4. ОБЩАЯ СХЕМА ДОПУСТИМЫХ ПРЕОБРАЗОВАНИЙ
357
ду объектами п отсутствии «естественных» кластеров алгоритм
формирует одиночные кластеры, точнее кластеры со слабой взаим¬
ной силой сходства между объектами из одного кластера.
Алгоритм Fn. Этот алгоритм преобразует взвешенное отношение
Rc во взвешенное отношение FN(RC), которое мы будем называть
взвешенным отношением неразличимости и обозначать Адс. Таким,
образом, Fn(Rc)= NRc^[Rn,Rc], где NRc определяется следую¬
щим образом. NR(, (х, у) принимает значение максимального уров¬
ня сс, при котором х я у «ос-неразличимы», т. е. неразличимы по
отношению Ra'. Ra(x, z) = Ra(y, z) для всех Взвешенное
отношение неразличимости NRc является аналогом обыкновенного
отношения неразличимости, однако не удовлетворяет условию
транзитивности и не совпадает с ядерным отношением. Результи¬
рующее трапзитивное преобразование в алгоритме FN будет сле¬
дующим:
Особенность этого алгоритма заключается в том, что он, как
правило, выделяет некоторые «устойчивые» для разных методов
кластеризации кластеры, аналогичные кластерам, получаемым ал¬
горитмом Fr. Однако кластеры, выделяемые алгоритмом FN, будут
в общем случае отличаться от кластеров, формируемых взвешенным
ядерным отношении FR, кластеры которого являются обычно клас¬
сами подобия на достаточно низком уровне.
Алгоритм Fw. Алгоритм производит ослабление силы связей
между объектами за счет учета влияния «близких соседей». Пре¬
образование Fw превращает взвешенное отношение Rc во взвешен¬
ное отношение WRc, определяемое следующим образом:
Суммарное преобразование будет следующим: TRw(^c) = Wrc-
Алгоритм FcW. Этот алгоритм является параметрическим и за¬
висит от параметра с g= [0, 1]. FcW преобразует взвешенное отноше¬
ние Rc во взвешенное отношение cWRc, определяемое следующим
образом:
Здесь \А\—мощность множества А, определяемого также, как
в алгоритме Fw, \А+\ — мощность множества А¥ = {z е Х|Дс(ж, z) Д
A Rc (У, z)>R0(x, у)}, с —параметр.
TRn (Rc) = ТС (Fn {Rc)) = ТС (NRc) = nRc.
WRc(x,y)= Д (Rc(x, z) Д Rc{y, z)),
где
A = {z^X\Rc(x, z)VRc(y, z)>Rc{x, y)}.
358
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
В этом алгоритме связь Rc(x, у) между объектами х и у со¬
храняется, если число объектов (|А+| — 2), с которыми оба объекта
х и у «сильно связаны», превышает долю с объектов (Ml—2),
с которыми хотя бы один объект х или у «сильно связаны». Други¬
ми словами «голоса» объектов из А влияют на судьбу связи между
х и у, причем объекты из «голосуют» за то, чтобы связь
между х я у сохранила свое значение. Параметр с говорит, какова
должна быть доля «положительных голосов», чтобы связь между
х п у сохрапила свое значение.
В этом алгоритме, так же как и в алгоритме Fw, происходит
учет влияния «близких соседей»: связь между х и у сохраняется,
если х и у ведут себя примерно «одинаково» по отношению к своим
«близким соседям». Параметр с определяет степень этой «одина¬
ковости».
При с = 0 алгоритм FcW приводит к алгоритму FD «ближайший
сосед». При с = 1 Few совпадает с алгоритмом Fw. Алгоритмы FD
и Fw являются «крайними точками зрения» для алгоритма Few.
В алгоритме FD связь Rc(x, у) сохраняется всегда, а в алгоритме
Fw связь Rc(x, у) сохраняется, если х и у ведут себя «совершенно
одинаково» по отношению к своим «близким соседям», т. е. из
Ко (ж, z)>RB(x, у) следует RB(y, z)>Rc(x, у) и наоборот.
Суммарное транзитивное преобразование алгоритма следующее:
TRcw(Rc) = cWrc.
Алгоритм FPw Этот алгоритм, в отличие от алгоритма FcW учи¬
тывает «голоса» не только «близких соседей», но всех объектов
множества X:
, [WRс{х,у), если |А\А+|>р(ЛГ — 2),
PW (х, у) =
{Х1с(х,у) в противном случае.
Здесь, как и раньше,
WRc {х, у) = Л {Rc (х, z) Д Rc {у, z)),
2 ~ А
A = {z^X\Rc(x,z)\/ Rc (у, z) > Rc (х, у)},
А+ = {ге X] Rc(x, z) Д Rc(y, z)^Rc(x, у)} и р «= [0,1].
Алгоритм производит «коррекцию» Rc(x, у), если доля объектов,
на которых х я у ведут себя «по разному», по отношению ко всем
объектам (N) множества X больше р. При р = 0 Fpw совпадает с
Fw, а при р — 1 — с Fd. Суммарное преобразование TRpW сле¬
дующее:
FRи w (Rc) — pWRc.
Алгоритм Fpw допускает следующую модификацию, обозначае¬
мую как FhW:
7 пт, ^ №вЛх'У)' если ИМ+1>*,
kW (х, у) =
(Rс (х, у) в противном случае,
10.4. ОБЩАЯ СХЕМА ДОПУСТИМЫХ ПРЕОБРАЗОВАНИЙ
359
где /ее {0, 1, 2, ..N — 2). При к = О и к = N — 2 получаем Fw
и Fd соответственно. Алгоритм учитывает не долю «рассогласова-
к
ний», а их число. Fhw получается из Fpw при р = N
В предложенных алгоритмах может использоваться мпогократ-
ная «коррекция» отношения Rc. Например, запись алгоритма Fw
в трехкратной «коррекцией» Fw будет следующей:
TR3W (Rc) = ТС (F3W (Rc)) = ТС (Fw (Fw (Fw (Rc)))) =
- tc(w%') = h\.
Многократные «коррекции» позволяют обычно выявлять «наи¬
более устойчивые» кластеры, сохраняющиеся и при учете множе¬
ственных, обходных влияний объектов друг на друга, но при отсут¬
ствии «явных», «естественных» кластеров в системе такие кластеры
содержат незначительное количество объектов. Количество отли¬
чающихся друг от друга возможных коррекций ограничено и, как
правило, не велико. После некоторого к имеем Fh(Rc) = Fkbl (Rc).
Одновременное применение нескольких алгоритмов кластериза¬
ции позволяет с различных точек зрения исследовать возможные
структуры системы объектов. Как правило, если среди объектов
имеются ярко выраженные кластеры, то они обнаруживаются всеми
методами. Варьирование параметров с, р, к позволяет измерить
«степень неразличимости» объектов, которая может характеризо¬
ваться конкретным значением параметра, при котором объекты,
объединяющиеся при меньших (больших) значениях параметров в
один кластер, начинают относиться к разным кластерам.
Сравнение предложенных алгоритмов с известными иерархиче¬
скими алгоритмами кластеризации на контрольных примерах, в ко¬
торых информация о сходстве между объектами носила количест¬
венный характер, показала, что предложенные алгоритмы, упиты¬
вая лишь информацию о ранговой упорядоченности значений
сходства между объектами, сформулировали кластеры, мало
отличающиеся от кластеров, которые были получены алгоритмами,
учитывающими количественную информацию о сходстве между
объектами.
Основное отличие предложенных алгоритмов иерархической
кластеризации от известных заключается в том, что они удовлетво¬
ряют условиям П5 и ПЗ, т. е. учитывают лишь ранговую упоря¬
доченность весов исходного отношения сходства Rc и не зависят от
исходной нумерации объектов. Среди известных алгоритмов иерар¬
хической кластеризации подобными алгоритмами являются алго¬
ритм «ближайший сосед», который входит и в предложенную схему
алгоритмов, и алгоритмы Ю. Д. Апресяна, выделяющие аналоги
ядер отношения Rc.
В кластерном анализе, несмотря на наличие значительного чис¬
ла разнообразных алгоритмов кластеризации, всегда ощущался не¬
360
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
достаток в алгоритмах, основывающихся лишь на порядковых свой¬
ствах значений сходства между объектами. Рассмотренные здесь
алгоритмы в определенной мере восполняют этот недостаток.
Большим преимуществом предлагаемой здесь общей схемы до¬
пустимых транзитивных преобразований является то, что она от¬
крыта для создания в ее рамках новых иерархических алгоритмов
кластеризации, удовлетворяющих различным условиям рациональ¬
ности, в частности, и условию П5.
Рассмотренные алгоритмы имеют сложность порядка 0(N3) опе¬
раций, где N — число элементов множества X. Действительно, пре¬
образование F, например, Fw, использует 0(N3) операций, и пре¬
образование ТС (транзитивное замыкание) также использует 0(N3)
операций. Последний результат, а также оптимальные алгоритмы
транзитивного замыкания взвешенных графов можно найти, напри¬
мер, в книге А. Ахо, Дж. Хопкрофта и Дж. Ульмана.
10.5. Задача поиска наилучшей транзитивной аппроксимации
Одним из распространенных подходов к задаче кластерного ана¬
лиза является аппроксимационный подход. В терминах взвешенных
отношений сходства этот подход может быть сформулирован в виде
задачи:
найти
Л3*: d (Дс, Д3*) = min d (Rc, Rэ), (10.22)
b8ge
где Дс — исходное взвешенное отношение сходства между объекта¬
ми, Е — некоторое множество взвешенных отношений эквивалент¬
ности, среди которых ищется наилучшая аппроксимация Дэ* отно¬
шения Rc, ad — мера различия, заданная в пространстве взвешен¬
ных отношений.
Если d является метрикой, сохраняющей порядок в простран¬
стве взвешенных отношений сходства, и Е является множеством
всех взвешенных отношений эквивалентности, то решение задачи
(10.22) удовлетворяет условию
ДЭ* = Д°, (10.23)
где
Д°еД0 (10.24)
появляется операцией транзитивного замыкания.
Как нетрудно увидеть, между общей схемой допустимых тран¬
зитивных преобразований и свойствами решения задачи аппрокси¬
мации много общего. Если для решения задачи аппроксимации
(10.22) в (10.24) установить нижнюю границу для Д°:
Дя <= Д° <= Rc,
то решение задачи аппроксимации (10.22) может рассматриваться
10.6. АЛГОРИТМЫ КЛАСТЕРИЗАЦИИ ВЗВЕШЕННОГО ОТНОШЕНИЯ 361
как одно из допустимых транзитивных преобразований исходного
отношения, а алгоритмы транзитивного преобразования, рассмот¬
ренные в предыдущем разделе, могут использоваться для поиска
приближенного решения задачи аппроксимации (10.22).
Отметим, что задачи аппроксимации типа (10.22) являются за-*
дачами, для которых, как правило, не существует эффективных
алгоритмов решения, причем поиск глобального оптимума в задаче
(10.22), рассматриваемый всего лишь в пространстве обыкновенных
отношений толерантности и эквивалентности, связан со значитель¬
ными вычислительными трудностями. Применение эвристических
алгоритмов может помочь в поиске «удовлетворительных» решений
задачи (10.22), дающих хорошие приближения к «оптимальному»
решению.
10.6. Алгоритмы кластеризации на основе несимметричного
взвешенного отношения
При проектировании различных систем принятия решений, как
правило, возникает задача представления системы в виде совокуп¬
ности подсистем, содержащих наиболее тесно связанные между
собой элементы. Задача разбиения системы на подсистемы, называе¬
мая обычно задачей декомпозиции системы на подсистемы, либо
задачей агрегирования элементов системы в подсистемы, часто ре¬
шается методами кластерного анализа. В этих целях информация
об исследуемой системе представляется в виде матрицы связей меж¬
ду ее элементами, которая обычно строится на основе анализа ин¬
тенсивности технологических, материальных, либо информационных
потоков между элементами системы, или на основе анализа вида
и интенсивности отношений, связывающих элементы системы. Как
правило, подобные связи между элементами системы несимметрич¬
ны и зависят от направления связи, поэтому в матрице связи обыч¬
но не выполняется равенство R(x, у) = 7?(г/, х). Таким образом,
информация о связи объектов представляется в этом случае с по¬
мощью несимметричного взвешенного отношения RK.
Большинство существующих методов кластеризации появилось
в рамках распознавания образов для решения задач классификации
данных, описываемых с помощью некоторого набора признаков и
представимых как точки некоторого многомерного пространства
признаков. Эти методы работают обычно с симметричной матрицей
связи между объектами, для вычисления которой используются
метрики, коэффициенты корреляции и другие меры сходства и раз¬
личия. Заметим, что в последнее время стали развиваться методы
кластеризации объектов и в несимметричном «анизотропном» про¬
странстве (см., например, работы Н. Г. Загоруйко).
Применение известных методов кластеризации в задаче деком¬
позиции систем возможно, если несимметричное взвешенное отно¬
шение RH преобразовать в симметричное с помощью некоторого
362
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
преобразования Rc(x, у) = f(Ra(x, у), R„(y, х)). Подобный подход
использовался, например, В. Я. Лумельским. Однако такое преобра¬
зование исходного отношения йн может существенно изменить пер¬
воначальную информацию о системе. Мы будем рассматривать схе¬
му иерархических алгоритмов кластеризации, которая производит
кластеризацию данных на основе непосредственного несимметрич¬
ного исходного взвешенного отношения R„. Рассматриваемая общая
схема алгоритмов может применяться и тогда, когда исходное взве¬
шенное отношение связи является симметричным. В этом случае
эта схема включает многие известные иерархические алгоритмы
кластеризации, и, кроме того, содержит новые алгоритмы.
Предлагаемая схема алгоритмов иерархической кластеризации
на основе несимметричного взвешенного отношения может быть
включена в общую схему иерархических алгоритмов С. Джонсона.
В этой схеме на первом шаге алгоритма кластеры содержат по
одному объекту, а иа последующих шагах алгоритма объединяются
кластеры, между которыми имеется максимальное сходство. Раз¬
личные иерархические алгоритмы кластеризации отличаются друг
от друга способом вычисления сходства между кластерами. Эти ас¬
пекты обычно формализуют различные эвристические принципы
формирования кластеров.
Ввиду несимметричности исходного отношения связи RK будем
вычислять сходство между кластерами следующим образом. Сход¬
ство между кластерами А и R вычисляется как композиция связей
кластера А с кластером R и кластера R с кластером А:
RC(A, В) — /3 (RH {А, В), RH(B, Л)).
Связи кластера А с кластером В вычисляются в результате компо¬
зиции связей элементов кластера А с кластером В:
RAA, B) = f2(RB(xt, В), R„(x2, В), ..., RB(xk, В)),
где ад, х2, ..., xk^A={.Xi, х2, ..., xj. Аналогично вычисляются
связи Rn(B, А). Связи элементов х^А с кластером В вычисляются
в результате композиции связей х с элементами кластера В:
RB(x, Я) = /,(#„(ж, г/,), RB(x, у2), ..., RB(x, г/,)), где уи у2, ..., г/,е
е B = {yh у2, ..., у,}. Таким образом, сходство между кластерами
вычисляется в несколько этапов. В зависимости от конкретной за¬
дачи вид операции композиции может быть различным. Мы рас¬
смотрим здесь меры сходства между кластерами, когда операции
композиции являются операциями взятия максимума V, минимума
Д или усреднения, которая будет обозначаться как +/. В общем
случае операции композиции могут иметь более сложный вид. Нам
будет удобно операции композиции /, обозначать как *; и записы¬
вать связи в более сжатом виде, например, для R„ (х, В) будем
писать RH(x, В)= *iRH(x, у) и т. п. В общем виде выражение для
меры сходства между классами может быть записано в следующем
10.6. АЛГОРИТМЫ КЛАСТЕРИЗАЦИИ ВЗВЕШЕННОГО ОТНОШЕНИЯ
363
виде:
Rc (^i В) = ( *2 *i Ян (х, у)) *3 Г *2 *1 Ян (?/) £))•
\xSAySB \у=Вх = А
Различные конкретизации функции Rc зависят от вида опера¬
ций *3, *2 и *i и будут записываться как функции (*3, *2, *i)-
сходства.
Предлагаемая схема вычисления мер сходства на основе несим¬
метричного исходного взвешенного отношения связи RH в большей
степени учитывает несимметричность исходного отношения R„ по
сравнению с подходом, когда несимметричное отношение связи RB
сразу преобразуется в симметричное отношение сходства Вс =
= /(Ян, Ян1). Подобный подход будет получен в нашей схеме как
частный случай.
Рассмотрим некоторые конкретные реализации общей схемы.
1. (*3, V, У)-сходство:
В случае когда исходное отношение симметрично и *3 — V, то
кластеризация по (V, V, V)-сходству приводит к методу «ближай¬
ший сосед». Если исходное отношение R„ не симметрично, то кла¬
стеризация по (V, V, V)-сходству равносильна применению метода
«ближайший сосед» к отношению сходства
Rc(x, y) = RB(x, p)VRB{y, x).
2- (*3> Д. Д)-сходство:
RC(A,R) = ( Д Д RH (x, г/В *3 ( Д Д Ra(y,x)\.
\xeAyeB ! \уев xsA J
(Ai A> Д)-метод совпадает с методом «дальний сосед», применен¬
ным к отношению сходства Вс (х, у) = RH (х, у) Д RH (у, х).
3. (*3, +/, +/)-сходство:
ЯС(4,Я) = fj-jj’ 2 ]1Г|'2 (Х’У)\ *з [рГ|'2 fTj”2 Ян(г/, ж)'|.
V 1 3CS А у=В j \' у=В хеА !
(+/, +/, +/)-метод совпадает с методом «групповое сррднее», при¬
мененным к отношению сходства
Rc (х, у) = тг (Ян (х, у) + RH (у, х)).
4- (*3I A> V )-сх°дств°:
В случае, когда отношение R симметрично, метод (Л1 Д, V)"
сходства совпадает с методом «неполной связи». Заметим, что этот
метод не является «строго иерархическим» в том смысле, что на
364
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
некотором шаге алгоритма может быть построен кластер, вес ко¬
торого, характеризующий сходство объединяемых кластеров, может
быть больше веса кластеров, построенных на предыдущих шагах
алгоритма, т. е. возможна ситуация, когда при объединении неко¬
торых кластеров В и С выполняется неравенство ТА (А, В\]С)>
>ВС{В, С). Поэтому при требовании «строгой иерархичности» ме¬
тода, т. е. монотонного убывания весов формируемых кластеров,
применение метода «неполной связи» нецелесообразно.
5- (*з) V. Д)-сходство:
ВС(А,В) = ( V A #Н(X, у)) *3 ( V А Кц(у,х)\.
\xeAyeB ) \уев хеА j
Этот метод является, видимо, более удачным компромиссом
между такими противоположными методами, как метод (V, V, V)-
сходства и метод {/\, /\, ААсхоДства> так как можно показать,
что он является «строго иерархическим».
Рассмотренный здесь параметрический класс мер сходства позво¬
ляет получать большое количество отличающихся друг от друга
методов кластеризации, допускающих содержательную интерпрета¬
цию и реализуемых в рамках единой схемы. Эти методы могут
применяться как в задачах кластеризации на основе несимметрич¬
ного отношения, в этом случае они более полно учитывают исход¬
ную информацию о системе, чем известные методы, так и в клас¬
сической задаче кластеризации данных на основе симметричного
отношения сходства. В последнем случае рассмотренная схема
включает ряд известных алгоритмов кластеризации, кроме того, она
позволяет получать новые алгоритмы, основанные на мерах сход¬
ства, таких как (А* V, V)-, (V, Ai A)-’ (V> V > А)-сходства и
другие. Различные меры сходства могут использоваться как при
анализе возможных структур данных, так и при «настройке» систе¬
мы обработки данных на конкретный класс задач в режиме обу¬
чения.
10.7. Алгоритмы выявления классов толерантности
взвешенных отношений
Рассмотренная в предыдущих разделах задача иерархической
кластеризации отражает один из возможных подходов к анализу
структуры системы, в котором требуется разбить множество эле¬
ментов системы на непересекающиеся классы сходных между собой
элементов, в частности, построить иерархию таких разбиений. Раз¬
биение системы на подсистемы производится либо с целью разде¬
лить функции системы между слабо связанными между собой под¬
системами, либо с целью упрощения анализа системы за счет раз¬
дельного анализа ее подсистем, либо с целью классификации эле¬
ментов системы, систематизации представлений о системе и т. п.
Эта задача разделения системы на классы сходных объектов
в определенном смысле противоположна задаче выявления классов
10.7. АЛГОРИТМЫ ВЫЯВЛЕНИЯ КЛАССОВ ТОЛЕРАНТНОСТИ
365
сходных объектов. Последняя задача возникает обычно при попыт¬
ке исследовать связи между объектами, выделить некоторые обоб¬
щенные признаки, скрытые факторы, лежащие в основе сходства
объектов из одного класса, сформировать понятия — классы, опи¬
сывающие состояния системы. В практике классы сходных объек¬
тов, как правило, пересекаются, что объясняется тем, что некото¬
рые объекты могут характеризоваться несколькими обобщенными
признаками и принадлежать разным классам. Мы уже подчеркива¬
ли, что задачи выявления классов сходных объектов имеют боль¬
шое значение как при формировании обобщенных понятий в про¬
цессе управления и принятия решений в сложных системах, так
и при анализе эмпирических данных.
Иерархические алгоритмы кластеризации не годятся для реше¬
ния задачи выявления классов сходных объектов, так как построе¬
ние в этих алгоритмах непересекающихся кластеров часто «насиль¬
но» разделяет, либо объединяет классы сходных объектов, которые
обычно пересекаются.
Задача выявления классов сходных объектов может решаться с
помощью методов послойной кластеризации, рассмотренных в рабо¬
те Д. В. Матулы. В этих методах взвешенное отношение сходства
между объектами Rc заменяется совокупностью a-срезов Ra и для
каждого R-x на основе соответствующего ему графа с помощью
методов теории графов выделяются классы требуемой структуры.
Примеры таких классов: 1) .ЙГ-клики— максимальные полные под¬
графы, содержащие не менее К + 1 элемент, 2) .йГ-связка — макси¬
мальные подграфы, в которых каждый объект связан не менее чем
с К объектами из этого подграфа и т. п.
Недостаток этих методов заключается в том, что при построении
кластеров на нижних уровпях не учитывается информация о кла¬
стерах, построенных на более высоких уровнях. Это приводит к
тому, что наряду со значимыми кластерами, полученными в резуль¬
тате расширения кластеров более высоких уровней, появляется и
большое количество слабо значимых кластеров, возникших впервые
на низком уровне. По оценкам, приведенным в работе Д. В. Мату¬
лы, число нетривиальных кластеров, полученных по методу 1-жлики,
может достигать на некотором уровне величины 3я73, где N — число
элементов множества X. Такое «засорение» значимых кластеров
слабо значимыми приводит к нецелесообразности применения мето¬
да .ЙГ-клик как общего метода кластеризации. В других методах
кластеризации, которые строят перекрывающиеся кластеры, такое
«засорение» менее значительно, однако, тем не менее, может по¬
мешать выделить значимые кластеры. С другой стороны, рассмот¬
рение кластеров лишь иа высоких уровнях не позволяет установить
связи между ними за счет слабых связей.
С этой точки зрения целесообразно рассмотреть схему алгорит¬
мов, которые строят на нижних уровнях кластеры, полученные
лишь в результате расширения кластеров, полученных на более
366
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
высоких уровнях. Такие алгоритмы мы будем называть расширяю¬
щимися алгоритмами кластеризации. Мы будем рассматривать кла¬
стеры, в которых все объекты максимально сходны друг с другом.
Подобные кластеры являются аналогами классов толерантности для
обыкновенных отношений, поэтому здесь они также будут назы¬
ваться классами толерантности.
Расширяющиеся алгоритмы выявления классов толерантности
формируют иерархию классов толерантности. Рассматриваемая схе¬
ма расширяющихся алгоритмов кластеризации является компромис¬
сом между схемой иерархических алгоритмов кластеризации Джон¬
сона и послойными методами кластеризации Матулы. Схему Джон¬
сона можно условно назвать схемой типа «кластер-кластер». В ней
кластеры более низкого уровня получаются за счет объединения
кластеров, полученных на более высоком уровне. Схему Матулы
можно назвать схемой типа «объект-объект». В ней кластеры низ¬
ких уровней формируются из объектов множества X независимо
от кластеров, построенных на более высоких уровнях. Предлагае¬
мую здесь схему расширяющихся алгоритмов можно назвать схе¬
мой типа «кластер-объект». В ней кластеры более низкого уровня
получаются в результате добавления к кластерам, полученным на
более высоких уровнях, объектов, связанных в результате учета
слабых связей с этими кластерами.
Приведем общую схему рсширяющихся алгоритмов кластери¬
зации.
Шаг 1. k = i. Кластеры At исходного разбиения Gi = {Ai, А2, ...
,., Ап) содержат по одному элементу множества X: А{ = {xj, i —
= 1, п. Сила классов: а, = /, где /= V V Rc{xpy).
хеХ уех
Шаг 2. Для каждого А{ е Gk ищем х'^Х такое, что х%) =
= \J Rc(Ai,x), где RC(A{, х) — сходство между кластером Л,- и
хеХ\Аi
объектом 1^1, определяемое в каждом методе особо; а,- =
= Rc(Ai, хх), Ai = Ai U х\ к :=к + 1.
Шаг 3. Удаляем совпадающие классы.
Шаг 4. Если к = п, то СТОП, иначе переход к шагу 2.
Эта схема алгоритмов допускает различные модификации. На¬
пример, на шаге 2 можно выделять не одно хг, наиболее близкое к
At, а все такие х*. В этом случае число первоначально построенных
кластеров будет увеличиваться, однако и в этом случае каждый
кластер более низкого уровня будет расширением некоторого кла¬
стера более высокого уровня.
Сходство Rc {Ац х) между кластерами и объектами может вы¬
числяться различными способами в зависимости от конкретной реа¬
лизации общей схемы. Например, в методе «полной связи» сход¬
ство может вычисляться следующим образом:
Rc A Rc (?/> ■А*
10.8. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ АЛГОРИТМОВ
367
а в методе «средней связи» по формуле
Дс O^ii х) = T-J-T У, Rc (у, х).
' *1 ysAi
В последней формуле предполагается, что операция усреднения
имеет смысл. Кластеры, получаемые методом «полной связи», яв¬
ляются аналогами 1-клик, и этот метод позволяет в общем случае
уменьшить число кластеров, получаемых на низких уровнях. Рас¬
ширяющийся метод, в отличие от послойного метода, опирается
на дифференциацию расслоений связей, обусловленные их разли¬
чием в весах.
Отметим, что рассмотренная схема расширяющихся алгоритмов
кластеризации является довольно естественной модификацией схем
иерархической и послойной кластеризации.
10.8. Практическая реализация алгоритмов
качественного анализа систем
Рассмотренные алгоритмы качественного анализа систем были реализо¬
ваны в программном комплексе RELAT для решения задач, связанных с уп¬
равлением процессов перевозок транспорта, куда кроме алгоритмов иерархи¬
ческой кластеризации на основе взвешенного отношения сходства вошли так¬
же классические алгоритмы иерархической кластеризации схемы Ланса —
Вильямса. Включение этих алгоритмов в комплекс RELAT позволяет, с одной
стороны, производить сравнение предлагаемых алгоритмов с известными, и,
с другой стороны, дает возможность исследовать структуру систем с различ¬
ных точек зрепия.
Транспортпая система как любая реальная система управления, является
сложной системой и характеризуется непостоянством структуры и законов
функционирования, многокритериальностью управления, нечеткостью пара¬
метров управления, присутствием в системе людей, обладающих определенной
свободой действий и т. п. Наличие большого количества плохо формализуе¬
мых факторов, влияющих на результаты принимаемых диспетчером транспорт¬
ной системы решений, делает задачу построения точпой математической моде¬
ли системы и поиска оптимальных управляющих решений практически не
выполнимой. Выбор конкретной модели и поиск оптимальных решений в рам¬
ках этой модели может использоваться лишь как средство получения неко¬
торой дополнительной информации, отражающей одну из сторон функциони¬
рования системы, и человек, ответственный за принимаемые им решения по
управлению системой, учитывая эту информацию, при принятии решений
опирается, в конечном счете, на свой личный опыт и интуицию.
По этой причине при разработке систем управления сложными объектами
неизбежно возникает задача поиска компромисса между человеком и маши¬
ной, между плохо формализуемым человеческим опытом и интуицией, с од¬
ной стороны, и точными моделями и методами расчета с другой. Человеку
обычно бывает трудпо охватить всю систему в целом, взаимосвязи между все¬
ми ее элементами, количественные соотношения между ними, что легко сде¬
лать с помощью ЭВМ, однако, в машину практически невозможно заложить
все печетко определенные факторы, параметры, цели, которые учитывает че¬
ловек при принятии управленческих решений. Поэтому, применение методов
качественного анализа систем, позволяющих производить декомпозицию си“
стемы на подсистемы, которые человек уже способен охватить как единое це¬
лое, облегчает человеку анализ ситуаций, возникающих при управления си¬
368
ГЛ. 10. ИЕРАРХИЧЕСКИЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ
стемой, что, в конечном итоге, приводит к повышению эффективности при¬
нимаемых им управленческих и оперативных решений.
Разработанный программный комплекс RELAT, включающий предложен¬
ные в работе алгоритмы качественного анализа систем, используется для ре¬
шения задач, связанных с управлением перевозочным процессо.м грузового
транспорта. Одной из задач, возникающих при управлении перевозочным про¬
цессом грузового транспорта, является задача распределения грузового транс¬
порта по маршрутам в соответствии с запросами потребителей. Основными
критериями, которые оптимизируются при решении этой задачи, являются
максимизация суммарного объема грузоперевозок, максимизация числа выпол¬
ненных заявок, минимизация холостых перегонов транспорта между различ¬
ными маршрутами. Формулировка и решение этой задачи как задачи мате¬
матического программирования, теории расписапий и массового обслуживания
дает возможность составить оптимальное распределение транспортных средств
по маршрутам и установить очередность выполнепия заявок. Однако поиск
точного решения этой задачи связан с определенными трудностями. К пим
относятся и большая размерность решаемой задачи, включающей обычно не¬
сколько десятков маршрутов, и неопределенность многих параметров, папри-
мер, таких, как время простоев в пупктах погрузки и разгрузки, и невозмож¬
ность формализовать многие факторы, которые учитывает диспетчер при ре¬
шении этой задачи.
Решения, принимаемые диспетчером, основываются как на точно опреде¬
ленной информации о длине маршрутов, расстояпии между ними, объеме
грузоперевозок, грузоподъемности и типе транспорта, о характере грузов и
т. п., так и на оперативной и субъективной информации о состоянии транс¬
портной сети, о темпах погрузочно-разгрузочных работ и времени задержек
в пунктах назначения, о техническом состоянии транспорта, о состоянии дорог
и погоде, о дисциплинированности и производительности водителей транспор¬
та, о важности заявок и их приоритете, о личном взаимоотношении с заказ¬
чиками и водителями, о состоянии плана и т. п.
Разработанные в работе алгоритмы кластеризации па основе несимметрич¬
ного отношения связей между элементами системы, используются для раз¬
деления всего множества маршрутов на группы маршрутов, расстояние меж¬
ду конечпыми пунктами которых минимальны. Такая декомпозиция всей
траспортной сети на подсети облегчает диспетчеру апализ всей системы,
позволяя исследовать ее по частям. Декомпозиция транспортной сети па под¬
сети позволяет также уменьшить размерность оптимизационных задач, реше¬
ние которых определяет оптимальные последовательности маршрутов в каж¬
дой группе. На основе решения этих задач диспетчеру выдаются составы сфор¬
мированных групп маршрутов и оптимальные последовательности маршрутов
внутри групп. Окончательное решение о распределении транспорта по марш¬
рутам диспетчер принимает в результате сопоставления этой информации с
оперативной и субъективной информацией о состоянии транспортной сети.
В работе при декомпозиции сети иа подсети прпмепялись алгоритмы, ос¬
нованные на мерах (\/, V> У)_Различия и (А> V, \/)-различия, двойственные
мерам (Л, Л» Л)-сходства и (V, Л, Л)-сходства. Исходной информацией для
этих алгоритмов является несимметричное взвешенное отношение, соответст¬
вующее матрице расстояний между конечными пунктами маршрутов. Пусть
X — множество пунктов транспортной сети. Задано отношение Rе IX X-*-W 1,
где ДДг, у) означает объем груза, который требуется перевезти из х в у. Пара
(х, у) образует маршрут, на который требуется выделить грузовой транспорт.
Если вес груза, требуемого к перевозке на маршруте (х, у), превышает гру¬
зоподъемность единицы транспорта, то маршрут (х, у) записывается в Z к раз,
где к — число единиц транспорта, необходимого для перевозки груза из х
в у. На множестве маршрутов Z определяется взвешенное отношение
Z X 2 W2, где R2{zi, z2) означает расстояние между конечным пунктом мар¬
шрута z 1 и начальным пунктом маршрута z2. Отношение R2 является несим¬
метричным взвешенным отношением, определенным на Z. Применение ал-
10.8 ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ АЛГОРИТМОВ
369
горптмов иерархической кластеризации на основе несимметричного взвешен¬
ного отношения позволяет разбивать все множество маршрутов на группы
близких друг к другу машрутов. Группы выбирались так, чтобы число марш¬
рутов в них не превышало 10—15. Рассматривались лишь маршруты, длина
которых не превышала половины длпны планового задания за рассматривае¬
мый промежуток времени. Время классификации 60 маршрутов на ЭВМ
ЕС-1033 составило не более трех минут.
Эксплуатация программного комплекса RELAT показала, что применение
рассмотренного подхода к решению задачи распределения грузового транспор¬
та облегчает диспетчеру анализ состояний транспортной сети и повышает эф¬
фективность принимаемых им решений, что позволяет уменьшать простои и
холостые перегоны транспорта.
Следует отметить, что данный подход требует дальнейшего развития и
разработки проблемно-ориентировапной части программного комплекса RELAT,
учитывающей специфику решаемой задачи. Как показали результаты решения
практических задач, около 20% формируемых алгоритмами групп маршрутов
оказываются по ряду причин неудовлетворительными, и диспетчер формирует
последовательности маршрутов из разных групп маршрутов.
24 в. Н. Вагин
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
К ЧАСТИ I
В этой части даны основные положения математической логики с упором
на дальнейшее их использование для автоматического доказательства теорем.
Исчисление высказываний и исчисление предикатов первого порядка рассмот¬
рены более подробно в [1.1—1.5]. Понятие семиотической модели принадлежит
Д. А. Поспелову [1.6—1.7].
1.1 Новиков П. С.
Элементы математической логики.— М.: Наука, 1973.— 399 с.
1.2 Клин и С. К. (Kleene S. С.)
Mathematical logic.— New York; London; Sydney: John Wiley & Sons. Inc.,
1967. (Рус. пер.: Математическая логика.— М.: Мир, 1973.— 480 с.)
1.3 М е н д е л ь с о и Э. (Mendelson Е.)
Introduction to mathematical logic.— New York: D. Van Nostrand Comp., Inc.,
1964. (Рус. пер.: Введение в математическую логику. 2-е изд., испр.—
М.: Наука, 1976,— 320 с.)
1.4 Столл P. P. (Robert R. Stoll)
Sets, Logic and Axiomatic Theories.— San Francisko; London: W. H. Freeman
and Comp., 1960. (Рус. пер.: Множества. Логика. Аксиоматические теории.—
М.: Просвещение, 1968.— 232 с.)
1.5 Чень Ч., Ли Р. К. (Chang С. L. and Lee R. С. Т)
Symbolic Logic and Mechanical Theorem Proving.— New York; London: Aca¬
demic Press, 1973. (Рус. пер.: Математическая логика и автоматическое дока¬
зательство теорем.— М.: Наука, 1983.— 358 с.)
1.6 П о с п е л о в Д. А.
Семиотические модели: успехи и перспективы Ц Кибернетика.— 1976.—
№ 6 —С. 114—123.
1.7 Ефимов Е. И., Поспелов Д. А.
Семиотические модели в задачах планирования для систем искусственного
интеллекта Ц Изв. АН СССР. Техническая кибернетика — 1977,— № 5.—
С. 60-68.
К ЧАСТИ II
Базам данных посвящено много различной лптературы. Мы остановились
на той, которая отвечает нашим целям [2.1, 2.2]. Понятия экстенсиональной
и интенсиональной баз данных было заимствовано из работ Дж. Минкера и
Дж. Мак-Скимина [2.3, 2.4]. Предположения об открытом и замкнутом мирах
было взято из работы Р. Рейтера [2.5]. В [2.6—2.13] отражены различные
аспекты языков представления знаний. Полное описание языка PROLOG мож¬
но найти в [2.14]. Объектно-ориентированный язык SMALLTALK дан в [2.15].
Хороший обзор но языкам программирования для систем искусственного ин¬
теллекта содержится в [2.16].
Вопросы семантических сетей наиболее полно представлены в [2.17].
М. Р. Квиллиан был, по-видимому, первым, кто начал исследования по семан¬
тическим сетям [2.18, 2.19]. На роль глаголов и семантических падежей было
указало в работах К. Филмора, Д. Е. Румельхарта и Д. А. Нормана [2.20, 2.21].
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
371
Теория концептуальной зависимости, описывающая процессы понимания есте¬
ственного языка человеком и программой для ЭВМ наиболее полно представле¬
на в работе Р. Шенка [2.22]. Прекрасное изложение истории возникновения
семантических сетей содержится в статье Р. Брахмана [2.23]. Проблеме разбие¬
ния семантической сети на блоки посвящены работы Г. Хендрикса и Ф. Хейеса
[2.24—2.26]. Свое дальнейшее выражение блочная структура нашла в пред¬
ставлении семантической сети в виде сети фреймов [2.27, 2.28]. Трактовка сети
фреймов близка к трактовке Н. Руссопулоса. Описапие интенсиональной и экс¬
тенсиональной алгебрах дается в соответствии с работой Н. Руссопулоса [2.28].
Организация семантической сети в рамках процедурного подхода целиком осно¬
вывается на работе Дж. Милопулоса и Г. Левека [2.29].
2.1 Дейт К. (Date С. J.)
An Introduction to Database Systems. Second edition.— Addison — Wesley
Publishing Comp., 1977. (Рус. пер.: Введение в системы баз данных,— М.:
Наука, 1980.— 463 с.)
2.2 Logic and Data Basesi/H. Gallaire and J. Minker, Eds.— New York: Plenum
Press, 1978,— P. 458.
2.3 Минкер Дж. (Jack Minker)
An Experimental Relational Data Base System Based on Logic Ц Logic and
Data Bases/H. Gallaire and J. Minker, Eds.— New York: Plenum Press., 1978.—-
P. 107—147.
2.4 Мак-Скимип Дж., Минкер Дж. (McSkimin J. and Minker J.) The
Use of a Semantic Network in a Deductive Question — Answering System Ц
Proceedings IJCAI 77.— Cambridge, Mass.— 1977,— P. 50—58.
2.5 Рейтер P. (Reiter R.)
On closed World Data Bases jj Logic and Data Bases/H; Gallaire and J. Min¬
ker, Eds.— New York: Plenum Press., 1978.— P. 55—76.
2.6 Хьюитт K. (Hewitt C.)
Planner: A Language for Proving Theorems in Robots / Proc. Intern. Joint
Conf. on Artif. Intell.— Bedford, Mass.: Mitre Corp., 1969.— P. 295—301.
2.7 Виноград T. (Winograd Terry) Understanding Natural Language.—
New York: Academic Press, 1972. (Рус. пер.: Программа, понимающая
естественный язык.— М.: Мир, 1976.— 294 с.)
2.8 Сасомен Г., Мак-Дермотт Д. (Sussman G. and McDermott D.)
From PLANNER to CONNIVER: A genetic approach Ц Proceedings of the
FJCC 41,— 1972,— Part 2 — P. 1171—1180.
2.9 Бобров Д. Г., Ви н о г p а д Т. (Bobrov D. G. and Winograd Т.)
An overview of KRL, a knowledge representation language Ц Cognitive Scien¬
ce 1,— 1977,— No. 1,— P. 3—46.
2.10 Роберт с P. Б., Голдо,тейн И, П. (Roberts R. В. and Goldstein I. P.)
FRL Users’ Manual, A. I. Memo. No. 408.— Cambridge, Mass.: Artificial Intel¬
ligence Laboratory, MIT, 1977.
2.11 Кодд E. (Codd E.)
A Data Base Sublanguage Founded on the Relational Calculus Ц Proc. 1971
ACM SIGFIDET Workshop on Data Description, Access and Control.— 1971..
2.12 Астрахан М., Чемберлин Д. (Astrahan М., Chamberlin D.) Imple¬
mentation of a Structured English Query Language.— CACM 19,— 1975.—
No. 10.
2.13 Цлуф M. (Zloof M.)
Query By Example.— Proc. NCC 44.— 1975.
2.14 Клоке и н В., Меллиш К. (Clocksin W. F., Mellish C. S.)
Programming in Prolog.— Springer-Verlag, 1981.— 279 p.
2.15 Голдберг А., Робсон Д., Ингаллс Д. (Goldberg A., Robson D.,
Ingalls D.)
SMALLTALK 80: the Language and its Implementation / BYTE.— 1981.—
V. 6, No. 8.— P. 189—211.
2.16 Ангелова Г. и др.
Языки программирования для Искусственного интеллекта / Представле¬
ние знаний в человеко-машинных и робототсхпических системах. Т. В.—
24*
372
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
Ннструмептальные сродства разработки систем, ориентированных на зна¬
ние,— М.: ВИНИТИ, 1984— С. 31—72.
2.17 Associative Networks. Representation and Use of Knowledge by Computers/
Nic. V. Findlcr Ed.— New York: Academic Press, 1979.— P. 462.
2.18 Кви л лиан M. P. (Quillian M. R.)
Semantic memory Ц Semantic Information Processing/M. Minsky; MIT
Press — Cambridge, Mass., 1968.— P. 227—270.
2.19 К в и л л и а н М. P. (Quillian М. R.)
The Teachable Language Comprehender: A simulation program and theory of
language Ц Communications of the ACM.— 1969.— V. 12, No. 8.— P. 459—476.
2.20 Фнллмор К. (Fillmore С.)
The case for case Ц Universals in Linguistic Theory/E. Bach and R. Harms,
Eds.— Holt, N. Y — 1968 — P. 1—88.
2.21 Румельхарт Д. E., Норм am Д. A. (Rumelhart D. E. and Norman D. A.)
Active semantic networks as a model of human memory Ц Proceedings of the
3rd Intern. Joint Conf. on Artif. Intell.— 1973.— P. 450—457.
2.22 Шенк P. (Shank R. C.)
Conceptual Information Processing.— New York: American Elsevier Publ.
Comp. Inc., 1975. (Рус. пер.: Обработка концептуальной информации.—
М.: Энергия, 1980.— 361 с.)
2.23 Брахман Р. Дж. (Brachman R. J.)
On the Epistemological Status of Semantic Networks / Associative Networks
Representation and Use of Knowledge by Computers.— New York: Academic
Press, 1979.— P. 3—50.
2.24 Хендрикс Г. Г. (Hendrix G. G.)
Expanding the utility of semantic networks through partitioning / Advance
Papers of the Intern. Joint. Conf. on Artif. Intell.— 1975.— P. 115—121.
2.25 Хендрикс Г. Г. (Hendrix G. G.)
Encoding Knowledge in Partitioned Networks Ц Associative Networks. Repre¬
sentation and Use of Knowledge by Computers.— New York: Academic Press,
1979 p 5i 92.
2.26 Хейес Ф. (Hayes Ph. J.)
On semantic nets, frames and associations JJ Proceedings of the 5th Intern.
Joint Conf. on Artif. Intell.— 1977.— P. 99—107.
2.27 Минский M. (Minsky M.)
Frames / Psychology of Computer Vision/Winston P., Eds.— New York:
McGraw — Hill, 1975.
2.28 Руссопулос H. (Roussopoulos N.)
A Semantic Network Model of Data Bases.— University of Toronto, Computer
Science department, Techn. Report, 1977.— No. 104.— P. 269.
2.29 Левек Г., Милопулос Дж. (Н. Levesque and J. Mylopoulos)
A Procedural Semantics for Semantic Networks Ц Associative Networks.
Representation and Use of Knowledge by Computers.— New York: Academic
Press, 1979.— P. 93—120.
К ЧАСТИ III
Теория дедуктивного вывода является наиболее развитой областью искус¬
ственного интеллекта. Поэтому охватить в полной мере все направления и раз¬
виваемые методы дедукции, естественно, не представлялось нам возможным.
Прежде всего, следует отметить оригинальный подход С. Ю. Маслова, бази¬
рующийся на принципе обратного вывода [3.1], на основе которого было соз¬
дано несколько систем поиска вывода [3.2, 3.3]. Описание алгоритма машинного
поиска естественного логического вывода в исчислении высказываний (АЛПЕВ),
предложенного Н. А. Шаниным и его коллегами, можно найти в [3.4].
Изложение классического метода дедукции Эрбрана было взято из [1.5].
Описание принципа резолюции и его двух модификаций: семантической и ли¬
нейной резолюций основывалось на работах [3.5—3.9]. Методы доказательства
теорем, основанные на абстракции, были разработаны Д. Плейстидом в 13.10].
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
373
П. Эндрюсом была предложена процедура дедуктивного вывода, базирующаяся
на понятии сцепки, описание которой было заимствовано нами из [3.111.
Желающие ознакомиться с сравнительными характеристиками нескольких про¬
цедур доказательства теорем отсылаются к [3.12].
Реализация алгоритмов семантической и линейной резолюций, которые
были разработаны для систем управления энергообъединеиием, принадлежит
Башлыкову А. А. п автору (см. [3.13]). Общие соображения о дедуктивных си¬
стемах принятия решений и взаимосвязях между логикой п семантическими
сетями описаны в [3.14, 3.15, 3.16].
Алгоритмы дедукции на семантических сетях п их применение в спстеме
управления энергообъединеиием были предложены и реализованы Кикнад-
зе В. Г. н автором н описаны в [3.17]. Параллельная дедукция на семантиче¬
ских сетях рассмотрена в [3.18].
Содержание 6.6 представляет собой изложение работ Рейтера Р. и Ченя Ч.
[3.19—3.21], которые разработали методы дедукции в реляционных базах дан¬
ных. В методе Ченя при синтезе программ по запросам используются резуль¬
таты теории конечных автоматов, более подробное изложение которых можно
найти в [3.22].
3.1 Маслов С. 10.
Обратный метод установления выводимости в классическом исчислении
предикатов // Доклады АН СССР.— 1964.— Т. 159, № 1.— С. 17—20.
3.2 Ефимов Е. И.
Решатели интеллектуальных задач. М.: Наука, 1982.— 320 с.
3.3 Давыдов Г. В., Маслов С. Ю., Минц Г. Е., О р е в к о в В. П.,
Слисенко А. О.
Машинный алгорифм установления выводимости на основе обратного ме¬
тода Ц Исследования по конструктивной математике и математической
логике. Записки научных семинаров ЛОМИ АН СССР.— Л.: Наука, 1969.—
Т. 16,— С. 8—19.
3.4 Шанин И. А., Давыдов Г. В. и др.
Алгорифм машинного поиска естественного логического вывода в исчисле¬
нии высказываний.— М.; Л.: Наука, 1965.
3.5 Робинсон Дж. (Robinson J. А.)
A Machine Oriented Logic Based on the Resolution Principle Ц Journal of
the ACM.— 1965.— V. 12.— P. 25—41. (Рус. пер.: Машинно-ориентированная
логика, основанная на принципе резолюции // Киберн. сб. Нов. сер. № 7.—
М.: Мир, 1970).
3.6 Слэйгл Дж. (Slagle J. R.)
Automatic Theorem Proving with Reriamble and Semantic Resolution //J. As¬
soc. Comput. Mach.— 1967.— V. 14, No. 4.— P. 687—697.
3.7 Лавленд Д. (Loveland D. W.)
A Linear P’ormat for Resolution Ц Proc. IRIA Symp. Automatic Demonstra¬
tion.— New York: Springer, 1970.— P. 147—162.
3.8 Л а к x e м Д. (Luckham D.)
Some Tree — pairing Strategies for Theorem — Proving /] Machine Intel¬
ligence, 3/Ed. D. Michie.—New York: American Elsevier, 1968.— P. 95—112.
3.9 Ковальский P., Кюнер Д. (Kowalski R., Kuehner D.)
Linear Resolution with Selection Function JJ Artificial Intelligence.—1971.—
V. 2,—P. 227—260.
3.10 Плейстид Д. A. (Plaisted D. A.)
Theorem Proving with Abstraction Ц Artificial Intelligence.— 1981.— V. 16.—
P. 47—108.
3.11 Эндрюс П. (Andrews P. В.)
Theorem Proving via General Matings // J. Assoc. Comput. Mach.—1981.—
V. 28, No. 2,— P. 193—214.
3.12 Б ii б e л ь В. (Bibel W.)
A Comparative Study of Several Proof Procedures / Artificial Intelligence.—
1982,—V. 18 —P. 269—293.
374
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
3.13 Башлыков А. А., Вагин В. Н.
Принципы организации дедуктивных процессов в системах принятия ре¬
шений Ц Тезисы Всесоюзной конференции «Семиотические модели при
управлении большими системами».— М., 1979.— С. 66—69.
3.14. Дмиянни А., Ковальский P. (Deliyanni A., Kowalski R.)
Logic and Semantic Networks Ц Communications of the ACM.— 1979.— V. 22.
No. 3,—P. 184—192.
3.15 Вагин В. H.
О дедуктивных и недедуктивных системах принятия решений Ц Вопросы
кибернетики. Ситуационное управление. Теория и практика/АН СССР.—
М., 1980,— С. 45-59.
3.16 Вагин В. Н.
Дедуктивные модели Ц Представление знаний в человеко-машинных и ро¬
бототехнических системах. Т. А.: Фундаментальные исследования в обла¬
сти представления знаний.— М.: ВИНИТИ, 1984.— С. 36—47.
3.17 Вагин В. И., Кикнадзе В. Г.
Дедуктивный вывод на семантических сетях в системах принятия реше¬
ний Ц Изв. АН СССР. Техническая кибернетика.— 1984.— № 5.— С. 106—
120.
3.18 Вагин В. И.
Параллельная дедукция на семантических сетях Ц Изв. АН СССР. Техни¬
ческая кибернетика.— 1986.— № 5.— С. 51—61.
3.19 Рейтер P. (Reiter R.)
Deductive Question — Answering on Relational Data Bases // Logic and Data
Bases.— New York: Plenum Press., 1978.— P. 149—177.
3.20 Чень 4. (Chang Ch. L.)
DEDUCE 2: Further Investigations of Deduction in Relational Data Bases /
Logic and Data Bases.— New York: Plenum Press., 1978.— P. 201—236.
3.21 Чень 4. (Chang Ch. L.)
On Evaluation of Queries Containing Derived Relations in a Relational Data
Base / Advances in Data Base Theory/H. Gallaire and J. Minker, Eds.—
New York: Plenum Press, 1981.— P. 235—260.
3.22 Трахтенброт Б. А., Барздинь Я. M.
Копечиые автоматы. Поведение п синтез.— М.: Наука, 1970.— 400 с.
К ЧАСТИ IV
Методам обобщения понятий по признакам посвящено много исследований.
Первые попытки построить алгоритмы обобщения основывались на результатах
психологических исследований. Например, в jA.1] описаны алгоритмы форми¬
рования конъюнктивных и простых понятий. По методу М. Дрочена [4.2, 4.3]
строятся дизъюнктивно-конъюнктивные понятия.
В основе работы алгоритма Э. Ханта CLS [4.4, 4.5] лежит поиск отдельных
значений признаков, которые встречаются в описаниях только примеров или
только контрпримеров. Если найти такие значения признаков не удается, вы¬
деляются значения признаков, наиболее часто встречающиеся в описаниях
положительных объектов. Программа CLS применялась для анализа содержа¬
ния текстов и медицинских данных.
В алгоритме А. Г. Аркадьева и Э. М. Бравермана [4.6] формируется описа¬
ние класса объектов, состоящее нз двух таблиц. Одна из них содержит призна¬
ки, входящие в описания всех положительных объектов обучающей выборки,
другая — признаки, не принадлежащие ни одному из положительных объектов.
На этапе распознавания объект считается положительным, если его описание
содержит все признаки первой таблицы и не содержит ни одного признака
второй.
Особенностью алгоритма «11ора», описанного в [4.7], является двоичное ко¬
дирование признаков. Развитием алгоритма «Кора» является программа
[4.8]. Важной чертой программы ТЭМП является возможность одновременной
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
375
работы с разнотипными признаками (качественными н количественными, заме¬
ренными в шкалах порядка, отношений и интервалов), а также с таблицами,
имеющими пропуски значений признаков.
Подход к задаче классификации на основе теории алгебраических решеток
был развит в £4.9].
Метод формирования понятий, реализованный в программной системе
АНАЛИЗАТОР, был разработан В. П. Гладуном и его коллегами [4.10, 4.11,
4.12J. В его основу положено использование специальной организации хранения
данных в памяти ЭВМ в виде пирамидальной сети. АНАЛИЗАТОР успешно
применялся для решения задач прогнозирования и классификации в области
химии, астрономии, экономики, геологии и др.
Вопросам теории и приложений методов эмпирического предсказания по-
свящепа работа [4.13]. Ъдгсруьк
В основу многих алгоритмов обобщения по признакам положены идеи,'
впервые высказанные и обоснованные М. М. Бонгардом и его учениками [4.14,
4.15J. По методу М. М. Бонгарда поня¥Йё отыскивается в форме дизъюнкции
конъюнкций из т переменных или отрицаний этих переменных.
В качестве иллюстрации метода М. М. Бонгарда была взята известная
задача из списка М. Р. Карпа [4.16] — задача о минимальном разрезании гра¬
фа,— одно из решений которой было описано в работе [4.17]. Приближенное
решение этой задачи было дано в работах [4.18—4.21].
Алгоритмы качественного н количественного обобщения по признакам,
являющиеся модификацией алгоритмов Бонгарда М. М. и Ханта Э., были реа¬
лизованы Жуковым Л. Г. [4.22, 4.23]. Им же и автором была разработана диа¬
логовая система автоматизации научных исследований, нашедшая применение
при автоматизированной обработке массивов экспериментальных данных в
химии, металлургии и экономике.
Вопросы обобщения понятий в рамках метода семиотического моделиро¬
вания рассмотрены также в монографии Прудслова Д. А. _ [4.24].
В книге Гаека П. и Гавранека Т. [4.25]излагается ме'тод автоматического
образования гипотез и исследуются вопросы вычислительной сложности рас¬
сматриваемых процедур.
Основные принципы распознавания образов рассмотрены в [4.26, 4.27].
В работах Журавлева Ю. И. [4.28, 4.29] даны основные модели распознавания,
базирующиеся на алгебраическом подходе. Структурные методы распознавания
изложены в работах [4.30, 4.31, 4.32]. Особенно надо отметить работы Харалп-
М, [4.31, 4.32], в которых задача формирования решающего правила
описывается как задача покрытия, выражаемая в терминах получения покры¬
тий классов некоторыми множествами, независимо от того, является ли об¬
раз точкой re-мерного признакового пространства или словом в некотором
алфавите.
Принципы и методы структурного обобщения знаний, представленных се¬
мантическими сетями, для систем управления и принятия решений подробно
исследованы в работах Викторовой Н. П. и автора [4.33—4.38]. Реализация
алгоритмов точечного и дизъюнктивного обобщений для системы управления
энергообъединением принадлежит Викторовой Н. П. и автору.
Методы обобщения в ипдуктивной логике были рассмотрены в работах
Плоткипа Г. Д. [4.39, 4.40].
4.1 Б е н е р д ж и Р.
Теория решения задач.— М.: Мир, 1972,— 224 с.
4.2 Кочен М. (Kochen М.)
An experimental Program for the selection of «disjunctive hypothesis» Ц
Proceedings of Western Joint Computer Conference.— 1961.
4.3 Кочен M. (Kochen M.)
Experimental study of «hypothesis — formation» by computer /J Informa¬
tion Theory. IV London Symposium.— London; Washington, 1961.
4.4 Хант Э., Марин Дж., Стоун Ф.
Моделирование процесса формирования понятий на вычислительной маши¬
не.— М.: Мир, 1970,— 302 с.
376
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
4.5 X а н т Э.
Искусственный интеллект,— М.: Мнр, 1978,— 558 с.
4.6 Аркадьев А. Г., Враверман Э. М.
Обучение машнны классификации объектов.—М.: Наука, 1971.— 192 с.
4.7 В а и и ц в а й г М. Н.
Алгоритмы обучения распознаванию образов «Кора» Ц Алгоритмы обуче¬
ния распознаванию образов,—М.: Сов. радио, 1973,—С. 110—116.
4.8 Л б о в Г. С.
.Методы обработки разнотипных экспериментальных данных.— Новоси¬
бирск: Наука, 1981.— 160 с.
4.9 Болдырев Н. Г., Ч е б о к с а р о в а Т. Н.
Алгебраический подход к проблеме классификации Ц Изв. АН СССР Тех¬
ническая кибернетика,— М.— 1977.— № 2,— С. 207—212.
4.10 Г л а д у н В. П.
Эвристический поиск в сложных средах.— Кпев: Наукова думка, 1977.—
166 с.
4.11 Г л а д у н В. П., Ващенко Н. Д.
Методы формирования понятий па ЦВМ Ц Кибернетика,— 1975.— № 2,—
С. 107—112.
4.12 Ващенко Н. Д.
Формирование понятий в семаптической сети // Кибернетика—. 1983,—
№ 2 — С. 101—107.
4.13 3 а г о р у й к о Н. Г.
Эмпирическое предсказапие.— Новосибирск: Наука, 1979.— 124 с.
4.14 Б о н г а р д М. М.
Проблема узнавания.— М.: Наука, 1967.— 320 с.
4.15 Лосев И. С., М а к с и м о в В. В.
О задаче обобщения начальных ситуаций Ц Моделирование обучения и
поведенпя/'Под ред. М. С. Смирнова.— М.: Наука, 1975.
4.16 Карп М. Р.
Сводимость комбинаторных проблем // Кибернетический сборник.
Вып. 12,— М.: Наука, 1975.
4.17 Горинштейн Л. Л.
О разрезанпи графов Ц Изв. АН СССР. Техническая кибернетика.— 1969.—
№ 1,
4.18 Вагин В. Н., Георгиева Н. Ц.
Решение задачи о сегментации графа на два подграфа с использованием
классификатора Ц Вопросы кибернетики.— М.: Советское радио, 1977.—-
№ 18, с. 130-139.
4.19 Георгиева Н. Ц., Вагин В. Н.
Евристичен метод за оптимизация на структурата на отраслева система
ИЦ Ц Математика и математическо образование.— София: Болгарская Ака¬
демия наук, 1979v— С. 154—164.
4.20 Вагин В. Н., Георгиева Н. Ц.
Върху една задача за разбиване на графи / Техническа мисъл.— София,
1978,— Т. XV, № 4.— С. 35-41.
4.21 Вагин В. Н., Георгиева Н. Ц., Поспелов Д. А.
О сегментации графов II Изв. АН СССР. Техническая кибернетика.— 1983.—
№ 4,- С. 95—103.
4.22 Жуков Л. Г.
Об одном алгоритме индуктивного формирования понятий. Ц Вопросы ки¬
бернетики. Вып. 18.— М.: Советское радио, 1977.— С. 161—171.
4.23 Жуков Л. Г.
Методы обобщения информации в диалоговых системах автоматизации
научных исследований; Автореферат дне. канд. тех. наук.— М., 1977.— 20 с,
4.24 Поспелов Д. А.
Логико-лингвистические модели в системах управления.— М.: Эпсргои.здат,
1981,— 231 с.
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
377
4.25 Гаек П., Г а в р а н е к Т. (P. Hajek, Т. Havranek)
Mechanizing Hypothesis Formation. Mathematical Foundations for a General
Theory.— Berlin; Heidelberg; New York: Springer-Verlag, 1978. (Русский
перевод: Автоматическое образование гипотез. Математические основы об¬
щей теории.— М.: Наука, 1984.— 277 с.)
4.26 Ту Дж., Гонсалес Р.
Принципы распознавания образов.— М.: Мир, 1980.— 411 с.
4.27 Дуда Р., Харт П.
Распознавание образов и анализ сцен.— М.: Мир, 1976.— 511 с.
4.28 Журавлев Ю. И.
Об алгебраическом подходе к решению задач распознавания или класси¬
фикации // Проблемы кибернетики.— 1978.— Вып. 33.— С. 4—68.
4.29 Гуревич Ю. Б., Журавлев Ю. И.
Минимизация булевых функций и эффективные алгоритмы распознава¬
ния Ц Кибернетика.— 1974.— Вып. 3.— С. 16—20.
4.30 Фу К. С.
Структурные методы в распознавании образов.— М.: Мир, 1977.— 319 с.
4.31 Харалик Р. М. (Haralick R. М.)
Structural Pattern Recognition, Homomorphisms and Arrangements Ц Pat¬
tern Recognition.— 1978.— V. 10, No. 3.
4.32 Харалик P. M. (Haralick R. M.)
Structural Pattern Recognition, Arrangements and Theory of Covers Ц
Proc. IEEE Comput. Soc. Conf. “Pattern Recognition and Image Process”.—
Tray, N. Y.— 1977.
4.33 Викторова H. П.
Методы обобщения и классификации ярусных структур специального ви¬
да / Изв. АН СССР. Техническая кибернетика.— 1981.— № 5.
4.34 Викторова Н. П.
Два подхода к решению задачи классификации древовидных структур JJ
НТИ. Сер. 2,— 1981,— № 9.— С. 17—21.
4.35 Вагин В. Н., Викторова Н. П.
Методы обобщения ярусных структур Ц Тезисы докладов и сообщений
Всесоюзной конференции. Методы математической логики в проблемах
искусственного интеллекта и систематическое программирование. Паланга,
3—5 септября 1980 г., Вильнюс.— 1980.— С. 71—72.
4.36 Вагин В. Н., Викторова Н. П.
Алгоритмы распознавания на древовидных структурах ]/ Труды МЭИ. Диа¬
логовые системы в управлении, проектировании и обучении.— 1980.—
Вып. 485.— С. 15—21.
4.37 Вагин В. Н., Викторова Н. П.
Вопросы структурного обобщения и классификации в системах принятия
решений Ц Изв. АН СССР. Техническая кибернетика.— 1982.— № 5.—
С. 64-73.
4.38 Вагин В. Н., Викторова Н. П.
Задачи обобщения в системах принятия решений: Формирование классов
объектов и отношений выбора на семантических сетях / Изв. АН СССР.
Техническая кибернетика.— 1985.— № 5.— С. 3—17.
4.39 И л о т к и н Г. Д. (Plotkin G. D.)
A Note on Inductive Generalization Ц Machine Intelligence.—1970.— No. 5.—
P. 153—103.
4.40 Плот кин Г. Д. (Plotkin G. D.)
A Further Note on Inductive Generalization Ц Machine Intelligence.—1971.—
No. 6.—P. 101—124.
К ЧАСТИ V
Так как в книге затрагивается весьма узкий класс вопросов проблемы при¬
нятия решений при нечетко заданной информации, то желающие ознакомиться
более подробно с этой темой отсылаются к работам [5.1—5.7].
378
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
При проведении психометрических экспериментов методики для измерепия
субъективных расстояний между ощущениями частоты встречаемости были
взяты из работ [5.8, 5.9].
Методы точечной аппроксимации функций, в частности, метод наименьших
квадратов и метода исключения по компактной схеме Гаусса более подробно
изложены в [5.10, 5.11]. Описание функций Хаара можно найти в работе [5.12].
Алгоритмы формирования и коррекции оббощенных понятий с использова¬
нием числовых коэффициентов и печетких переменных были предложены Жу¬
ковым JI. Г. и автором и изложены в [5.13].
Задачи качественного описания систем как задачи структурного анализа
и епптеза систем, декомпозиции систем па подсистемы, классификации и рас¬
познавания образов, принятия решений и анализа рациональности, согласован¬
ности продпочтешш и т. п., а также цели качественного описания систем более
подробно описаны в работах [5.14—5.20].
В [5.20, 5.21] дается качественная оценка рациональности отношений пред¬
почтения, под которой понимается некоторая степень транзитивности отноше¬
ния или процедура согласования индивидуальных предпочтений.
Читатели, желающие фундаментально ознакомиться с теорией решеток,
отсылаются к работе [5.22].
Теория^обыкновенных отношений изложена в [5.23, 5.24], а связь взвешенных
отпошений с обыкновенными на a-срезах обсуждалась в работах [5.25, 5.32].
Различного рода условия транзитивности рассматирвались в [5.1, 5.25, 5.26,
5.32].
Задача иерархической кластеризации как задача преобразования неструк¬
турированной информации в структурированную в различных постановках
излагалась в [5.27, 5.28, 5.29, 5.30, 5.39].
В [5.31] были получены различные оценки решения задачи аппроксимации
взвешенного графа сходства иерархией вложенных друг в друга графов.
Процедура транзитивного замыкания исходного размытого отношения сход¬
ства была предложена в работе [5.32], а в [5.33] было показано, что эта про¬
цедура эквивалентна кластеризации по алгоритму «ближайший сосед».
В [5.34, 5.35] рассматирвалась задача аппроксимации нечетких отношений.
Основные алгоритмы иерархической кластеризации па базе общей схемы
допустимых транзитивных преобразований были предложены Батыршиным И. 3.
и автором и изложены в [5.36, 5.37, 5.38].
Сравнение предложенных алгоритмов с известными иерархическими алго¬
ритмами кластеризации проводилось па контрольных примерах, взятых из ра¬
бот [5.40, 5.41].
Алгоритмы кластеризации, выделяющие аналоги ядер отношения 7?с, и
послойные методы кластеризации обсуждены в работах [5.42. 5.43].
Подробное описание оптимальных алгоритмов транзитивного замыкания
взвешенных графов можно найти в [5.44].
В работе [5.45] показано, как несимметричное взвешенное отношение
преобразовать в симметричное, а в [5.46] дано описание метода «неполной
связи».
Классические алгоритмы иерархической кластеризации рассмотрены в ра¬
ботах [5.18, 5.47], недостатки которых отмечены в [5.48].
5.1 О р л о в с к н й С. А.
Проблемы принятия решений при нечеткой исходной информации,— М.:
Наука, 1981.— 206 с.
5.2 3 а д е JI. А.
Основы нового подхода к анализу сложных систем и процессов принятия
решений Ц Математика сегодня.— М.: Знание, 1974.— С. 5—49.
5.3 ЗадеЛ. А.
Понятие лингвистической переменной и его применение к принятию при¬
ближенных решепий.— М.: Мир, 1976.— 165 с.
5.4 Ежкова И. В., Поспелов Д. А.
Принятие решений при нечетких основаниях, ч. I. Универсальная школа Ц
Известия АН СССР. Техническая кибернетика,— 1977,— № 6.— С.. 3—11.
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
370
5.5 Е ж к о в а И. В., Поспелов Д. А.
Принятие решений при нечетких основаниях. Ч. II. Схемы вывода Ц Изве¬
стия АН СССР. Техническая кибернетика,— 1978,—№ 2,—С. 5—11.
5.6 Б л и ш у н А. Ф., Шапиро Д. И.
Принятие решений на основе лингвистического представления ситуацион¬
ных данных и критериев Ц Изв. АН СССР. Техническая кибернетика.—
1981,—№ 5,—С. 212—217.
5.7 Вагин В. Н., Поспелов Д. А., Папке В.
Application of Fuzzy Logic in Control Systems. Ц Foundations of Control
Engineering. (Poland) — 1977.— V. 2, No. 3,— P. 153—160.
5.8 Ф p у м к и н a P. М., Василевич А. П.
Прогнозирование оценок вероятностей слов психометрическими метода¬
ми Ц Вероятностное прогнозирование речи.— М.: Наука, 1971.
5,0 Ф р у м к и н а Р. М.
Прогпоз речевой деятельности.— М.: Наука, 1974.
5.10 Демидович Б. П., Марон И. А., Шувалова Э. 3.
Численные методы анализа.— М.: Наука, 1970.— 531 с.
5.11 Бахвалов Н. С.
Численные методы. М.: Наука, 1973.— Т. 1.
5.12 Соболь И. М.
Многомерные квадратурные формулы и функции Хаара.— М.: Наука, 1969.
5.13 Вагин В. Н., Ж у к ов Д. Г.
Использование лингвистических переменных при формировании обобщен¬
ных понятий /J Вопросы кибернетики. Проблемы искусственного интел¬
лекта— М., 1980,— С. 126—131.
5.14 Ов сие вич Б. Л.
Модели формирования организационных структур,— Д.: Наука, 1979.—
159 с.
5.15 М и р к и н Б. Г.
Анализ качественных признаков и структур.— М.: Статистика, 1980.—
319 с.
5.16 Н е ч и п о р е н к о В. И.
Структурный анализ систем (эффективность и надежность).— М.: Совет¬
ское радио, 1977.— 216 с.
5.17 Цвиркун А. Д.
Структура сложных систем.— М.: Советское радио, 1975.— 200 с.
5.18 Дюран Б., Оделл П.
Кластерный анализ.— М.: Статистика, 1977.— 128 с.
5.19 Классификация п кластер/Под ред. Дж. Вэн. Райзина.— М.: Мир, 1980.—
389 с.
5.20 М п р к и н Б. Г.
Проблема группового выбора.— М.: Наука, 1974.— 256 с.
5.21 Ем е л ь я н о в С. В., Н а п п е л ь б а у м Э. Л.
Методы исследования сложных систем. I. Логика рационального выбора /
Техническая кибернетика (Итоги пауки и техники).— М.: ВИНИТИ, 1976.—
Т. 8.— С. 5—101.
5.22 Б и р к г о ф Г., Б а р т и Т.
Современная прикладная алгебра.— М.: Мир, 1976.— 400 с.
5.23 Шрейдер Ю. А.
Равенство, сходство, порядок.— М.: Наука, 1971.— 254 с.
5.24 Кузьмин В. Б., Овчинников С. В.
О пространстве бинарных отношений Ц Статистические методы анализа
экспертных оценок.— М.: Наука, 1977.— С. 58—69.
5.25 Заде Л. A. (Zadeh L. А.)
Similarity relations and fuzzy orderings / Inform. Sci. 1971.— V. 3.— P. 177—
200.
5.26 Без дек Дж., Харрик Дж. (Bezdek J. С., Harric J. D.)
Fuzzy partitions and relations: an axiomatic basis for clustering JJ Fuzzy
Sets and Systems.— 1978.—V. 1, No. 2,—P. Ill—127.
380
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
5.27 Д я; о п с о п С. К. (Johnson S. С.)
Hierarchical clustering schemes Ц Psychometrica.— 1967.— V. 32,— P. 241—
254.
5.28 Д ж a p д а й н H., Спбсон P. (Jardine N., Sibson R.)
Mathematical taxonomy.—London: John Wiley and Sons, 1971.
5.29 Хартиган Дж. (Hartigan J. A.)
Representation of similarity matrices by trees Ц J. Amer. Stat. Assoc.—
1967 —V. 62, No. 12,—P. 1140-1158.
5.30 Ляпунов A. A.
О строении и эволюции управляющих систем в связи с теорией класси¬
фикаций Ц Проблемы кибернетики.— 1973,—Вып. 27.—С. 7—18.
5.31 Фридман Г. Ш.
Исследование одной задачи классификации на графах Ц Методы моделиро¬
вания и обработка информации,—Новосибирск: Наука, 1976,—С. 147—177.
5.32 Т амур а С., Хпгучн С., Танака К. (Tamura S., Higuchi S., Tana¬
ka К.)
Pattern classification based on fuzzy relations / IEEE Trans. Syst. Man, Cv-
bern.—1971.—SMC-1.—P. 61—66.
5.33 Данн Дж. (Dunn J. C.)
A graph theoretic analysis of pattern classification via Tamura’s fuzzy rela¬
tions Ц IEEE Trans. Syst,, Man, Cybern — 1974.— SMC — 3,— P. 310—313.
5.34 Аверкин A. H., Макеев С. П.
Аппроксимация нечетких отношений 1-го и 2-го типов нечеткими отноше¬
ниями эквивалентности Ц III научно-техн. семинар: «Управление при
наличии расплывчатых категорий»: Тез. докл.— Пермь, 1980.— С. 20—22.
5.35 Дробышев Ю. П., Пухов В. В.
Аппроксимация нечетких отношений Ц Эмпирическое предсказание и рас¬
познавание образов. (Вычислительные системы).— 1978,—Вып. 76,—
С. 75—82.
5.36 Батыршин И. 3., Вагин В. Н.
Об алгебре размытых множеств и алгебрах Де Моргана Ц III научно-техн.
семинар «Управление при наличии расплывчатых категорий»: Тез. докл.—
Пермь,— 1980.— С. 27—29.
5.37 Батыршин И. 3.
Кластеризация на основе размытых отношений сходства Ц III научно-техн.
семинар «Управление при наличии расплывчатых категорий»: Тез. докл.
Пермь, 1980.— С. 25—27.
5.38 Батыршин И. 3., Вагин В. Н.
Алгоритмы кластеризации, основывающиеся на понятии неразличимости
объектов Ц Управление при наличии расплывчатых категорий. IV Всесоюз¬
ный научно-техн. семинар: Тез. докл.— Фрунзе: Илим, 1981.— С. 79.
5.39 Ээремаа Р. В.
Кластер — анализ при задаче таксономии Ц Тр. Выч. центра Тартусского
гос. ун-та.— Тарту.— 1976.— Вып. 36.— С. 59—80.
5.40 X ь ю б е р т Дж., Бейкер Б.
Экспериментальное сравнение эталонных моделей иерархической группи¬
ровки по р-диаметру относительно показателя согласия Ц Классификация
и кластер.— М.: Мир, 1980.— С. 112—128.
5.41 Дэвис Дж.
Статистика и анализ геологических данных.— М.: Мир, 1977.— 572 с.
5.42 Апресян Ю. Д.
Алгоритм построения классов по матрице расстояний Ц Машинный пере¬
вод и прикладная лингвистика.— 1966.— Вып. 9.— С. 72—79.
5.43 М а т у л а Д. В.
Методы теории графов в алгоритмах кластер-анализа Ц Классификация
и кластер.— М.: Мир, 1980.— С. 83—111.
5.44 Ахо А., Хопкрофт Дж., Ульман Дж.
1979. Построение и анализ вычислительных алгоритмов.— М.: Мир, 1979.—
536 с.
ЛИТЕРАТУРНЫЙ КОММЕНТАРИЙ
331
5.45 Л у м е л ь с к п й В. Я.
Агрегирование матрицы межотраслевого баланса с помощью методов диа-
гоналнзацни матриц связи / Автоматика н телемеханика.— 1970.— № 9.—
С. 69-73.
5.46 II а р н и ц к п и Г.
Основы статистической информатики.— М.: Финансы и статистика, 1981.—
199 с.
5.47 Ланс Г., Вильямс В. (Lance G. N., Williams W. Т.)
A general theory of classii'icatory sorting strategies. I. Hierarchical Systems Ц
Comput. J.— 1969.— V. 9, No. 4,— P. 373—380.
5.48 С о к а л P. P.
Кластер-анализ и классификация: предпосылки и основные направления /[
Классификация и кластер.— М.: Мир, 1980.— С. 7—19.
ОГЛАВЛЕНИЕ
Предисловие ,
Введение
ЧАСТЬ I. ФОРМАЛЬНЫЕ СИСТЕМЫ
Глава 1. Исчисление высказываний
1.1. Понятие формальной системы
1.2. Основные понятия исчисления высказываний
1.3. Исчисление высказываний как формальная система ....
1.4. Нормальные формы
1.5. Логические следствия
Глава 2. Исчисление предикатов первого порядка
2.1. Основные понятия исчисления предикатов первого порядка .
2.2. Исчисление предикатов первого порядка как формальная система
2.3. Проблема разрешимости
2.4. Пренексные нормальные формы
2.5. Сколемовские стандартные формы
2.6. Логические следствия
ЧАСТЬ И. СЕМАНТИЧЕСКИЕ СЕТИ
Глава 3. Декларативные и процедурные модели представления зна¬
ний в системах принятия решений.
3.1. Декларативные представления
3.2. Процедурные представления
Глава 4. Семантическая сеть — формализм для представления знаний
4.1. Общее понятие о семантических сетях
4.2. Структура семантической сети
4.3. Представление семантической сети в виде совокупности фреймов
4.4. Переход от семантической сети к реляционной схеме Кодца .
4.5. Операторы семантической сети
4.0. Организация семантических сетей в рамках процедурного подхода
ЧАСТЬ III. ДЕДУКЦИЯ В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИЯ . . .
Глава 5. Дедуктивные процедуры вывода
5.1. Процедура вывода Эрбрана
5.2. Принцип резолюции для логики высказываний
5.3. Принцип резолюции для логики предикатов первого порядка
5.4. Семантическая резолюция ...
5.5. Линейная резолюция . . .
5.6. Другие модификации принципа резолюции
5.7. Реализация алгоритмов дедуктивного вывода в системе управ¬
ления энергообъединением
3
5
И
И
И
15
18
21
22
24
24
30
35
37
40
43
46
46
46
55
60
60
68
76
92
94
104
120
120
120
123
125
129
135
140
171
ОГЛАВЛЕНИЕ
Глава 6. Дедуктивный вывод на семантических сетях
6.1. Особенности семантических сетей для систем принятия решений
0.2. Методы дедукции на семантических сетях в системах принятия
решений
G.3. Алгоритмы дедуктивного вывода на раскрашенных семантиче¬
ских сетях
0.4. Параллелизм в дедуктивном выводе иа семантических сетях .
6.5. Применение алгоритмов дедукции на семантических сетях в си¬
стеме управления энергообъединением
6.0. Дедуктивный вывод в реляционных базах данных ....
ЧАСТЬ IV. ОБОБЩЕНИЕ В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИЙ . .
Глава 7. Обобщение понятии по признакам
7.1. Постановка задачи обобщения понятий по признакам . . . .
7.2. Метод М. М. Бонгарда иа примере решения задачи о разрезании
графа
7.3. Алгоритмы качественного обобщения по признакам . . . .
7.4. Алгоритмы количественного обобщения по признакам .
7.5. Примеры использования алгоритмов обобщения по признакам
в системах автоматизации научных исследований
Глава 8. Обобщение понятий по структурам
8.1. Постановка задачи обобщения понятий по структурам .
8.2. Семантические графы и обобщение информации, представленной
семантическими графами
8.3. Точечное и дизъюнктивное обобщение
8.4. Алгоритмы точечного обобщения семантических графов .
8.5. Алгоритмы дизъюнктивного обобщения семантических графов
8.6. Реализация алгоритмов структурного обобщения в системе уп¬
равления энергообъединеиием
ЧАСТЬ V. НЕЧЕТКО ЗАДАННЫЕ ПОНЯТИЯ В СИСТЕМАХ ПРИНЯ¬
ТИЯ РЕШЕНИЙ
Глава 9. Нечеткие переменные при формировании обобщенных по¬
нятий
9.1. Основные определения
9.2. Психометрические измерения по определению смысла нечетких
переменных
9.3. Алгоритм формирования и коррекции печотких понятий с чис¬
ловыми коэффициентами
9.4. Алгоритм формирования и коррекции обобщенных понятий с
использованием нечетких переменных
Глава 10. Иерархические методы кластеризации
10.1. Качественный анализ систем принятия решений
10.2. Постановка задачи иерархической кластеризации
10.3. Выделение множества допустимых транзитивных преобразований
10.4. Общая схема допустимых транзитивных преобразований и ал¬
горитмы ее реализации
10.5. Задача поиска наилучшей транзитивной аппроксимации .
10.6. Алгоритмы кластеризации на основе несимметричного взвешен¬
ного отношения
10.7. Алгоритмы выявления классов толерантности взвешенных от¬
ношений
10.8. Практическая реализация алгоритмов качественного анализа
систем
Литературный комментарий
179
179
184
191
200
209
211
235
235
235
239
253
263
267
273
273
276
285
289
302
315
317
317
317
321
324
329
336
336
340
349
354
300
361
364
367
370
Научное издание
ВАГИН Вадим Николаевич
ДЕДУКЦИЯ II ОБОБЩЕНИЕ
В СИСТЕМАХ ПРИНЯТИЯ РЕШЕНИЙ
«Проблемы искусственного интеллекта», вып. 11
Заведующий редакцией В. В. Елисеев
Редактор В. Н. Захаров
Художественный редактор Т. Н. Колъченко
Технический редактор Е. В. Морозова
Корректоры Л, В. Назарова, Н. В. Румянцева
ИБ № 32558
Сдано в набор 09.11.87. Подписано к печати 21.06.88.
Т-14783. Формат 60x90/16. Бумага писчая. Гарнитура
■обыкновенная. Печать высокая. Уел. печ. л. 24. Уел.
жр.-отт. 24. Уч.-изд. л. 27,4. Тираж 4850 экз. Заказ №1182.
Цена 4 р. 50 к.
Ордена Трудового Красного Знамени
издательство «Наука»
Главная редакция физико-математической литературы
117071 Москва В-71, Ленинский проспект, 15
4-я типография издательства «Наука»
■630077 Новосибирск, 77, Станиславского, 25