Алгоритм поиска приближенного решения задачи проверки изоморфизма подграфов

Математические структуры и моделирование 2003, вып. 11, с. 59-67

УДК 519.171

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

ПОДГРАФОВ

А.В. Пролубников

We consider the subgraph isomorphism problem with the following restriction.

We suppose that both checked graphs have the same number of vertices. Proposed metric represents the distance between checked graphs. This metric allows to come to the problem of finding an optimal embedding of one of the graphs into another. The supposed algorithm is an algorithm for finding an approximate solution for the problem. Conditions needed for the algorithm effectiveness are considered.

Задача проверки изоморфизма подграфов представляет собой обобщение для широкого класса задач, находящих практическое применение, в частности в таких областях, как распознавание образов и обработка изображений. Однако, помимо практической важности, задача имеет и теоретическую важность, поскольку задача является .Y/'-полной [1] и к ней могут быть сведены такие задачи теории графов, как задача поиска гамильтонова цикла в графе, поиска максимальной клики в графе и некоторые другие.

При этом, сели вопрос о принадлежности задачи проверки изоморфизма графов к классу Р или NP до сих пор остается открытым [1], но некоторые дополнительные ограничения на структуру графов позволяют перевести задачу в класе Р [2,3], [4], то, например, ограничение задач проверки изоморфизма подграфов на планарные графы оставляет задачу в классе А/'-полных задач [5] в отличие от подобных задач проверки изоморфизма графов. Поэтому возникает необходимость в построении алгоритмов, находящих приемлемое приближенное решение задачи за полиномиальное время.

Граф G іП і• Еа) является подграфом, графа Gb(Vb, Ев), если Va С Vb и Еа С Ев- Граф Ga называется остовным подграфом, или частичным графом, графа, Gb, если \Vb\ = \Va\-

Постановка задачи проверки изоморфизма подграфов следующая:

Граф G і П і• Еа) изоморфен некоторому подграфу графа Gb(Vb, Ев), если существует такая инъекция <д : Va —>• \ и что У(i, j) Є \ ' \ =k (<д(і), <p(j)) Є 1 ).

© 2003 А.В. Пролубников

E-mail: prolubnikov@math.omsu.omskreg.ru Омский государственный университет

60 А.В. Пролубников. Алгоритм поиска, приближенного решения задали...

Вложением графа Ga(Va, Еа) в граф Gb(Vb, Ев) (|Va| = \Vb\, \Еа\ < \Ев\) будем называть произвольное биективное отображение д : Ід —>• Vb- Граф, получаемый из графа Gа перенумерацией его вершин, соответствующей биекции д, обозначать С'г, и также назвать вложением.

Любому вложению д может быть однозначно поставлена в соответствие некоторая матрица перестановки Р и наоборот. То есть Рид могут быть отождествлены друг е другом. Для произвольной матрицы А под матрицей А(д) будем понимать матрицу PAP-1, то есть матрицу, полученную из А перестановкой ее строк е такой же перестановкой ее столбцов (перестановкой рядов), задаваемой Р.

Изоморфным вложением невзвешенного неориентированного графа G і(І і. Еа) в граф С/,*(1 Ц. Ев) (|Уа| = |ГД|, \Еа\ < \Ев\) будем называть такое биективное отображение д : Ід —> ГД, что (i,j) Є Еа тогда и только тогда, когда (Д/). Дд)) Є Ев- Если \ЕВ\ = \Еа\, то существование изоморфного вложения графа 6Д в граф 6Д эквивалентно изоморфноети этих графов.

Формулировка задачи поиска приближенного решения задачи проверки изоморфизма подграфов включает в себя целевую функцию, требующую минимизации, представляющую собой некоторую количественную характеристику близости графов. Примерами такой функции могут служить функции, представленные в [6,7],

Пусть ,1о. В0- матрицы смежности графов Ga и G в- Матрица Со = А0 — В0 - матрица смежности некоторого взвешенного графа с весами ребер, равными 1 и -1, Ее элементы следующие:

Матрица С о - симметрическая, поскольку матрицы А0 и В0 симметрические. Задаваемый ей взвешенный граф является дополнением графа Ga до графа Gb только в том случае, когда в Со отсутствуют элементы, равные -1, то есть когда Gа - подграф Gb- Матрица Со задает таким образом взвешенный граф Gc, наличию ребра в котором соответствует наличие такого же ребра только в одном из графов Gb или Ga, отсутствие - наличию такого ребра в обоих графах либо отсутствие такого ребра в обоих графах.

Чем меньше ребер в графе Gc и соответственно меньше ненулевых элементов в матрице Со, тем граф Gb можно считать более близким к графу 6Д. Будем в дальнейшем граф С'( •. соответствующий матрице СД называть разностью графов Ga и G|> и введем метрику, конкретизирующую понятие близости графов.

Рассмотрим фробениуеову (евклидову) норму матрицы F для матрицы А = {ад), определяемую как

1, если (г, j) Є Еа и (i, j) EB,

-1, если {i, j) 0 Еа И (i, j) Є Ев,

0, если ((г, j) Є Еа и (i, j) Є Ев), или ({і, j) Еа и (і, j) 0 EB).

Математические структуры и моделирование. 2003. Вып. 11.

61

При перенумерации вершин графа Ga, соответствующей биекции ip, получаем граф 6'г, е матрицей смежности РА0Р^г, обозначаемой далее Н0(<д). Матрица разности графов Gb и G\ - матрица Со(<д) = В0 — Н0(<д), Значение F(Со(<£>)) равно квадратному корню от числа несовпадающих ребер в графах С'г, и GB.

Функция

df

5

™ F(C0((p)),

уєг

рассматриваемая как функция расстояния между графами, является метрикой, поскольку:

1, S неотрицательна:

8[G a, Gb) Р О,

S(Ga, ('в) = 0 = Ga = G

в-

2, S симметрична: S(Ga, Gb) = S(Gb, Ga).

3, S удовлетворяет правилу треугольника: 6(Ga, Gb) < S(Gb, Gc) + S(Gc, Gb)-

После введения метрики S задача поиска оптимального вложения графа Ga в граф Gb может быть сформулирована так. Необходимо найти вложение <д графа Gb в граф Ga, при котором F(Co(<£>)) = 6(Ga, Gb)-

Мы рассматриваем задачу поиска оптимального вложения графа Ga в граф Gb с дополнительным условием: \Va\ = \Ув\, \Еа\ < \Ев\-

Предлагаемый нами алгоритм решения задачи поиска оптимального вложения графа является модификацией алгоритма спектрального расщепления проверки изоморфизма графов и работает с матрицами смежности графов, аналогично модифицированными до положительно определенных. Матрицы видоизменяются следующим образом. Пусть По - матрица смежности графа G і {Г і. Р. \). В соответствии с матрицей А0 строим диагональную матрицу DАу.

. О \

О

г]А у

пп /

д 0

0 jA u22

О   О

со следующими элементами на диагонали:

с?- = ^2, aij + d = di + d,

з=і

где d - максимальная степень вершин в графе Ga, а ф - степень вершины і. Аналогично по матрице В0 строится матрица Ев0. Матрицы, с которыми работает алгоритм, имеют следующий вид:

А — Aq + DAo , В — Bq + Dsn.

В о-

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

Вместо матрицы Cq как матрицу, представляющую разность графов Gb и Ga, будем рассматривать матрицу С: С = А — В. Если

F

62 А.В. Пролубников. Алгоритм поиска, приближенного решения задали...

то и

F

^ЄГ

min (F(B — А(ф))).

В самом деле:

В - А(д) = (В0 - Ао(д)) + (DB - DA((p)).

Последовательность степеней вершин графа является инвариантом для изоморфных графов. Если <д - оптимальное вложение, то значит, что количество несовпадающих ребер у графа вложения GA(ip) и графа Gb минимально, что также соответствует минимуму разности степеней у соответствующих вершин графов. Следовательно, минимизация функционала F(Bo~ Ао(<р)) равносильна минимизации функционала /•’( В — . 1 (у)).

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

где вектор ej = (0,,,,, 0,1, 0,,,,, 0) - j-й орт в пространстве Rn. Сравнение норм столбцов обратных матриц позволяет получить решающую перестановку, задающую изоморфизм. То есть эвристикой, на основе которой строится изоморфизм, является обратная матрица к видоизмененной матрице смежности графа. Отслеживание возмущений обратной матрицы по возмущениям самой матрицы позволяет определить биекцию, задающую изоморфизм.

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

Ах = ej, By = ek, j.k = ї.іі.

Математические структуры и моделирование. 2003. Вып. 11.

63

Алгоритм спектрального расщепления проверки изоморфизма графов.

Принципиальная схема

Шаг 0. А0 := А, В0 := В; j := 1.

Шаг 1.1. Если j < п, то перейти на шаг 1.1, иначе перейти на шаг 6.

Шаг 1.2. Выбор €j.

Шаг 1.3. А> := А> 1 + :;/У.

Шаг 2. Решение системы линейных уравнений Л'.г = ер Xj - полученное решение, k := 1.

Шаг 3.1. Если к < п, то перейти на шаг 3.2, иначе - графы неизоморфны. Работу алгоритма завершить.

Шаг 3.2. Вк := IP 1 + SjEk.

Шаг 3.3. Решение системы линейных уравнений Вку = ек. ук - полученное решение.

Шаг 3.4. к := к + 1. Перейти на шаг 3.1.

Шаг 4. Сравнение норм векторов Xj и ук, где к такие, что Vi < j Ді : і УД к. Если У к \\xj\\ Ф \\ук\\, то графы Ga и Gb неизоморфны. Работу алгоритма завершить.

Если Зк \\xj\\ = \\ук\\, и Vi 3/ : хд = yki, и хд = укк, то к j := к.

Шаг 5. IP := IP 1 + EjEkP j := j + 1. Перейти на шаг 1.1.

Шаг 6. Работу алгоритма завершить. Полученное соответствие j УД kj, j = l,n - найденный изоморфизм графов Ga в Gb-

Модификация алгоритма спектрального расщепления проверки изоморфизма графов, дающая эвристический алгоритм поиска оптимального вложения одного из графов в другой, осуществляется следующим образом. Так, на каждой j-ой итерации алгоритма спектрального расщепления проверки изоморфизма графов, если графы Ga a Gb изоморфны и <д0 - изоморфизм, а Р° - соответствующая ему матрица перестановки, то выполняется следующее ключевое соотношение:

Если Ш = А7'-1 + SjEi, то

IP = IP 1 + £jE'Mj) УД IP = 1пА'1’п 1

В данном случае, если графы G | и Gb близки в соответствии с введенной метрикой S и (До _ искомое оптимальное вложение, а Р° - соответствующая ему матрица перестановки, то на каждой j-oii итерации должно выполняться следующее ключевое соотношение:

Если А = А-1 + SjEi, то

IP = IP 1 + £jE'Mj) УД к'

PeV

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

64 А.В. Пролубников. Алгоритм поиска, приближенного решения задали...

Алгоритм спектрального расщепления поиска оптимального вложения графа.

Принципиальная схема

Шаг 0. А0 := А, В0 := В; j := 1.

Шаг 1. Если j < п, то перейти на шаг 1.1, иначе перейти на шаг 6.

Шаг 1.1. Выбор Єр Шаг 1.2. А> := А> 1 + :;/А.

Шаг 2. Решение системы линейных уравнений Л'.г = ед. Xj - полученное решение.

Шаг 3. k := 1. Если к < п, то перейти на шаг 3.1, иначе перейти на шаг 4.

Шаг 3.1. Вк := Bj + £jEk.

Шаг 3.2. Решение системы линейных уравнений Вку = ек. ук - полученное решение.

Шаг 3.3. к := к + 1. Перейти на шаг 3.

Шаг 4. Ст

эавнение норм векторов Xj и ук, где к такие

П П п П

2 ||У?г|| S \\Укг\\ = min Е \xji\ \~Е ІІШІІ

г=1 г=1 і i=1 г=1

Если к :

соответствия j уд kj).

Шаг 4.1. IP := IP 1 + ejEkP Шаг 5. j := j + 1. Перейти на шаг 1.

'і о к j := к. (Установление

Шаг 6. Работу алгоритма завершить. Полученное соответствие j kj, j = l,n - найденное вложение графа Ga в граф Gb

Пусть В — . 1( До) = С(іро). Рассмотрим системы линейных уравнений

А((р0)х = ej, Вх' = ер, j = 1, n,

где вектор ej = (0,..., 0,1, 0,..., 0) - j-й орт в пространстве Rn. Если

сы

АД)

<9.

д(А(<до)) - число обусловленности матрицы А(д0) и @р(А((р0)) < 1, то для решений х и х' систем уравнений (4) справедливо [9] неравенство

х — ж'|| р{А{до))0

Для матрицы А((р0) число обусловленности д(А(<д0)) < 3 [8]. Поэтому, если выполняется (6) и в < 1/3, то для решений х их' систем уравнений (5) неравенство

(7) принимает следующий вид:

Зв

1 - Зв

х

То есть решения систем уравнений (5), задающие обратные матрицы для матриц А (до) и В, изменяются непрерывно при малых возмущениях, задаваемых

Математические структуры и моделирование. 2003. Вып. 11.

65

матрицей С(іро). А значит, и дополнительные возмущения диагональных элементов матриц £j, производимые на каждой j-ой итерации, е некоторой погрешностью будут сохранять ключевое соотношение (3), выполнению которого будет соответствовать выполнение соотношения (4),

Возмущая матрицы А и В с помощью матриц SjE^ и SjE^0^, полагая при этом, что на каждой итерации <pa(j) = к, где к такое, что

£

г=1

Xji

П

г=1

min

і

г=1

п

^2 \\ун

г=1

5

мы будем минимизировать п из п2 слагаемых, входящих в функционал F((Bз)-1 - Р(АЗ)-1Р-1).

Стремясь уменьшить на каждой итерации алгоритма значение функционала F((i?J)_1 — Р(А-7)-1Р-1), при неизвестной нам матрице перестановки Р мы исходим из того, что два функционала - функционал 1-'(1Р — РА'Р ') и функционал F((i?J)_1 — P(A^)~lP~l) - достигают минимума на одной и той же матрице перестановки, что справедливо, когда G | = Gb, так, в этом случае

В - РАР-1 = О «Ф» В-1 - РА-1Р-1 = 0.

Если же S(Ga, Gb) мало, то поскольку ||G(y>o)|| < F{C) [9], будет мало и отношение ||С(<до) ||/||А(<До) ||, а значит, возможно эффективное применение алгоритма спектрального расщепления поиска изоморфного вложения графа, что подтверждается вычислительным экспериментом.

Приведенные ниже результаты представляют собой усреднение по серии вычислительных экспериментов. Искалось изоморфное вложение графа Ga в граф Gb, заведомо существующее. Генерировался граф Gb, по нему строился оетовный подграф G'4, после чего случайным образом перенумеровывались его вершины и получался граф G аВ приведенной таблице Sb обозначает вероятность, с которой при генерировании случайного графа между двумя вершинами графа проводится ребро («плотность» графа Gb). Sa(B) обозначает вероятность, с которой при построении остовного подграфа Ga между вершинами остается ребро графа Gb («плотность» графа Ga относительно графа GB) Nf - число ребер в графе GB Nе4 - число ребер в графе Ga- Ne^ - число несовпавших ребер в найденном вложении графа Gа в граф Gb - графе Gr,. Число вершин в графах равнялось 50.

Отметим, что главная трудность при решении поставленной задачи заключается в том, что, не зная оптимального вложения <до графа Ga в граф Gb, мы не можем определить S(Ga, Gb) и соответственно ||G(y>o)||- Однако, несмотря на это, при помощи алгоритма спектрального расщепления поиска оптимального вложения графа может, в частности, эффективно решаться задача со следующей содержательной постановкой.

Имеется некоторый набор изображений-шаблонов, в соответствие каждому из которых, например, по одному из методов, предложенных в [10], поставлен некоторый граф. Проверяемое (тестовое) изображение является одним из

66 А.В. Пролубников. Алгоритм поиска, приближенного решения задали...

Таблица 1. Результаты вычислительного эксперимента

SB SA(B) NB Є na Є Ne{v}

0,80 0,70 1206 941 12

0,85 0,70 1221 938 7

0,90 0,70 1233 926 3

0,80 0,85 1210 967 13

0,85 0,85 1218 953 6

0,90 0,85 1227 970 3

0,80 0,90 1217 973 14

0,85 0,90 1210 981 11

0,90 0,90 1223 983 5

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

Литература

1. Гэри \!.. Джонсон Д., Вычислительные машины и труднорешаемые задачи. М.: Мир. 1982

2. Hopcroft J., Wong J., A linear time algorithm for isomorphism, of planar graphs // Proceedings of the Sixth Annual ACM Symposium on Theory of Computing. 1974. P.172-184.

3. Luks E.M., Isomorphism of graphs of bounded valence can be tested in polynomial time // Proc. 21st IEEE FOCS Svmp. 1980. P.42-49.

4. Hoffmann C.M. Group-Theoretic Algorithms and Graph Isomorphism // Lecture Notes in Computer Science (Chapter V). 1982. P.127-138.

5. Baker B.S. Approximation algorithms for NP-complete problems on planar graphs j j

J. Assoc. Comput. Mach. 1994. V.41. P.153-180.

6. Bunke H. On a relation between graph edit distance and maximum common subgraph // Pattern Recogn. Lett. 1997. V.18, N.8. P.689-694.

7. Bunke H., Schearer K. A Graph distance metric based on the m,axim,al common subgraph // Pattern Recogn. Lett. 1998. V.19, N.3-4. P.255-259.

8. Пролубников А.В., Файзуллин P.T. Эвристический алгоритм дешифрования шифра двойной перестановки // Математические структуры и моделирование: Сб. научи. тр. Под ред. А.К.Гуца. Омск: Омск. гос. ун-т, 2002. Вып.9. С.62-69.

9. Годунов С.К. и др. Гарантированная точность решения систем, линейных уравнений в евклидовых пространствах // Новосибирск: Наука, 1988.

10. Шикни Е.В., Боресков А.В. Компьютерная графика. М.: Мир,1995.

Математические структуры и моделирование 2003, вып. 11, с. 67-87

УДК 532.5.031+519.632.4

ОБТЕКАНИЕ РЕШЕТОК ПРОИЗВОЛЬНЫХ ЛОПАСТЕЙ ИДЕАЛЬНОЙ НЕСЖИМАЕМОЙ

ЖИДКОСТЬЮ

А.С. Толстуха

Various aspects of the numerical solution using finite element method for the 3-d potential flow of the ideal fluid through the rotor blades of the turbomachine are discussed. Paper covered the problem stage, wakes influence and secondary flow questions. Also considered discreet solution techniques and its convergence.

1. Введение

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

Работы по методам определения стационарного пространственного течения в турбомашинах принято вести от работы [2] - квазитрёхмерная технология, расчёты проводятся последовательно для течений в «тонких» слоях. Осесимметричное в меридианальном слое, приближённо являющемся средней поверх© 2003 А.С. Толстуха

E-mail: ast@univer.omsk.su

Омский государственный университет

Работа выполнена в рамках программы ФЦП «Интеграция»