Научная статья на тему 'Решение задач логико-предметного распознавания образов с использованием тактик обратного метода Маслова'

Решение задач логико-предметного распознавания образов с использованием тактик обратного метода Маслова Текст научной статьи по специальности «Математика»

CC BY
192
214
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ / ARTIFICIAL INTELLIGENCE / ЛОГИКО-ПРЕДМЕТНОЕ РАСПОЗНАВАНИЕ ОБРАЗОВ / LOGIC-OBJECTIVE APPROACH TO PATTERN RECOGNITION / ИСЧИСЛЕНИЕ ПРЕДИКАТОВ / PREDICATE CALCULUS / ОБРАТНЫЙ МЕТОД МАСЛОВА / INVERSE METHOD OF S.YU.MASLOV / COMPLEXITY THEORY

Аннотация научной статьи по математике, автор научной работы — Петухова Нина Дмитриевна, Косовская Татьяна Матвеевна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Петухова Нина Дмитриевна, Косовская Татьяна Матвеевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The paper is devoted to the modifying of Maslov inverse method for a special form of predicate formulas used in the solution of an artificial intelligence problem permitting its setting in the frameworks of predicate calculus. An algorithm based on the inverse method application for such a type formula is justified. Upper and lower bounds of the number of steps of the proposed algorithm are obtained. An example of the extraction and recognition of a given object included into a complex one by means of the presented algorithm is regarded.

Текст научной работы на тему «Решение задач логико-предметного распознавания образов с использованием тактик обратного метода Маслова»

информационные системы

Г^п ,—»-, 1-1-

Петухова Нина Дмитриевна, УДК 004.93.51

Косовская Татьяна Матвеевна

РЕШЕНИЕ ЗАДАЧ ЛОГИКО-ПРЕДМЕТНОГО РАСПОЗНАВАНИЯ ОБРАЗОВ С ИСПОЛЬЗОВАНИЕМ ТАКТИК ОБРАТНОГО МЕТОДА МАСЛОВА*

Аннотация

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

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

ВВЕДЕНИЕ

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

Постановка задач искусственного интеллекта при логико-предметном подходе.

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

£(ю) ^ Зх^л(х),

где ю = {а1,..., ак } - набор констант, £ (ю) = Fs} - набор постоянных атомарных формул с предикатами р1,...,рп (описывающих свойства констант или отношения между ними) или их отрицаний, л(х) - элементарная конъюнкция атомарных формул вида Рк (х), в ко--* Работа выполнена при частичной финансовой

© Петухова Н.Д., Косовская Т.М., 2014 поддержке РФФИ (проект № 14-08-01276-а).

торые входят переменные из списка х, Зх^ означает, что различные переменные имеют различные значения [1]. Такое логическое следование равносильно истинности формулы

& 5(ю) ^ Зх^Л(х )

(где & 5 (ю) = &=1 ^) при любых наборах значений ю, общезначимость этой формулы равносильна общезначимости формулы вида

У(а!,...,ак)3(Х1,...,Хп)^(&®=1 (а!,...,ак) V ркг (Х15...,Хщ ))). (1)

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

= РЦ (xl,..., х11 )

I = 1,5

1,5

1,5

11 (xl,..., х11 ) = Р51 (xl,..., х51 )

^ = р51 (xl,..., х51 )

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

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

I = 1,5

1,1

{

1,1

^ = а1

tn, = ап,

1,1

{

{

{

где 5 - количество атомарных формул в V—Я(а15...,ак) [1]. Непосредственное решение этой системы имеет экспоненциальную оценку числа шагов.

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

Формула (1) является частным случаем формул, для которых разработан обратный метод Маслова, подробно описанный в [2]. Обратный метод ориентирован на существенное сокращение перебора при доказательстве выводимости формул гораздо более общего вида, в частности, имеющих три, а не две перемены кванторов. Поэтому потребовалось его упрощение при доказательстве выводимости формул вида (1).

Сформулируем обратный метод Маслова для формул вида (1). Переменные а1,..., ак под квантором всеобщности будем рассматривать как константы.

Определение: Список Г формул вида V—S(a1,..., ак) V Рк. (х1,..., хп,) называется F-набором для формул вида (1), если формулы в этом списке не повторяются [2, 3].

Определение: Пусть а1,..., а{ - список констант из списка а1,..., ак, где I < к. Р1,..., Р1 - список констант из списка а1,...,ак и некоторых переменных. Рассмотрим систему равенств:

а1 = р1

"' (2)

а =р I

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

Процедура 1 (отождествления переменных с константами)

Пусть Г - список формул вида V—S(a1,..., ак) V Рк. (х1,..., хп.); а - система уравнений в переменных и1,...,ир ; Е - решение этой системы. Процедура отождествления переменных с константами в списке Г согласно системе а состоит в замене во всех атомарных формулах списка Г переменных и1,...,ир на их значения в решении а .

Процедура 2 (преобразования списков формул в F-наборы)

Пусть Г - список формул вида V—S(a1,..., ак) V Рк (х1,..., хп.). Процедура преобразования списка Г в F-набор состоит в удалении повторений формул в этом списке.

Определение: F-набор называется замкнутым, если он может быть получен в результате применения следующей процедуры построения замкнутого F-набора к подходящим парам формул А, Р^1,..., ts) и В, —Р(а1,..., а5).

Процедура 3 (построения замкнутого F-набора для формул вида (1))

Пусть в формулах V—S (а1,..., ак) V Ркг tщ) и ^ Я Ц,..., ак) v рк. (У1,...^п]) tnj - переменные, а а1,...,ак - константы. Обозначим первую формулу посредством А, а вторую - В. В А входит в качестве дизъюнкции атомарная формула Р. tn.), а в

В - отрицание формулы —р. (а15..., ап.), где Р. - п. - местный предикат. Процедура построения замкнутого F-набора по парам формул А, Р. t) и В, —р(а1;...,ап.) состоит в последовательном выполнении следующих действий:

Применить к списку формул [А, В] процедуру отождествления переменных с константами согласно системе уравнений в переменных

^ = а1 ^ — ащ

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

Процедура 4 (применения правила Б к F-наборам)

Рассмотрим 5 F-наборов

Ц : V—5(а1,...,ак) Vр (с;,...,СП)

... . (3)

Г : V—5Ц,...,ак) VРк& (с? ,...,с5 )

Переименуем переменные так, чтобы никакие два F-набора из (3) не содержали общих переменных. Применим к списку Гр ..., Г? процедуру отождествления переменных согласно системе уравнений в переменных:

с1 — с 2 — — с5 с — с — ... — С1

1 2 5

с — с — ... — с

(4)

а затем к полученному списку - процедуру преобразования списков формул в F-наборы. Построенный таким образом F-набор Е является результатом применения правила Б к F-наборам (3).

Так как при решении системы уравнений (4) 5 F-наборов объединяются в один, применение правила Б к рассматриваемым формулам можно свести к простому объединению 5 одночленных F-наборов в один 5-членный.

Определение: F-набор называется пустым □, если все формулы, входящие в него не имеют переменных и тавтологичны [2, 3].

Определение: F-набор называется тупиковым, если в него входит хотя бы одна формула, не имеющая переменных и являющаяся ложной или не являющаяся ни тавтологией ни противоречием [3].

Теорема. Для того чтобы формула F была доказуема в исчислении предикатов, необходимо и достаточно вывести пустой F-набор □ в исчислении благоприятных наборов. [2]

Это исчисление задается приведенными ниже правилами А, Б и правилом перестановки.

Правило А. Замкнутые F-наборы являются благоприятными.

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

Правило перестановки. Перестановка формул в благоприятном F-наборе также является благоприятным F-набором.

АЛГОРИТМ ПОИСКА ВЫВОДА, ОСНОВАННЫЙ НА ОБРАТНОМ МЕТОДЕ

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

В дополнение к идеям метода Маслова в настоящей работе предлагается упорядочить

все формулы v iS(a1v..,ak) v Pk. (x1v..,xn.) в (1) следующим образом:

1. Так как в каждой дизъюнкции v—S(a1v..,ak) vPk (x1,...,xn.) имеется всего одна формула Pk (x1,...,xn.), имеющая переменные, сгруппируем дизъюнкции v —iS(a1,...,ak) v Pk. (x1,...,xn.) по одинаковым именам предикатных символов Pkj (x1,...,xn.) .

2. Упорядочим эти группы в порядке возрастания количества вхождений атомарных формул с переменными.

3. Формулы в — S(a1,...,ak) сначала сгруппируем по именам предикатных символов, так же, как в пункте 1.

4. Внутри каждой группы упорядочим атомарные формулы в том же порядке по именам предикатных символов, что и в пункте 2.

Ищем подстановку, которая позволит присвоить значения переменным в атомарной формуле с наиболее редко встречающимся предикатным символом. Если таковой не находится, то формула (1) не выводима. Если подстановка найдена, то осуществляем её во всех элементарных дизъюнкциях v — S(a1,...,ak) v Pk. (x1,...,xn,). Повторяем процедуру до тех пор, пока все значения переменных не окажутся заменены константами.

АЛГОРИТМ IMA (INVERSE METHOD ALGORITHM)

1. Строим 5 -членный F-набор, формулы в котором не повторяются. То есть в формуле (1) удаляем все знаки конъюнкций и составляем список элементарных дизъюнкций вида

v—S ak) v pkt (д^.^ xnt).

2. Присваиваем значения переменным следующим образом:

2.1. Отменяем все пометки об удалениях предикатных формул из S(ю) (если они были).

2.2. Берем формулу v— S(a1,...,ak) v Pk. (t1,..., tm) из рассматриваемого F-набора, содержащую m-местный предикатный символ, такой что набор t1,...,tm содержит хотя бы одну переменную.

2.3. Ищем в S(ra) формулу Pk. (v1,...,vm) при наборе констант v1,...,vm с отрицанием перед выбранным в п. 2.2 предикатным символом. Если нашли подходящую формулу -помечаем её как удаленную и переходим к пункту 2.4, если её не существует, то переходим к пункту 3.

2.4. Решаем систему уравнений, отождествляющую списки переменных t1,...,tm и констант v1,..., vm. В случае, если эта система имеет решение1, переходим к пункту 2.5, если система решений не имеет, то переходим к пункту 2.3.

2.5. Заменяем во всем F-наборе переменные из списка t1,...,tm на их значения, полученные в пункте 2.4.

2.6. В полученном F-наборе удаляем повторения формул.

2.7. Если получился пустой F-набор, то алгоритм заканчивает работу2.

1 В данном случае, помимо прочего, система уравнений не имеет решений, если какое-то из присваиваемых переменным значений было присвоено ранее другой переменной.

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

2.8. Если получился тупиковый F-набор - переходим к пункту 3.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2.9. Если в F-наборе все формулы, имеющие переменные, помечены как удаленные -переходим к пункту 4.

2.10. Если в F-наборе существуют элементарные дизъюнкции, имеющие переменные, которым еще не присвоено значение, то переходим к пункту 2.2.

3. Возвратная часть алгоритма.

3.1. Отменяем последнее действие пункта 2.5, если это возможно1, и переходим к пункту 2.3.

3.2. Если отмена последнего действия пункта 2.5 невозможна, то помечаем атомарную формулу Pk. (t1,...,tm) как удаленную и переходим к пункту 2.

4. Если все формулы помечены как удаленные, значит, формула не выводима. Алгоритм заканчивает работу.

ОЦЕНКА ЧИСЛА ШАГОВ РАБОТЫ АЛГОРИТМА IMA

Пусть V(a1v..,ak)3(xx,...,xn) Д&®=1 (v—S(ax,...,ak) v Pkj (x1,...,xn.))) - рассматриваемая

формула, где k - количество констант, n - количество переменных (k > n , так как переменные не должны совпадать), и элементарные дизъюнкции имеют вид:

v—S(ai,...,ak) vPk. (x) .

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

Пусть

l - наибольшее количество аргументов в атомарной формуле;

s + 1 - количество атомарных формул в каждом из дизъюнктов (так как дизъюнкты

имеют структуру v —S(a1,...,ak) vPk (x), то во всех дизъюнктах одинаковое число атомарных формул);

у l - количество l-местных атомарных формул (у ° - количество таких формул без отрицания, у — - с отрицанием). (Некоторые из уl могут быть равными 0 и 2уl = s +1.)

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

S(га) ^ ЗХ^ А(х)

при использовании алгоритма IMA, основанного на тактиках обратного метода, имеет нижнюю оценку порядка sl.

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

Теорема 2. (Верхняя оценка.) Количество шагов, затрачиваемых на решение задачи

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

искусственного интеллекта, сведённой к доказательству следствия вида

S(га) ^ ЗХ^ А(х)

при использовании алгоритма IMA, основанного на тактиках обратного метода, а также нахождения значений для переменных, существование которых утверждается в заключении логического следования задачи, составляет О (5s5/).

Доказательство: Первым рассматриваемым F-набором является список элементарных дизъюнкций следующего вида:

v—S ak ) v pk1( Х1,..., xn1 )

v—S ak ) v Pk5 (Х1,..., xn5 )

Верхняя оценка будет достигнута, если ответ на вопрос, выводима ли формула, будет получен на последнем шаге работы алгоритма, то есть если придется обойти все ветви дерева, представленного на рис. 1. Уровней в этом дереве 5, так как надо присвоить значения переменным в d формулах.

Степень j-го узла должна быть не s, а max (у у—), но, так как оценка верхняя, то для простоты понимания значения этой оценки сделаем её более грубой, «увеличив», таким образом, степени всех узлов.

Из верхнего узла выходит 5 ребер, из узлов каждого следующего уровня - по s ребер, то есть на этом уровне О (5(s + 1)) ребер, причем, согласно выбранной тактике, на этом уровне решаются системы не более чем l уравнений, то есть имеем О (5(s + 1)l) шагов. На следующем уровне имеем О (5(s2 + s + 1)) ребер и системы l уравнений (здесь наибольшее число решаемых уравнений тоже l, так как на каждом следующем уровне все равно может понадобиться решать систему l уравнений), то есть всего О (5(s2 + s + 1)l) шагов. Продолжая этот подсчет, на нижнем уровне имеем:

О (5(s5-1 + ... + s + 1)l) = О (5(s5-1+ ... + s1 + s0)l) = О (5(s5 - 1)l) шагов. То есть верхняя оценка имеет вид

О (5s5l),

где 5 - количество дизъюнктивных членов в исходной формуле, s + 1 - общее число атомарных формул в каждом дизъюнкте, l - наибольшее количество аргументов в атомарных формулах.

ПРИМЕР РЕШЕНИЯ ЗАДАЧИ С ПОМОЩЬЮ АЛГОРИТМА

Покажем на примере что, несмотря на то, что верхняя оценка числа шагов работы алгоритмов, основанных на обратном методе, достаточно высока, на практике решение задач

Рис. 1. Вид дерева, соответствующего поиску вывода, согласно алгоритму IMA

этим методом заметно быстрее, чем теоретическая оценка числа шагов решения этой задачи.

Пусть имеется множество контурных изображений, составленных из отрезков прямых, задаваемых своими концами. Заданы два предиката V и L, определяемых так, как представлено на рис. 2.

Задан класс объектов Qj - класс контурных изображений «четверок». Схематическое изображение эталонного объекта имеет вид (см. рис. 3).

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

A (xj, ..., x5) = V(x3, xj, x4) & V(x4, x2, x3) & V(x4, x3, x5) & L (x4, x2, x5)

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

Это изображение имеет описание:

S(aj, ..., a6) = {V(a1, a2, a3), V(a2, aj, a4), V(a3, aj, a4), V(a3, a4, a5), L(a3, aj, a5), V(a4, a2, a3), V(a4, a3, a6), L(a4, a2, a6), V(a5, a3, a6), V(a6, a4, a5)}

Верхняя оценка числа шагов решения этого примера с помощью алгоритма IMA (так как 5 = 10, l = 3, 5 = 4) составляет:

O (105).

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

S(a1,...,a6) ^ 3x1,...,x5^A(x1,...,x5).

Общезначимость этой формулы равносильна общезначимости формулы

f f V(x3, x1, x4) v—V(a^ a2, a3) v—V(a2, a1, a4) v-V(a3, a1, a4) v^ ^ V(a3,a4,a5)v — V(a4,a2,a3)v — V(a4,a3,a6)v — V(a5,a3,a6) & v — V (a6, a4, a5) v —L(a3, a1, a5) v —L(a4, a2, a6) y

f V(x4,x2,x3)v— V(a1,a2,a3)v—V(a2,a1,a4)v— V(a3,a1,a4)v Л V(a3, a4, a5) v —L(a3, a1, a5) v — V(a4, a2, a3) v — V(a4, a3, a6) v & v — V (a6, a4, a5) v —L(a3, a1, a5) v —L(a4, a2, a6) y

f V(x4,x3,x5)v— V(a1,a2,a3)v—V(a2,a1,a4)v— V(a3,a1,a4)v Л V(a3,a4,a5)v — V(a4,a2,a3)v — V(a4,a3,a6)v — V(a5,a3,a6)v & v — V (a6, a4, a5) v —L(a3, a1, a5) v —L(a4, a2, a6) y

f L(x4,x2,x5)v—V(a1,a2,a3)v—V(a2,a1,a4)v—V(a3,a1,a4)v ^ nV (a3, a4, a5) v — V (a4, a2, a3) v — V (a4, a3, a6) v — V (a5, a3, a6) v v — V (a6, a4, a5) v —L(a3, a1, a5) v —L(a4, a2, a6)

Va1,..., a63x1,..., x5

W

/ /

Рис. 2. Предикаты V и L

Рис. 3. Контурное Рис. 4. Контурное изображение «четверка» изображение

D:

Результатом выполнения пункта 1 будет следующий F-набор:

^^ V(х3,x1,x4) V —IV(а1;а2,а3) V —V(a2,a1,a4) V —V(а3,a1,a4) V —V(а3,a4,a5) V — V(а4,a2,a3) ^^ ^ — V (a4, a3, a6) V — V (a5, a3, a6) V —V (a6, a4, a5) V—L(a4, a2, a6) V —L(a3, a1, a5) У

'V (x4, x2, x3) V — V (а1, a2, a3) V — V (а2, a1, a4) V —V (а3, a1, a4) V — V (а3, a4, a5) V —V (а4, a2, a3) ^ — V (а4, a3, a6) V — V (а5, a3, a6) V —V (a6, a4, a5) V— L(a4, a2, a6) V —L(a3, a1, a5) у

V (x4, x3, x5) V —V (a1, a2, a3) V —V (a2, a1, a4) V—V (a3, a1, a4) V —V (a3, a4, a5) V—V (а4, a2, a3) V4* у — V (a4, a3, a6) V — V (a5, a3, a6) V —V (а6, a4, a5) V— L(a4, a2, a6) V —L(a3, a1, a5) у

' L( x4, x2, x5) V —V (a1, a2, a3) V —V (a2, a1, a4) V —V (a3, a1, a4) V —V (а3, a4, a5) V —V (а4, a2, a3) ^ ч — V (а4, a3, a6) V —V (а5, a3, a6) V —V (а6, a4, a5) V— L(a4, a2, a6) V—L(a3, a1, a5) у

На выполнение пункта 1 потребовалось 4 шага.

Пункт 2.1 на этом этапе не применяется. Согласно пункту 2.2, берем формулу V(х3,х1,х4), согласно пункту 2.3, берем отрицание атомарной формулы с тем же предикатным символом — V(а1,а2,а3) (+1 шаг) и помечаем его как уделенное (+1 шаг). Согласно пункту 2.4, решаем систему уравнений, отождествляющую эти две формулы:

х1 — а2 (+3 шага).

Согласно пункту 2.5, рассматриваемый F-набор D приобрел вид

D:

^а1, а2, а3) V —^а1, а2, а3) V — V(a2, о1, а4) V —V(a3, а1, а4) V —V(a3, а4, а5) V—V(a4, а2, а3) V

—V (а4, а3, а6) V—V (а5, а3, а6) V—V (а6, а4, а5) V—Ца4, а2, а6) V—Да3, о1, а5) V(a3,x2,о1) V — ^а1,а2,а3) V —V(a2,о1,а4) V —V(a3,о1,а4) V —V(a3,а4,а5) V—V(a4,а2,а3) V IV (а4, а3, а6) V—V (а5, а3, а6) V—V (а6, а4, а5) V—¿(а4, а2, а6) V—Да3, о1, а5)

IК \ 4' 3' 6 / 1 V 5' 3' 6/ ^.^б'ы5} ^ '^^ы6} ^ ^-А1"^'

V(a3, о1, х5) V —^а1, а2, а3) V — ^а2, а1, а4) V —V(a3, о1, а4) V —V(a3, а4, а5) V—V(a4, а2, а3) V —V (а4, а3, а6) V—V (а5, а3, а6) V—V (а6, а4, а5) V—¿(а4, а2, а6) V—Да3, а1, а5)

Да3,х2,х5) V — ^а^а2,а3) V— ^а2,а1,а4) V—V(a3,а1,а4) V—V(a3,а4,а5) V— ^а4,а2,а3) V

—V (а4, а3, а6) V — V (а5, а3, а6) V — V (а6, а4, а5) V —Ца4, а2, а6) V —Да3, а1, а5) у у

(+12 шагов)1.

Согласно пункту 2.10 (+4 шага), возвращаемся к пунктам 2.2 и 2.3. У формулы V (а3, х2, а1) нет подходящей для унификации формулы (+24 шага), поэтому переходим к пункту 3 (+9 шагов). F-набор снова принимает исходный вид, но формула — V (а1, а2, а3) помечена как удаленная и не участвует в переборе. Теперь, согласно пункту 2.2, берем формулу V(х3,х1,х4), согласно пункту 2.3, берем отрицание атомарной формулы с тем же предикатным символом — V(а2,а1,а4) (+2 шага) и помечаем его как уделенное (+1 шаг).

Согласно пункту 2.4, решаем систему уравнений, отождествляющую эти две формулы

х3 — а 2

х1 — а1 (+3 шага).

х4 а4

Согласно пункту 2.5, рассматриваемый F-набор D приобрел вид

1 8 шагов на подстановку полученных в результате решения системы уравнений значений переменных в Е-наборе и 4 шага на пункт 2.6, то есть на проверку наличия повторений формул в Е-наборе и их удаление.

х4 — а3

Б:

V(а2, а1, а4 ) V — V(а1, а2, а3) V — V(а2, а1; а4 ) V — V(а3, а1; а4 ) V — V(а3, а4, а5) V — V(а4, а2, а3) V

ЛЛ

} ^4/ ^ V 3' 1' 4/ ^ V' 4' 5/ ^ V^4' 2' 3

— V (а4, а3, а6 ) V — V (а5, а3, а6 ) V — V (а6, а4, а5) V —L(а4, а2, а6 ) V —L(a3, а1; а5) V(a4,х2,а2) V — V(a1,а2,а3) V — V(а2,а1;а4) V —V(a3,а1;а4) V —V(а3,а4,а5) V —V(а4,а2,а3) V

.¿2; 1*1; 1*4 у V -V 3' 1' 4/ -^ V^3 ' ^4' 5 / -^ V^4' 2' 3 /

т V (а4, а3, а6 ) V — V (а5, а3, а6 ) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1; а5)

V(а4, а2, х5) V — V(а1; а2, а3) V — V(а2, а1; а4 ) V — V(а3, а1; а4 ) V — V(а3, а4, а5) V — V(а4, а2, а3) V — V (а4, а3, а6 ) V — V (а5, а3, а6 ) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1; а5)

L(a4, х2,х5) V — V(а1, а2,а3) V — V(а2, а1; а4) V — V(а3,а1; а4) V — V(а3, а4, а5) V — V(а4,а2, а3) V — V (а4, а3, а6 ) V — V (а5, а3, а6) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1; а5)

(+12 шагов).

Согласно пункту 2.10 (+4 шага), возвращаемся к пунктам 2.2 и 2.3. У формулы V(а4,х2,а2) нет подходящей для унификации (+22 шага), поэтому переходим к пункту 3 (+9шагов). F-набор снова принимает исходный вид, но формула — V (а2, а1, а4) помечена как удаленная и не участвует в переборе. Теперь согласно пункту 2.2, берем формулу V(х3, х1,х4), согласно пункту 2.3 берем отрицание атомарной формулы с тем же предикатным символом — V(а3, а1, а4) (+ 2 шага), и помечаем его как уделенное (+ 1 шаг).

Согласно пункту 2.4 решаем систему уравнений, отождествляющую эти две формулы

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

х — а

1 (+3 шага).

хл — ал

Согласно пункту 2.5, рассматриваемый F-набор Б приобрел вид

((т

Б:

V(a3,а1,а4) V — V(a1,а2,а3) V —V(a2,а1,а4) V —V(a3,а1,а4) V —V(a3,а4,а5) V —V(a4,а2,а3) V

Л Л

V (а4, а3, а6 ) V — V (а5, а3, а6) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1, а5)

V(a4,х2,а3) V — V(a1,а2,а3) V —V(a2,а1,а4) V — V(а3,а1,а4) V —V(a3,а4,а5) V —V(a4,а2,а3) V

, 1*1, ^4 у V 1' V 3' ^4' 5 / ^ V 4' ^2' 3

т V (а4, а3, а6 ) V — V (а5, а3, а6) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1, а5)

V(а4, а3, х5) V — V(а1, а2, а3) V — V(а2, а1, а4 )

V

V(а3, а1, а4) V —V(а3, а4, а5) V —V(а4, а2, а3) V

.¿3,1*1,1*4 у V —V 3' 4' 5/ —^ V 4' 2' 3

т V (а4, а3, а6 ) V — V (а5, а3, а6) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1, а5)

L(a4,х2, х5) V — V(а1,а2,а3) V — V(а2, а1, а4)

V

Л

V(а3, а1, а4) V —V(а3, а4, а5) V —V(а4, а2, а3) V т V (а4, а3, а6 ) V — V (а5, а3, а6 ) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1, а5)

(+ 12 шагов).

Теперь, согласно пункту 2.10 (+4 шага), возвращаемся к пунктам 2.2 и 2.3. Берем формулу V (а4, х2, а3) и отрицание атомарной формулы с тем же предикатным символом — V (а4, а2, а3) (+9 шагов), которое помечаем как удаленное (+1шаг). Согласно пункту 2.4, решаем систему уравнений х2 — а2 (+1 шаг).

Согласно пункту 2.5, рассматриваемый F-набор Б приобрел вид

(г,

Б:

V(а3, а1, а4 ) V — V(а1, а2, а3) V — V(а2, а1, а4 ) V — V(а3, а1, а4 ) V — V(а3, а4, а5) V — V(а4, а2, а3)

V(а4, а2, а3) V — V(а1, а2, а3) V — V(а2, а1, а4 )

V(а4, а3, х5) V — V(а1, а2, а3) V — V(а2, а1, а4 )

V

V

4, а2, а6) V —lL(аз

' — V (а3, а4, а5) V '4, а2, а6) V—L(а3

' —11

4

V (а4, а3, а6) V — V (а5, а3, а6 ) V — V (а6, а4, а5) V —L(a4, а2, а6 ) V —L(a3, а1, а5)

L(a4, а2, х5) V — V(а1,а2, а3) V — V(а2, а1, а4)

V

345

т V (а4, а3, а6 ) V — V (а5, а3, а6 ) V — V (а6, а4, а5) V —L(a4, а2, а6) V —L(a3, а1, а5)

— V (а 4 а2, а3)

, а1, а5 )

— V (а4 а2 а3)

, а1, а5 )

— V (а4 а2 а3)

, а1, а5 )

— V (а4 а2 а3)

ЛЛ

V

V

(+ 4 шага).

х3 — ^3

I

V

I

4

5 5 "3 5 "б

6 5 "4 5 "5

I

4

I

V

Теперь согласно пункту 2.10, возвращаемся к пунктам 2.2 и 2.3. Берем формулу V (а4, а3, х5) и отрицание атомарной формулы с тем же предикатным символом — V (а4, а3, а6) (+10 шагов), которое помечаем как удаленное (+1шаг). Согласно пункту 2.4, решаем систему уравнений

х5 = «6 (+1 шаг). Согласно пункту 2.5, рассматриваемый F-набор D приобрел вид

(Г,

D:

а4) V —V(а1, а2, а3)

—V(а4, а3, а6) V —

V

-V (а2, а1, а4)

V

-*3, ы4? "5 >

V(a4, а3, а6) V — ^а5, а3, а6) V — V(а6, а4, а5) V —L(a4, а2, а6) V —Ца3, а1, а5)

а3) V —V (а1, а2, а3)

—V(а4,03, а6) V—1

V

V(а2, а1, а4)

V

^а4, а3, а6) V—У(а5, а3, а6) V — V(а6, а4, а5) V —^(а4, а2, а6) V —¿(а3, а1, а5)

а6) v —V(а1, а2, а3)

—V(а4, а3, а6) V—1

V

IV(а2, а1, а4)

V

^а4, а3, а6) V — ^а5, а3, а6) V — V(а6, а4, а5) V —^(а4, а2, а6) V —¿(а3, а1, а5)

а6) v —V (а1, а2, а3)

—V(а4, а3, а6) V —

V

-V(а2, а1, а4)

V

-*3' "15 "4 /

,«3,44,45 у

—V(а4, а2, а3)

, ^ а5)

—V (а4 а2 а3)

, а1, а5)

—V(а4 а2 а3)

, al, а5)

—V(а4, а2 а3)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

V

V

V

V

К(а4,а3,а6) V— У(а5,а3,а6) V— У(а6,а4,а5) V—¿(а4,а2,а6) V—¿(а3,а1,а5)

//

(+ 2 шага).

Получили пустой F-набор. Согласно пункту 2.7, алгоритм заканчивает работу (+4 шага). Объект «четверка» выделен (см. рис. 5), формула выводима.

На выделение объекта ушло 166 шагов.

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

х^сь

х2=а2 х4=а4 х5=а6

Рис. 5. Выделенный на заданном контурном изображении объект «четверка»

Уа1,...,а63х1,...,х5

У Дх4,х2,х5)V—Ца3,а1,а5)v—L(a4,а2,а6)V—У(а1,а2,а3)V У(a2, а1, а4) V — У(a3, а1, а4) V — У(a3, а4, а5) V — У(a4, а2, а3) V —V (а4, а3, а6) V — У(a5, а3, а6) V — V (а6, а4, а5) ' V(х3, х1, х4) V —^(а3, а1, а5) V —Ца4, а2, а6) V — V(а1, а2, а3) V У(a2, а1, а4) V — У(a3, а1, а4) V — У(a3, а4, а5) V — У(a4, а2, а3) V —V (а4, а3, а6) V — У(a5, а3, а6) V — V (а6, а4, а5) ' V(х4, х2, х3) V —¿(а3, а1, а5) V —Ца4, а2, а6) V — V(а1, а2, а3) V —У(a2, а1, а4) V — У(a3, а1, а4) V — У(a3, а4, а5) V — У(a4, а2, а3) V —V (а4, а3, а6) V — У(a5, а3, а6) V — V (а6, а4, а5) J

' У(x4,х3,х5)V—L(a3,а1,а5)V—L(a4,а2,а6)V— V(a1,а2,а3)V ^ У(a2, а1, а4) V — У(a3, а1, а4) V — V (а3, а4, а5) V — V (а4, а2, а3) V —V (а4, а3, а6) V — V (а5, а3, а6) V — V(a6, а4, а5)

&

&

Л

&

/ J

I

I

3

4

345

3

4

345

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

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

Литература

1. Косовская Т.М. Некоторые задачи искусственного интеллекта, допускающие формализацию на языке исчисления предикатов, и оценки числа шагов их решения / Труды СПИИРАН, 2010. Вып. 14. С. 58-75.

2. Оревков В.П. Обратный метод поиска вывода // В кн.: Адаменко А.Н., Кучуков А.М. Логическое программирование и Visual Prolog. СПб.: БХВ, 2003. С. 952-965.

3. Kosovskaya T., Petukhova N. The Inverse Method for Solving Artificial Intelligence Problems in the Frameworks of Logic-Objective Approach and Bounds of its Number of Steps // International Journal «Information Models and Analyses». Vol. 1. 2012. P. 84-93.

THE USE OF MASLOV'S INVERSE METHOD TACTICS FOR LOGIC-OBJECTIVE PATTERN RECOGNIRION PROBLEM SOLVING

Abstract

The paper is devoted to the modifying of Maslov inverse method for a special form of predicate formulas used in the solution of an artificial intelligence problem permitting its setting in the frameworks of predicate calculus. An algorithm based on the inverse method application for such a type formula is justified. Upper and lower bounds of the number of steps of the proposed algorithm are obtained. An example of the extraction and recognition of a given object included into a complex one by means of the presented algorithm is regarded.

Keywords: artificial intelligence, logic-objective approach to pattern recognition, predicate calculus, inverse method of S.Yu.Maslov, complexity theory.

Петухова Нина Дмитриевна, старший преподаватель и аспирантка кафедры математики Санкт-Петербургского государственного морского технического университета (СПбГМТУ),

ndpetukhova@gmail. com

Косовская Татьяна Матвеевна, доктор физико-математических наук, профессор СПбГУ, профессор СПбГМТУ, старший научный сотрудник Санкт-Петербургского института информатики и автоматизации РАН,

kosov@NK1022. spb. edu.

(q) Наши авторы, 2014. Our authors, 2014.

i Надоели баннеры? Вы всегда можете отключить рекламу.