Древовидная декомпозиция
Древовидная декомпозиция или кластеризация (Tree-clustering) (Dechter & Pearl[14]) преобразует произвольную -арную задачу УО в ациклическую форму в представлении в виде двойственного графа путем формирования кластеров из переменных, граф взаимосвязей которых имеет структуру дерева. -арная задача УО называется ациклической, если ее первичный граф ограничений обладает следующими свойствами:
· хордальность: каждый цикл, содержащий не менее 4 вершин, содержит хорду (ребро, соединяющее 2 непоследовательные вершины цикла).
· конформность: каждая из максимальных клик графа соответствует одному ограничению в задаче УО.
Алгоритм триангуляции (Tarjan & Yannakakis[15]) может быть использован для достижения указанных свойств, используя два шага: a) Найти упорядочение с максимальной степенью (maximum cardinality) и б) рекурсивно добавить ребра между вершинами, соединяющими вершины, с большим порядком согласно указанному упорядочению. На рисунках 10.12 a и b (из (Dechter & Pearl[16])) соответственно показаны первичный граф ограничений задачи УО до и после процесса триангуляции.
Максимальными кликами этого графа являются кластеры, которые составляют ограничения преобразованной задачи УО (см. рис. 10.10 a).
Рис. 10.9. Построение хордального первичного графа.
Для построения дерева из этого представления достаточно удалить лишние ребра из графа, т.е. те ребра, удаление которых не оказывает влияния на множество решений.
В двойственном графе дуга избыточна, если множество переменных, которым она помечена, является общим для всех дуг на отдельном пути между конечными вершинами дуги.
Рис. 10.10. Построение дерева из двойственного графа.
На рис. 10.10 b) показан один способ построения дерева для задачи УО.
Сложность этой процедуры , где ‑ размер наибольшей максимальной клики.
Понятие ширины дерева ввели в теории графов Робертсон и Сеймур (Robertson & Seymour, 1986)[17]. (Dechter & Pearl, 1987, 1989) применяли то же понятие (названное ими индуцированной шириной) к задачам УО и разработали подход, использующий древовидную декомпозицию (tree decomposition) (см. тему 8) графа ограничений и создании множества связанных подзадач. Каждая подзадача решается независимо, а затем итоговые решения комбинируются. Этот алгоритм работает успешно, если подзадачи не слишком велики. Любая древовидная декомпозиция должна удовлетворять трем приведенным ниже требованиям.
1) Каждая переменная из первоначальной задачи появляется по меньшей мере в одной из подзадач.
2) Если две переменные первоначальной задачи связаны ограничением, то должны появиться вместе (наряду с этим ограничением) по меньшей мере в одной из подзадач.
3) Если какая-то переменная появляется в двух подзадачах в дереве, то должна появляться в каждой подзадаче вдоль пути, соединяющего эти подзадачи.
Первые два условия гарантируют, что в декомпозиции будут представлены все переменные и ограничения. Третье условие просто отражает то ограничение, что любая конкретная переменная должна иметь одно и то же значение в каждой подзадаче, в которой появляется; соблюдение этого ограничения гарантируют связи, соединяющие подзадачи в дереве.
Каждая подзадача решается независимо; если какая-либо из них не имеет решения, то вся задача также не имеет решения. После решения всех подзадач составляется решение исходной задачи путем решения задачи с ограничениями, связывающими подзадачи; для этого используется эффективный алгоритм для деревьев. Ограничения, связывающие подзадачи, указывают на то, что решения подзадач должны быть согласованными по их общим переменным. Любой конкретный граф ограничений допускает большое количество древовидных декомпозиций; при выборе декомпозиции нужно стремиться к тому, чтобы подзадачи были как можно меньше. Ширина дерева древовидной декомпозиции графа на единицу меньше размера наибольшей подзадачи; ширина дерева самого графа определяется как минимальная ширина дерева среди всех его древовидных декомпозиций. Если граф имеет ширину дерева и дана соответствующая древовидная декомпозиция, то соответствующая задача может быть решена за время . Это означает, что задачи УО с графами ограничений, характеризующимися конечной шириной дерева, могут быть решены за полиномиальное время. К сожалению, задача поиска декомпозиции с минимальной шириной дерева является NP-трудной, но существуют эвристические методы, которые хорошо работают на практике.
Дата добавления: 2016-06-05; просмотров: 1872;