Путевая машинная станция
- 1 year ago
- 0
- 0
В теории графов путевая декомпозиция графа G — это, неформально, представление графа G в виде «утолщённого» пути , а путевая ширина графа G — это число, измеряющее, насколько граф G был утолщён. Более формально, путевая декомпозиция — это последовательности вершин подмножества графа G , такие, что конечные вершины каждого ребра появляются в одном из подмножеств и каждая вершина принадлежит (хотя бы) одному из множеств , а путевая ширина на единицу меньше размера наибольшего множества в такой декомпозиции. Путевая ширина известна также как интервальная толщина (на единицу меньше размера наибольшей клики интервального суперграфа графа G ), величина вершинного разделения или вершинно-поисковое число .
Путевая ширина и путевая декомпозиция являются тесной аналогией с древесной шириной и древесной декомпозицией . Они играют ключевую роль в теории миноров графа — семейства графов, замкнутых относительно миноров графа и не включающих все леса могут быть охарактеризованы как имеющие ограниченную путевую ширину , и «вихри», возникающие в общей структурной теорией семейств графов, замкнутых по минорам, имеют ограниченную путевую ширину . Путевая ширина и графы с ограниченной путевой шириной имеют приложение в разработке СБИС , визуализации графов и компьютерной лингвистике .
Задача нахождения путевой ширины произвольных графов является NP-трудной . Более того, NP-трудна даже задача аппроксимации путевой ширины точно . Однако эта задача является — проверка, имеет ли граф путевую ширину k , может быть решена за время, которое линейно зависит от размера графа, но суперэкспоненциально от k Кроме того, для некоторых специальных классов графов, таких как деревья , путевая ширина может быть вычислена за полиномиальное время, независимое от k . Многие задачи теории графов можно эффективно решить на графах с ограниченной путевой шириной при помощи динамического программирования на путевой декомпозиции графа . Древесную декомпозицию можно также использовать для оценки алгоритмов динамического программирования на графах с ограниченной древесной шириной .
В первой знаменитой серии статей о минорах минорах графа Робертсон и Сеймур определили путевую декомпозицию графа G как последовательность подмножеств X i вершин графа G с двумя свойствами:
Второе из этих двух свойств эквивалентно требованию, что подмножества, содержащие любую вершину, образуют непрерывную подпоследовательность всей последовательности. На языке более поздней серии работ Робертсона и Сеймура о минорах графа путевая декомпозиция — это древесная декомпозиция ( X , T ), в которой нижележащее дерево T декомпозиции является путём .
Ширина путевой декомпозиции определяется тем же способом, что и для древесной декомпозиции, как max i | X i | − 1, а путевая ширина графа G равна минимальной ширине всех путевых декомпозиций графа G . Вычитание единицы из размера X i в этом определении мало влияет на большинство приложений путевой ширины, но зато делает путевую ширину пути равной единице.
Как пишет Бодлаендер , путевая ширина может быть описана многими эквивалентными способами.
Древесную декомпозицию можно описать как последовательность графов G i , которые склеены путём отождествления пар вершин в соседних графах последовательности, и в результате этого склеивания образуется граф G . В качестве графов G i можно взять порождённые подграфы множеств X i в первом определении путевой декомпозиции, со склеиванием вершин в соседних порождённых подграфах, если эти вершины порождены той же самой вершиной из G . В другом направлении можно взять X i в качестве множеств вершин графов G i . Ширина древесной декомпозиции тогда на единицу меньше максимального числа вершин в одном из графов G i .
Путевая ширина любого графа G на единицу меньше наименьших кликового числа интервального графа , содержащего G в качестве подграфа . То есть для любой древесной декомпозиции графа G можно найти интервальный суперграф, и для любого интервального суперграфа G можно найти древесную декомпозицию графа G , ширина декомпозиции которой на единицу меньше кликового числа интервального графа.
В одном направлении, предположим, что древесная декомпозиция графа G задана. Тогда можно представить вершины декомпозиции как точки на прямой (в том порядке, в котором они входят в путь) и представить каждую вершину v как замкнутый интервал, имеющий эти точки в качестве конечных точек. Например, пусть ( X 1 , . . . , X r ) — путевая декомпозиция графа G , точки на прямой — [1, . . . , r], тогда представление вершины v — это интервал . Тогда древесная декомпозиция вершин, содержащих v , соответствует представляющим (т.е. конечным точкам) интервала для v . Граф пересечений интервалов, образованный из вершин G — это интервальный граф, содержащий G в качестве подграфа. Его максимальные клики задаются множеством интервалов, содержащих представляющие точки, и их размер наибольшей клики на единицу больше путевой ширины графа G .
В другом направлении, если G — подграф интервального графа с кликовым числом p + 1, то граф G имеет древесную декомпозицию ширины p , вершины которой заданы максимальными кликами интервального графа. Например, интервальный граф, показанный с его интервальным представлением на рисунке, имеет древесную декомпозицию с пятью вершинами, соответствующими пяти максимальным кликам ABC , ACD , CDE , CDF и FG . Размер максимальной клики равен трём, а ширина этой древесной декомпозиции равна двум.
Эта эквивалентность между путевой шириной и интервальной толщиной является тесной аналогией с эквивалентностью между древесной шириной и минимальным кликовым числом (минус единица) хордального графа , для которого данный граф является подграфом. Интервальные графы являются специальным случаем хордальных графов, а хордальные графы можно представить в виде графов пересечений поддеревьев общих деревьев, что обобщает подход, при котором интервальные графы интерпретируются как графы пересечений подпутей пути.
Предположим, что вершины графа G линейно упорядочены . Тогда величина вершинного разделения графа G — это наименьшее число s , такое, что для каждой вершины v максимум s вершин предшествуют v в упорядочении, которые имеют v или одну из следующих за ней вершин в окрестности. Величина вершинного разделения графа G — это минимальная величина вершинного разделения любого линейного любого линейного упорядочения графа G . Величину вершинного разделения ввели Эллис, Садбороу и Тёрнер и она равна путевой ширине графа G . Это следует из ранее упомянутой эквивалентности интервальных графов и кликовых чисел — если G является подграфом интервального графа I , представленного (как на рисунке) таким образом, что все концы интервалов различны, то порядок левых концов интервалов графа I имеют величину вершинного разделения на единицу меньше кликового числа графа I . В другом направлении, из линейного упорядочения графа G можно получить интервальное представление, в котором левая конечная точка интервала для вершины v является позицией в упорядочении, а правая конечная точка является позицией соседа v , который в упорядочении последний.
Игра «поиск вершины» на графе — это вид игры преследования-уклонения , в которой множество преследователей совместно пытаются выследить беглеца, спрятавшегося в графе. Преследователи размещаются в вершинах графа, в то время как беглец может находиться на любом ребре графа, его местоположение и ходы преследователям не видны. Во время очередного хода некоторые (или все) преследователи могут перейти (произвольным образом, не обязательно вдоль рёбер) из одной вершины в другую, а беглец движется затем вдоль любого пути на графе, но не может проходить через занятые преследователями вершины. Беглец пойман, когда оба конца дуги, на которой он находится, заняты преследователями. Вершинно-поисковое число графа — это минимальное число преследователей, необходимых для гарантированной поимки беглеца вне зависимости от его поведения. Как показали Кироузис и Панадимитриу , вершинно-поисковое число графа равно его интервальной толщине. Оптимальной стратегией для преследователей служат ходы, в которых преследователи последовательно образуют разделяющие множества линейного упорядочивания с минимальной величиной вершинного разделения.
Любой граф с n вершинами и путевой шириной k имеет максимум k ( n − k + ( k − 1)/2)) рёбер, и максимальные графы с путевой шириной k (графы, к которым нельзя добавить ребро без увеличения путевой ширины) имеют в точности это число рёбер. Максимальный граф с путевой шириной k должен быть либо k -путём, либо k -гусеницей, т.е. одного из двух специальных видов k -дерева. k -дерево — это хордальный граф с в точности n − k максимальными кликами , каждая из которых содержит k + 1 вершин. В k -дереве, которое не является само по себе ( k + 1)-кликой , каждая максимальная клика либо делит граф на две или более компоненты, либо содержит единичную листовую вершину, вершину, которая принадлежит только одной максимальной клике. k -путь — это k -дерево с максимум двумя листьями, а k -гусеница — это k -дерево, которую можно разбить на k -путь и множество k -листов, каждый из которых смежен с сепаратором k -клики k -пути. В частности, максимальные графы путевой ширины единица — это в точности графы-гусеницы .
Поскольку путевые декомпозиции являются специальными случаями древесных декомпозиций, путевая ширина любого графа больше либо равна его древесной ширине . Путевая ширина также меньше или равна ширине разреза, минимального числа рёбер, пересекающих любое сечение между вершинами с меньшим индексом и большим индексом в оптимальном линейном упорядочении вершин графа. Это следует из факта, что величина вершинного разделения, число вершин с меньшим индексом с соседами, имеющими больший индекс, не больше числа разрезающих рёбер . По такой же причине ширина разреза не превосходит путевой ширины, умноженной на максимальную степень вершин в данном графе .
Любой лес с n вершинами имеет путевую ширину O(log n ) . Для леса можно всегда найти постоянное число вершин, удаление которых приводит к лесу, который можно разбить на два меньших леса с максимум 2 n /3 вершин в каждом из этих лесов. Линейное упорядочение, образованное рекурсивным применением такого разбиения, имеет логарифмическое поисковое число для вершин. Та же техника, применённая к древесной декомпозиции графа, показывает, что если древесная ширина графа G с n вершинами равна t , то путевая ширина графа G равна O( t log n ) . Поскольку внешнепланарные графы , параллельно-последовательные графы и графы Халина все имеют ограниченную древесную ширину, все они имеют максимум логарифмическую путевую ширину.
Кроме того, что путевая ширина связана с древесной шириной, она связана с кликовой шириной и шириной разреза через рёберные графы . Рёберный граф L ( G ) графа G имеет вершину для каждого ребра графа G и две вершины в L ( G ) смежны, если соответствующие два ребра имеют G общие конечные точки. Любое семейство графов имеет ограниченную путевую ширину тогда и только тогда, когда его рёберные графы имеют ограниченную линейную кликовую ширину, где линейная кликовая ширина заменяет операцию объединения в определении кликовой ширины на операцию присоединения отдельной новой вершины . Если связный граф с тремя или более вершинами имеет максимальную стпепень 3, его ширина разреза равна величине вершинного разделения его рёберного графа .
В любом планарном графе путевая ширина в худшем случае пропорциональна квадратному корню от числа вершин . Один из способов поиска путевой декомпозиции с такой шириной — (подобно путевой декомпозиции с логарифмической шириной лесов, описанной выше) использовать теорему о планарном разбиении , чтобы найти множество из O(√ n ) вершин, удаление которых разбивает граф на два подграфа с максимум 2 n /3 вершинами в каждом, и соединить рекурсивно построенные для этих двух подграфов путевые декомпозиции. Та же техника применима к любому классу графов, для которых выполняется подобная теорема о разбиении . Поскольку любое семейство графов, замкнутое относительно взятия миноров, как и в случае планарных графов, имеет разбивающее множество вершин размера O(√ n ) , отсюда следует, что путевая ширина графов в любом фиксированном замкнутом относительно миноров семействе снова равна O(√ n ). Для некоторых классов планарных графов путевая ширина графа и путевая ширина его двойственного графа должны лежать в интервале, границы которого линейно зависят от значений — такие границы известны для двусвязных внешнепланарных графов и для графов многогранников . Для двусвязных планарных графов путевая ширина двойственного графа меньше, чем путевая ширина рёберного графа . Остаётся открытым вопрос, являются ли путевые ширины планарного графа и его двойственного всегда в линейных границах для остальных случаев.
Для некоторых классов графов доказано, что путевая ширина и древесная ширина всегда равны друг другу — это верно для кографов , графов перестановки , дополнений графов сравнимости и графов сравнимости .
В любом кубическом графе , или, более обще, любом графе с максимальной степенью вершин 3, путевая ширина не превосходит n /6 + o( n ), где n — число вершин графа. Существуют кубические графы с путевой шириной 0.082 n , но неизвестно, как сократить этот разрыв между и верхней границей n /6 .
Определение, не превосходит ли путевая ширина заданное значение k для заданного графа, является NP-полной задачей, если k является входным параметром . Наиболее известные временные границы ( ) вычисления путевой ширины произвольного графа с n вершинами имеют вид O(2 n n c ) при некоторой константе c . Тем не менее, известны некоторые алгоритмы вычисления путевой декомпозиции с большей эффективностью, если путевая ширина мала, если класс входных графов ограничен, или требуется вычислить путевую ширину приближённо.
Путевая ширина — для любой постоянной k можно проверить, не превосходит ли путевая ширина величину k , и если не превосходит, найти путевую декомпозицию ширины k за линейное время . В целом, эти алгоритмы работают в два этапа. На первом этапе используется предположение, что граф имеет путевую ширину k , для поиска путевой декомпозиции или древесной декомпозиции. Эта декомпозиция не оптимальна, но её ширина может быть ограничена функцией от k . На втором этапе применяется алгоритм динамического программирования для поиска оптимальной декомпозиции. Однако временные границы для известных алгоритмов этого типа экспоненциальны от k 2 и не представляют практического интереса, разве что для малых значений k . Для случая k = 2 Фляйтер дал алгоритм с линейным временем работы, основанный на структурной декомпозиции графов с путевой шириной 2 .
Бодлаендер дал обозрение сложности задач вычисления путевой ширины на различных специальных классах графов. Определение, превосходит ли путевая ширина графа G величину k , остаётся NP-полной задачей, если G берётся из графов ограниченной степени , планарные графы , планарных графов ограниченной степени , хордальных графов , хордальных домино , дополнений графов сравнимости , и двудольных дистанционно-наследуемых графов . Отсюда немедленно следует, что задача также NP-полна для семейств графов, содержащих двудольные дистанционно-наследуемые графы , включая двудольные графы, хордальные двудольные графы дистанционно-наследуемые графы и круговые графы .
Однако путевую ширину можно вычислить за линейное время для деревьев и лесов . Можно вычислить эту величину за полиномиальное время для графов ограниченной древесной ширины, в которые входят параллельно-последовательные графы , внешнепланарные графы и графы Халина , а также расщепляемые графы , дополнения хордальных графов , графы перестановки , кографы , графы дуг окружности , графы сравнимости интервальных порядков , и, конечно, сами интервальные графы , поскольку для них путевая ширина просто на единицу меньше максимального числа интервального накрытия любой точки в интервальном представлении графа.
NP-трудной задачей является аппроксимация путевой ширины графа аддитивной константой . Лучший известный аппроксимационный коэффициент аппроксимационных алгоритмов полиномиального времени для путевой ширины равен O((log n ) 3/2 ) . Ранние аппроксимационные алгоритмы для путевой ширины можно найти у Бодлаендера, Гилберта, Хафштейнссона, Клокса и Гуха . Для аппроксимации ограниченных классов графов см. книгу Клокса и Бодлаендера .
Минор графа G — это другой граф, образованный из G путём стягивания рёбер, удаления рёбер и вершин. Миноры графа имеют глубокую теорию, в которой некоторые некоторые важные результаты используют путевую ширину.
Если семейство F графов замкнуто по отношению к операции взятия миноров (любой минор члена семейства F также содержится в F ), тогда по теореме Робертсона – Сеймура семейство F можно охарактеризовать как графы, не содержащие миноров из X , где X — конечное множество запрещённых миноров . Например, теорема Вагнера утверждает, что планарные графы — это графы, которые не содержат ни полного графа K 5 , ни полного двудольного графа K 3,3 в качестве миноров. Во многих случаях свойства F и свойства X тесно связаны, и первый результат такого типа получили Робертсон и Сеймур и он связывает существование ограниченной путевой ширины с наличием леса в семействе запрещённых миноров. Конкретнее, определим семейство F графов как имеющее ограниченную путевую ширину , если существует константа p , такая, что любой граф из F имеет путевую ширину, не превосходящую p . Тогда минорно-замкнутое семейство F имеет ограниченную путевую ширину тогда и только тогда, когда множество X запрещённых миноров для F включает хотя бы один лес.
В одном направлении этот результат можно доказать прямо — а именно, что если X не содержит хотя бы один лес, то свободные от X -миноров графы не имеет ограниченной путевой ширины. В этом случае свободные от X -миноров графы включают все леса, и, в частности, совершенные бинарные деревья . Но совершенные бинарные деревья с 2 k + 1 уровнями имеют путевую ширину k , так что в этом случае свободные от X -миноров графы имеют неограниченную путевую ширину. В обратном направлении, если X содержит лес с n вершинами, то свободные от X -миноров графы имеют путевую ширину, не превосходящую n − 2 .
Свойство иметь путевую ширину не больше p является, само по себе, замкнутым по взятию миноров свойством — если G имеет путевую декомпозицию с шириной, не превосходящей p , то та же самая путевая декомпозиция остаётся верной, если удалить любое ребро из G , а также любая вершина может быть удалена из графа G и его путевой декомпозиции без увеличения ширины. Стягивание ребра также может быть завершено без увеличения ширины декомпозиции путём слияния подпутей, представляющих два конца стягиваемого ребра. Таким образом, графы с путевой шириной, не превосходящей p , могут быть охарактеризованы множеством X p запрещённых миноров .
Хотя X p обязательно включает по меньшей мере один лес, неверно, что все графы в X p являются лесами. Например, X 1 состоит из двух графов, дерева с семью вершинами и треугольника K 3 . Однако множество деревьев в X p можно точно описать — это в точности те деревья, которые можно образовать из трёх деревьев из X p − 1 путём образования нового корня и соединения его рёбрами с произвольно выбранными вершинами меньших деревьев. Например, дерево с семью вершинами в X 1 образовано из деревьев с двумя вершинами (одно ребро) из X 0 . Основываясь на этом построении, можно показать, что число запрещённых миноров в X p не меньше ( p !) 2 . Полное множество X 2 запрещённых миноров для графов с путевой шириной 2 вычислено. Это множество содержит 110 различных графов .
Структурная теорема графов для семейств замкнутых по минорам графов утверждает, что для любого семейства F , в котором графы могут быть разложены на cуммы по клике графов, которые могут быть вложены в поверхности ограниченного рода вместе с ограниченным числом верхушек и вихрей для каждой компоненты суммы по клике. Верхушка — это вершина, которая смежна со всеми вершинами компоненты, а вихрь — это граф ограниченной путевой ширины, который приклеивается к грани компоненты с вложением ограниченного рода. Циклический порядок вершин вокруг грани, в которую вихрь вложен, должен быть совместим с древесной декомпозицией вихря в том смысле, что разрыв цикла для образования линейного упорядочения должен привести к упорядочению с ограниченной величиной вершинного разделения . Эта теория, в которой путевая ширина тесно связана с произвольными семействами графов, замкнутых относительно миноров, имеет важное алгоритмическое применение .
При разработке СБИС задача разделения вершин первоначально изучалась как путь разделения цепей на меньшие подсистемы с малым числом компонент на границе между системами .
Отцуки, Мори, Кух и Кашивабара использовали интервальную толщину для моделирования числа проводников, необходимых в одномерном расположении цепей СБИС, образованных множеством модулей, которые необходимо соединить системой сетей. В их модели можно образовать граф, в котором вершины представляют цепи и в которой две вершины соединены ребром, если их цепи соединены к одному и тому же модулю. То есть если модули и цепи понимаются как вершины и гиперрёбра гиперграфа , то граф, образованный из них, является рёберным графом гиперграфа . Интервальное представление суперграфа этого рёберного графа вместе с раскраской суперграфа описывает расположение цепей вдоль горизонтальных дорожек (одна дорожка на каждый цвет), так что модули могут быть расположены вдоль дорожек в линейном порядке и соединены с нужными цепями. Из факта, что интервальные графы являются совершенными , следует, что число цветов, необходимых для оптимальной раскладки такого типа, равно кликовому числу интервального дoполнения графа цепей.
Матричная укладка переключателей является специфическим видом КМОП СБИС укладки для цепей алгебры логики . В матричных укладках переключателей сигнал распространяется вдоль "линий" (вертикальных отрезков), в то время как каждый переключатель образуется последовательностью элементов, располагающихся на горизонтальном отрезке. Таким образом, горизонтальные отрезки для каждого переключателя должны пересекать вертикальные отрезки для каждой линии, которая служит входом или выходом переключателя. Как и в укладках Отцуки, Мори, Куха и Кашивабара укладка такого типа, минимизирующая число вертикальных прямых, может быть вычислена путём вычисления путевой ширины графа, имеющего прямые в качестве вершин, а пары прямых, принадлежащих переключателю, в качестве рёбер . Тот же алгоритмический подход может быть также использован для моделирования задач укладки в .
Путевая ширина имеет несколько приложений для визуализации графов :
При трансляции высокоуровневых языков программирования путевая ширина возникает в задаче переупорядочения линейного кода (то есть кода без управляющей логики — переходов и циклов) таким образом, что все значения, вычисленные в коде, могут быть в машинные регистры , а не вытеснены в основную память. В этом приложении оттранслированный код представляется в виде направленного ациклического графа (НАГ), в котором вершины представляют входные значения для кода и значения, вычисленные в результате операций внутри кода. Ребро из вершины x в вершину y в этом НАГ представляет факт, что значение x является одним из входных параметров для операции y . Топологическая сортировка вершин в этом НАГ представляет правильную сортировку кода, а число регистров, нужных для выполнения кода в этом порядке задаётся величиной вершинного разделения упорядочения .
Для любого фиксированного числа w регистров в машине можно определить за линейное время, может ли фрагмент линейного кода быть переупорядочен так, что для кода потребуется максимум w регистров. Если величина вершинного разделения топологического упорядочения не превосходит w , минимальное вершинное разделение среди всех упорядочений не может быть больше, так что неориентированные графы, образованные игнорированием ориентации НАГ, описанного выше, должны иметь путевую ширину, не превосходящую w . Можно проверить, верно ли это с помощью известных фиксированно-параметрически разрешимых алгоритмов для путевой ширины, и если верно, найти путевую декомпозицию для неориентированных графов за линейное время в предположении, что w является константой. Как только древесная декомпозиция найдена, топологическое упорядочение с шириной w (если такое существует) может быть найдено с использованием динамического программирования, опять же за линейное время .
Карнаи и Туца описали приложение путевой ширины для обработки естественного языка . В этом приложении предложения моделируются в виде графов, в которых вершины представляют слова, а рёбра представляют связи между словами. Например, если прилагательное модифицирует существительное, то граф имеет ребро между этими двумя словами. Ввиду ограниченного объёма кратковременной человеческой памяти Миллер , Корнаи и Туца утверждают, что этот граф должен иметь ограниченную путевую ширину (конкретнее, они утверждают, что эта путевая ширина не превосходит шести), в противном случае люди не могли бы распознавать речь правильно.
Многие задачи теории графов могут быть эффективно решены на графах с малой путевой шириной при помощи динамического программирования , опираясь на путевую декомпозицию графа . Например, если линейное упорядочение вершин графа G с n вершинами задано и величина вершинного разделения равна w , то можно найти наибольшее независимое множество графа G за время O(2 w n ) . На графе с ограниченной путевой шириной этот подход ведёт к фиксированно-параметрически разрешимым алгоритмам, параметризованным по путевой ширине . Такие результаты не часто встречаются в литературе, поскольку они принадлежат группе похожих алгоритмов, параметризованных по древесной ширине. Однако путевая ширина появляется даже в алгоритмах динамического программирования, основанных на древесной ширине, при измерении этих алгоритмов .
Тот же самый метод динамического программирования может быть применён к графам с неограниченной путевой шириной, что приводит к алгоритмам, решающим непараметризованные задачи на графах за экспоненциальное время . Например, комбинация подхода динамического программирования с фактом, что кубические графы имеют путевую ширину n /6 + o( n ), показывает, что для кубических графов максимальное независимое множество можно построить за время O(2 n /6 + o( n ) ), что быстрее известных до этого методов . Похожий подход ведёт к улучшенным алгоритмам экспоненциального времени для задач максимального разреза и минимального доминирующего множества для кубических графов и для некоторых других NP-трудных оптимизационных задач .