Определение максимальной пропускной способности сети
∙ 1 источник, 1 сток. Каждой дуге приписана пропускная способность. dij – пропускная способность дуги ij. xij – количество вещества, пропускаемого по дуге ij в единицу времени 0≤ xij ≤ dij ∙ Для любой вершины, кроме истока I и стока S, количество поступающего вещества в эту вершину, равно количеству вещества, вытекающего из нее. В промежуточных вершинах потоки не создаются и не исчезают. ∙ Общее количество вещества, вытекающего из истока I, совпадает с общим количеством вещества, поступающего в сток S ∙ З адача о максимальном потоке заключается в нахождении такого потока по транспортной сети, что сумма потоков из истока, или, что то же самое, сумма потоков в сток максимальна. ∙ Каждое неориентированное ребро (u, v) заменяем на пару ориентированных рёбер (u, v) и (v, u). ∙ Для произвольной сети максимальная величина потока из vs в vt равняется минимальной пропускной способности разреза, который отделяет vs от vt ∙ Алгоритм Форда — Фалкерсона
Алгоритм поиска кратчайшего пути при наличии дуг с отрицательной стоимостью – я у него спросила про этот пункт, он сказал, что, наверняка, уберет его) G {E,V}, dij стоимость перехода из I в j Найти путь из начальной вершины в конечную с минимальной суммарной стоимостью N – множество непомеченных вершин П – множество помеченных вершин Шаг 0. ε0 т.к. мы находимся в этой точке, то переход в нее =0 П=v0 N={v1:vn} Шаг 1. Находим начальные дуги (I,j), такие что Vi ∊ П, vj ∊ N для каждой такой дуги определенное число Nij = εi + dij Шаг 2. έ=min{hij} Выделяем дуги, на которых этот минимум достигается. Конечную вершину помечаем εi =έ Шаг 3. Поверяем выполнение условия εi + dij≥ εd для всех дуг, вершины которого ∊П (Vi ∊ П, vj ∊ П) - проверка на то, не существует ли более короткого пути, чем найденный ∙ если неравенство выполняется, то – Шаг 5 ∙ если неравенство не выполняется, то – Шаг 4 Шаг 4. εj* = εi + dij* У дуги, на которой достигалась старая ε пометка отменяется, помечается новая дуга ij Пусть То есть появляется более короткий путь. Необходимо отменять пометку в мин (в нач.) и отметить дугу
Шаг 5. Определяем помечена ли последняя вершина Vn ∊ П Если vn - конечная вершина помечена, то ответ Если конечная вершина непомечена, то к Шаг 1 Кратчайший путь ищется из конечной вершины
Определение кратчайшего пути (2 пункта) Задача о потоке минимальной стоимости Расписаны в учебнике «Теория игр. Исследование операций» Костевича и Лапко
|