И.З. Батчаев, З.Ю. Батчаев Один из методов покрытия предфрактальных графов звездами ранговых типов Звезда K1, s – это полный двудольный граф, доли которого состоят из одной вершины (центра звезды) и совокупности s вершин, соответственно называемых висячими [3]. При этом число s называется типом звезды. Пусть является предфрактальным (n,L)-графом, а K1, s – некоторая его звезда типа s. Если при этом все ребра этой звезды одного ранга , то ее тип называется ранговым типом и обозначается . Саму звезду обозначают и называют звездой рангового типа. Пусть – остовный подграф предфрактального (n,L)графа . Если он не содержит изолированных вершин, то его называют допустимым покрытием. Если же каждая его связная компонента представляет собой звезду рангового типа, то называют покрытием предфрактального графа звездами ранговых типов. Здесь и далее пусть X = {x} является множеством допустимых покрытий некоторого графа звездами ранговых типов , на котором определены критерии: – число звезд покрытия x; – число ранговых типов звезд покрытия x; – вес покрытия x. На основании данных критериев можно сформулировать следующую задачу: – произвольный взвешенный предфрактальный (n,L)-граф, порожденный связной n-вершинной затравкой H=(W,Q), требуется найти такое покрытие x из X, при котором значения перечисленных выше критериев будут стремиться к минимальному значению. Решением данной задачи является паретовское множество. Заметим, что каждый элемент паретовского множества (называется парето-оптимальным решением) обладает той особенностью, что для него нельзя найти лучшую альтернативу по какому-либо критерию, не ухудшив при этом значения других критериев [3]. Предлагается алгоритм α для поиска парето-оптимального решения сформулированной в статье задачи, с минимальным числом звезд рангового типа покрытия. Пусть – заданный взвешенный, предфрактальный (n,L)-граф, с непересекающимися старыми ребрами, порожденный n-вершинной затравкой H=(W,Q). Для данного графа за- дадим ограничение: у соответствующих ребер одного ранга в рамках изоморфизма, существующего между затравками, фиксируется одинаковый вес. В основе алгоритма заложена следующая идея: путем перебора подбираются все возможные разбиения множества вершин графа на подмножества с равным количеством элементов с последующей попыткой покрытия каждого подмножества звездой рангового типа. Из выделенных покрытий выбирается оптимальное по второму критерию решение. Заметим, что в рамках введенных условий звезды ранговых типов, состоящие из старых ребер, могут быть лишь единичного типа. Следовательно, покрытие будем искать лишь на затравках, состоящих из новых ребер, за исключением случаев, когда проверяется существование реберного покрытия (ребро можно рассматривать как звезду единичного типа). В этом случае задача сводится к поиску совершенного паросочетания минимального веса. Для ее решения существует полиномиальный алгоритм [3], потому данный случай рассматриваться не будет. Предлагаемый в статье алгоритм α выполняется поэтапно. Первый этап предполагает работу с любой затравкой, состоящей из новых ребер. Для определенности пусть это будет , где . Сначала осуществляется поиск всех делителей числа n методом перебора чисел отрезка . Пусть A = {a1,a2,...al} – множество таких делителей, причем a1 > a2 > ... > al , где a1 = n. Первый этап алгоритма состоит из l = | A | шагов, т.е. из количества шагов, равного числу найденных делителей. На i-м шаге (i = 1,2,...,l) выделяются различные разбиения множества V 1 на ai-элементные подмножества. Заметим, что вершин u V 1, deg u ≥ ai степени не меньшей ai – 1, должно быть больше величины . Это связано с тем, что по- крытие звездами рангового типа ai существовать не может, т.е. работа данного шага алгоритма α завершается. Пусть на очередном этапе получено разбиение , где графы . Ему соответствуют подзатравки . Проверяется, можно ли каждый такой подграф покрыть одной звездой, т.е. содержит ли он вершину, связанную новым ребром с остальными вершинами подмножества . Если вариантов покрытия несколько, то выбираем ту звезду с наименьшим весом (вес звезды – это сумма весов ее ребер). Если найдено несколько звезд с минимальным весом, то для определенности выбирается звезда с наименьшим порядковым номером центральной вершины. Совокупность всех найденных звезд определяет покрытие выбранвеса p(x1). ной затравки звездами ранговых типов Первый этап алгоритма заканчивается исчерпыванием всех возможных вариантов разбиения, при этом выбирается покрытие с наименьшим весом p(x1). Предположим, что было получено покрытие для всех новых затравок изоморфные L–1 (i = 1,2,...,n ) даст покрытие . Тогда строим покрытия . Их объединение , всего предфрактального графа и алгоритм заканчивает свою работу с положительным результатом, в противном случае следует переход на второй этап. Второй этап имеет смысл лишь в случае, если |VL| является четным числом. Тогда ко всему , понимаемому как обычный граф, применяется алгоритм нахождения совершенного паросочетания минимального веса, описанный в [3]. В случае положительного результата работы алгоритма получаем искомое покрытие x звездами рангового типа один. В противном случае алгоритм заканчивает свою работу с отрицательным результатом. Теорема 1. Если у предфрактального, взвешенный (n,L)-графа , старые ребра не пересекаются, а аналогичные ребра в рамках изоморфизма l-затравок (l=2,3,…,L) имеют одинаковый вес, то тогда в результате работы алгоритма α получается оптимальное по второму критерию покрытие x звездами ранговых типов s (если оно существует) со следующими оценками: , где k < 1 – коэффициент пропорциональности для веса ребер. Доказательство. Для начала покажем, что полученная в результате работы алгоритма совокупность звезд образует покрытие заданного предфрактального графа звездами ранговых типов. Пусть по результатам работы первого шага алгоритма имеется покрытие . Очевидно, что каждая вершина предфрактального графа принадлежит в точности одной новой затравке. При этом для каждой из этих затравок найдено покрытие. Таким образом, каждая вершина предфрактального графа покрывается одной звездой рангового типа, причем все звезды не пересекаются, так как состоят из вершин разных затравок одного ранга. Таким образом, объединение всех звезд образует остовный подграф графа , и его связные компоненты представляют собой звезды. На основании определения делаем вывод, что получено покрытие, а так как каждая звезда состоит лишь из новых ребер, то заключаем, что является покрытием звездами ранговых типов. Если получен результат в процессе работы второго этапа алгоритма, то будет построено совершенное паросочетание минимального веса, т.е. каждая вершина графа окажется инцидентной одному ребру паросочетания. Но любое ребро можно рассматривать как звезду рангового типа один и, следовательно, все паросочетание является покрытием графа звездами рангового типа один. Докажем верность допустимых значений критериев. Вершины каждой новой затравки, по завершении первого этапа алгоритма были разбиты на -элементные подмножества, причем количество этих подмножеств равно . Следовательно, положительный результат первого этапа алгоритма ознаменуется получением t звезд. Как известно, предфрактальный граф состоит из nL–1 новых затравок, потому покрытие должно содержать типов. Получаем следующую оценку первого критерия: звезд ранговых . В случае получения положительного результата по завершении второго этапа работы алгоритма, учитывая количество вершин предфрактального графа, равное N = |VL| = nL, получаем, что . Это не противоречит полученной ранее оценке, так как в этом случае каждая звезда найденного покрытия будет состоять лишь из двух вершин. Согласно структуре алгоритма α, множество всех вершин предфрактального графа разбивается на подмножества, состоящие из одинакового числа элементов, после чего каждое из них покрывается одной звездой (если это возможно), потому все звезды покрытия будут иметь один ранговый тип, т.е. имеем значение второго критерия: F2(x) = 1. Подтвердим допустимые значения третьего критерия. Очевидно, что каждая звезда состоит из s ребер ранга L, это означает, что все покрытие состоит из таких ребер. На вес каждого нового ребра наложено ограничение и его значение берется из интервала . Следовательно, получаем следующую оценку для третьего критерия: . Если же покрытие получено на втором этапе работы алгоритма и представляет собой совершенное паросочетание минимального веса, то звезды могут иметь любой ранговый тип и взвешиваться, соответственно, значениями, взятыми из интервалов . При этом имеет место следующая оценка третьего критерия: . С учетом коэффициента пропор- циональности k < 1 и имеет место соотношение: . Теорема 2. Если старые ребра предфрактального, взвешенного (n,L)-графа не пересекаются, а аналогичным ребрам изоморфных l-затравок (l=2,3,…,L) приписываются одинаковые веса, тогда при выполнении условия: , трудоемкость алгоритма α ограничена значением O (N 4), т.е. τ (α) ≤ O (N 4), где N = |VL| – число вершин заданного предфрактального графа. Доказательство. Для доказательства оценки трудоемкости нужно учесть, что для простоты элементы каждого подмножества разбиения S1,S2,...,St, можно расположить по порядку в виде единой последовательности вершин затравки (в пределах каждого S j, (j = 1,2,...,t) вершины расположены в порядке возрастания номеров). Эта последовательность вершин представляет собой упорядоченное множество, тогда перебор всевозможных разбиений V 1 на подмножества S1,S2,...,St можно рассматривать как построение соответствующих им упорядочений множества V 1. Тогда, учитывая соответствие между разбиениями вершин затравки на равномощные подмножества и упорядоченными последовательностями вершин затравки H1, приходим к выводу, что всего осуществляется не более n! переборов на каждом из | A | подэтапов. При этом к каждому разбиению применяется не более n2 операций для выяснения возможности покрытия каждого подмножества одной звездой. Все остальные новые затравки покрываются не более чем за O (N) операций. Полагая O (n!) ≤ O (nn–1), можно сделать вывод, что трудоемкость всего алгоритма не превосходит величины . Принимая во внимание условие , имеем следующее соотношение τ (α) ≤ O (N 4). Следствие. Алгоритм α с некоторыми изменениями может быть применен также для построения покрытий предфрактальных графов, порожденных затравками множества Ω = {H1,H2,...,Ht}. Для этого достаточно первый этап алгоритма применить к каждой новой затравке и проверить возможность покрытия каждой из них звездами одного и того же рангового типа. Библиографический список 1. 2. 3. Батчаев И.З. Многокритериальная задача покрытия предфрактальных графов звездами ранговых типов: автореф. дис. ... канд. физико-матем. наук. Таганрог, 2004. Емеличев В.А., Мельников О.И., Сарванов В.И., Тышкевич Р.И. Лекции по теории графов. М.: Наука, 1990. 383 с. Перепелица В.А., Мамедов А.А. Исследование сложности разрешимости векторных задач на графах. Черкесск: КЧТИ, 1995. 45 с.