Ця стаття містить правописні, лексичні, граматичні, стилістичні або інші мовні помилки, які треба виправити. |
Алгоритм або метод Форда — Фалкерсона знаходить максимальний потік у транспортній мережі.
Метод Форда — Фалкерсона — метод, який базується на трьох концепціях: залишкові мережі, шляхи що збільшуються і розрізи. Ключову роль у методі Форда — Фалкерсона грають два поняття: залишкові мережі і доповнюють шляху. Дані концепції лежать в основі важливої теореми про максимальний потік і мінімальний розріз, яка визначає значення максимального нащадка за допомогою розрізів траспортної мережі. Метод Форда — Фалкерсона є ітеративним. Спочатку величині потоку присвоюється значення 0: при будь-яких , Є . На кожній ітерації величина потоку збільшується за допомогою пошуку «шляху, що збільшується» (тобто деякого шляху від джерела до стоку , уздовж якого можна послати більший потік) і подальшого збільшення потоку. Цей процес повторюється до тих пір, поки вже неможливо буде відшукати збільшуючийся шлях.
Алгоритми
Нехай граф, і для кожного ребра з в , нехай буде ємність і буде потік. Ми хочемо знайти максимальний потік від джерела до раковини . Після кожного кроку в алгоритмі виходить наступне:
Обмеженість потенціалу: Потік уздовж краю не може перевищувати свій потенціал. Косі симетрії: Чистий потік від до повинен бути протилежністю чистого припливу від до (див приклад). Збереження потоку: Тобто, якщо не або . Чистий потік до вузла дорівнює нулю, для джерела, який «виробляє» потік, і раковину, яка «поглинає» потік. Значення (F): Тобто, потік виходячи з повинен бути рівним потоку, що надходить у .
Це означає, що потік через мережу є легальним потоком після кожного раунду в алгоритмі. Визначимо залишкову мережу , щоб бути в мережі з потужністю , і без потоку. Зверніть увагу, що може статися, що потік від до дозволений в залишковій мережі, хоча заборонений в вихідній мережі: якщо та , тоді .
Алгоритм Форда — Фалкерсона
Алгоритм:
На першому етапі джерелу присвоюється позначка нескінченність. На цьому етапі всі інші вузли не помічені. Постараємося розставити позначки дійшовши до стоку T®S.
1. Дійшовши до стоку йому приписуємо позначку [qij, k].
2. Шлях потоку від джерела буде знайдений і потік для кожної дуги цього шляху збільшиться на величину qt.
3. Дійшовши до стоку ми почнемо розставляти позначки спочатку, при цьому необхідно стежити, щоб залишкова пропускна здатність всіх дуг була перевищена.
4. Сток не може бути позначений, це означає, що потік не може бути збільшений і що знайдений потік на попередніх кроках є максимальним.
Ford Fulkerson Method () 1. Задаємо початкове значення потоку ; 2. while (Поки) існує шлях що збільшується ; 3. do збільшуємо потік уздовж шляху ; 4. return ;
Розріз
Існує теорема про максимальний потік в мережі, вона полягає в тому, що максимальний потік в мережі дорівнює її мінімального розрізу.
Розріз — це безліч дуг виключення яких ділить всі безліч вузлів в мережі на 2 непересічних частини.
Пропускна здатність розрізу — це сума пропускної здатності дуг входять в розріз.
Відповідно до цієї теореми ми можемо побудувати і розглянути всі розрізи і знайти мінімум — це максимум пропускної здатності даної мережі. Але з цієї теоремі ми не можемо знайти всі потоки проходять по дугах мережі. Використовуються позначки для вказівки величини потоку і його джерело.
Наприклад, якщо з вершини i в j передається qj одиниць потоку і ця добавка викликає збільшення потоку по дузі, то вузлу j приписується позначка [qj, i], якщо ж величина потоку qj викликає зменшення потоку по цій дузі, то вузлу j присвоюється позначка [ -qij, i].
[qj, i] — пряма дуга; [-qj, i] — зворотна дуга.
Потік по кожній прямій дузі збільшується, при цьому він не повинен перевищувати її пропускну спроможність, а потік по кожній зворотного дузі зменшується, але при цьому він не повинен ставати негативним.
Залишкові мережі
Залишкова мережа — мережа, що складається з ребер, що допускають збільшення потоку. Більш строго, нехай дана транспортна мережа з джерелом і стоком . Нехай — деякий потік в . Розглянемо пару вершин ,. Величина додаткового потоку, який ми можемо направити з в , не перевищивши пропускну спроможність , є залишковою пропускною здатністю ( residual capacity ) ребра (), і задається формулою . Наприклад, якщо і , то можна збільшити на , не порушивши обмеження пропускної спроможності для ребра . Коли потік негативний, то залишкова пропускна спроможність більше ніж пропускна спроможність . Так, якщо . Цю ситуацію можна зобразити наступним чином: існує потік величиною 4 одиниці з в , не порушивши обмеження пропускної здатності для ребра . Таким чином, починаючи з потоку , ми направили додаткові 20 одиниць потоку, перш ніж досягли обмеження пропускної спроможності. Для заданої транспортної мережі і потоку , залишкової мережі (residual network) в , породженої потоком , є мережа , де .
Малюнок 1
На Мал. 1 зображені: а) Транспортна мережа і потік . б) Залишкова мережа з виділеним збільшуючимся шляхом; його залишкова пропускна здатність дорівнює. в) Потік в мережі , отриманий в результаті збільшення потоку уздовж шляху на величину його залишкової пропускної здатності. г) Залишкова мережу, породжена потоком, показаним в частині в)
Таким чином, як і зазначалося вище, по кожному ребру залишкової мережі, або залишковим ребру (residual edge) , можна направити потік, більший 0. На Малюнку 1 (а) відтворені транспортна мережа і потік , представлені на рисунку 1 (б), а на Малюнку 1 (б), показана відповідна залишкова мережа . Ребрами є або ребра , або зворотні їм. Якщо для деякого ребра , то і . Якщо для деякого ребра , то . У такому випадку і, отже, . Якщо у вихідній мережі немає ні ребра , ні , то , і . Таким чином, можна зробити висновок, що ребро може опинитися в остаточній мережі тільки в тому випадку, якщо хоча б одне з ребер або знаходиться у вихідній транспортній мережі, тому: Зверніть увагу, що залишкова мережа є транспортною мережею зі значеннями пропускних спроможностей, заданими . Наступна лема показує, як потік у залишковій мережі пов'язаний з потоком у вихідній транспортній мережі.
Для збереження потоку, при всіх виконується рівність . І тоді, .
Шляхи, що збільшуються
Для заданої транспортної мережі і потоку шляхом, що збільшується ( augmenting path) є простий шлях з в в залишковій мережі . Згідно з визначенням залишкової мережі, кожне ребро шляху, що збільшується допускає деякий додатковий позитивний потік з в без порушення обмеження пропускної здатності для даного ребра. Виділений шлях на Малюнку 1 (б) є шляхом, що збільшується. Розглядаючи представлену на малюнку залишкову мережу як як деяку транспортну мережу, можна збільшувати потік уздовж кожного ребра даного шляху аж до 4 одиниць, не порушуючи обмежень пропускної здатності, оскільки найменша залишкова пропускна спроможність на даному шляху становить . Максимальна величина, на яку можна збільшити потік уздовж кожного ребра шляху, що збільшується і задається формулою .
Розрізи транспортних мереж
У методі Форда — Фалкерсона проводиться неодноразове збільшення потоку уздовж шляхів, що збільшуються до тих пір, поки не буде знайдений максимальний потік. Для доказу даної теореми вводимо поняття розрізу. Розрізом (CUT) транспортної мережі називається розбиття множини вершин на безлічі і , такі що , а . Якщо — потік, то чистий потік (net flow) через розріз за визначенням дорівнює . Пропускною здатністю (capacity) розрізу є . Мінімальним розрізом (minimum cut) мережі є розріз, пропускна здатність якого серед всіх розрізів мережі мінімальна. На Малюнку 2 показаний розріз транспортної мережі. Чистий потік через даний розріз дорівнює , а пропускна здатність цього розрізу дорівнює . Зверніть увагу, що чистий потік через розріз може включати в себе негативні потоки між вершинами, але пропускна здатність розрізу складається виключно з невід'ємних значень. Іншими словами, чистий потік через розріз складається з позитивних потоків в обох напрямках; позитивний потік з в додається, а позитивний потік з в віднімається. З іншого боку, пропускна здатність розрізу обчислюється тільки по ребрах, що йде з в . Ребра, що ведуть з в , не беруть участі в обчисленні . Наступна лема показує, що чистий потік через будь розріз однаковий і дорівнює величині потоку.
Теорема про максимальний потік і мінімальний розріз
Якщо — деякий потік в транспортній мережі з джерелом і стоком , то наступні твердження еквівалентні. 1. — максимальний потік в . 2. Залишкова мережа не містить збільшують шляхів. 3. для деякого розрізу мережі .
Доведення
(1) → (2): Припустимо, що є максимальним потоком в , але містить збільшує шлях . Відповідно до наслідку Леми 2, сума потоків , де задається рівнянням з наслідку Леми 3, є потоком в , величина якого суворо більше, ніж , що суперечить припущенню, що — максимальний потік.
(2) → (3): Припустимо, що не містить збільшуючого шляху, тобто не містить шляху з в . Визначимо існує шлях з . Розбиття є розрізом: очевидно, що , а не належить , оскільки в не існує шляху з в . Для кожної пари вершин справедливо співвідношення , оскільки в іншому випадку і слід помістити в множину . Отже, згідно Леми 3, .
(3) → (1): Згідно наслідку Леми 3, для всіх розрізів , тому з умови випливає, що — максимальний потік.
Леми
Лема 1
Нехай — транспортна мережа з джерелом і стоком , а — потік в . Нехай — залишкова мережа в , породжена потоком , а — потік в . Тоді сума потоків , обумовлена рівнянням, є потоком в , і величина цього потоку дорівнює
Доведення
Для , справедливо: . Так як для всіх . То випливає, що .
Лема 2
Нехай — транспортна мережа, а — деякий потік в , і нехай — деякий шлях, що збільшується у . Визначимо функцію → наступним чином: якщо належить , якщо належить , в іншому випадку. Тоді є потоком в і його величина становить . Випливає з даної леми наслідок показує, що якщо додати до , то ми отримаємо новий потік в , величина якого ближче до максимальної. На Малюнку 1 (в), показаний результат додавання , представленого на рисунку 1 (б), до , показаному на рисунку 1 (а).
Лема 3
Нехай — деякий потік в транспортній мережі з джерелом і стоком , і нехай — розріз . Тоді чистий потік через дорівнює .
Доведення
Зауважимо, що відповідно до властивості збереження потоку , так що . Безпосереднім наслідком леми є доведений раніше результат — що величина потоку дорівнює сумарному потоку, що входить в стік. Інший наслідок леми показує, як пропускні спроможності розрізів можна використовувати для визначення кордону величини потоку.
Наслідок
Величина будь-якого потоку у транспортній мережі не перевищує пропускну спроможність довільного розрізу .
Доведення
Нехай — довільний розріз , а — деякий потік. Згідно з попередньою лемою і обмеженням пропускної здатності,
З цього наслідку випливає, що максимальний потік в мережі не перевищує пропускної здатності мінімального розрізу. Зараз ми сформулюємо і доведемо важливу теорему про максимальний потік і мінімальний розріз, в якій стверджується, що значення максимального потоку дорівнює пропускній здатності мінімального розрізу.
Дослідження
Вперше проблеми пов'язані з пересилкою потоків у мережах були розглянуті Канторовичем в 1933 році. (Більше того — він розглядав більш загальну задачу з рухом потоку рідин різних типів (multicommodity flows)). Основи теорії потоків були закладені в період з листопада 1954 по грудень 1955 дослідниками корпорації RAND (Санта-Моніка, Каліфорнія). Простежимо за розвитком теорії потоків у хронологічному порядку за звітами RAND.
Перший звіт «Максимальний потік в мережі» датується 19 м листопада 1954. Автори звіту — Форд (Ford) і Фалкерсоном (Fulkerson), довели теорему про максимальний потік і мінімальному розрізі для неорієнтованих графів: значення максимального потоку в мережі одно мінімальної пропускної здатності розрізу. (Розрізом в мережі називається розбиття множини її вершин на два непересічних класу, таких що джерело і стік лежать у різних класах. Пропускний здатністю розрізу називається сума пропускних спроможностей ребер, кінці яких лежать в різних класах.) У 1955 році в роботі Робахера (Robacher) було згадано, що вперше цю теорему довів Фалкерсоном.
Робота Форда і Фалкерсона про потоки і розрізах була мотивована вивченням транспортних мереж залізниць (див. Далі). У тому ж звіту вони також описали простий алгоритм знаходження максимального потоку для планарних графів, що володіють такими додатковим властивістю: після додавання дуги з джерела в стік граф залишається планарним.
Примітки
- Томас Кормен; Чарльз Лейзерсон, Рональд Рівест, Кліфорд Стайн (2009) [1990]. 26.2 Метод Форда — Фалкерсона. Вступ до алгоритмів (вид. 3rd). MIT Press і McGraw-Hill. ISBN .
Посилання
- Бібліотека алгоритмів [ 22 грудня 2015 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Cya stattya mistit pravopisni leksichni gramatichni stilistichni abo inshi movni pomilki yaki treba vipraviti Vi mozhete dopomogti vdoskonaliti cyu stattyu pogodivshi yiyi iz chinnimi movnimi standartami Algoritm abo metod Forda Falkersona znahodit maksimalnij potik u transportnij merezhi Metod Forda Falkersona metod yakij bazuyetsya na troh koncepciyah zalishkovi merezhi shlyahi sho zbilshuyutsya i rozrizi Klyuchovu rol u metodi Forda Falkersona grayut dva ponyattya zalishkovi merezhi i dopovnyuyut shlyahu Dani koncepciyi lezhat v osnovi vazhlivoyi teoremi pro maksimalnij potik i minimalnij rozriz yaka viznachaye znachennya maksimalnogo nashadka za dopomogoyu rozriziv trasportnoyi merezhi Metod Forda Falkersona ye iterativnim Spochatku velichini potoku prisvoyuyetsya znachennya 0 f u v 0 displaystyle f u v 0 pri bud yakih u displaystyle u v displaystyle v Ye V displaystyle V Na kozhnij iteraciyi velichina potoku zbilshuyetsya za dopomogoyu poshuku shlyahu sho zbilshuyetsya tobto deyakogo shlyahu vid dzherela s displaystyle s do stoku t displaystyle t uzdovzh yakogo mozhna poslati bilshij potik i podalshogo zbilshennya potoku Cej proces povtoryuyetsya do tih pir poki vzhe nemozhlivo bude vidshukati zbilshuyuchijsya shlyah AlgoritmiNehaj G V E displaystyle G V E graf i dlya kozhnogo rebra z u displaystyle u v v displaystyle v nehaj c u v displaystyle c u v bude yemnist i f u v displaystyle f u v bude potik Mi hochemo znajti maksimalnij potik vid dzherela s displaystyle s do rakovini t displaystyle t Pislya kozhnogo kroku v algoritmi vihodit nastupne Obmezhenist potencialu u v E f u v c u v displaystyle forall u v in E f u v leq c u v Potik uzdovzh krayu ne mozhe perevishuvati svij potencial Kosi simetriyi u v E f u v f v u displaystyle forall u v in E f u v f v u Chistij potik vid u displaystyle u do v displaystyle v povinen buti protilezhnistyu chistogo priplivu vid v displaystyle v do u displaystyle u div priklad Zberezhennya potoku u V u s u t w V f u w 0 displaystyle forall u in V u neq s land u neq t Rightarrow sum w in V f u w 0 Tobto yaksho u displaystyle u ne s displaystyle s abo t displaystyle t Chistij potik do vuzla dorivnyuye nulyu dlya dzherela yakij viroblyaye potik i rakovinu yaka poglinaye potik Znachennya F s u E f s u v t E f v t displaystyle sum s u in E f s u sum v t in E f v t Tobto potik vihodyachi z s displaystyle s povinen buti rivnim potoku sho nadhodit u t displaystyle t Ce oznachaye sho potik cherez merezhu ye legalnim potokom pislya kozhnogo raundu v algoritmi Viznachimo zalishkovu merezhu G f V E f displaystyle G f V E f shob buti v merezhi z potuzhnistyu c f u v c u v f u v displaystyle c f u v c u v f u v i bez potoku Zvernit uvagu sho mozhe statisya sho potik vid v displaystyle v do u displaystyle u dozvolenij v zalishkovij merezhi hocha zaboronenij v vihidnij merezhi yaksho f u v gt 0 displaystyle f u v gt 0 ta c v u 0 displaystyle c v u 0 todi c f v u c v u f v u f u v gt 0 displaystyle c f v u c v u f v u f u v gt 0 Algoritm Forda Falkersona Algoritm Na pershomu etapi dzherelu prisvoyuyetsya poznachka neskinchennist Na comu etapi vsi inshi vuzli ne pomicheni Postarayemosya rozstaviti poznachki dijshovshi do stoku T S 1 Dijshovshi do stoku jomu pripisuyemo poznachku qij k 2 Shlyah potoku vid dzherela bude znajdenij i potik dlya kozhnoyi dugi cogo shlyahu zbilshitsya na velichinu qt 3 Dijshovshi do stoku mi pochnemo rozstavlyati poznachki spochatku pri comu neobhidno stezhiti shob zalishkova propuskna zdatnist vsih dug bula perevishena 4 Stok ne mozhe buti poznachenij ce oznachaye sho potik ne mozhe buti zbilshenij i sho znajdenij potik na poperednih krokah ye maksimalnim Ford Fulkerson Method G s t displaystyle G s t 1 Zadayemo pochatkove znachennya potoku f 0 displaystyle f 0 2 while Poki isnuye shlyah sho zbilshuyetsya p displaystyle p 3 do zbilshuyemo potik f displaystyle f uzdovzh shlyahu p displaystyle p 4 return f displaystyle f RozrizIsnuye teorema pro maksimalnij potik v merezhi vona polyagaye v tomu sho maksimalnij potik v merezhi dorivnyuye yiyi minimalnogo rozrizu Rozriz ce bezlich dug viklyuchennya yakih dilit vsi bezlich vuzliv v merezhi na 2 neperesichnih chastini Propuskna zdatnist rozrizu ce suma propusknoyi zdatnosti dug vhodyat v rozriz Vidpovidno do ciyeyi teoremi mi mozhemo pobuduvati i rozglyanuti vsi rozrizi i znajti minimum ce maksimum propusknoyi zdatnosti danoyi merezhi Ale z ciyeyi teoremi mi ne mozhemo znajti vsi potoki prohodyat po dugah merezhi Vikoristovuyutsya poznachki dlya vkazivki velichini potoku i jogo dzherelo Napriklad yaksho z vershini i v j peredayetsya qj odinic potoku i cya dobavka viklikaye zbilshennya potoku po duzi to vuzlu j pripisuyetsya poznachka qj i yaksho zh velichina potoku qj viklikaye zmenshennya potoku po cij duzi to vuzlu j prisvoyuyetsya poznachka qij i qj i pryama duga qj i zvorotna duga Potik po kozhnij pryamij duzi zbilshuyetsya pri comu vin ne povinen perevishuvati yiyi propusknu spromozhnist a potik po kozhnij zvorotnogo duzi zmenshuyetsya ale pri comu vin ne povinen stavati negativnim Zalishkovi merezhiZalishkova merezha merezha sho skladayetsya z reber sho dopuskayut zbilshennya potoku Bilsh strogo nehaj dana transportna merezha G V E displaystyle G V E z dzherelom s displaystyle s i stokom t displaystyle t Nehaj f displaystyle f deyakij potik v G displaystyle G Rozglyanemo paru vershin u displaystyle u v V displaystyle v in V Velichina dodatkovogo potoku yakij mi mozhemo napraviti z u displaystyle u v v displaystyle v ne perevishivshi propusknu spromozhnist c u v displaystyle c u v ye zalishkovoyu propusknoyu zdatnistyu residual capacity rebra u v displaystyle u v i zadayetsya formuloyu c f u v c u v f u v displaystyle c f u v c u v f u v Napriklad yaksho c u v 16 displaystyle c u v 16 i f u v 11 displaystyle f u v 11 to f u v displaystyle f u v mozhna zbilshiti na c f u v 5 displaystyle c f u v 5 ne porushivshi obmezhennya propusknoyi spromozhnosti dlya rebra u v displaystyle u v Koli potik f u v displaystyle f u v negativnij to zalishkova propuskna spromozhnist c f u v displaystyle c f u v bilshe nizh propuskna spromozhnist c u v displaystyle c u v Tak yaksho c u v 20 displaystyle c u v 20 Cyu situaciyu mozhna zobraziti nastupnim chinom isnuye potik velichinoyu 4 odinici z u displaystyle u v v displaystyle v ne porushivshi obmezhennya propusknoyi zdatnosti dlya rebra u v displaystyle u v Takim chinom pochinayuchi z potoku f u v 4 displaystyle f u v 4 mi napravili dodatkovi 20 odinic potoku persh nizh dosyagli obmezhennya propusknoyi spromozhnosti Dlya zadanoyi transportnoyi merezhi G V E displaystyle G V E i potoku f displaystyle f zalishkovoyi merezhi residual network v G displaystyle G porodzhenoyi potokom f displaystyle f ye merezha G f V E f displaystyle G f V E f de E f u v V V c f u v gt 0 displaystyle E f u v in V V c f u v gt 0 Malyunok 1 Na Mal 1 zobrazheni a Transportna merezha G displaystyle G i potik f displaystyle f b Zalishkova merezha G f displaystyle G f z vidilenim zbilshuyuchimsya shlyahom jogo zalishkova propuskna zdatnist dorivnyuye4 displaystyle 4 v Potik v merezhi G displaystyle G otrimanij v rezultati zbilshennya potoku uzdovzh shlyahu p displaystyle p na velichinu jogo zalishkovoyi propusknoyi zdatnosti4 displaystyle 4 g Zalishkova merezhu porodzhena potokom pokazanim v chastini v Takim chinom yak i zaznachalosya vishe po kozhnomu rebru zalishkovoyi merezhi abo zalishkovim rebru residual edge mozhna napraviti potik bilshij 0 Na Malyunku 1 a vidtvoreni transportna merezha G displaystyle G i potik f displaystyle f predstavleni na risunku 1 b a na Malyunku 1 b pokazana vidpovidna zalishkova merezha G f displaystyle G f Rebrami E f displaystyle E f ye abo rebra E displaystyle E abo zvorotni yim Yaksho f u v lt c u v displaystyle f u v lt c u v dlya deyakogo rebra u v E displaystyle u v in E to c f u v c u v f u v gt 0 displaystyle c f u v c u v f u v gt 0 i u v E f displaystyle u v in E f Yaksho f u v gt 0 displaystyle f u v gt 0 dlya deyakogo rebra u v E displaystyle u v in E to F v u lt 0 displaystyle F v u lt 0 U takomu vipadku c f v u c v u f v u gt 0 displaystyle c f v u c v u f v u gt 0 i otzhe v u E f displaystyle v u in E f Yaksho u vihidnij merezhi nemaye ni rebra u v displaystyle u v ni v u displaystyle v u to c u v c v u 0 f u v f v u 0 displaystyle c u v c v u 0 f u v f v u 0 i c f u v c f v u 0 displaystyle c f u v c f v u 0 Takim chinom mozhna zrobiti visnovok sho rebro u v displaystyle u v mozhe opinitisya v ostatochnij merezhi tilki v tomu vipadku yaksho hocha b odne z reber u v displaystyle u v abo v u displaystyle v u znahoditsya u vihidnij transportnij merezhi tomu E f 2 E displaystyle E f leq 2 E Zvernit uvagu sho zalishkova merezha G f displaystyle G f ye transportnoyu merezheyu zi znachennyami propusknih spromozhnostej zadanimi c f displaystyle c f Nastupna lema pokazuye yak potik u zalishkovij merezhi pov yazanij z potokom u vihidnij transportnij merezhi Dlya zberezhennya potoku pri vsih u V s t displaystyle u in V s t vikonuyetsya rivnist v V f f u v v V f u v f u v v V f u v v V f u v 0 0 displaystyle sum v in V f f u v sum v in V f u v f u v sum v in V f u v sum v in V f u v 0 0 I todi f f v V f f s u v V f s u f s u v V f s u v V f s u f F displaystyle f f sum v in V f f s u sum v in V f s u f s u sum v in V f s u sum v in V f s u f F Shlyahi sho zbilshuyutsyaDlya zadanoyi transportnoyi merezhi G V E displaystyle G V E i potoku f displaystyle f shlyahom sho zbilshuyetsya augmenting path ye prostij shlyah z s displaystyle s v t displaystyle t v zalishkovij merezhi G f displaystyle G f Zgidno z viznachennyam zalishkovoyi merezhi kozhne rebro u v displaystyle u v shlyahu sho zbilshuyetsya dopuskaye deyakij dodatkovij pozitivnij potik z u displaystyle u v v displaystyle v bez porushennya obmezhennya propusknoyi zdatnosti dlya danogo rebra Vidilenij shlyah na Malyunku 1 b ye shlyahom sho zbilshuyetsya Rozglyadayuchi predstavlenu na malyunku zalishkovu merezhu yak G f displaystyle G f yak deyaku transportnu merezhu mozhna zbilshuvati potik uzdovzh kozhnogo rebra danogo shlyahu azh do 4 odinic ne porushuyuchi obmezhen propusknoyi zdatnosti oskilki najmensha zalishkova propuskna spromozhnist na danomu shlyahu stanovit C f v 2 v 3 4 displaystyle C f v 2 v 3 4 Maksimalna velichina na yaku mozhna zbilshiti potik uzdovzh kozhnogo rebra shlyahu sho zbilshuyetsya p displaystyle p i zadayetsya formuloyu c f p m i n c f u v u v p displaystyle c f p min c f u v u v in p Rozrizi transportnih merezhU metodi Forda Falkersona provoditsya neodnorazove zbilshennya potoku uzdovzh shlyahiv sho zbilshuyutsya do tih pir poki ne bude znajdenij maksimalnij potik Dlya dokazu danoyi teoremi vvodimo ponyattya rozrizu Rozrizom CUT S T displaystyle S T transportnoyi merezhi G V E displaystyle G V E nazivayetsya rozbittya mnozhini vershin na bezlichi S displaystyle S i T V S displaystyle T V S taki sho s S displaystyle s in S a t T displaystyle t in T Yaksho f displaystyle f potik to chistij potik net flow cherez rozriz S T displaystyle S T za viznachennyam dorivnyuye f S T displaystyle f S T Propusknoyu zdatnistyu capacity rozrizu S T displaystyle S T ye c S T displaystyle c S T Minimalnim rozrizom minimum cut merezhi ye rozriz propuskna zdatnist yakogo sered vsih rozriziv merezhi minimalna Na Malyunku 2 pokazanij rozriz s v 1 v 2 v 3 v 4 t displaystyle s v 1 v 2 v 3 v 4 t transportnoyi merezhi Chistij potik cherez danij rozriz dorivnyuye f v 1 v 3 f v 2 v 3 f v 2 v 4 12 4 11 19 displaystyle f v 1 v 3 f v 2 v 3 f v 2 v 4 12 4 11 19 a propuskna zdatnist cogo rozrizu dorivnyuye c v 1 v 3 c v 2 v 4 12 14 26 displaystyle c v 1 v 3 c v 2 v 4 12 14 26 Zvernit uvagu sho chistij potik cherez rozriz mozhe vklyuchati v sebe negativni potoki mizh vershinami ale propuskna zdatnist rozrizu skladayetsya viklyuchno z nevid yemnih znachen Inshimi slovami chistij potik cherez rozriz S T displaystyle S T skladayetsya z pozitivnih potokiv v oboh napryamkah pozitivnij potik z S displaystyle S v T displaystyle T dodayetsya a pozitivnij potik z T displaystyle T v S displaystyle S vidnimayetsya Z inshogo boku propuskna zdatnist rozrizu S T displaystyle S T obchislyuyetsya tilki po rebrah sho jde z S displaystyle S v T displaystyle T Rebra sho vedut z T displaystyle T v S displaystyle S ne berut uchasti v obchislenni c S T displaystyle c S T Nastupna lema pokazuye sho chistij potik cherez bud rozriz odnakovij i dorivnyuye velichini potoku Malyunok 2 Rozriz S T transportnoyi merezhi predstavlenoyi na risunku 1 b S s v1 v2 T v3 v4 t Vershini sho nalezhat S vidznacheni chornim kolorom a vershini T bilim Teorema pro maksimalnij potik i minimalnij rozrizDokladnishe Teorema Forda Falkersona Yaksho f displaystyle f deyakij potik v transportnij merezhi G V E displaystyle G V E z dzherelom s displaystyle s i stokom t displaystyle t to nastupni tverdzhennya ekvivalentni 1 f displaystyle f maksimalnij potik v G displaystyle G 2 Zalishkova merezha G f displaystyle G f ne mistit zbilshuyut shlyahiv 3 f C S T displaystyle f C S T dlya deyakogo rozrizu S T displaystyle S T merezhi G displaystyle G Dovedennya 1 2 Pripustimo sho f displaystyle f ye maksimalnim potokom v G displaystyle G ale G f displaystyle G f mistit zbilshuye shlyah p displaystyle p Vidpovidno do naslidku Lemi 2 suma potokiv f f p displaystyle f f p de f p displaystyle f p zadayetsya rivnyannyam z naslidku Lemi 3 ye potokom v G displaystyle G velichina yakogo suvoro bilshe nizh f displaystyle f sho superechit pripushennyu sho f displaystyle f maksimalnij potik 2 3 Pripustimo sho G f displaystyle G f ne mistit zbilshuyuchogo shlyahu tobto G f displaystyle G f ne mistit shlyahu z s displaystyle s v t displaystyle t Viznachimo S v V G f displaystyle S v in V G f isnuye shlyah z s v displaystyle s in v T V S displaystyle T V S Rozbittya S T displaystyle S T ye rozrizom ochevidno sho s S displaystyle s in S a t displaystyle t ne nalezhit S displaystyle S oskilki v G f displaystyle G f ne isnuye shlyahu z s displaystyle s v t displaystyle t Dlya kozhnoyi pari vershin u S v T displaystyle u in S v in T spravedlivo spivvidnoshennya f u v c u v displaystyle f u v c u v oskilki v inshomu vipadku u v E f displaystyle u v in E f i v displaystyle v slid pomistiti v mnozhinu S displaystyle S Otzhe zgidno Lemi 3 f F S T c S T displaystyle f F S T c S T 3 1 Zgidno naslidku Lemi 3 f c S T displaystyle f leqslant c S T dlya vsih rozriziv S T displaystyle S T tomu z umovi f C S T displaystyle f C S T viplivaye sho f displaystyle f maksimalnij potik LemiLema 1 Nehaj G V E displaystyle G V E transportna merezha z dzherelom s displaystyle s i stokom t displaystyle t a f displaystyle f potik v G displaystyle G Nehaj G f displaystyle G f zalishkova merezha v G displaystyle G porodzhena potokom f displaystyle f a f displaystyle f potik v G f displaystyle G f Todi suma potokiv f f displaystyle f f obumovlena rivnyannyam ye potokom v G displaystyle G i velichina cogo potoku dorivnyuye f f F F displaystyle f f F F Dovedennya Dlya u v V displaystyle u v in V spravedlivo f f u v f u v f u v f v u f v u f v u f v u f f v u displaystyle f f u v f u v f u v f v u f v u f v u f v u f f v u Tak yak f u v c f u v displaystyle f u v leq c f u v dlya vsih u v i n V displaystyle u v inV To viplivaye sho f f u v f u v f u v f u v c u v f u v c u v displaystyle f f u v f u v f u v leq f u v c u v f u v c u v Lema 2 Nehaj G V E displaystyle G V E transportna merezha a f displaystyle f deyakij potik v G displaystyle G i nehaj p displaystyle p deyakij shlyah sho zbilshuyetsya u G f displaystyle G f Viznachimo funkciyu f p V V displaystyle f p V V R displaystyle R nastupnim chinom f p u v c p p displaystyle f p u v c p p yaksho u v displaystyle u v nalezhit p displaystyle p f p u v c f p displaystyle f p u v c f p yaksho v u displaystyle v u nalezhit p displaystyle p f p u v 0 displaystyle f p u v 0 v inshomu vipadku Todi f p displaystyle f p ye potokom v G displaystyle G i jogo velichina stanovit f p C f p gt 0 displaystyle f p C f p gt 0 Viplivaye z danoyi lemi naslidok pokazuye sho yaksho dodati f p displaystyle f p do f displaystyle f to mi otrimayemo novij potik v G displaystyle G velichina yakogo blizhche do maksimalnoyi Na Malyunku 1 v pokazanij rezultat dodavannya f p displaystyle f p predstavlenogo na risunku 1 b do f displaystyle f pokazanomu na risunku 1 a Lema 3 Nehaj f displaystyle f deyakij potik v transportnij merezhi G displaystyle G z dzherelom s displaystyle s i stokom t displaystyle t i nehaj S T displaystyle S T rozriz G displaystyle G Todi chistij potik cherez S T displaystyle S T dorivnyuye f S T f displaystyle f S T f Dovedennya Zauvazhimo sho vidpovidno do vlastivosti zberezhennya potoku f S s V 0 displaystyle f S s V 0 tak sho f S T f S V f S S f S V f s V f S s V f s V f displaystyle f S T f S V f S S f S V f s V f S s V f s V f Bezposerednim naslidkom lemi ye dovedenij ranishe rezultat sho velichina potoku dorivnyuye sumarnomu potoku sho vhodit v stik Inshij naslidok lemi pokazuye yak propuskni spromozhnosti rozriziv mozhna vikoristovuvati dlya viznachennya kordonu velichini potoku Naslidok Velichina bud yakogo potoku f displaystyle f u transportnij merezhi G displaystyle G ne perevishuye propusknu spromozhnist dovilnogo rozrizu G displaystyle G Dovedennya Nehaj S T displaystyle S T dovilnij rozriz G displaystyle G a f displaystyle f deyakij potik Zgidno z poperednoyu lemoyu i obmezhennyam propusknoyi zdatnosti f F S T u S v T f u v displaystyle f F S T sum u in S sum v in T f u v displaystyle leq u S v T c u v c S T displaystyle sum u in S sum v in T c u v c S T Z cogo naslidku viplivaye sho maksimalnij potik v merezhi ne perevishuye propusknoyi zdatnosti minimalnogo rozrizu Zaraz mi sformulyuyemo i dovedemo vazhlivu teoremu pro maksimalnij potik i minimalnij rozriz v yakij stverdzhuyetsya sho znachennya maksimalnogo potoku dorivnyuye propusknij zdatnosti minimalnogo rozrizu DoslidzhennyaVpershe problemi pov yazani z peresilkoyu potokiv u merezhah buli rozglyanuti Kantorovichem v 1933 roci Bilshe togo vin rozglyadav bilsh zagalnu zadachu z ruhom potoku ridin riznih tipiv multicommodity flows Osnovi teoriyi potokiv buli zakladeni v period z listopada 1954 po gruden 1955 doslidnikami korporaciyi RAND Santa Monika Kaliforniya Prostezhimo za rozvitkom teoriyi potokiv u hronologichnomu poryadku za zvitami RAND Pershij zvit Maksimalnij potik v merezhi datuyetsya 19 m listopada 1954 Avtori zvitu Ford Ford i Falkersonom Fulkerson doveli teoremu pro maksimalnij potik i minimalnomu rozrizi dlya neoriyentovanih grafiv znachennya maksimalnogo potoku v merezhi odno minimalnoyi propusknoyi zdatnosti rozrizu Rozrizom v merezhi nazivayetsya rozbittya mnozhini yiyi vershin na dva neperesichnih klasu takih sho dzherelo i stik lezhat u riznih klasah Propusknij zdatnistyu rozrizu nazivayetsya suma propusknih spromozhnostej reber kinci yakih lezhat v riznih klasah U 1955 roci v roboti Robahera Robacher bulo zgadano sho vpershe cyu teoremu doviv Falkersonom Robota Forda i Falkersona pro potoki i rozrizah bula motivovana vivchennyam transportnih merezh zaliznic div Dali U tomu zh zvitu voni takozh opisali prostij algoritm znahodzhennya maksimalnogo potoku dlya planarnih grafiv sho volodiyut takimi dodatkovim vlastivistyu pislya dodavannya dugi z dzherela v stik graf zalishayetsya planarnim PrimitkiTomas Kormen Charlz Lejzerson Ronald Rivest Kliford Stajn 2009 1990 26 2 Metod Forda Falkersona Vstup do algoritmiv vid 3rd MIT Press i McGraw Hill ISBN 0 262 03384 4 PosilannyaBiblioteka algoritmiv 22 grudnya 2015 u Wayback Machine