Главная » Просмотр файлов » Х. Пападимитриу, К. Стайглиц - Комбинаторная оптимизация

Х. Пападимитриу, К. Стайглиц - Комбинаторная оптимизация (1125252), страница 43

Файл №1125252 Х. Пападимитриу, К. Стайглиц - Комбинаторная оптимизация (Х. Пападимитриу, К. Стайглиц - Комбинаторная оптимизация) 43 страницаХ. Пападимитриу, К. Стайглиц - Комбинаторная оптимизация (1125252) страница 432019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 43)

Обе задачи вызвали большой интерес исследователей в последние два десятилетия. Они легко формулируются, апеллируют к интуиции и имеют много пРиложений Кроме того, имеются некоторые очень интересные алгоритмы, эффективно решающие эти задачи. Эти алгоритмы можно рассматривать как дальнейшие примеры использования идеи увеличения, знакомой нам по решениям задачи о максимальном потоке, обсуждавшимся в гл. б н9. Однако в случае задачи о паросочетании эффективное обнаружение и выполнение увеличений может оказаться непростым делом. Как в невзвешенном, так и во взвешенном вариантах задачи о паросочетании все эти вопРосы существенно упрощакзтся, если рассматриваемый граф является двудо.гьным В этой и следующей главах мы приведем и проанализируем алгоритмы для задач о паросочетанни и взвешенном паросочетаннн В обеих задачах вначале будет рассматриваться двудольный случай, поскольку этот случай — значительно более простой по структуре — помогает проиллюстрировать основные идеи, используемые при решении общей задачи.

10.1 Задача о паресечетании Подмножество М ребер графа 6=(г', Е) называется паросочетонием, если никакие два ребра из М не имеют общей вершины. Например, в графе, представленном на рис. !0.1, множества М, (Ь„о,1, Ь„о,1, Ь„, о,1,!о„о„)) (выделено на рис. !О.! жирными линиями) н М2 — (1оь ог1, !ом о,1, Ь,, о,), 1о„, о,), Ь„оы1) являются паросочетапиями.

При этом М, — максимальное паросочетание, 'поскольку, очевидно, паросочетание в 6 не может иметь больше, чем 1)гР2 =5 ребер. Задача о паросочетании состоит в нахождении в данном графе 6=('г', Е) максимального паросочетания М. Если мощность паросочетания равна ~1Р)у2 1, наибольшему возможному 224 Гм 10. Алгаров<ми длл задача о парасачеманпи значению в графе с [[<! вершинами, то паросочетание называется полныл<, или совершенным.

Рассмотрим граф 6 вместе с фиксированным паросочетанием М в 6. Ребра, входящие в М, называются ребрами паросочетания; остальные ребра называются свободными. Если [о, и) — ребро паросочетания, то и называется напарником о. Вершины, не инцидентные никакому ребру паросочетания, называются свободно<ми;остальные вершины обьединены в пары. Путь р=[и„и„..., ид1 называется чередующимся, если ребра [и,, и,1, [из ич! [иту Ю4 и< т а<а ат Рвс. )О.1. им[,... свободны, в то время как ребра [и„ив[, [и„и,[,, [ию, и,,[,... являются ребрами паросочетания. Вершины, стоящие на нечетных местах в некотором чередующемся пути, начинающемся со свободной вершины, называются внешними Вершины, стоящие на четных местах, называются внутренними ).[ля графа 6 и паросочетания М„представленных на рис. 1О.1, пути р<=[о„ом о„о„ о„о,1 и р,=[о„о4, о„о„о„о„о,е, о,! являются чередующимися.

Из существования этих чередующихся путей следует, что вершины о„о,, о, и о„о,, о„являются внешними, так как каждая из них стоит на нечетном месте в одном из этих путей и вершина о, свободна. Это не все внешние вершины графа 6 относительно М,: о„ и о, тоже являются внешними, поскольку рт=[о„о„о,! также чередую<цийся путь. Чередующийся путь р=[и„и„..., и„[ называется увеличивающим, если обе вершины и, и иь свободны.

На рис. 10.! путь ре=[о„о„о„о„о„о„ото, о,!является увеличиваю. щим. Большое значение увеличивающих путей для задачи о паросочетании вытекает из следующего факта. Лемма 10.1. Пусть Р— множество ребер увеличивающего путь р = [и,, и,, и,„[ в графе 6 относительно паросочетания М. Тоед< М' МЯР<1 — паросочетание мощности [М!+1. '] Если 5, Т вЂ” множества, то ВКЗТ обовивчвет симметрическую равно<по 3 в Т, определяемую равевствов 3<а)Т.= (Ю вЂ” Т) Ц [Т вЂ” ь). !О.!. Задача о парссвчетавви Доказательство. Покажем вначале, что МфР— паросочетание, т. е. никакие два ребра из МЯР не имеют общей вершины в 6.

Допустим, что два ребра е, е' из М(т)Р инцидентны одной и той же вершине. Так как МЯР= (М вЂ” Р) () (Р— М), то возможны три случая: 1) е, е'ЕМ вЂ” Р; 2) е, е'РР— М; 3) АМ вЂ” Р, е'РР— М. В первом случае получаем, что два ребра в М имеют общую вершину — противоречие. Во втором случае заметим, что ребра в Р— М имеют вид [из „и„), и, следовательно, никакие два из них не могут быть инцидентны одной и той же вершине. В третьем случае предположим, что ребро е'=[им „и„1 из Р— М имеет общую вершину с ребром еЕМ вЂ” Р. Без потери общности можно считать, что эта вершина им. Но и,! — вершина ребра е"=[ими и„„1Е!И, и, следовательно, два ребра е" и е из М имеют общую вершину — противоречие. Таким образом, М' — паросочетание.

Путь Р содержит 2(з — 1 ребер; й из них свободны ([и„и,[, (из, и,1,, [и«ь „и«к1) и (г — 1 принадлежат М. Следовательно, М'=МЯР содержит [М1-[-! ребер. П Например, увеличивающий путь р«=[оп о„о„о„о„о„оы, о,1 относительно паросочетания М„представленного па рис. 10.1, можно использовать для увеличения М, до М«=МЯР,=([оь о«1, [о«, оз1, [о„о,1, [о„о„1, [о«, о„1).

Поскольку М, — максимальное паросочетание (оно содержит [У1!2=5 ребер), то нет смысла искать увеличивающие пути в 6 относительно М;, не можетсуществовать увеличивающих путей относительно максимального паросочетания, поскольку такой путь, согласно лемме 10.1, можно было бы использовать для увеличения этого паросочетания. Оказывается, что обратное утверждение также верно. Теорема 10.1. Паоосочетание М в графе 6 максимально тогда и только иногда, когда в 6 не сушествует увеличивающего пути относительно М, Доказательство.

В одну сторону утверждение следует из леммы 10.1, Для доказательства обратного утверждения предположим, что в 6 не существует увеличивающего пути относительно М, но М не максимально, т. е. существует такое паросочетание М' в 6, что [М'1) [М[. Рассмотрим ребра, входящие в М®М', эти ребра образуют подграф графа 6 (этот подграф может быть несвязным). 'Так как никакие два ребра паросочетания не могут быть инцидент'пы одной и той же вершине, то подграф 6' =()', МЯМ') имеет специальную структуру — все его вершины имеют степень 2 или меньше.

Если степень вершины равна 2, то одно из инцидентных :,ей ребер входит в М, а другое — в М'. Поэтому все связные ком«й м зьзз 226 Гл. 1О. Алгоритмы длл задачи о ааротчетании поненты в 6' должны быть либо путями, либо циклами четной длины. Во всех циклах имеется одинаковое число ребер как из М, так и из И'.

Поскольку 1гИ'() 1М~, то хотя бы один из путей должен содержать больше ребер из М', чем из М, и, следовательно, этот путь является увеличивающим путем. Это, однако, противоречит нашему предположению о том, что в б не существует увеличиваю. щих путей относительно гИ. Д Характеризация максимальных паросочетаний, данная в теореме 1О.1, не сильно отличается от характеризациимаксимальных потоков в терминах увеличивающих путей (теорема 6.3).

Поэтому возникает соблазн построить для задачи о паросочетаиии аналог алгоритма построения максимального потока; начать с произвольного паросочетаиия (например, с пустого) и многократно находить увеличивающие пути, На ямом деле все известные алгоритмы для построения паросочетаний основаны в точности на этой идее. Тем не менее в этих алгоритмах имеется множество деталей. Более или менее непосредственно указанные идеи применяются в задаче о паросочетании в двудольных графах. В этом случае также наиболее понятна аналогия.

с задачей о максимальном потоке. 10.2 Алгоритм построения паросочетания а даудопьном графе Поскольку задача о паросочетании в двудольных графах является частным случаем задачи о пар<кочетании, обсуждавшейся в предыдушем параграфе (и, следовательно, к ней применима теорема 10.1), будем решать ее путем многократного нахождения увеличивающего пути р относительно текущего паросочетания М и увеличения текущего паросочетания до МфР. Кзк организовать поиск увеличивающих путей относительно паросочетания М в двудольном графе В=-(У, У, Е) систематическим и эффективным способом? Рассмотрим граф В и паросочетание М, представленные на рис. 10,2(а) Естественно, поиск увеличивающих путей должен начинаться с построения чередующихся путей из свободных вершин.

Так как один конец увеличивающего пути должен находиться в )г, а другой в (л', то, не теряя общности, можно начинать увеличивающие пути только из свободных вершин множества Р (в нашем примере п,) При этом можно искать всевозможные чередующиеся пути из а, одновременно, по принципу поиска в ширину. Начав из вершины гм можно искать увеличивающие пути, рассматривая все вершины, смежные с пм а именно ие и и„рис. 10.2(б)). Так как вершина о, свободна, все инцидентные ей ребра также свооодны По определению чередующегося пути мы должны теперь рассматривать ребра паросочстания, исходящие из и, и и„. Этот шаг однозначен, поскольку любая вершина имеет не более одного напарника. Естественно, если бы одна из вершин ие или ие былз 10,е.

Алеорипбм поспброеиип паробочелбипия об об и, и~ о, и. иб об об об об О О об о. б О о~ об О еб (в) иб оз об об (д) Рис, 10,2. 22Я Гл. 10. Алгоритмы для эадьчи о нароиметании свободной, то наша задача была бы выполнена, мы нашли бы увеличивающий путь. Однако это не так, и поэтому мы добавляем вершины и, и и, к нашему множеству чередующихся путей. По построению о, и о, — внешние вершины. Продолжаем далее увеличивающие пути из и, и о,. Заметим, что ребро [о„и,] (пунктирная линия на рис. 10.2(б)) опущено, поскольку и,, достигается из о, до просмотра вершины о,. Очевидно, поступая так, мы теряем только излишние увеличивающие пути.

В результате находим новые внешние вершины о„о, и о, (рис. 10.2(б)) и, наконец, замечаем, что внешняя вершина и, смежна со свободной вершиной и,. Таким образом, мы нашли увеличивающий путь и, используя его, можем увеличить М (рис. 10.2(д)). Процесс поиска увеличивающих путей сильно напоминает поиск в ширину.

Характеристики

Тип файла
DJVU-файл
Размер
5,6 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее