УДК 004.93.51 Т. М. Косовская
Вестник СПбГУ. Сер. 10, 2008, вып. 2
МНОГОУРОВНЕВЫЕ ОПИСАНИЯ КЛАССОВ ДЛЯ УМЕНЬШЕНИЯ ЧИСЛА ШАГОВ РЕШЕНИЯ ЗАДАЧ РАСПОЗНАВАНИЯ ОБРАЗОВ, ОПИСЫВАЕМЫХ ФОРМУЛАМИ ИСЧИСЛЕНИЯ ПРЕДИКАТОВ
1. Введение. В условиях все более широкого применения вычислительной техники для решения массовых задач по обработке большого объема данных актуальной является проблема уменьшения числа шагов работы алгоритмов, решающих такие задачи. Наличие доказанных верхних границ шагов предлагаемых алгоритмов позволяет отнести задачу к тому или иному классу сложности (линейные, полиномиальные, экспоненциальные по времени, МР). При этом даже в рамках известного класса сложности для решения конкретных задач можно найти более эффективные алгоритмы. Например, уменьшить или коэффициент в линейной верхней оценке числа шагов алгоритма, или показатель степени полинома в полиномиальной верхней оценке, или показатель экспоненты в экспоненциальной оценке.
Разработке более эффективных алгоритмов, решающих известные задачи, посвящены усилия многих ученых (см., например, [1, 2]). В [3] приведены оценки сложности решения некоторых задач распознавания.
В [4] предложен логико-аксиоматический подход к решению задач распознавания образов, допускающих формализацию в рамках исчислений высказываний или предикатов. В [5] были доказаны верхние оценки числа шагов алгоритмов, решающих задачи распознавания образов, имеющих логические описания. Так, для решения задачи анализа сложного объекта такие оценки полиномиальны, но показатель степени полинома равен количеству предметных переменных, входящих в описания классов. Как правило, эта величина достаточно велика. В [6] предложено многоуровневое описание классов, которое позволяет свести решение задач распознавания к последовательному решению однотипных задач меньшей сложности.
В настоящей статье доказаны условия, при которых использование многоуровневого описания уменьшает степень полинома, ограничивающего число шагов работы алгоритмов, решающих рассматриваемые задачи распознавания образов. В п. 5 приведен модельный пример построения двухуровневого описания классов для распознавания контурного изображения.
2. Постановка задач распознавания. В [4] различные задачи распознавания образов, описываемые в терминах признаков, характеризующих части объектов и отношения между ними, были сведены к доказательству выводимости формул исчисления предикатов из совокупности атомарных формул.
Пусть имеется множество П конечных множеств со = {сох,... ,С01}. Множество со в дальнейшем будем называть распознаваемым объектом. Пусть также на элементах множеств со задан набор предикатов р\,... ,рП) характеризующих свойства и отношения между элементами объекта со. Частью т объекта со будем называть любое его непустое подмножество (не обязательно собственное). Здесь и далее посредством х будем обозначать список элементов конечного множества х, соответствующий некоторой перестановке номеров его элементов. Тот факт, что элементами списка х являются элементы множества у, будем записывать в виде х С у.
© Т. М. Косовская, 2008
Пусть задано разбиение множества Л на К (возможно, пересекающихся) классов, т. е. П = иГ=1
Логическим описанием класса (ОК) П/, называется такая формула Л*(ж), что
1) Ак(х) содержит в качестве атомарных только формулы вида Р{.(у), где у С х;
2) Ак(х) не содержит кванторов;
3) если для некоторого упорядочения ш множества со истинна формула А/,(со), то со (Е О кОК всегда может быть записано в виде дизъюнкции различных (отличающихся не
только перестановкой конъюнктивных членов) простых конъюнкций атомарных формул.
Логическим описанием Б (со) объекта со называется набор всех истинных постоянных формул вида Рг,(т) или ->р^т), выписанных для всех возможных частей т объекта со.
В дальнейшем для того, чтобы записать, что значения для переменных списка х, удовлетворяющие формуле А(х), различны, вместо формулы 3х\..3хт(х\ ф х^ & Х\ ф Жз & ... & хт-\ ф хт & А(х 1, ...,хт)) будет использоваться обозначение Зх^А(х).
С помощью построенных описаний в [4] предлагается решать следующие задачи распознавания образов.
Задача идентификации. Проверить, принадлежит, ли объект со или его часть классу .
Эта задача в [4] сведена к доказательству выводимости формулы Зх^А). (х) из описания распознаваемого объекта Б (со).
Задача классификации. Найти все такие номера классов к, что со £ 0^..
Такая задача в [4] сведена к доказательству выводимости формулы \!^=1 А/, (и) (при некотором упорядочении множества со) из описания распознаваемого объекта в (со) с указанием всех таких номеров к, для которых соответствующий дизъюнктивный член истинен на со.
Задача анализа сложного объекта. Найти и классифицировать все части т объекта со, для которых т £ О.
Данная задача в [4] сведена к доказательству выводимости формулы У к=1 Зж^А^(ж) из описания распознаваемого объекта Б (со) с указанием всех частей объекта со, поддающихся классификации, и классифицировать их.
3. Многоуровневое описание классов. Для уменьшения числа шагов работы алгоритмов, решающих описанные задачи, в [6] предложено иерархическое многоуровневое описание классов распознаваемых объектов.
Рассматриваются объекты, структура которых позволяет выделить более простые их части и дать описание объекта в терминах свойств этих частей и отношений между ними. В частности, это можно сделать, выделяя «часто» встречающиеся подформулы Р1(у) формул Аь(х) «небольшой сложности». При этом записывается система эквивалентностей вида Р{1(у1) О Р}(у), где Р11 - новые предикаты, которые будем называть предикатами 1-го уровня, а переменные у1 — новые переменные для списков исходных переменных, которые назовем переменными 1-го уровня.
Примем, что множество исходных предикатов р1,...,рп определяет исходные свойства и отношения.
Такие нечеткие понятия как «небольшая сложность» подформулы и «часто» могут быть формализованы введением целых положительных чисел г и Ж. При этом можно считать, что формула имеет «небольшую сложность», если количество переменных в подформуле меньше г. Подформула «часто» входит в множество формул, если количество ее вхождений (с точностью до имен переменных) в множество формул, задающих описания классов, больше N.
Следующая операция выделения подформул не носит алгоритмического характера, т. е. может быть выполнена различными способами. В п. 4 настоящей статьи доказываются условия, при которых результат ее проведения дает экономию времени при решении рассматриваемых задач распознавания образов.
Выделим часто встречающиеся подформулы небольшой (по тем или иным критериям) сложности формул Ак(х) и обозначим их Р/(у|) {г = 1, ...,«1). Для каждого г обозначим список переменных у\, входящих в эту подформулу, посредством новой переменной х\ и будем называть ее переменной 1-го уровня.
Обозначим предикаты, задаваемые данными подформулами, посредством р\ (г =
1, ..., П\) и назовем их предикатами 1-го уровня. То есть эти предикаты определяются равносильностями
Рг1{х\) р1(у\)
при г = 1 ,...,«1.
Обозначим формулы, полученные из Ак(х) путем замены всех вхождений формул вида Р}{у\) на атомарные формулы р}(х}) (при у} С х) посредством А¿(ж1). Здесь х1 - список всех переменных формулы А\ (ж1), состоящий как из некоторых (быть может всех) исходных переменных формулы Ак(ж), так и из переменных 1-го уровня, появившихся в формуле ^.(ж1). При этом если для некоторых ¿1, г2, ¿з выполнены соотношения у1г У у\о = у\ и у}^ Р| у\о = 0, то будем писать (ж|1;ж|9) вместо (ж| ) и говорить, что Р.1 задает бинарное отношение между объектами 1-го уровня. Аналогично можно определить многоместное отношение между объектами 1-го уровня. Такие формулы А}к(ж1) можно рассматривать как описания классов в терминах предикатов исходного (нулевого) и 1-го уровней.
Описанием объекта в1 (со) 1-го уровня назовем множество всех атомарных формул вида р\(си.у), для которых истинна подформула РЦту) и 7у С со и объект 1-го уровня
представляет из себя список исходных объектов т,у.
Процедуру выделения часто встречающихся подформул небольшой сложности можно повторить с формулами А\ (ж1).
Пусть определены предикаты и переменные 1-го, 2-го, ... , I — 1-го уровней. Выделим часто встречающиеся подформулы небольшой сложности формул А1кг(х1^1) и обозначим их Р\{у\) (г = 1Для каждой подформулы Р\(у\) обозначим список ее переменных у\ посредством новых переменных х\ и будем называть их переменными 1-го уровня, а предикаты, задаваемые этими подформулами, посредством р\ (г = 1,..., щ) и будем называть их предикатами 1-то уровня. Последние определяются равносильностями
р/(х\) о ^(^)
при г = 1,..., щ.
Формулы, полученные из А1^1 (х1^1) с помощью замены всех вхождений формул вида РЦу\) на атомарные формулы р\(у\), обозначим посредством А1к(х1). Здесь х1 - список всех переменных формулы А1к(х1), состоящий как из некоторых (быть может всех) исходных переменных формулы Ак(ж), так и из переменных 1-го, 2-го, ... , I — 1-го уровней, появившихся в формуле А\,(х1). Такие формулы можно рассматривать как описания классов в терминах предикатов 1-го, 2-го, ... , 1-го уровней.
Описанием объекта в1 (и) I-го уровня назовем множество всех атомарных формул вида р\(соу), для которых истинна подформула РЦтц) и объект 1-го уровня со\ - представляет из себя список объектов уровней, не превосходящих I — 1,т\у
В любой момент можно прекратить создание составных предикатов очередного уровня, но не позднее, чем когда среди подформул не найдутся хотя бы две подформулы одинакового вида.
В результате построения составных предикатов и многоуровневого описания классов исходная система О К может быть записана с помощью равносильной ей многоуровневой системы описаний классов вида
р\{х\) АЦхь) рНу\)
Р1г (Ж»ц) РШгг)
р\{ х\) р1М
. РпЛХпь) РпМ,)
Рассмотрим условия уменьшения верхней оценки числа шагов работы алгоритмов решения описанных задач распознавания образов при использовании многоуровневого описания классов.
4. Изменение оценки числа шагов алгоритмов распознавания при многоуровневом распознавании объектов с локальной характеризацией. В [5]
было доказано, что сформулированные задачи распознавания образов имеют следующие оценки числа шагов их решения. Пусть тк — количество предметных переменных в описании к-го класса, т = тах{т1,..., тк}- Тогда число шагов алгоритма, решающего задачу идентификации, есть 0(£"1к) (точнее, не превосходит числа сочетаний из Ь по тк' А11Пк). Для задачи классификации и задачи анализа составного объекта - 0(1т) (точнее, 51 ^ | А1рк). Следовательно, число шагов решения всех этих задач для одних и тех же исходных данных со = {сох,...,са*} существенно (экспоненциальным образом) зависит от количества предметных переменных, входящих в описания классов.
Пусть заданы конечный набор предикатов р\,... ,рп, а также набор формул А\{х{), Ак(хк), количество предметных переменных в которых равно соответственно т\, ..., тк, и записанных в виде дизъюнкции простых конъюнкций атомарных формул или их отрицаний с предикатами р\,..., рп.
Пусть (уг),..., (ут) - подформулы (с точностью до переименования переменных) формул . 11 (жх),..., Ак(хк), количество предметных переменных в которых равно т\,..., т1н соответственно. Предикаты р^ и предметные переменные 1-го уровня доопределяются эквивалентностями р}(ж}) Р}(у))- Формулы А\(х\),..., -4^(ж^) по-
лучаются из формул А\ (х\),..., А к (Хк) путем замены подформул Р^у^, ..., Р}%1 (уП1) на атомарные формулы с предикатами р\,... ,р)%1 соответственно.
Теорема. Проверка истинности формул А1 (хг),..., Ак(хк) на множестве со = {со\,..., равносильна проверке истинности формул А\(х\),..., -4^(аг^) и эквивалентностей р] (ж]) О Р^ (|/]) на этом же множестве.
При этом, чтобы число шагов работы алгоритма, решающего задачу идентификации, классификации или анализа сложного объекта, уменьшилось начиная с
некоторого t, достаточно, чтобы выполнялось соответственно неравенство
П\
+^1+п1 < tm\ (1)
3=1
?ii к
Y.1'"'1 + Y. /|Ч':<к 11 ■ (2)
3=1 к=1
щ К К
¿и hSk+ni < tm\ (з)
j=1 k=l k=l
где n\ - количество переменных 1-го уровня, входящих в А\(х\); sj, - количество переменных, входящих в формулу Ak(xk), но не вошедших в подформулы Pi (у г Р* 1 (уп ); t\ - суммарное количество объектов 1-го уровня, для которых истинна хоть одна из подформул РЦу^, ■ ■ ■, Рпг(уп1), и исходных элементов объекта со, не вошедших в объекты 1-го уровня.
Доказательство. Решение рассмотренных задач распознавания может быть сведено к последовательной реализации следующих этапов.
1. Для каждого j = 1,... осуществляются проверка выводимости из S(co) формулы Pj(xj) и нахождение всех таких объектов 1-го уровня, существование ко-
торых утверждается в правой части секвенции, а следовательно, истинны атомарные формулы При этом будет получено описание объекта 1-го уровня Sll(w).
2. Проверка выводимости из S(co) (J S1 (со) формулы, соответствующей решаемой задаче, с заменой исходных описаний классов Ак(х) на описания классов 1-го уровня А\(ж1).
По теореме об эквивалентной замене доказано первое утверждение теоремы.
Реализация первого этапа решения при каждом j имеет ту же оценку числа шагов, что и решение задачи идентификации объекта, т. е. 0(tmi). Учитывая то, что эта задача решается для каждого j = 1,..., П\, получаем 0(J^j=i )•
Оценка числа шагов реализации второго этапа составляет для каждого класса объектов 0(tiSk+n,!), где t\ - суммарное количество выделенных объектов 1-го уровня и тех исходных элементов объекта со, которые не вошли в объекты 1-го уровня.
То есть для задачи идентификации имеем 0(^j=i tт3 + tiSk+rik) шагов. Оценка числа шагов задачи идентификации при одноуровневом описании составляет 0(tmk). Тем самым получим неравенство (1).
Для задачи классификации второй этап следует выполнить для всех k = 1 Кроме того, при ее решении предполагается, что тi = ... = гпк = t. Тем самым получим неравенство (2).
Для задачи анализа сложного объекта классифицируются все части исходного объекта, выделенные в процессе решения задачи идентификации. Тем самым получим неравенство (3). ■
Следствие 1. Если в условии теоремы дополнительно наложено условие т] ^ г, то для того, чтобы оценка числа шагов работы алгоритма, решающего задачу анализа сложного объекта, уменьшилась начиная с некоторого t, достаточно, чтобы
щГ +Kt1sl+nl < Ktm, (4)
где т = max{mi,...,тк}; s1 = max{sj,... ,8^}; п1 = тах{п\,...,пгк}.
Доказательство. Так как на количество предметных переменных в подформулах при каждом j наложено условие mj Sj г, то оценку числа шагов на первом этапе можно заменить на более грубую: 0(tr). Учитывая то, что эта задача решается для каждого j = 1,..., rii, получаем tт3 ^ nitr, а это и доказывает следствие. ■
Следствие 2. Если в условии теоремы дополнительно наложены условия mj Sj г и t\ ^ t, то для того, чтобы оценка числа шагов работы алгоритма, решающего задачу анализа сложного объекта, уменьшилась начиная с некоторого t, достаточно, чтобы
тf + Ktsl+nl < Ktm, (5)
где т = max{mi,..., тк}\ s1 = max{sj,..., }; n1 = max{nj,..., }.
Следствие 3. Если выполнены условия следствия 2 и max{r, Si + rii} < т, то найдется такое to, что для всех t > to оценка числа шагов работы алгоритма, решающего задачу анализа сложного объекта, уменьшится.
5. Модельный пример, иллюстрирующий применение двухуровневого описания. Пусть имеется множество контурных изображений, составленных из отрезков прямых, задаваемых своими концами. Заданы два предиката V и L, определяемые следующим образом:
У z
V(x,y,z) О (Zyxz < 7Г),
Цх, у, z,) О х лежит на отрезке с концами у и z.
Заданы два класса объектов: - класс «табуреток» и Ог - класс «стульев». Схе-
матические изображения эталонных объектов имеют вид
Х4
Х\
Ж9
Xj
Хъ Хк
У11
2/2
Xs
X,2 x3 2/1 2/4
2/ю
Уд
У 8
У 7
У з
Описания классов в терминах исходных предикатов V и Ь задаются такими формулами:
A1(xi,...,Xq) =
A2(yll...1y1l) =
V(X4,X5, Х\) & V(X4, Xg, Ж5) & V(X5, X2, X4) & V(x§, X@, X2) &
L(x5,Ж4,Жб) & V(xe, Ж3, Xfj) & V(xe,x7,xs) & V(X6,X5,Xj) &
V(X7,X$, Xe) & V(x 7,X6,Xg) & V(x$, X7, X4),
^(2/2,2/11,2/9) & У(У2,У9,Уь) & V(y2,yb,yi) & v(y5,2/4, У2) &
v(y5,2/6,2/4) & L(y5,y2,y6) & >"(2/6,2/S, 2/s) & F(t/6,2/3,2/s) & ^(2/6,2/5,2/s) & I'7(2/8,2/7,2/6) & V”(2/s,2/6,2/9) & ^(2/9,2/8,2/2) & ^(2/9,2/2,2/io) & ^(2/9,2/10,2/s) & ^(2/io,2/9,2/ii) & ^(2/11,2/10,2/2)-
При этом количество предметных переменных в каждой из формул и максимальное количество предметных переменных равны соответственно тщ = 9, гп2 = 11, т = 11.
Пусть задано контурное изображение, в котором требуется выделить все объекты, допускающие классификацию:
Оно имеет описание Б(и) = {У(а5, о6, ах), У(а5,ад,а6), У(а5, а10, ад), Ь(а5,а10,а1),
У(а6,а2,а5), У(ав,а7,а2), Ь(а6,а5,а7), У(а7,а9,а3), У(а7,а3,ав), ¥(а7,а6,а8), У(о8, 04,07), \(а9,а7,а9), \(а9,а9,а5),
У (09,05, оц), V(ад, оц, ад), У(ац, ад, аю), У(ац, аю, ецз),
У (013, ац, 012), У(012,013, о-ю), У(ою, 012, оц), У(ою, оц, 05), Ь(аю, 012, Об), У(о18, 022, О19), У(о18, 019, 014), У (019, 020, О15), У(о19, 015, 018), ¿(а19, а18, а2о), У (020, а21, 01б), У(о2о, 016, 019), У(о20, О19, О21), V (а2\, О17, О20), У(о21 , О20, О22), ^(022, О21, 01з), У(о23, 025, 024 ), V (024 , 023, 02б) , У (026 , О24, «25) , У(025 , 026 , Огз)}.
При использовании исходного описания классов оценка числа шагов работы алгоритма, выделяющего «табурет» и «стул», составит соответственно А26 и 1012 и
Для получения двухуровневого описания классов выделим подформулы формул А\ и А2 и зададим предикаты 1-го уровня У, IV, Т:
АЦ и 3 ■ 1014.
.и
У (ж1) о У(х,у,г) & У(х,г,и) & У(х,и,у),
У
Т(хг) ++ V(x,z,y) & V(x,u,z) & L(x,y,u).
z
При этом будут выделены переменные 1-го уровня
у\ = (í/2, 2/9, 2/5, 2/1),
х\ = (ж4, Жд, Ж5, Ж1), у1 = (2/2,2/11,2/9,2/5)
х\ = (х§, Х4, Х2, Х@), Уз = (2/5,2/2,2/4, Ув),
х\ = (х6,х3,х5,хт), у\ = (2/6,2/8,2/з, 2/б),
х\ = (х7,х8,х6,х9), Уъ = (2/8,2/7,2/6,2/э),
Ув = (2/9,2/8,2/2,2/ю)
и описания классов примут вид
А\ (#4, #7, #9, ж} , #2, £3, £4) = №Г(х{) & Т{х\) & ^(Жз) & \¥(х\) & У(Ж9,Х7,Х4),
а1(у2,у9,у1о,у11,уЪу1,у1,у1,уЬуЪ) = Щу\) & ^'(2/2) & т(г/з) &
у(г/1) & и-%1) & у(^) &
У(ую,У9,Уи) & ^(2/11,2/ю,2/г)-
Здесь количество переменных исходного и 1-го уровней в каждой формуле равны соответственно = 3, п\ = 4, в| = 4,п\ = 6; количество предметных переменных в каждой из формул и максимальное количество предметных переменных в обеих формулах — соответственно гп\ = 7, гп\ = 10, т1 = 10.
При составлении описания 1-го уровня изображения выделяются 12 объектов этого уровня:
1 _ 1 — (а5, ад, а6, ai), аЗ. =
1 _ 2 — (a5, «10, Я9, аб), «I = («10, а12, «11, Ос,),
1 _ 3 — («6 , «5 , 0,2 , <27), «9 = (Ощ, О22, OlQ, 014),
1 _ 4 — («7, «8, «3, «б), «10 = (ai9, ais, 015, 020),
1 _ 5 — (ag, я 4, 0,7,0,$), а11 = (а20, a2i, aie, 019),
1 6 — (a9,a8,a5,all), ^12 (ü21, C¿17, C¿20 5 ^22)-
Верхняя оценка числа шагов алгоритма, выделяющего данные объекты, составит 3 ■ A¡6 и 106.
Описание объекта 1-го уровня будет иметь вид
S\u) = {\V{a\),W{al),T{a\),Y{a\),W{a\),T{al),
W{a)), Т{а\), W(a¡), T(a¡Q), F^), W(a¡2)},
причем суммарное количество его объектов и элементов изображения, не вошедших в них, равно ti = 12 + 4 = 16.
При использовании описаний классов и изображения 1-го уровня оценка числа шагов работы алгоритма, выделяющего «табурет» и «стул», составит соответственно А\6 и 5,8 ■ 107 и А\% и 3 ■ Ю10.
Таким образом, общая верхняя оценка числа шагов составления описания 1-го уровня и анализа заданного изображения с использованием описания этого уровня составит 3 ■ А$6 + А716 + А\g и 10® + 5,8-107 + 3 ■ Ю10 и 3 ■ Ю10, в то время как алгоритм,
решающий ту же задачу при применении исходного описания классов, имеет верхнюю оценку числа шагов .4§6 + АЦ и 1012 + 3 ■ 1014 и 3 ■ 1014.
Summary
Kossovskaya Т. М. Level descriptions of classes for decreasing step number of pattern recognition problem solving described by predicate calculus formulas.
In the frameworks of a logic-axiomatical approach to the pattern recognition problem the level description of classes is regarded. Such a description allows to reduce some pattern recognition problems to a sequential solving of one-type problems of the less complexity. For pattern recognition problems which may be described by means of predicate calculus formulas the conditions of step number decreasing for an algorithm solving of such a problem using a level description are proved.
Литература
1. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи / Пер. с англ. Е. В. Левнера, М. А. Фрумкина; Под ред. А. А. Фридмана. М.: Мир, 1982. 416 с.
2. Мопгеп В., Speckenmeyer Е. Solving satisfiability in less then 2" steps // Discrete Applied Mathematics. 1985. Vol. 10. P. 287-295.
3. Wang Lusheng, Zhao Hao, Dong Guozhu, Li Jianping. On the complexity of finding emergin patterns // Theor. Comput. Sci. 2005. Vol. 335, N 1. P. 15-27.
4. Косовская Т. М., Тимофеев А. В. Об одном новом подходе к формированию логических решающих правил // Вестн. Ленингр. ун-та. 1985. № 8. С. 22-29.
5. Косовская Т. М. Доказательства оценок числа шагов решения некоторых задач распознавания образов, имеющих логические описания // Вестн. С.-Петерб. ун-та. Сер. 1: Математика, механика, астрономия. 2007. Вып. 4. С. 82-90.
6. Косовская Т. М. Многоуровневые описания классов для принятия решений в задачах распознавания образов // Труды III Междунар. конференции «Дискретные модели в теории управляющих систем». М.: Диалог-МГУ, 1998. С. 47-49.
Статья рекомендована к печати проф. А. Н. Тереховым.
Статья принята к печати 4 декабря 2007 г.