Параллельный алгоритм выделения дольного графа - Многокритериальная постановка задачи выбора проектов целевых программ
Рассмотрим взвешенный предфрактальный граф, порожденный затравкой и K процессоров, где.
Параллельный алгоритм выделения дольного графа основан на процедуре, которая выделяет двудольный граф, состоящий из двух частей.
Процедура состоит из двух шагов.
На первом шаге выделяем максимальное паросочетание максимального веса (МПМВ) используя алгоритм, предложенный Эдмондсом [7].
Второй шаг состоит в следующем.
В МПВП входят множество ребер. Разобьем вершины на множества по принципу: одну вершину, инцидентную ребру включим во множество, другую - во множество, оставшиеся вершины графа включим во множество. Множества и выделенное множество ребер задают некоторый двудольный граф. Ребра, инцидентные вершинам множества и, инцидентные вершинам удаляем.
Множество вершин объединяем с множеством или двудольного графа по принципу:
- 1. Eсли все вершины смежны с вершинами только множества или только множества, то множество вершин объединяем с множеством или множеством соответственно. При этом инцидентные им ребра сохраняем. 2. Вершины могут быть смежны с вершинами и множества и множества. Тогда считаем сумму весов ребер, инцидентных этой вершине, смежных с вершинами множества и аналогичную сумму соответственно для множества. Выбираем ребра, суммарный вес которых максимален. Включая эти ребра в двудольный граф, получая тем самым новый двудольный граф, определяем принадлежность этих вершин к долям.
Опишем принцип работы алгоритма.
Количество процессоров равно количеству всех затравок L-ого ранга, то есть. Тогда каждый из процессоров назначим одной из затравок, .
Каждая подграф-затравка, рассматривается как отдельно взятый граф. Все процессоров параллельно независимо друг от друга находят двудольный граф, каждый на назначенной ему затравке. Поиск двудольного графа на отдельно взятой подграф-затравке осуществляется с помощью процедуры. Далее каждую подграф-затравку
, стягиваем в одну вершину. Тогда мы получаем новый предфрактальный граф Аналогично предыдущему шагу, каждый процессор назначаем на одну из затравок. Аналогично, применяя процедуру находим двудольный граф. Общий тый шаг работы алгоритма представляет собой выделение двудольных графов. на затравках, .
Далее на предфрактальном графе работа алгоритма на каждом том шаге заключается в объединении выделенных двудольных графов по принципу смежности вершин. Объединение двудольных графов будем обозначать.
Алгоритм заканчивает свою работу на м шаге, когда на последней исходной затравке выделяем двудольный граф. Тем самым, объединив все выделенные двудольные затравки на всех шагах работы алгоритма, получим дольный граф.
АЛГОРИТМ
Вход: взвешенный предфрактальный граф.
Выход: дольный граф
ШАГ 1. Параллельно и независимо друг от друга процессоров для каждой затравки, находят двудольный граф с помощью процедуры. На шаге 1 получаем двудольный граф максимальной затравки.
Шаг 2. Объединяя эти двудольные графы получаем покрытие предфрактального графа двудольными графами, которое дает в объединении дольный граф.
Процедура.
Вход: взвешенный предфрактальный граф.
Выход: двудольный граф.
Теорема 1. Алгоритм Выделяет Дольный Граф () на предфрактальном - Графе , Порожденном Затравкой , , , С Коэффициентом Подобия .
Доказательство. На первом шаге процессоров находят двудольные графы, используя процедуру.
На последнем шаге построения предфрактального графа все вершины замещаются затравкой, тогда каждая вершина - ого ранга принадлежит какой-либо подграф-затравке. Найдя двудольный граф на затравке, покроем все вершины, принадлежащие этой затравке.
Таким образом, на том шаге процессоры с помощью процедуры выделили двудольные графы на всех затравках.
Дальнейшая работа алгоритма: на шаге используя те же процессоры, закрепляя их затравках предпоследнего ранга, применяя процедуру к каждой затравке, опять получим двудольный граф. Будем помнить, что каждая вершина этой затравки содержит внутри себя двудольный граф. Тогда если мы развернем эти двудольные графы, находящиеся внутри затравки, то у нас в покрытии получатся 4х - дольные графы. Продолжая этот процесс, на том шаге () получаем, что, на затравках применяя тот же принцип распределения процессоров и процедуру, опять получаем двудольные графы. Тогда на последнем шаге будет выделена последняя двудольная затравка и, объединяя выделенные затравки мы получим дольный граф (). Тем самым мы доказали, что алгоритм выделяет дольный граф. <
Теорема 2. Вычислительная сложность параллельного алгоритма выделения дольного графа () на предфрактальном - графе, порожденном затравкой, ,, где, равна.
Доказательство. Алгоритм представляет собой, по существу многократное выполнение шага 1, т. е. поиск двудольного графа для каждой подграф-затравки, а их. Шаг 1 потребует выполнения операций на каждой подграф-затравке - столько операций выполняет алгоритм Эдмондса.
Тогда. Таким образом, вычислительная сложность алгоритма равна.
Сравнив вычислительную сложность параллельного алгоритма с вычислительной сложностью алгоритма Эдмондса, получим: , то есть ускорение вычисления параллельного алгоритма относительно алгоритма Эдмондса ~ . <
Примечание 1. Вычислительная Сложность Параллельного Алгоритма Меньше Вычислительной Сложности Алгоритма Эдмондса, В Раз На Предфрактальном - Графе . <
Теорема 3. Временная сложность параллельного алгоритма, где имеется процессоров, , равна.
Доказательство. Алгоритм выполняет шаг 1 параллельно, каждым из процессоров. Для выполнения шага 1 потребуется [7] времени (столько времени требуют процедура Эдмондса). Но все процессоры работают параллельно, то есть они закончат свою работу: "выполнение шага 1" в худшем случае за время. Таким образом, временная сложность алгоритма равна. <
Сравнив временную сложность параллельного алгоритма с вычислительной сложностью алгоритма Эдмондса, получим: .
Примечание 2. Временная Сложность Параллельного Алгоритма Меньше Временной Сложности Алгоритма Эдмондса, В Раз. <
Теорема 4. Временная сложность параллельного алгоритма, где используется процессоров, , равна.
Доказательство. Алгоритм выполняет шаг 1 параллельно, каждым из процессоров. Для выполнения шага 1 требуется времени. Но все процессоры работают параллельно, т. е. все процессоров закончат свою работу: "выполнение шага 1" - одновременно, за время. Шаг 1 будет выполнен ровно раз. Тогда, получим:
.
Получаем, что временная сложность алгоритма в случае использования процессоров, равна. <
Примечание 3. Временная Сложность Параллельного Алгоритма , Где Используется Процессоров , , Меньше Временной Сложности Алгоритма Эдмондса, В Раз. <
Теорема 5. Алгоритм выделяет покрытие на предфрактальном - графе, порожденном полной вершинной затравкой, ,, оптимальное по критериям и оцениваемое по третьему и пятому. (целая часть числа )
Доказательство. Доказательство оптимальности по критерию следует из структуры работы алгоритма. Алгоритм выделяет один дольный граф, то есть состоит из одной компоненты.
Для того, чтобы доказать оптимальность по критерию покажем, что на полном графе максимальное число ребер выделенного двудольного графа достигается, если доли равны (в случае, если делится пополам) или же доли будут равны и (если не делится пополам).
Для доказательства этого утверждения сформулируем и докажем предложение.
Предложение. Двудольный Граф На Графе , , Будет Наибольшим По Количеству Ребер, Если
(в Случае, Когда Четно) И Если (в Случае, Когда Нечетно).
Доказательство. Докажем первую часть предложения.
Если - четно, обозначим, тогда и максимальное количество ребер достигается при.
Если - нечетно, то одну вершину выделяем в сторону. Тогда число вершин четно и доли должны быть равны. Так как рассматриваем полный граф, то эту вершину относим в одну из долей и получаем максимальное число ребер. <
На основании доказанного предложения на каждой затравке алгоритм выделяет максимальное число ребер. На основании полученного результата и работы алгоритма на всех затравках на шаге 1, выделяется наибольшее количество ребер.
Аналогично рассуждая, видим, что на каждом шаге алгоритм выделяет максимальное число ребер, что доказывает оптимальность критерия.
Дадим оценку. Согласно нашей модели, главными исполнителями является одна из долей выделенного двудольного графа. Максимальное число долей выделенного двудольного графа на затравке будет равна, а количество всех затравок на последнем шаге равноТогда общее количество исполнителей будет меньше либо равно.
Для оценки критерия последовательно оценим результат критерия по шагам работы алгоритма.
На первом шаге работы алгоритма, максимальная степень выделенного двудольного графа на затравке будет равна. На каждом алгоритм не запрещает увеличение степени вершины на. Аналогично рассуждая, на м шаге максимальная степень вершины может достичь.<
Похожие статьи
-
В настоящее время Российская Федерация входит в состав ВТО, в связи с чем, для устойчивого развития, для надежности, для стойкости [1, 2] появляется...
-
Литература - Многокритериальная постановка задачи выбора проектов целевых программ
1. Залиханов М. Ч. Устойчивое развитие России: перспективы и угрозы // Безопасность Евразии. 2001. №2. С. 518-525. 2. Кочкаров А. А., Малинецкий Г. Г....
-
Наличие особых ситуаций на террайне зависит от характеристик его сложности. Ниже приведена возможная классификационная схема характеристик сложности...
-
Задача поиска маршрутов в графе (путей в орграфе)
Задача поиска маршрутов в графе (путей в орграфе) Алгоритм Тэрри поиска маршрута в связном графе, соединяющем вершины и. Правила. 1) Идя по произвольному...
-
Моделирование транспортной сети большой размерности с помощью предфрактальных графов позволяет строить эффективные алгоритмы благодаря свойству...
-
О клике. Определим формально задачу поиска максимальной клики, согласно статьи On the maximum quasi-clique problem [17]. Пусть G=(V, E) - простой...
-
Алгоритмы поиска квази-клики в графе. - Использование квази-клик для анализа графа рынка России
Как и для поиска клик существуют алгоритмы поиска квази-клик в графе. Далее мы рассмотрим некоторые из них. Как было сказано ранее, задача поиска...
-
Введение, Основные положения - Эволюционные процедуры решения комбинаторных задач на графах
Среди набора комбинаторно-логических задач на графах важное место занимает проблема определения паросочетаний, раскраски графа, выделения в графе...
-
Определим понятие предфрактального графа индуктивно. Обозначим через - конечный связный n-вершинный граф с множеством вершин и множеством ребер, который...
-
Введение - Использование квази-клик для анализа графа рынка России
Графы, состоящие из вершин и ребер, представляют удобный инструмент моделирования для изучения различных сетевых структур, в том числе, социальных сетей,...
-
Пусть имеется оптимизационная задача вида: (1) (2) (3) - задан(4) Здесь предполагается, что FJ(xJ,yJ)>0 для всех допустимых значений xJ,yJ. В этом случае...
-
Пусть - вектор параметров задачи (вектор варьируемых параметров), где - n-мерное арифметическое пространство (пространство параметров). Множеством...
-
РЕШЕНИЕ ЗАДАЧИ О КОММИВОЯЖЕРЕ МЕТОДОМ ВЕТВЕЙ И ГРАНИЦ: ОСНОВНАЯ СХЕМА - Задача коммивояжера
Пусть - конечное множество и - вещественно-значная функция на нем; требуется найти минимум этой функции и элемент множества, на котором этот минимум...
-
При анализе больших объемов данных зачастую их можно представить в виде графа. Основными атрибутами графа являются вершины и ребра, поэтому изучение...
-
Все генетические алгоритмы участвовали в двух группах тестов. В каждой группе исследовались различные наборы значений управляющих параметров МГА:...
-
Формирование З -областей в матрице R осуществляется в процессе ее эволюционной модификации. Эволюционная модификация матрицы R производится путем...
-
При написании программ численного интегрирования желательно, чтобы для любой функции распределение узлов являлось оптимальным или близким к нему. Однако...
-
Найти при помощи метода ячеек значение интеграла , Где - область, ограниченная функциями . 2. Теоретическая часть Рассмотрим K-мерный интеграл вида: (1)...
-
Рассматриваемая задача оптимизации ИП основывается на двухкритериальной модели Г. Марковица с незначительной корректировкой (вместо поиска долей каждого...
-
О квази-клике. - Использование квази-клик для анализа графа рынка России
Квази-клика - представляет собой релаксацию строгого условия полноты клики, то есть допускается отсутствие некоторых ребер в искомом подграфе. На данный...
-
Заключение - Использование квази-клик для анализа графа рынка России
Данная выпускная работа была посвящена проблеме поиска плотных подграфов в графе. Основные усилия в ней были направлены на разработку алгоритма поиска...
-
РЕШЕНИЕ ЗАДАЧИ О КОММИВОЯЖЕРЕ МЕТОДОМ ВЕТВЕЙ И ГРАНИЦ. ПРИМЕРЫ - Задача коммивояжера
Рассмотрим конкретный пример реализации метода ветвей и границ для решения задачи о коммивояжере. Итак, требуется найти легчайший простой основный...
-
Как и каждый достаточно ярко выраженный класс экономико-математических моделей, совокупность моделей календарного планирования обладает рядом...
-
ПОСТАНОВКА ЗАДАЧИ - Задача коммивояжера
Пусть имеется п городов. Расстояния между любой парой городов (i, j) известны и составляют dij, где i=1, m; j=1, n; i?j. Если прямого маршрута...
-
Транспортные задачи, имеющие некоторые усложнения в постановке - Экономико-математические методы
Транспортная задача с избытком запасов: Для отыскания оптимального плана вводят фиктивный (n+1)-й пункт назначения Bn+1 с потребностью bn+1 и полагают...
-
Для заданного региона обслуживания с помощью технологии ГИС предоставляется карта автомобильных дорог, на которой указаны пункты, соответствующие...
-
Инвестиционный портфель оптимальный многокритериальный В качестве тестового примера использовались следующие входные данные [Социальная сеть инвесторов,...
-
Содержательная постановка задачи. - Методика решения задачи целочисленного программирования
Нефтеперерабатывающий завод производит три вида продукции: бензин, керосин и дизельное топливо. Процесс переработки нефти происходит в два этапа: этап...
-
Второй раздел курсовой работы посвящен особенностям постановки и решения общей задачи линейного программирования, а именно, транспортной задаче (ТЗЛП)....
-
Алгоритм использует в качестве исходных данных документы, содержащие следующие сведения: X A, k,j, i - измеряемые показатели научной работы; X A, TG,...
-
Гамильтоновы циклы, Основные понятия и определения - Гамильтоновы циклы
Название "гамильтонов цикл" произошло от задачи "Кругосветное путешествие" предложенной ирландским математиком Вильямом Гамильтоном в 1859 году. Нужно...
-
Введение - Моделирование крупномасштабной транспортной сети предфрактальными графами
Транспорт - важный стратегический комплекс, в значительной степени определяющий мощь экономики страны и обеспечивающий нужды общества в перемещении людей...
-
Если ответы экспертов - кластеризованные ранжировки, то вычисление медианы Кемени является задачей целочисленного программирования. Для ее нахождения...
-
Пока неизвестно никакого простого критерия или алгебраического метода, позволяющего ответить на вопрос, существует или нет в произвольном графе G...
-
Процедура решения задач минимизации издержек - Модель оценки издержек в системе складского комплекса
Пусть Z есть вектор, компонентами которого являются все переменные, по которым проводится оптимизация, то есть все компоненты вектора Z . В соответствии...
-
Введение - Разработка методики сокращения времени выполнения проекта при помощи сетевого графика
Сетевой график -- граф Ик, вершины которого отображают состояния некоторого объекта (например, строительства), а дуги -- работы, ведущиеся на этом...
-
В статье Network approach for the Russian stock market авторы анализируют данные фондового рынка для России, в том числе используют поиск максимальной...
-
Пример решения задачи симплекс-методом, Условие задачи - Математические методы и модели в экономике
Рассмотрим алгоритм симплексного метода на примере решения задачи планирования товарооборота предприятия торговли. Требуется определить оптимальную...
-
В разделе 1 курсовой работы требуется: Определить количество закупаемого заданным филиалом фирмы сырья у каждого АО, (xj), максимизируя прибыль филиала....
-
Постановка задачи За сельскохозяйственной артелью "Горизонт" закреплено 3 890 га сельскохозяйственных угодий, в том числе 3406 га пашни, 389 га сенокосов...
Параллельный алгоритм выделения дольного графа - Многокритериальная постановка задачи выбора проектов целевых программ