Jump to content

Цикл (теория графов)

Граф с ребрами, окрашенными в зеленый цвет для иллюстрации замкнутого маршрута H–A–B–A–H; контур, представляющий собой замкнутую дорожку, в которой все ребра различны, B–D–E–F–D–C–B, выделены синим цветом; и цикл, представляющий собой замкнутый обход, в котором все вершины различны, H – D – G – H, выделены красным.

В теории графов цикл — это в графе непустой след только первая и последняя вершины , в котором равны . Ориентированный цикл в ориентированном графе — это непустой ориентированный путь , в котором равны только первая и последняя вершины.

Граф без циклов называется ациклическим графом . Ориентированный граф без ориентированных циклов называется ориентированным ациклическим графом . без Связный граф циклов называется деревом .

Определения

[ редактировать ]

Схема и цикл

[ редактировать ]
  • Цепь — это непустой след , в котором первая и последняя вершины равны ( замкнутый след ). [ 1 ]
Пусть G = ( V , E , Φ ) — граф. Схема — это непустой след ( e 1 , e 2 , ..., ) en с последовательностью вершин ( v 1 , v 2 , ..., v n , v 1 ) .
  • Цикл — это схема , или простая схема в которой равны только первая и последняя вершины. [ 1 ]
  • n называется длиной цепи соотв. длина цикла .

Направленная цепь и направленный цикл

[ редактировать ]
  • Ориентированная цепь — это непустая направленная трасса, в которой первая и последняя вершины равны ( замкнутая направленная трасса ). [ 1 ]
Пусть G = ( V , E , Φ ) — ориентированный граф. Ориентированная цепь — это непустая направленная трасса e 1 , e 2 , ..., en ( ) с последовательностью вершин ( v 1 , v 2 , ..., v n , v 1 ) .
  • или Ориентированный цикл простой ориентированный контур — это ориентированный контур, в котором равны только первая и последняя вершины. [ 1 ]
  • n называется длиной направленной цепи соотв. длина направленного цикла .

Безаккордовый цикл

[ редактировать ]
На этом графике зеленый цикл A–B–C–D–E–F–A является безхордовым, а красный цикл G–H–I–J–K–L–G – нет. Это потому, что ребро {K, I} является хордой.

в Безхордовый цикл графе, также называемый дыркой или индуцированным циклом, — это цикл, в котором никакие две вершины цикла не соединены ребром, которое само не принадлежит циклу. Антидыра — это дополнение к дырке в графе. Бесхордовые циклы могут использоваться для характеристики совершенных графов : согласно сильной теореме о совершенном графе , граф совершенен тогда и только тогда, когда ни одна из его дырок или антидыр не имеет нечетного числа вершин, большего трех. , Хордальный граф особый тип совершенного графа, не имеет дыр размером больше трех.

Обхват графа — это длина его кратчайшего цикла; этот цикл обязательно безаккордовый. Клетки определяются как наименьшие правильные графы с заданными комбинациями степени и обхвата.

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

Велосипедное пространство

[ редактировать ]

Термин цикл может также относиться к элементу пространства циклов графа. Существует много пространств циклов, по одному на каждое поле коэффициентов или кольцо. Наиболее распространенным является пространство двоичных циклов (обычно называемое просто пространством циклов ), которое состоит из наборов ребер, имеющих четную степень в каждой вершине; оно образует векторное пространство над двухэлементным полем . По теореме Веблена каждый элемент пространства циклов может быть образован как непересекающееся по ребрам объединение простых циклов. Базис циклов графа — это набор простых циклов, образующий базис пространства циклов. [ 2 ]

Используя идеи алгебраической топологии , пространство двоичных циклов обобщается на векторные пространства или модули над другими кольцами, такими как целые, рациональные или действительные числа и т. д. [ 3 ]

Обнаружение цикла

[ редактировать ]

Существование цикла в ориентированных и неориентированных графах можно определить по тому, находит ли поиск в глубину (DFS) ребро, которое указывает на предка текущей вершины (т. е. оно содержит заднее ребро ). [ 4 ] Все задние ребра, которые пропускает DFS, являются частью циклов. [ 5 ] В неориентированном графе ребро родительского узла не должно считаться задним ребром, но обнаружение любой другой уже посещенной вершины будет указывать на заднее ребро. В случае неориентированных графов всего O ( n -вершинном графе требуется для нахождения цикла в n ) времени , поскольку не более n − 1 ребер могут быть ребрами дерева.

Многие алгоритмы топологической сортировки также обнаруживают циклы, поскольку они являются препятствиями для существования топологического порядка. Кроме того, если ориентированный граф разделен на сильно связные компоненты , циклы существуют только внутри компонентов, а не между ними, поскольку циклы сильно связны. [ 5 ]

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

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

Алгоритм

[ редактировать ]

Вышеупомянутое использование поиска в глубину для поиска цикла можно описать следующим образом:

For every vertex v: visited(v) = finished(v) = false
For every vertex v: DFS(v)

где

DFS(v) =
  if finished(v): return
  if visited(v):
    "Cycle found"
    return
  visited(v) = true
  for every neighbour w: DFS(w)
  finished(v) = true

Для неориентированных графов «сосед» означает все вершины, связанные с v , за исключением той, которая рекурсивно вызывается DFS(v) . Это упущение не позволяет алгоритму найти тривиальный цикл вида v w v ; они существуют в каждом неориентированном графе хотя бы с одним ребром.

Вариант, использующий вместо этого поиск в ширину, найдет цикл наименьшей возможной длины.

Покрытие графов циклом

[ редактировать ]

В своей статье 1736 года о семи мостах Кенигсберга , которую многие считают рождением теории графов, Леонард Эйлер доказал, что для конечного неориентированного графа существует замкнутый обход, который посещает каждое ребро ровно один раз (что делает его замкнутым маршрутом), необходимо и достаточно, чтобы оно было связным, за исключением изолированных вершин (т. е. все ребра содержались в одной компоненте) и имело четную степень в каждой вершине. Соответствующая характеристика существования замкнутого обхода, посещающего каждое ребро ровно один раз в ориентированном графе, состоит в том, что граф сильно связен и имеет одинаковое количество входящих и исходящих ребер в каждой вершине. В любом случае результирующий замкнутый след известен как Эйлеров след . Если конечный неориентированный граф имеет четную степень в каждой своей вершине, независимо от того, связен ли он, то можно найти набор простых циклов, которые вместе покрывают каждое ребро ровно один раз: это теорема Веблена . [ 7 ] Когда связный граф не удовлетворяет условиям теоремы Эйлера, замкнутый обход минимальной длины, охватывающий каждое ребро хотя бы один раз, тем не менее может быть найден за полиномиальное время путем решения задачи проверки маршрута .

Гораздо сложнее найти один простой цикл, который покрывает каждую вершину ровно один раз, а не ребра. Такой цикл известен как гамильтонов цикл , и определение его существования является NP-полным . [ 8 ] Было опубликовано много исследований, касающихся классов графов, которые могут гарантированно содержать гамильтоновы циклы; Одним из примеров является теорема Ора о том, что гамильтонов цикл всегда можно найти в графе, для которого каждая несмежная пара вершин имеет степени, сумма которых равна как минимум общему числу вершин в графе. [ 9 ]

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

Классы графов, определенные циклом

[ редактировать ]

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

См. также

[ редактировать ]
  1. ^ Jump up to: а б с д Бендер и Уильямсон 2010 , с. 164.
  2. ^ Гросс, Джонатан Л.; Йеллен, Джей (2005), «4.6 Графы и векторные пространства» , Теория графов и ее приложения (2-е изд.), CRC Press, стр. 197–207, ISBN  9781584885054 , заархивировано из оригинала 4 февраля 2023 г. , получено 27 сентября 2016 г.
  3. ^ Дистель, Рейнхард (2012), «1.9 Некоторые линейные алгебры» , Теория графов , Тексты для выпускников по математике, том. 173, Springer, стр. 23–28, заархивировано из оригинала 4 февраля 2023 г. , получено 27 сентября 2016 г.
  4. ^ Такер, Алан (2006). «Глава 2: Покрытие схем и раскраски графов». Прикладная комбинаторика (5-е изд.). Хобокен: Джон Уайли и сыновья. п. 49. ИСБН  978-0-471-73507-6 .
  5. ^ Jump up to: а б Седжвик, Роберт (1983), «Графовые алгоритмы», Алгоритмы , Аддисон-Уэсли, ISBN  0-201-06672-6
  6. ^ Зильбершац, Авраам; Питер Гэлвин; Грег Ганье (2003). Концепции операционной системы . John Wiley & Sons, INC., стр. 260 . ISBN  0-471-25060-0 .
  7. ^ Веблен, Освальд (1912), «Применение модульных уравнений в анализе ситуации», Анналы математики , вторая серия, 14 (1): 86–94, doi : 10.2307/1967604 , JSTOR   1967604 .
  8. ^ Ричард М. Карп (1972), «Сводимость среди комбинаторных задач» (PDF) , в Р.Э. Миллере и Дж. Тэтчере (ред.), Сложность компьютерных вычислений , Нью-Йорк: Пленум, стр. 85–103, заархивировано (PDF) с сайта оригинал 10 февраля 2021 г. , получен 12 марта 2014 г.
  9. ^ Оре, Ø. (1960), «Заметки о схемах Гамильтона», American Mathematical Monthly , 67 (1): 55, doi : 10.2307/2308928 , JSTOR   2308928 .
  10. ^ Джагер, Ф. (1985), «Обзор гипотезы о двойном покрытии цикла», Annals of Discrete Mathematics 27 – Cycles in Graphs , North-Holland Mathematics Studies, vol. 27, стр. 1–12, номер документа : 10.1016/S0304-0208(08)72993-1 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 23df5c0cb85312ffebb19ff12eaa72da__1716339120
URL1:https://arc.ask3.ru/arc/aa/23/da/23df5c0cb85312ffebb19ff12eaa72da.html
Заголовок, (Title) документа по адресу, URL1:
Cycle (graph theory) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)