Meccanismi one-parameter
Riepilogo Archi di un grafo controllati da agenti egoistici Solo lagente conosce il peso associato al proprio arco Obiettivo: calcolare una buona soluzione di un certo problema di ottimizzazione rispetto a pesi reali Strumento: progettazione di un meccanismo truthful (pagamento opportuno degli agenti per convincerli a dire la verità!)
Tecniche note Un problema è utilitario quando: f(t)= i v i (t i,o) Meccanismi VCG (pivotal) Validi per problemi utilitari (es., MST e SP) g(r) arg min { i v i (r i,o) } p i (g(r)) = j i v j (r j,g(r -i )) - j i v j (r j,g(r)) o F
SPT non cooperativo Problema: broadcasting una sorgente s vuole spedire un messaggio ai nodi V\{s} Informazione posseduta dagli agenti: tempo di attraversamento dei link Obiettivo: minimizzare il tempo di consegna di ogni messaggio
Formulazione F: insieme alberi ricoprenti V (radicati in s) Per ogni T F f(t)= d T (s,v) ||e|| è la molteplicità dellarco e, intesa come numero di cammini ai quali appartiene v V Protocollo unicast: v e (t e,T)= t e f(t) v e (t e,T) problema non utilitario! = t e ||e|| e E(T)
Come tratto i problemi non utilitari? …per problemi one-parameter uso i meccanismi one-parameter (OP)
Un problema è one-parameter se 1. Linformazione posseduta da ogni agente a i è un singolo parametro t i 2. La valutazione di a i ha la forma v i (t i,o)= t i w i (o), w i (o): carico di lavoro per a i in o
SPT non cooperativo (ogni agente controlla un arco) F: insieme alberi ricoprenti V (radicati in s) Per ogni T F f(t)= d T (s,v) = t e ||e|| v e (t e,T)= v e (t e,T)= t e w e (T) v V e E(T) tete se e E(T) 0 altrimenti 1 se e E(T) 0 altrimenti w e (T)= Unicast: caso non utilitario
VCG vs OP Meccanismi VCG: valutazioni (costi) e tipi arbitrari ma problemi utilitari Meccanismi OP: funzione di scelta sociale arbitraria ma tipi a singolo- parametro e valutazioni vincolate Se un problema è utilitario e one- parameter meccanismo VCG e OP coincidono
Una proprietà interessante Un algoritmo g() per un problema OP di minimizzazione è monotono se a i w i (g(r -i,r i )) è non crescente rispetto a r i, per tutti gli r -i =(r 1,…,r i-1,r i+1,…,r N ) Definizione Notazione Scriveremo w i (r) al posto di w i (g(r))
Teorema 1 Condizione necessaria affinché un meccanismo M= per un problema OP sia veritiero è che g(r) sia monotono. Dim (per assurdo) Supponiamo g() non monotono, e… …facciamo vedere che nessuno schema di pagamento può rendere M veritiero Se g( ٠ ) è non monotono esiste un agente a i e un vettore r -i tale che w i (r -i,r i ) è non non crescente…
1. Se t i =x e r i =t i v i (t i,o)=x w i (r -i,x) 2. Se t i =y e r i =t i v i (t i,o)=y w i (r -i,y) 3. Se t i =x e r i =y a i aumenta il suo costo di A 4. Se t i =y e r i =x a i ha un risparmio di A+k Ak xy w i (r -i,y) w i (r -i,x) w i (r -i,r i ) riri Dim (continua) costo per a i caso 3 costo per a i caso 4
Sia p=p i (r -i,y) - p i (r -i,x) Se M è veritiero deve essere: p A (altrimente quando t i =x, a i dichiara y) p A+k (altrimenti quando t i =y, a i dichiara x) … ma k è positivo Ak xy w i (r -i,y) w i (r -i,x) w i (r -i,r i ) riri Dim (continua) Assurdo: g( ٠ ) deve essere monotono!
Meccanismi one-parameter (OP) g(r): qualsiasi algoritmo monotono che risolva in modo ottimo il problema OP soggiacente p i (g(r)) = h i (r -i ) + r i w i (r) - w i (r -i,z) dz 0 riri h i (r -i ): funzione arbitraria indipendente da r i Scriveremo p i (r) al posto di p i (g(r))
Teorema 2 Un meccanismo OP (per un problema OP) è veritiero. Dim Facciamo vedere che lutilità di un agente a i può solo decrescere se a i mente Siano r -i le dichiarazioni degli altri agenti Il pagamento fornito ad a i (quando dichiara r i ) è: p i (r) = h i (r -i ) + r i w i (r) - w i (r -i,z) dz 0 riri Ininfluente perché indipendente da r i pongo h i (r -i )=0
u i (t i,g(r -i,t i ))= p i (g(r -i,t i ))-v i (t i, g(r -i,t i ))= t i w i (g(r -i,t i ))- - w i (r -i,z) dz- t i w i (g(r -i,t i )) = - w i (r -i,z) dz Se a i dichiara x>t i : La valutazione diventa C = t i w i (r -i,x) il pagamento diventa: x w i (r -i,x) - w i (r -i,z) dz a i sta perdendo G Dim (continua) titi w i (r -i,t i ) x w i (r -i,x) G 0 titi C 0 x 0 titi
u i (t i,(r -i,t i ))= - w i (r -i,z) dz Se a i dichiara x<t i La valutazione diventa C il pagamento diventa P a i sta perdendo G Dim (continua) titi w i (r -i,t i ) 0 titi G C P x w i (r -i,x) a i non ha convenienza a mentire!
Sulla funzione h i (r -i ) Un meccanismo garantisce la volontaria partecipazione (VP) se lutilità di un qualsiasi agente (che dichiara il vero) ha sempre un utile non negativo Lutile di a i quando dichiara r i è: - w i (r -i,z) dz + h i (r -i ) 0 riri Scegliamo la costante h i (r -i )= w i (r -i,z) dz 0 p i (r) = r i w i (r) + w i (r -i,z) dz riri Il pagamento diventa: