Лемма об эквивалентности свойства потока быть минимальной стоимости и отсутствии отрицательных циклов в остаточной сети — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Стоимости,а не веса)
(Литература)
 
(не показано 14 промежуточных версий 4 участников)
Строка 1: Строка 1:
 +
{{Лемма
 +
|about=
 +
о разности потоков
 +
|statement=
 +
Пусть <tex> f </tex> и <tex> g </tex> {{---}} потоки равной величины в сети <tex> G </tex>. Тогда <tex> g </tex> можно представить как сумму <tex> f </tex> и нескольких циклов в остаточной сети <tex> G_f </tex>, т.е. <tex>g = f + \sum_{i} C_i </tex>.
 +
|proof=
 +
Рассмотрим разность потоков <tex> g - f </tex>, <tex> |g - f| = 0 </tex>. Построим ее [[теорема о декомпозиции|декомпозицию]]. В декомпозиции могут быть только циклы, т.к. наличие путей <tex> s \leadsto t</tex> противоречило бы нулевой величине потока. Таким образом, получили разбиение разности потоков на циклы. Заметим, что <tex> g(u,v) - f(u,v) \leqslant c(u, v) - f(u, v) = c_f(u, v)</tex>, т.е. все циклы принадлежат <tex>G_f</tex>. 
 +
}}
 +
 
{{Лемма
 
{{Лемма
 
|about=
 
|about=
 
об эквивалентности свойства потока быть минимальной стоимости и отсутствии отрицательных циклов в остаточной сети
 
об эквивалентности свойства потока быть минимальной стоимости и отсутствии отрицательных циклов в остаточной сети
|statement=  
+
|statement=
Следующие утверждения эквивалентны:
+
Поток <tex> f </tex> {{---}} минимальной стоимости среди потоков своей величины <tex> \iff </tex> в остаточной сети <tex> G_f </tex> нет циклов отрицательной стоимости.
*Поток <tex> f </tex> {{---}} минимальной стоимости.
 
остаточной сети <tex> G_f </tex> нет циклов отрицательной стоимости.
 
 
|proof=  
 
|proof=  
 
*<tex>\Rightarrow </tex>
 
*<tex>\Rightarrow </tex>
Строка 12: Строка 19:
  
 
Пустим по <tex> C </tex> поток <tex> f_+ = c_m </tex>.  
 
Пустим по <tex> C </tex> поток <tex> f_+ = c_m </tex>.  
Так как сумма стоимостей по циклу отрицательна и поток по каждому ребру одинаков, то <tex> \sum_{u,v \in V} p(u,v) \cdot f_+(u,v) < 0</tex>  
+
Так как сумма стоимостей по циклу отрицательна и поток по каждому ребру одинаков, то <tex> \sum_{(u,v) \in E} p(u,v) \cdot f_+(u,v) < 0</tex>  
  
<tex>\Rightarrow </tex> <tex>\sum_{u,v \in V} p(u,v) \cdot (f + f_+)(u,v) < \sum_{u,v \in V} p(u,v) \cdot f</tex> <tex>\Rightarrow f </tex> {{---}} не минимальный. Противоречие.
+
<tex>\Rightarrow </tex> <tex>\sum_{(u,v) \in E} p(u,v) \cdot (f + f_+)(u,v) < \sum_{(u,v) \in E} p(u,v) \cdot f(u, v)</tex> <tex>\Rightarrow f </tex> {{---}} не минимальный. Противоречие.
 
*<tex>\Leftarrow </tex>
 
*<tex>\Leftarrow </tex>
От противного. Пусть <tex> f </tex> - не минимальной стоимости. Тогда существует <tex> f_m </tex> - поток минимальной стоимости и того же объема.
+
Рассмотрим поток <tex> f </tex>, такой что в <tex> G_f </tex> нет циклов отрицательной стоимости. Рассмотрим <tex> f' </tex> {{---}} поток величины <tex> |f| </tex> и минимальной стоимости, т. е. <tex> p(f') \leqslant p(f) </tex>. По лемме представим <tex>f' = f + \sum_{i} C_i </tex>. По условию стоимости всех циклов неотрицательны. Получаем <tex> p(f') \geqslant p(f) \Rightarrow p(f') = p(f)</tex>.
Существует поток <tex> f_- </tex>, такой что <tex> f_m = f + f_-</tex>.
 
По сохранению потока <tex> f_- </tex> идёт по пути <tex> P </tex> и верно одно из двух утверждений:
 
* <tex> P </tex> - из истока в сток.
 
* <tex> P </tex> - цикл.
 
Если из истока в сток - изменится объем потока, что противрочит условию.
 
<tex>\Rightarrow P - цикл</tex>  
 
<tex>\sum_{u,v \in V} p(u,v) \cdot f_-(u,v) < 0 \Rightarrow P</tex> - цикл отрицательной стоимости. Противоречие.  
 
 
}}
 
}}
 +
 +
== Источники информации ==
 +
* Ravindra Ahuja, Thomas Magnanti, James Orlin. Network flows (1993)
 +
 +
[[Категория:Алгоритмы и структуры данных]]
 +
[[Категория: Задача о потоке минимальной стоимости]]

Текущая версия на 23:39, 6 января 2017

Лемма (о разности потоков):
Пусть [math] f [/math] и [math] g [/math] — потоки равной величины в сети [math] G [/math]. Тогда [math] g [/math] можно представить как сумму [math] f [/math] и нескольких циклов в остаточной сети [math] G_f [/math], т.е. [math]g = f + \sum_{i} C_i [/math].
Доказательство:
[math]\triangleright[/math]
Рассмотрим разность потоков [math] g - f [/math], [math] |g - f| = 0 [/math]. Построим ее декомпозицию. В декомпозиции могут быть только циклы, т.к. наличие путей [math] s \leadsto t[/math] противоречило бы нулевой величине потока. Таким образом, получили разбиение разности потоков на циклы. Заметим, что [math] g(u,v) - f(u,v) \leqslant c(u, v) - f(u, v) = c_f(u, v)[/math], т.е. все циклы принадлежат [math]G_f[/math].
[math]\triangleleft[/math]
Лемма (об эквивалентности свойства потока быть минимальной стоимости и отсутствии отрицательных циклов в остаточной сети):
Поток [math] f [/math] — минимальной стоимости среди потоков своей величины [math] \iff [/math] в остаточной сети [math] G_f [/math] нет циклов отрицательной стоимости.
Доказательство:
[math]\triangleright[/math]
  • [math]\Rightarrow [/math]

От противного. Пусть существует [math] C [/math] — цикл отрицательной стоимости в [math] G_f [/math], [math] c_m [/math] — наименьшая остаточная пропускная способность среди рёбер [math] C [/math].

Пустим по [math] C [/math] поток [math] f_+ = c_m [/math]. Так как сумма стоимостей по циклу отрицательна и поток по каждому ребру одинаков, то [math] \sum_{(u,v) \in E} p(u,v) \cdot f_+(u,v) \lt 0[/math]

[math]\Rightarrow [/math] [math]\sum_{(u,v) \in E} p(u,v) \cdot (f + f_+)(u,v) \lt \sum_{(u,v) \in E} p(u,v) \cdot f(u, v)[/math] [math]\Rightarrow f [/math] — не минимальный. Противоречие.

  • [math]\Leftarrow [/math]
Рассмотрим поток [math] f [/math], такой что в [math] G_f [/math] нет циклов отрицательной стоимости. Рассмотрим [math] f' [/math] — поток величины [math] |f| [/math] и минимальной стоимости, т. е. [math] p(f') \leqslant p(f) [/math]. По лемме представим [math]f' = f + \sum_{i} C_i [/math]. По условию стоимости всех циклов неотрицательны. Получаем [math] p(f') \geqslant p(f) \Rightarrow p(f') = p(f)[/math].
[math]\triangleleft[/math]

Источники информации[править]

  • Ravindra Ahuja, Thomas Magnanti, James Orlin. Network flows (1993)