Содержание
- 2. Задача «Кратчайший путь» Дано: Орграф G, веса c: E(G) → R и две вершины s, t
- 3. Консервативные веса Определение 5.1 Пусть G ― граф с весами c: E(G) → R . Функция
- 4. Принцип оптимальности Белмана Предложение 5.2 Дан орграф G с консервативными весами c: E(G) → R, и
- 5. Доказательство Пусть s-v-путь Q короче пути P[s,v]. Тогда c(Q) + c(e) Если w∉Q, то Q +
- 6. Доказательство (w ∈ Q) Пусть s-v-путь Q короче пути P[s,v]. c(Q) + c(e) c(Q[s,w]) = c(Q)
- 7. Замечание Принцип оптимальности Белмана выполняется для всех орграфов с неотрицательными весами и для всех орграфов без
- 8. Упражнение 7.1 Дан ациклический орграф G с произвольными весами c: E(G) → R и s, t
- 9. Алгоритм Дейкстры Input: Орграф G, веса c: E(G) → R+ и вершина s∈ V(G). Output: Кратчайшие
- 10. Алгоритм Дейкстры (2) Теорема 5.3 (Дейкстра [1959]) Алгоритм Дейкстры находит оптимальное решение за O(n2) элементарных операций
- 11. Скетч доказательства Докажем, что следующие утверждения верны каждый раз когда выполняется шаг 2 алгоритма. a) Для
- 12. Алгоритм Дейкстры Input: Орграф G, веса c: E(G) → R+ и вершина s∈ V(G). Output: Кратчайшие
- 13. a) Для всех v ∈ R и всех w∈V(G)\R: l(v) ≤ l(w) Пусть v вершина выбранная
- 14. b) Для всех v ∈ R: l(v) ― длина кратчайшего s-v-пути в G. Если l(v) Так
- 15. c) Для всех w ∈ V(G)\R: l(w) ― длина кратчайшего s-w- пути в G[R⋃{w}]. Если l(w)
- 16. Алгоритм Дейкстры Теорема 5.3 (Дейкстра [1959]) Алгоритм Дейкстры находит оптимальное решение за O(n2) элементарных операций (n
- 17. Алгоритм Мура-Беллмана-Форда Input: Орграф G, консервативные веса c: E(G) → R и вершина s∈ V(G). Output:
- 18. Алгоритм Мура-Беллмана-Форда(2) Теорема 5.4 (Moore [1959], Bellman [1958], Ford [1956]) Алгоритм Мура-Беллмана-Форда находит оптимальное решение за
- 19. Скетч доказательства На каждой итерации алгоритма пусть R := {v∈ V(G): l(v) Тогда a) l(y) ≥
- 20. a) l(y) ≥ l(x) + c((x,y)) для всех (x,y) ∈ F F := {(x,y) ∈ E(G):
- 21. b) Если F содержит цикл C, то C имеет отрицательный суммарный вес Пусть на некоторой итерации
- 22. c) Если функция весов c консервативная, то (R, F) ― ордерево с корнем в s. b)
- 23. Индукция Пусть P кратчайший s-x-путь с не более чем k дугами и пусть (w,x) последняя дуга
- 24. Алгоритм Мура-Беллмана-Форда Теорема 5.4 (Moore [1959], Bellman [1958], Ford [1956]) Алгоритм Мура-Беллмана-Форда находит оптимальное решение за
- 25. Допустимый потенциал Определение 5.5. Пусть G ― орграф с весами c: E(G) → R, и пусть
- 26. Допустимый потенциал (2) Теорема 5.6 Пусть G ― орграф с весами c: E(G) → R. Допустимый
- 27. Доказательство Если π допустимый потенциал, то для каждого цикла C: ⇒ веса консервативны. Пусть веса консервативны,
- 28. Допустимый потенциал Следствие 5.7 Дан орграф G с весами c: E(G) → R. Алгоритм Мура-Беллмана-Форда за
- 29. Задача «Все Пары Кратчайших путей» Дано: орграф G, веса c: E(G) → R. Найти число lst
- 30. Задача «Все Пары Кратчайших путей» (2) Теорема 5.8 Задача «Все Пары Кратчайших путей» может быть решена
- 31. Алгоритм Флойда-Уоршелла Input: Орграф G с V(G) = {1,...,n} и консервативные веса c: E(G) → R.
- 32. Шаг 2 For j := 1 to n do: For i := 1 to n do:
- 33. Алгоритм Флойда-Уоршелла (2) Теорема 5.9(Floyd [1962], Warshall [1962]) Алгоритм Флойда-Уоршелла находит решение за время O(n3).
- 34. Идея доказательства Пусть алгоритм использовал во внешнем цикле (For) вершины j = 1, 2, …, j0.
- 35. Индукция: j0 → j0 + 1 j=j0+1 i k {1, 2, …, j0} Для любых i
- 36. Метрическое замыкание Определение 5.10 Дан связный граф G с весами c: E(G) → R+. Метрическим замыканием
- 37. Метрическое замыкание (2) Следствие 5.11 Пусть G ― связный граф и c: E(G) → R+. Тогда
- 38. Задача «Минимальный усредненный Цикл» Дано: орграф G, веса c: E(G) → R. Найти цикл C, усредненный
- 39. Как решать? Задача «Минимальный усредненный Цикл» может быть решена динамическим программированием. Можно рассматривать только сильно связные
- 40. Теорема Карпа Теорема 5.12 (Karp [1978]) Пусть G ― орграф с весами c: E(G) → R.
- 41. Идея доказательства Докажем, что если μ(G) = 0 то Пусть G ― орграф с μ(G) =
- 42. Доказательство Покажем, что существует такое x, что Fn(x) = l(x). μ(G) = 0 ⇒ существует цикл
- 43. Алгоритм «Минимальный усредненный Цикл» Input: Орграф G, веса c: E(G) → R. Output: Цикл C с
- 44. Алгоритм «Минимальный усредненный Цикл» Следствие 5.13(Karp [1978]) Алгоритм «Минимальный усредненный Цикл» находит решение за время O(n(m+n)).
- 45. Упражнение 7.2 Дан орграф G с произвольными весами c: E(G) → R и s, t ∈
- 46. Упражнение 7.3 Дан орграф G с s, t ∈ V(G). Пусть для каждого ребра e∈ E(G)
- 47. Упражнение 7.4 Пусть G ― орграф с консервативными весами c: E(G) → R . Пусть s,
- 49. Скачать презентацию