Главная » Просмотр файлов » Новиков Ф.А. Дискретная математика для программистов

Новиков Ф.А. Дискретная математика для программистов (860615), страница 52

Файл №860615 Новиков Ф.А. Дискретная математика для программистов (Новиков Ф.А. - Дискретная математика для программистов. 2009) 52 страницаНовиков Ф.А. Дискретная математика для программистов (860615) страница 522022-01-13СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 52)

Имеем:div(/, s) = w(f) = F(P+) - F(P-)= F(P+) = J2 f(v, t) - - div(/, t).•Глава 8. Связность278ЛЕММА 3w { f ) ^ДОКАЗАТЕЛЬСТВОЛЕММА 4F{P).w { f ) = F{P+)-F{P~)< F{P+)^F(P).•m a x w ( f ) ^ minC(P).ДОКАЗАТЕЛЬСТВОПОпредыдущей лемме w ( f ) ^ F(P), следовательно, max w ( f ) ^^ m i n F ( P ) . По определению F(P) ^ C(P), следовательно, m i n F ( P ) ^ min C(P).Имеем: m a x w ( f ) ^ mmC(P).•(Форда-Фалкерсона 2 )Максимальный поток в сети равен минимальной пропускной способности разреза, то есть существует поток /*, такой, чтоТЕОРЕМАw { f ) = maxw(f)= nnn С(Р).Пусть / — некоторый максимальный поток. Покажем, что существует разрез Р, такой, что w(f) — С{Р). Рассмотрим граф G', полученный изсети G забыванием ориентации дуг.

Построим множество вершин S следующимобразом:ДОКАЗАТЕЛЬСТВОS =f{u ev\({ui,ui+1)3(s,u)eG'У{щ,т+1)G E ==> f(ui,ui+1)& (ui+i,ui) G E =>• f(ui+1,ui)e (s,u) e G'< С(щ,щ+1)k> 0)},то есть вдоль пути (s, и) дуги в направлении пути пе насыщены, а дуги противнаправления пути имеют положительный поток. Такая цепь (s,u) называетсяаугментальной. Имеем s е S по построению. Следовательно, S Ф 0. ПоложимT: = V \S.

Покажем, что t е Т. Действительно, пусть t е S. Тогда существуетаугментальиая цепь (s,t), обозначим её R. Но тогда можно найти число 6 > 0:. . ....| с(е) - fie) > 0,д: = т1пД(е), г д е Д ( е ) : = < „, .ееяI /(е) > 0,если е ориентировано вдоль R,_если е ориентировано против R.В этом случае можно увеличить величину потока па 6, изменив поток для всехдуг аугментальной цепи:J /(е) 4- 6, если е ориентировано вдоль R,| / ( е ) - <5, если е ориентировано против R.При этом условия потока выполняются: 0 ^ /(е) ^ С(е), div(i;) = 0.12Лестер Рендальф Форд мл. (р. 1927).Дальберт Рей Фалкерсон (1924-1976).2798.4.

Потоки в сетяхТаким образом, поток / увеличен па величину S, что противоречит максимальности потока / . Имеем t G Т и Т Ф 0 . Следовательно, S и Т определяют разрезР = Р+ U P " . В этом разрезе все дуги е+ насыщены ( / ( е + ) = с(е + )), а все дуги е~ пе нагружены (/(е~) = 0), иначе £ можно было бы расширить. Имеем:w ( f ) = F(P+)— F(P~)= С(Р+),таким о б р а з о м , Р+— и с к о м ы й разрез.•8.4.4. Алгоритм нахождения максимального потокаСледующий алгоритм определяет максимальный поток в сети, заданной матрицейпропускных способностей дуг. Этот алгоритм использует идею доказательстватеоремы Форда-Фалкерсопа, а именно, задавшись начальным приближениемпотока, определяем множество вершин S, которые соединены аугмеитальиымицепями с источником s.

Если оказывается, что t G S, то это означает, что поток немаксимальный и его можно увеличить на величину 6. Для определения аугмептальных цепей и одновременного подсчета величины 6 в алгоритме использованавспомогательная структура данных:Р : array [l..p] of records : enum ( - , + ) { «знак», то есть направление дуги }п : 1..р { предшествующая вершина в аугмепталыюй цепи }<5 : real { величина возможного увеличения потока }end recordN : array [l..p] of 0..1 { отметка узла }S : array [l..p] of 0..1 { признак принадлежности вершины множеству S}Алгоритм 8.1 Нахождение максимального потокаВход: сеть G(V,E) с источником s и стоком t, заданная матрица пропускныхспособностей С : array [l..p, l..p] of real.Выход: матрица максимального потока F : array [1 ..р, 1 ..р] of real,for u, v G V doF[u,v]: = 0 { вначале поток пулевой }end forM : { итерация увеличения потока }for v G V doS[v]: = 0; N[v]: = 0; P[v]: = ( + , nil, 0) { инициализация }end forS[s]: = 1; P[s]: = ( + , nil, oo) { так как s G S }repeata: = 0 { признак расширения S }for v € V doif S[v] = 1 к TV [и] = 0 thenfor u G Г(г») doif S[u] = 0 к F[v, u] < C[v,u] thenS[u]: = 1; P[u]: =(+, v, min(PM.<5, C[v, u] - F[v, u])); a: = 1end if280Глава 8.

Связностьend forfor и e r _ 1 ( v ) doif S[u] = 0 & F[u, v] > 0 thenS[u]: = 1; P[u] : =(-,v, min(P[i;].<5, F[u, v]));a: = 1end ifend forN[v]: = 1 { узел v отмечен }end ifend forif S[t] thenx: = t { текущий узел аугментальной цепи }S: = P[t].S { величина изменения потока }while х ф s doif P[x].s = + thenF[P[x].n, x]: = F[P[x].n, x] + <5 { увеличение потока }elseF[x, P[x].n]: = F[x, P[x].n} — <5 { увеличение потока }end ifx : = P[x].n { предыдущий узел аугментальной цепи }end whilegoto Mend ifuntil a — 0В качестве первого приближения берётся нулевой поток, которыйпо определению является допустимым.

В основном цикле, помеченном меткойМ, делается попытка увеличить поток. Для этого в цикле repeat расширяется,пока это возможно, множество S узлов, достижимых из источника s по аугментальпым цепям. При этом, если в множество S попадает сток t, то поток вдольнайденной аугментальной цепи (s,t) немедленно увеличивается на величину 6и начинается новая итерация с целью увеличить поток.

Процесс расширениямножества S в цикле repeat заканчивается, потому что множество узлов конечно, а отмеченные в массиве N узлы повторно не рассматриваются. Еслипроцесс расширения множества S заканчивается и при этом сток t не попадаетв множество 5, то по теореме Форда-Фалкерсопа найденный поток F являетсямаксимальным и работа алгоритма завершается.•ОБОСНОВАНИЕЗАМЕЧАНИЕПриведённый алгоритм не является самым эффективным. Более подробное изложениеизвестных методов можно найти, например, в [8] или в [21].8.5.

Связность в орграфах2818.4.5. Связь между теоремой Менгера и теоремойФорда-ФалкерсонаТеорема Менгера является фундаментальным результатом, который проявляетсяв различных формах (см., например, задачи 8.3.1, 8.3.2, 8.3.3). Теорема ФордаФалкерсона также может быть получена из теоремы Менгера. Далее приведенасхема доказательства теоремы Форда-Фалкерсопа на основе теоремы Менгера.Сначала нужно получить вариант теоремы Менгера в ориентированной рёберной форме: наибольшее число (s,£)-nyTeft, не пересекающихся по дугам, равнонаименьшему числу дуг в (s, £)-разрезе. Это теорема Форда-Фалкерсоиа в томслучае, когда Ve е Е (с(е) = 1).

Действительно, пусть Q — множество дуг измаксимального набора непересекающихся (s,£)-nyTeft. Назначим поток следующим образом: / ( е ) : = 1, если е е Q, и / ( е ) : = 0, если е g Q. Это поток, так какдивергенция в любом узле равна 0 и поток через дугу пе превосходит пропускной способности.

Величина этого потока равна к < d + (s), где к — числодуг, выходящих из s, которые начинают пути из Q. Этот поток максимальный.Действительно, если положить / ( е ) : = а > 0 для некоторой дуги е g Q, то:1) если дуга е входит в узел, входящий в пути из Q, или выходит из такого узла,то нарушается условие потока (дивергенция —а или + а соответственно);2) если вновь назначенные дуги с ненулевыми потоками образуют новый (s,t)~путь, то это противоречит выбору Q.Пусть теперь пропускные способности суть натуральные числа.

Тогда можно провести аналогичные рассуждения для мультиграфов, считая, что вместо однойдуги с пропускной способностью п имеется п дуг с пропускной способностью 1.Если пропускные способности — рациональные числа, то их можно привести кобщему знаменателю и свести задачу к предыдущему случаю.Для вещественных пропускных способностей заключение теоремы можно получить путем перехода к пределу в условиях предыдущего случая.ОТСТУПЛЕНИЕПриведенное в разделе 8.4.3 доказательство теоремы Форда-Фалкерсона конструктивно,из него не только следует заключение о величине максимального потока, но и извлекаетсяспособ нахождения максимального потока. Набросок доказательства в этом подразделенеконструктивен — из него нельзя извлечь алгоритм.8.5.

Связность в орграфахСвязность является одним из немногих понятий, которые пе распространяютсянепосредственно с графов па другие родственные объекты и требуют отдельногоопределения и рассмотрения в каждом случае. В данном разделе рассматриваетсясвязность в орграфах, поскольку именно это понятие чаще всего применяетсяв программировании.282Глава 8. Связность8.5.1.

Сильная, односторонняя и слабая связностьВ неориентированном графе две вершины либо связаны (если существует соединяющая их цепь), либо пе связаны. В ориентированном графе отношениесвязанности узлов несимметрично, а потому определение связности отличается.Пусть G(V, Е) — орграф, гл и v2 — его узлы. Говорят, что два узла гл и v2 сильносвязаны в орграфе G, если существует путь (ориентированная цепь) как из vi вv2, так и из v2 в гл. Говорят, что два узла гл и v2 односторонне связаны в орграфеG, если существует путь либо из гл в v2, либо из v2 в гл. Говорят, что два узлагл и v2 слабо связаны в орграфе G, если они связаны в графе G', полученномиз G забыванием ориентации дуг.

Если все вершины в орграфе сильно (односторонне, слабо) связаны, то орграф называется сильно (односторонне, слабо)связным. Сильная связность влечет одностороннюю связность, которая влечетслабую связность. Обратное, разумеется, неверно.Пример На рис. 8.7 показаны диаграммы сильно, односторонне и слабо связных орграфов.8.5.2. Компоненты сильной связностиКомпонента сильной связности (употребляется аббревиатура КСС) орграфа G —это его максимальный сильно связный подграф.Каждый узел орграфа принадлежит только одной КСС.

Характеристики

Тип файла
PDF-файл
Размер
6,94 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6367
Авторов
на СтудИзбе
310
Средний доход
с одного платного файла
Обучение Подробнее