Частичная выводимость предикатных формул как средство распознавания объектов с неполной информацией

ВЕСТНИК САНКТ-ПЕТЕРБУРГСКОГО УНИВЕРСИТЕТА

Сер. 10. 2009. Вып. 1

УДК 004.93.51 Т. М. Косовская

ЧАСТИЧНАЯ ВЫВОДИМОСТЬ ПРЕДИКАТНЫХ ФОРМУЛ КАК СРЕДСТВО РАСПОЗНАВАНИЯ ОБЪЕКТОВ С НЕПОЛНОЙ ИНФОРМАЦИЕЙ

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

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

В настоящей работе исследуются задачи адаптации логико-предметной распознающей системы к распознаванию в условиях неполной информации (включая распознавание частично заслоненных объектов). С этой целью вводится понятие неполного вывода, заключающееся в том, что из имеющегося множества формул выводима лишь подформула заданной формулы, но сама формула не противоречит данному множеству. Даются алгоритмы построения неполного вывода, позволяющего отнести распознаваемый объект к тому или иному классу с определенной (вычисляемой в процессе работы алгоритма) степенью уверенности. Доказываются оценки числа шагов работы этих алгоритмов. Полученные оценки и результаты работы [2] позволяют утверждать, что, несмотря на NP-трудность задачи, рассматриваемой в общей постановке, для случая, когда описания классов фиксированы (т. е. не могут быть изменены в процессе работы), число шагов работы алгоритмов ограничено полиномом, степень которого для разных алгоритмов зависит от количества аргументов описаний классов или от количества атомарных формул в таких описаниях.

2. Постановка задачи распознавания в условиях неполной информации. Рассмотрим задачи распознавания образов в следующей постановке [3]. Пусть имеется множество О конечных множеств ш = \wi,...,wt}, которые в дальнейшем будут называться распознаваемыми объектами. Частью т объекта ш называется любое его подмножество (не обязательно собственное). Пусть также на частях т задан набор

Косовская Татьяна Матвеевна — доцент кафедры теоретической кибернетики математикомеханического факультета Санкт-Петербургского государственного университета. Количество опубликованных работ: 42. Научные направления: распознавание образов, теория сложности алгоритмов. E-mail: kosov@NK1022.spb.edu.

© Т. М. Косовская, 2009

предикатов р1,...,рп, характеризующих свойства и отношения между элементами объекта ш.

Пусть задано разбиение множества О на К (возможно пересекающихся) классов

о = иГ=1 Ок.

Логическим описанием Б(ш) объекта ш называется набор всех истинных постоянных формул вида Рг(т) или -1р*(т), выписанных для всех возможных частей г объекта си.

Здесь и далее посредством х будем обозначать список элементов конечного множества х, соответствующий некоторой перестановке номеров его элементов. Тот факт, что элементами списка х являются элементы множества у, будем записывать в виде ж С у. Для того чтобы записать, что значения для переменных списка х, удовлетворяющие формуле А(х), различны, вместо формулы 3х1...3хт(х1 ф х^ & х\ ф х% & ... & хт-\ ф хт & А(х 1, ...,хт)) будет использоваться обозначение 3ХфА(х).

Логическим описанием класса О-к называется такая формула Ак(х), что

1) Ак(х) содержит в качестве атомарных только формулы вида р*(у), где у С ж;

2) Ак(х) не содержит кванторов;

3) если истинна формула Ак(й), то ю €

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

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

Задача идентификации. Проверить, принадлежит ли объект ш или его часть классу Ок.

Задача классификации. Найти все такие номера классов к, что ш € Ок.

Задача анализа сложного объекта. Найти и классифицировать все части т объекта ш, для которых т € О.

Решение задач идентификации, классификации и анализа сложного объекта в [3] сведено к доказательству соответственно формул

к к

Б

к=1 к=1

В [2] доказаны оценки числа шагов алгоритмов, решающих сформулированные задачи как для пропозиционального случая, когда исходные предикаты глобально характеризуют весь объект целиком (т. е. по существу являются булевыми переменными), так и для предикатного случая, когда исходные предикаты задают локальные характеристики объекта, т. е. свойства и отношения между частями объекта. В последнем случае, в зависимости от применяемого алгоритма решения задачи, такие оценки экспоненциально зависят от количества аргументов описаний классов или от количества атомарных формул в этих описаниях. Доказана NP-трудность рассматриваемых задач.

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

При решении задач идентификации, классификации и анализа сложного объекта при наличии неполного описания объекта вместо проверки справедливости секвенций (1) соответственно имеется возможность проверки лишь того, что

кк Б

к=1 к=1

Так как описание класса представляет из себя дизъюнкцию простых конъюнкций, то при обозначении Ак(х) = \//=1 Мг&к) (гДе Для каждого j (1 ^ ^ Jk ) у{ является

подстрокой списка переменных х) (2) равносильно тому, что хоть при одном значении 3 (1 ^ 3 ^ ’^к) (и хоть при одном значении для к (1 ^ к ^ К) для задач классификации и анализа сложного объекта) справедливо

%)ЬЗ %фА?к$к), Б(ш)-А{(й), %)ЬЗ %фА?к$к).

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

3. Построение неполного вывода как средство адаптации распознающей системы к неполной информации. Пусть р1, ...,рп - заданный набор предикатов, ш = {ш1,..., ш^ - множество предметных констант, Б(ш) - некоторая непротиворечивая совокупность постоянных атомарных формул или их отрицаний, А(х) - простая конъюнкция атомарных формул или их отрицаний со списком предметных переменных х. Отметим, что здесь Б(ш) может не содержать все постоянные атомарные формулы или их отрицания, истинные на ш.

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

Б(ш) Ь 3уф А(у).

Фрагментом формулы А(х) называется любая ее подформула А(у), где список переменных у является подсписком списка переменных х.

Пусть а и а - количество атомарных формул в А(х) и А(у) соответственно, то и то - количество предметных переменных в А(х) и А(у) соответственно.

Числа (/иг вычисляются по формулам </ = г = ^ и характеризуют степень совпадения формул А(х) и А(у). При этом 0 < </ ^ 1, 0 < г ^ 1. Кроме того, д = г = 1 тогда и только тогда, когда А(у) совпадает с А(х).

Замечание. Возможен следующий вариант определения чисел ц и г. Каждому предикату и каждой предметной переменной формулы можно приписать их «вес», определяемый либо экспертами, либо из вероятностных соображений. Тогда </ = г = где го и го — сумма «весов» предикатных формул в А(х) и А(у) соответственно, V и V - сумма «весов» предметных переменных в А(х) и А(у) соответственно.

При таких обозначениях формулу А(у) будем называть (</, г)-фрагментом формулы А(х).

Если секвенция Б (си) Ь Зхф А(х) не выводима, но для некоторого ее (</, г)-фрагмента А(у) (при </ ф 1) выводима секвенция Б(си) Ь 3уф А(у), то будем говорить, что Б(си) Ь Зхф А(х) является частично (</, г)-выводимой.

Очевидно следующее утверждение.

Утверждение. Если секвенция Б (си) Ь Зхф А(х) частично (д, г)-выводима, то для любого ц', такого, что ц' < ц, найдется г' (г' ^ г), что эта секвенция является частично (Ц,г')-выводимой.

Формула ВА(х) называется негативным дополнением формулы А(х) до ее фрагмента А(у), если она является простой дизъюнкцией, состоящей из отрицаний конъюнктивных членов формулы А(х), не вошедших во фрагмент А(у), т. е. А(у) & —I тт <(=> А(х).

Как секвенциальное исчисление предикатов, так и метод резолюций для исчисления предикатов для формул рассматриваемого вида конструктивны в том смысле, что если доказана выводимость секвенции Б (из) Ь 3 у^ А (у), то можно указать такой набор различных констант г = (из^,...,иЗг~), что истинна А(из^, ...,иЗг~), если истинны все формулы из Б?(ш).

Секвенция I- Зхф А(х) называется (</, г)-выводимой, если она частично (</, г)-выводима и ни для каких наборов различных констант т, для которых из истинности в (из) следует истинность А(т), не выводима секвенция Б (из) Ь Зхф [О А(х)]^, где у -подсписок списка х, являющийся списком аргументов формулы А(у).

Здесь использовано обозначение [0\Т - результат замены всех свободных вхождений предметной переменной х на терм Т.

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

По сути дела, понятие (</, г)-выводимости для секвенции Б (из) Ь Зхф А(х) означает, что имеется набор разных констант (ш^, ...,ш^~), количество которых составляет долю г от общего количества переменных формулы А(х), для которого истинна подформула А-(ш^1 ,...,ш^-), количество атомарных формул которой составляет долю ц от общего количества атомарных формул формулы А(х), а также нет информации о том, что формула А(х) не выполнима на из.

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

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

1. В качестве А(у) берем формулу А(х). а := а, т := то.

2. д := г :=

* а т

3. Выбираем А™ наборов г из множества из = {из\,..., из^ в качестве значений для у и помещаем в очередь <3Т те из них, которые не появлялись ранее в процессе выполнения алгоритма. Берем первый элемент из этой очереди.

4. Проверяем, имеются ли в в (из) все конъюнктивные члены формулы А(т). Если это не так, то в случае непустой очереди берем следующий элемент из QT и повторяем выполнение п. 4. Если же QT пуста, то переходим к выполнению п. 6.

5. Секвенция Б (из) Ь Зхф А(х) является частично (</, г)-выводимой. Составляем негативное дополнение [ОА(х)]^г и проверяем, что в в (из) нет ни одной формулы, входящей в простую дизъюнкцию [ОА(х)]^. Если это так, то при д = г = 1 формула выводима и алгоритм заканчивает работу. Если же </ < 1, то Б (из) Ь Зхф А(х) является (</, г)-выводимой. В противном случае формула А(у) не обеспечивает неполный вывод секвенции Б (из) Ь Зхф А(х).

6. Если ни для одного набора г формула А(т) не выполняется на ш, то последовательно удаляем по одному конъюнктивному члену формулы А(у) и помещаем в очередь С^а те простые конъюнкции, которые не появлялись ранее при работе этого алгоритма. Для каждой полученной простой конъюнкции полагаем а = а — 1 и т - количество предметных переменных в ней.

7. Если очередь <^а не пуста, то в качестве формулы А(у) берем первую формулу из очереди QA и возвращаемся к выполнению п. 2 этого алгоритма.

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

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

Пусть то - число предметных переменных в формуле А(х), $1 - количество вхождений предиката Рг в Б(а>), в = тах*(в*), щ - количество вхождений предиката в А(у), а - количество атомарных формул в А(х), а = + ... + ап.

Теорема 1. Число шагов работы переборного алгоритма проверки неполной выводимости секвенции Б (си) Ь Зхф А(х) с точностью до аддитивной константы не превосходит

2а-2(а2 — 2а — 1) + Ат2а-1а(2в + а),

что составляет

о(гт • 2а),

где £ - число элементов в множестве ш.

Доказательство. Пункты 1, 2 алгоритма выполняются за константу шагов. П. 3 алгоритма определяет длину очереди QT, т. е. количество выполнений пунктов

4, 5 для каждого фрагмента исходной формулы. Оно равно количеству наборов длины то различных констант г, т. е. числу размещений из Ь по то: А™.

При выполнении п. 4 алгоритма для каждого конкретного набора констант г число шагов (сравнений конъюнктивного члена формулы А(у) и формул в Б(а>) с тем же предикатом) не превосходит П=1 в* • а*. Число Б4 шагов работы алгоритма при однократном выполнении п. 4 составит

П

Б4 < Е в* •а* ^ в а.

*=1

При выполнении п. 5 алгоритма для набора констант г количество дизъюнктивных членов в негативном дополнении равно (а — а), каждый из которых необходимо сравнить с формулами из Б(ш) с тем же предикатом (число сравнений не превосходит 5^Г=1 в* (а* — *)). Всего число шагов Б5 работы алгоритма при однократном выполнении п. 5 составит

П

Б5 ^ (а — а) + в* (а* — О*) ^ ((а — а) + в (а — а)) ^ (а — а)(в + 1).

*=1

При выполнении п. 6 алгоритма требуется произвести не более аа выписываний простых конъюнкций с (а — 1) конъюнктивными членами. Число шагов Б6 работы алгоритма при однократном выполнении п. 6 составит

Б6 ^ а (а — 1).

Так как количество фрагментов формулы А

а

^Са(Б6 + ^(Б4 + Б5)) <

*=0 з=1

< С1а(а (а — 1) + Ат0(в а + (а — а)(в + 1))) =

*=0

а

С* ((а — г) (а — г — 1) + А? (в (а — г) + (а — (а — г))(в + 1))) ^

*=0

а а

< ^2 сI(а2 — 2аг + г2 — а + г)+А?^ С*(в а + г) =

*=0 *=0

^са (а2 — а) — £ са (2а — 1)г + ^ Са г2 + А?^ Са в а + А?^ Са г

*=0 *=0 *=0 *=0 *=0

(а2 — а)^ Са — (2а — 1)^ С, г + £ Са г2 + А? в а^Ъ + А?^ С\ г

*=0 *=0 *=0 *=0 *=0

= (а2 — а)2а — (2а — 1)а2а-1 + а(а — 1)2а-2 + А?в а2а + А?а2а-1 =

2а-2

= 0(Ь? 2а).

Алгоритм проверки неполной выводимости (с указанием максимальных выводимых фрагментов) в секвенциальном исчислении предикатов.

Проверка того, существует ли неполный вывод в секвенциальном исчислении предикатов для секвенции в (си) Ь Зхф А(х), может быть выполнена следующим алгоритмом.

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

2. Составляем системы уравнений относительно метапеременных, решения которых обеспечивают свойство полученных в п. 1 секвенций быть аксиомами. Каждое уравнение каждой системы снабжаем номером секвенции, из которой это уравнение было получено. Решаем полученные системы уравнений. В качестве А(у) берем формулу А(х). а := а, т := то.

4. Если хоть одна из систем уравнений имеет решение иг1,иг~, то секвенция Б(и) —

выводима и имеет неполный вывод. В противном случае формула А(у) не обеспечивает неполный вывод секвенции Б(си) Ь Зхф А(х).

5. Если ни одна из систем уравнений не имеет решения, то последовательно для каждой из секвенций, соответствующей концу вывода для формулы А(у), удаляем из систем уравнения, помеченные номером этой секвенции. Из формулы А(у) удаляем конъюнктивный член, совпадающий с сукцедентом этой секвенции.

а := а — 1, вычисляем то для формулы А(у).

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

6. Если очередь не пуста, то в качестве А(у) берем следующую формулу из очереди (вместе с выписанными для нее системами и вычисленными значениями для 'а и т) и переходим к выполнению п. 3.

Алгоритм закончит работу, если очередь пуста.

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

Пусть - количество вхождений предиката рг в Б(ш), в = тахг(вг), аг - количество вхождений предиката Рг в А(х), а - количество атомарных формул в А(х) (а = +

... + ап), - количество аргументов предиката рг, п = т&хг(цг).

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

где под шагом понимается операция сравнения двух атомарных формул или их отрицаний, а также выписывание уравнения вида T = uij.

Доказательство. Пусть секвенции и множество S (ш) упорядочены по номеру предиката, входящего в сукцедент секвенции, причем сначала идут атомарные формулы с предикатом p,, а затем формулы с отрицанием предиката p,.

Для каждого предиката p, за один просмотр части длиной s, множества S(ш) и a, просмотров части сукцедентов секвенций находим в S(ш) все постоянные формулы вида pіа(ші1,...,шіп,) (а = true или а = false) и для каждого вхождения предиката p, выписываем s, систем из щ уравнений вида Tjk = шік при к = І, ...,п,.

То есть для каждого предиката p, за s, a, щ шагов (выписываний уравнений) получим формулу

Зхф А(у) (</, г)-выводима.

Если ц = г = 1, то секвенция выводима, алгоритм заканчивает работу.

Если </ < 1, то составляем формулу ПА(х).

Если Б(ш) Ь Зхф [ВА(хУ^^',,’У^ не выводима, то исходная секвенция (</,г}

n

n

П (^2 aiVi + a2 V2)+^2 si ai Пі,

i=1

i=1

Повторяя эту процедуру с каждым предикатом при і = за Е Г=і ві аі П

шагов (выписываний уравнений) формула для нахождения значений метапеременных для термов примет вид

&П=1 VIі &п=1 (т.к = Ш1к).

Приведем ее в дизъюнктивную нормальную форму

а1 ап

VIі -'^ &а &п=1 (тік = Ш1к).

Число шагов (выписываний соответствующих уравнений) приведения этой формулы в

^11 ^ ап

ДНФ не превосходит следующей функции от длины ее записи: ^11 " п ^П=1 Еі=1 Пі =

Еі1 ЕГ=1 аіПі = зТ ... вПт ЕГ=1 аіПі-

После приведения формулы в ДНФ получаем в^1 ... зПп систем с т переменными, каждая из которых имеет не более а п уравнений. Каждая такая система уравнений может быть решена за квадратичное от количества уравнений число шагов. Следовательно, проверка совместности каждой из этих систем, а также нахождение решения каждой совместной системы могут быть осуществлены не более чем за (в^1 ... ) а2 п2

шагов.

Общее число шагов (сравнений двух выражений и выписываний уравнений вида Т]к = иік) не превосходит ^2"=1 ві аі Пі + в^1 ... з£п Е"=1 аіПі + 41 ... а2 п2 =

^і1 ... вПп (Е”=1 аіПі + о2 п2) + Е”=1 ві аі Пі.

Теорема 2. Число шагов работы алгоритма проверки неполной выводимости секвенции Б (си) Ь Зхф А(х) в секвенциальном исчислении предикатов не превосходит

п(а — 1)((з + 1)а — ва)(1 + п(а — 1)) + (вап + за + а2)(2а — 1) +

+ (вп + 1 + з — 2а)а2а-1 + а(а + 1)2а-2,

что составляет 0(ва), если в ^ 2.

Доказательство. Количество шагов Б1 выполнения п. 1 алгоритма (количество применений правил вывода секвенциального исчисления предикатов) равно суммариому количеству предметных переменных формулы А(х) и количеству входящих в нее атомарных формул

Б1 = т + а.

По лемме количество шагов Б2 (выписываний уравнений вида Т = и сравнений двух уравнений при проверке совместности системы) не более чем зЦ1 ... вП (ЕП=1 іПі + а? г/2)+ЕГ=1 Иг; где о,і - количество вхождений предикатарі в формулу А(у). Таким

образом, получаем оценку

Б 2 ^ ва (ап + а2 п2) + в ап = ва ап (1 + а п) в а п.

Проверка выводимости секвенции Б(со) Ь Зхф [ОА(х)]^ сводится к многократному (а — а раз) применению правила введения дизъюнкции в сукцедент и определению таких различных значений (отличающихся от иі1 ,...,иіа) для переменных из списка х, не вошедших в список у, что при их подстановке хоть одна из формул, стоящих в сукцеденте, совпадает хоть с одной из формул в антецеденте секвенции. Число шагов Б3 выполнения п. 3 алгоритма равно а — а применений правила вывода

и не более чем ^"=1 вг аг сравнений формул антецедента с формулами сукцедента, что не превосходит в а. Так как количество различных подстановок г вместо у не превосходит ва, то

Б3 ^ ва ((а — а) + в а).

Число шагов выполнения пунктов 4 и 5 алгоритма равно а (а — а).

Так как пункты 2-5 алгоритма выполняются многократно при различных а, то следует их суммировать по всем фрагментам. При удалении из А(х) * конъюнктивных членов а = а — г. Количество фрагментов, полученных удалением г конъюнктивных членов, равно Сга.

Воспользовавшись равенствами ЕП=1 С” = 2”, ЕП=1 С” к = п 2”-1, ЕП=1 С” к2 = п (п +1) 2”-2, получаем оценку для суммарного количества шагов выполнения пунктов 2-5 алгоритма

аа

Сга(Б2 + Б3) < Сга(ва а-ц (1 + а п) + в а п + ва ((а — а) + в а)) =

г=1 г=1

а

Сга(ва-г (а — г) п (1 + (а — г) п) + в (а — г) п + ва-г (г + в (а — г))) =

г=1

а

Сга(ва-г (а — г) п + ва-г (а — г)2 п2 + в (а — г) п + г + в (а — г) + (а — г)2)) =

г=1

аа

= п^Сга ва-г (а — г)+п2Т, Са ва-г (а — г)2 +

г=1 г=1

а а а

+ (в а п + в а + а2) Сга + (в п + 1 + в — 2а) Сга — Сгаг2 ^

г=1 г=1 г=1

^ п (а — 1) ((в + 1)а — ва)+п2 (а — 1)2 ((в + 1)а — ва) + (в ап + в а + а2) (2а — 1) +

+ (в п + 1 + в — 2а) а 2а-1 + а (а +1) 2а-2 =

= п (а — 1) ((в + 1)а — ва) (1 + п (а — 1)) + (в а п + в а + а2) (2а — 1) +

+ (в п +1 + в — 2а) а 2а-1 + а (а +1) 2а-2 = 0(ва), если в ^ 2. ш

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

1. Для каждого ^ проверяем неполную выводимость секвенции Б (си) Ь 3 у3кф А3к(у3к),

определяя выводимый фрагмент А3к(у3к) соответствующей формулы и набор значений т3, выполняющий этот фрагмент на ш, а также значения д3 и г3. Если для некоторого ] с3 = г3 = 1, то имеющейся информации об объекте достаточно для идентификации и часть т3 объекта ш принадлежит к-му классу. Алгоритм заканчивает свою работу.

2. Если для всех ] выполняется с3 = 0, то в объекте ш нет части из к-го класса.

3. Если для некоторого ^ выполняется г3 = 1 (т. е. во фрагменте А3к(у3к) присутствуют все переменные простой конъюнкции А3к(у3к)), то выделенная часть т3 принадлежит к-му классу со степенью уверенности с3.

4. Если для всех j верно 0 <rj < 1, то будем говорить, что тj со степенью уверенности

qj является rj-й частью некоторого объекта из k-го класса.

Заметим, что проверку неполной выводимости можно производить по любому из описанных выше алгоритмов. Из оценок числа шагов алгоритмов проверки неполной выводимости, полученных в теоремах 1 и 2, следует, что если размер (количество формул) неполного описания S(^) близок к размеру полного описания, то более эффективным является алгоритм, основанный на полном переборе. Если же размер неполного описания относительно невелик, то более эффективен алгоритм, базирующийся на построении вывода в секвенциальном исчислении предикатов. Более точно, можно доказать следующее утверждение.

Следствие теорем. Если (§)“ много меньше, чемЬт, то алгоритм, основанный на построении вывода в секвенциальном исчислении предикатов, заканчивает работу по идентификации объекта с неполным описанием за меньшее число шагов, чем алгоритм решения той же задачи, основанный на полном переборе.

Доказательство. Сравним оценки числа шагов построения неполного вывода, полученные в теоремах 1 и 2. 0(sa) меньше, чем 0(tm • 2“), если (|)“ • t~m много меньше единицы. Это равносильно тому, что (|)“ много меньше, чем tm. ш

При решении задачи классификации в условиях неполной информации следует применить предложенный алгоритм при k = 1,..,K. При этом если для некоторых ki и k2 будет выделена одна и та же часть т с уверенностью qkl и qk2, то в случае непе-ресекающихся классов следует уверенность положить равной min{qkl ,qk2}. В случае пересекающихся классов следует уверенность положить равной max{qk1, qk2}.

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

Summary

Kossovskaya T. M. Partial deduction of predicate formula as an instrument for recognition of an object with incomplete description

The notion of partial deduction of a predicate formula from a set of atomic formulas without variables or their negations is introduced. Such a notion allows to solve various pattern recognition problems with incomplete description of a recognizable object. Algorithms based on partial deduction which solve such problems are constructed. These algorithms run upper bounds of step number are proved.

Key words: pattern recognition, incomplete information, predicate calculus, algorithm complexity.

Литература

1. Рассел С., Норвиг П. Искусственный интеллект: современный подход / Пер. с англ. и ред. К. А. Птицына. М.: Изд. дом «Вильямс», 2006. 1408 с.

2. Косовская Т. М. Доказательства оценок числа шагов решения некоторых задач распознавания образов, имеющих логические описания // Вестн. С.-Петерб. ун-та. Сер. 1: Математика,

механика, астрономия. 2007. Вып. 4. С. 82-90.

3. Косовская Т. М., Тимофеев А. В. Об одном новом подходе к формированию логических

решающих правил // Вестн. Ленингр. ун-та. 1985. № 8. С. 22-29.

Статья рекомендована к печати проф. Г. А. Леоновым.

Статья принята к печати 7 октября 2008 г.