Maximales Gewicht "fair" passend


9

Ich interessiere mich für eine Variante der maximalen Gewichtsanpassung in einem Diagramm, die ich "Maximum Fair Matching" nenne.

Es sei angenommen , dass der Graph voll ist (dh ), hat gerade Anzahl von Eckpunkten, und daß das Gewicht durch eine Gewinnfunktion gegeben ist p: {V \ wählen 2} \ to \ mathbb N . Wenn ein übereinstimmendes M gegeben ist , bezeichnen Sie mit M (v), dass der Gewinn der Kante v mit übereinstimmt.E=V×Vp:(V2)NMM(v)v

Ein übereinstimmendes M ist ein faires übereinstimmendes iff für zwei beliebige Eckpunkte u,vV : (\ für alle

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

Das heißt, wenn für einen Scheitelpunkt wV Anpassung von w an einen Scheitelpunkt v einen höheren Gewinn ergibt als die Anpassung an einen Scheitelpunkt u , muss eine faire Übereinstimmung M (v) \ geq M (u) ausreichen M(v)M(u).

Können wir effizient eine maximale Gewichtsanpassung finden?


Ein interessanter Fall ist, wenn der Graph zweiteilig ist und die Fairness nur für eine Seite gilt, dh angenommen wird, dass G=(LR,L×R) , und wir eine Gewinnfunktion p:L×RN .

Eine faire zweigliedrige Übereinstimmung ist eine Übereinstimmung in G so dass für zwei beliebige Eckpunkte u,vL : (\ für alle

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

Wie schnell können wir eine maximale zweiteilige Übereinstimmung mit maximalem Gewicht finden?


Die Motivation für dieses Problem liegt im zweiteiligen Sonderfall. Angenommen, Sie haben Arbeiter und Aufgaben, und Arbeiter kann Gewinn aus Arbeit erzeugen . Ein Problem hierbei ist das Entwerfen eines vernünftigen (in gewissem Sinne fühlen sich die Arbeitnehmer nicht "betrogen"), während die Gesamtauszahlungen maximiert werden. (Hier besteht ein Kompromiss zwischen der Macht des Zuweisungsmechanismus und dem sozialen Nutzen.)m i p i , j jnmipi,jj

Wenn wir die soziale Wohlfahrt (oder den Fabrikgewinn) der Zuordnung von Arbeitnehmern zu Arbeitsplätzen als die Summe der Gewinne definieren.

Wenn wir verschiedene Szenarien für die Leistung des Auftraggebers betrachten, erhalten wir die folgenden Ergebnisse:

  • Wenn wir einen Arbeiter einem Job zuweisen dürfen, können wir die Fabrik effizient optimieren (finden Sie einfach eine maximale Gewichtsanpassung).

  • Wenn jeder Arbeiter eine Aufgabe selbst auswählt und davon ausgeht, dass seine Arbeit ausgewählt wird (für jeden Job kann nur eine einzige Arbeit ausgewählt werden), sollte er der qualifizierteste Arbeiter sein, der die Aufgabe ausgewählt hat, werden die Arbeiter in die "gierige" Aufgabe konvergieren. 'Gleichgewicht. Der Grund ist, dass der Arbeiter, der am meisten verdienen könnte ( ), den profitabelsten Job wählt und so weiter. Durch die Approximationsrate des Greedy-Algorithmus für das Matching sollte dies eine 2-Approximation der maximal möglichen sozialen Wohlfahrt ergeben.i=argmaximaxjpi,j

Ich suche etwas dazwischen. Nehmen wir an, wir könnten Arbeiter Jobs zuweisen, müssen ihnen aber versprechen, dass kein "weniger qualifizierter" Arbeiter mehr verdient als sie.

Wie können wir ein maximales Gewicht finden, das den Mitarbeitern eine vielversprechende "Fairness" verspricht?


Tangential scheint es für den zweiten (zweigliedrigen) Fall einfach zu sein, Beispiele zu konstruieren, bei denen jedes "faire" Matching den ersten Arbeitergewinn 1 und der Rest Null ergibt, obwohl es "unfaire" Matchings gibt, die den ersten Arbeitergewinn und alle anderen profitieren . In ähnlicher Weise Beispiele, bei denen die faire Übereinstimmung mit maximalem Gewicht jedem Arbeiter einen Gewinn von bringt , obwohl es unfaire Übereinstimmungen gibt, die jedem Arbeiter einen Gewinn in . 1 - ϵ 2 / n { 1 - ϵ , 1 - 2 ϵ }12ϵ1ϵ2/n{1ϵ,12ϵ}
Neal Young

@NealYoung - kann ich zu Recht davon ausgehen, dass diese Szenarien nicht existieren können, wenn die Gewinne unterschiedlich sind?
RB

Es scheint ein Standardproblem in der Spieltheorie zu sein, bei dem die Unfähigkeit, zwischen Alternativen zu unterscheiden, die soziale Wohlfahrt erheblich senkt.
RB

Hoppla, ich nehme meinen Kommentar zurück - ich bin mir nicht sicher, ob diese Beispiele doch realisierbar sind!
Neal Young

Antworten:


1

Ich glaube, dass "Maximum Weight Fair Bipartite Matching", wie Sie es definiert haben, NP-hart ist. Darüber hinaus ist es NP-schwer, die Existenz eines fairen zweigliedrigen Matchings zu bestimmen.

Bevor ich eine Beweisskizze gebe, betrachten wir zur Intuition die folgende kleine Instanz. Nehmen Sie wobei , . Nehmen Sie so, dass für und , während für und . Dann sind und äquivalent in dem Sinne, dass für alle , so dass jede faire Übereinstimmung und den gleichen Gewinn geben muss . Daher stimmen die einzigen fairen Übereinstimmungen übereinL = { L.G=(L,R,E=L×R)R = { c , d , e , f } p p ( u , wL={a,b}R={c,d,e,f}pu L w { c , d } p ( u , w ) = 1 up(u,w)=0uLw{c,d}p(u,w)=1uLa b p ( a , w ) = p ( b , a b c d a b e fw{e,f}abw R a bp(a,w)=p(b,w)wRaba und zu und , oder sie stimmen mit und zu und überein . Mit dieser Art von Gadget können wir die Koordination der Kanten beim Matching erzwingen. Dies ist die Basis der Reduzierung.bcdabef

Hier ist ein Beweisversuch. Es ist ein bisschen involviert. Wahrscheinlich gibt es einige Fehler, aber hoffentlich können alle Fehler behoben werden.

Lemma 1. Wenn und wie im Problem beschrieben, ist die Bestimmung, ob eine faire Übereinstimmung enthält, NP -schwer.p : E 'R + G 'G=(L,R,E=L×R)p:ER+G

Beweisskizze. Der Beweis erfolgt durch Reduktion von Independent Set in kubischen Graphen. Sei eine gegebene Instanz der unabhängigen Menge, wobei ein kubischer Graph ist (jeder Scheitelpunkt hat Grad 3). Wir beschreiben, wie man einen Graphen und eine Gewinnfunktion so konstruiert, dass eine faire zweigliedrige Übereinstimmung hat, wenn und nur wenn eine unabhängige Menge der Größe .G ' G ' = ( L , R , E '(G=(V,E),k)Gp : E 'R + G ' G kG=(L,R,E=L×R)p:ER+GGk

Die Eckpunkte in werden paarweise als Partner bezeichnet . Ebenso für die Eckpunkte in . Für jeden Scheitelpunkt lassen wir den Partner von . Jeder Scheitelpunkt und sein Partner sind äquivalent , was bedeutet, dass wir Folglich muss jeder faire Abgleich und den gleichen Gewinn zuweisen . Im Folgenden verwenden wir , um den Wert von .R v L R v ' v l L l 'LLRvLRvvLL

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

Ferner machen wir für jedes Paar in und jedes Paar von Partnern in entweder oder wir machen Im ersteren Fall sagen wir , wir erlauben und angepasst werden und (da dies zu dem gleichen Gewinn zuweisen würde und , je nach Bedarf). Im letzteren Fall sagen wir, wir verhindern, dass und (beide) mit und übereinstimmen.L r , r ' R π ( , r ) = π ( , r ' ) π ( , r ) π ( , r ' ) . r r Lr,rR

π(,r)=π(,r)
π(,r)π(,r).
rr l l ' r r ' l l ' rr (weil dies und nicht den gleichen Gewinn zuweisen würde ).

Da der gegebene Graph kubisch ist, erfüllt erund jede unabhängige Menge der Größe in fällt auf genau Kanten. Nehmen Sie zur Vereinfachung der Notation an, dass .3 | V | = 2 | E | I k G 3 k V = { 1 , 2 , , n }G=(V,E)3|V|=2|E|IkG3kV={1,2,,n}

Führen Sie für jede Kante die folgenden Schritte aus.{i,j}E

  1. Hinzufügen eines Paares von Scheiteln Partner bis . R.r({i,j}),r({i,j})R

  2. Fügen Sie für den Endpunkt ein Paar Partnerscheitelpunkte zu . Setze Ermöglichen, dass und mit und abgeglichen werden . ( i , j ) , ( i , j )i(i,j),(i,j)π ( ( i , j ) , r ( { i , j } ) )L( i ,

    π((i,j),r({i,j}))=π((i,j),r({i,j}))=i,
    ' ( i , j ) r ( { i , j } ) r ' ( { i , j } )(i,j)(i,j)r({i,j})r({i,j})
  3. Symmetrisch für den anderen Endpunkt : Fügen Sie ein weiteres Paar von Partnerscheitelpunkten zu und setzen Sie was und erlaubt an und angepasst werden .( j , i ) , ' ( j , i ) L π ( ( j , i ) , r ( { i , j } ) = π ( ) ' ( j , i )j(j,i),(j,i)L( j , i

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

Wenn für jedes bisher hinzugefügte und das Paar nicht explizit (oben) mit übereinstimmen darf , verhindern Sie die Übereinstimmung, indem Sie und jeweils eine eindeutige Nummer.r R , LrR, π ( , r ) π ( , r ' )r,rπ(,r)π(,r)

Anschließend fügen Paare von Füllstoff Vertices . Setzen Sie für jeden Füllscheitelpunkt und jede .R r3(|V|k)Rrπ ( ( i , j ) , r ) = 0(i,j)Lπ((i,j),r)=0

Schließlich fügen zwei Ecken und (Partner) zu , zusammen mit zwei Ecken und (auch Partner) zu . Setze , wodurch und mit und . Setzen Sie für jeden anderen Scheitelpunkt auf eine eindeutige Zahl. (Daher muss jede faire Übereinstimmung und mit und .) Für jedesL ' 0 L R 0 R ' 0 R π ( L 0 , R 0 ) = π ( L 0 , R ' 0 ) = 1 L 0 L ' 0 R 0 R ' 0 r R π ( L 0 , r ) 0 i V { i , j }L0L0LR0R0Rπ(L0,R0)=π(L0,R0)=1L0L0R0R0rRπ(L0,r)L ' 0 R 0 R 'L0L0R0R0iVSetzen Sie für jede einfallende Kante und .π ( ( i , j ) , R 0 ) = i π ( ( i , j{i,j}Eπ((i,j),R0)=iπ((i,j),R0)=|V|i+1

Damit ist die Reduzierung abgeschlossen. Zum Schluss beweisen wir, dass es richtig ist.


Betrachten Sie zunächst, für welche Paare von Eckpunkten das letztere das erstere dominiert, ( r R ) π ( l ( i(i,j),(i,j)L

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

In Anbetracht der Gewinne, die Kanten zugeordnet sind, die auf und , kann diese Bedingung nur erfüllt werden, wenn , und wenn man die Definition von auf die verbleibenden Kanten , ist die Bedingung ausreichend. Daher ist eine Anpassung ist fair , wenn und nur wenn ich ordnet und zu und , und auch für jeden , gibt den gleichen Gewinn mit allen Ecken in R0 i = i ' π i = i ' L 0 L ' 0 R 0 R 'R0i=iπi=iL0L0R0 iVN(i)={(iR0iV

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

Nehmen wir zunächst an, dass eine unabhängige Menge der Größe . Erhalten Sie eine faire Übereinstimmung für von wie folgt. I k G ' I.GIkGI

Spiel und zu und .L 'L0 R0R ' 0L0R0R0

Für jeden Scheitelpunkt seien seine drei einfallenden Kanten. Für jede Kante , match Eckpunkt und sein Partner bis und . Dies ergibt alle Eckpunkte in Gewinn .{ i , j 1 } , { i , j 2 } , { i , j 3 } { i , j h }iI{i,j1},{i,j2},{i,j3}{i,jh} ( i , j h )(i,jh)(i,jh)r ' ( { i , j hr({i,jh})N ( i ) ir({i,jh})N(i)i

Für jeden der Eckpunkte stimmen für jede der drei Kanten , die auf , und sein Partner zu einem eindeutigen Paar von Füllscheitelpunkten und seinem Partner . Dies ergibt alle Eckpunkte in Gewinn .i V I { i , j } i ( i , j ) ( i , j )|V|kiVI{i,j}i(i,j)(i,j)r ' N ( i ) 0rrN(i)0

Daher ist dieses Matching fair.


Als nächstes sei angenommen, dass ein faires Matching . M.GM

L 0 L ' 0M muss und mit und . Für jedes muss die Übereinstimmung jedem der Eckpunkte in den gleichen Gewinn geben. Für jede befindet sich ihr Partner ebenfalls in . Durch Inspektion der Reduktion muss der Gewinn jedes solchen Scheitelpunkts entweder (in diesem Fall sind alle sechs Scheitelpunkte in mit den Scheitelpunkten und ihren Partnern) oder Null sein (In diesem Fall werden alle sechs Eckpunkte in mit den Füllpunktpunkten in abgeglichen .) LassenL0L0R ' 0 i V N ( i ) l ( i , j ) N ( i ) l ' ( i , j )R0R0iVN(i)(i,j)N(i)(i,j)N(i)iN(i)r({i,j})N(i)RI die Menge der Eckpunkte, für die der erstere Fall gilt. Für jede Kante werden der Scheitelpunkt und sein Partner jeweils einem Scheitelpunkt zugeordnet. Daraus folgt, dass eine unabhängige Menge . Da die Anzahl der Füllscheitelpunkte beträgt, muss die Größe von mindestens .r ( { i , j } ) I 6 ( | V | - k ) I k{i,j}r({i,j})I6(|V|k)Ik

QED (?)


Ich denke, es ist im Grunde richtig, wenn auch etwas verworren. Lassen Sie mich wissen, wenn Sie Fehler sehen oder einen Weg finden, den Beweis zu vereinfachen.

Die obige Reduzierung setzt voraus, dass es in Ordnung ist,. Wenn das unerwünscht ist, können wir mit , wobei allen Kanten außer den Kanten und Gewinn 0 . Wir können den letzteren Kanten Gewinne zuweisen, um sicherzustellen, dass die Füllscheitelpunkte nicht von einem anderen Scheitelpunkt dominiert werden (oder diesen dominieren).L | R | - | L | R 0 R ' 0|R|>|L|L|R||L|R0R0

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.