Теорема Форда-Фалкерсона о потоке минимальной стоимости — различия между версиями
(Перенаправление на Поиск потока минимальной стоимости методом дополнения вдоль путей минимальной стоимости) |
|||
(не показано 18 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
+ | #перенаправление [[Поиск потока минимальной стоимости методом дополнения вдоль путей минимальной стоимости]] | ||
+ | {{Лемма | ||
+ | |about= | ||
+ | о представлении потоков | ||
+ | |statement= | ||
+ | Пусть <tex> f </tex> и <tex> g </tex> {{---}} потоки в сети <tex> G </tex>. Тогда <tex> g </tex> можно представить как сумму <tex> f + f'</tex>, где <tex>f'</tex> {{---}} поток в остаточной сети <tex>G_f</tex>. | ||
+ | |proof= | ||
+ | Рассмотрим произвольное ребро <tex> (u, v) </tex> из <tex> G </tex>. <tex> f'(u, v) = g(u, v) - f(u, v) \leqslant c(u, v) - f(u, v) = c_f(u, v) </tex>. Таким образом, поток через каждое ребро не превосходит пропускной способности остаточной сети. | ||
+ | Антисимметричность и закон сохранения потока проверяются аналогично [[Лемма о сложении потоков|лемме о сложении потоков]]. | ||
+ | }} | ||
+ | |||
{{Теорема | {{Теорема | ||
|statement= | |statement= | ||
− | Пусть <tex> G </tex> {{---}} сеть с истоком <tex> s </tex> и стоком <tex> t </tex>. | + | Пусть: |
− | <tex> f </tex> {{---}} поток минимальной стоимости в сети <tex> G </tex> среди потоков величины <tex> a </tex>. <tex> P </tex> {{---}} путь минимальной стоимости <tex> s \leadsto t</tex> в остаточной сети. | + | * <tex> G </tex> {{---}} сеть с истоком <tex> s </tex> и стоком <tex> t </tex>. |
− | Тогда | + | * <tex> f </tex> {{---}} поток минимальной стоимости в сети <tex> G </tex> среди потоков величины <tex> a </tex>. |
+ | *<tex> P </tex> {{---}} путь минимальной стоимости <tex> s \leadsto t</tex> в остаточной сети. | ||
+ | Тогда: | ||
+ | <tex>\forall \delta : 0 \leqslant \delta \leqslant c_f(P)</tex> поток <tex>f + \delta \cdot f_P</tex> {{---}} поток минимальной стоимости среди потоков величины <tex>a + \delta</tex>, где <tex>\delta \cdot f_P</tex> {{---}} поток величины <tex>\delta</tex>, проходящий по пути <tex>P</tex>. | ||
|proof= | |proof= | ||
− | Пусть <tex> g </tex> {{---}} поток минимальной стоимости величины <tex>a + \delta</tex> в <tex>G</tex>. Представим <tex> g = f + f'</tex>, где <tex> f' </tex> - поток в остаточной сети <tex>G_f</tex>. Тогда разность <tex> g - f</tex> будет потоком в сети <tex>G_f</tex> и по [[Лемма о сложении потоков|лемме о сложении потоков]] его величина будет равна <tex>\delta</tex>. | + | Пусть <tex> g </tex> {{---}} поток минимальной стоимости величины <tex>a + \delta</tex> в <tex>G</tex>. Представим <tex> g = f + f'</tex>, где <tex> f' </tex> {{---}} поток в остаточной сети <tex>G_f</tex>. Тогда разность <tex> g - f</tex> будет потоком в сети <tex>G_f</tex> и по [[Лемма о сложении потоков|лемме о сложении потоков]] его величина будет равна <tex>\delta</tex>. |
− | По [[Теорема о декомпозиции|теореме о декомпозиции]] <tex> g - f</tex> можно представить как сумму элементарных потоков вдоль путей <tex>P_i : s \leadsto t</tex> и циклов <tex>C_i</tex>. В этом представлении нет отрицательных циклов, иначе прибавление его к <tex> f </tex> даст поток меньшей стоимости. Если есть положительный цикл, то вычтем его из <tex> g </tex> и получим поток меньшей стоимости. Таким образом <tex>p(C_i) = 0</tex> для всех циклов. | + | По [[Теорема о декомпозиции|теореме о декомпозиции]] <tex> g - f</tex> можно представить как сумму элементарных потоков вдоль путей <tex>P_i : s \leadsto t</tex> и циклов <tex>C_i</tex>. В этом представлении нет отрицательных циклов, иначе прибавление его к <tex> f </tex> даст поток меньшей стоимости. Если есть положительный цикл, то вычтем его из <tex> g </tex> и получим поток меньшей стоимости. Таким образом, <tex>p(C_i) = 0</tex> для всех циклов. |
− | Тогда <tex>p(g - f) = \sum\limits_{P_i} p(P_i)\cdot c_f(P_i) \geq p(P) \cdot \sum\limits_{P_i}c_f(P_i) | + | Тогда <tex>p(g - f) = \sum\limits_{P_i} p(P_i)\cdot c_f(P_i) \geq p(P) \cdot \sum\limits_{P_i}c_f(P_i) \ge p(P) \cdot \delta</tex>. |
Отсюда <tex> p(g) \ge p(f) + p(P) \cdot \delta \ge p(g) </tex> и поток <tex>f + \delta \cdot f_P</tex> {{---}} минимальный. | Отсюда <tex> p(g) \ge p(f) + p(P) \cdot \delta \ge p(g) </tex> и поток <tex>f + \delta \cdot f_P</tex> {{---}} минимальный. | ||
}} | }} | ||
+ | |||
+ | ==См. также== | ||
+ | *[[Поток минимальной стоимости| Поток минимальной стоимости]] | ||
+ | *[[Использование потенциалов Джонсона при поиске потока минимальной стоимости| Использование потенциалов Джонсона при поиске потока минимальной стоимости]] | ||
+ | |||
+ | ==Источники информации== | ||
+ | *[https://ru.wikipedia.org/wiki/Теорема_Форда_—_Фалкерсона Wikipedia {{---}} Теорема Форда-Фалкерсона] | ||
== Литература == | == Литература == | ||
* Ravindra Ahuja, Thomas Magnanti, James Orlin. Network flows (1993) | * Ravindra Ahuja, Thomas Magnanti, James Orlin. Network flows (1993) | ||
+ | |||
+ | |||
+ | [[Категория:Алгоритмы и структуры данных]] | ||
[[Категория: Задача о потоке минимальной стоимости]] | [[Категория: Задача о потоке минимальной стоимости]] |
Текущая версия на 14:34, 24 января 2016
Перенаправление на:
Лемма (о представлении потоков): |
Пусть и — потоки в сети . Тогда можно представить как сумму , где — поток в остаточной сети . |
Доказательство: |
Рассмотрим произвольное ребро Антисимметричность и закон сохранения потока проверяются аналогично из . . Таким образом, поток через каждое ребро не превосходит пропускной способности остаточной сети. лемме о сложении потоков. |
Теорема: |
Пусть:
Тогда: поток — поток минимальной стоимости среди потоков величины , где — поток величины , проходящий по пути . |
Доказательство: |
Пусть лемме о сложении потоков его величина будет равна . — поток минимальной стоимости величины в . Представим , где — поток в остаточной сети . Тогда разность будет потоком в сети и поПо теореме о декомпозиции можно представить как сумму элементарных потоков вдоль путей и циклов . В этом представлении нет отрицательных циклов, иначе прибавление его к даст поток меньшей стоимости. Если есть положительный цикл, то вычтем его из и получим поток меньшей стоимости. Таким образом, для всех циклов. Тогда Отсюда . и поток — минимальный. |
См. также
- Поток минимальной стоимости
- Использование потенциалов Джонсона при поиске потока минимальной стоимости
Источники информации
Литература
- Ravindra Ahuja, Thomas Magnanti, James Orlin. Network flows (1993)