Share to: share facebook share twitter share wa share telegram print page

Алгоритм Гопкрофта — Карпа

В інформатиці, алгоритм Гопкрофта—Карпа отримує на вході двочастковий граф і видає на виході парування найбільшої потужності – множину, що містить якнайбільше ребер з властивістю, що жодна двійка ребер не має спільної вершини. Виконується за час у найгіршому випадку, де це множина ребер і це множина вершин графа. У випадку насиченого графа часові рамки набувають вигляду , для випадкових графів час виконання майже лінійний.

Алгоритм винайшли Джон Гопкрофт and Річард Карп (1973). Як і в попередніх методах для парування як-от Угорський алгоритм і роботі Едмондс, (1965), алгоритм Гопкрофта—Карпа багаторазово збільшує часткове парування через знаходження шляху розширення. Однак, замість пошуку одного шляху розширення, алгоритм шукає найбільшу множину найкоротших шляхів розширення. У результаті, потрібно лише ітерацій. Цей принцип використовували для розробки складніших алгоритмів для недвочасткового парування з таким самим часом виконання як у алгоритму Гопкрофта—Карпа.

Шляхи розширення

Збільшення парування через знаходження шляху розширення і застосування симетричної різниці для двох множин

У висліді маємо нове парування потужність якого на одиницю більша. Вершина, яка не є кінцем жодного ребра в певному частковому паруванні називається вільна вершина. В основі алгоритму лежить поняття шлях розширення, шлях який починається у вільній вершині і закінчується вільною вершиною, також він чергує ребро з парування з ребрами, що не входять до парування. Якщо це парування і це шлях розширення щодо , тоді симетрична різниця двох множин ребер, , буде парування розміру . Отже, знаходженням шляхів доповнення, алгоритм може збільшувати розмір парування.

І навпаки, припустимо, що не оптимальне, і нехай буде симетричною різницею де це оптимальне парування. Тоді, повинен утворювати набір неперетинних шляхів розширення і циклів або шляхів в яких вільні ребра і ребра з парування зустрічаються в однаковій кількості; різниця в розмірі між і це кількість шляхів розширення в Таким чином, якщо ми не можемо знайти шлях розширення, алгоритм може безпечно зупинитись, тому що в цьому випадку мусить бути оптимальним. Для докладнішого доведення дивись лему Берже.

Шлях розширення в задачі парування тісно пов'язаний із шляхом розширення в задачі про максимальний потік, тобто шляхом уздовж якого можна збільшити обсяг потоку між джерелом і стоком. Можливо перевести задачу парування двочасткового графа в задачу знаходження максимального потоку таким чином, що переміжні шляхи задачі парування стануть шляхами розширення задачі про максимальний потік.[1] Насправді, узагальнення техніки використовуваної в алгоритмі Гопкрофта—Карпа для довільної потокової мережі відоме як алгоритм Дініца.

Вхід: Двочастковий граф
Вихід: Парування
повторювати
найбільша множина вершинно-неперетинних найкоротших шляхів розширення
поки

Звичайний алгоритм

Нехай і будуть двома множинами у двоподілі де і нехай парування з у в будь-який час представлене як множина . Визначимо орієнтований граф як

ЗНАЙТИ-ШЛЯХ-РОЗШИРЕННЯ

  • множина вільних вершин у
  • множина вільних вершин у
  • побудувати орієнтований граф
  • знайти простий шлях з до у
  • якщо не існує тоді
    повернути (немає шляхів розширення)
  • інакше
    повернути ( це шлях розширення в )

Лема: Алгоритм ЗНАЙТИ-ШЛЯХ-РОЗШИРЕННЯ знаходить шлях тоді і тільки тоді, коли в існує шлях розширення щодо Більше того, і є шляхом розширення.

НАЙБІЛЬШЕ-ПАРУВАННЯ

  • повторювати
    ЗНАЙТИ-ШЛЯХ-РОЗШИРЕННЯ
    якщо тоді
    поки
    повернути

Розмір найбільшого парування має верхню границю і на кожному кроці збільшується на 1, отже цикл виконається не більше раз. Також нам потрібно часу, щоб знайти шлях розширення, отже алгоритм потребує часу.

Власне алгоритм Гопкрофта—Карпа

Задля гарантування, що довжина шляху розширення зростає від фази до фази, ми, в кожній фазі, будемо будувати найбільшу можливу множину шляхів розширення

Введемо позначення

Лема: Нехай буде довжиною найкоротшого шляху розширення щодо і нехай буде найбільшою множиною найкоротших неперетинних шляхів щодо тоді довжина найкоротшого шляху розширення щодо більша ніж

Наведемо процедуру, що будує множину . Процедура базується на пошуку в глибину.

ЧАСТКОВИЙ-DFS
  • запустити допоки не знайдена перша вершина з
  • видалити усі вершини відвідані під час з графа
  • якщо існує шлях з до тоді
    повернути
  • інакше
    повернути

Видалення вершин гарантує неперетинність зі шляхами, що ми знайдемо пізніше.

Ми використовуватимемо цю процедуру для багатошарового графа який ми будуємо з . Нехай буде множиною вільних вершин з Нехай буде відстань вершини від вершин з . Граф містить такі ребра:

.

Лема: Кожен шлях у що починається в це найкоротший шлях в

МАКСИМАЛЬНА-МНОЖИНА-ШЛЯХІВ
  • побудувати граф
  • нехай буде множиною вільних вершин у
  • для виконати
    ЧАСТКОВИЙ-DFS
    якщо тоді
  • повернути

Лема: Процедура МАКСИМАЛЬНА-МНОЖИНА-ШЛЯХІВ знаходить найбільшу множину найкоротших вершинно-неперетинних шляхів розширення щодо за час

Алгоритм-Гопкрофта-Карпа
  • повторювати
    МАКСИМАЛЬНА-МНОЖИНА-ШЛЯХІВ
    якщо тоді
    поки
  • повернути

Аналіз

Алгоритм знаходить найбільше парування в двочастковому графі за час .

Лема: Нехай буде найбільшим паруванням, і нехай буде будь-яким паруванням на Якщо довжина найкоротшого шляху розширення щодо дорівнює тоді .

Примітки

  1. Ahuja, Magnanti та Orlin, (1993), секція 12.3, задача потужності двочасткового парування, сторінки 469–470.

Посилання

  • Алгоритми парування (багато графіки) на сайті Римського університету ла Сапієнца (англ.)
  • Парування в графах [Архівовано 22 грудня 2014 у Wayback Machine.] на сайті Інституту Математичних Наук у Ченнаї (англ.)
  • Ahuja, Ravindra K.; Magnanti, Thomas L.; Orlin, James B. (1993), Network Flows: Theory, Algorithms and Applications, Prentice-Hall.
  • Джек Едмондс (1965), Шляхи, Дерева і Квіти, Канадський журнал з математики, 17: 449—467, doi:10.4153/CJM-1965-045-4, MR 0177907.

Read other articles:

German World War II submarine U-570 Type VIIC submarine that was captured by the British in 1941. This U-boat is almost identical to U-955. History Nazi Germany NameU-955 Ordered10 April 1941 BuilderBlohm & Voss, Hamburg Yard number155 Laid down23 February 1942 Launched14 November 1942 Commissioned31 December 1942 FateSunk on 7 June 1944 General characteristics Class and typeType VIIC submarine Displacement 769 tonnes (757 long tons) surfaced 871 t (857 long tons) submerged Length 67.10…

Pertandingan Grup G Piala Dunia FIFA 2018 berlangsung pada tanggal 18 hingga 28 Juni 2018.[1] Grup ini terdiri dari Belgia, Panama, Tunisia, dan Inggris. Dua tim peringkat teratas lolos ke babak 16 besar.[2] Tim peserta Posisi undian Tim Pot Konfederasi Metodekualifikasi Tanggallolos Penampilan diputaran final Penampilanterakhir Penampilanterbaik Peringkat FIFA Oktober 2017[cat. 1] Juni 2018 G1  Belgia 1 UEFA Juara Grup H Zona Eropa 3 September 2017 Ke-13 2014 (perem…

Včelary Včelary (Tschechien) Basisdaten Staat: Tschechien Tschechien Region: Zlínský kraj Bezirk: Uherské Hradiště Gemeinde: Bílovice Fläche: 76 ha Geographische Lage: 49° 6′ N, 17° 32′ O49.09944444444417.535277777778190Koordinaten: 49° 5′ 58″ N, 17° 32′ 7″ O Höhe: 190 m n.m. Einwohner: 344 (1. März 2001) Postleitzahl: 687 12 Kfz-Kennzeichen: Z Verkehr Straße: Uherské Hradiště – Zlín Kapelle der Ju…

ل. رون هوبارد (بالإنجليزية: Lafayette Ronald Hubbard)‏  معلومات شخصية الميلاد 13 مارس 1911[1][2][3][4]  تيلدن، نبراسكا[5][6]  الوفاة 24 يناير 1986 (74 سنة) سبب الوفاة سكتة دماغية  الإقامة كاليسبيل، مونتاناتيلدن، نبراسكاهيلينا، مونتاناغوامواشنطنبريميرتونباسادينا،…

Cet article est une ébauche concernant une personnalité suisse. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Christa RigozziBiographieNaissance 2 mai 1983 (40 ans)Monte CarassoNationalité suisseFormation Université de BerneActivités Animatrice de télévision, mannequin, participante à un concours de beautéAutres informationsSite web www.christarigozzi.chDistinction Miss Suissemodifier - modifier le c…

Fortaleza de Samuel UbicaciónPaís  BulgariaCoordenadas 41°23′09″N 23°01′16″E / 41.385833333333, 23.021111111111CaracterísticasTipo Fortaleza, Yacimiento arqueológico y MuseoParte de 100 sitios turísticos nacionalesMapa de localización Fortaleza de Samuel Ubicación (Provincia de Blagoevgrad).[editar datos en Wikidata] La fortaleza de Samuel se encuentra entre las montañas de Belasica y Ograzden en la margen derecha del río Strumica, cerca del…

Tar Plaats in Kroatië Situering Provincie Istrië Gemeente Tar-Vabriga Coördinaten 45° 18' NB, 13° 38' OL Algemeen Inwoners (2001) 886 Overig Postcode 52465 Netnummer 052 Kenteken PU Foto's Portaal    Kroatië Tar is een dorp in Kroatische provincie Istrië, vlak bij de stad Poreč. Tar hoort bij de gemeente Tar-Vabriga. De Italiaanse naam voor de plaats Tar is Torre.

العلاقات المارشالية الليتوانية جزر مارشال ليتوانيا   جزر مارشال   ليتوانيا تعديل مصدري - تعديل   العلاقات المارشالية الليتوانية هي العلاقات الثنائية التي تجمع بين جزر مارشال وليتوانيا.[1][2][3][4][5] مقارنة بين البلدين هذه مقارنة عامة ومرجعية لل…

У Вікіпедії є статті про інших людей із таким прізвищем: Малий. Малий Михайло Олександрович Народився 3 листопада 1931(1931-11-03) (92 роки)МиколаївКраїна  СРСРНаціональність українецьДіяльність токарПартія КПРСНагороди Премії Звання Заслужений машинобудівник України Почесн…

1995 Indian filmAvatharamVCD coverDirected byNassarWritten byNassarProduced byVaithyanathanStarringNassarRevathiCinematographyP. S. DharanEdited byM. N. RajaMusic byIlaiyaraajaProductioncompanyKamalam MoviesRelease date 9 June 1995 (1995-06-09) Running time125 minutesCountryIndiaLanguageTamil Avatharam (transl. Avatar) is a 1995 Indian Tamil-language film written and directed by Nassar, making his directorial debut. The film stars him and Revathi. It was released on 9 June 1…

University of civil aviation École nationale de l'aviation civileOther nameENACMottoLa référence aéronautiqueMotto in EnglishThe aeronautical standardTypeGrande écoleEstablished1949 (1949)Academic affiliations3AF,[1] Aerospace Valley, CDEFI, CESAER,[2] CGE,[3] CTI,[4] Elles Bougent, Erasmus, EUR-ACE,[5] France AEROTECH,[6] GEA, IAAPS,[7] ICAO, ISSAT, PEGASUS, Toulouse Tech, University of ToulouseGeneral DirectorOlivier Chanso…

Pour les articles homonymes, voir Marcadet et Poissonnier (homonymie). « Poissonniers (métro de Paris) » redirige ici. Ne pas confondre avec Poissonnière (métro de Paris). Marcadet - Poissonniers Quai de la ligne 12 en 2019 après le décarrossage Localisation Pays France Ville Paris Arrondissement 18e Coordonnéesgéographiques 48° 53′ 25″ nord, 2° 21′ 00″ est Caractéristiques Position parrapport au sol Souterraine Voies 4 Quais 4 Nombre d…

هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (نوفمبر 2019) جيمس ر. هوتون معلومات شخصية الميلاد سنة 1936 (العمر 86–87 سنة)  مواطنة الولايات المتحدة  الأب أموري هوتون  الحياة العملية المدرسة الأم كلية هارفارد للأع…

Leo SuryadinataLeo Suryadinata di Jakarta pada tahun 2023Lahir21 Februari 1941 (umur 82)Batavia, Hindia BelandaTempat tinggalSingapuraAlmamaterUniversitas NanyangUniversitas IndonesiaUniversitas MonashUniversitas OhioUniversitas AmerikaDikenal atasStudi Tionghoa-IndonesiaKarier ilmiahBidangSosiologi; Sinologi Leo Suryadinata Hanzi tradisional: 廖建裕 Alih aksara Mandarin - Hanyu Pinyin: Liào Jiàn Yù Min Nan - Romanisasi POJ: Liâu Kiàn-jū Nama Indonesia Indonesia: Liauw Kian-Djoe Le…

село Любомирка Країна  Україна Область Хмельницька область Район  Шепетівський район Громада Полонська міська громада Основні дані Засноване 1680 Населення 396 Площа 0,728 км² Густота населення 543,96 осіб/км² Поштовий індекс 30535 Телефонний код +380 3843 Географічні дані Г…

Untuk kegunaan lain, lihat Tiara Andini (disambiguasi). Tiara AndiniTiara pada tahun 2021LahirTiara Anugrah Eka Setyo Andini23 September 2001 (umur 22)Jember, Jawa Timur, IndonesiaPendidikanUniversitas Multimedia NusantaraPekerjaanPenyanyipemeranperagawatipembawa acara televisiTahun aktif2017–sekarangAgenStar Media NusantaraKaryaDiskografilagufilmografiTinggi163 cm (5 ft 4 in)[1]PenghargaanDaftar penghargaanKarier musikGenrePopbaladaInstrumenVokalTahun aktif202…

Device that generates sounds of constant pitch when struck Tuning fork by John Walker stamped with note (E) and frequency in hertz (659) A tuning fork is an acoustic resonator in the form of a two-pronged fork with the prongs (tines) formed from a U-shaped bar of elastic metal (usually steel). It resonates at a specific constant pitch when set vibrating by striking it against a surface or with an object, and emits a pure musical tone once the high overtones fade out. A tuning fork's pitch depend…

Черкаська єпархія — термін, який має кілька значень. Ця сторінка значень містить посилання на статті про кожне з них.Якщо ви потрапили сюди за внутрішнім посиланням, будь ласка, поверніться та виправте його так, щоб воно вказувало безпосередньо на потрібну статтю.@ пошук п…

Winter sliding sport SkeletonNozomi Komuro pushes off at the startHighest governing bodyInternational Bobsleigh and Skeleton FederationFirst playedLate 19th century, SwitzerlandCharacteristicsContactNoTeam members1TypeWinter sport, time trialVenueSkeleton tracksPresenceOlympic1928, 1948, 2002 to present Skeleton is a winter sliding sport in which a person rides a small sled, known as a skeleton bobsled (or bobsleigh), down a frozen track while lying face down and head-first. The sport and t…

هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (سبتمبر 2023) هذه مقالة غير مراجعة. ينبغي أن يزال هذا القالب بعد أن يراجعها محرر مغاير للذي أنشأها؛ إذا لزم الأمر فيجب أن توسم المقالة بقوالب الصيانة المناسبة. يمكن أيضاً ت…

Kembali kehalaman sebelumnya