Dopasowanie masy „sprawiedliwe”


9

Interesuje mnie wariant maksymalnego dopasowania wagi na wykresie, który nazywam „maksymalnym uczciwym dopasowaniem”.

Załóżmy, że wykres jest pełny (tj E=V×V) Ma liczbę nawet wierzchołków, a masa jest podawana przez funkcję zysk . Biorąc pod uwagę pasujące , oznacz przez zysk krawędzi jest dopasowany.p:(V2)NMM(v)v

Pasujące jest sprawiedliwym pasującym iff, dla dowolnych dwóch wierzchołków : Mu,vV

(wV:  p({w,v})p({w,u}))M(v)M(u)

Oznacza to, że jeśli dla dowolnego wierzchołka , dopasowanie do wierzchołka daje większy zysk niż dopasowanie go do wierzchołka , wystarczające dopasowanie musi wystarczyć .wVwvuM(v)M(u)

Czy możemy znaleźć skuteczne dopasowanie do maksymalnej wagi w sposób efektywny?


Ciekawym przypadkiem jest to, że wykres jest dwustronny, a uczciwość dotyczy tylko jednej strony, to znaczy, że , a otrzymujemy funkcję zysku .G=(LR,L×R)p:L×RN

Fair dwustronny Dopasowanie to dopasowanie w , że dla dowolnych dwóch wierzchołków : Gu,vL

(wR:  p({v,w})p({u,w}))M(v)M(u)

Jak szybko możemy znaleźć maksymalne obciążenie dla uczciwego dwustronnego dopasowania?


Motywacja tego problemu wynika z dwustronnego specjalnego przypadku. Załóżmy, że masz pracowników i zadań, a pracownik może wygenerować zysku z pracy . Problem polega na zaprojektowaniu rozsądnego (w pewnym sensie pracownicy nie będą czuć się „oszukani”), przy jednoczesnym maksymalizowaniu całkowitych wypłat (istnieje tutaj kompromis między siłą mechanizmu przypisania a świadczeniem społecznym).nmipi,jj

Jeśli zdefiniujemy zasiłek socjalny (lub zysk fabryczny) przypisania pracowników do miejsc pracy jako sumę zysków.

Patrząc na różne scenariusze dotyczące siły osoby zlecającej zadanie, otrzymujemy następujące wyniki:

  • Jeśli wolno nam przypisać dowolnego pracownika do dowolnego zadania, możemy skutecznie zoptymalizować fabrykę (wystarczy znaleźć dopasowanie o maksymalnej masie).

  • Jeśli każdy pracownik sam wybierze zadanie, zakładając, że jego praca zostanie wybrana (dla każdej pracy można wybrać tylko jedną pracę), jeśli będzie on najlepiej wykwalifikowanym pracownikiem, który wybrał to zadanie, robotnicy staną się „chciwi” ' równowaga. Powodem jest to, że pracownik, który mógłby najwięcej zarobić ( ) wybierze najbardziej dochodową pracę i tak dalej. Przy współczynniku aproksymacji chciwego algorytmu dopasowywania powinno to dać przybliżone 2 maksymalne możliwe zabezpieczenie społeczne.i=argmaximaxjpi,j

Szukam czegoś pośredniego. Załóżmy, że możemy przypisać pracowników do pracy, ale musimy obiecać im, że żaden „mniej wykwalifikowany” pracownik nie zarabia więcej niż oni.

Jak skutecznie znaleźć maksymalne dopasowanie wagi obiecujące „uczciwość” do pracowników?


Stycznie dla drugiego (dwustronnego) przypadku wydaje się łatwe do skonstruowania przykłady, w których każde „sprawiedliwe” dopasowanie daje pierwszemu pracownikowi zysk 1, a pozostałe zero, mimo że istnieją „niesprawiedliwe” dopasowania dające pierwszemu pracownikowi i wszyscy inni zyskują . Podobnie przykłady, w których uczciwe dopasowanie maksymalnej wagi daje każdemu pracownikowi zysk , mimo że istnieją niesprawiedliwe dopasowania dające zysk każdemu pracownikowi w . 12ϵ1ϵ2/n{1ϵ,12ϵ}
Neal Young,

@NealYoung - czy słusznie zakładam, że te scenariusze nie mogą istnieć, jeśli zyski są różne?
RB

Wydaje się, że jest to standardowy problem w teorii gier, w którym niemożność rozróżnienia alternatyw znacznie obniża poziom opieki społecznej.
RB

Ups, cofam mój komentarz - nie jestem pewien, czy te przykłady są w końcu możliwe do zrealizowania!
Neal Young,

Odpowiedzi:


1

Uważam, że „maksymalne obciążenie uczciwe dwustronne dopasowanie”, jak już zdefiniowałeś, jest NP-trudne. Co więcej, ustalenie istnienia rzetelnego dwustronnego dopasowania jest trudne dla NP.

Przed podaniem szkicu próbnego, dla intuicji, rozważ następującą małą instancję. Weźmy gdzie , . Weź tak, że dla i , podczas gdy dla i . Następnie i są ekwiwalentne w takim sensie, że dla wszystkich , tak pasującego uzasadniona musi dać i taki sam wynik. Dlatego jedyne uczciwe dopasowania pasują do siebieG=(L,R,E=L×R)L={a,b}R={c,d,e,f}pp(u,w)=0uLw{c,d}p(u,w)=1uLw{e,f}abp(a,w)=p(b,w)wRabai z i , albo dopasować i do i . Za pomocą tego rodzaju gadżetu możemy wymusić koordynację krawędzi w dopasowaniu. To jest podstawa redukcji.bcdabef

Oto próba dowodu. To jest trochę zaangażowane. Prawdopodobnie są jakieś błędy, ale mam nadzieję, że wszelkie błędy można naprawić.

Lemat 1. Biorąc pod uwagę i zgodnie z opisem problemu, ustalenie, czy zawiera prawidłowe dopasowanie, to NP -ciężko.G=(L,R,E=L×R)p:ER+G

Szkic próbny. Dowodem jest redukcja z Independent Set w grafach sześciennych. Niech będzie danym wystąpieniem zbioru niezależnego, gdzie jest wykresem sześciennym (każdy wierzchołek ma stopień 3). Opisujemy, jak skonstruować wykres i funkcję zysku tak, że ma sprawiedliwe dopasowanie dwustronne, jeśli i tylko jeśli ma niezależny zestaw wielkości .(G=(V,E),k)GG=(L,R,E=L×R)p:ER+GGk

Wierzchołki w przyjdą parami, zwanymi partnerami . Podobnie do wierzchołków . Dla każdego wierzchołka , pozwalamy oznaczać partnera . Każdy wierzchołek i jego partner będą równoważne , co oznacza, że ​​utworzymy W konsekwencji każde uczciwe dopasowanie musi przypisać ten sam zysk do i . W poniższym przykładzie używamy do oznaczenia wartości .LRvLRvvLL

p(,r)=p(,r) for all rR.
π(,r)p(,r)=p(,r)

Ponadto, dla każdej pary w i każdej pary partnerów w , albo robimy lub tworzymy W pierwszym przypadku mówimy, że zezwalamy na dopasowanie i do i (ponieważ w ten sposób przypisano by ten sam zysk do i , zgodnie z wymaganiami). W tym drugim przypadku mówimy, że zapobiegamy dopasowaniu i (oba) do iLr,rR

π(,r)=π(,r)
π(,r)π(,r).
rr rr (ponieważ zrobienie tego nie przypisałoby tego samego zysku do i ).

Ponieważ podany wykres jest sześcienny, spełnia on, a każdy niezależny zestaw o rozmiarze w ma dokładnie krawędzi. Załóżmy dla ułatwienia, że .G=(V,E)3|V|=2|E|IkG3kV={1,2,,n}

Dla każdej krawędzi wykonaj następujące czynności.{i,j}E

  1. Dodawanie pary wierzchołków partnerem do . r({i,j}),r({i,j})R

  2. Dla punktów końcowych dodać parę partnera wierzchołki do . Ustaw umożliwiając dopasowanie i do i . i(i,j),(i,j)L

    π((i,j),r({i,j}))=π((i,j),r({i,j}))=i,
    (i,j)(i,j)r({i,j})r({i,j})
  3. Symetrycznie dla drugiego punktu końcowego : dodaj kolejną parę partnerskich wierzchołków do i ustaw dopuszczając i do dopasowania do i .j(j,i),(j,i)L

    π((j,i),r({i,j})=π((j,i),r({i,j}))=j,
    (j,i)(j,i)r({i,j})r({i,j})

Dla każdego dodanego do tej pory i , jeśli para nie jest wyraźnie dozwolone (powyżej), aby dopasować do , to należy zapobiec dopasowaniu, przypisując i każdy jakiś unikalny numer.LrR,r,rπ(,r)π(,r)

Następnie dodawano pary wypełniacza wierzchołki . Dla każdego wierzchołka wypełniacza każdego ustaw wartość .3(|V|k)Rr(i,j)Lπ((i,j),r)=0

Na koniec, dodać dwa wierzchołki i (partnerzy) do , wraz z dwoma wierzchołkami i (również partnerzy) do . Ustaw , umożliwiając i do i . Dla każdego innego wierzchołka ustaw na jakąś unikalną liczbę. (W związku z tym każde uczciwe dopasowanie musi pasować i do i .) Dla każdegoL0L0LR0R0Rπ(L0,R0)=π(L0,R0)=1L0L0R0R0rRπ(L0,r)L0L0R0R0iV, dla każdej krawędzi zdarzenia , ustaw i .{i,j}Eπ((i,j),R0)=iπ((i,j),R0)=|V|i+1

To kończy redukcję. Na koniec potwierdzamy, że jest poprawny.


Najpierw zastanów się, jakie pary wierzchołków to drugie dominuje pierwsze, to znaczy (i,j),(i,j)L

(rR) π((i,j),r)π((i,j),r).

Biorąc pod uwagę zyski przypisane do krawędzi na i , warunek ten można spełnić tylko wtedy, gdy , i sprawdzając definicję dla pozostałych krawędzi, warunek jest wystarczający. Dlatego dopasowanie jest uczciwe tylko wtedy, gdy przypisuje i do i , a także, dla każdego , daje taki sam zysk wszystkim wierzchołkom w R0R0i=iπi=iL0L0R0R0iV

N(i)={(i,j):{i,j}E}{(i,j):{i,j}E}.

Najpierw załóżmy, że ma niezależny zestaw o rozmiarze . Uzyskaj sprawiedliwe dopasowanie dla od w następujący sposób. GIkGI

Dopasuj i do i .L0L0R0R0

Dla każdego wierzchołka niech będą trzema krawędziami zdarzenia. Dla każdej krawędzi dopasuj wierzchołek i jego partnera do i . Daje to wszystkie wierzchołki w zysku .iI{i,j1},{i,j2},{i,j3}{i,jh}(i,jh)(i,jh)r({i,jh})r({i,jh})N(i)i

Dla każdego z wierzchołków , dla każdej z trzech krawędzi incydentu z , match i jego partner do jakiejś unikalnej pary wierzchołków wypełniacza i jego partnera . Daje to wszystkim wierzchołkom zysku .|V|kiVI{i,j}i(i,j)(i,j)rrN(i)0

Dlatego dopasowanie jest uczciwe.


Następnie załóżmy, że ma sprawiedliwy pasujący .GM

M musi pasować i do i . Dla każdego dopasowanie musi dać każdemu wierzchołkowi w taki sam zysk. Dla każdego jego partner również znajduje się w . Tak więc, przez inspekcję redukcji, zysk z każdego takiego wierzchołka musi być albo (w tym przypadku wszystkie sześć wierzchołków są dopasowane do wierzchołków i ich partnerzy) lub zero (w którym to przypadku wszystkie sześć wierzchołków w jest dopasowanych do wypełniających wierzchołków w ). PozwolićL0L0R0R0iVN(i)(i,j)N(i)(i,j)N(i)iN(i)r({i,j})N(i)RI zbiorem wierzchołków, dla których obowiązuje poprzednia sprawa. Dla każdej krawędzi każdy wierzchołek i jego partner są dopasowani do jednego wierzchołka. Wynika z tego że niezależnym zestawem. Ponieważ liczba wierzchołków wypełniających wynosi , rozmiar musi wynosić co najmniej .{i,j}r({i,j})I6(|V|k)Ik

QED (?)


Myślę, że jest to w zasadzie poprawne, choć trochę skomplikowane. Daj mi znać, jeśli zobaczysz jakieś błędy lub sposób na uproszczenie dowodu.

Powyższa redukcja zakłada, że ​​przyjęcie jest w porządku . Jeśli to niepożądane, to przypuszczam, że możemy uzupełnić pomocąwypełniaj wierzchołki, przypisując zysk 0 do wszystkich ich krawędzi oprócz krawędzi do i . Możemy przypisać zyski do tych ostatnich krawędzi, aby upewnić się, że wierzchołki wypełniacza nie są zdominowane (ani zdominowane) przez żaden inny wierzchołek.|R|>|L|L|R||L|R0R0

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.