Проблема изоморфизма графов - Graph isomorphism problem

Нерешенная проблема в информатике :

Можно ли решить проблему изоморфизма графов за полиномиальное время?

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

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

Эта проблема является частным случаем проблемы изоморфизма подграфов , которая спрашивает, содержит ли данный граф G подграф, изоморфный другому данному графу H ; эта проблема, как известно, является NP-полной. Также известно, что это частный случай проблемы неабелевых скрытых подгрупп над симметрической группой .

В области распознавания изображений это известно как точное сопоставление графов .

Уровень развития

В ноябре 2015 года Ласло Бабай анонсировал алгоритм квазиполиномиального времени для всех графов, то есть один с фиксированным временем работы для некоторых . 4 января 2017 года Бабай отозвал квазиполиномиальное утверждение и вместо этого указал субэкспоненциальную временную границу после того, как Харальд Хельфготт обнаружил изъян в доказательстве. 9 января 2017 года Бабай объявил об исправлении (полностью опубликован 19 января) и восстановил квазиполиномиальное утверждение, а Хельфготт подтвердил исправление. Хельфготт далее утверждает, что можно взять c = 3 , поэтому время выполнения равно 2 O ((log n ) 3 ) .

До этого лучший принятый в настоящее время теоретический алгоритм был разработан Бабаем и Луксом (1983) и основан на более ранней работе Люкса (1982) в сочетании с субфакторным алгоритмом В. Н. Земляченко ( Земляченко, Корнеенко и Тышкевич, 1985 ). Алгоритм имеет время выполнения 2 O ( n  log  n ) для графов с n вершинами и основан на классификации конечных простых групп . Без этой теоремы классификации, немного слабее связанно 2 O ( п  войти 2  л ) был получен первым для сильно регулярных графов по Ласло Бабаям  ( 1980 ), а затем распространяется на общие граф Бабая & Лукс (1983) . Улучшение показателя n - большая открытая проблема; для сильно регулярных графов это было сделано Спилманом (1996) . Для гиперграфов ограниченного ранга субэкспоненциальная оценка сверху, соответствующая случаю графов, была получена Бабаем и Коденотти (2008) .

Существует несколько конкурирующих практических алгоритмов изоморфизма графов, например, предложенных Маккеем (1981) , Шмидтом и Друффелем (1976) и Ульманом (1976) . Хотя кажется, что они хорошо работают на случайных графиках , основным недостатком этих алгоритмов является их экспоненциальная временная производительность в худшем случае .

Проблема изоморфизма графов является вычислительно эквивалентна задачей вычисления группы автоморфизмов графа, и слабее , чем группа перестановок проблема изоморфизма и проблема пересечения группы перестановок. Для последних двух проблем Бабай, Кантор и Лукс (1983) получили оценки сложности, аналогичные оценкам для изоморфизма графов.

Решенные частные случаи

Ряд важных частных случаев проблемы изоморфизма графов имеет эффективные решения за полиномиальное время:

Класс сложности GI

Поскольку не известно, что проблема изоморфизма графов является NP-полной или разрешимой, исследователи стремились проникнуть в суть проблемы, определив новый класс GI , набор задач с полиномиальным сведением Тьюринга к изоморфизму графов. проблема. Если на самом деле проблема изоморфизма графов разрешима за полиномиальное время, GI будет равна P . С другой стороны, если проблема NP-полная, GI будет равняться NP, и все проблемы в NP будут разрешимы за квазиполиномиальное время.

Как это обычно бывает для классов сложности в иерархии полиномиального времени , проблема называется GI-сложной, если существует полиномиальное сокращение по Тьюрингу от любой проблемы в GI к этой проблеме, т. Е. Решение за полиномиальное время для GI-сложной задачи. даст полиномиальное решение проблемы изоморфизма графов (и, следовательно, всех проблем в GI ). Проблема называется завершенной для GI или GI-полной , если она является одновременно GI-сложной и решение проблемы GI за полиномиальное время дало бы решение за полиномиальное время .

Проблема изоморфизма графов содержится как в NP, так и в co- AM . GI содержится в низком уровне для Parity P , а также содержится в потенциально гораздо меньшем классе SPP . То, что он лежит в четности P, означает, что проблема изоморфизма графов не сложнее, чем определение того, имеет ли недетерминированная машина Тьюринга с полиномиальным временем четное или нечетное количество принимающих путей. GI также содержится в низком уровне для ZPP NP . По сути, это означает, что эффективный алгоритм Лас-Вегаса с доступом к NP- оракулу может решить изоморфизм графов настолько легко, что он не получит никакой силы от предоставления возможности делать это в постоянное время.

Проблемы GI-complete и GI-hard

Изоморфизм других объектов

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

GI-полные классы графов

Класс графов называется GI-полным, если распознавание изоморфизма для графов из этого подкласса является GI-полной проблемой. Следующие классы являются GI-полными:

Многие классы орграфов также GI-полны.

Другие проблемы с GI-complete

Помимо проблем изоморфизма, существуют и другие нетривиальные GI-полные проблемы.

  • Признание самодополняемости графа или орграфа.
  • Проблема клики для класса так называемых М -графов. Показано, что нахождение изоморфизма для n -вершинных графов эквивалентно нахождению n -клики в M -графе размера n 2 . Этот факт интересен тем, что задача нахождения ( n  -  ε ) -клики в M -графе размера n 2 является NP-полной для сколь угодно малого положительного ε.
  • Проблема гомеоморфизма 2-комплексов.

GI-тяжелые проблемы

  • Проблема подсчета количества изоморфизмов между двумя графами полиномиально эквивалентна проблеме определения того, существует ли хоть один.
  • Проблема определения того, являются ли два выпуклых многогранника, задаваемые V-описанием или H-описанием , проективно или аффинно изоморфными. Последнее означает существование проективного или аффинного отображения между пространствами, содержащими два многогранника (не обязательно одной размерности), которое индуцирует биекцию между многогранниками.

Проверка программы

Мануэль Блюм и Сампат Каннан ( 1995 ) показали вероятностную программу проверки программ на изоморфизм графов. Предположим, что P - заявленная процедура с полиномиальным временем, которая проверяет, изоморфны ли два графа, но ей не доверяют. Чтобы проверить , изоморфны ли G и H :

  • Спросите P , изоморфны ли G и H.
    • Если ответ «да»:
      • Попытка построить изоморфизм, используя P в качестве подпрограммы. Отметьте вершину u в G и v в H и измените графы, чтобы сделать их отличительными (с небольшим локальным изменением). Спросите P , изоморфны ли модифицированные графы. Если нет, замените v на другую вершину. Продолжайте поиск.
      • Либо изоморфизм будет найден (и его можно будет проверить), либо P будет противоречить самому себе.
    • Если ответ «нет»:
      • Выполните следующие 100 раз. Выберите случайным образом G или H и случайным образом переставьте его вершины. Задать P , если граф изоморфен G и H . (Как в протоколе AM для неизоморфизма графов).
      • Если какой-либо из тестов не прошел, оцените P как недопустимую программу. В противном случае ответьте «нет».

Эта процедура является полиномиальной и дает правильный ответ, если P - правильная программа для изоморфизма графов. Если P не является правильной программа, но правильно отвечает на G и H , то шашка будет либо дать правильный ответ, или обнаружить недопустимое поведение P . Если P неверная программа и неправильно отвечает на G и H , программа проверки обнаружит недопустимое поведение P с высокой вероятностью или ответит неверно с вероятностью 2 −100 .

Примечательно, что P используется только как черный ящик.

Приложения

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

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

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

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

Смотрите также

Примечания

использованная литература

Обзоры и монографии

Программного обеспечения