Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Dobrý den,
mam dotaz ohledně teorie grafů konkrétně o párování na úplném bipartitním grafu s preferencemi. Pro nalezení stabilního párování použijme dvořící algoritmus(možná se tomu říká jinak) který vždy alespoň jedno stabilní párování nalezne. Dejme tomu že se jedná o nalezení stabilního párování mezi n muži a n ženami. Moje otázka zní: lze nalézt takovou konfiguraci preferencí pro 5 mužů a 5 žen tak, aby se každé ženě alespoň v jedné iteraci dvořícího rituálu dvořili současně alespoň dva muži??
Offline
A jaký je princip dvořícího algoritmu (kterému se možná říká jinak)?
Offline
↑ check_drummer:
no je to problém převzatý z open kurzu z MIT, stručně řečeno:
Máme n žen a n mužů,
každá žena i muž má svůuj preferenční list, kde má seřazeny
všechny osoby opačného pohlaví sestupně podle preference,
úkolem je najít stabilní párovaní, tedy takové rozdělení do
manželských dvojic, aby si novým sňatkem alespoň jeden z
novomanželů pohoršil.
Popis jedné iterace (jednoho dne):
Dokud není splněna ukončovací podmínka, probíhá každý den takto:
Ráno: každá žena stojí na svém balkóně. Každý muž stojí pod
balkónem ženy, která je nejvýše v jeho seznamu, a dvoří se jí.
Muži s prázdným seznamem jsou doma.
Odpoledne: každá žena, pod jejíž balkónem jsou alespoň dva
muži, řekne tomu v seznamu nejvýše položenému, aby přišel zítra
a ostatním, at’ už nechodí.
Večer: každý odehnaný muž si škrtne ze svého seznamu ženu,
která ho dnes odehnala.
Ukončovací podmínka: každé ženě se dvoří nejvýš jeden muž.
Konkretní příklad:
Děkuju moc že se o to zajímáte
Offline
↑ h4ck3r001:
Myslím, že nelze.
Jestliže se u nějaké ženy objeví více než dva muži, pak jeden z nich u ní již zůstane. Rovněž, pokud se u nějaké ženy v první dni, kdy k ní někdo dorazí, objeví jen jeden muž, bude z hlediska dosažení hledaného stavu výhodnější, aby se tento jeden muž objevil spíše u nějaké ženy, u které již nějaký jiný muž je.
Nenapadá mě dále lepší argument než výčet všech možností, tj.
možnost 1:
1. den budou všichni muži u jedné ženy Z1 (M1 tam už zůstane)
2. den budou všichni muži u Z2 a M2 tam zůstane
3. den budou všichni muži u Z3 a M3 tam zůstane
je vidět, že tímto směrem řešení nedosáhneme
možnost 2:
1. den budou všichni muži u jedné ženy Z1 (M1 tam už zůstane)
2. den budou dva muži u Z2 (M2 tam zůstane) a dva muži u Z3 (M3 tam zůstane)
rovněž Z4 a Z5 nemají šanci mít obě dva muže pod balkonem
možnost 3:
1. den budou dva muži u Z1 (M1 tam už zůstane) a dva muži u Z2 (M2 tam zůstane)
2. den budou tři muži u Z3 (M3 tam zůstane)
rovněž nelze dosáhnout řešení
Tím jsou všechny možnosti vyčerpány. Nalézt uvedenou konfiguraci tedy dle mého nelze.
Nejspíš by bylo možné podat nějaký elegantnější argument - např. pomocí indukce (podle n1+n2) by to asi šlo: na počátku máme n1 žen a n2 mužů, kde n1>=n2: první den bude u k žen m mužů - kde m>=k - a potom na další dny zbude n2-m mužů na n1-k žen - tedy n2-m >= n1-k a podle indukce nemá řešení, ještě zbývá dodat že pro n1+n2=1,2,3,4 nemá rovněž úloha zřejmě řešení.
Offline
Zkusím to jen o trochu elegantněji (a je na posouzení, jestli to ve výsledku elegantnější bude : )) ):
Říkejme jevu "jeden den se u ženy objeví alespoň dva muži" např. jednoduše "výskyt" a počítejme výskyty a dny:
Fakt1: Za 1 den můžou proběhnout nejvýše 2 výskyty (jinak by mužů muselo být alespoň 6).
Fakt2: Musí proběhnout alespoň 5 výskytů, než bude párování dokončeno.
Z toho plyne: Děj musí probíhat alespoň tři dny.
Fakt 3: Od chvíle, kdy nějaký muž přijde k ženě, blokuje tato žena jednoho muže (ne nutně konkrétního, ale kvantitativně) po celý zbytek procesu.
Z toho plyne: uskuteční-li se libovolným způsobem tři výskyty, v dalších dnech již budou k dispozici nejvýše dva muži. Uskuteční-li se lib. způsobem čtyři výskyty, další den bude k dispozici pouze jeden muž.
Zanedbejme tedy teď dny, ve kterých neproběhne výskyt (situace s muži k dispozici se vždy buď jen zhorší - ubude jich - nebo nezmění). Během prvních dvou dnů můžou proběhnout nejvýše tři výskyty. Zbudou tedy nejvýše dva neblokovaní muži a dvě ženy, u nichž by se měl uskutečnit výskyt, což zřejmě nemá řešení.
I kdyby v prvních dvou dnech nakrásně proběhly čtyři výskyty, pátý již určitě neproběhne (nedostatek mužů).
Pozn: býti k dispozici znamená "mít možnost vyskytnout se ve výskytu u některé z žen, u níž výskyt ještě neproběhl" - je to však údaj kvantitativní a neváže se na jednotlivé muže, nýbrž jen na počet mužů.
Pozn2: Zavedená terminologie působí dost hrozivě a prosím všechny feministy a feministky, aby si ji přizpůsobili, příp. aby zaměnili názvy "žena" a "muž" : ))
Offline
Jde přinést daleko snažší argument, že dokonce pro obecné n nemůže být, aby se každé ženě alespoň v jedné iteraci dvořícího rituálu dvořili současně alespoň dva muži.
Jak už psal ↑ OiBobik: ve faktu 3, je jasné, že jakmile se u nějaké ženy objeví nějaký muž, pak až do konce celého procesu se u ní objeví alespoň jeden muž (vždy alespoň ten nejúspěšnější z předchozího kola).
Poslední kolo, kdy u každé ženy stojí jeden muž, se samozřejmě "nepočítá".
Využijme toho, že celý dvořící algoritmus skončí a dá nějaké řešení.
Není-li poslední kolo současně kolo první (kdy by nebylo co řešit), pak v předposledním kole existuje žena, u které nikdo nestojí (kdyby taková žena neexistovala, pak jsme v kole posledním, ale to nejsme). No ale protože je to kolo předposlední, za kterým je už jen kolo poslední, a protože v posledním kole stojí u každé ženy jediný muž, tak u této ženy nikdy nebudou stát muži dva.
EDIT: Dokonce jsem dokázal drobně víc: Existuje alespoň jedna žena, u které se poprvé nějaký muž objeví až v závěrečném kole.
Offline