6. Algorithmische Spieltheorie Übersicht: 6.1 6.2 6.3 6.4 6.5 Einleitung Klassische Theorie nichtkooperativer Spiele Egoistisches Routing Mechanismen-Entwurf Auktionen 561 6.1 Einleitung Übliche Modelle: Implementierung und Ausführung von Algorithmen unter unserer Kontrolle. Versagen allein aufgrund technischer Probleme, z. B. Hardwarefehler. Internet und WWW: • Keine zentrale Verwaltung, keine globale Planung oder Optimierung des Netzes. • Viele unterschiedliche Akteure (Einzelpersonen, Firmen, Staaten), die eigennützige Interessen verfolgen. Soziale Phänomene erzeugen neue Schwierigkeiten, aber auch interessante neue Anwendungen. Hier: Ansätze eines theoretischen Rahmens dafür. 562 Einige konkrete Beispiele: Routing zwischen autonomen Systemen: Autonomes System (AS): Organisation (ISP), die Verbindungsnetz unterhält und für durchgeleiteten Verkehr Geld kassiert. Spezielle Routingprotokolle (BGP) für Verbindung von ASen. Routing muss ökonomische und politische Interessen berücksichtigen. Typischerweise nicht kürzester Weg. Wie kann man gerechte Kosten“ ermitteln? ” 563 Trittbrettfahrer in P2P-Systemen: Studie: 70 % der Gnutella-Nutzer liefern keine Dateien, 1 % liefern 37 % aller Dateien (Adar, Huberman 2000). Wie kann man große Zahl anonymer Benutzer zu Kooperation motivieren? Kombinatorische Auktionen: Bieter geben Gebote für Teilmengen von Objekten ab. Verschiedene praktische Anwendungen, z. B. Vergabe von LKW-Transportaufträgen, Busrouten, Sendefrequenzen. Vergabe so, dass Bieter ihren wahren“ Wert bieten? ” So, dass Profit des Verkäufers maximiert wird? Algorithmus für Zuordnung Objekte → Bieter? 564 Algorithmische Spieltheorie: Klassische ökonomische Theorien kombiniert mit algorithmischen Techniken und Anwendungen aus der Informatik. Klassische Spieltheorie: von Neumann, Morgenstern (1944). Einschätzung des Forschungsgebietes: Modelle, um ausgewählte Aspekte sozialen Verhaltens im Internet besser zu verstehen (zunehmend wichtiger). Direkte praktische Umsetzung bis jetzt nur in einigen wenigen Teilbereichen, z. B. Auktionen. 565 6.2 Klassische Theorie nichtkooperativer Spiele Mehrere Akteure, Agenten, Spieler, die eigene Interessen verfolgen (oft kollidierende) und miteinander in Interaktion treten. Interaktion beschrieben als Spiel. Modell für Aspekte von sozialem / ökonomischem Verhalten von Menschen (extreme Vereinfachung – Vorsicht!). Szenario der Spieltheorie: • Spieler können mögliche Spielausgänge gemäß Präferenzen anordnen (Quittengelee ≺ Honig ≺ Nutella). • Noch konkreter: Präferenzen als numerische Nutzenwerte. • Spieler streben nach Maximierung ihres persönlichen Nutzens. • Spieler verhalten sich rational und es ist allen bekannt an, dass alle das tun – und allen ist diese Tatsache bekannt. . . 566 6.2.1 Zwei-Personen-Nullsummenspiele Beispiel: Papier-Stein-Schere“. ” • Zwei Spieler, jeweils mit Wahlmöglichkeiten, Strategien, Papier“, “Stein“ oder Schere“. ” ” • Spieler wählen unabhängig voneinander (“geheim“) jeweils eine Möglichkeit aus. • Dann Aufdecken beider Strategien. Auszahlungsmatrix sagt, was Spieler 1 von Spieler 2 erhält. Spieler 2: Papier: Stein: Schere: Spieler 1: Papier: Stein: Schere: 0 −1 1 1 0 −1 −1 1 0 567 Allgemeine Definition: Definition 6.1: Zwei-Personen-Nullsummenspiel • Endliche Strategienmengen S1 , S2 . O. B. d. A. S1 = {1, . . . , m}, S2 = {1, . . . , n}. Spieler wählen Strategienpaar (s1 , s2 ) ∈ S1 × S2 . Dabei keine Interaktion zwischen den Spielern. • Reellwertige Auszahlungsmatrix A = (ai,j )i,j : Für Strategiepaar (i, j) erhält Spieler 1 Auszahlung ai,j , Spieler 2 erhält Auszahlung −ai,j . 568 Welche Strategie sollte man spielen? Definition 6.2: Nash-Gleichgewicht, Sattelpunkt Ein Strategienpaar (i, j) heißt Nash-Gleichgewicht, wenn keiner der beiden Spieler durch Spielen einer anderen Strategie eine höhere Auszahlung bekommt als bei (i, j). Nenne (i, j) Sattelpunkt von A = (ak,ℓ ), wenn ai,j Minimum seiner Zeile und Maximum seiner Spalte in A ist. Beobachtung: Genau die Sattelpunkte der Auszahlungsmatrix sind Nash-Gleichgewichte. Nash: Rationalität der Spieler und Wissen um Rationalität der anderen usw. führt zur Wahl von Nash-Gleichgewicht. 569 Beispiel: 5 1 3 Auszahlungsmatrix A = 3 2 4 −3 0 1 Nur (2, 2) ist Sattelpunkt von A und damit Nash-Gleichgewicht. Erwarte, dass Spieler beide Strategie 2 wählen. • Z. B. Spieler 1 spielt Strategie 1 → Spieler 2 kann Gegenstrategie 2 spielen und er bekommt weniger als im Nash-Gleichgewicht. • Der jeweils andere Spieler kann nur verlieren, wenn er dumm genug“ ist, von Strategie 2 abzuweichen. ” 570 Eindeutigkeit des Nash-Gleichgewichts? Nein, aber zumindest haben alle gleichen Wert: Proposition 6.3: Falls (i, j) und (i ′ , j ′ ) Sattelpunkte von A sind, dann auch (i, j ′ ) und (i ′ , j) und es gilt ai,j = ai ′ ,j = ai,j ′ = ai ′ ,j ′ . Beweis: Gemäß Definition von Sattelpunkten gilt ai,j ≤ ai,j ′ ≤ ai ′ ,j ′ ai ′ ,j ′ ≤ ai ′ ,j ≤ ai,j . und Also folgt ai,j = ai ′ ,j = ai,j ′ = ai ′ ,j ′ . Da ai,j Minimum von Zeile i, auch ai,j ′ Minimum; da ai ′ ,j ′ Maximum von Spalte j ′ , auch ai,j ′ Maximum. Analog für ai ′ ,j . Gibt es immer ein Nash-Gleichgewicht? 571 Beobachtung: Z. B. für Papier-Stein-Schere nicht. Auszahlungsmatrix 0 1 −1 0 1 A = −1 1 −1 0 hat keinen Sattelpunkt. Falls Gegner unsere Strategie errät, kann er immer eine passende Gegenstrategie wählen, die ihm den Sieg sichert und umgekehrt. Abhilfe: Randomisierte Auswahl. 572 Definition 6.4: Gemischte Strategien Seien S1 , S2 vorgegebene Strategienmengen mit |S1 | = m, |S2 | = n. Nenne Strategien aus diesen Mengen im Folgenden reine Strategien. Eine gemischte Strategie eines Spielers ist eine Wahrscheinlichkeitsverteilung über seinen reinen Strategien. x = (x1 , . . . , xm ) ∈ [0,1]m und y = (y1 , . . . , yn ) ∈ [0,1]n gemischte Strategien, dann ist die erwartete Auszahlung für Spieler 1 definiert als X X e(x, y ) := ai,j xi yj = x ⊤Ay . 1≤i≤m 1≤j≤n Menge der gemischten Strategien enthält genau die Konvexkombinationen der reinen Strategien (konvexe Hülle). 573 Erweitere Definition von Nash-Gleichgewichten auf beliebige, auch gemischte Strategien. Im Papier-Stein-Schere-Beispiel dann Strategienpaar (x, y ) mit 1 1 1 x =y = , , 3 3 3 ein Nash-Gleichgewicht (in gemischten Strategien). Denn: 0 1 −1 1/3 0 −1 0 1 · 1/3 = 0 , 1 −1 0 1/3 0 Egal welche Strategie der andere Spieler wählt – es kommt immer 0 als erwartete Auszahlung heraus. 574 In diesem neuen Szenario nun Nash-Gleichgewichte für beliebige Probleme? Optimale Strategie für Spieler 1: Sei x gemischte Strategie von Spieler 1. Gegenstrategie von Spieler 2: Wähle y so, dass erwartete Auszahlung x ⊤Ay für Spieler 1 minimal ist. Spieler 1 sollte also x ∈ S1 so wählen, dass v1 (x) := min x ⊤Ay y∈S2 maximal wird. 575 Für festes x ist y 7 → min x ⊤Ay y∈S2 lineare Funktion auf konvexer Menge. Minimum wird in einem der Eckpunkte e1 , . . . , en angeommen: v1 (x) = min x ⊤Ae j . 1≤j≤n Direkter Beweis: Sei x ⊤ A = [a1 , . . . , an ]. Dann ist x ⊤ Ay = a1 y1 + · · · + an yn . Dies minimieren für y1 , . . . , yn ∈ [0, 1] mit y1 + · · · + yn = 1. Sei ai0 = mini ai , dann wähle yi0 := 1 und yi = 0 für i 6 = i0 . 576 Hatten: Spieler 1 will x ∈ S1 mit maximalem v1 (x) = min x ⊤Ae j . 1≤j≤n Können dies durch ein lineares Programm beschreiben: • Variablen x = (x1 , . . . , xm ) ∈ Rm und λ ∈ R. • Maximiere λ unter den Nebenbedinungen: x ⊤Ae j ≥ λ, 1 ≤ j ≤ m. x1 , . . . , xm ≥ 0 und x1 + · · · + xm = 1. Lösbar mit Polynomialzeitalgorithmus. In der Praxis oft mit Simplex-Algorithmus (im Worstcase exponentielle Zeit). 577 Haben also optimale Strategie x ∗ für Spieler 1 mit erwarteter Auszahlung v1 := v1 (x ∗ ). Analog für Spieler 2: Will y ∈ S2 mit minimalem v2 (y ) = max ei⊤Ay . 1≤i≤m Entsprechendes lineares Programm dual zu dem von Spieler 1, liefert optimale Strategie y ∗ für Spieler 2 mit erwarteten Kosten v2 := v2 (y ∗ ). Strategienpaar (x ∗ , y ∗ ) ist offensichtlich Nash-Gleichgewicht. Dualitätstheorem der linearen Programmierung: v1 = v2 (hier leider ohne Details). 578 Satz 6.5: Minimax-Theorem (von Neumann) • Für jedes Zwei-Personen-Nullsummenspiel existiert ein Strategienpaar (x ∗ , y ∗ ), das ein Nash-Gleichgewicht in gemischten Strategien ist. • Die Strategien x ∗ und y ∗ können mit Hilfe der linearen Programmierung effizient berechnet werden. • Für jedes solche Strategienpaar beträgt die erwartete Auszahlung für Spieler 1 (erwartete Kosten für Spieler 2) max min x ⊤Ay = min max x ⊤Ay . x∈S1 y∈S2 y∈S2 x∈S1 579 6.2.2 Allgemeine nichtkooperative Spiele Definition 6.6: Nichtkooperatives Spiel • Spieler 1, . . . , n. • Strategienmengen S1 , . . . , Sn : Spieler i wählt Strategie si ∈ Si , i = 1, . . . , n → Strategietupel s = (s1 , . . . , sn ) ∈ S1 × · · · × Sn . • Auszahlungsfunktionen u1 , . . . , un : S1 × · · · × Sn → R: – Strategientupel s legt Ausgang des Spiels fest. – Spieler i misst dem zugehörigen Ausgang Nutzen ui (s) zu bzw. erhält dies als Auszahlung. Auszahlungsmatrix: (u1 (s), . . . , un (s))s . Üblicherweise als Spiel in Normalform bezeichnet. 580 Nützliche Notation: Für Vektor v = (v1 , . . . , vℓ ) und i ∈ {1, . . . , ℓ}: v−i := (v1 , . . . , vi−1 , vi+1 , . . . , vn ); (v−i , w ) := (v1 , . . . , vi−1 , w , vi+1, . . . , vn ) (hemdsärmlig). Definition 6.7: Nash-Gleichgewicht Strategientupel s = (s1 , . . . , sn ) heißt Nash-Gleichgewicht, falls für alle i = 1, . . . , n und si′ ∈ Si gilt ui (s−i , si′) ≤ ui (s). Stimmt natürlich mit dem Spezialfall für Zwei-Personen-Nullsummenspiele überein. 581 Gemischte Strategien auch analog zu Zwei-Personen-Nullsummenspielen. Erwartete Auszahlung für Spieler i bei Tupel p = (p1 , . . . , pn ) von gemischten Strategien: X ei (p) := ui (s1 , . . . , sn ) · p1 (s1 ) · · · pn (sn ). s1 ,...,sn 582 Dynamische Spiele Beschreibe Abfolge der Züge im Spiel. Beschreibung als Spielbaum: • Knoten markiert mit handelndem Spieler, ausgehende Kanten mit Strategien für diesen Knoten. • Spielverlauf ist Weg Wurzel → Blatt. • Auszahlungen an den Blättern. Bezeichnung: Extensive (dynamische) Form des Spiels. Überführung in Normalform möglich: Strategie eines Spielers in Normalform spezifiziert für jeden Knoten im Baum, an dem er agiert, die gewählte Strategie. 583 Beispiel: Trittbrettfahrer in P2P-Netzen. Betrachte folgendes sehr einfache Modell der Situation: Zwei Spieler, jeweils zwei Strategien: • Kooperieren: Stelle eigene Dateien zur Verfügung (in allgemein als fair“ angesehenem Umfang). ” • Schmarotzen: Nur Abgreifen von Dateien. Auszahlungsmatrix: Spieler 2: K: S: Spieler 1: K: 8, 8 S: 10, −2 −2, 10 0, 0 584 Auszahlungsmatrix: K: K: S: S: 8, 8 −2, 10 10, −2 0, 0 Nash-Gleichgewichte? • Einziges Nash-Gleichgewicht in reinen Strategien: (S, S). (Tatsächlich auch einziges überhaupt.) • Strategienpaar (K , K ) sozial wünschenswert“ ” (maximiert Gesamtnutzen aller), aber kein Gleichgewicht. Abhilfe: Verträge, Seitenzahlungen. 585