Потоки-2 (8 апреля 2016)
- Остаточные сети и теоремы Каразанова
- Более сильное утверждение − Теорема Карзанова: число итераций алгоритма Диница не более корня из (P = ∑ min(cin, cout)). E3/2 на единичных сетях.
- Лемма: |f* - fk| ≤ U(|V|/L)2. Где U − максимальная пропускная способность, L − максимальная длина кратчайшего пути.
- Вторая Теорема Каразанова. Число итераций алгоритма Диница в графе с целочисленными пропускными способностями не более 2U1/3|V|2/3.
- [L,R]
- Несколько истоков и стоков.
- Интересный факт (напоминание): задача про 2 пути NP-трудна
- Потоки с избытками и недостатками в вершинах.
- Поиск [L,R] циркуляции
- Поиск [L,R] потока: решение через Flow
- Поиск [L,R] потока: решение через MinCostFlow
- Поиск [L,R] максимального потока: дополнение до максимального
--- Перерыв ---
- Модификая Диница с LinkCut-Tree за O(VElogV).
- Нарисуем дерево кратчайших путей с корнем в стоке.
- Возьмём путь от истока до стока. Как за O(logn) учесть этот путь?
- Глобальный разрез
- Алгоритм Штор-Вагнера за O(V3) и O(VE + V2logV) (Wagner, Stoer, 1997) (без доказательства)
- Алгоритм Каргера-Штейна, версия за O(V4)
- Алгоритм Каргера-Штейна, версия за O(V2log2V) (Karger, Stein, 1993) (без доказательства)
- Историческая справка
- 1955. Ф.Ф.
- 1969. Edmonds-Karp. (идея кратчайших путей)
- 1970. Dinic, (блокирующий поток на сети кратчайших путей)
- 1972. Edmonds-Karp, Dinic (масштабирование потока)
- 1978. Malhotra-Kumar-Maheshwari (оптимизация Диница до n3) (в нашем курсе этого нет)
- 1974. Техника preflow push, Karzanov (первые идеи за n3)
- 1977. High-Level optimization (Cherkassky, O(n2m1/2))
- 1986. Ahuja : масштабирование потока + preflow: O(nm + n2logU) (Ahuja, Orlin)
- 1998. Goldberg, Rao, Лучшее время на текущий момент: E*min(V2/3, E1/2)*log(V2/E) (в нашем курсе этого нет)
- 2013. Орлин и компания (Рао, Тарьян, Кинг). Поток за O(VE) и ещё более хорошие времена в отдельных случаях [сайт Орлина]