Возможность получения документа о прохождении курса |
Рационализация переборных алгоритмов
Рационализация поиска наибольшего независимого множества
Известны различные приемы сокращения перебора при использовании описанной
стратегии исчерпывающего поиска. Один из них основан на следующем
наблюдении. Допустим, в графе , для которого нужно найти
наибольшее независимое множество, имеются две вершины
и
, такие, что каждая вершина, отличная от
и
смежная
с вершиной
, смежна и с вершиной
. Иначе говоря,
. Будем говорить в этом случае,
что вершина
поглощает вершину
.
Если при этом вершины
и
смежны, то скажем,
что вершина
смежно поглощает вершину
.
Вершину
в этом случае назовем смежно поглощающей.
Например, в графе, изображенном на рис. 11.1,
вершина 2 смежно поглощает
вершины 1 и 3. Вершины 5 и 6 в этом графе тоже являются смежно
поглощающими.
Теорема 1. Если вершина является смежно
поглощающей в графе
, то
.
Доказательство. Допустим, вершина смежно поглощает
вершину
в графе
. Пусть
-
наибольшее
независимое множество графа
. Если
не содержит
вершину
,
то оно является наибольшим независимым множеством и в графе
, так что в этом случае
.
Предположим,
что множество
содержит вершину
. Тогда ни одна
вершина
из множества
не принадлежит
. Значит,
не содержит вершину
и ни одну вершину из
множества
.
Но тогда множество
тоже будет независимым,
причем оно целиком содержится в графе
, а число элементов в
нем
такое же, как в множестве
. Значит, и в этом
случае
.
Итак, если мы удалим из графа смежно поглощающую вершину ,
то получим граф с тем же числом независимости. Так как новый граф является
порожденным подграфом исходного графа
, то каждое наибольшее
независимое множество нового графа будет наибольшим независимым множеством
исходного. Этот прием называется "сжатием по включению".
Исследование
применимости и применение операции сжатия по включению к каждому
встречающемуся подграфу требуют, конечно, дополнительных расходов времени
(каких?), но могут привести к существенному сокращению дерева подзадач.
Для некоторых графов задача о независимом множестве может быть решена
с помощью одних только сжатий по включению. Таков, например,
граф
,
и вообще любой лес. Действительно, любая вершина, смежная с листом,
поглощает этот лист. Рассмотрим более широкий класс графов, для которых
этот прием эффективен.