Минимизация внешних связей в процессе разрезания графа последовательным методом
Исследование процесса разрезания графа, как одной из распространённых графовых задач комбинаторно-логического типа. Рассмотрение особенностей метода автоматизированного решения задачи разрезания графа, что исключает возможность произвольного выбора.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | статья |
Язык | русский |
Дата добавления | 25.10.2018 |
Размер файла | 98,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Минимизация внешних связей в процессе разрезания графа последовательным методом
УДК 621.3.049.73.75:001.2(024)
Шандриков А.С.
Разрезание графа на отдельные, связанные между собой куски - одна из распространённых графовых задач комбинаторно-логического типа. Решение таких задач, в частности, моделирует процесс компоновки радиоэлектронных средств, то есть разбиения принципиальной электрической схемы на отдельные части. Критерием качественного решения задачи разрезания графа чаще всего является минимум рёбер, соединяющих вершины из разных кусков. Множество таких рёбер называется числом рёберного соединения [1, с. 57]. В физическом смысле число рёберного соединения представляет собой количество внешних связей между кусками графа, сформированными в процессе разрезания.
Для разрезания графа чаще всего используются алгоритмы, реализующие последовательные, итерационные и комбинированные методы.
Последовательные алгоритмы являются самыми высокопроизводительными и наиболее экономичными с точки зрения затрат оперативной памяти электронно-вычислительных средств (ЭВС), но и самыми неэффективными по результатам решения задач компоновки с использованием критерия минимума связей между сформированными кусками (внешних связей).
Причина этого недостатка заключается в следующем. В качестве критерия выбора начальной вершины формируемого куска служит минимальное или максимальное значение локальной степени вершины. В большинстве случаев заданному критерию выбора начальной вершины формируемого куска удовлетворяют одновременно несколько вершин. В данной ситуации рекомендуется отдавать предпочтение вершине, имеющей кратные рёбра [2, с. 30], а при наличии нескольких вершин с этой характеристикой выбор осуществляется произвольно [3, с. 386].
Автоматизированное решение задачи разрезания графа исключает возможность произвольного выбора и требует чёткой конкретной формулировки критерия выбора начальной вершины из числа вершин с одинаковыми оценками. Для этой цели можно использовать индекс вершины - младший или старший номер позиции вершины в матрице смежности [4].
После выбора начальной вершины xi выполняется построение множества Гxi = {xi, xj, …, xk}, содержащего выбранную начальную вершину xi и все смежные ей вершины. Мощность полученного множества | Гxi | сравнивается с количеством вершин, заданным для формируемого куска, и в случае их равенства кусок считается сформированным, а вошедшие в него вершины удаляются из исходного графа. Чаще всего оказывается, что | Гxi | ? nm, где m - количество вершин, заданное для формируемого куска.
Если | Гxi | nm, то необходимо выполнить следующие шаги [2, с. 31].
Шаг 1. Во множестве Гxi выбрать вершину xj, имеющую максимальное количество связей со всеми остальными вершинами множества Гxi и связанную с вершинами множества X\ Гxi.
Шаг 2. Построить множество Гxj.
Шаг 3. Сформировать объединённое множество Гxi Гxj-.
Шаг 4 Проверить выполнение условия | Гxi Гxj- | = nm и в случае его невыполнения вновь повторить описанные шаги.
Данный подход к выбору вершины сам по себе создаёт предпосылки для получения неоптимального результата по критерию минимума связей между сформированными кусками. Кроме того, методика дополнения формируемого куска недостающим количеством вершин не содержит точных рекомендаций, необходимых для составления на её основе алгоритма автоматизированного выполнения этой процедуры, а именно:
1) непонятно, как следует поступать, если критерию выбора вершины для дополнения куска соответствуют несколько вершин xj, xk Гxi;
2) по каким критериям следует выбирать вершину xp X\Гxi.
Рассмотрим пример.
На рис. 1 представлен кусок G1 = (X1, U1) графа G = (X, U), который необходимо дополнить ещё одной вершиной до значения | X1 | = 5. На данный момент кусок G1 содержит 6 внутренних рёбер и 6 внешних.
Рис. 1
Если следовать рекомендациям [2], выполняемым на шаге 1, то в множестве X1 = {x1, x2, x3, x4} следует выбрать вершину x1, имеющую максимальное количество внутренних связей среди вершин с внешними связями, и построить множество Гx1 = {x1, x2, x4, x5}. Объединив множества X1 и Гx1, получим: графовый комбинаторный автоматизированный
X1 Гx1 = -{x1, x2, x3, x4, x5}.
Мощность полученного множества
| X1 Гx1 | = 5 = n1,
следовательно, кусок G1 = (X1, U1) считается сформированным (рис. 2).
Рис. 2
Качество полученного результата можно оценить по коэффициенту разрезания:
Д(G) = L/K,
где L - количество внутренних рёбер формируемого куска;
K - количество внешних рёбер.
В рассматриваемом примере
Д(G1) = 7/9 = 0,78.
В результате дополнения множества X1 по методике [2] в формируемый кусок была назначена вершина x5, в результате чего в кусок G1 добавилось больше внешних рёбер, чем внутренних. Как видно из приведённого примера, методика [2] не исключает ситуации создания предпосылок для получения неоптимального по количеству внешних связей результата разрезания графа.
Оптимальность результата разрезания графа последовательным методом можно существенно повысить, если изменить критерий выбора вершины для дополнения формируемого куска недостающим количеством вершин. С этой целью выбор вершины xj для пополнения формируемого куска следует начинать не в самом множестве X1, как предлагается в [2], а в множестве X\X1 и использовать для этого числовую характеристику - число связности д(xj), которое определяется по формуле:
д(xj) = (xj) - z(xj) {xi | xj X\X1, (1)
где (xj) - количество внешних связей, т.е. количество рёбер, соединяющих вершину xj X\X1 с вершинами, ранее назначенными в формируемый кусок;
z(xj) - количество внутренних связей, т.е. количество рёбер, соединяющих вершину xj с вершинами множества X\X1.
Из (1) очевидно, что число связности может принимать как положительное так отрицательное значение или быть равным нулю. Отрицательное значение д(xj) свидетельствует о том, что приращение внешних связей формируемого куска будет больше приращения внутренних связей, а положительное значение д(xj), наоборот, говорит о том, что приращение внешних связей формируемого куска будет меньше приращения внутренних связей. Так как для минимизации внешних связей определяющим является второй вариант, то выбор вершины для назначения в формируемый кусок следует осуществлять по критерию
д(xj) = max д(xj), (2)
Для вершин x5, x6, и x7 их связи с вершинами множества X1 = {x1, x3, x4} являются внешними, а их связи с вершинами множества X\X1 (вершины этого множества на рис. 1-3 условно не показаны) - внутренними.
В рассматриваемом примере, представленном на рис. 1, числа связности вершин множества X\X1
д(x5) = 1 - 4 = -3;
д(x6) = 3 - 2 = 1;
д(x7) = 2 - 2 = 0.
Критерию (2) удовлетворяет вершина x6, и, согласно предлагаемой в данной работе методике, она и назначается в формируемый кусок (рис. 3).
Рис. 3
Коэффициент разрезания в этом случае Д(G1)ґ = 9/5 = 1,8.
По сравнению с Д(G1) коэффициент разрезания Д(G1)ґ увеличился в 2,3 раза. Количество внешних связей между формируемым куском и вершинами множества X\X1 сократилось на три.
Если критерию (2) удовлетворяют одновременно несколько вершин, то из них следует назначить в формируемый кусок вершину с большей локальной степенью, т.е. с большим значением (xj), xj X\X2. Покажем это на следующем примере.
На рис. 4 представлен кусок G2 = (X2, U2) графа G = (X, U), который необходимо дополнить ещё одной вершиной.
Рис. 4
Критерию (2) удовлетворяют две вершины: x6 и x8, у которых числа связности
д(x6) = 3 - 2 = 1;
д(x8) = 5 - 4 = 1.
Если в кусок G2 назначить вершину x6, имеющую меньшую локальную степень, то количество внутренних связей в куске увеличится на три, а количество внешних связей уменьшится на одну (рис. 5). Коэффициент разрезания будет равен Д(G2) = 9/10 = 0,9.
Рис. 5
При назначении в кусок G2 вершины x8 с большей локальной степенью количество внешних связей также уменьшится на одну, но зато количество внутренних связей увеличится на пять (рис. 6).
Рис. 6
Коэффициент разрезания в этом случае будет равен Д(G2)ґ = 11/10 = 1,1, что в 1,22 раза больше по сравнению с коэффициентом разрезания Д(G2).
В процессе формирования куска также может возникнуть ситуация, когда из куска необходимо удалить лишнюю вершину или несколько вершин, т.е. когда | Гxi | ni. В этом случае для удаления рекомендуется выбирать вершину с минимальным количеством внутренних рёбер [2]. Если лишних вершин несколько, то удаление производится поочерёдно несколькими шагами, по одной вершине на каждом шаге.
Данный критерий выбора удаляемой вершины также нельзя назвать удачным. Как и в предыдущем случае, из [2] неясно, как поступать, если данному критерию удовлетворяют несколько вершин. Предположим, что из формируемого куска G3 = (X3, U3), содержащего 10 внутренних и 6 внешних рёбер, необходимо удалить одну лишнюю вершину (рис. 7).
Рис. 7
Минимальное количество внутренних рёбер z(xi) имеет единственная вершина x4. Согласно [2, 3], именно эта вершина должна быть удалена из формируемого куска. В результате удаления вершины x4 (рис. 8) коэффициент разрезания формируемого куска будет равен Д(G3) = 8/7 = 1,14.
Рис. 8
Если проанализировать рассматриваемую ситуацию, то можно заметить, что удаление из формируемого куска G3 вершины x1 обеспечит более приемлемый результат разрезания графа за счёт того, что ей инцидентно большее количество внешних рёбер, чем вершине x4. Очевидно, что и в этом случае следует изменить методику выбора удаляемой вершины и такой методикой, как и в предыдущем случае, может стать выбор вершины для удаления по числу связности:
д(xi) = (xi) - z(xi) {xi | xi X3. (3)
Из (3) следует, что наиболее оптимальный результат по критерию минимизации внешних связей обеспечит удаление из куска G3 вершины xi X3, удовлетворяющей условию
д(xi) = max д(xi), (4)
Критерию (4) удовлетворяет вершина x1. Результат удаления этой вершины из куска G3 представлен на рис. 9.
Рис. 9
Коэффициент разрезания Д(G3)ґ = 7/4 = = 1,75 и по сравнению с Д(G3) увеличился в 1,54 раза, а количество внешних связей между формируемым куском и вершинами множества X\X1 сократилось на три.
В [4] описано разрезание графа методом последовательного назначения вершин в формируемые куски. При разрезании графа на неравные по количеству вершин куски данным методом формирование первого куска выполняется до получения | X1 | = min ni, где ni - количество вершин в наименьшем куске заданного разрезания. Производится вычисление текущего коэффициента разрезания и формирование куска продолжается до следующего в порядке возрастания количества вершин, вновь вычисляется коэффициент разрезания и так далее до тех пор, пока не будут рассмотрены все варианты с разным количеством вершин в куске графа. Окончательно выбирается тот вариант, который соответствует максимальному значению коэффициента разрезания. Сформированный кусок удаляется из исходного графа, и описанная процедура повторяется для формирования каждого следующего куска графа. Для оценки вариантов приходится часто вычислять коэффициент разрезания. В результате многочисленных разрезаний графов методом [4] было установлено, что не во всех случаях удаётся получить оптимальный по критерию минимума внешних связей результат. Было выявлено неочевидное на первый взгляд обстоятельство: коэффициент разрезания не является объективным показателем качества по критерию минимума внешних связей в процессе выбора приемлемого с практической точки зрения варианта формируемого куска. При оценке различных вариантов увеличение коэффициента разрезания может иметь место при большем приращении внешних связей по сравнению с приращением внутренних связей формируемого куска графа.
Поясним данную ситуацию на примере. На рис. 10 представлен полученный первый промежуточный вариант куска с тремя вершинами, у которого две внутренние связи и семь внешних.
Рис. 10
Текущий коэффициент разрезания
Д(G(1)) = l/k = 2/7 = 0,286.
Необходимо рассмотреть ещё один вариант формируемого куска, в котором будут находиться четыре вершины и из них выбрать лучший вариант на данной стадии разрезания графа. С этой целью согласно [4] для всех внешних вершин было определено число связности и в соответствии с алгоритмом в формируемый кусок назначена вершина x4 (рис. 11).
Рис. 11
Количество внутренних связей увеличилось на единицу, а количество внешних связей - на две. Очевидно, что при таком соотношении приращений внешних и внутренних связей окончательное разрезание графа на заданное количество кусков оптимальным не будет, но значение текущего коэффициента разрезания при этом увеличилось и составляет
Д(G(2)) = 3/9 = 0,333.
Результаты проведённого анализа показывают, что для количественной оценки возможных вариантов формируемого куска в процессе разрезания графа методом [4] вместо коэффициента разрезания следует использовать разность между количеством внешних и количеством внутренних связей:
е(r) = k - l = min(k - l)
Очевидно, что при использовании данного критерия в качестве окончательного варианта был бы выбран кусок G(1), представленный на рис. 10.
Выводы
1) разрезание графа последовательным алгоритмом по предлагаемой методике, то есть с использованием чисел связности, позволяет минимизировать количество внешних связей между сформированными кусками. Это способствует улучшению эксплуатационных параметров проектируемых РЭС и повышает технологичность их производства;
2) для оценки промежуточных вариантов формируемых кусков целесообразно использовать критерий минимальной разности между количеством внешних и внутренних рёбер.
Литература
1. Мелихов А.Н. Применение графов для проектирования дискретных устройств /А.Н. Мелихов, Л.С. Бернштейн, В.М. Курейчик - М. : Наука, 1974 - 304 с.
2. Методы разбиения схем РЭА на конструктивно законченные части / К.К. Морозов [и др.]; под ред. К.К. Морозова. - М.: Сов. радио, 1978 - 136 с.
3. Автоматизация проектирования радиоэлектронных средств: Учеб. пособие для вузов / О.В. Алексеев [и др.]; под ред. О.В. Алексеева. - М.: Высшая школа, 2000. - 479 с.
4. Шандриков А.С. Последовательный метод разрезания графа с минимизацией внешних связей / А.С. Шандриков // Вестник Учреждения образования «Витебский государственный технологический университет» Пятый выпуск / УО «ВГТУ». - Витебск, 2003. С. 94-100.
Размещено на Allbest.ru
...Подобные документы
Рассмотрение структурной и функциональной схем для часов. Построение графа управляющего автомата. Кодирование входных и выходных сигналов. Разработка 12-часового режима работы и блока отключения индикаторов. Определение площади кристалла микросхемы.
курсовая работа [314,3 K], добавлен 27.04.2011Способы представления группы однотипных устройств. Обоснование выбора модели. Проверка условия загрузки узкого места. Взвешенная длина записей файлов, проходящих через селекторный канал. Построение графа сети. Число обращений к информационным файлам.
лабораторная работа [88,1 K], добавлен 20.03.2013Типовая схема процесса автоматизированного проектирования РЭС. Классификация проектных задач решаемых в процессе проектирования РЭС. Структура САПР, математическое обеспечение, лингвистическое обеспечение. Языки диалогов их разновидности и типы.
реферат [108,1 K], добавлен 10.12.2008Эквивалентная схема замещения для работы на средних частотах при малом и большом сигнале. Влияние номиналов элементов на параметры схемы, составление ее полного и сокращённого унисторного графа. Коэффициент усиления по напряжению и входной проводимости.
курсовая работа [2,1 M], добавлен 17.03.2011Построение графа синтезируемого автомата. Определение количества элементов памяти. Составление таблицы переходов, выходов и возбуждения конечного автомата. Переход от исходного автомата Мили к эквивалентному автомату Мура. Алгоритмы вычисления функций.
курсовая работа [714,7 K], добавлен 21.05.2013Теоретические принципы разработки микропроцессорной системы охраны и сигнализации. Разработка графа и таблицы переходов состояний МПСО, его аппаратного и программного интерфейса, управляющих программ режимов и специального программного обеспечения.
курсовая работа [37,0 K], добавлен 12.05.2012Разработка автомата турникета в метро, его условно-графическое изображение. Список входных и выходных сигналов устройства, построение графа состояний. Расчёт количества триггеров, комбинационные схемы входа и выхода. Уравнения и описание на языке AHDL.
курсовая работа [244,2 K], добавлен 07.09.2012Математическая модель САР в виде систем дифференциальных уравнений. Представление линейной математической модели САР в виде взвешенного сигнального графа и структурной схемы. Нахождение главного оператора с помощью правил преобразования структурной схемы.
курсовая работа [435,3 K], добавлен 01.10.2016Выбор формата данных. Разработка алгоритма и графа макрооперации. Разработка функциональной электрической схемы и её особенности. Выбор элементной базы. Разработка принципиальной схемы. Микропроцессорная реализация устройства на языке Ассемблер.
курсовая работа [955,0 K], добавлен 04.05.2014Структурная схема и синтез цифрового автомата. Построение алгоритма, графа и таблицы его функционирования в микрокомандах. Кодирование состояний автомата. Функции возбуждения триггеров и формирования управляющих сигналов. Схема управляющего устройства.
курсовая работа [789,4 K], добавлен 25.11.2010Теоретические основы процессоров. Построение процессоров и их общая структура. Цифровые автоматы. Расчёт количества триггеров и кодирование состояний ЦА. Структурная схема управляющего устройства. Построение графа функционирования управляющего устройства.
курсовая работа [85,0 K], добавлен 08.11.2008Поняття та сутність ПЛІС, проектування та зародження мови VHDL. Моделювання систем за допомогою MatLab та Quartus II. Принцип роботи блока Stateflow. Створення графа станів для синхронного кінцевого автомата. Одержання VHDL коду в середовищі Quartus.
отчет по практике [2,2 M], добавлен 15.02.2013Формирование алфавитного оператора. Приведение оператора к автоматному виду. Построение графа переходов абстрактного автомата. Кодирование состояний, входных и выходных сигналов. Формирование функций возбуждения и выходных сигналов структурного автомата.
курсовая работа [66,3 K], добавлен 10.11.2010Схемы связей АСУ ТП насосной станции. Разработка диаграммы состояний системы. Выбор модели двигателя и программируемого логического контроллера. Обоснование выбора модели двигателя. Особенности выбранного программируемого логического контроллера.
контрольная работа [929,4 K], добавлен 13.01.2012Знакомство с ключевыми особенностями постройки шестнадцатеричного счетчика, работающего в коде Грея с индикацией на 7-сегментном индикаторе. Общая характеристика счетчиков с последовательным переносом: основное назначение устройств, рассмотрение функций.
контрольная работа [1,6 M], добавлен 06.08.2013Простановка номеров цепей по техническому заданию. Компоновка типовых элементов конструкции. Размещение микросхем на коммутационных платах. Минимизация длины связей между контактами разъема и контактами внешних цепей. Трассировка проводников на плате.
курсовая работа [3,5 M], добавлен 19.11.2010Синтез комбинационных схем. Построение логической схемы комбинационного типа с заданным функциональным назначением в среде MAX+Plus II, моделирование ее работы с помощью эмулятора работы логических схем. Минимизация логических функций методом Квайна.
лабораторная работа [341,9 K], добавлен 23.11.2014Автоматизация технологического процесса разваривания на спиртзаводе. Современная платформа автоматизации TSX Momentum. Программное обеспечение логического контроллера. Спецификация приборов, используемых в технологическом процессе пищевого производства.
дипломная работа [8,7 M], добавлен 19.03.2014Обоснование выбора программируемого логического контроллера и разработка автоматизированной системы контроля процесса пайки топливных коллекторов с помощью логического процессора фирмы "ОВЕН". Программное обеспечение датчиковой аппаратуры системы.
дипломная работа [3,5 M], добавлен 02.06.2014Основные законы алгебры логики. Дизъюнктивные нормальные формы. Синтез комбинационных логических схем. Счетчики с параллельным и последовательным переносом. Общие сведения о регистрах. Синхронные и асинхронные триггеры. Минимизация логических функций.
методичка [2,7 M], добавлен 02.04.2011