Routing egoistico Riepilogo Il dilemma del prigioniero è un gioco che ammette un equilibrio in strategie dominanti (che è anche un equilibrio di Nash), corrispondente al caso in cui i due prigioneri si accusano vicendevolmente La battaglia dei sessi è un gioco che ha due equilibri di Nash, che corrispondono agli stati in cui entrambi i giocatori scelgono la stessa azione. Vediamo ora un caso di gioco puramente conflittuale (che non ammette equilibri di Nash, e quindi nemmeno equilibri in strategie dominanti). 2 Esempio: “Testa o Croce” Due persone, ognuna delle quali ha una moneta, devono simultaneamente mostrare un lato (Testa o Croce) delle loro monete. Se entrambi mostrano lo stesso lato, la seconda persona paga un euro alla prima persona; se mostrano lati differenti, la prima persona paga un euro alla seconda persona. Ogni persona è attenta solo alla quantità di soldi che riceve e, ovviamente, preferisce ricevere piuttosto che dare. 3 Equilibri di Nash – “Testa o croce” Testa Testa Croce Croce 1,-1 -1,1 -1,1 1,-1 In questo gioco, gli interessi dei giocatori sono diametralmente opposti (un gioco del genere è detto strettamente competitivo): il giocatore 1 preferirebbe fare la stessa azione del giocatore 2, mentre quest’ultimo preferirebbe fare un’azione diversa da quella del giocatore 1. 4 Equilibri di Nash – “Testa o croce” Controllando le quattro possibili coppie di azioni possiamo immediatamente vedere che questo gioco non ha un NE: • (Testa,Testa) non può essere un equilibrio di Nash perché all’agente 2 conviene passare da Testa a Croce portando, così, il suo guadagno da -1 a +1. • (Croce,Croce) non può essere un equilibrio di Nash perché all’agente 2 conviene passare da Croce a Testa portando, così, il suo guadagno da -1 a +1 • (Testa,Croce) non può essere un equilibrio di Nash perché all’agente 1 conviene passare da Testa a Croce portando, così, il suo guadagno da -1 a +1. • (Croce,Testa) non può essere un equilibrio di Nash perché all’agente 2 conviene passare da Croce a Testa 5 portando, così, il suo guadagno da -1 a +1. Esistenza di un NE Teorema di Nash: Ogni gioco finito che ammette strategie miste ha almeno un equilibrio di Nash. gioco finito: gioco con un numero qualunque ma finito di giocatori e di strategie. strategia mista: insieme di strategie a ciascuna delle quali l'agente può associare una probabilità di successo (ovvero un guadagno atteso), che governerà le sue scelte. 6 Prezzo dell’anarchia Koutsoupias, Papadimitriou 1999 Definizione: Dati un gioco G e una funzione sociale f (somma delle funzioni di payoff di tutti i giocatori), sia N l’insieme di tutti gli equilibri di Nash e sia OPT lo stato di G che ottimizza f. Il prezzo dell’anarchia del gioco G rispetto ad f è definito come: G ( f ) sup sN f ( s) f (OPT ) • Misura la perdita di ottimalità di un sistema non regolato a causa della mancanza di cooperazione tra i giocatori e di coordinazione centrale. 7 Equilibri di Nash – Prezzo dell’anarchia Per spiegare come definire e misurare la qualità di uno stato stabile, riprendiamo l’esempio del “Dilemma del prigioniero”. Se i due sospetti potessero cooperare, si accorderebbero sullo stato ottimo (che massimizza f) f(Don’t Implicate, Don’t Implicate)=-2, Ne consegue che il prezzo dell’anarchia risulta essere: 18 G ( f ) 9 2 8 Subottimalità degli Equilibri di Nash In generale, un comportamento egoistico di agenti che popolano un sistema non cooperativo può risultare in uno stato stabile, il cui valore sociale può essere lontano dall’ottimo sociale. 9 Routing egoistico: Internet Un problema fondamentale nella gestione di traffico a larga scala e nelle reti di comunicazione è quello del routing del traffico per ottimizzare le prestazioni della rete. Problema: Data una rete (un grafo orientato e pesato sugli archi con una funzione di latenza), ed una quantità di traffico da soddisfare tra un insieme di coppie di nodi della rete, trovare i percorsi che minimizzano la somma dei tempi di completamento dei cammini (latenza totale). Risulta spesso difficile (quasi impossibile) indurre strategie di routing ottimali o quasi-ottimali sul traffico di una rete su cui operano agenti selfish. 10 Caratteristiche di Internet: Selfish routing Le componenti di Internet sono formate da nodi dislocati in modo eterogeneo nel mondo e sono caratterizzate da un’architettura aperta che gli permette una continua e incontrollata crescita; gli utenti della rete si comportano, generalmente, in maniera “egoistica” (selfish agents); gli utenti della rete generano traffico; il tempo di attesa per un collegamento è dipendente dal carico del link (congestione della rete). 11 Routing egoistico della rete Modellizzazione del problema Un tale sistema può essere ben modellato utilizzando la teoria dei giochi. giocatori azioni Assunzioni: • • • utenti della rete possibili percorsi attraverso cui gli utenti possono trasmettere il proprio traffico tutti gli utenti agiscono in modo del tutto egoistico; il traffico di un utente è inoltrato tutto su di uno stesso percorso e contemporaneamente; ogni utente controlla una frazione trascurabile dell’intero flusso. 12 Modello di una rete • Un grafo diretto G = (V,E); • k coppie origine-destinazione ( s1 , t1 ), ..., ( sk , tk ) • ammontare del traffico ri da si a ti , i = 1,2, ...,k; • un insieme Pi di cammini da si a ti ; • L’ insieme P i ; di tutti i cammini; i • per ogni arco ej E con traffico x, una funzione di latenza j (x) ; • • j (x) è non negativa, differenziabile e non decrescente; un vettore di flusso (P ) specifica l’ammontare del traffico rispetto ad ogni specifico cammino P • per ogni arco e E il flusso assorbito dall’arco è: • un flusso e P:eP P si dice ammissibile se per ogni i=1,…,k: • PPi P ri chiamiamo la tripla (G, r , ) un’ istanza. • La latenza di un cammino P risulta essere: P ( ) eP e (e ) • Il costo totale del flusso f ( ) (latenza totale del flusso), risulta essere: f ( ) P ( ) P eE e (e ) e P Flussi e Teoria dei giochi flusso latenza totale la moltitudine di agenti non cooperativi funzione (o benessere) sociale Si può dimostrare che il problema del flusso egoistico ammette un NE! Esempio Sia s un quartiere, t una stazione ferroviaria, congiunte da 2 strade: una strada lunga e larga (con tempo di percorrenza di 1 ora indipendente dal traffico), e una corta e stretta (con tempo di percorrenza pari a x ore, dove x è la frazione del traffico totale che la strada assorbe). Mille conducenti vogliono andare da s a t. 16 il ritardo dipende dalla congestione ( x ) x s t ( x ) 1 nessun effetto di congestione: la latenza è fissata Come si comporteranno i conducenti? Tenderanno a passare tutti sull’arco superiore, la cui latenza diventerà pari a 1! Tale scelta è un equilibrio di Nash. Qual è il prezzo dell’anarchia di questo NE? La soluzione ottima si ottiene minimizzando: f()=x·x +(1-x)·1 f ’()=2x-1 OPT=1/2 f(OPT)=1/2·1/2+(1-1/2)·1=0.75 1 4 G ( f ) .75 3 18 Routing egoistico-”Paradosso di Braess" Paradosso di Braess Basta aggiungere strade per migliorare le cose? NO! Esempio: Paradosso di Braess (1968) Assumiamo ora che ci siano due cammini (che non interferiscono tra loro), ognuno comprendente una strada lunga e larga (con tempo di percorrenza di 1 ora indipendente dal traffico), e una corta e stretta (con tempo di percorrenza pari a x ore, dove x è la frazione di traffico che la strada assorbe). 19 Routing egoistico-”Paradosso di Braess" v x 1 1/2 0 s 1 1/2 Latenza di ciascun cammino= 0.5+1 =1.5 t x w Il costo totale del flusso equipartito è: 2· (1/2·1/2+1·1/2)=1.5 Supponiamo ora, con l’obiettivo di diminuire i tempi, di introdurre una strada molto corta e molto larga che collega direttamente i punti intermedi delle due strade, con funzione di latenza nulla (indipendente dalla congestione della strada). Routing egoistico-”Paradosso di Braess" Come reagiscono i conducenti? Ogni conducente può risparmiare circa 30 minuti di viaggio (assumendo che gli altri conducenti non cambino rotta), seguendo il cammino s → v → w → t. v x 1 0 s 1 Latenza del conducente che cambia rotta=2·(501/1000) 1 t x w Tutti i conducenti, volendo usare la nuova strada, devieranno i loro cammini precedenti, per seguire il cammino s → v → w → t. Routing egoistico-”Paradosso di Braess" A causa della forte congestione sui tratti (s, v) e (w, t), tutti i conducenti impiegano 2 ore per andare da s at! Inoltre questa congestione implica che nessuno dei due cammini precedenti risulti essere migliore (cioè, è un equilibrio di Nash!); in questo modo nessuno dei conducenti è incentivato a cambiare strada. Ancora peggio, ogni altro modello di traffico è instabile: tutti i conducenti sarebbero incentivati a cambiare cammino. E’ quindi ragionevole aspettarsi che tutti i conducenti seguano il cammino s → v → w → t e che quindi impieghino 30 minuti in più del modello originale. Ne segue: G ( f ) 2 4 1.5 3 Routing egoistico della rete-Prezzo dell’anarchia Teorema Se (G,r,) ha funzione di latenza lineare, allora 4 (G , r , ) 3 Funzioni di latenza generiche Teorema Sia (G,r,) un’istanza con V (G ) n (G, r , ) n / 2 , allora Esempio “cattivo” r=1, i>>1 xi s 1 1- 1 0 t Un flusso in equilibrio di Nash può costare arbitrariamente di più del flusso ottimo 24 Conclusione Attualmente, non ci sono ulteriori risultati per istanze con generiche funzioni di latenza, ma le buone prestazioni di Internet, che osserviamo quotidianamente, possono essere una prova che esiste una modellizzazione per tali casi con un “ragionevole” prezzo dell’anarchia . 25