Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
3.4. Гамильтоновы цепи и циклыВ предыдущем разделе нами была рассмотрена задача определения уникурсальносги заданного конечного графа. Естественной также является постановка следующей близкой задачи: Найти, при каких условиях конечный связный граф содержит цепь или цикл, проходящие через все вершины? Если такие цепь или цикл существуют и являются простыми, то они называются соответственно гамильтоновой цепью или гамильтоновым циклом. Если граф обладает гамильтоновым циклом 5, то, очевидно, он обладает и гамильтоновой цепью. Обратное, вообще говоря, неверно. Так, например, двудольный граф на рис. 3.5 обладает несколькими гамильтоновыми цепями, но не обладает гамильтоновым циклом. И, конечно, многие графы не содержат ни того, ни другого. Для некоторых специальных классов конечных графов факт существования или отсутствия гамильтоновой цепи или цикла легко устанавливается. Например, дерево не может содержать гамильтоновой цепи, если оно само не является цепью. (Докажите это!) Аналогично, рис. 3.5 иллюстрирует общий факт, что двудольный граф, имеющий нечетное число вершин, не содержит гамильтонового цикла. (Каждый простой цикл в двудольном графе имеет четное число ребер и, следовательно, содержит четное число вершин.) С другой стороны, каждый полный граф, очевидно, содержит множество гамильтоновых ццклов,
Рис. 3.5, Несмотря на наличие частных результатов, относящихся к специальным классам графов, в общем случае задача определения гамильтоновых цепей и циклов недостаточно изучена. Так, например, до сих пор нет эффективной процедуры нахождения гамильтоновой цепи в произвольном графе. Более того, нет даже хороших методов доказательства существования такой цепи. Знаменитый математик Гамильтон придумал в свое время деловую игру, цель которой состояла в нахождении гамильтоиова цикла в графе, определенном вершинами и ребрами заданного многогранника. Описание ее можно найти в работе [20] (библ. к гл. 1). Замечание. Задача нахождения гамильтоиова цикла может рассматриваться как частный случай следующей задачи. В графе Упражнения (см. скан) (см. скан) Вернемся теперь к очень интересной теме, связанной с понятием гамильтоновых циклоз. Неориентированный граф является гипогамильтоновым Лемма 3.9. Если Лемма 3.10. Если Доказательство. Каждая вершина принадлежит простому циклу длины Лемма 3.11. Если Доказательство. Если Лемма 3.12. Если Доказательство. Утверждение непосредственно следует из леммы 3.11. Лемма 3.13. Если Лемма 3.14. Если Доказательство. Искомый цикл показан на рис. 3.8. Теорема 3.15. Если Доказательство. Утверждение следует из лемм 3.10 и 3.12. Теорема 3.16. Если
Рис. 3.8.
Рис. 3.9 и 3.10. Теорема 3.17. Если НН-графом порядка 8, то по лемме 3.11 он является одним из двух графов, приведенных на рис. 3.9 и 3.10, каждый из которых имеет гамильтоиов цикл в соответствии с леммой 3.14. Теорема 3.18. Если Доказательство. По лемме 3.13, если Ту же картину можно было бы получить (рис. 3.12), если вершина 2 оказалась смежна с вершиной 7. Заметим, что каждое ребро соединяет две вершины, номера которых имеют разную четность. Таким образом, граф, полученный из Теорема 3.19. Если Доказательство. Пусть некоторая вершина имеет степень 4, тогда Теорема 3.20. Граф рис. 3.14 является НН-графом. Доказательство. Удаляя вершину
Рис.
Рис. 3.12.
Рис. 3.13.
Рис. 3.14. Другие случаи получаются симметрично. Таким образом, исходный граф не содержит гамильтоиова цикла, Последовательность вершин (10, 1 и 2) является началом максимальных простых цепей (6, 5, 4, 3, 8, 7), (6, 5, 4, 3, 8, 9), (6, 5, 9, 8, 3, 4), (6, 5, 9, 8. 7), (6, 7, 8, 3, 4, 5, 9), (6, 7, 8, 9, 5, 4, 3), (3, 4, 5, 6, 7, 8, 9), (3, 4, 5, 9, 8, 7, 6), (3, 8, 7, 6, 5, 4), (3, 8, 7, 6, 5, 9), (3, 8, 9, 5, 4), (3, 8, 9, 5, 6, 7) и ни одна из них не образует гамильтоиова цикла. В силу симметрии то же самое справедливо для всех других цепей. Теорема 3.21. Если Доказательство. Перенумеруем вершины 1. Граф, в котором вершина 10 смежна с вершинами 1, 4,7 и который по лемме 3.14 и теореме 3.19 дает граф рис. 3.13 или граф рис. 3.15. Но последний имеет гамильтоиов цикл (10, 1, 2, 9, 8, 7, 6, 5, 4, о, 4, 10). 2. Граф, в котором вершина 10 смежна с вершинами
Рис. 3.15.
Рис. 3.16.
Рис. 3.17.
Рис. 3. Граф, в котором вершина 10 смежна с вершинами 1, 3, 5 и который приводит к графам, показанным на рис. 3.17 и 3.18, имеющим соответственно гамильтоповы циклы (10, 1, 2, 3, 4, 7, 8,9,6, 5,10) и (10,1,2,7,8,9,6, 5, 4, 3, 10). Понятия гамильтоновых цепей и циклов могут быть непосредственно обобщены на случай ориентированных графов. Простой путь или контур, который проходит через все вершины графа, называется соответственно гамильтоновым путем или гамильтоновым контуром. Гамильтоновы пути и контуры в ориентированном графе определяют гамильтоновы цепи и циклы в соответствующем неориентированном графе. Они, кроме всего прочего, требуют определенной ориентации дуг; поэтому появление их в графах будет еще более редким. Приведем несколько результатов, относящихся к специальному классу ориентированных графов. Обыкновенный ориентированный граф (антисиммет-рнческий граф) будет называться полным, если каждая пара различных вершин связана дугой. Таким образом, такой полный граф можно получить из полного обыкновенного неориентированного графа (который не имеет петель и параллельных ребер) с помощью произвольной ориентации его ребер. В отличие от обыкновенного полного ориентированного графа, который имеет множество гамильтоновых циклов, полный антисимметрический граф может и не иметь гамильтоновых контуров. Например, если в графе существует вершина Если мы не требуем возвращения в начальную вершину (т. е. ищем гамильтоиов путь), то задача несколько упрощается. Кёниг доказал, что каждый антисимметрический полный граф содержит, по крайней мере, один гамильтоиов путь. (Доказательство см. на стр. 30 и 31 у Кёнига в книге [16] библ. к главе 1.) Редей [12] показал, что на самом деле в таком графе существует нечетное число гамильтоновых путей. Камьон [2], исследуя единственность, получил следующую теорему. Теорема 3.22. Антисимметрический полный граф Доказательство. Если перестановки вершин и отличаются, по крайней мере, одной инверсией. Следовательно, существуют две вершины, каждая из которых соединяется с другой путем. Это означает существование контура. С другой стороны, если контур существует, то способ построения, предложенный Кёнигом и описанный в его книге [16, библ. к гл. 1], отмеченной выше, приводит к различным гамильтоновым путям. Ориентированный граф называется тотальным, если каждая пара различных вершин соединяется, по крайней мере, в одном направлении путем. Заметим, что антисимметрический полный граф является частным случаем тотального графа, в котором вышеупомянутые пути представляются одиночными дугами. Все сильно связные графы также являются тотальными. Следующий результат, полученный Камьоном и приводимый без доказательства, применим ко всем тотальным графам. Теорема 3.23. Необходимым и достаточным условием того, что ориентированный граф без контуров содержит в точности один гамильтонов путь, является тотальность графа. Интересной задачей, связанной с поиском кратчайшего гамнльтонова контура, является задача коммивояжера. Коммивояжер должен посетить по одному разу каждый из (см. скан) (см. скан) Интересно заметить, что кратчайший замкнутый маршрут, связывающий Рассмотрим интересный и простой подход к решению задачи коммивояжера, предложенный П. С. Райяном (Р. С. Ryan), сотрудником Лаборатории военно-морских исследований. Этот подход не более эффективен, чем другие, однако он способствует несколько более глубокому пониманию существа вопроса. Напомним, что задача состоит в нахождении кратчайшего гамильтоиова цикла, когда каждому ребру графа приписана некоторая длина. Граф не обязательно должен быть полным. Если граф неполный, то существование гамильтоновых циклов не гарантируется, и следовательно, задача может и не иметь решения. Если в графе присутствуют параллельные ребра, то, очевидно, можно отбросить все ребра, кроме кратчайшего в каждой группе параллельных ребер. Предлагаемый алгоритм за конечное число шагов находит кратчайший гамильтоиов цикл или устанавливает его отсутствие. Будем предполагать, что рассматриваемый граф является плоским и обыкновенный плоский граф имеет, по крайней мере, одну вершину степени 5 или меньше (факт, установленный в главе 4). Кроме того, предполагается также, что длины ребер выражаются положительными числами. Начиная с произвольной вершины Рассмотрим теперь один из подграфов 1. 2. Условия 1 и 2 гарантируют, что полученная цепь является простым циклом. Возможно, на некотором шаге несколько ребер могут удовлетворять условиям добавления к цепи в одной и той же вершине. В этом случае выбирается ребро наименьшей длины, а остальные ребра запоминаются. Позднее должно быть проверено каждое из оставшихся ребер. Если ни одно ребро не удовлетворяет условиям 1 и 2 и не может быть присоединено к конечной вершине Пусть
на каждом шаге описанной процедуры (т. е. для каждого значения Поясним метод на примере графа На рис. 3.21 показана последовательность шагов, требуемых для построения первого гамильтоиова цикла
Рис. 3.19. в
Рис. 3.20. Числа в круглых скобках у вершин означают число ребер (отмеченных), оставшихся для исследования в данной вершине.
Рис. 3.21. Возвращаясь к рассмотрению альтернатив на шаге 2 (см. выше), получим картину, показанную на рис. 3.22.
Рис. 3 22. Заметим, что ребро длины 5 не является допустимой альтернативой на шаге 2 (рис. 3.22), ибо мы уже (кликните для просмотра скана) получили гамильтоиов цикл длины 13. Так как к полученной цепи нельзя добавить ни одного оставшегося ребра, то эта цепь забывается и граф Рис. 3.23 и 3.24 поясняют шаги, необходимые для полного рассмотрения графов Рассмотренный метод хорошо работает для небольших графов, подобных приведенному в примере, и, вероятно, применим к плоским графам несколько большей размерности (при его графической реализации). Однако реализация метода на вычислительной машине сопряжена со значительными трудностями, особенно при проверке условия 2 (которое очень просто проверяется графически). (см. скан)
|
1 |
Оглавление
|