2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему
 
 Алгоритм Форда-Фалкерсона (макс. поток в транспортной сети)
Сообщение14.12.2009, 23:00 


27/03/08
63
Здравствуйте

Мне необходимо построить максимальный поток и разрез с минимальной пропускной способностью в транспортной сети, приведённой на рисунке, по алгоритму Форда-Фалкерсона.

Изображение

Беда в том, что толковой литературы под рукой по этому вопросу нет. Интернетные источники (самые популярные на эту тему) я тоже смотрел. Но понять так ничего и не смог.
Подскажите, пожалуйста, толковую книгу в сети по данному вопросу (или (если можно), распишите, пожалуйста, по шагам, что именно надо сделать для решения задачи).

 Профиль  
                  
 
 Re: Алгоритм Форда-Фалкерсона
Сообщение15.12.2009, 01:21 
Заслуженный участник


09/08/09
3438
С.Петербург
Вот тут посмотрите: Кормен, Лейзерсон, Ривест, Штайн. Алгоритмы: Построение и анализ. (стр. 742)

 Профиль  
                  
 
 Re: Алгоритм Форда-Фалкерсона
Сообщение03.01.2010, 22:55 


27/03/08
63
После изучения аналогичных примеров у меня получилось следующее.

Шаг 1. $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqy1dOMaey
% ypa0JaaGimaaaa!3979!
\[
\varphi  = 0
\]
$

Шаг 2. Рассмотрим путь S-A-B-T. Можем увеличить поток на величину 1,1.
Тогда $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqy1dOMaey
% ypa0JaaGimaiabgUcaRiaaigdacaGGSaGaaGymaiabg2da9iaaigda
% caGGSaGaaGymaaaa!3FAD!
\[
\varphi  = 0 + 1,1 = 1,1
\]
$
Дуга B-T становится насыщенной

Изображение

Шаг 3. Рассмотрим путь S-D-T. Можем увеличить поток на величину 3,2.
Тогда поток $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqy1dOMaey
% ypa0JaaGymaiaacYcacaaIXaGaey4kaSIaaG4maiaacYcacaaIYaGa
% eyypa0JaaGinaiaacYcacaaIZaaaaa!4121!
\[
\varphi  = 1,1 + 3,2 = 4,3
\]
$
Дуга S-D насыщена

Изображение

Шаг 4. Рассмотрим путь S-C-T. Можем увеличить поток на величину 2,2.
Тогда поток $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqy1dOMaey
% ypa0JaaGinaiaacYcacaaIZaGaey4kaSIaaGOmaiaacYcacaaIYaGa
% eyypa0JaaGOnaiaacYcacaaI1aaaaa!4129!
\[
\varphi  = 4,3 + 2,2 = 6,5
\]
$
Дуга S-C насыщена
Изображение

Шаг 5. Рассмотрим путь S-A-B-D-T. Можем увеличить поток на величину $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaciyBaiaacM
% gacaGGUbWaaeWaaeaacaaI1aGaaiilaiaaikdacqGHsislcaaIXaGa
% aiilaiaaigdacaGG7aGaaGynaiaacYcacaaIYaGaeyOeI0IaaGymai
% aacYcacaaIXaGaai4oaiaaikdacaGGSaGaaGymaiaacUdacaaI1aGa
% aiilaiaaiodacqGHsislcaaIZaGaaiilaiaaikdaaiaawIcacaGLPa
% aacqGH9aqpcaaIYaGaaiilaiaaigdaaaa!5197!
\[
\min \left( {5,2 - 1,1;5,2 - 1,1;2,1;5,3 - 3,2} \right) = 2,1
\]
$
Тогда поток $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqy1dOMaey
% ypa0JaaGOnaiaacYcacaaI1aGaey4kaSIaaGOmaiaacYcacaaIXaGa
% eyypa0JaaGioaiaacYcacaaI2aaaaa!412F!
\[
\varphi  = 6,5 + 2,1 = 8,6
\]
$
Дуги B-D, D-T насыщены
Изображение

Шаг 6. Рассмотрим путь S-A-C-T. Можем увеличить поток на величину $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaciyBaiaacM
% gacaGGUbWaaeWaaeaacaaI1aGaaiilaiaaikdacqGHsislcaaIZaGa
% aiilaiaaikdacaGG7aGaaGymaiaacYcacaaIXaGaai4oaiaaiodaca
% GGSaGaaGOmaiabgkHiTiaaikdacaGGSaGaaGOmaaGaayjkaiaawMca
% aiabg2da9iaaigdacaGGSaGaaGimaaaa!4B96!
\[
\min \left( {5,2 - 3,2;1,1;3,2 - 2,2} \right) = 1,0
\]
$
Тогда поток $% MathType!MTEF!2!1!+-
% feaafiart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr
% 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq-Jc9
% vqaqpepm0xbba9pwe9Q8fs0-yqaqpepae9pg0FirpepeKkFr0xfr-x
% fr-xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqy1dOMaey
% ypa0JaaGioaiaacYcacaaI2aGaey4kaSIaaGymaiaacYcacaaIWaGa
% eyypa0JaaGyoaiaacYcacaaI2aaaaa!4131!
\[
\varphi  = 8,6 + 1,0 = 9,6
\]
$
Дуга C-T становится насыщенной.

Изображение

Т.о., больше не существует путей из S в T.
Значит максимальный поток равен 9,6.

Верны ли мои рассуждения?

В задании сказано, что надо найти ещё разрез с минимальной пропускной способностью. Как найти этот разрез?

 Профиль  
                  
 
 Re: Алгоритм Форда-Фалкерсона
Сообщение04.01.2010, 00:21 
Заслуженный участник


09/08/09
3438
С.Петербург
Рассуждения Ваши верные, только алгоритм Форда-Фолкерсона предполагает явное построение на каждом шаге остаточной сети.
Ну а разрез с минимальной пропускной способностью -- это просто разрез, пропускная способность дуг которого даёт в сумме пропускную способность сети.

 Профиль  
                  
 
 Re: Алгоритм Форда-Фалкерсона
Сообщение04.01.2010, 14:25 


27/03/08
63
Спасибо за ответ.
Я только не совсем понял про разрез с минимальной пропускной способностью. В данном случае это будут какие дуги?

 Профиль  
                  
 
 Re: Алгоритм Форда-Фалкерсона
Сообщение05.01.2010, 02:52 
Заслуженный участник


09/08/09
3438
С.Петербург
Максимальный поток равен 9.6, поэтому минимальный разрез -- это разрез, проходящий через дуги BT, CT, DT.

 Профиль  
                  
 
 Re: Алгоритм Форда-Фалкерсона
Сообщение16.01.2010, 23:57 


16/01/10
1
спасиб вам большое, мне очень помогло то что я нашел на этой странице

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group