Meccanismi one-parameter. Riepilogo Archi di un grafo controllati da agenti egoistici Solo lagente conosce il peso associato al proprio arco Obiettivo:

Slides:



Advertisements
Presentazioni simili
Premessa: si assume di aver risolto (correttamente
Advertisements

Algoritmi e Strutture dati Mod B
Meccanismi one-parameter. Riepilogo Archi di un grafo controllati da agenti egoistici Solo lagente conosce il peso associato al proprio arco Obiettivo:
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Il problema del cammino minimo tra 2 nodi in un grafo non cooperativo
Il problema del minimo albero ricoprente in un grafo non cooperativo
Algoritmi e Strutture Dati (Mod. B)
Algoritmi e Strutture Dati
Cammini minimi con una sorgente
Cammini minimi con sorgente singola
Algoritmi e Strutture Dati
Il problema del cammino minimo tra 2 nodi in un grafo con archi privati.
Algoritmi e Strutture Dati
Il problema del minimo albero ricoprente in un grafo con archi privati.
Algoritmi e Strutture Dati
Scenario Archi di un grafo controllati da agenti egoistici
Meccanismi one-parameter. Riepilogo Archi di un grafo controllati da agenti egoistici Solo lagente conosce il peso associato al proprio arco Obiettivo:
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 05/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 28/04/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Il problema del minimo albero ricoprente in un grafo con archi privati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Il problema del cammino minimo tra 2 nodi in un grafo con archi privati.
Flusso Massimo Applicazione di algoritmi
Cammini minimi Algoritmo SPT.Acyclic
Flusso Massimo Applicazione Algoritmi Esercizio 1 Sia dato la seguente rete di flusso, in cui la sorgente è il nodo 1 e la destinazione è il nodo 6. I.
Algoritmi e Strutture Dati (Mod. B)
Algoritmi e Strutture Dati (Mod. B)
Trovare il percorso minimo da b ad ogni altro vertice
Ricerca della Legge di Controllo
Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco Gennaro Cordasco
Lezione 5 Domande: Laverage path length di Chord con 2^b identificatori e N=2^b nodi è (giustificare la risposta) Laverage path length di Chord con 2^b.
Esercizi 5 Grafi.
Prof. Tiziana Calamoneri Corso di Algoritmi per le reti A.A. 2011/12
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Prof. Cerulli – Dott.ssa Gentili
Prof. Cerulli – Dott.ssa Gentili
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Cammini minimi da un sorgente
Capitolo 13 Cammini minimi: Ordinamento topologico Algoritmi e Strutture Dati.
Università degli Studi di Roma Tor Vergata
Claudio Arbib Università dell’Aquila Ricerca Operativa Metodo del simplesso per problemi di distribuzione single-commodity.
Capitolo 12 Minimo albero ricoprente Algoritmi e Strutture Dati.
Meccanismi one-parameter: il problema dell’albero dei cammini minimi a sorgente singola.
Il Problema del Commesso Viaggiatore. Traveling Salesman’s Problem (TSP) Un commesso viaggiatore deve visitare un certo numero di città Conosce la distanza.
Flusso Massimo Applicazione di algoritmi
Capitolo 12 Minimo albero ricoprente: Algoritmo di Kruskal Algoritmi e Strutture Dati.
Capitolo 13 Cammini minimi Algoritmi e Strutture Dati.
Meccanismi one-parameter: il problema dell’albero dei cammini minimi a sorgente singola.
Algoritmi e Strutture Dati
Prof. Cerulli – Dott. Carrabs
Capitolo 13 Cammini minimi: Bellman e Ford Algoritmi e Strutture Dati.
Capitolo 13 Cammini minimi: Algoritmo di ordinamento topologico, di Dijkstra, e di Floyd e Warshall Algoritmi e Strutture Dati.
Meccanismi one-parameter. Riepilogo Archi di un grafo controllati da agenti egoistici Solo l’agente conosce il peso associato al proprio arco Obiettivo:
Flusso di Costo Minimo Applicazione di algoritmi: Cammini Minimi Successivi (SSP) Esercizio 1 Sia data la seguente rete di flusso, in cui i valori riportati.
Capitolo 13 Cammini minimi Algoritmi e Strutture Dati.
Algoritmi e Strutture Dati
Cammini minimi fra tutte le coppie:
Cammini minimi in grafi:
Capitolo 12 Minimo albero ricoprente: Algoritmo di Kruskal Algoritmi e Strutture Dati.
Il problema del cammino minimo tra 2 nodi in un grafo con archi privati.
OTTIMIZZAZIONE DI UN PERCORSO GRAFO CAMMINO MINIMO.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Algoritmi Avanzati a.a.2013/2014 Prof.ssa Rossella Petreschi Albero ricoprente di costo minimo Lezione n°12.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Algoritmi Avanzati a.a.2012/2013 Prof.ssa Rossella Petreschi Albero Ricoprente Lezione n°9.
Scenario Archi di un grafo controllati da agenti egoistici
Transcript della presentazione:

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 (x=g(r)) = j i v j (r j,g(r -i )) - j i v j (r j,g(r)) o F

Shortest Path Tree (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 (in T) v V Protocollo multicast: v e (t e,T)= t e se e E(T), 0 altrimenti 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)= Multicast: 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 (esatto) VCG e OP coincidono

Una proprietà interessante Un algoritmo g() per un problema OP di minimizzazione è monotono se agente 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 è truthful deve essere: p A (altrimente quando t i =x, a i dichiara y, in quanto in tal caso il suo costo aumenta di A, e quindi se p>A, la sua utilità aumenta!) p A+k (altrimenti quando t i =y, a i dichiara x, in quanto in tal caso il suo costo diminuisce di A+k, e quindi se p<A+k, ciò significa che il decremento nel pagamento è minore del decremento del costo, ovvero la sua utilità aumenta!) … ma k è strettamente 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 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: P= 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) 0 titi C 0 x 0 titi G P

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 Ma il pagamento di 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 Se 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: Lutilità di un agente che dichiara il vero diventa: u i (t i,g(r)) = w i (r -i,z) dz 0. titi

Meccanismi one-parameter: il problema dellalbero dei cammini minimi a sorgente singola

Input: un grafo G=(V,E) biconnesso sugli archi, in cui ogni arco corrisponde in modo biunivoco ad un insieme di agenti egoisti, ed un nodo sorgente s V; il tipo di un agente è il costo di utilizzo dellarco (quindi tipo>0); SCF: un albero dei cammini minimi radicato in s in G=(V,E,t). SPT non cooperativo (ogni agente controlla un arco)

SPT non utilitario Per ogni albero ricoprente T di G radicato in s, la funzione obiettivo minimizzata dalla SCF è: f(t)= arg min { d T (s,v) = t e ||e|| } Con protocollo multicast : v e (t e,T)= e quindi f(t) arg min v e (t e,T) (problema non utilitario) Ma il problema è one-parameter, in quanto v e (t e,T)= t e w e (T), ove v V e E(T) tete se e E(T) 0 altrimenti 1 se e E(T) 0 altrimenti w e (T)= T F e E

Meccanismo one-parameter per lSPT non utilitario M SPT = g(r): dato il grafo e le dichiarazioni, calcola un SPT S G (s) di G=(V,E,r) utilizzando lalgoritmo di Dijkstra. p(x): per ogni arco e E p e =r e w e (r) + w e (r -e,z) dz rere così da garantire la partecipazione volontaria.

Truthfulness Osservazione: M SPT è truthful. La truthfulness segue dal fatto che M SPT è un meccanismo OP. Infatti, lalgoritmo di Dijkstra per il calcolo dellSPT è monotono, in quanto il carico di lavoro per un agente a e ha sempre la forma: 1 Ө e : valore soglia Ө e è il valore tale che, fissato r -e : se a e dichiara al più Ө e, allora e è selezionato se a e dichiara più di Ө e, allora e non è selezionato Lalgoritmo del meccanismo è monotono!

Sui pagamenti p e =0, se e non è un arco selezionato p e = Ө e, se e è nella soluzione 1 Ө e : valore soglia rere p e = r e w e (r) + w e (r -e,z) dz = r e + Ө e - r e = Ө e rere p e = r e w e (r) + w e (r -e,z) dz = 0+0 = 0 rere rere

Un problema è binary demand (BD) 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) {0,1} carico di lavoro per a i in o Un caso speciale dei problemi OP quando w i (o)=1 diremo che a i è selezionato in o

Un algoritmo g() per un problema BD di minimizzazione è monotono se agente a i, e per tutti gli r -i =(r 1,…,r i-1,r i+1,…,r N ), w i (g(r -i,r i )) è della forma: Definizione 1 Ө i (r -i ) riri Ө i (r -i ) {+ }: valore soglia il pagamento per a i diventa: p i (r)= Ө i (r -i )

Sulle soglie Sia e=(u,v) un arco in S G (s) (u più vicino a s che v) e resta in S G (s) finché uso e per raggiungere v Allora, Ө e =d G-e (s,v)-d G (s,u) Esempio s v u e r e =1 1 2+ε s v u e r e = 2+ε 1 3+ε s v u e r e = 3+ε Ө e = 3

Una soluzione banale e=(u,v) S G (s) applichiamo lalgoritmo di Dijkstra al grafo G-e e troviamo d G-e (s,v) Complessità: k=n-1 archi per O(m + n logn): O(mn + n 2 logn) time Si può dimostrare il seguente teorema: Teorema M SPT è calcolabile in tempo O(m + n log n).

Pensare allo scenario in cui un agente controlla più di un arco del grafo e si vuole progettare un meccanismo veritiero per calcolare un SPT. Come nel caso del singolo arco, i pesi degli archi controllati dallagente i sono privati e la valutazione di un agente rispetto a una soluzione (albero) T è uguale alla somma dei (veri) pesi degli archi selezionati nel cammino. Possiamo usare i meccanismi VCG? E quelli OP? Esercizio