Разрез, лемма о потоке через разрез — различия между версиями
Tsar (обсуждение | вклад) (→Поток через разрез) |
м (rollbackEdits.php mass rollback) |
||
(не показано 40 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
− | |||
− | |||
− | |||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
− | <b><tex>(s,t)</tex>-разрезом</b> <tex> | + | <b><tex>(s,t)</tex>-разрезом</b> (англ. ''s-t cut'') <tex>\langle S,T\rangle</tex> в сети <tex>G</tex> называется пара множеств <tex>S,T</tex>, удоволетворяющих условиям: |
− | + | # <tex>s\in S, t\in T</tex> | |
+ | # <tex>S = V\setminus T</tex> | ||
+ | }} | ||
− | + | {{Определение | |
− | + | |definition= | |
− | + | '''Пропускная способность разреза''' (англ. ''capacity of the cut'') <tex>\langle S,T\rangle</tex> обозначается <tex>c(S,T)</tex> и вычисляется по формуле: <tex>c(S,T)=\sum\limits_{u\in S}\sum\limits_{v\in T}c(u,v)</tex>. | |
}} | }} | ||
− | |||
− | |||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
− | + | '''Поток в разрезе''' (англ. ''flow in the cut'') <tex>\langle S,T\rangle</tex> обозначается <tex>f(S,T)</tex> и вычисляется по формуле: <tex>f(S,T)=\sum\limits_{u\in S}\sum\limits_{v\in T}f(u,v)</tex>. | |
}} | }} | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
− | + | '''Минимальным разрезом''' (англ. ''minimum cut'') называется разрез с минимально возможной пропускной способностью | |
}} | }} | ||
{{Лемма | {{Лемма | ||
+ | |about = | ||
+ | о величине потока | ||
|statement = | |statement = | ||
− | Пусть <tex> | + | Пусть <tex>\langle S,T\rangle</tex> — разрез в <tex>G</tex>. Тогда <tex>f(S,T)=|f|</tex>. |
|proof = | |proof = | ||
<tex>f(S,T)=f(S,V)-f(S,S)=f(S,V)=f(S\setminus s,V)+f(s,V)=f(s,V)=|f|</tex> | <tex>f(S,T)=f(S,V)-f(S,S)=f(S,V)=f(S\setminus s,V)+f(s,V)=f(s,V)=|f|</tex> | ||
− | 1-е равенство выполняется, так как суммы не пересекаются | + | *1-е равенство выполняется, так как суммы не пересекаются: <tex>f(S,V)=f(S,S)+f(S,T)</tex> |
− | 2-е равенство выполняется из-за антисимметричности | + | *2-е равенство выполняется из-за антисимметричности: <tex>f(S,S)=-f(S,S)=0</tex> |
− | 3-е равенство выполняется, как и 1-е, из-за непересекающихся сумм | + | *3-е равенство выполняется, как и 1-е, из-за непересекающихся сумм |
− | 4-е равенство выполняется из-за сохранения потока | + | *4-е равенство выполняется из-за сохранения потока |
}} | }} | ||
Строка 46: | Строка 45: | ||
закон слабой двойственности потока и разреза | закон слабой двойственности потока и разреза | ||
|statement = | |statement = | ||
− | Пусть <tex> | + | Пусть <tex>\langle S,T\rangle</tex> — разрез в <tex>G</tex>. Тогда <tex>f(S,T)\leqslant c(S,T)</tex>. |
|proof = | |proof = | ||
<tex>{c(S,T)-f(S,T)=\sum\limits_{u\in S}\sum\limits_{v\in T}c(u,v)-\sum\limits_{u\in S}\sum\limits_{v\in T}f(u,v)= | <tex>{c(S,T)-f(S,T)=\sum\limits_{u\in S}\sum\limits_{v\in T}c(u,v)-\sum\limits_{u\in S}\sum\limits_{v\in T}f(u,v)= | ||
− | \sum\limits_{u\in S}\sum\limits_{v\in T}(c(u,v)-f(u,v))\ | + | \sum\limits_{u\in S}\sum\limits_{v\in T}(c(u,v)-f(u,v))\geqslant 0}</tex>, из-за ограничений пропускных способностей <tex>f(u,v) </tex> <tex>\leqslant c(u,v)</tex>. |
}} | }} | ||
{{Лемма | {{Лемма | ||
+ | |about = | ||
+ | о максимальном потоке и минимальном разрезе | ||
|statement = | |statement = | ||
− | Если <tex>f(S,T)=c(S,T)</tex>, то поток <tex>f</tex> | + | Если <tex>f(S,T)=c(S,T)</tex>, то поток <tex>f</tex> — максимален, а разрез <tex>\langle S,T\rangle</tex> — минимален. |
|proof = | |proof = | ||
− | Из закона слабой двойственности следует, что <tex>f(S_1,T_1)\ | + | [[Файл:Минимальный_разрез.png|мини|справа|300x100px|Потоки и разрезы]] |
− | Значит, если расположить все величины потоков и разрезов на оси OX, то у потоков с разрезами может быть максимум 1 точка пересечения. Очевидно, что точка определяет максимальный поток среди всех потоков и минимальный разрез среди всех разрезов сети <tex>G</tex>. | + | Из закона слабой двойственности следует, что <tex>f(S_1,T_1)\leqslant c(S_2,T_2)</tex> для любых двух разрезов <tex>\langle S_1,T_1\rangle</tex> и <tex>\langle S_2,T_2\rangle</tex> в сети <tex>G</tex>, так как <tex>f(S_1,T_1)=|f|=f(S_2,T_2)\leqslant c(S_2,T_2)</tex>. |
− | } | + | Значит, если расположить все величины потоков и разрезов на оси OX, то у потоков с разрезами может быть максимум 1 точка пересечения. |
+ | Очевидно, что эта точка определяет максимальный поток среди всех потоков и минимальный разрез среди всех разрезов сети <tex>G</tex>.}} | ||
+ | |||
+ | |||
+ | [[Файл:разрезы.png|мини|слева|800x600px|Среди всех разрезов сети разрез с минимальной пропускной способностью определяет максимальный поток в сети.]] | ||
+ | |||
+ | <br clear="all"> | ||
+ | |||
+ | {|border="1" class="wikitable" style="width: 400px; height: 150px; float: слева;" | ||
+ | |+ style="caption-side:bottom; "|''Минимальный разрез — 1 с пропускной способностью 60'' | ||
+ | |||
+ | |- | ||
+ | | '''Разрез'''|| '''"Разрезанные" ребра'''|| '''Пропускная способность''' | ||
+ | |- | ||
+ | |||
+ | |1 | ||
+ | | (1,2),(1,3),(1,4) | ||
+ | | 10+30+20=60 | ||
+ | |||
+ | |- | ||
+ | | 2 | ||
+ | |(1,3),(1,4),(2,3),(2,5) | ||
+ | |30+10+40+30=110 | ||
+ | |||
+ | |- | ||
+ | |3 | ||
+ | |(2,5),(3,5),(4,5) | ||
+ | | 30+20+20=70 | ||
+ | |||
+ | |} | ||
+ | |||
+ | == Источники информации == | ||
+ | * ''Кормен, Томас Х., Лейзерсон, Чарльз И., Ривест, Рональд Л., Штайн Клиффорд'' '''Алгоритмы: построение и анализ''', 2-е издание. Пер. с англ. — М.:Издательский дом "Вильямс", 2010. — 1296 с.: ил. — Парал. тит. англ. — ISBN 978-5-8459-0857-5 (рус.) | ||
+ | * [http://ru.wikipedia.org/wiki/Разрез_графа Википедия: Разрез графа] | ||
+ | * [http://en.wikipedia.org/wiki/Cut_(graph_theory) Википедия: Разрез графа (англ.)] | ||
+ | |||
+ | [[Категория:Алгоритмы и структуры данных]] | ||
+ | [[Категория:Задача о максимальном потоке]] |
Текущая версия на 19:27, 4 сентября 2022
Определение: |
Определение: |
Пропускная способность разреза (англ. capacity of the cut) | обозначается и вычисляется по формуле: .
Определение: |
Поток в разрезе (англ. flow in the cut) | обозначается и вычисляется по формуле: .
Определение: |
Минимальным разрезом (англ. minimum cut) называется разрез с минимально возможной пропускной способностью |
Лемма (о величине потока): |
Пусть — разрез в . Тогда . |
Доказательство: |
|
Лемма (закон слабой двойственности потока и разреза): |
Пусть — разрез в . Тогда . |
Доказательство: |
, из-за ограничений пропускных способностей . |
Лемма (о максимальном потоке и минимальном разрезе): |
Если , то поток — максимален, а разрез — минимален. |
Доказательство: |
Из закона слабой двойственности следует, что Очевидно, что эта точка определяет максимальный поток среди всех потоков и минимальный разрез среди всех разрезов сети для любых двух разрезов и в сети , так как . Значит, если расположить все величины потоков и разрезов на оси OX, то у потоков с разрезами может быть максимум 1 точка пересечения. . |
Разрез | "Разрезанные" ребра | Пропускная способность |
1 | (1,2),(1,3),(1,4) | 10+30+20=60 |
2 | (1,3),(1,4),(2,3),(2,5) | 30+10+40+30=110 |
3 | (2,5),(3,5),(4,5) | 30+20+20=70 |
Источники информации
- Кормен, Томас Х., Лейзерсон, Чарльз И., Ривест, Рональд Л., Штайн Клиффорд Алгоритмы: построение и анализ, 2-е издание. Пер. с англ. — М.:Издательский дом "Вильямс", 2010. — 1296 с.: ил. — Парал. тит. англ. — ISBN 978-5-8459-0857-5 (рус.)
- Википедия: Разрез графа
- Википедия: Разрез графа (англ.)