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

Материал из Викиконспекты
Перейти к: навигация, поиск
м (rollbackEdits.php mass rollback)
 
(не показано 19 промежуточных версий 6 участников)
Строка 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> нет циклов отрицательной стоимости.
* <math> f </math> - поток минимальной стоимости.
 
* В остаточной сети <math> G_f </math> нет циклов отрицательного веса.
 
 
|proof=  
 
|proof=  
*<math>\Rightarrow </math>
+
*<tex>\Rightarrow </tex>
От противного. Пусть существует <math> C </math> {{---}} цикл отрицательного веса в <math> G_f </math>,
+
От противного. Пусть существует <tex> C </tex> {{---}} цикл отрицательной стоимости в <tex> G_f </tex>,
<math> c_m </math> {{---}} наименьшая остаточная пропускная способность среди рёбер <math> C </math>.
+
<tex> c_m </tex> {{---}} наименьшая остаточная пропускная способность среди рёбер <tex> C </tex>.
  
Пустим по <math> C </math> поток <math> f_+ = c_m </math>.  
+
Пустим по <tex> C </tex> поток <tex> f_+ = c_m </tex>.  
Так как сумма весов по циклу отрицательна и поток по каждому ребру одинаков, то <math> \sum_{u,v \in V} p(u,v) \cdot f_+(u,v) < 0</math>  
+
Так как сумма стоимостей по циклу отрицательна и поток по каждому ребру одинаков, то <tex> \sum_{(u,v) \in E} p(u,v) \cdot f_+(u,v) < 0</tex>  
  
<math>\Rightarrow </math> <math>\sum_{u,v \in V} p(u,v) \cdot (f + f_+)(u,v) < \sum_{u,v \in V} p(u,v) \cdot f</math> <math>\Rightarrow f </math> {{---}} не минимальный. Противоречие.
+
<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> 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>.
 
}}
 
}}
 +
 +
== Источники информации ==
 +
* Ravindra Ahuja, Thomas Magnanti, James Orlin. Network flows (1993)
 +
 +
[[Категория:Алгоритмы и структуры данных]]
 +
[[Категория: Задача о потоке минимальной стоимости]]

Текущая версия на 19:21, 4 сентября 2022

Лемма (о разности потоков):
Пусть [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)