Модификация матричного метода разрезания графа
Техническое проектирование радиоэлектронных средств. Решение задачи компоновки модулей в определённые конструктивные единицы. Разрезание матрицы смежности, соответствующее разрезанию графа на три куска. Недостатки матричного метода разрезания графа.
Рубрика | Математика |
Вид | статья |
Язык | русский |
Дата добавления | 25.10.2018 |
Размер файла | 330,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Модификация матричного метода разрезания графа
А.С. Шандриков
Техническое проектирование радиоэлектронных средств (РЭС) предполагает в первую очередь решение задачи компоновки модулей в определённые конструктивные единицы. Для решения данной задачи используется математическая модель в виде графа G = (X, U), которым заменяется принципиальная электрическая схема проектируемого РЭС. Множество вершин X обозначает радиоэлектронные компоненты (РЭК) проектируемого изделия, а множество рёбер U - связи между ними в соответствии с принципиальной электрической схемой. Компоновка, т.е. распределение РЭК по определённым конструктивным электронным модулям, моделируется разрезанием графа на куски с заданным количеством вершин в каждом из них. Для оценки качества решения задачи разрезания графа используются такие количественные показатели, как минимум внешних связей между кусками K (K = min K) или максимум коэффициента разрезания ?G, вычисляемого по формуле
?G = /K (1)
где - суммарное количество внутренних рёбер графа, связывающих вершины внутри кусков.
Разрезание графов осуществляется различными методами, чаще всего последовательными и итерационными.
Последовательные методы легко реализуются на ЭВМ, отличаются простотой и высокой производительностью, но в большинстве случаев не обеспечивают оптимальных результатов [1, с. 61].
Итерационные методы позволяют получить более приемлемые с точки зрения критерия (1) результатов, однако полученные результаты также не всегда оптимальны.
Среди итерационных методов наибольшей эффективностью обладает матричный метод [2, с. 62-70]. Суть матричного метода разрезания графа заключается в следующем. Любой граф можно подробно описать матрицей инцидентности I, матрицей цепей T и матрицей смежности R. Из этого следует, что разрезание графа G на k кусков G1, G2,…, Gk эквивалентно делению матрицы на клетки. В случае матрицы смежности R разрезание графа соответствует разрезанию матрицы на k2 клеток (подматриц) как показано на рис. 1.
Рис. 1. Разрезание матрицы смежности, соответствующее разрезанию графа на три куска
Клетки (подматрицы), расположенные по главной диагонали матрицы R, соответствуют кускам Gi графа G. Элементы, расположенные в диагональных клетках, определяют количество рёбер, соединяющих вершины куска Gi между собой (внутренние связи). Элементы, расположенные в остальных клетках, определяют количество рёбер, соединяющих куски между собой (внешние связи).
Решение задачи разрезания графа G на k кусков сводится к изоморфному преобразованию матрицы смежности путём выполнения ряда перестановок строк и столбцов, в результате которых должна быть достигнута максимизация сумм элементов, расположенных в диагональных подматрицах.
Применяемый на практике матричный метод разрезания графа G на k кусков выполняется следующим образом. Задаётся стандартная матрица F = fij||n, которая разделяется на k2 подматриц. При этом по главной диагонали располагают k единичных подматриц. Порядок единичных подматриц определяется количеством вершин, заданным для каждого куска. Недиагональные подматрицы заполняются нулями. В матрице смежности R по главной диагонали выделяются подматрицы в соответствии с делением стандартной матрицы F. После этого строится первая вспомогательная матрица M = mijn, где i, j J = {1, 2, …, n}, представляющая собой результат умножения матриц F и R:
M = F R (2)
Элементы матрицы M вычисляются по формулам:
mij = , mji = (3)
Далее осуществляется построение матрицы (инверсии матрицы F), в которой каждый единичный элемент матрицы F заменяется на нулевой и наоборот. Как результат поэлементного перемножения матриц F и R вычисляется вторая вспомогательная матрица B:
B = F R (4)
По формулам
pij = mij - bij; pij = mij - bij (5)
ij = pij + pji - (pii + pjj) (6)
вычисляются элементы третьей вспомогательной матрицы P и перестановочной матрицы H соответственно. В перестановочной матрице H выбирается максимальный положительный элемент ij и соответствующие ему элементы xi и xj меняются местами, т.е. производится перестановка вершин xi и xj графа из одного куска в другой.
Несмотря на свою эффективность, матричный метод не получил широкого применения и практически не используется. Это объясняется тем, что кроме матрицы смежности исходного графа G необходимо построить шесть вспомогательных матриц. Таким образом, в течение одной итерации обрабатываются семь матриц. Количество итераций зависит от чередования строк и столбцов в начальной матрице смежности R и может быть неопределённо большим. Необходимость обработки больших числовых массивов, насчитывающих в сумме 7n2 элементов, где n - количество вершин разрезаемого графа, накладывает существенные ограничения на номенклатуру проектируемых изделий по такому параметру, как количество РЭК, распределяемых по электронным модулям, а также на производительность процесса.
Есть и ещё один существенный недостаток матричного метода разрезания графа. Как показывает практика, оптимальный результат обеспечивается только:
- при разрезании графа на одинаковые по количеству вершин куски;
- при формировании кусков в порядке убывания заданного количества вершин. Математическое доказательство данного утверждения не приводится ни в одном известном автору источнике информации, более того, об этом в них вообще не упоминается.
Отмеченные недостатки можно устранить, если матричное разрезание графа G выполнять с использованием чисел связности. Число связности - это параметр, характерный для любой вершины xk разрезанного на куски Gi, Gj, …, Gl графа G и в физическом смысле представляет собой разность между количеством внешних б(xi) и внутренних z(xi) связей.
Логика применения чисел связности для парной перестановки вершин из одного куска в другой с целью минимизации внешних связей описана в [1, с. 78-87] и заключается в следующем. Предположим, что некоторый граф G разрезан на два куска G1 = (X1, U1) и G2 = (X2, U2). Вершина xi X1 содержит z(xi) внутренних связей и б(xi) - внешних. Число связности определяется по формуле
радиоэлектронный компоновка модуль граф
д(xi) = б(xi) - z(xi) (7)
Если д(xi) > 0, то это означает, что перемещение вершины xi из куска G1 в кусок G2 уменьшит количество внешних связей на величину д(xi). Если в куске G2 также имеется вершина xj X2, для которой д(xj) ? 0, то её перемещение из куска G2 в кусок G1 ещё уменьшит количество внешних связей на величину д(xj). В результате парного перемещения вершин xi и xj из одного куска в другой количество внешних связей K между кусками G1 и G2 уменьшится на величину
ДK = д(xi) + д(xj) - 2uij, (8)
где 2uij - количество рёбер, соединяющих перемещаемые вершины xi и xj между собой.
В данной работе предлагается методика использования чисел связности при разрезании графа матричным методом, которую рассмотрим на следующем примере.
На рис. 2 представлен граф G = (X, U), содержащий 14 вершин и 21 соединительное ребро. Данный граф требуется разрезать на четыре куска, содержащие 3, 3, 4 и 4 вершин соответственно без каких-либо технологических ограничений.
Рис. 2
Решение данной задачи осуществляется в следующей последовательности.
1. Построить матрицу смежности, выделив в ней по главной диагонали две подматрицы 3-го и две подматрицы 4-го порядка в соответствии с заданным разрезанием графа.
2. Для каждой вершины графа определить числа связности с вершинами других кусков графа. Полученные результаты представлены в дополнительных столбцах матрицы смежности (9).
3. По числам связности построить матрицу перестановочных коэффициентов ДK, элементы Дkij которой вычисляются по формуле (8).
4. Построить множество двухэлементных подмножеств, каждое из которых содержит пару вершин с положительным перестановочным коэффициентом:
T = {{x1, x9}, {x1, x12}, {x2, x8}, {x2, x14}, {x3, x8}, {x3, x11}, {x3, x12},
{x3, x13}, {x3, x14}, {x4, x8}, {x4, x11}, {x4, x12}, {x4, x13}, {x4, x14},
{x5, x11}, {x5, x12}, {x5, x14}, {x6, x11}, {x6, x13}, {x6, x14}, {x7, x11},
{x7, x14}, {x8, x12}, {x8, x13}, {x8, x14}, {x9, x11}, {x9, x12}, {x9, x13},
{x9, x14}, {x10, x12}, {x10, x13}, {x10, x14}} (11)
5. Из множества (11) сформировать возможные варианты множеств, содержащих двухэлементные непересекающиеся подмножества, т.е. подмножества не связанных между собой пар вершин. Таких вариантов для рассматриваемого графа оказалось 85. Учитывая ограниченность объёма, в статье приводятся только некоторые из полученных вариантов:
A1 = {{x1, x9}, {x4, x11}, {x5, x12}};
A2 = {{x1, x9}, {x4, x11}, {x6, x13}};
A3 = {{x1, x9}, {x4, x12}, {x10, x13}};
…;
A40 = {{x3, x12}, {x8, x11}};
…;
A85 = {{x9, x13}, {x10, x12}}.
6. Для каждого полученного множества подсчитать сумму перестановочных коэффициентов входящих в него пар вершин:
S1 = Дk19 + Дk411 + Дk512 = 2 + 1 + 1 = 4;
S2 = Дk19 + Дk411 + Дk613 = 2 + 1 + 1 = 4;
S3 = Дk19 + Дk412 + Дk1013 = 2 + 3 + 3 = 8;
…;
S40 = Дk312 + Дk811 = 2 + 3 = 5;
…;
S85 = Дk913 + Дk1012 = 1 + 1 = 2.
7. Выбрать множество, имеющее максимальную сумму перестановочных коэффициентов. Если данному условию удовлетворяют несколько множеств, то выбрать следует то, у которого сумма локальных степеней вершин, составляющих двухэлементные подмножества, минимальна. Это позволяет уменьшить количество последующих итераций. В описываемом примере среди всех (85) полученных вариантов имеется только одно множество с максимальной суммой перестановочных коэффициентов входящих в него пар вершин. Это множество A3, для которого сумма перестановочных коэффициентов S3 = 8 = max.
8. Переставить в матрице смежности R попарно x1 и x9, x4 и x12, x10 и x13 строки и столбцы. В результате будет получена матрица смежности R1, изоморфная исходной матрице смежности R:
9. Для каждой вершины графа вновь подсчитать числа связности с вершинами других кусков графа. Полученные результаты представлены в дополнительных столбцах матрицы смежности (12).
10. Используя формулу (8), построить матрицу перестановочных коэффициентов ДK1:
11. Из элементов полученной матрицы может быть образовано только два двухэлементных множества, состоящих из пары вершин с положительным перестановочным коэффициентом, причём эти множества пересекающиеся, т.к. в состав каждого из них входит вершина x2. По этой причине для перестановки может быть выбрано только одна пара вершин: x2 и x12 или x2 и x5. Так как перестановочные коэффициенты этих пар одинаковы (Дk212 = Дk25 = 1), то для перестановки выбираем ту пару вершин, у которой сумма локальных степеней меньше. Этому условию удовлетворяет пара вершин x2 и x5 (с(x5) = 2 < с(x12) = 3).
Переставить в матрице смежности R1 x2 и x5 строки и столбцы. Получим матрицу смежности R2.
12. Построить матрицу перестановочных коэффициентов ДK2:
13. В полученной матрице ДK2 нет ни одного положительного перестановочного коэффициента. Это означает, что после второй итерации в текущем варианте разрезания графа нет ни одной пары вершин, перестановка которых из одного куска в другой могла бы уменьшить количество внешних связей и куски G1 = (X1, U1), G1 = (X2, U2), G3 = (X3, U3) и G4 = (X4, U4) следует считать сформированными, где X1 = {x3, x5, x9}; X2 = {x2, x6, x12}; X3 = {x1, x7, x8, x13}и X4 = {x4, x10, x11, x14}. Графическая иллюстрация полученного разрезания представлена на рис. 3.
Рис. 3
Литература
1. Морозов К.К., Мелихов А.Н., Бернштейн Л.С. Методы разбиения схем РЭА на конструктивно законченные части. - М.: Сов. радио, 1978.
2. Мелихов А.Н., Бернштейн Л.С., Курейчик В.М. Применение графов для проектирования дискретных устройств. - М.: Наука, 1974.
Размещено на Allbest.ru
...Подобные документы
Восстановление графов по заданным матрицам смежности вершин. Построение для каждого графа матрицы смежности ребер, инцидентности, достижимости, контрдостижимости. Поиск композиции графов. Определение локальных степеней вершин графа. Поиск базы графов.
лабораторная работа [85,5 K], добавлен 09.01.2009Алгоритм перехода к графическому представлению для неориентированного графа. Количество вершин неориентированного графа. Чтение из матрицы смежностей. Связи между вершинами в матрице. Задание координат вершин в зависимости от количества секторов.
лабораторная работа [34,0 K], добавлен 29.04.2011Понятие и матричное представление графов. Ориентированные и неориентированные графы. Опеределение матрицы смежности. Маршруты, цепи, циклы и их свойства. Метрические характеристики графа. Применение теории графов в различных областях науки и техники.
курсовая работа [423,7 K], добавлен 21.02.2009Описание заданного графа множествами вершин V и дуг X, списками смежности, матрицей инцидентности и смежности. Матрица весов соответствующего неориентированного графа. Определение дерева кратчайших путей по алгоритму Дейкстры. Поиск деревьев на графе.
курсовая работа [625,4 K], добавлен 30.09.2014Проверка справедливости тождеств или включений с использованием алгебры множеств и диаграмм Эйлера-Венна. Изображение графа и матрицы отношения, обладающего свойствами рефлексивности, транзитивности и антисиммеричности. Изучение неориентированного графа.
контрольная работа [1,3 M], добавлен 05.05.2013История возникновения, основные понятия графа и их пояснение на примере. Графический или геометрический способ задания графов, понятие смежности и инцидентности. Элементы графа: висячая и изолированная вершины. Применение графов в повседневной жизни.
курсовая работа [636,2 K], добавлен 20.12.2015Доказательство тождества с помощью диаграмм Эйлера-Венна. Определение вида логической формулы с помощью таблицы истинности. Рисунок графа G (V, E) с множеством вершин V. Поиск матриц смежности и инцидентности. Определение множества вершин и ребер графа.
контрольная работа [463,0 K], добавлен 17.05.2015Решение системы линейных уравнений методом Гауса. Преобразования расширенной матрицы, приведение ее к треугольному виду. Средства матричного исчисления. Вычисление алгебраических дополнений матрицы. Решение матричного уравнения по правилу Крамера.
задача [26,8 K], добавлен 29.05.2012Понятие "граф" и его матричное представление. Свойства матриц смежности и инцидентности. Свойства маршрутов, цепей и циклов. Задача нахождения центральных вершин графа, его метрические характеристики. Приложение теории графов в областях науки и техники.
курсовая работа [271,1 K], добавлен 09.05.2015Алгоритм, использующий метод Магу-Вейссмана. Общие сведения, описание, вызов и загрузка, функциональное назначение и программный код программы. Описание логической структуры и инструкция пользователю, решение контрольных примеров раскраски графа.
курсовая работа [350,5 K], добавлен 20.12.2009Ориентированные и неориентированные графы: общая характеристика, специальные вершины и ребра, полустепени вершин, матрицы смежности, инцидентности, достижимости, связности. Числовые характеристики каждого графа, обход в глубину и в ширину, базис циклов.
курсовая работа [225,5 K], добавлен 14.05.2012Задача о кенигсбергских мостах, четырех красках, выходе из лабиринта. Матрица инцидентности для неориентированного и (ориентированного) графа. Степень вершины графа. Ориентированное дерево. Линейные диаграммы или графики Ганта. Метод критического пути.
презентация [258,0 K], добавлен 23.06.2013Побудування графа та матриці інцидентності. Перетворення графа у зважений за допомогою алгоритму Дейкстри, знаходження довжини найкоротшого шляху між двома вершинами та побудування дійсного шляху. Обхід дерева у прямому та зворотному порядках.
курсовая работа [144,1 K], добавлен 03.07.2014Розв'язання задач з теорії множин та математичної логіки. Визначення основних характеристик графа г (Х,W). Розклад функцій дискретного аргументу в ряди по базисним функціям. Побудова та доведення діаграми Ейлера-Вена. Побудова матриці інцидентності графа.
курсовая работа [988,5 K], добавлен 20.04.2012Разработка логико-формальной модели описания методики изготовления винных изделий. Разделение ингредиентов и продукции на множества. Исследование на рефлексивность, транзитивность, симметричность. Построение графа, матрицы смежности и инцидентности.
контрольная работа [165,2 K], добавлен 07.06.2010Понятие "граф". Отношения между разнородными элементами. Матричное представление графов. Операции над графами. Маршруты, цепи, циклы. Метрические характеристики графа. Приложение теории графов в различных областях науки и техники. Листинг программы.
курсовая работа [725,8 K], добавлен 15.12.2008Алгоритм построения минимального остовного дерева. Последовательность выполнения алгоритма Прима, его содержание и назначение. Процедура рисования графа. Порядок составления и тестирования программы, ее интерфейс, реализация и правила эксплуатации.
курсовая работа [225,0 K], добавлен 30.04.2011Теоретико-множественная и геометрическая форма определения графов. Матрица смежностей вершин неориентированного и ориентированного графа. Элементы матрицы и их сумма. Свойства матрицы инцидентности и зависимость между ними. Подмножество столбцов.
реферат [81,0 K], добавлен 23.11.2008Методы решения задачи коммивояжера. Математическая модель задачи коммивояжера. Алгоритм Литтла для нахождения минимального гамильтонова контура для графа с n вершинами. Решение задачи коммивояжера с помощью алгоритма Крускала и "деревянного" алгоритма.
курсовая работа [118,7 K], добавлен 30.04.2011Порядок доказательства истинности заключения методом резолюции (с построением графа вывода пустой резольвенты) и методом дедуктивного вывода (с построением графа дедуктивного вывода). Выполнение бинарных операций и составление результирующих таблиц.
курсовая работа [185,3 K], добавлен 24.05.2015