Научная статья на тему 'Методы разработки FPT-алгоритмов на графах ограниченной древовидной ширины'

Методы разработки FPT-алгоритмов на графах ограниченной древовидной ширины Текст научной статьи по специальности «Математика»

CC BY
116
34
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Быкова Валентина Владимировна

A method for designing FPT-algorithms by means of dynamic programming based on the tree decomposition is investigated. Some problems limiting the application of this method in practice are pointed. The problem of memory is solved by using a binary tree decomposition of the separator, which reduces the theoretical and the actual size of the dynamic programming tables. The technique of tables in the language of relational algebra is described.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Methods for designing FPT-algorithms on graphs of limited treewidth

A method for designing FPT-algorithms by means of dynamic programming based on the tree decomposition is investigated. Some problems limiting the application of this method in practice are pointed. The problem of memory is solved by using a binary tree decomposition of the separator, which reduces the theoretical and the actual size of the dynamic programming tables. The technique of tables in the language of relational algebra is described.

Текст научной работы на тему «Методы разработки FPT-алгоритмов на графах ограниченной древовидной ширины»

УДК 519.178

МЕТОДЫ РАЗРАБОТКИ ЕГХ-АЛГОРИТМОВ НА ГРАФАХ ОГРАНИЧЕННОЙ ДРЕВОВИДНОЙ ШИРИНЫ

В. В. Быкова

Параметризированный подход к оценке сложности вычислений — естественный способ справиться с трудноразрешимостью задач, которые охарактеризованы как МР-трудные в соответствии с классической дихотомией P против NP [1]. Основная идея параметризированного подхода состоит в том, чтобы с помощью некоторого числового параметра учесть структуру исходных данных и выделить основной источник трудноразрешимости задачи. Параметризированный подход позволяет исследовать различные параметризации одной и той же задачи, каждая из которых может приводить или не приводить к ЕРТ-алгоритмам. Такие алгоритмы представляют интерес для алгоритмической практики, так как при ограниченном значении параметра время их выполнения полиномиально зависит от длины входа алгоритма [2].

В настоящее время уже известны некоторые специальные методы проектирования ЕРТ-алгоритмов для задач, решение которых ищется в конечной области [3, 4]. При этом поиск решения подразумевает нахождение одного из допустимых решений (в задачах разрешения и удовлетворения ограничений) или поиск оптимального допустимого решения (в задачах комбинаторной оптимизации). Такие задачи в литературе часто называют задачами выбора. Большинство этих задач формулируются непосредственно как задачи на графах. Другие допускают графовое представление.

В работе рассматриваются три наиболее цитируемых метода разработки ЕРТ-алго-ритмов для задач выбора: параметрическая редукция (кетпеИгаНоп), поиск по дереву и метод динамического программирования на основе дерева декомпозиции. Суть метода параметрической редукции состоит в полиномиальном по времени преобразовании каждого экземпляра (/\,к\) параметризированной задачи П в экземпляр (/2,к2) этой задачи так, что к2 < к\. Результатом выполнения редукции является экземпляр (/2, к2) задачи П, называемый ядром. К ядру применяется полный перебор или какой-либо другой точный метод решения. Известно [1], что параметризированная задача является ЕРТ-разрешимой относительно некоторого параметра тогда и только тогда, когда она может быть редуцирована по этому параметру на основе конечного набора правил редукции. Например, для задачи о вершинном покрытии со стандартным параметром к (размером покрытия) редукция сводится к многократному применению двух правил: удаление изолированной вершины без изменения значения параметра к; удаление вершины, степень которой больше к, и уменьшение параметра к на единицу. Преимущество метода параметрической редукции состоит в том, что он легко программируется, а трудность — нужно располагать набором правил редукции, которые специфичны для каждой отдельной задачи.

Другой известный метод построения ЕРТ-алгоритмов — это поиск по дереву. Суть метода [4]: выделение конечного пространства поиска, размер которого зависит только от значения параметра, и представление этого пространства в виде дерева. При построении дерева поиска надо располагать правилом выделения узлов-потомков. Такие правила, конечно же, характерны для каждой решаемой задачи выбора. Например, для задачи о вершинном покрытии графа О = (V, Е) со стандартным параметром к создается бинарное корневое дерево поиска высоты к. Корню этого дерева приписываются в качестве метки множество Z = 0 и граф О' = О. Затем в графе О' выбирается некоторое ребро е = {и, V}. Очевидно, что всякое вершинное покрытие для О содержит

либо вершину и, либо вершину V. Исходя из этого, корневой узел порождает два узла-потомка, первый из них получает метку Z = Z и {и} и О' = О' — и, а второй — метку Z = Z и {V} и О' = О' — V. Далее этот процесс повторяется для каждого вновь созданного узла. Таким образом, формируемые в метках узлов множества Z представляют собой возможные вершинные покрытия, а графы — то, что остается от О' для дальнейшего рассмотрения. На каждом уровне дерева поиска размер возможных вершинных покрытий увеличивается ровно на единицу. Любому узлу, который маркирован безре-берным графом О', приписывается множество Z, определяющее вершинное покрытие графа О'. Следовательно, если на высоте не более чем к возникает узел с безребер-ным графом О', то искомое вершинное покрытие — вершинное покрытие размером не более к — найдено, в противном случае такого покрытия для графа О не существует. Алгоритм поиска по дереву затрачивает на свою работу 0(п2й) времени, где п = IV|, и потому является ЕРТ-алгоритмом относительно параметра к.

Следует отметить, что методы параметрической редукции и поиска по дереву, вообще говоря, реализуют традиционные стратегии разработки алгоритмов: первый из них воплощает принцип «уменьшай и властвуй», а второй — «разделяй и властвуй». Особенность лишь в том, что здесь они нацелены на получение ЕРТ-алгоритмов. Основной недостаток этих методов — сильная привязка к специфике решаемых задач.

Наиболее универсальный метод разработки ЕРТ-алгоритмов для задач выбора — метод динамического программирования на основе дерева декомпозиции, автором которого считается Г. Бодлаендер [3]. Данный метод — сочетание декомпозиционного подхода к решению задачи выбора с декомпозиционным представлением входного графа, когда выделение подзадач и построение их решений осуществляется, исходя из этого представления. Дерево декомпозиции графа — это специальная конструкция, которая описывает структуру графа «с точностью до клик и сепараторов» и определяет его древовидную ширину [5]. Метод динамического программирования на основе дерева декомпозиции приводит к ЕРТ-алгоритму, если проверяемое свойство графа выражено в виде конечной формулы монадической логики второго порядка и входной граф имеет ограниченную древовидную ширину [6]. В работе подробно исследован этот метод и установлено, что, несмотря на теоретическую привлекательность, практическое его применение ограничивается двумя существующими проблемами, первая из них связана с высокими потребностями в памяти получаемых ЕРТ-алгоритмов, а вторая — с вычислением древовидной ширины и построением дерева декомпозиции. В данной работе предложено проблему памяти решать с помощью бинарного сепараторного дерева декомпозиции (Б&Б-дерева), которое обеспечивает компромисс между размером и числом таблиц динамического программирования.

Корневое дерево декомпозиции (М, Т), М = {Х^ : г € /}, Т = (/, Ш), графа О называется Б&Б-деревом, если в нем каждый узел имеет не более двух прямых потомков и относится к одному из четырех типов узлов:

1) узел-лист — узел, у которого нет потомков;

2) узел-сепаратор — узел в с одним прямым потомком ] и узлом г в роли родителя. Всегда Х* — сепаратор графа О и Х* = Х^ П Х^ = 0, Х* С Х^, Х* С Х^-;

3) узел-расширение — узел г с одним прямым потомком в. В данном случае Х* С Хг;

4) узел-соединение — узел г с двумя прямыми потомками I и ]. Здесь Хг и Х^ С Х^.

В работе доказано, что всякое фундаментальное дерево декомпозиции п-вершинно-го графа, имеющее ширину к и 0(п) узлов, может быть преобразовано за время 0(п)

в BfeS-дерево, которое обладает той же шириной и O(n) узлами. Теоретически обоснованы следующие достоинства BfeS-дерева: переход от бинарного корневого дерева декомпозиции к Б&Б-дереву увеличивает число таблиц не более чем в два раза; B&S-дерево позволяет удерживать размер всякой таблицы динамического программирования в пределах оценки O(kqk), где q — число состояний, в которых может находиться вершина графа по отношению к возможному решению. Кроме того, для вычисления таблиц динамического программирования по BfeS-дереву возможно привлечение аппарата реляционной алгебры и свойств ациклических баз данных. Это способствует алгоритмической конкретизации метода и сокращению числа строк в промежуточных таблицах (за счет использования монотонного плана соединения и программы полусоединений таблиц). Приведена демонстрация применения метода динамического программирования по BfeS-дереву при решении оптимизационных задач (на примере задачи о вершинном покрытии) и задач удовлетворения ограничений (на примере задачи SAT).

Подробное изложение представленных результатов можно найти в [7].

ЛИТЕРАТУРА

1. Downey R. and Fellows M. Parameterized complexity. New York: Springer Verlag, 1999.

2. Быкова В. В. FPT-алгоритмы и их классификация на основе эластичности // Прикладная дискретная математика. 2011. №2(12). С. 40-48.

3. Bodlaender H. L. Treewidth: Algorithmic techniques and results // LNCS. 1997. V. 1295. P. 19-36.

4. Niedermeier R. and Rossmanith P. A general method to speed up fixed-parameter-tractable algorithms // Inform. Proc. Lett. 2000. V. 73. P. 125-129.

5. Быкова В. В. Вычислительные аспекты древовидной ширины графа // Прикладная дискретная математика. 2011. №3(13). С. 65-79.

6. Courcelle B. The monadic second-order logic of graphs. III. Tree decompositions, minors and complexity issues // RAIRO Inform. Theor. Appl. 1992. No. 26(3). P. 257-286.

7. Быкова В. В. FPT-алгоритмы на графах ограниченной древовидной ширины // Прикладная дискретная математика. 2012. №2(16). С. 65-78.

УДК 004.65

ЭЛЕМЕНТЫ РАСПРЕДЕЛЁННОЙ СУБД НА БАЗЕ СЕРВЕРА MariaDB1

И. Н. Глотов, С. В. Овсянников, В. Н. Тренькаев

В связи с интенсивным развитием и появлением новых интернет-технологий, таких, например, как «облачные» вычисления, остаётся актуальной задача распределённой обработки больших объёмов данных в режиме реального времени. Так, имеется необходимость в распределённой СУБД, т. е. системе управления, распределённой в компьютерной сети базы данных (БД) [1]. При этом распределённая БД должна обеспечивать прозрачный доступ к данным, т. е. должна выглядеть с точки зрения пользователей и прикладных программ как централизованная БД.

Наиболее востребованными свойствами распределённых СУБД, ориентированных на использование в «облачных» сервисах, для которых характерна работа с большими

1 Работа выполнена в рамках реализации соглашения о сотрудничестве между кафедрой защиты информации и криптографии ТГУ и ООО «Хайвекс Технолоджи» по проекту JelasticDB.

i Надоели баннеры? Вы всегда можете отключить рекламу.