В теории графов изоморфизм графов G и H — это биекция между множествами вершин G и H.
такой, что любые две вершины u и v графа G смежны в G тогда и только тогда, когда и смежны в H. Этот вид биекции обычно описывается как «сохраняющая ребра биекция» в соответствии с общим понятием изоморфизма как сохраняющей структуру биекции.
Если между двумя графами существует изоморфизм , то графы называются изоморфными и обозначаются как . В случае, когда изоморфизм является отображением графа на себя, т. е. когда G и H — один и тот же граф, изоморфизм называется автоморфизмом графа G .
Изоморфизм графов — это отношение эквивалентности на графах, и как таковое оно разбивает класс всех графов на классы эквивалентности . Набор графов, изоморфных друг другу, называется классом изоморфизма графов. Вопрос о том, можно ли определить изоморфизм графов за полиномиальное время, является основной нерешенной проблемой в информатике, известной как проблема изоморфизма графов . [1] [2]
Два графика, показанных ниже, изоморфны, несмотря на разный внешний вид .
В приведенном выше определении под графами понимаются неориентированные немаркированные невзвешенные графы. Однако понятие изоморфизма может быть применено ко всем другим вариантам понятия графа, путем добавления требований сохранения соответствующих дополнительных элементов структуры: направлений дуг, весов ребер и т. д., за следующим исключением.
Для помеченных графов используются два определения изоморфизма.
Согласно одному определению, изоморфизм — это вершинная биекция, которая сохраняет как ребра, так и метки. [3] [4]
Согласно другому определению, изоморфизм — это сохраняющая ребра вершинная биекция, которая сохраняет классы эквивалентности меток, т. е. вершины с эквивалентными (например, одинаковыми) метками отображаются на вершины с эквивалентными метками и наоборот; то же самое с метками ребер. [5]
Например, граф с двумя вершинами, помеченными как 1 и 2, имеет один автоморфизм при первом определении, но при втором определении имеет два автоморфизма.
Второе определение предполагается в определенных ситуациях, когда графы наделены уникальными метками, обычно взятыми из целого диапазона 1,..., n , где n — число вершин графа, используемое только для уникальной идентификации вершин. В таких случаях два помеченных графа иногда называются изоморфными, если соответствующие им не помеченные графы изоморфны (иначе определение изоморфизма было бы тривиальным).
Формальное понятие «изоморфизма», например, «изоморфизма графов», охватывает неформальное понятие, что некоторые объекты имеют «одинаковую структуру», если игнорировать индивидуальные различия «атомарных» компонентов рассматриваемых объектов. Всякий раз, когда индивидуальность «атомарных» компонентов (вершин и ребер для графов) важна для правильного представления того, что моделируется графами, модель уточняется путем наложения дополнительных ограничений на структуру, и используются другие математические объекты: орграфы , помеченные графы , цветные графы , корневые деревья и т. д. Отношение изоморфизма также может быть определено для всех этих обобщений графов: биекция изоморфизма должна сохранять элементы структуры, которые определяют рассматриваемый тип объекта: дуги , метки, цвета вершин/ребер, корень корневого дерева и т. д.
Понятие «изоморфизм графов» позволяет нам различать свойства графов , присущие структурам самих графов, от свойств, связанных с представлениями графов: чертежи графов , структуры данных для графов , маркировки графов и т. д. Например, если граф имеет ровно один цикл , то все графы в его классе изоморфизма также имеют ровно один цикл. С другой стороны, в общем случае, когда вершины графа ( представлены ) целыми числами 1, 2,... N , то выражение
может быть различным для двух изоморфных графов.
Теорема Уитни об изоморфизме графов [6], показанная Хасслером Уитни , утверждает, что два связных графа изоморфны тогда и только тогда, когда их линейные графы изоморфны, за одним исключением: K 3 , полный граф на трех вершинах, и полный двудольный граф K 1,3 , которые не изоморфны, но оба имеют K 3 в качестве своего линейных графов. Теорема Уитни об изоморфизме графов может быть распространена на гиперграфы [7] .
Хотя изоморфизм графов можно изучать классическим математическим способом, как это показано в теореме Уитни, признается, что это проблема, которую следует решать с помощью алгоритмического подхода. Вычислительная задача определения того, являются ли два конечных графа изоморфными, называется проблемой изоморфизма графов.
Его практические приложения включают в себя прежде всего химическую информатику , математическую химию (идентификацию химических соединений) и автоматизацию электронного проектирования (проверку эквивалентности различных представлений конструкции электронной схемы ).
Проблема изоморфизма графов — одна из немногих стандартных проблем в теории сложности вычислений, принадлежащая NP , но не известная как принадлежащая ни к одному из ее известных (и, если P ≠ NP , непересекающихся) подмножеств: P и NP-полная . Это одна из двух из 12 задач, перечисленных в Garey & Johnson (1979), сложность которых остается нерешенной, другая — целочисленная факторизация . Однако известно, что если задача NP-полная, то иерархия полиномов схлопывается до конечного уровня. [8]
В ноябре 2015 года Ласло Бабай , математик и специалист по информатике из Чикагского университета, заявил, что доказал, что проблема изоморфизма графов разрешима за квазиполиномиальное время . [9] [10] Он опубликовал предварительные версии этих результатов в трудах Симпозиума по теории вычислений 2016 года [11] и Международного конгресса математиков 2018 года . [12] В январе 2017 года Бабай ненадолго отказался от заявления о квазиполиномиальности и вместо этого заявил о субэкспоненциальной оценке временной сложности. Он восстановил первоначальное заявление пять дней спустя. [13] По состоянию на 2024 год [обновлять]полная журнальная версия статьи Бабая еще не была опубликована.
Известно, что ее обобщение, задача изоморфизма подграфов , является NP-полной.
Основными направлениями исследований проблемы являются разработка быстрых алгоритмов и теоретические исследования ее вычислительной сложности , как для общей задачи, так и для специальных классов графов.
Тест на изоморфизм графов Вайсфейлера -Лемана можно использовать для эвристической проверки изоморфизма графов. [14] Если тест не пройден, два входных графа гарантированно неизоморфны. Если тест пройден успешно, графы могут быть или не быть изоморфными. Существуют обобщения алгоритма теста, которые гарантированно обнаруживают изоморфизмы, однако время их выполнения экспоненциально.
Другим известным алгоритмом для изоморфизма графов является алгоритм vf2, разработанный Корделлой и др. в 2001 году. [15] Алгоритм vf2 — это алгоритм поиска в глубину, который пытается построить изоморфизм между двумя графами пошагово. Он использует набор правил осуществимости для сокращения пространства поиска, что позволяет ему эффективно обрабатывать графы с тысячами узлов. Алгоритм vf2 широко используется в различных приложениях, таких как распознавание образов, компьютерное зрение и биоинформатика. Хотя он имеет наихудшую экспоненциальную временную сложность, он хорошо работает на практике для многих типов графов.
{{cite journal}}
: CS1 maint: дата и год ( ссылка )