Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Элементы теории графов 2 страница




  A B C D К F G Н I J К L М N
Λ0                            

Нули в строке Λ0 дают вершины, которым не предшествует ни одна дру­гая вершина. Таким образом, вершины E и H составляют уровень N 0. Исключив из сумм строки Λ0 значения, записанные в строках E и H, получим строку Λ1, в которой нули из Λ0 заменены знаком «+».

  A B C D К F G Н I J К L М N
Λ1         +     +            

Рис. 2.23. Порядковая функция на графе: а) исходный граф; б) уровни упорядоченного графа

Рис. 2.24

Появившиеся в строке Λ1 нули дают вершины, которым не предшествует ни одна другая вершина, кроме ранее удаленных E и H. Это вершины B, I, J, ко­торые образуют множество уровня N 1. Далее из Λ1 вычтем суммы строк B, I, J, заменив все ранее появившиеся нули знаками «+» и получим строку Λ2:

  A B C D К F G Н I J К L М N
Λ2   +     +     + + +        

Новые нули, появившиеся в Λ2, дают вершины, для которых не существу­ет других предшествующих вершин, кроме удаленных E, H, B, I, J. Вершины A, G, N составляют уровень N 2. Этот процесс продолжается до тех пор, пока не будет закончен перебор всех вершин исходного графа (матрицы):

  A B C D К F G Н I J К L М N
Λ3 + +     +   + + + +       +
Λ4 + +     + + + + + +       +
Λ5 + +   + + + + + + + + + + +

После этого строится граф (рис. 2.25) с четко определенной порядковой функцией, когда вершины находятся на соответствующих им уровнях.

Рис. 25. Уровни упорядоченного графа

Когда граф содержит, по крайней мере, один контур, найдется строка Λ i в которой невозможно добиться появления нового нуля. Этот факт дает автоматическое средство для выявления контуров в графе.

Прикладные задачи теории графов.

1. Задача нахождения кратчайшего пути. В практических приложениях большое значение имеет задача о нахождении кратчайшего пути между двумя вершинами связного графа. К ней сводятся многие задачи выбора наиболее экономичного (с точки зрения расстояния, времени или стоимости) маршрута перевозок; способа перевода динамической системы из одного состояния в дру­гое; построения сети связи минимальной длины (стоимости); потерь.

Если каждому ребру графа G (V, E) приписано число l (e) ≥ 0, называемое его длиной, общая постановка этой задачи заключается в нахождении мини­мальной длины пути μ ab между двумя произвольными вершинами a и b:

.

1а. Нахождение кратчайшего пути в графе с ребрами единичной длины. Если все ребра графа имеют одинаковую длину, то длина их принимается рав­ной 1. Вершины такого графа представляют состояние некоторой системы, в которой все переходы, делающиеся за один шаг, эквивалентны. Когда граф со­держит небольшое количество ребер, то искомый путь можно непосредственно увидеть, найти без каких-либо правил, путем перебора. При значительном ко­личестве вершин и ребер в графе возникает необходимость в четком описании способа решения задачи. Общее правило нахождения кратчайшего пути состо­ит в том, чтобы каждой вершине хi приписать индекс λ i, равный длине кратчайшего пути из данной вершины в конечную. Приписывание индексов верши­нам производится в следующем порядке:

· конечной вершине x 0 приписывается индекс λ0 = 0;

· всем вершинам, принадлежащим множеству ребер, инцидентных x 0 (которые связаны ребрами с x 0), приписывается индекс λ1 = 1;

· всем вершинам, еще не имеющим индексов, принадлежащих множеству ре­бер, инцидентных xi, приписывается индекс λ i + 1;

· процесс продолжается до тех пор, пока не будет помечена начальная верши­на, индекс которой будет равен длине кратчайшего пути.

Сам путь определяется при движении из начальной вершины в направле­нии убывания индексов.

Пример определения кратчайшего пути на графе с ребрами одинаковой длины из начальной вершины Z в конечную X показан на рис. 2.26. Часть вер­шин исходного графа при решении поставленной задачи можно не помечать, так как они заведомо не входят в искомый маршрут.

1б. Нахождение кратчайшего пути в графе с ребрами произвольной дли­ны. Задача приписывания вершинам графа числовых индексов усложняется, ес­ли его ребра имеют произвольную длину. Путь, проходящий через наименьшее количество вершин, часто имеет большую длину, чем «обходные» пути.

Рис. 2.26. Построение кратчайшего пути в графе с ребрами одинаковой xihiim

Пример. Решение этой задачи для графа рис. 2.27 с начальной вершиной a и конечной k и ребрами произвольной длины произведем графически:

· из начальной вершины va проведем все ребра, по которым из нее можно не­посредственно попасть в любую другую, и проставим на ребрах расстояние от va до соответствующей вершины (рис. 2.28, а);

· если между вершинами, выделенными на первом шаге, существуют другие пути, то определить, является ли длина непрямого пути между va и любой дру­гой вершиной меньше прямого из va в рассматриваемую вершину (рис. 2.28, б);

· добавляются все вершины, в которые можно непосредственно попасть из вершин, выделенных на первом шаге, и к ним применяется процедура, изло­женная в предыдущем пункте (рис. 2.28, в);

· шаги 3 и 2 повторяются, пока не появится конечная вершина k.

Рис. 2.27. Граф с ребрами произвольной длины

Кратчайший путь на рис. 2.28 показан сплошными линиями, все осталь­ные – пунктирными (рис. 2.28, б, в, г). Если длины прямого и непрямого пути равны, оба изображаются сплошными линиями. Над каждой вершиной про­ставлена длина кратчайшего пути до нее от начальной вершины. Эта задача решается и при дополнительном ограничении: число вершин, через которые проходит кратчайший путь, может быть минимальным.

2. Задачи управления проектами, сетевого планирования и управления. Ориентированный граф является мощным средством для описания и анализа взаимодействия элементов сложных агрегатов, объединенных в единую систе­му; системных комплексов; проектов, требующих выполнения большого числа взаимосвязанных операций (работ). Термин «работа» может иметь следующие значения: а) действительная работа в прямом смысле слова, то есть трудовой процесс, требующий затрат времени и ресурсов; б) ожидание, не требующее за­трат труда, но занимающее некоторое время; в) «фиктивная работа», то есть ло­гическая связь между двумя или несколькими операциями, не требующая ни за­трат времени, ни ресурсов, но указывающая, что возможность начала одной ра­боты непосредственно зависит от результатов другой.

Например, это процесс разработки, сооружения, монтажа и наладки обо­рудования крупного энергетического объекта, включая этапы выбора и подго­товки места строительства; выполнение комплексной научно-исследователь­ской темы с участием ряда организаций и т.п. Подобные проекты связаны с вы­полнением множества отдельных непересекающихся операций a 1, a2, …, an ко­торые выбираются так, чтобы можно было установить все существенные отно­шения, предшествующие данной операции. Хотя некоторые операции проекта независимы друг от друга, в общем случае между ними существует достаточно сильная зависимость во времени.

Рис. 2.28. Преобразования первого шага а), второго б), третьего в) и окончательный вариант г)

Например, настройка устройств РЗА энергообъекта может производиться только после предварительных расчетов и монтажа; ремонт обмотки силового трансформатора – начат только после отключения и отсоединения его от сети, выемки внутренней части, расшихтовки сердечника и т.д.

Если заданы все подобные временные зависимости, то они могут быть представлены в виде ориентированного графа (рис. 2.29), который называют сетевым. Каждая дуга графа рис. 2.29 соответствует одной операции, а каждая вершина называется событием и соответствует некоторому моменту времени. Так вершина v 1 представляет событие, связанное с началом всего проекта, когда могут выполняться только операции a 1, a2, a 3. Проект считается законченным после выполнения операций аи, a 11, a 1 2 , a 13, а следовательно, всех операций проек­та, когда наступает событие, соответствующее вершине v 8. Промежуточные вершины отражают взаимосвязи операций во времени. Вершины выбираются и сопоставляются с дугами так, чтобы для каждой операции (дуги) и события (вершины) было справедливо следующее утверждение: если операция ai, имеет начальное событие в виде вершины vi, то она не может быть начата до тех пор, пока все операции, заканчивающиеся в vi не будут выполнены: операция a 10 (также, как и a 12) (рис. 2.29) может быть начата только после выполнения опе­раций a 5 и a 7. Косвенно начало операции a 10 зависит от моментов выполнения операций a 1, a 2, a 4, так как они непосредственно определяют начало операций a 5 и a 7. Граф, представляющей процесс выполнения операций, является ацикли­ческим. Наличие цикла создало бы невозможную ситуацию, в которой ни одна из операций, входящих в цикл не могла бы начаться первой.

Рис. 2.29.

На основании изложенного, определяются основные требования к по­строению сетевого графа:

1) в сетевом графе не должно быть тупиков – событий, из которых не выходит ни одной работы, если эти события не являются завершающими;

2) в сетевом графе не должно быть событий, в которые не входит ни од­ной работы, если эти события не являются исходными;

3) в сетевом графе не должно быть замкнутых контуров, циклов.

Предположим, что для выполнения каждой операции a, требуется извест­ное фиксированное время t (ai), которое соответствует числам на дугах графа рис. 2.29. Несколько операций можно выполнять одновременно, если ни одна из операций рассматриваемой группы не ограничена моментами выполнения других операций, входящих в нее. Длина (сумма временных интервалов) любо­го пути из v 1 в vi соответствует времени, измеряемому от начала выполнения проекта до наступления события vi, после осуществления которого, могут быть начаты операции, имеющие vi, в качестве начальной вершины.

Путь, имеющий наибольшую продолжительность, называется критиче­ским – общая минимальная продолжительность всех работ, осуществляемых в данном проекте. Нахождение его выполняется по методу, аналогичному рассмотренному выше для поиска кратчайшего пути в графе с ребрами произволь­ной длины с заменой минимума целевой функции на максимум. Чтобы сокра­тить сроки выполнения проекта необходимо сократить сроки работ, находя­щихся на критическом пути. Критических путей (рис. 2.29) может быть не­сколько: P кр1 = t кр = { v 1, v 2, v 4, v 5, v 6, v 8,} = 13 и P кр2 = t кр = { v 1, v 2, v 4, v 6, v 8,} = 13.

Разница между продолжительностью критического пути t кр и любого дру­гого ti называется резервом времени пути P п = t крti.

Разница между поздним t п и ранним t р сроками совершения того или ино­го события называется резервом времени события P с = t пt р.

Реально продолжительность каждой операции есть случайная величина, определяемая соответствующим законом распределения, оценки параметров и распределения которой используются при последующем анализе. При решении несложных задач предлагается использовать «бета-распределение», при кото­ром для каждой операции находятся (или задаются) три временные оценки: a – пессимистическая, b – оптимистическая и m – наиболее вероятная. Тогда сред­нее значение времени выполнения операций и его стандартное отклонение оце­ниваются как ; .

Показатели возможного разброса сроков окончания операций использу­ются для оценки вероятности окончания проекта в заданный срок. Кроме дли­тельности выполнения проекта рассматриваются и другие количественные ха­рактеристики: затраты людских или денежных средств (ресурсов, материалов, механизмов), очередность строительства или ввода связанных объектов и т.п., которые могут оказаться взаимозависимыми. Учет их позволяет сократить дли­тельность операций с помощью дополнительных ресурсных вложений. Реше­ние подобных задач осуществляется с использованием современных компью­терных технологий и программных продуктов, в частности, MS Project 2003.

3. Задача нахождения максимального потока в сети при ограниченных пропускных способностях отдельных участков. Если каждой дуге графа при­писать поток некоторого вещества, соответствующий пропускной способности линий электропередачи, трубопроводов различного назначения, граф становит­ся удобной моделью при исследовании целого ряда проблем, возникающих на транспорте, в системах электроэнергетики, связи, связанных с действительным или воображаемым движением товаров, информации, ресурсов.

Потоком в сети N называется целочисленная функция φ, определенная на дугах исходного графа. Целое число 0 ≤ φ(u) ≤ c (u) называется потоком по дуге a и интерпретируется как количество вещества, протекающего в единицу времени по дуге (скорость, мощность, потери). Если величина потока равна пропускной способности дуги φ(u) = c (u), поток называется насыщенным. На­правление потока определяется знаком φ(u). Поток полный, если любой путь, ведущий из vi в vj содержит, по крайней мере, одну насыщенную дугу.

Вершины в сети N классифицируются по их воздействию на поток φ: соз­дают (источники), поглощают (стоки) или сохраняют поток. Любой поток можно преобразовать в поток, только с одним источником и одним стоком, увеличив количество вершин в сети. В результате образуется сеть с одним ис­точником и одним стоком. Для такой сети справедливы известные из электро­техники законы Кирхгофа. Когда начальный поток является неполным, можно определить путь из вершины x 0 в xk который не содержит насыщенных дуг. На первом шаге полагаем, что величины φ(u), составляющие этот путь равны ну­лю. На втором к нулевому начальному потоку добавляется наименьшая из ве­личин c (u) – φ(u), вычисленных для дуг рассматриваемого пути, после чего рассматриваемый путь будет содержать, по крайней мере, одну насыщенную дугу. На последующих шагах подобным образом поступают с другими возмож­ными путями и получают полный поток.

Пример. Для сети энергосистемы, представленной графом рис. 2.30 с ука­занными на нем пропускными способностями дуг, соответствующими переда­ваемой мощности (величине протекаемого тока), определить максимальный по­ток из начальной вершины v 0 в конечную vk.

Решение представлено в форме таблицы 2.1. В первом столбце указаны дуги с учетом их направления. Во втором – величины начального (нулевого) потока. В последующих столбцах представлены величины потока, полученные в результате различных итераций, производимых способом, указанным ниже.

Рис. 2.30.

Таблица 2.1.

Дуги Начальный поток Ф = 0 Путь P = { v 0, v 4, v 3, vk } Путь   Путь P = { v 0, v 1, v 2, vk }
         
v 0, v 4        
v 0, v 1        
v 4, v 3        
v 4, v 2        
v 1, v 2        
v 2, vk        
v 3, v 2        
v 3, vk        

Специально отмеченные величины потока являются величинами, насы­щающими соответствующие дуги. В третьем столбце рассмотрен путь P = { v 0, v 4, v 3, vk }. Дуга v 4, v 3 насыщается, когда поток увеличивается до макси­мально возможной величины φ(u) = 2. В четвертом столбце представлен путь P = { v 0, v 4, v 2, vk }, в котором предыдущий по дуге v 0, v 4 поток увеличивается на 3 единицы, доводя его до насыщенного (φ(u) = 5), и, следовательно, не имеет смысла рассматривать другие дуги, содержащие v 0, v 4. Пятый столбец содержит данные, относящиеся к пути P = { v 0, v 1, v 2, vk } с насыщенным по дуге v 1, v 2 потоком φ(u) = 2, который увеличивает еще на 2 единицы результирующий поток сети.

Разрезав сеть по дугам v 0, v 4, v 0, v 1 и v 3, vk, v 2, заключаем, что максимальный поток Ф = 7. Равенство исходящих из v 0 и входящих в vk потоков подтверждает­ся законом Кирхгофа. Особо отметим, что дуга v 3, v 2 не участвует в передаче мощности и при решении данной задачи она может быть исключена из состава сети. Однако при постановке целого ряда других задач (например, связанных с надежностью электроснабжения) ее роль может оказаться решающей.

4. Применение понятия дерева для конструирования кратчайшей сети. Предположим, что несколько электроприемников (РП, подстанций, узлов на­грузки или электростанций) объединяются в единую сеть. Поскольку требова­нием является только наличие связи между вершинами, задача сводится к поис­ку соединения минимальной длины (стоимости). Когда число узловых точек мало, решение получают последовательным перебором, но при увеличении ко­личества вершин задача усложняется. В терминах теории графов она формули­руется следующим образом. Пусть G – связный граф, каждому ребру которого приписано неотрицательное число cij – мера, вычисляемая по заданным коорди­натам как расстояние между узлами сети. Требуется построить граф T, у кото­рого сумма мер cij, у имеет минимальное значение M (T) = ∑ cij = min. Такой граф должен быть деревом, так как если бы он содержал цикл, удаление одного из ребер не нарушило бы его связанности.

Для построения этого графа используется алгоритм Краскала. 1. Ребра графа G упорядочиваются в порядке неубывания их мер. 2. Начав с первого ребра в этом списке, обладающего наименьшей мерой, определяется последо­вательность ребер в соответствии со следующим условием: на каждом после­дующем шаге выбирается ребро отличное от предыдущих, с наименьшей ме­рой, не образующее циклов с ранее выбранными ребрами. Если имеется не­сколько ребер с одинаковой мерой; то выбирается любое из них. Построенное таким образом дерево и есть сеть минимальной длины (стоимости).

При использовании этого алгоритма составления полного списка ребер в порядке возрастания их весов обычно не требуется, так как n ­1 искомых ребер, образующих сеть минимальной стоимости, будут найдены после просмотра только «верхней» части списка.

Если число узлов проектируемой сети относительно невелико, появляется возможность (особенно при разработке низковольтных сетей, сетей контроль­ных кабелей и кабелей связи) вторичной оптимизации дерева T, что может при­вести к дополнительному сокращению его длины (стоимости) на 7 ÷ 12%. Такая задача известна как задача Штейнера. Решение ее заключается в нахождении дерева L, которое «стягивает» множество вершин дерева Т так, что сумма мер вновь образованных ребер удовлетворяет неравенству M (L) < M (T).

Это достигается за счет изменения первоначальной структуры сети T вве­дением дополнительных «искусственных» вершин k, которые можно интерпре­тировать как транзитные устройства, распределительные пункты, клеммные ко­робки. Условия построения кратчайшего дерева заключаются в следующем.

1) Каждая «искусственная» вершина ki вновь образованного дерева L имеет степень ρ = 3 и угол между ребрами, инцидентными ей – 120°. Эта верши­на является центром треугольника, вершинами которого служат три другие вершины, с которыми она связана. Отдельные вершины этого треугольника мо­гут оказаться при этом другими «искусственными» вершинами.

2) Максимальное число «искусственных» вершин k в L определяется со­отношением 0 ≤ kn – 2, где n – число вершин исходного графа T.

Пример. В соответствии с заданными координатами рис. 2.31, а построено дерево T, длина которого M (T) = 75. Путем введения двух дополнительных «ис­кусственных» вершин k = n – 2 = 4 – 2 = 2 построено дерево L, длина которого M (L) = 69 определена посредством несложных вычислений на основе информа­ции, представленной на рис. 2.31, б.

Рис. 2.31. Вторичная оптимизация дерева путем введения «искусственных» вершин

Рис. 2.32. Сокращение длины (стоимости) сети за счет введения «искусственных» вершин

Разность длин Δ N деревьев T и L: Δ N = M (T) – V (L) = 75 – 68 = 7. Полу­ченный результат означает, что выигрыш, который получен при вторичной оп­тимизации, может быть эффективен только в том случае, если затраты на со­оружение дополнительных «искусственных» вершин (распределительных уст­ройств) не превышают 7.

Следует отметить, что прокладка реальных инженерных коммуникаций, в том числе и электрических сетей, ведется обычно согласно плану расположения оборудования, и трассы линий находятся под прямым углом друг к другу. Рас­стояние между узлами сети (вершинами графа) с координатами (x 1, y 1),(x 2, y 2) вычисляется по формуле d 12 = | x 1x 2|+| y 1y 2|.

При решении задачи Штейнера в этом случае через каждую вершину vi дерева T проводятся горизонтали и вертикали, пересечения которых рассматри­ваются как возможное местоположение «искусственных» вершин.

Пример. Исходный граф T поострен в соответствии с рис. 232, а. Одно из решений задачи Штейнера представлено на рис. 2.32, б.




Поделиться с друзьями:


Дата добавления: 2015-04-30; Просмотров: 524; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.