6.4.4 Vickrey-Clarke-Groves-Mechanismen Klasse von Aufdeckungsmechanismen für quasilineare Nutzenfunktionen. Definition 6.26: Nutzenfunktion von Spieler i sei ui ((a, p), xi ) = vi (a, xi ) + pi . Sei x ′ = (x1′ , . . . , xn′ ) Vektor der Deklarationen der Spieler. Vickrey-Clarke-Groves-Mechanismus (VCG) definiert durch: • Auswahlfunktion: n X ∗ ′ a (x ) ∈ arg max vi (a, xi′ ). a∈A i=1 • Auszahlungsfunktion: Für beliebige feste Funktionen h1 , . . . , hn : Rn−1 → R: X ′ pi (x ′ ) := vj (a∗ , xj′ ) + hi (x−i ), i = 1, . . . , n. j6=i 660 Satz 6.27 (Groves 1973): VCG-Mechanismen sind wahrheitsaufdeckend und allokationseffizient. Beweis: Allokationseffizienz klar, wenn wahrheitsaufdeckend, da Auswahlfunktion gerade passende Zielfunktion maximiert. Zeige also, dass Mechanismus wahrheitsaufdeckend. Sei x = (x1 , . . . , xn ) Vektor der (wahren) privaten Eingaben. Zu zeigen: Für Spieler i ∈ {1, . . . , n} ist Deklaration von xi′ = xi dominante Strategie. 661 Nutzen von Spieler i für Ausgabe (a∗ (x ′ ), p(x ′ )): ui ((a∗ (x ′ ), p(x ′ )), xi ) = vi (a∗ (x ′ ), xi ) + pi (x ′ ) X ′ = vi (a∗ (x ′ ), xi ) + vj (a∗ (x ′ ), xj′ ) + hi (x−i ). j6=i xi′ , ′ ) ignorieren, Will sodass dies maximal. Dafür hi (x−i da unabhängig von xi′ . X Zeige: vi (a∗ (x ′ ), xi ) + vj (a∗ (x ′ ), xj′ ) maximal für xi′ = xi . j6=i Ausdruck hängt nur über a∗ (x ′ ) von xi′ ab. Für xi′ = xi wird aber gerade a∗ so gewählt, dass obiger Ausdruck maximal wird, denn gemäß Definition: X ′ a∗ (xi , x−i vj (a, xj′ ) . ) ∈ arg max vi (a, xi ) + a∈A j6=i 662 Clarke-Mechanismen: Definition 6.28: Clarke-Mechanismus ist VCG-Mechanismus mit X ′ ′ hi (x−i ) := − vj (a∗−i (x−i ), xj′ ), j6=i wobei ′ a∗−i (x−i ) ∈ arg max a∈A X ′ vj (a, x−i ), j6=i d. h. eine optimale Alternative für Problem ohne Spieler i. Lösung für öffentliches Projekt, Vickrey-Auktion und Routing. Nur Routing genauer, Rest selbst überlegen. 663 Routing-Mechanismus als Clarke-Mechanismus: • Alternativen a ∈ A hier s-t-Wege. • Falls s-t-Weg a gewählt: Wert für Spieler e ∈ E: (−ce ) · [e ∈ a] (negativ, da Kosten). • Sei a∗ kürzester s-t-Weg für alle Kanten. Summe der deklarierten Werte für Spieler e′ 6 = e: X (−ce′ ′ )[e′ ∈ a∗ ] = −dG|ce =0 . • e ′ 6=e Sei a∗−e kürzester s-t-Weg ohne e. X ′ he (c−e ) = − (−ce′ ′ )[e′ ∈ a∗−e ] e ′ 6=e = dG|ce =∞ . Auszahlung des früheren Mechanismus ist gerade X ′ pe = dG|ce =∞ − dG|ce =0 = (−ce′ ′ )[e′ ∈ a∗ ] + he (c−e ). e ′ 6=e 664 6.4.5 Zusatzeigenschaften von Mechanismen Eindeutigkeit von Gleichgewichten: Im Allgemeinen möglich: Schwach dominante Strategientupel x ′ , x ′′ , Zielfunktion von x ′ implementiert, von x ′′ nicht. Beispiel: • Zwei Spieler, A = X1 = X2 = {0, 1}, vi (a, xi ) = 1 + (a − 1)xi , i = 1, 2. f (x, a) := a(2 − x1 − x2 ). • Mechanismus: a∗ (x) = 1, p1 (x) = p2 (x) = 0. • Für x = (0, 0): ui (a∗ (x ′ ), x ′ ) = vi (1, x ′ ) = 1, i = 1, 2. i i Damit xi′ = 0 und xi′ = 1 schwach dominante Strategien, xi′ = 1 (Lüge) führt zu suboptimalem f -Wert. 665 Eindeutigkeit von Gleichgewichten (Forts.): • Falls es für alle Spieler strikt dominante Strategie gibt, d. h. Nutzen für dominante Strategie immer echt größer als für alle anderen, dann resultierendes Strategientupel eindeutiges Gleichgewicht. • Mehrfache Gleichgewichte genau dann, wenn mindestens ein Spieler denselben Nutzen für verschiedene schwach dominante Strategien hat. Nimm an, dass Spieler diese Indifferenz zu unseren Gunsten auflöst. Für viele wichtige Mechanismen Eindeutigkeit gegeben. 666 Budgetbalancierung: Erinnerung: Für beliebige x: n P pi (x) = 0. i=1 Nenne Wertefunktionen der Spieler allgemein, falls jeweils durch Wahl der privaten Eingabe alle möglichen Funktionen A → R realisierbar. Satz 6.29 (Hurwicz 1975, Green und Laffont 1977): Es gibt keinen Mechanismus für Spieler mit allgemeinen Wertefunktionen, der eine Zielfunktion in dominanten Strategien implementiert, die sowohl allokationseffizient als auch budgetbalanciert ist. Damit VCG-Mechanismen im Allgemeinen nicht budgetbalanciert! 667 Schwache Budgetbalancierung? Erinnerung: Für beliebige x: n P pi (x) ≤ 0. i=1 Definition 6.30: Wertefunktionen vi , i = 1, . . . , n, der Spieler heißen frei von Einzelspieler-Effekten, wenn für alle Spieler P i gilt: Für jedes x und jede Lösung a∗ (x) ∈ arg maxa∈A j vj (a, xj ) für das Szenario mit allen Spielern gibt es eine Lösung a∗−i (x−i ) für das Szenario ohne Spieler i, sodass X X vj (a∗ (x), xj ). vj (a∗−i , xj ) ≥ j6=i j6=i Intuitiv: Entfernen von Spieler i → restliche Spieler können immer noch mindestens so hohen Gesamtwert erzielen wie in ursprünglichem Szenario. 668 Proposition 6.31: Falls die Wertefunktionen der Spieler frei von EinzelspielerEffekten sind, sind Clarke-Mechanismen schwach budgetbalanciert. Beweis: Definition von pi und hi : X X pi = vj (a∗ (x), xj ) − vj (a∗−i (x−i ), xj ). j6=i j6=i Keine Einzelspieler-Effekte: Dies ist für alle i nichtpositiv. Also insbesondere Summe nichtpositiv. Für umgekehrte Ungleichung in Definition 6.30 passend für nichtnegative (Belohnungs-)Zahlungen an Spieler, dann n P pi (x) ≥ 0. i=1 669 Beispiele: • Öffentliches Projekt: – Menge der zur Verfügung stehenden Alternativen hängt nicht von Vorhandensein von Spieler i ab. – Selbe Alternative wie mit Spieler i liefert für restliche Spieler denselben Gesamtwert. • Auktionen: Voraussetzung: Nur Käufer und Entsorgen von Objekten sei umsonst. Restliche Spieler werfen Objekte, die Spieler i erhalten hat in optimaler Gesamtlösung in den Mülleimer und erhalten eine mindestens so gute Lösung für das reduzierte Problem. 670 Aber: Trotz schwacher Budgetbalancierung möglich: • Bei Nettozahlung durch Spieler Gesamtzahlung 0. Z. B. bei kombinatorischen Auktionen problematisch. • Bei Belohnungen Gesamtzahlung deutlich größer 0. Problem der Überzahlung. Beispiel Routing: Schwache Budgetbalancierung heißt hier P Tatsächlich im Allgemeinen i pi ≫ 0. s i pi ≥ 0. Zahle Kante ei auf unterem Weg e / 2ℓ t dG|ce =∞ − dG|ce =0 = ℓ + 1, i e1 / 1 e2 / 1 P eℓ / 1 i insgesamt für kürzesten Weg ℓ · (ℓ + 1) = 2(ℓ2 ). 671 6.4.6 Anwendung: Multicast-Routing Arbeit: Feigenbaum, Papadimitriou, Shenker (2000). Szenario: Übertragung großer Datenmenge aus einer Quelle an viele verschiedene Empfänger im Internet, z. B. für Live-Videos. • Mit üblichem Routing: Muss für jeden Empfänger einzeln Daten von der Quelle aus schicken. • Multicast-Routing: Sende Daten nur einmal, Duplizierung durch Router an Verzweigungen. Kostenverteilung? Hier: Staatliche Lösung“. ” Infrastruktur gehört Staat, kann Defizite auffangen. 672 Netzstruktur: T: Datenquelle • Universeller Baum T : Baum mit Verbindungen von der Datenquelle aus zu allen potenziellen Empfängern. • Potenzielle Empfänger sitzen an Knoten des universellen Baumes. 673 Netzstruktur: T: Datenquelle • Universeller Baum T : Baum mit Verbindungen von der Datenquelle aus zu allen potenziellen Empfängern. • Potenzielle Empfänger sitzen an Knoten des universellen Baumes. 673 Netzstruktur: T: Datenquelle • Übertragung an alle Empfänger in Menge R: Routing-Hardware konstruiert minimalen Teilbaum T (R) von T , der Empfänger in R erreicht. 673 Netzstruktur: T: Datenquelle • Übertragung an alle Empfänger in Menge R: Routing-Hardware konstruiert minimalen Teilbaum T (R) von T , der Empfänger in R erreicht. 673 Netzstruktur: Datenquelle T: 2 1 1 3 1 1 1 1 Routing-Hardware konstruiert minimalen Teilbaum T (R) von T , der Empfänger in R erreicht. • Kantenmarkierung: Kosten für Verbindungsleitungen (Links). 3 5 5 2 • Übertragung an alle Empfänger in Menge R: 1 673 Netzstruktur: Datenquelle T: 2 1 1 3 1 1 1 1 Routing-Hardware konstruiert minimalen Teilbaum T (R) von T , der Empfänger in R erreicht. • Kantenmarkierung: Kosten für Verbindungsleitungen (Links). 3 5 5 2 • Übertragung an alle Empfänger in Menge R: 1 • Kosten für Baum T (R): c(R). Im Beispiel: c(R) = 4. 673 Mechanismus-Anforderungen: Ausgaben des Mechanismus: Für Benutzer i = 1, . . . , n: • Entscheidung, ob Benutzer an Übertragung angeschlossen wird: Ri = 1, falls ja; Ri = 0 sonst (im Folgenden R als Vektor aus {0, 1}n oder Menge); • Festlegung des Preises pi , den Benutzer i zahlen muss. Nutzen von Spieler i für Ausgabe (R, p): ui ((R, p), xi ) = xi Ri − pi . wobei xi Bewertung von Benutzer i für Übertragung. 674 Mechanismus-Anforderungen (Forts.): Globale Zielfunktion: Maximiere X f (x, R) := xi − c(R), i∈R Gesamtwert für Empfänger minus Kosten für Netzaufbau. (Diskussion später.) Will Mechanismus, der Zielfunktion wahrheitsaufdeckend implementiert, zusätzlich: • Keine Zahlungen an Benutzer (NPT): Für alle i: pi (x) ≥ 0. • Individuelle Rationalität (IR): Für alle i: ui ((R ∗ (x), p), xi ) ≥ 0. • Der Kunde ist König (CS, customer sovereignty): Jeder Benutzer wird bei hinreichend hohem Gebot angeschlossen. 675 Der Grenzkosten-Mechanismus: Deklarationsvektor sei x = (x1 , . . . , xn ). • Welche Benutzer anschließen? Wähle größte Menge R ∗ , die f (x, R ∗ ) maximiert. Anschluss genau der Benutzer in R ∗ . • Preise? Benutzer i ∈ R ∗ zahlt Deklaration xi abzüglich Bonus, misst seinen Beitrag zum Gesamtwert der Übertragung: ∗ ). Bonusi (x) := f (x, R ∗ ) − f (x, R−i ∗ ∪ {i}: Falls R ∗ = R−i ∗ ) (d. h. Grenzkosten für Anschluss). Kosten c(R ∗ ) − c(R−i 676 Satz 6.32: Der Grenzkosten-Mechanismus ist wahrheitsaufdeckend, allokationseffizient und erfüllt (NPT), (IR) und (CS). Beweisideen: Wahrheitsaufdeckung: Darstellen als Clarke-Mechanismus, dazu Kosten c(R) auf zusätzlichen Spieler 0 verbuchen. Zusatzeigenschaften mit Eigenschaft der Kostenfunktion: c(R1 ) + c(R2 ) ≥ c(R1 ∪ R2 ) (Übungsaufgabe). fqed Moulin, Shenker (2001): Grenzkosten-Mechanismus ist der einzige Mechanismus mit obigen Eigenschaften. 677 Verteilte Realisierung: Phase 1: Bottom-Up-Durchlauf durch universellen Baum: • Für jeden Knoten u berechne Wu (x) := xu − cu + X Wv (x), Kinder v von u mit Wv (x) ≥ 0 wobei xu Gesamtwert aller Empfänger an u, cu Kosten für Link von u zu Elter von u (bzw. cu = 0, falls u Wurzel). • Setze vorläufig R ∗ := 1 für alle Benutzer i an Knoten u, i falls Wu (x) ≥ 0. 678 Beobachtungen: • Falls Wu (x) ≥ 0: Wu (x) ist f -Wert des Teilbaumes unterhalb (und inklusive) u. Der Spannbaum für die Menge der anzuschließenden Benutzer enthält genau die Knoten u mit Wu (x) ≥ 0. • Für die Menge R ∗ in der Ausgabe des GrenzkostenMechanismus und einen Benutzer i an Knoten u gilt Ri∗ (x) = 1 genau dann, wenn Wu (x) ≥ 0 für alle Knoten v auf dem Weg von u zur Wurzel (inklusive v ). Beweisidee: Induktion und Definition von R ∗ (größte Menge, die f -Wert im jeweiligen Teilbaum maximiert). 679 Phase 2: Top-Down-Durchlauf durch universellen Baum: • Für jeden Knoten u berechne das Minimum Wumin (x) aller Wv (x) über alle Knoten v auf dem Weg von der Wurzel zu v (inklusive v ). • Für jeden Knoten u und für alle Benutzer i an u: Falls Wumin (x) < 0 setze Ri∗ := 0 und pi := 0. Sonst: – Falls xi ≤ Wumin (x), setze pi := 0. – Sonst (xi > Wumin (x)) setze pi := xi − Wumin (x). Korrektheit mit Beobachtungen, falls Wumin (x) < 0: Knoten u wird nicht angeschlossen, da nicht angeschlossener Knoten v auf dem Weg von u zur Wurzel existiert. 680 Korrektheit der Kostenberechnung: 1. Fall, xi ≤ Wumin (x): Entfernen von Benutzer i: W -Werte der Knoten von u auf dem Weg zur Wurzel fallen alle um genau xi , keiner wird ∗ = R ∗ , f (x, R ∗ ) − f (x, R ∗ ) = x und negativ. Damit R−i i −i ∗ )) = 0. Preis für Benutzer i ist pi = xi − (f (x, R ∗ ) − f (x, R−i 2. Fall, xi > Wumin (x): Entfernen von Benutzer i macht W -Wert eines Knotens auf dem Weg zur Wurzel negativ, wird aus Übertragungsbaum entfernt. Kettenreaktion von absinkenden W -Werten und Entfernungen stoppt an Knoten mit Wert Wumin (x), dieser wird erreicht, weil vorher Kettenreaktion nicht stoppt. Also Verlust von Wumin (x) beim f -Wert, damit Preis für Benutzer i: pi = xi − Wumin (x). 681 Netzkomplexität: Zwei Botschaften pro Link (jeweils nur W -Werte), insgesamt O(n) bei n Knoten im universellen Baum, lokale Berechnungen sehr einfach. Fazit: • Verteilte Realisierung von Mechanismus an nichttrivialem Beispiel, Kommunikationsaufwand asymptotisch optimal. • Kritik: – Falsche Zielfunktion für die meisten realen Anwendungen! (Will Ertragsmaximierung statt Wohlfahrtsmaximierung.) – Nicht sicher gegenüber Koalitionen von Spielern. Shapleywert-Mechanismus: Budgetbalanciert, aber allokationseffizient und keine effiziente verteilte Implementierung. 682 Weitere Anwendung: BGP-Routing Arbeit: Feigenbaum u. a. (2002). Realistischere Version des einführenden Routing-Beispiels. Szenario: • Netz mit autonomen Systemen (AS) als Knoten. • Kosten bei Durchleitung von Paketen durch Knoten. • Für jedes Quellen-Senken-Paar Anzahl von Datenpaketen, die geroutet werden sollen. Zahlungen an ASe, sodass diese ihre wahren Kosten bekannt geben. Ziel: Minimierung der Gesamtkosten. Realisierung mit Clarke-Mechanismus (Grenzkosten analog zu einfachem Routing-Beispiel). Kommunikationsaufwand asymptotisch wie bei BGP-Protokoll. 683 6.5 Auktionen Vier grundlegende klassische Auktionsformen: • Offene Gebote (open-cry): – Aufsteigender Preis (ascending price), englische Auktion (Sotheby’s usw.) – Absteigender Preis (descending price), holländische Auktion (Blumenmärkte in Holland). • Geschlossene Gebote (sealed-bid): – Zweitpreis (second price), Vickrey-Auktion. – Erstpreis (first price). Bei festen Bieterwerten und kontinuierlich steigendem/fallendem Preis jeweilige offene Auktion wie korrespondiere geschlossene. 684 Auktionstheorie: Optimale Auktionen unter Annahmen über Verteilung der Werte der Bieter (Bayes-Nash-Gleichgewichte). Ziel ist Maximierung des erwarteten Ertrags für Auktionator. Grob: Auktionen mit denselben Zuteilungsregeln liefern denselben erwarteten Ertrag. Satz 6.33 (Revenue-Equivalence-Theorem, Myerson 1981): Auktionen mit einem zu versteigernden Gut (evtl. mehrere Kopien), Bieter mit identischen Wertverteilungen, quasilinearen Nutzenfunktionen und gleichen Strategien bei gleichen Werten. Dann liefern alle Auktionen, für die Spieler mit niedrigstem Gebot dieselbe Auszahlung bekommen und Zuschlag an Höchstbietenden geht, jeweils dieselbe erwartete Auszahlung für alle Spieler und damit auch für den Verkäufer. 685 Weitere Erkenntnisse: • Erweiterung für mehrere Güter und die Klasse der allokationseffizienten Auktionen. • Vickrey-Auktion unter allokationseffizienten und individuell rationalen Auktionen einzige, die den erwarteten Ertrag des Verkäufers maximiert. (Krishna, Perry 1997). Für praktische Anwendungen kompliziertere Modelle, die zusätzliche Nebenbedinungen berücksichtigen. Z. B. unterschiedliche Bieter, Abhängigkeiten / Absprachen zwischen Bietern, Budgeteinschränkungen der Bieter, Reservierungspreise des Verkäufers usw. 686 Vickrey-Auktion in der Praxis: Trotz netter theoretischer Eigenschaften spielt die geschlossene Version praktisch kaum eine Rolle. Einige Probleme: • Nicht sicher gegenüber Absprachen zwischen Bietern: Z. B. zwei Bieter mit privaten Werten 100 und 99 e, koalieren und bieten 100 und 1 e. • Betrügerischer Auktionator kann dem Gewinner gefälschtes (höheres) zweithöchstes Gebot angeben. • Wahrheitsaufdeckung kann unerwünschte Folgen haben (Firmengeheimnisse, Schwächung der Position des Käufers in späteren Verhandlungen). Arbeiten: Sandholm (1996), Ausubel, Milgrom (2006). 687 Kombinatorische Auktionen (CAs): Szenario: • Endliche Menge G von zu versteigernden Objekten. • n Bieter, Bieter i hat für jede Menge S ⊆ G Einschätzung vi (S) des Wertes von S. • Menge der möglichen Alternativen: Zuordnungen von Objektteilmengen an Bieter, A := {(S1 , . . . , Sn ) | Si ⊆ G, Si ⊆ Sj ∩ ∅ für i 6 = j}. • Strategie von Spieler i: Für jedes S ⊆ G Gebot v ′ (S). i Ausgabe des Auktion-Mechanismus: • Zuordnung a∗ (v ′ ) ∈ A der Objekte; • Für jeden Spieler i zu zahlender Preis pi (v ′ ). 688 Anwendungen: Versteigerung von LKW-Transportaufträgen, Busrouten, Sendefrequenzen (FCC, UMTS). Prinzipielle Lösungsmöglichkeit: Verallgemeinerte Vickrey-Auktion (GVA): n P • Bestimme a∗ = (S1 , . . . , Sn ), sodass vi′ (Si ) maximal. i=1 • Preis für Spieler i: pi (v ′ ) := v (a∗−i ) − X vj′ (Sj ), j6=i v (a∗−i ) wobei der maximale Gesamtwert (bezüglich gemeldeter Gebote) im Szenario ohne Spieler i sei. 689 Komplexität: • Gebotsabgabe: Erfordert spezielle Gebotssprachen (Nisan 2000). • Bestimmung der Zuordnung a∗ : M AXIMUM W EIGHTED S ET PACKING, äquivalent bez. PTAS-Reduktionen zu M AXIMUM C LIQUE und damit insbesondere NP-schwer. • Bestimmung der Preise: Zusätzlich für jeden Bieter reduziertes Problem lösen. Abhilfe: Approximationsalgorithmen, iterative Auktionen. (Z. B. Nisan, Ronen (2000), Parkes (2001).) Problem: Aufrechterhaltung der Wahrheitsaufdeckung, gleichzeitig Ertragsmaximierung. 690