Università degli studi di L’Aquila
Facoltà di Scienze Matematiche, Fisiche e Naturali
Corso di Laurea in Informatica
Tesi di Laurea
Equilibri di Nash
in reti ottiche
non cooperative
Laureando
Relatori
Luca Moscardelli
Prof. Michele Flammini
Dott. Vittorio Bilò
Anno Accademico 2003-2004
A Sara
che è stata sempre al mio fianco
durante gli studi universitari
donandomi amore, forza,
sostegno e speranza.
Indice
Introduzione
VI
1 Teoria dei giochi
1.1
1.2
1
Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.1.1
Classificazione dei giochi . . . . . . . . . . . . . . . . .
2
1.1.2
Caratterizzazione dei giochi . . . . . . . . . . . . . . .
2
1.1.3
Una possibile soluzione di gioco:
equilibrio in strategie dominanti . . . . . . . . . . . . .
4
Equilibrio di Nash . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.2.1
Esistenza . . . . . . . . . . . . . . . . . . . . . . . . .
8
1.2.2
Problematiche algoritmiche . . . . . . . . . . . . . . .
9
1.3
Load Balancing . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4
Selfish Routing . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2 Reti ottiche
18
2.1
Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2
Modello . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.1
Reti ottiche non dirette . . . . . . . . . . . . . . . . . . 20
2.2.2
Reti ottiche dirette . . . . . . . . . . . . . . . . . . . . 22
2.2.3
Un parametro correlato ed alcuni risultati . . . . . . . 23
2.2.4
Istanze speciali . . . . . . . . . . . . . . . . . . . . . . 24
2.3
Routing statico . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4
Routing on-line . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4.1
Un algoritmo on-line per anelli
. . . . . . . . . . . . . 27
INDICE
IV
2.4.2
2.5
Un algoritmo on-line per alberi . . . . . . . . . . . . . 32
Routing dinamico . . . . . . . . . . . . . . . . . . . . . . . . . 33
3 Prezzo dell’anarchia in reti ottiche
36
3.1
Modello . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2
Una classe di funzioni di pagamento convergenti . . . . . . . . 42
3.3
Una classe di funzioni di pagamento inducenti
un gioco con alto prezzo dell’anarchia . . . . . . . . . . . . . . 43
3.4
Informazione completa . . . . . . . . . . . . . . . . . . . . . . 46
3.5
Informazione minimale . . . . . . . . . . . . . . . . . . . . . . 48
3.6
Informazione intermedia . . . . . . . . . . . . . . . . . . . . . 51
3.6.1
Funzioni di pagamento non convergenti . . . . . . . . . 52
4 Riduzione del prezzo dell’anarchia
in reti ottiche con topologie particolari
4.1
4.2
4.3
68
Anelli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.1.1
Il problema del routing puro . . . . . . . . . . . . . . . 69
4.1.2
Informazione minimale . . . . . . . . . . . . . . . . . . 70
4.1.3
Informazione intermedia . . . . . . . . . . . . . . . . . 73
Catene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2.1
Informazione minimale . . . . . . . . . . . . . . . . . . 78
4.2.2
Informazione intermedia . . . . . . . . . . . . . . . . . 79
Alberi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5 Reti ottiche dirette e conclusioni
81
5.1
Risultati ottenuti . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.2
Estensione dei risultati a reti ottiche dirette . . . . . . . . . . 83
5.3
5.2.1
Reti con topologia generica
. . . . . . . . . . . . . . . 84
5.2.2
Reti con topologie particolari . . . . . . . . . . . . . . 84
Problemi aperti . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Ringraziamenti
Il primo ringraziamento va ai relatori che mi hanno guidato ed aiutato con
competenza e professionalità nella stesura della tesi, ed in modo particolare
al Prof. Michele Flammini per la fiducia che mi ha accordato e la particolare
disponibilità con cui mi ha seguito.
Un sentito ringraziamento va a tutti i professori che ho incontrato nel
corso degli studi universitari, tra i quali mi è gradito menzionare il Prof.
Flavio Corradini ed il Prof. Riccardo Silvestri, per aver contribuito con i
corsi da loro tenuti alla mia formazione universitaria e professionale.
Un grazie sincero ad Alessandro, Angelo, Lucio e Riccardo, colleghi di
corso ma soprattutto amici, con i quali ho condiviso molte soddisfazioni,
ma anche interminabili notti di lavoro; in loro ho sempre trovato lealtà e
generosità, ed insieme abbiamo trascorso momenti indimenticabili.
Infine, non posso dimenticare i miei genitori che hanno sempre saputo
fornirmi i mezzi e gli stimoli giusti per affrontare adeguatamente gli studi nel
mio itinerario scolastico ed universitario.
Introduzione
Le reti ottiche sono candidate a rappresentare il futuro delle reti di comunicazione, in quanto offrono una larghezza di banda nell’ordine delle decine
di terahertz, ossia mille volte superiore rispetto a quelle tradizionali. Tale
larghezza di banda può essere impiegata tramite la tecnica del multiplexing in
modo da permettere la comunicazione di più coppie di utenti sullo stesso link
fisico. L’informazione viaggia sottoforma di luce e con la stessa lunghezza
d’onda da un capo all’altro della comunicazione, senza mai essere trasformata in segnale elettrico; ciò permette una velocità di propagazione del segnale
e di comunicazione non paragonabile a quella delle tradizionali reti elettriche.
In questa tesi viene investigato il problema del routing su reti ottiche
in ambito non cooperativo, in cui le modalità di comunicazione tra le varie
coppie di utenti (agenti ) non vengono stabilite da un algoritmo centralizzato,
ma sono il risultato della libera evoluzione delle coppie stesse che agiscono
egoisticamente nel tentativo di minimizzare il proprio costo di comunicazione.
Utilizzando quindi nozioni e concetti classici della teoria dei giochi, tali
coppie di utenti sono impegnate in un gioco, alla ricerca della strategia che
minimizzi il proprio pagamento; il gioco ha termine laddove gli agenti raggiungono una situazione di equilibrio. L’equilibrio cui si fa riferimento nella
tesi è l’equilibrio di Nash, ovvero una situazione in cui, ferme restando le
scelte strategiche altrui, nessun agente trae vantaggio dal mutare la propria
strategia.
VII
Obiettivo
L’obiettivo della tesi è quello di incentivare gli agenti a comunicare in
modo tale da utilizzare un basso numero di lunghezze d’onda, essendo questo
un parametro critico per le reti ottiche attuali (tipicamente qualche centinaio
è il numero massimo di lunghezze d’onda utilizzabili).
A tale scopo, abbiamo elaborato delle funzioni di pagamento che inducono
gli agenti egoistici a raggiungere situazioni di equilibrio che utilizzino appunto
un basso numero di lunghezze d’onda.
Il problema è stato affrontato sia nel caso di reti con topologie generiche, sia in quello di reti con topologie particolari, ma comunque molto diffuse nelle reti ottiche. I risultati ottenuti sono dettagliatamente descritti nel
Paragrafo 5.1.
Struttura
La tesi è strutturata nel modo seguente.
Nel Capitolo 1 viene presentata una breve panoramica relativa alla teoria
dei giochi, con particolare attenzione alle problematiche connesse alla nozione
di equilibrio di Nash e alle principali tematiche algoritmiche coinvolte.
Nel Capitolo 2 viene descritto in dettaglio il modello delle reti ottiche e
vengono illustrati i relativi risultati presenti in letteratura. Il routing su reti
ottiche è stato infatti largamente studiato dal punto di vista centralizzato, sia
in uno scenario statico, in cui le coppie che richiedono la comunicazione sono
tutte inizialmente note all’algoritmo, sia in uno scenario on-line e dinamico
in cui le richieste arrivano nel tempo e devono essere servite senza alcuna
conoscenza di quelle future.
Nei capitoli successivi sono presenti i contributi originali del lavoro di
tesi. In particolare viene affrontato il problema del routing in ambito non
cooperativo e vengono presentate diverse funzioni di pagamento sia per reti
con topologia generica (Capitolo 3) che con topologia particolare (Capitolo
4). Per ogni funzione di pagamento è stato analizzato il gioco indotto corri-
VIII
spondente dal punto di vista della convergenza, dell’esistenza dell’equilibrio
e del prezzo dell’anarchia, ossia della spesa in termini di lunghezze d’onda impiegate da una soluzione in equilibrio, rispetto alla soluzione migliore
possibile.
Infine, nel Capitolo 5 è presente l’estensione dei risultati ottenuti per il
modello delle reti ottiche non dirette considerato nei capitoli 3 e 4 a quello
delle reti dirette. Inoltre, vengono presentate le conclusioni del lavoro di tesi
ed enunciati alcuni problemi rimasti aperti.
Pubblicazioni
I contributi originali di questa tesi hanno dato luogo a due articoli ([6],[5]);
uno di questi, contenente alcuni risultati preliminari, è stato già accettato alla
conferenza internazionale SIROCCO 2004 ([6]), che si è svolta dal 21 al 23
Giugno a Smolenice, in Slovacchia.
Capitolo 1
Teoria dei giochi
In questo capitolo vengono introdotti i principali concetti, relativi alla
teoria dei giochi, utilizzati nella tesi, che verranno meglio formalizzati ed
istanziati al routing in reti ottiche nel Capitolo 3.
Inoltre, alla fine del capitolo sono presentati un paio di problemi tipici
della letteratura algoritmica, che negli ultimi anni sono stati affrontati in
ambito non cooperativo grazie all’utilizzo di nozioni e concetti derivanti dalla
teoria dei giochi.
1.1
Introduzione
La teoria dei giochi ([38]) studia le situazioni in cui più agenti (giocatori ),
ognuno dei quali prende in modo strategico decisioni che potenzialmente si
ripercuotono sia su se stesso che sugli altri, interagiscono. In altri termini
vengono trattati i processi decisionali in cui l’utilità (o profitto) di ciascun
giocatore dipende non solo dalle proprie azioni, ma anche da quelle degli altri.
Iniziamo ora ad introdurre alcune nozioni della teoria dei giochi.
Consideriamo inizialmente la classificazione dei diversi tipi di gioco.
1.1 Introduzione
1.1.1
2
Classificazione dei giochi
In generale, i giochi possono essere di tipo cooperativo o non cooperativo. Un gioco è detto non cooperativo quando ai giocatori non è consentito
definire accordi relativamente alla condotta del gioco. Al contrario, in un
gioco cooperativo gli accordi sono consentiti. In questa tesi ci occuperemo
unicamente dei giochi non cooperativi.
In base alle informazioni a disposizione dei giocatori nel corso del gioco,
laddove la variabile tempo sia significativa per esso, possiamo distinguere tra
giochi ad informazione perfetta e giochi ad informazione imperfetta. Un gioco
è ad informazione imperfetta quando un giocatore si trova a dover decidere
cosa fare senza conoscere quali siano state tutte le scelte effettuate da chi lo ha
preceduto nella sequenza di decisioni. Viceversa, un gioco è ad informazione
perfetta se ogni giocatore, quando è chiamato a giocare, conosce in pieno
tutte le scelte fatte in precedenza, ossia conosce perfettamente la storia del
gioco.
Possiamo distinguere, inoltre, tra giochi ad informazione completa e giochi
ad informazione incompleta. In un gioco ad informazione completa, ogni
giocatore dispone di tutte le informazioni che determinano le scelte degli
avversari. Non tutti i giochi sono di questo tipo: in un gioco ad informazione
incompleta un giocatore potrebbe ad esempio non essere a conoscenza delle
possibili strategie degli altri giocatori, o dell’utilità che essi conseguono a
seguito di una data combinazione di strategie.
1.1.2
Caratterizzazione dei giochi
Un gioco è descritto dai seguenti elementi:
• un insieme di giocatori N = {1, 2, . . . , n};
• uno spazio di azioni Ai , i = 1, 2, . . . , n, per ogni giocatore, ovvero
l’insieme delle azioni che il giocatore i-esimo può intraprendere nel
gioco;
1.1 Introduzione
3
• un insieme di profili di strategie S, che è il prodotto cartesiano di tutti
gli insiemi di strategie dei singoli giocatori:
S = S1 × S2 × · · · × Sn ;
• le utilità (o profitti ) che ciascun giocatore consegue in tutte le possibili
configurazioni del gioco, ovvero un vettore
U(s) = (u1 (s), u2 (s), . . . , un (s))
di n funzioni aventi come dominio l’insieme dei profili di strategie S =
S1 × S2 × · · · × Sn e come codominio R;
Connesso al concetto di azione è quello di strategia. Per chiarirlo meglio
differenziamo due possibili forme rappresentative dei giochi. In un gioco in
forma strategica (o forma normale) per ogni giocatore è presente un insieme
di possibili strategie, e per ogni possibile profilo di strategie di tutti i giocatori
è data per ognuno di essi una corrispondente utilità.
La forma estesa (o albero di gioco) è una rappresentazione più dettagliata
della forma normale: è una descrizione completa di come il gioco può evolvere nel tempo, che include l’ordine in cui i giocatori effettuano le azioni e
le informazioni che possiedono nel momento in cui le effettuano. Tale rappresentazione si serve di un albero di gioco, in cui ogni nodo rappresenta un
punto in cui un giocatore può effettuare una scelta.
Come mostrato da von Neumann nel 1928, un gioco in forma estesa può
essere sempre convertito in uno equivalente in forma normale, modificando
opportunamente lo spazio delle azioni a disposizione dei giocatori.
Nel caso di gioco in forma strategica, una strategia per un giocatore è
semplicemente una delle sue possibili azioni; nel gioco in forma estesa, una
strategia per un giocatore è l’insieme di tutte le azioni che lui sceglierebbe
durante il gioco. Più precisamente, considerando l’albero di gioco, una strategia per un giocatore indica l’azione compiuta per ogni nodo dell’albero in
cui lo stesso giocatore deve effettuare una scelta.
1.1 Introduzione
4
Infine, si parla di strategie pure quando una singola strategia è scelta dal
giocatore, e di strategie miste quando una distribuzione di probabilità sulle
varie strategie è decisa dal giocatore. Naturalmente, una strategia pura è un
caso particolare di strategia mista, ovvero corrisponde alla strategia mista
che assegna probabilità 1 ad un’unica strategia e probabilità 0 a tutte le
altre.
1.1.3
Una possibile soluzione di gioco:
equilibrio in strategie dominanti
L’idea più accreditata di soluzione di un gioco è quella di equilibrio. Poiché
l’obiettivo di ogni partecipante al gioco è ottenere il massimo profitto, il
problema principale che ciascun giocatore deve risolvere nell’analizzare un
gioco è come fare ad individuare la strategia con cui giocare.
In alcuni casi un giocatore ha a disposizione una strategia che gli assicura
un profitto mai minore di quello che gli assicurano le altre, rispetto a tutte
le possibili scelte dei propri avversari. Tale strategia è definita dominante;
laddove queste strategie esistano per tutti i giocatori, la loro combinazione
dà luogo ad un equilibrio in strategie dominanti.
Definizione 1.1 (Equilibrio in strategie dominanti). Un profilio di strategie s∗ = (s∗1 , s∗2 , . . . , s∗n ) è in equilibrio in strategie dominanti se e solo se
∀i ∈ N e ∀(s1 , s1 , . . . , sn ) ∈ S1 × S1 × · · · × Sn
ui (s1 , . . . , si−1 , s∗i , si+1 , . . . , sn ) ≥ ui (s1 , . . . , si−1 , si , si+1 , . . . , sn ).
Per comprendere meglio tale definizione, ci serviamo del Dilemma del
Prigioniero, gioco strategico molto famoso in letteratura.
Il dilemma del prigioniero
La polizia ferma due pregiudicati che devono scontare un anno di prigione
ciascuno per un crimine minore. Il procuratore sospetta, ma non può provare, che i due siano complici in un crimine maggiore, punibile con ulteriori
1.1 Introduzione
5
cinque anni di galera. Nel tentativo di renderli condannabili per il crimine
maggiore, il giudice propone separatamente, a ciascuno di loro, il condono
dell’anno di prigione per il crimine minore, chiedendo in cambio l’accusa del
socio per quello maggiore. In tal modo, ciascun pregiudicato, accusando il
complice, sarebbe condannato a cinque anni per il crimine maggiore, se accusato dall’altro; rimesso subito in libertà, altrimenti. La situazione può
essere descritta come un gioco tra i due prigionieri, che hanno come possibili
strategie l’opzione di accusare o meno il socio e come funzione di utilità l’opposto del numero di anni di prigione che rischiano. L’interazione strategica
tra i due pregiudicati può essere rappresentata mediante una matrice dove il
primo prigioniero sceglie la riga ed il secondo la colonna (Tabella 1.1). Ad
esempio, se il primo prigioniero accusa il suo complice, ma il secondo non lo
accusa, si ottiene un’utilità pari a 0 per il primo ed un’utilità pari a −6 per
il secondo.
accusa
non accusa
accusa
(−5, −5)
(0, −6)
non accusa
(−6, −0)
(−1, −1)
Tabella 1.1: Il dilemma del prigioniero
Una strategia è dominante, per cui il gioco in cui tutti i giocatori la adottano è in equilibrio in strategie dominanti, se è una scelta strategica ottima
qualunque sia la scelta dell’altro giocatore. In altri termini, indipendentemente dalle scelte dell’altro giocatore, il giocatore che gioca la sua strategia
dominante ottiene un’utilità maggiore rispetto a quella che potrebbe ottenere
giocando qualsiasi altra strategia.
In questo caso si può vedere facilmente come l’unica strategia dominante sia quella di accusare, in quanto indipendentemente dalla scelta
dell’avversario si ottiene un anno di sconto sulla pena.
Si noti tuttavia come l’unico profilo di strategie in equilibrio (accusa, accusa) non costituisce la soluzione migliore per i prigionieri, che se potessero
1.2 Equilibrio di Nash
6
accordarsi come in un gioco cooperativo certamente opterebbero per il profilo
di strategie (non accusa, non accusa); risulta quindi evidente come in un gioco non cooperativo la soluzione (sia essa in equilibrio in strategie dominanti
o in equilibrio di Nash 1 ) non coincide con il profilo di strategie che realizza
un ottimo sociale 2 .
Nel caso in cui una soluzione in strategie dominanti non sia individuabile
ci si deve accontentare di un obiettivo più modesto: è necessario introdurre
un ulteriore criterio di soluzione che sia applicabile ad una classe più ampia
di giochi.
1.2
Equilibrio di Nash
In modo intuitivo, un equilibrio di Nash [36] si ha laddove in un profilo
di strategie nessun giocatore ha convenienza nel mutare la propria strategia,
ferme restando quelle degli altri giocatori.
Definizione 1.2 (Equilibrio di Nash). Un profilio di strategie s∗ =
(s∗1 , s∗2 , . . . , s∗n ) è in equilibrio di Nash se e solo se ∀i ∈ N e ∀si ∈ Si
ui (s∗1 , . . . , s∗i−1 , s∗i , s∗i+1 , . . . , s∗n ) ≥ ui (s∗1 , . . . , s∗i−1 , si , s∗i+1 , . . . , s∗n ).
Per comprendere il significato dell’equilibrio di Nash può essere utile confrontarlo con quello in strategie dominanti. Dato un gioco, se un profilo di
strategie s = (s1 , s2 , . . . , sn ) costituisce la soluzione in strategie dominanti
del gioco, ciò implica che per ogni giocatore i la strategia si è la migliore sia
rispetto alle strategie degli avversari contenute in s, che rispetto a tutte le
altre strategie a disposizione degli avversari.
Di contro, se un insieme di strategie s = (s1 , s2 , . . . , sn ) costituisce un
equilibrio di Nash, ogni singola strategia si rappresenta una strategia ottima,
tra le strategie a disposizione del giocatore i, rispetto alle strategie degli
1
2
L’equilibrio di Nash verrà introdotto nel Paragrafo 1.2
Il concetto di ottimo sociale verrà chiarito nel Paragrafo 1.2.2
1.2 Equilibrio di Nash
7
avversari contenute in s, cioè dato che gli altri giocatori giochino proprio le
strategie contenute nell’insieme in esame.
Tornando al dilemma del prigioniero, possiamo osservare come il profilo
di strategie in cui ogni prigioniero accusa l’altro è anche un equilibrio di Nash
(in realtà è l’unico), oltre ad essere un equilibrio in strategie dominanti. Ciò
non deve destare stupore, in quanto è facile dimostrare che un equilibrio in
strategie dominanti è anche un equilibrio di Nash. Il viceversa però non è
vero, e dunque quest’ultimo individua una soluzione per una classe più ampia
di giochi, come si può evincere da un altro gioco molto famoso in letteratura:
la battaglia dei sessi.
La battaglia dei sessi
Due fidanzati devono decidere come trascorrere il pomeriggio; le due alternative possibili sono andare allo stadio o fare shopping. Ognuno dei due
ha una propria preferenza; in particolare, il fidanzato preferisce andare allo
stadio mentre la fidanzata fare shopping. Se i due andranno insieme allo
stadio, il fidanzato riceverà un guadagno in termini di utilità maggiore della
fidanzata; viceversa, se i due andranno a fare shopping sarà la fidanzata ad
ottenere un beneficio maggiore. Inoltre, poiché entrambi preferiscono trascorrere insieme il pomeriggio piuttosto che uscire da soli, se si dovesse verificare
quest’ultima circostanza otterrebbero un beneficio pari a 0. Nella rappresentazione in forma strategica del gioco presente in Tabella 1.2, il fidanzato
sceglie la riga mentre la fidanzata la colonna.
stadio shopping
stadio
(2, 1)
(0, 0)
shopping
(0, 0)
(1, 2)
Tabella 1.2: La battaglia dei sessi
L’analisi della matrice mostra che esistono due profili di strategie in equilibrio di Nash, ovvero i due profili in cui i due fidanzati trascorrono insieme
1.2 Equilibrio di Nash
8
il pomeriggio. Tuttavia può essere facilmente verificato che in questo gioco
non esiste nessun equilibrio in strategie dominanti.
L’equilibrio di Nash è, quindi, un criterio di soluzione di gioco che richiede
vincoli meno stringenti di quello in strategie dominanti. In questa tesi siamo
interessati esclusivamente all’equilibrio di Nash come criterio di soluzione di
gioco.
1.2.1
Esistenza
Nash in [37] ha dimostrato l’esistenza dell’equilibrio per ogni gioco
considerando però strategie miste.
Per quanto riguarda strategie pure, in [37, 42] è dimostrata l’esistenza
dell’equilibrio per una particolare classe di giochi, che non comprende però
quelli con insieme di strategie finito o comunque numerabile, che tipicamente
sono di interesse per le applicazioni informatiche della teoria dei giochi.3
Mostriamo ora un esempio di gioco in cui non esiste un equilibrio di Nash
in strategie pure.
Accoppiamento di monete
Luca e Sara scelgono una faccia della propria moneta: se scelgono la stessa
faccia, Sara deve pagare a Luca 1 euro, altrimenti è Luca a dover pagare a
Sara 1 euro. Il gioco strategico è illustrato in Tabella 1.3, in cui Luca deve
scegliere una riga e Sara una colonna.
testa
croce
testa
(1, −1) (−1, 1)
croce
(−1, 1) (1, −1)
Tabella 1.3: Accoppiamento di monete
3
In particolare è richiesto che gli insiemi di strategie siano convessi, ed un insieme
numerabile di cardinalità maggiore di 1 non è convesso.
1.2 Equilibrio di Nash
9
In questo gioco, gli interessi dei giocatori sono diametralmente opposti e
nessun profilo di strategie è in equilibrio di Nash: i profili di strategie in cui
viene scelta la stessa faccia non sono un equilibrio poiché a Sara conviene
deviare scegliendo l’altra faccia, mentre i profili di strategia in cui vengono
scelte facce diverse non sono in equilibrio poiché a Luca conviene mutare
strategia.
1.2.2
Problematiche algoritmiche
Come illustrato in [39], nelle problematiche recenti dell’informatica, sempre più interessata alla modellazione matematica di sistemi (come Internet)
in cui interagiscono agenti egoisti, la teoria dei giochi riveste una particolare
importanza, e l’equilibrio di Nash è un ottimo candidato per la soluzione di
un tale genere di gioco.
In questo paragrafo illustriamo le principali problematiche algoritmiche
legate all’equilibrio di Nash.
Prima di tutto, è naturalmente di fondamentale importanza assicurare
l’esistenza di tale equilibrio, discussa nel Paragrafo 1.2.1, poiché in generale
un equilibrio di Nash potrebbe non esistere per strategie pure.
Convergenza e tempo di convergenza
Nella teoria dei giochi classica, dato un gioco in forma strategica, si assume che i giocatori razionalmente scelgano la propria strategia, anche prevedendo le possibili mosse degli avversari, in modo da raggiungere immediatamente una condizione di equilibrio. Quando però siamo in presenza di
un numero di giocatori elevato, come avviene in uno scenario reale, tale assunzione sembra essere troppo forte, sia poiché laddove esistono più profili
di strategie in equilibrio di Nash nasce il problema di selezionarne uno, sia
poiché il gioco molto spesso è ad informazione incompleta. Per questo, prendendo spunto dalla teoria dei giochi evolutiva ([48]) e da altri lavori in campo
informatico (si veda [16, 15]), in questa tesi consideriamo il raggiungimento
di un equilibrio di Nash come il risultato di un processo evolutivo in cui ogni
1.2 Equilibrio di Nash
10
giocatore di volta in volta sceglie una strategia in modo da massimizzare la
propria utilità. Laddove nessun giocatore trae beneficio dal mutare la propria strategia, il profilo di strategie correnti è per definizione un equilibrio di
Nash.
Per gioco convergente si intende un gioco in cui la libera evoluzione dei
giocatori conduce sempre ad una situazione di equilibrio. Dunque, un gioco
convergente possiede sempre almeno un equilibrio di Nash, ma non è detto
che in un gioco non convergente non ne esista nessuno.
Un importante parametro è infine il numero di passi (tempo di
convergenza) necessario al raggiungimento di una situazione di equilibrio.
Complessità computazionale
Un altro importante aspetto è quello di individuare algoritmi efficienti
per computare equilibri di Nash. In generale infatti non è noto se esista un
algoritmo polinomiale che calcoli un equilibrio in strategie miste neanche nel
caso di 2 giocatori ([39]).
Inoltre, è interessante anche l’analisi dal punto di vista computazionale
delle funzioni di utilità dei vari giocatori.
Prezzo dell’anarchia
Molto spesso, come ad esempio nel problema del routing in una rete
di comunicazione ([44, 34]), oltre alla soluzione del gioco non cooperativo
data dall’equilibrio di Nash, si è interessati all’ottimizzazione di una funzione
sociale4 W.
Ciò premesso, è interessante valutare quanto la soluzione in equilibrio
di Nash si allontani da quella ottima del problema, ovvero da quella che
ottimizza la funzione sociale.
Sia N l’insieme delle soluzioni del gioco in equilibrio di Nash e W ∗ il
valore ottimo raggiungibile della funzione sociale W. Il coordination ratio o
4
Ad esempio la funzione sociale potrebbe essere la somma delle utilità di tutti i
giocatori.
1.3 Load Balancing
11
prezzo dell’anarchia del gioco G è
ρ(G) = sup
N ∈N
W(N )
W∗
se la funzione sociale è da minimizzare, e
ρ(G) = inf
N ∈N
W(N )
W∗
se la funzione sociale è da massimizzare.
Tornando all’esempio del dilemma dei prigionieri (Tabella 1.1) e considerando come funzione sociale la somma delle utilità dei due prigionieri, si può
osservare come l’unico equilibrio di Nash ha un valore sociale pari a −10,
mentre il valore ottimo della funzione sociale è −2: il coordination ratio del
gioco è 5.
Nei prossimi paragrafi presentiamo due problemi affrontati nella letteratura algoritmica in ambito non cooperativo: il problema del Load balancing
ed il problema del Selfish Routing. I più importanti risultati sono tratti dal
survey [10] di Artur Czumaj.
1.3
Load Balancing
Il problema del Load Balancing (bilanciamento di carico) è stato introdotto da Koutsoupias e Papadimitriou in [33]. Si tratta della versione non
cooperativa del problema dello scheduling con m processori indipendenti con
velocità v1 , . . . , vm e n task con pesi w1 , . . . , wn , ognuno dei quali diviene un
agente che ha a disposizione come insieme di strategie l’insieme dei processori. L’obiettivo sociale è quello di allocare i task ai processori in modo da
minimizzare il massimo carico dei processori.
Dunque, dato un profilo di strategie S = (s1 , . . . , sn ), con si ∈
{1, 2, . . . , m} ∀i ∈ {1, 2, . . . , n}, il costo del task i è
X
1
·
wk
vji k:j =j
k
i
1.3 Load Balancing
12
ed il load del processore j è
1 X
·
wk .
vj k:j =j
k
Inoltre, la funzione sociale è
W=
1 X
·
wk
j∈{1,2,...,m} vj
k:j =j
max
k
e l’ottimo sociale è
W∗ =
1 X
·
wk .
(s1 ,...,sn )∈{1,2,...,m}n j∈{1,2,...,m} vj
k:j =j
min
max
k
Computare l’ottimo sociale è N P-hard anche nel caso di processori con
uguale velocità, come è mostrato in [33].
L’esistenza dell’Equilibrio di Nash in strategie pure è provata in [19], dove è anche mostrato come sia N P-hard computare il migliore ed il peggiore
equilibrio di Nash, e come al contrario esista un semplice algoritmo polinomiale per individuarne uno generico. Inoltre Feldmann in [17] ha ideato uno
PTAS (schema di approssimazione con tempo polinomiale) per computare
l’equilibrio di Nash con minimo costo sociale.
In letteratura la stima del prezzo dell’anarchia è stata effettuata in relazione ad equilibri di Nash in strategie miste. Si tenga comunque presente che
una strategia pura è un caso particolare di strategia mista, e che dunque il
prezzo dell’anarchia non può che migliorare considerando solo strategie pure.
In una strategia mista, ogni agente i sceglie un vettore di probabilità
Pm j
j
tale che
j=1 pi = 1, in cui pi rappresenta la probabilità
(p1i , p2i , . . . , pm
i )
che l’agente i scelga il processore j. In questo modo, ogni task sceglie un
processore in modo casuale secondo la propria distribuzione di probabilità.
Il load atteso del processore j è
n
1 X
`j =
·
wi pji .
vj i=1
Per un task i, il costo atteso sul processore j laddove esso sia il processore
scelto da i è
cji =
wi
1 X
wi
+ ·
wt pjt = `j + (1 − pji ) .
vj
vj t6=i
vj
1.3 Load Balancing
13
Possiamo ora caratterizzare l’equilibrio di Nash in strategie miste. Le probabilità pji con i ∈ {1, 2, . . . , n} e j ∈ {1, 2, . . . , m} definiscono un equilibrio
di Nash in strategie miste se e solo se ∀i ∈ {1, 2, . . . , n}
pji > 0 ⇒ cji ≤ cqi , ∀q ∈ {1, . . . , m}.
In altre parole, nessun agente è incentivato a mutare la propria strategia,
ferme restando le strategie altrui.
Ora possiamo definire in modo preciso il prezzo dell’anarchia. Esprimiamo
innanzitutto il load Cj del processore j a seguito della scelta dei task:
n
1 X
Cj =
·
wi Jij ,
vj i=1
dove Jij sono variabili aleatorie binarie (a valori 0 e 1) tali che Pr[Jij = 1] =
pji . Dunque, la funzione sociale corrispondente ad un equilibrio in strategie
miste è pari al load massimo atteso, ossia
W = E[ max Cj ]
j∈{1,...,m}
e il prezzo dell’anarchia è
W
,
W∗
dove il massimo è sull’insieme di tutti gli equilibri di Nash.
ρ = max
Già Koutsoupias e Papadimitriou in [33] hanno ottenuto diversi risultati
circa il prezzo dell’anarchia:
• per due processori con uguale velocità, il prezzo dell’anarchia è pari a
3/2;
• per due processori generici (non necessariamente con la stessa velocità)
il prezzo dell’anarchia è almeno pari a
√
1+ 5
;
2
• per
con uguale velocità, il prezzo dell’anarchia è
m processori
√
log m
Ω log log m ed è al più 3 + 4m ln m;
1.4 Selfish Routing
14
• per m processori generici q
(non necessariamente con
la stessa velocità) il
Pm vj √
v1
prezzo dell’anarchia è O
j=1 vm log m , dove vj è la velocità
vm
del processore j, e v1 ≥ v2 ≥ · · · ≥ vm .
Inoltre, Czumaj e Vöcking in [11] hanno raffinato la stima per m
processori
con la stessa velocità, ottenendo che il prezzo dell’anarchia è
log m
Θ log log m .
Infine, sempre in [11] sono forniti delle stime tight per il prezzo dell’anarchia nel caso di m processori generici, raffinando la stima di Koutsoupias e
Papadimitriou: il coordination ratio per m processori è




log m
log m 
Θ min
,
.
 log log log m log log vm1 
log
vm
L’analisi nel caso di funzioni di costo non lineari, o di differenti scenari,
esula dagli scopi di questa tesi. Per eventuali approfondimenti si rimanda al
survey [10] di Artur Czumaj.
1.4
Selfish Routing
A differenza del Load Balancing appena illustrato, nel problema del Selfish
Routing (instradamento egoistico) gli agenti sono delle coppie di nodi in una
rete di comunicazione, le quali hanno l’esigenza di comunicare. Nella nostra
analisi, assumeremo che ogni agente è associato ad una frazione trascurabile
del traffico totale (ogni agente potrebbe rappresentare un’automobile in un
sistema autostradale); per l’estensione dei risultati qui riportati a scenari più
reali si veda [44].
Consideriamo una rete diretta G = (V, E) con insieme di nodi V ed
insieme di archi E, e k coppie di nodi (agenti ) {s1 , t1 }, {s2 , t2 }, . . . , {sk , tk };
ad ogni agente {si , ti } è associato un traffico ri . Denotiamo con Pi l’insieme
S
dei percorsi semplici si−ti , e definiamo P = ki=1 Pi . Un flusso è una funzione
f : P → R≥0 , e per un flusso f ed un arco e definiamo
X
fe =
fπ .
π∈P:e∈π
1.4 Selfish Routing
15
Un flusso f si dice ammissibile se per ogni agente i vale
X
fπ = ri .
π∈Pi
Per ogni arco e ∈ E è data una funzione di latenza `e (·) dipendente dal
carico, non negativa, continua e non decrescente. La latenza di un percorso π
rispetto ad un flusso f è naturalmente definita come la somma delle latenze
degli archi del percorso:
`π (f ) =
X
`e (fe ).
e∈π
Infine, dato un flusso f , la funzione sociale è
X
X
W =
`π (f )fπ =
`e (fe )fe .
π∈P
e∈E
Diamo ora due caratterizzazioni dell’equilibrio di Nash:
• Un flusso f ammissibile è in equilibrio di Nash se per ogni i ∈ {1, . . . , k},
π1 , π2 ∈ Pi e δ ∈ [0, fπ1 ] abbiamo
`π1 (f ) ≤ `π2 (f˜),
dove
f˜π =



 fπ − δ se π = π1
fπ + δ se π = π2


 f
altrimenti.
π
In altre parole, in un flusso in equilibrio di Nash nessun agente ha
convenienza a mutare il proprio cammino.
Facendo tendere δ a 0, la continuità e la monotonia delle funzioni di
latenza danno luogo alla seguente caratterizzazione.
• Un flusso f ammissibile è in equilibrio di Nash se e solo se per ogni
i ∈ {1, . . . , k}, π1 , π2 ∈ Pi con fπ1 > 0, vale
`π1 (f ) ≤ `π2 (f ).
1.4 Selfish Routing
16
Un’importante conseguenza di questa caratterizzazione è che in flusso
f in equilibrio tutti i percorsi si−ti ai quali f assegna un flusso positivo
hanno uguale latenza, che denotiamo con Li (f ). Pertanto, è possibile
esprimere la funzione sociale W per un flusso f in equilibrio di Nash
nella forma
W =
k
X
Li (f )ri .
i=1
Si noti come le definizioni di equilibrio sono date per strategie pure. In
ogni modo, come mostrato in [27] per l’assunzione fatta secondo la quale ogni
agente controlla una frazione trascurabile del traffico totale, tale definizione
è sostanzialmente equivalente a quella di equilibri in strategie miste.
Beckmann ed altri [4] hanno dato una caratterizzazione molto elegante di
flusso ottimo (che minimizzi la funzione sociale) come flusso in equilibrio di
Nash con un insieme differente di funzioni di latenza. Dato un arco e ∈ E,
denotiamo con `∗e il costo marginale del flusso in aumento sell’arco e, ovvero
`∗e (x) = `e (x) + x · `0e (x).
Sotto l’assunzione di funzioni di latenza standard, ovvero derivabili e tali
che x · `0e (x) sia convessa su [0, +∞), si ha che un flusso è ottimo se e solo se
è in equilibrio di Nash per l’istanza che si ottiene sostituendo le funzioni di
latenza `e con `∗e .
Da ciò deriva la dimostrazione di esistenza dell’equilibrio di Nash, e il
fatto che il costo sociale di ogni equilibrio è lo stesso.
Occupiamoci ora del prezzo dell’anarchia:
• nel caso di funzioni di latenza generiche, il coordination ratio può essere
arbitrariamente elevato (si veda [10], § 3.3);
• per funzioni di latenza lineari, già in [44] Roughgarden e Tardos hanno
effettuato una stima tight secondo la quale il coordination ratio è pari
a
4
3
≈ 1.333.
1.4 Selfish Routing
17
• In [43], Roughgarden ha ideato una tecnica più generale per la stima
del prezzo dell’anarchia, grazie alla quale è riuscito ad individuare il
coordination ratio per classi più ampie di funzioni di latenza standard:
Funzione di latenza
Rappresentazione tipica
Quadratica
ax2 + bx + c
Cubica
ax3 + bx2 + cx + d
Pp
i
i=0 ai x
Polinomio di grado ≤ p
Prezzo dell’anarchia
√
3 3
√
≈ 1.626
3 3−2 √
3
4
4
√
3
4
4−3
√
(1+p) p 1+p
p
√
=
Θ
p
ln p
(1+p) 1+p−p
Per risultati riguardanti ulteriori classi di funzioni di latenza ed eventuali approfondimenti si rimanda ai lavori [44] e [43] di Roughgarden ed al
survey [10] di Artur Czumaj.
Capitolo 2
Reti ottiche
In questo capitolo viene presentato il modello delle reti ottiche, ed elencati
i principali risultati presenti in letteratura circa il problema del routing in reti
ottiche. Il modello descritto è utilizzato anche per tutti i capitoli successivi
della tesi.
Il problema del routing in reti ottiche è stato largamente studiato dal
punto di vista centralizzato, sia in uno scenario statico, in cui le coppie che
richiedono la comunicazione sono tutte inizialmente note all’algoritmo, sia
in uno scenario on-line e dinamico in cui le richieste arrivano nel tempo e
devono essere servite senza alcuna conoscenza di quelle future.
I principali risultati vengono solo enunciati, ad eccezione di alcuni necessari per i capitoli successivi della tesi, che invece vengono illustrati e dimostrati
in dettaglio.
2.1
Introduzione
Il traffico Internet è aumentato drasticamente negli ultimi anni, cosı̀ come
la richiesta di banda da parte degli utenti. Per questo, l’attuale infrastruttura
elettronica della rete potrebbe non essere adeguata a soddisfare le esigenze
dei prossimi anni, rendendo potenzialmente necessarie nuove tecnologie.
Una fibra ottica offre molta più ampiezza di banda di un convenzionale
2.1 Introduzione
19
cavo in rame, avendone una nell’ordine dei 50T Hz [45]. Inoltre, il suo costo è
accessibile, la probabilità di errore è estemamente bassa (tipicamente 10−12 ,
contro 10−6 dei cavi in rame), e l’attenuazione e la distorsione di segnale sono
molto contenute. Per questi motivi, la fibra ottica è il mezzo di trasmissione
dati più adatto per trasmissioni ad alta velocità e su larga o media scala [41].
Negli ultimi decenni, le fibre ottiche sono state impiegate in due successive generazioni di reti [41]. Nella prima, il loro ruolo era semplicemente quello
di provvedere alla trasmissione per lunghi collegamenti che necessitavano di
ampia banda e bassa percentuale di errore. Tutte le funzioni di switching
e/o routing venivano gestite elettronicamente in modo classico. Il collo di
bottiglia nelle velocità di trasmissione era costituito proprio da questi terminali elettronici presenti agli estremi della fibra ottica (l’ampiezza di banda
è limitata a 10Gb/s in sistemi commerciali); esempi di reti ottiche di prima
generazione sono le reti SONET e SDH.
Viceversa, nella seconda generazione di reti ottiche, funzionalità come il
routing e lo switching sono gestite dal livello ottico della rete ([26]). L’elevata ampiezza di banda è sfruttata tramite la tecnica della multiplazione a
divisione di frequenza (WDM ), che partiziona la banda in più canali ognuno
dei quali utilizza una diversa lunghezza d’onda (o colore) e riesce a lavorare
alle massime velocità permesse da un cavo in rame ([9, 7, 32, 40]).
Le reti ottiche WDM possono essere classificate in due categorie:
broadcast-and-select e switched. Ambedue le categorie possono essere ulteriormente divise differenziando le reti ottiche a singolo hop (chiamate alloptical ), nelle quali il segnale viaggia lungo tutto il percorso di comunicazione
come luce e quindi può subire unicamente conversioni ottiche, da quelle multihop nelle quali invece il segnale può essere convertito (e riconvertito) in (e
dalla) forma elettronica.
Nelle reti broadcast-and-select, la trasmissione per ogni nodo è inviata
in broadcast a tutti i nodi della rete, ed è compito del ricevente estrarre il
proprio segnale da tutti quelli che gli giungono. Sebbene tali reti siano poco
costose e molto semplici da realizzare poiché impiegano unicamente compo-
2.2 Modello
20
nenti ottici passivi, esse hanno gravi limitazioni che rendono improponibile la
loro estensione a reti di area locale. Inoltre, necessitano di un elevato numero
di lunghezze d’onda anche per soddisfare un modesto traffico.
Una rete ottica switched è formata da nodi interconnessi da link in fibra
ottica. I nodi possono essere terminali (che inviano e ricevono dati), switch
(che direzionano i dati ricevuti in input ad una o più porte di output) o
altro; essi comunicano inviando segnali di lunghezze d’onda differenti lungo
gli archi di comunicazione della rete. In questa tipologia di rete, la stessa
lunghezza d’onda può essere impiegata in comunicazioni di coppie di nodi
differenti, che non condividano alcun link della rete.
Per reti all-optical con conversione ottica di lunghezza d’onda in [8] sono
riportati i maggiori risultati presenti in letteratura.
In questa tesi ci occuperemo di reti ottiche switched, all-optical e senza
conversione ottica di lunghezze d’onda. In una tale rete, una comunicazione
tra due nodi richiede la presenza di un percorso lungo il quale venga impiegata
una unica lunghezza d’onda che sia differente da quelle utilizzate dalle altre
comunicazioni che si servono degli archi dello stesso percorso.
2.2
Modello
Ci sono molti modi naturali con i quali una rete ottica può essere modellata. In questa tesi sarà utilizzato perlopiù il modello descritto nel Paragrafo
2.2.1, che fa uso di un grafo non diretto per descrivere la topologia della rete.
Verrà poi descritto un altro modello largamente presente in letteratura,
che fa uso di grafi diretti simmetrici per descrivere la topologia della rete.
2.2.1
Reti ottiche non dirette
In questo modello la rete di comunicazione è un grafo non diretto G =
(V, E), in cui V ed E rappresentano rispettivamente l’insieme dei nodi e degli
archi della rete.
2.2 Modello
21
Definizione 2.1 (Richiesta). Una richiesta è una coppia di nodi {x, y} che
ha l’esigenza di comunicare.
Si noti che una richiesta di comunicazione è bidirezionale.
Definizione 2.2 (Percorso). Un percorso P (α), con α = {x, y}, è un
insieme di archi consecutivi che connettono i nodi x ed y.
℘α è l’insieme di tutti i percorsi presenti nella rete che connettono i nodi
x ed y.
Estendendo la definizione agli archi, Eα = {e ∈ E| e ∈ P (α), P (α) ∈ ℘α }
Definizione 2.3 (Istanza). Un’istanza I è una collezione di richieste. Si
noti che una richiesta {x, y} può apparire più di una volta in un’istanza.
Definizione 2.4 (Routing puro). Un routing puro R = {P (x, y)|{x, y} ∈
I} per un’istanza I in un grafo G è un insieme di percorsi per le richieste in
istanza.
Indichiamo inoltre con R({x, y}) il percorso associato nel routing puro R
alla richiesta {x, y}, ovvero R({x, y}) = P ({x, y}) con P ({x, y}) ∈ R.
Definizione 2.5 (Routing completo). Un routing completo o più semplicemente un routing R = (RR , cR ) per un’istanza I in G è una coppia in cui
RR è un routing puro per I in G e cR : I → W (con W = {1, 2, 3, . . .} insieme di lunghezze d’onda) è una funzione che associa una lunghezza d’onda
ad ogni richiesta dell’istanza.
Indichiamo inoltre con C(R) il numero di lunghezze d’onda impiegate dal
routing R.
Definizione 2.6 (Grafo dei conflitti). Il grafo dei conflitti associato al
routing puro R è il grafo non diretto Gc = (R, F ) in cui due nodi (percorsi
di routing) sono adiacenti se e solo se condividono un arco in G.
Definizione 2.7 (Numero cromatico). Il numero cromatico associato ad
un grafo G è il numero minimo di colori necessario per colorare i nodi di G
in modo tale che due nodi adiacenti siano colorati con colori differenti.
2.2 Modello
22
Definizione 2.8 (Problema). Data la rete con topologia G e l’istanza I, il
problema (G, I) consiste nell’individuare un routing R per l’istanza I, ovvero
nell’assegnare ad ogni richiesta {x, y} ∈ I un percorso ed una lunghezza
d’onda (un colore) in modo che non esista una coppia di percorsi con lo
stesso colore che condividano un arco del grafo G (condizione nodale).
Utilizzando la definizione di grafo dei conflitti, possiamo equivalentemente
dire che risolvere il problema (G, I) consiste nell’individuare un routing puro
R, ed una colorazione dei vertici del grafo dei conflitti (R, F ) tale che due
vertici adiacenti sono colorati con colori differenti.
Denotiamo con w(G, I, R) il numero cromatico del grafo dei conflitti
(R, F ). Sia inoltre w(G, I) = minR w(G, I, R). In altre parole w(G, I, R)
è il minimo numero di lunghezze d’onda necessarie per il routing puro R,
e w(G, I) (o più brevemente w se non c’è ambiguità) è il minimo numero
di lunghezze d’onda utilizzate dal routing ottimo R∗ del problema (G, I),
ovvero C(R∗ ) = w.
2.2.2
Reti ottiche dirette
In questo modello di rete ottica, la topologia della rete è rappresentata
da un grafo diretto simmetrico, cioè da un grafo G = (V, E) in cui
(x, y) ∈ E ⇒ (y, x) ∈ E.
Definizione 2.9 (Richiesta). Una richiesta è una coppia ordinata di nodi
(x, y). Il nodo x ha l’esigenza di comunicare con il nodo y.
Si noti che una richiesta di comunicazione è unidirezionale.
Definizione 2.10 (Cammino). Un cammino P ((x, y)) è un insieme di archi
consecutivi che connettono il nodo x al nodo y.
Tutte le altre definizioni presentate nel paragrafo 2.2.1 si modificano in
modo naturale per la descrizione di questo modello, tenendo conto che le
richieste sono unidirezionali e che ai percorsi si sostituiscono i cammini.
Per non creare ambiguità di notazione, indicheremo sempre ~· tutti i
parametri che si riferiscono a questo modello:
2.2 Modello
23
• w(G,
~
I, R) è il minimo numero di lunghezze d’onda necessarie per il
routing puro R;
• w(G,
~
I) (o più brevemente w
~ se non c’è ambiguità) è il minimo numero di lunghezze d’onda utilizzate dal routing ottimo R∗ del problema
(G, I), ovvero C(R∗ ) = w.
~
2.2.3
Un parametro correlato ed alcuni risultati
La definizione seguente introduce un nuovo parametro utile per limitare
inferiormente la soluzione ottima del problema, sia nel caso di topologie con
grafo diretto che non diretto [3].
Definizione 2.11 (Load). Data una rete non diretta G = (V, E) ed un
routing R per un’istanza I, il load π(G, I, R, e) di un arco e ∈ E è il numero
di percorsi di R contenenti e.
Inoltre, il load π(G, I, R) del routing R in G è il massimo load di ogni
arco di G rispetto al routing R, cioè π(G, I, R) = maxe∈E π(G, I, R, e).
Infine, il load π(G, I) (o π se non c’è ambiguità) di un’istanza I in una
rete G è il minimo load di G in tutti i routing R per l’istanza I, cioè π(G, I) =
minR π(G, I, R).
La definizione si estende in modo naturale alle reti dirette, per le quali il
parametro di load è indicato ~π .
Lemma 2.2.1. w(G, I) ≥ π(G, I) (w(G,
~
I) ≥ ~π (G, I)) per ogni istanza I e
rete G.
In altre parole, il load è un lower bound per la soluzione ottima del
problema sia nel caso non diretto che in quello diretto.
Lemma 2.2.2. Ogni routing su reti non dirette induce un routing su reti
dirette, e un’assegnazione di lunghezze d’onda ammissibile per reti non dirette
è anche ammissibile per reti dirette. Dunque w(G, I) ≥ w(G,
~
I).
Nota 2.1. A prima vista potrebbe sembrare che, essendo π ≤ 2~π , valga anche w ≤ 2w,
~ ma ciò non è vero.
Se infatti si considera la rete
2.3 Routing statico
24
G = {{0, 1, 2, 3}, {{0, 1}, {0, 2}, {0, 3}}} e l’istanza I = {(1, 2), (2, 3), (3, 1)},
w = 3 e w
~ = 1. Inoltre in [1] è mostrato come il rapporto
w
w
~
può essere
arbitrariamente grande.
2.2.4
Istanze speciali
In una rete con topologia G = (V, E) è possibile definire istanze speciali1 :
• L’istanza All-to-All è l’istanza
IA = {{x, y}|x, y ∈ V ∧ x 6= y}
in cui ogni nodo ha l’esigenza di comunicare con tutti gli altri.
• Un’istanza One-to-All è
I0 = {{x0 , y}|y ∈ V ∧ x0 6= y}
dove x0 ∈ V . In altre parole, è un’istanza in cui un nodo ha l’esigenza
di comunicare con tutti gli altri.
• Un’istanza One-to-Many è un sottoinsieme di una qualche istanza Oneto-All
• Una k-relazione è un’istanza Ik in cui ogni nodo è coinvolto in non più
di k richieste. Una permutazione è una 1-relazione.
2.3
Routing statico
In uno scenario statico, tutte le richieste in istanza sono note all’algoritmo
all’inizio della computazione.
Un generico problema (G, I) su reti ottiche dirette è stato dimostrato essere N P-hard da Erlebach e Jansen in [12]. In particolare, in [12] è mostrato
1
Le istanze sono definite per reti non dirette, ma la loro estensione a reti dirette è
immediata.
2.3 Routing statico
25
essere N P-hard per alberi ed anelli. In [13] questi risultati sono stati estesi
ad alberi binari. La N P-completezza per il modello non diretto era conosciuta già prima dell’avvento delle reti ottiche WDM. In dettaglio, in [25] è
provata la N P-completezza per alberi, estesa in [12] anche agli anelli. Infine,
in [13] il problema è stato dimostrato essere efficientemente risolvibile per
alberi non diretti con grado limitato.
Quest’ultimo risultato, confrontato con quello di N P-hardness per alberi
binari diretti, potrebbe far pensare che il caso diretto è più difficile di quello
non diretto. Ciò in generale non è vero: in una rete a stella, nel caso diretto il
problema può essere efficientemente computato, mentre nel caso non diretto
rimane N P-completo.
Risultati presenti in letteratura per istanze particolari sono riassunti
ed elencati in [3]. Riportiamo di seguito i maggiori risultati per topologie
particolari di rete, analizzate anche in questa tesi dal punto di vista non
cooperativo.
Catene
Il problema del routing su catene è efficientemente computabile2 sia per
reti dirette che non dirette, ed in [22] è mostrato come sia equivalente alla
colorazione di grafi a intervalli. Inoltre, si ha che il numero di colori necessari
e sufficienti è pari al massimo load π delle richieste.
Alberi
Per quanto riguarda reti dirette, Kaklamanis ed altri hanno dimostrato il
seguente teorema.
Teorema 2.3.1 ([29]). Esiste un algoritmo efficiente per risolvere il problema del routing (G, I) per ogni istanza I ed albero G che usa al più
lunghezze d’onda.
2
Computabile da un algoritmo con complessità temporale polinomiale.
5~
π (G,I)
3
2.3 Routing statico
26
Inoltre, in ogni rete diretta con topologia ad albero esistono problemi con
load ~π arbitrariamente grande, tali che
w
~
~
π
> 54 .
Erlebach ed altri in [14] hanno elaborato anche un algoritmo efficiente
greedy con lo stesso rapporto di approssimazione.
Per le reti ottiche non dirette vale invece il seguente teorema.
Teorema 2.3.2 (Erlebach e Jansen [12]). Esiste un algoritmo efficiente
per risolvere il problema del routing (G, I) per ogni istanza I ed albero G che
usa al più b1.1w(G, I) + 0.8c lunghezze d’onda.
Sempre nel caso non diretto, ci sono esempi in cui il rapporto
w
π
tende
asintoticamente a 3/2.
Anelli
Per le topologie ad anello si è soliti in letteratura separare il problema dell’assegnazione dei percorsi di routing da quello dell’assegnazione di lunghezze
d’onda.
Il teorema seguente ci assicura che è possibile trovare in modo efficiente
un’assegnazione di percorsi che minimizzi il load.
Teorema 2.3.3 (Frank ed altri [20]). Esiste un algoritmo con complessità temporale lineare per trovare per ogni istanza I e anello non diretto A
un’assegnazione di percorsi R tale che π(A, I, R) = π(A, I).
Una volta fissati i percorsi, il problema dell’assegnamento di lunghezze
d’onda diviene in entrambi i modelli (diretto e non) equivalente al problema di colorazione di vertici in grafi ad archi circolari, che è provato essere
N P-completo in [21]. Tuttavia, esiste un algoritmo efficiente con un buon
rapporto di approssimazione.
Dato un routing puro R per un’istanza I in una rete con topologia ad
anello A, Tucker [47] ha formulato un algoritmo polinomiale che risolve il
problema dell’assegnazione di colori usandone al più 2π(A, I, R) − 1 (Tucker
ha anche mostrato come esistano istanze in cui tale numero di colori è necessario). Combinato con il precedente teorema, questo risultato fornisce un
2.4 Routing on-line
27
efficiente algoritmo 2-approssimante per il problema in anelli non diretti. I
risultati sono comunque estendibili ad anelli diretti ([35]).
2.4
Routing on-line
In uno scenario on-line, le richieste arrivano all’algoritmo in momenti
temporali distinti. Appena giunge una richiesta, l’algoritmo deve decidere
il suo routing, ed inoltre questa scelta è definitiva, nel senso che l’arrivo di
nuove richieste non può far mutare il routing di quelle già presenti.
In letteratura il problema è stato studiato soprattutto in relazione a
specifiche topologie di rete, come è possibile rilevare in [18].
Per quanto riguarda le catene, il problema è equivalente alla colorazione on-line di un grafo ad intervalli, essendo in questo caso tale il grafo dei
conflitti. Questo problema è stato studiato da Kierstead e Trotter [30] che
presentano un algoritmo on-line ottimale 3-competitivo che usa al più 3π − 2
colori. L’algoritmo di Slusarek presentato nel Paragrafo 2.4.1 estende questi
risultati agli anelli.
Per quanto riguarda gli anelli, un semplice approccio al problema impiegato da diversi autori ([23, 35]) consiste nel tagliare l’anello in un arco per
risolvere il problema sulla catena risultante. Naturalmente tutti i rapporti di
competitività devono essere raddoppiati poiché il taglio dell’anello induce un
load che è al più il doppio di quello ottimo.
In presenza di percorsi prefissati, il problema si riduce alla colorazione di
un grafo ad archi circolari che è stato investigato nella versione on-line da
Slusarek.
2.4.1
Un algoritmo on-line per anelli
Questo algoritmo presentato da Slusarek in [46] effettua l’assegnazione online di lunghezze d’onda alle richieste (con percorsi prefissati) che giungono
in istanti temporali differenti. Si dimostra come questo algoritmo usi al più
2.4 Routing on-line
28
3L − 2 lunghezze d’onda, dove L = π(An , I, R) è il load delle richieste in
istanza nel routing puro prefissato R.
Definizioni e notazione
R denota il routing puro prefissato (per ogni richiesta α, R(α) è il percorso
corrispondente ad α).
L’insieme di lunghezze d’onda viene partizionato in ripiani contenenti più
livelli; ognuno di questi ultimi è associato ad un colore. Dunque assegnare
un colore ad una richiesta α = {xα , yα } vuol dire assegnarle un ripiano sh(α)
ed un livello lv(α) relativo ad esso.
Shi ⊆ I, i = 0, 1, . . . è l’insieme delle richieste a cui è stato assegnato il
ripiano i.
Per ogni arco e dell’anello ed insieme F di richieste, l’overlap r(e|F )
indica il numero di richieste in F che utilizzano l’arco e; in modo naturale
tale definizione si estende ad un percorso o più in generale ad un insieme di
archi P :
r(P |F ) = max r(e|F ).
e∈P
Infine, nell’analisi dell’algoritmo Fj ⊆ I denota l’insieme di richieste
{α1 , α2 , . . . , αj−1 } giunte all’algoritmo prima di αj , e Ti ⊆ I denota le richieste assegnate dopo la conclusione dell’algoritmo ai ripiani Sh0 ∪Sh1 ∪. . .∪Shi .
Pertanto, l’espressione
r(R(αj )|Fj ∩ Ti )
indica il massimo overlap lungo il percorso di αj rispetto a tutti i primi i
ripiani esattamente nel momento in cui la richiesta αj giunge all’algoritmo.
L’algoritmo
L’algoritmo distribuisce le richieste nei ripiani in modo tale da mantenere
contenuta la sovrapposizione all’interno di ogni ripiano. Più precisamente, ad
una data richiesta α l’algoritmo assegna il ripiano i con indice più piccolo, tale
che l’overlap del percorso R(α) rispetto alle richieste in Sh0 ∪ Sh1 ∪ . . . ∪ Shi
2.4 Routing on-line
29
sia al più i. Una volta individuato il ripiano, l’algoritmo assegna il livello più
piccolo disponibile ad α, seguendo una strategia F irst − F it.
Input Una sequenza di richieste (α1 , α2 , . . . , αn )
Per ogni i, Shi := ∅;
for j = 1, 2, . . . , n
leggi la prossima richiesta αj ;
i := 0;
while r(R(αj )|Sh0 ∪ Sh1 ∪ . . . ∪ Shi ) > i do
i := i + 1;
sh(αj ) := i;
l := 1;
while esiste α0 ∈ Shi tale che lv(α0 ) = l e R(αj ) ∩ R(α0 ) 6= ∅ do
l := l + 1;
lv(αj ) := l;
Shi := Shi ∪ {αj };
next
Analisi dell’algoritmo
Lemma 2.4.1. Se p < q, per ogni i
r(R(αp )|Fp ∩ Ti ) ≤ r(R(αp )|Fq ∩ Ti ).
Dimostrazione. Il lemma segue immediatamente dal fatto che Fp ⊆ Fq .
Lemma 2.4.2. Se R(αp ) ∩ R(αq ) 6= ∅ e sh(αp ) = sh(αq ) = i con p 6= q e
i > 0, allora
r(R(αp ) ∩ R(αq )|Fmax{p,q} ∩ Ti−1 ) ≤ i − 1.
Si noti come R(αp ) ∩ R(αq ) può essere visto come un insieme di uno o
due percorsi (l’ultimo caso si ha se e solo se R(αp ) e R(αq ) coprono l’intero
anello).
2.4 Routing on-line
30
Intuitivamente, se a due percorsi con disgiunti è assegnato lo stesso ripiano, allora non è la loro intersezione a non aver permesso che a loro fosse
assegnato un ripiano più basso.
Dimostrazione. Senza perdita di generalità, sia p < q, e supponiamo per
assurdo che
r(R(αp ) ∩ R(αq )|Fq ∩ Ti−1 ) > i − 1.
Allora, poiché Ap ∈ Shi e Aq è colorato dopo Ap , deve essere
r(R(αp ) ∩ R(αq )|Fq ∩ Ti ) > i
che contraddice Aq ∈ Shi .
Lemma 2.4.3. Per ogni i, se sh(αp ) = sh(αq ) = i con p 6= q, allora né
R(αp ) ⊆ R(αq ) né R(αq ) ⊆ R(αp ).
Dimostrazione. Per i = 0 la tesi è ovvia.
Se i > 0, procediamo per assurdo assumendo senza perdita di generalità
che R(αp ) ⊆ R(αq ) e distinguiamo due casi.
• Se p > q, dal Lemma 2.4.2
r(R(αp )|Fp ∩ Ti−1 ) ≤ i − 1;
• se p < q, dal Lemma 2.4.2
r(R(αp )|Fq ∩ Ti−1 ) ≤ i − 1,
e dal Lemma 2.4.1
r(R(αp )|Fp ∩ Ti−1 ) ≤ r(R(αp )|Fq ∩ Ti−1 ) ≤ i − 1.
In ambedue i casi, dunque, alla richiesta αp sarebbe dovuto essere
assegnato un ripiano più basso Shj con j < i: una contraddizione.
Lemma 2.4.4. Nel ripiano Sh0 è utilizzato solo un livello. Per ogni i > 0,
il più grande livello usato nel ripiano Shi è al più 3.
2.4 Routing on-line
31
Dimostrazione. Il lemma è ovvio per il ripiano Sh0 .
Fissato un i > 0 procediamo per assurdo supponendo che alla richiesta
αj sia stato assegnato il livello 4 del ripiano i-esimo. Poiché i livelli sono
assegnati con la strategia First-Fit, R(αj ) ha intersezione non vuota con i
percorsi di almeno altre tre richieste, sempre posizionati sul ripiano Shi con
i livelli 1, 2 e 3. Per il Lemma 2.4.3, nessuno di essi può essere contenuto in
R(αj ), e quindi almeno due di loro devono intersecare R(αj ) in uno dei due
archi estremi. Siano αk e αl le richieste corrispondenti a tali percorsi, e sia
e0 l’arco estremo di R(αj ) in questione; senza perdita di generalità, sia αl la
richiesta il cui percorso è contenuto nell’unione dei percorsi delle altre due
richieste.
Applicando il Lemma 2.4.2 a αj e αl otteniamo
r(R(αj ) ∩ R(αl )|Fmax{j,l} ∩ Ti−1 ) ≤ i − 1,
ed applicandolo a αk e αl otteniamo
r(R(αk ) ∩ R(αl )|Fmax{k,l} ∩ Ti−1 ) ≤ i − 1.
Dunque, essendo R(αl ) = (R(αl ) ∪ R(αk )) ∪ (R(αl ) ∪ R(αj )) e l ≤
min{max{j, l}, max{k, l}} otteniamo
r(R(αl )|Fl ∩ Ti−1 ) ≤ i − 1,
e quindi l’algoritmo avrenne dovuto assegnare alla richiesta αl un ripiano più
basso Shi0 con i0 < i: una contraddizione.
Lemma 2.4.5. Il numero n di ripiani usati dall’algoritmo è al più L.
Dimostrazione. Consideriamo una qualsiasi richiesta αj cui l’algoritmo ha
assegnato il ripiano più alto Shi . Per la scelta dell’algoritmo, deve essere
r(R(αj )|Fj ∩ Ti−1 ) > i − 1.
Dunque, per un qualche arco e ∈ R(αj ) deve valere
r(e|Fj+1 ) > i.
2.4 Routing on-line
32
Poiché i denotava l’indice del ripiano più alto, essendo i ripiani numerati
da 0, si ha
n = i + 1 ≤ r(e|Fj+1 ) ≤ L.
Essendo il load L è un lower bound al numero minimo di colori necessario, dal Lemma 2.4.4 e dal Lemma 2.4.5 segue il risultato di competitività
dell’algoritmo.
Teorema 2.4.6 (Slusarek [46]). Il numero di colori usato dall’algoritmo
on-line di Slusarek per colorare un insieme di richieste con percorsi prefissati
inducenti un load L è al più 3L − 2.
2.4.2
Algoritmo on-line per alberi O(log n)-competitivo
In questo paragrafo illustriamo un algoritmo on-line per alberi proposto da Bartal
e Leonardi [2], i quali hanno anche provato il lower bound
log |I|
Ω log log |I| per algoritmi deterministici, ottenuto su un albero di profondità
log |I|.
Definizione 2.12 (Grafo d-induttivo). Un grafo è d-induttivo se e solo se
i suoi n vertici possono essere numerati da 1 a n in modo che ogni vertice sia
adiacente al più a d vertici con un numero maggiore.
Irani in [28] ha mostrato come la strategia First-Fit, che assegna ad ogni
vertice il colore più basso disponibile, colori on-line un grafo d-induttivo
costituito da n nodi con O(d log n) colori.
Il seguente teorema di Bartal e Leonardi, combinato con il risultato appena esposto, dimostra come la strategia First-Fit risolva il problema del
routing per alberi (T ree, I) utilizzando O(log |I|) colori.
Teorema 2.4.7. Sia T un albero; il grafo dei conflitti associato al problema
(T,I) è 2(π(T, I) − 1)-induttivo.
2.5 Routing dinamico
33
Dimostrazione. Mostriamo come tutte le richieste (corrispondenti ai vertici
del grafo dei conflitti) possono essere numerate in modo tale da essere in
conflitto con al più 2(π(T, I) − 1) richieste con un numero più alto.
Attuiamo un processo di modifica dell’albero mentre assegnamo numeri
progressivi alle richieste. Ogni richiesta è associata ad un percorso sull’albero;
tali percorsi vengono accorciati in modo opportuno durante il processo di
modifica, fino a quando i loro estremi vengono a coincidere: un tale percorso
sarà chiamato concluso. Il processo di modifica avviene rimuovendo foglie
dall’albero, e quindi accorciando tutti i percorsi che avevano un unico estremo
coincidente con esse. Se un percorso invece è concluso e dunque entrambi i
suoi estremi coincidono con una foglia, la richiesta a lui corrispondente viene
numerata ed il percorso rimosso completamente dall’albero.
Consideriamo una generica richiesta α associata con un percorso concluso
ad una foglia l. Tra tutte le richieste con numero più alto, tale richiesta può
essere in conflitto solo con quelle associate con altri percorsi che in quel
momento hanno l come estremo. Più precisamente, nel grafo originale, il
percorso associato ad α usa al più due archi adiacenti a l, e dunque può
essere in conflitto con al più 2(π(T, I) − 1) altre richieste con numero non
ancora assegnato (e quindi più alto).
2.5
Routing dinamico
Lo scenario dinamico si differenzia da quello on-line, generalizzandolo,
unicamente per il fatto che le richieste, oltre a poter arrivare in tempi diversi, possono anche andare via in qualsiasi momento. Anche in questo caso,
quando giunge una richiesta, l’algoritmo deve decidere il suo routing, ed
inoltre questa scelta è definitiva, nel senso che l’arrivo o la partenza di altre
richieste non può far mutare il routing di quelle presenti.
In letteratura il problema è stato studiato da Gerstel ed altri [24, 23]
in riferimento a topologie ad anello e albero, nell’ambito di reti ottiche non
dirette.
2.5 Routing dinamico
34
Anelli
Anche l’approccio seguito in [23] prevede di suddividere il problema del
routing in quello del routing puro ed in quello dell’assegnazione di lunghezze
d’onda.
Per quanto riguarda l’assegnazione delle lunghezze d’onda dato un routing puro fissato R, in [23] è presentato un algoritmo che utilizza al più
π(An , I, R) + π(An , I, R)dlog2 ne colori in un anello An costituito da n nodi.
Inoltre, è anche stimato un lower bound nel caso dinamico pari a
π(An , I, R) + 0.5π(An , I, R) log2 n colori.
Infine, viene analizzato il comportamento dell’algoritmo First-Fit che
assegna sempre il colore più piccolo disponibile ad una richiesta.
Teorema 2.5.1 (Gerstel). Il numero di colori utilizzati dall’algoritmo
First-Fit, dato un routing puro R per un’istanza I in un anello An , è al
più 2.53π(An , I, R) log2 n + 5π(An , I, R).
Dimostrazione. Sia W (H, L) il massimo colore utilizzato da un percorso di
lunghezza al più H a seguito dell’applicazione dell’algoritmo First-Fit ad una
rete con topologia ad anello An con load al più L.
Dimostriamo dapprima per induzione su H che per H ≥ 1,
W (3H, L) ≤ 4L − 3 + W (H, L).
Consideriamo un generico percorso p = {e1 , e2 , . . . , ek } di lunghezza k ≤ 3H.
Procediamo per casi:
• Se k ≤ H, a p può essere assegnato un colore al più pari a W (H, L)
per ipotesi induttiva.
• Se H < k ≤ 3H, mostriamo come nell’insieme W ∗ = {W (H, L) +
1, W (H, L) + 2, . . . , W (H, L) + 4L − 3} sia presente un colore che può
essere assegnato a p.
Siano e1 , edk/3e , ed2k/3e , ek gli archi critici per p. Poiché i percorsi
che utilizzano colori in W ∗ hanno lunghezza almeno pari ad H + 1 >
2.5 Routing dinamico
35
k/3, ognuno di essi deve utilizzare almeno un arco critico. Per questo
possiamo affermare che il numero di tali percorsi è al più 4(L − 1).
Poiché in W ∗ sono presenti 4(L − 1) + 1 colori, certamente ne esiste
uno disponibile per p.
Il teorema segue dal fatto che, essendo W (1, L) = L,
W (H, L) ≤ (4L − 3)dlog3 he + L
e dal fatto che la lunghezza di un percorso è al più n.
Alberi
Per reti con topologia ad albero, sempre in [23] è presentato un algoritmo
che risolve il problema del routing utilizzando al più (2π−1)dlog2 ne lunghezze
d’onda.
Capitolo 3
Prezzo dell’anarchia
in reti ottiche
In questo capitolo viene affrontato il problema del routing in reti ottiche
in un contesto non cooperativo, in cui ogni coppia di nodi della rete presente
in istanza è un agente egoista, ovvero un giocatore alla ricerca della strategia
che per lui risulta essere migliore.
Utilizzeremo in particolare il concetto di equilibrio di Nash in strategie
pure descritto nel Paragrafo 1.2: nel momento in cui nessun agente trae vantaggio dal mutare la propria strategia di routing ferme restando le strategie
altrui, si è pervenuti in una situazione di equilibrio che è la soluzione non
cooperativa del problema del routing.
L’obiettivo è quello di incentivare gli agenti a raggiungere, sebbene operino in modo egoistico e non cooperativo, una soluzione non lontana dalla
soluzione ottima, che abbia cioè un basso prezzo dell’anarchia 1 .
Abbiamo individuato diversi scenari in cui possono trovarsi gli agenti, a
seconda dell’informazione detenuta circa lo stato della rete e l’istanza del problema; per ognuno di tali scenari proponiamo alcune funzioni di pagamento,
che hanno lo scopo di raggiungere il nostro obiettivo.
1
La funzione sociale considerata in questa tesi è il numero di lunghezze d’onda utilizzate
per effettuare il routing
3.1 Modello
3.1
37
Modello
La gran parte del modello cui faremo riferimento è già stata descritta nel
paragrafo 2.2.1.
Per la nostra analisi nel caso non cooperativo, si rendono necessarie anche
le seguenti definizioni.
Definizione 3.1 (Agente). Ogni richiesta α = {x, y} ∈ I è un agente.
Definizione 3.2 (Funzione di prezzatura). Dato l’insieme delle lunghezze
d’onda (o colori) disponibili W = {1, 2, 3, . . .}, una funzione di prezzatura
f : W → R>0 è una funzione che associa ad ogni colore un prezzo positivo.
Senza perdita di generalità assumiamo f non decrescente2 .
Definizione 3.3 (Stato della rete). Lo stato della rete di comunicazione
G indotto da un routing R è una funzione σR : E → 2W che associa ad ogni
arco della rete l’insieme delle lunghezze d’onda utilizzate lungo esso.
A
la restrizione della funzione σR al dominio A ⊆ E.
Si indica con σR
Laddove chiara dal contesto, l’indicazione notazionale del routing R verrà
omessa per una maggiore leggibilità.
Definizione 3.4 (Stato dei percorsi della rete). Sia ℘ =
S
α∈I
℘α . Lo
stato dei percorsi della rete di comunicazione G indotto dal routing R è
una funzione σ̄R : ℘ → 2W che associa ad ogni percorso della rete l’insieme
delle lunghezze d’onda utilizzate lungo almeno un arco del percorso. Più
S
formalmente, σ̄R (P (x, y)) = e∈P (x,y) σR (e).
A
Si indica con σ̄R
la restrizione della funzione σ̄R al dominio A ⊆ ℘.
Laddove chiara dal contesto, l’indicazione notazionale del routing R verrà
omessa per una maggiore leggibilità.
Definizione 3.5 (Funzione di pagamento e livello di informazione).
Data una funzione di prezzatura f e un routing R relativo ad un’istanza I
su una rete G, una funzione di pagamento pR : I → R≥0 (o semplicemente
2
Essendo il dominio di f discreto, è sempre possibile effettuare un riordinamento dei
colori che renda f non decrescente
3.1 Modello
38
p : I → R≥0 ) è una funzione non negativa che associa ad ogni agente un costo
da corrispondere al gestore della rete di comunicazione per la fruizione del
servizio.
Ogni funzione di pagamento pR (β) = ∞ per ogni agente β la cui richiesta
di comunicazione non è soddisfatta dal routing R.3 Ciò vuol dire che gli
agenti sono disposti a comunicare ad ogni costo.
In generale una funzione di pagamento pR potrebbe dipendere da un
insieme di informazioni più ristretto del routing R ad essa associato, ma
comunque indotto da esso. Per precisare meglio ciò, introduciamo il concetto
di livello di informazione 4 :
Informazione minimale Questo livello di informazione dà ad ogni singolo
agente unicamente informazione su quali lunghezze d’onda sono disponibili lungo i vari percorsi che connettono i due nodi relativi all’agente
stesso.
In questo caso la funzione di pagamento p relativa all’agente α non
può dipendere dall’istanza I e dallo stato della rete di comunicazione; può dipendere da σ̄ ℘α , cioè dallo stato dei percorsi della rete di
comunicazione con dominio ristretto ai percorsi relativi all’agente α.
Informazione intermedia Questo livello di informazione dà ad ogni singolo agente la conoscenza di quali lunghezze d’onda sono disponibili e
quali occupate in ogni arco utilizzato dai percorsi che connettono i due
nodi relativi all’agente stesso.
In questo caso la funzione di pagamento p relativa all’agente α non può
dipendere dall’istanza I, ma può dipendere dallo stato σ Eα della rete
di comunicazione con dominio ristretto agli archi relativi all’agente α.
3
4
vedi nota 3.1
Come evidenziato nei successivi paragrafi, il livello di informazione in una rete ottica
reale può dipendere da limitazioni tecnologiche della rete come da politiche di privacy
attuate dal gestore o imposte dalla legge; si tenga conto a proposito del fatto che una
funzione di pagamento in un contesto non cooperativo e fortemente decentralizzato deve
essere computata dal singolo agente che richiede il servizio di comunicazione
3.1 Modello
39
Informazione completa Questo livello di informazione dà ad ogni singolo
agente informazione completa sull’istanza del problema e sullo stato
corrente della rete.
In questo caso la funzione di pagamento p di ogni agente può dipendere
dall’istanza I e dal routing R.
In modo naturale, in qualsiasi livello di informazione pR=(R,c) (α) può dipendere anche dalla lunghezza d’onda c(α) e dal percorso R(α) dell’agente α
nel routing R.
Si noti che anche con il livello di informazione minimale un agente è in
grado di posizionarsi su un percorso con una lunghezza d’onda valida, tale
cioè da non interferire con nessuna altra lunghezza d’onda presente lungo
lo stesso percorso, rispettando in questo modo la condizione nodale per un
problema su reti ottiche, illustrata nella Definizione 2.8.
Definizione 3.6 (Routing in equilibrio di Nash). Un routing R è in
equilibrio di Nash se e solo se per ogni agente α ∈ I e per ogni routing R0
che differisce da R unicamente per il percorso e/o il colore dell’agente α si
ha
pR (α) ≤ pR0 (α)
Nota 3.1. I routing considerati nel caso non cooperativo sono anche i routing
parziali, ovvero quelli in cui c’è solo una parziale assegnazione di percorsi e
colori agli agenti. Ciò comunque non pregiudica la soluzione del problema in
quanto nel caso non cooperativo siamo interessati a routing in equilibrio di
Nash e abbiamo che un routing parziale non può mai essere in equilibrio di
Nash poiché per ogni agente β non servito nel routing R non è verificata la
condizione richiesta nella definizione precedente, essendo pR (β) = ∞.
Definizione 3.7 (Gioco e coordination ratio). Il gioco G = (G, I, f, p)
degli agenti in I sulla rete G indotto da una funzione di pagamento p e dalla
funzione di prezzatura f ha |I| agenti, ognuno dei quali possiede come insieme
di strategie ℘α × W e funzione di utilità uα = −p(α).
3.1 Modello
40
Sia N l’insieme dei routing del gioco in equilibrio di Nash. Il coordination
ratio o prezzo dell’anarchia del gioco G è
ρ(G) = sup
R∈N
c(R)
w(G, I)
Definizione 3.8 (Evoluzione del gioco e mosse). L’ evoluzione del gioco
G = (G, I, f, p) è una sequenza di quintuple (mosse)
(α, Pold (α), colorold , Pnew (α), colornew )
dove α è un agente, Pold (α) ∈ ℘α ∪{undef}, Pnew (α) ∈ ℘α e colorold , colornew ∈
W . La semantica di una mossa è che l’agente α, avendone convenienza, muta
il suo routing dal percorso Pold (α)5 con lunghezza d’onda colorold al percorso
Pnew (α) con lunghezza d’onda colornew .
Un agente non può effettuare una mossa in cui assume un percorso ed un
colore tali da violare la condizione nodale delle reti ottiche secondo la quale
tutti i percorsi di routing che condividono un arco devono avere assegnati
colori differenti.
All’inizio del gioco evolutivo si parte da una situazione di routing (anche
parziale) R0 = (R0 , c0 ) qualsiasi che rispetti la condizione nodale per le reti
ottiche.
Sia Rold = (Rold , cold ) il routing presente prima del verificarsi di una
mossa. Dopo la mossa, il routing Rold muta nel routing Rnew = (Rnew , cnew )
in cui Rnew = Rold \ {Pold (α)} ∪ {Pnew (α)} e
(
colornew se γ = α
cnew (γ) =
cold (γ)
altrimenti
Il verificarsi di una mossa implica che
pRold (α) > pRnew (α)
Il gioco termina laddove nessun agente ha convenienza nell’effettuare una
mossa, ovvero quando si ottiene un equilibrio di Nash.
5
Se l’agente inizialmente non è servito, la sua prima mossa ha questa componente pari
ad undef.
3.1 Modello
41
Definizione 3.9 (Grafo dell’evoluzione di gioco). Il grafo dell’evoluzione
di gioco G = (G, I, f, p) è il grafo diretto (Φ, M ) dove Φ è l’insieme dei routing
(anche parziali) che la rete ha durante ogni possibile evoluzione di gioco e
ogni arco diretto m ∈ M , m = (R1 , R2 ), è associato ad una possibile mossa
di un agente che fa mutare il routing da R1 a R2 .
Si noti che il nodo in cui un gioco eventualmente termina è un nodo
pozzo per il grafo dell’evoluzione di gioco, e che se questo grafo è aciclico la
convergenza ad un equilibrio di Nash è sempre assicurata in un numero finito
di mosse.
Definizione
3.10
(Gioco
convergente). Un gioco
il cui grafo
dell’evoluzione è aciclico è detto convergente.
Definizione 3.11 (Funzione di pagamento convergente). Una funzione
di pagamento che induce un gioco convergente per ogni funzione di prezzatura
è detta convergente.
Esponiamo ora un piccolo risultato che mette in evidenza la correlazione tra esistenza di un equilibrio di Nash e le caratteristiche del grafo
dell’evoluzione di gioco.
Proposizione 3.1.1. Se un gioco G è convergente, allora esiste almeno un
routing in equilibrio di Nash per G.
Dimostrazione. Essendo il grafo dell’evoluzione di gioco aciclico, deve esistere
almeno un nodo pozzo, cioè senza archi uscenti. Tale nodo rappresenta un
routing in equilibrio di Nash poiché se tale routing non fosse un equilibrio
di Nash, allora sarebbe possibile da parte di qualche agente effettuare una
mossa, e ciò contraddirebbe il fatto che questo routing è associato ad un nodo
pozzo.
Nota 3.2. Si noti che viceversa la ciclicità del grafo dell’evoluzione di gioco
non implica la non esistenza di un equilibrio di Nash, in quanto un grafo
ciclico può comunque contenere un nodo pozzo.
3.2 Una classe di funzioni di pagamento convergenti
3.2
42
La classe Π di funzioni di pagamento
convergenti
In questo paragrafo definiamo una classe di funzioni di pagamento che inducono un gioco convergente. A tale scopo è necessario introdurre la seguente
definizione.
Definizione 3.12 (Ordinamento lessicografico). Date due sequenze di
reali Ψ = (testa, Ψ̃) e Ψ0 = (testa0 , Ψ̃0 ) di uguale lunghezza l, dove Ψ̃ e Ψ̃0
sono a loro volta due sequenze di reali ottenute escludendo i primi valori
testa, testa0 ∈ R da Ψ e Ψ0 rispettivamente, l’ordinamento lessicografico ≺ è
cosı̀ definito per induzione sulla lunghezza l:
• se l = 1,
Ψ ≺ Ψ0 ⇔ testa < testa0
• se l > 1,
Ψ ≺ Ψ0 ⇔ (testa < testa0 ∨ (testa = testa0 ∧ Ψ̃ ≺ Ψ̃0 ))
Esponiamo ora la notazione utilizzata in questo paragrafo:
• µ = (α, Pold (α), colorold , Pnew (α), colornew ) è una generica mossa del
gioco effettuata dall’agente α che induce il passaggio dal routing Rold
al routing Rnew ;
• A è l’insieme degli agenti che condividevano almeno un arco del loro
percorso con α nel routing Rold e che non condividono nessun arco con
α nel routing Rnew ;
• B è l’insieme degli agenti che condividono almeno un arco del loro
percorso con α nel routing Rnew .
Denotiamo con Π la classe di funzioni di pagamento π che per ogni
possibile mossa del gioco rispettino le seguenti condizioni:
∀β ∈ A, πRnew (β) ≤ πRold (β)
(3.1)
3.3 Una classe di funzioni di pagamento inducenti
un gioco con alto prezzo dell’anarchia
43
∀β ∈ B, πRnew (β) > πRold (β) ⇒ πRnew (β) ≤ πRnew (α)
(3.2)
Teorema 3.2.1. Le funzioni di pagamento della classe Π inducono un gioco
convergente.
Dimostrazione. Sia Ψold la sequenza dei costi πRold (β) ∀β ∈ I ordinati in
modo non crescente, e sia Ψnew la sequenza dei costi πRnew (β) ∀β ∈ I ordinati in modo non crescente, ovvero la nuova sequenza dei costi derivanti
dall’esecuzione da parte dell’agente α della mossa µ.
Per definizione della classe Π, la mossa µ dell’agente α può far innalzare
il costo di ogni altro agente al più fino a πRnew (α). Essendo inoltre
πRnew (α) ≤ πRold (α)
otteniamo
Ψnew ≺ Ψold
cioè la sequenza Ψnew è secondo l’ordinamento lessicografico minore della
sequenza Ψold .
Poiché la sequenza Ψ0 = 0, 0, 0, . . . è il bottom dell’ordinamento lessicografico, e ogni possibile mossa di un agente è associata ad un arco del grafo
dell’evoluzione di gioco, ne consegue che tale grafo non può contenere alcun
ciclo, e questo conclude la dimostrazione.
Nota 3.3. Il numero di passi in cui il gioco converge non è in generale
polinomiale in |I|.
3.3
La classe Ξ di funzioni di pagamento inducenti un gioco con alto prezzo
dell’anarchia
In questo paragrafo definiamo una classe di funzioni di pagamento che
inducono un gioco G = (G, I, f, p) con coordination ratio ρ =
|I|
,
w(G,I)
che
3.3 Una classe di funzioni di pagamento inducenti
un gioco con alto prezzo dell’anarchia
44
è evidentemente il peggior coordination ratio possibile in quanto qualsiasi
soluzione ammissibile per un problema utilizza al più |I| colori e w(G, I) è la
soluzione ottima del problema.
Denotiamo con Ξ = Ξ0 ∪ Ξ00 la classe di funzioni di pagamento ξR=(R,c)
che rispettino almeno una delle seguenti condizioni:
Sottoclasse Ξ0 : ∀α ∈ I, ξ(α) dipende unicamente dal colore c(α) ed inoltre
ξR (α) ≥ ξR0 =(R0 ,c0 ) (α) ⇐ c(α) ≥ c0 (α),
ovvero il costo per ogni agente dipende unicamente dal proprio colore
assunto nel routing ed ad ogni agente α non conviene mai fare una
mossa (α, Pold (α), colorold , Pnew (α), colornew ) in cui colornew ≥ colorold .
Sottoclasse Ξ00 : ∀α ∈ I,
ξ(α) = maxe∈R(α) g(σ(e))
dove g : 2W → R è tale che per ogni A e B insiemi di colori
A \ {d} ⊆ B ⇒ g(A) ≤ g(B ∪ {d0 })
con d ∈ A, d0 ≥ d e d0 ∈
/ B. In altre parole, l’immagine (g(B ∪ {d0 }))
secondo g di un primo insieme (B ∪ {d0 }) che contiene almeno tutti gli
elementi di un secondo insieme (A) tranne al più un elemento (d) che nel
primo insieme deve eventualmente essere sostituito da uno strettamente
maggiore (d0 ), non può essere minore dell’immagine (g(A)) del secondo
insieme.
Teorema 3.3.1.
Ξ⊆Π
Dimostrazione. Dimostriamo che per ogni funzione di pagamento p,
p ∈ Ξ0 ⇒ p ∈ Π
e
p ∈ Ξ00 ⇒ p ∈ Π
3.3 Una classe di funzioni di pagamento inducenti
un gioco con alto prezzo dell’anarchia
45
Sia (α, Pold (α), colorold , Pnew (α), colornew ) una generica mossa del gioco
effettuata dall’agente α che induce il passaggio dal routing Rold al routing
Rnew .
Se p ∈ Ξ0 , allora entrambe le condizioni di appartenenza alla classe Π 3.1
e 3.2 sono verificate in quanto ∀β 6= α, β ∈ I, pRnew (β) = pRold (β)
Se p ∈ Ξ00 , allora la condizione 3.1 è verificata in quanto, posto d = d0 ,
d ∈ A, d ∈
/ B e C = B ∪ {d}, si ha
A ⊆ C ⇒ A \ {d} ⊆ B ⇒ g(A) ≤ g(C)
e dunque i costi degli agenti che in Rnew non condividono più alcun arco con
α non possono aumentare. La condizione 3.2 è verificata per la struttura
della funzione di pagamento p(α) = maxe∈R(α) g(σ(e)), in quanto l’operatore
massimo assicura che laddove il costo degli agenti che vengono a condividere
almeno un arco con α in Rnew cresca, non può mai superare il costo pRnew (α).
Corollario 3.3.2. Le funzioni di pagamento della classe Ξ sono convergenti.
Teorema 3.3.3. Le funzioni di pagamento della classe Ξ inducono un gioco
G = (G, I, f, p) il cui coordination ratio ρ =
|I|
.
w(G,I)
Dimostrazione. Si consideri una rete avente come topologia un anello G di
|I| nodi (v1 , . . . , v|I| ), e l’istanza I = {{vi , v(i+1)mod |I| }|i ∈ {1, . . . , |I|}}.
Il routing R∗ = (R∗ , c∗ ) dove ∀i ∈ {1, . . . , |I|}
R∗ ({vi , v(i+1)mod |I| }) = {{vi , v(i+1)mod |I| }}
e
c∗ ({vi , v(i+1)mod |I| ) = 1
è tale che C(R∗ ) = 1 e dunque w(G, I)=1.
Se ora consideriamo il routing R = (R, c) dove ∀i ∈ {1, . . . , |I|}
R({vi , v(i+1)mod |I| }) = {{vj mod |I| , v(j+1)mod |I| }|j ∈ {i + 1, . . . , i + |I| − 1}}
3.4 Informazione completa
46
e
c({vi , v(i+1)mod |I| ) = i
abbiamo che R è in equilibrio di Nash per definizione delle funzioni ξ ∈ Ξ.
Prima di tutto notiamo che nel routing R, σ({vi , v(i+1)mod |I| }) = {1, . . . , i −
1, i + 1, . . . , |I|} ∀i ∈ {1, . . . , |I|}, ovvero ogni arco {vi , v(i+1)mod |I| } dell’anello
è occupato da tutti i colori tranne il colore i. La dimostrazione prosegue
quindi per casi. A seconda della sottoclasse della funzione ξ abbiamo:
Sottoclasse Ξ0 Nessun agente {vi , v(i+1)mod |I| }, i ∈ {1, . . . , |I|} ha convenienza nell’effettuare una mossa poiché non può in nessun modo
acquisire un colore minore di i;
Sottoclasse Ξ00 Nessun agente α = {vi , v(i+1)mod |I| }, i ∈ {1, . . . , |I|} ha convenienza nell’effettuare una mossa poiché sia se si spostasse sull’unico
arco {vi , v(i+1)mod |I| }, che rimanesse sul percorso di |I| − 1 archi cambiando colore, si ritroverebbe con un nuovo percorso (in un routing R0 )
contenente almeno un arco con insieme dei colori
B ∪ {d0 }|B ⊇ σ(e) \ c(α) ∀e ∈ R(α), d0 ≥ c(α)
e dunque risulterebbe ξR0 (α) ≥ ξR (α).
Essendo C(R) = |I|, otteniamo che il coordination ratio ρ ≥ |I|.
Il teorema per w(G, I) = 1 segue dall’osservazione che per ogni routing
R ammissibile si ha C(R) ≤ |I|
La dimostrazione per valori w(G, I) > 1 si ottiene semplicemente modificando l’istanza ripetendo ogni richiesta w(G, I) volte. In questo modo
abbiamo in modo del tutto simile un routing in equilibrio di Nash che usa
sempre |I| colori, ottenendo quindi un coordination ratio ρ =
3.4
|I|
w(G,I)
Informazione completa
In questo paragrafo consideriamo funzioni di pagamento nel contesto di
reti con informazione completa. In tale contesto la funzione di pagamento
può quindi dipendere sia dall’istanza I che dal routing corrente R.
3.4 Informazione completa
47
Il seguente teorema dimostra come qualsiasi algoritmo centralizzato può
essere in modo opportuno utilizzato anche per il caso non cooperativo, facendo sı̀ che il coordination ratio sia 1 o k se l’algoritmo utilizzato è ottimo
o k-approssimante rispettivamente.
Teorema 3.4.1. Sia A un qualsiasi algoritmo che risolva il problema (G, I)
con rapporto di approssimazione k (k = 1 se A è ottimo) e avente come
output il routing R̃ = (R̃, c̃).
Allora, dato il




A
pR (α) =



routing R = (R, c), la funzione di pagamento
0 se R(α) = R̃(α) ∧ c(α) = c̃(α)
2 se (R(α) 6= R̃(α) ∨ c(α) 6= c̃(α)) ∧ c(α) ≤ C(R̃)
1 se (R(α) 6= R̃(α) ∨ c(α) 6= c̃(α)) ∧ c(α) > C(R̃)
è convergente, e l’unico equilibrio di Nash possibile per il gioco G da lei indotto
è R̃. Il coordination ratio di G è k, la complessità computazionale della
funzione pA è al più la stessa dell’algoritmo A e il numero di mosse in cui
G converge è al più 3|I|.
Dimostrazione.
Convergenza Dimostriamo dapprima la convergenza del gioco G in al più
3|I| mosse. Poiché la funzione di pagamento è tale che la mossa di un
agente non fa mutare il costo di nessun altro agente, ed ha codominio
finito di cardinalità 3, ogni agente può effettuare durante il gioco al più
3 mosse, e dunque il gioco converge in 3|I| mosse.
Unicità Mostriamo ora come l’unico equilibrio di Nash di G sia R̃.
Supponiamo per assurdo che in un routing R in equilibrio di Nash
esista almeno un agente α per il quale p(α) = 2. L’agente α potrebbe
certamente effettuare una mossa semplicemente assumendo un colore
c(α) > C(R̃) in modo da assumere costo 1, e ciò contraddice che R è
in equilibrio di Nash.
Supponiamo ora per assurdo che in un routing R in equilibrio di Nash
esista almeno un agente α per il quale p(α) = 1. Tale agente nel routing
3.5 Informazione minimale
48
R ha dunque assegnato un colore c(α) > C(R̃). Avendo già dimostrato
che in un equilibrio di Nash nessun agente ha costo 2, per la definizione
della funzione di pagamento possiamo affermare che nessun agente nel
routing R sta occupando un colore c(α) ≤ C(R̃) senza che R(α) =
R̃(α) ∧ c(α) = c̃(α), ovvero senza che si trovi sullo stesso percorso e
con lo stesso colore del routing R̃. Per l’agente α è quindi possibile
effettuare una mossa che lo porti sullo stesso percorso e colore di R̃, in
modo da assumere costo 0, e ciò contraddice che R è in equilibrio di
Nash.
Abbiamo mostrato come in un routing R in equilibrio di Nash pR (α) =
0 ∀α ∈ I; per la definizione di pA
R ogni agente si trova sullo stesso
percorso e colore del routing R̃, e dunque R = R̃.
Le rimanenti asserzioni del teorema sono facilmente verificabili: il coordination ratio di G è semplicemente il rapporto di approssimazione di A poiché
l’unico equilibrio di Nash per G è proprio il routing R̃, ed infine ogni agente
per calcolare la funzione di pagamento deve individuare il percorso e il colore
che gli assegnerebbe l’algoritmo A, e questo vuol dire nel peggiore dei casi
computare nella sua interezza A.
3.5
Informazione minimale
Sebbene i risultati ottenuti nel paragrafo precedente relativo al livello di
informazione completa siano soddisfacenti poiché sono stati individuati giochi
velocemente convergenti e con coordination ratio pari a quello di qualsiasi
algoritmo efficiente centralizzato, va sottolineato che l’assunzione che ogni
agente ha una visione dell’intera istanza e dell’intero routing è molto forte, e
in reti ottiche reali ciò potrebbe essere non realizzabile per motivi tecnologici
e non desiderabile per problematiche legali legate ad esempio alla privacy.
Per questi motivi in questo e nel prossimo paragrafo verranno esposte funzioni di pagamento con un livello di informazione più ristretta, ed analizzati
3.5 Informazione minimale
49
i giochi indotti da tali funzioni secondo i criteri dell’esistenza dell’equilibrio,
della convergenza del gioco e del prezzo dell’anarchia.
Il livello di informazione minimale, considerato in questo paragrafo, dà ad
ogni singolo agente unicamente informazione su quali lunghezze d’onda sono
disponibili lungo i vari percorsi che connettono i due nodi relativi all’agente
stesso.
La funzione di pagamento p relativa all’agente α non può dipendere dall’istanza I e dallo stato della rete di comunicazione; può dipendere da σ̄ ℘α ,
cioè dallo stato dei percorsi della rete di comunicazione con dominio ristretto
ai percorsi relativi all’agente α, oltre che, naturalmente, dal percorso e dal
colore in uso dall’agente α.
Analizziamo ora due funzioni di pagamento convergenti. Possiamo però notare come la perdita di informazione fa sı̀ che le funzioni analizzate
inducano un gioco con alto prezzo dell’anarchia.
La funzione di pagamento pI
pIR (α) = f (c(α))
Questa funzione di pagamento fa sı̀ che ogni agente paghi unicamente in
funzione del colore che usa nel routing. Intuitivamente, essendo la funzione
di prezzatura f non decrescente, si vuole indurre ogni agente a posizionarsi su
un percorso qualsiasi ma con il colore più basso possibile, in modo da tentare
di minimizzare il numero totale di colori utilizzati.
Teorema 3.5.1. La funzione di pagamento pI appartiene alla classe Ξ.
Dimostrazione. La funzione di pagamento pI appartiene alla sottoclasse Ξ0
di Ξ in quanto il costo per un agente α nel routing R = (R, c) dipende
unicamente da c(α), e la funzione di pagamento è non decrescente al crescere
del colore c(α) (poiché la funzione di prezzatura f è per definizione non
decrescente).
3.5 Informazione minimale
50
Corollario 3.5.2. La funzione di pagamento pI è convergente ed induce un
gioco G = (G, I, g, p) con coordination ratio ρ =
|I|
.
w(G,I)
Teorema 3.5.3. La funzione di pagamento pI induce un gioco G =
(G, I, g, p) che converge in al più |I|2 mosse.
Dimostrazione. Sotto l’assunzione che nessun agente faccia mosse stupide
assumendo un colore strettamente maggiore di |I|, il teorema segue dall’osservazione che, poiché le mosse di un agente non fanno mutare i costi degli
altri agenti, ogni agente può effettuare al più |I| mosse.
La funzione di pagamento pII
pII
R=(R,c) (α) =
max
k∈σ̄ Pα (R(α))
f (k)
Questa funzione di pagamento fa sı̀ che ogni agente paghi in funzione del
più alto colore (tra il suo e quelli utilizzati da altri agenti) che incontra lungo
il proprio percorso di routing.
Teorema 3.5.4. La funzione di pagamento pII appartiene alla classe Ξ.
Dimostrazione. Mostriamo che la funzione di pagamento pII appartiene alla
sottoclasse Ξ00 di Ξ.
Notiamo innanzitutto che la funzione pII può essere equivalentemente
formulata nel seguente modo:
pII
R (α) = max
max f (k)
e∈R(α) k∈σ Eα (e)
Per dimostrare l’appartenenza a Ξ00 è sufficiente mostrare che g(σ(e)) =
maxk∈σ(e) f (k) goda, per ogni A e B insiemi di colori, della proprietà
A \ {d} ⊆ B ⇒ g(A) ≤ g(B ∪ {d0 })
con d ∈ A, d0 ≥ d e d0 ∈
/ B.
3.6 Informazione intermedia
51
Essendo A \ {d} ⊆ B e poiché, per la non decrescenza di f , f (d) ≤ f (d0 ),
abbiamo
g(B ∪ {d0 }) = max{f (d0 ), max f (k)} ≥ max{f (d), max f (k)} = g(A)
k∈B
k∈A\{d}
Corollario 3.5.5. La funzione di pagamento pII è convergente ed induce un
gioco G = (G, I, g, p) con coordination ratio ρ =
3.6
|I|
.
w(G,I)
Informazione intermedia
Nel tentativo di recuperare il prezzo pagato in termini di coordination
ratio passando dal livello di informazione completa a quello minimale, in
questo paragrafo consideriamo il livello di informazione intermedia, che dà ad
ogni singolo agente unicamente informazione su quali lunghezze d’onda sono
disponibili e quali occupate in ogni arco utilizzato dai percorsi che connettono
i due nodi relativi all’agente stesso.
La funzione di pagamento p relativa all’agente α non può dipendere dall’istanza I, ma può dipendere dallo stato σ Eα della rete di comunicazione con
dominio ristretto agli archi relativi all’agente α, oltre che, naturalmente, dal
percorso e dal colore in uso dall’agente α.
La funzione di pagamento pIII
pIII
R=(R,c) (α) = max
e∈R(α)
X
f (k)
k∈σ Eα (e)
Questa funzione di pagamento fa sı̀ che ogni arco sia prezzato con la
somma delle immagini (secondo la funzione di prezzatura f ) dei colori ad
esso associati. Ogni agente paga il prezzo del massimo arco del proprio
percorso di routing.
Teorema 3.6.1. La funzione di pagamento pIII appartiene alla classe Ξ.
3.6 Informazione intermedia
52
Dimostrazione. Mostriamo che la funzione di pagamento pIII appartiene alla
sottoclasse Ξ00 di Ξ.
Per dimostrare l’appartenenza a Ξ00 è sufficiente mostrare che g(σ(e)) =
P
k∈σ(e)
f (k) goda, per ogni A e B insiemi di colori, della proprietà
A \ {d} ⊆ B ⇒ g(A) ≤ g(B ∪ {d0 })
con d ∈ A, d0 ≥ d e d0 ∈
/ B.
Essendo A \ {d} ⊆ B ed essendo f positiva e non decrescente, abbiamo
g(B ∪ {d0 }) = f (d0 ) +
X
X
f (k) ≥ f (d) +
k∈B
f (k) = g(A)
k∈A\{d}
Corollario 3.6.2. La funzione di pagamento pIII è convergente ed induce
un gioco G = (G, I, g, p) con coordination ratio ρ =
3.6.1
|I|
.
w(G,I)
Funzioni di pagamento non convergenti
Le funzioni di pagamento analizzate finora sono convergenti, ma
purtroppo inducono un gioco con pessimo coordination ratio.
Tutte le altre funzioni di pagamento più naturali analizzate, esposte di
seguito, sono risultate purtroppo essere non convergenti, e per quasi tutte è
stata dimostrata essere non garantita l’esistenza dell’equilibrio di Nash nel
gioco da loro indotto.
La funzione di pagamento pIV
pIV
R=(R,c) (α) =
X
e∈R(α)
max f (k)
k∈σ Eα (e)
Questa funzione di pagamento fa sı̀ che ogni arco sia prezzato in funzione
del massimo colore ad esso associato. Ogni agente paga la somma dei prezzi
degli archi del proprio percorso di routing.
3.6 Informazione intermedia
53
Teorema 3.6.3. Nei giochi indotti dalla funzione di pagamento pIV non è assicurata l’esistenza dell’equilibrio di Nash per nessuna funzione di prezzatura
f non limitata superiormente.
Dimostrazione. Mostriamo come nel problema determinato dal grafo in
Figura 3.1 e dall’istanza
I = {{a, ci }, {b, di } |i ∈ {1, 2, . . . , n, n + 1}}
| {z }
m volte
l’equilibrio di Nash non esiste per nessuna funzione di prezzatura f non
limitata superiormente.
I parametri m, n, h e k dipendono dalla funzione di prezzatura f e devono
essere scelti opportunamente come mostrato in questa dimostrazione.
Imponiamo ora alcune condizioni che dimostriamo essere sufficienti per
la non esistenza dell’equilibrio di Nash.
Innanzitutto imponiamo tre condizioni tecniche:
n > m > 1,
(3.3)
f (n + 1) > f (n),
(3.4)
f (m + 1) > f (m).
(3.5)
Chiaramente, gli agenti {b, di } in una situazione di equilibrio di Nash
possono utilizzare al più il colore m + 1 (o un colore x tale che f (x) =
f (m + 1)), laddove l’arco {b, ci } sia utilizzato da una richiesta {a, ci } con un
colore al più pari ad m, e possono utilizzare al più il colore m altrimenti.
Consideriamo ora gli agenti {a, ci }: per la condizione tecnica 3.4 e per le
seguenti condizioni che imponiamo
2f (n) < (h + k)f (1),
(3.6)
2f (n) < hf (1) + f (m + 1),
(3.7)
(k + 1)f (m) < 2f (n + 1),
(3.8)
3.6 Informazione intermedia
54
d2
ka
rch
i
c2
k archi
dn+1
cn+1
c1
b
d1
k archi
h archi
a
Figura 3.1: In questo grafo tra i nodi a e b ci sono due cammini, uno costituito
da un unico arco e l’altro da h archi; inoltre tra ogni coppia di nodi b e ci ci
sono due cammini, uno costituito da un unico arco e l’altro da k archi.
3.6 Informazione intermedia
55
(k + 1)f (m) < (h + k)f (1),
(3.9)
(k + 1)f (m) < hf (1) + f (m + 1),
(3.10)
esattamente n di essi devono utilizzare nel proprio percorso di routing l’arco
{a, b} con i colori da 1 a n. Si noti come nelle condizioni 3.7 e 3.10 la presenza
nel membro di destra della quantità f (m + 1) in luogo di f (1) è giustificata
dalla ulteriore condizione
2f (m + 1) < (k + 1)f (1)
(3.11)
che imponiamo, secondo la quale nell’arco {b, ci } devono confluire gli m agenti
{b, di } qualora possano utilizzare un colore al più pari a m + 1.
Analizziamo poi le possibili situazioni per casi:
• Se sull’arco {a, b} fosse libero un colore x al più pari ad m, e tale colore
x fosse disponibile anche sull’arco {b, ci }, la richiesta {a, ci } non sarebbe
in equilibrio usando un colore almeno pari a n + 1 o passando per la
catena di h archi per le condizioni 3.6, 3.7 e 3.11.
• Se sull’arco {a, b} fosse libero un colore x al più pari ad m, e tale colore
x non fosse disponibile sull’arco {b, ci }, ma quindi fosse disponibile
sulla catena di k archi corrispondente, la richiesta {a, ci } non sarebbe
in equilibrio usando un colore almeno pari a n + 1 o passando per la
catena di h archi per le condizioni 3.8, 3.9, 3.10 e 3.11.
• Se sull’arco {a, b} fosse libero un colore x compreso nell’intervallo [m +
1, n], la richiesta {a, ci } non sarebbe in equilibrio usando un colore
almeno pari a n+1 o passando per la catena di h archi per le condizioni
3.6, 3.7 e 3.11, in quanto il colore x non può essere occupato dalle
richieste {b, di } (in una situazione di equilibrio) sull’arco {b, ci }.
Siano ora α l’agente {a, cı̄ } rimasto escluso dalla precedente analisi e
β1 , . . . , βm gli m agenti {b, cı̄ }.
α non sarebbe in equilibrio attraversando la catena di k archi poiché
imponiamo
2f (n + 1) < (h + k)f (1),
(3.12)
3.6 Informazione intermedia
56
2f (n + 1) < (1 + k)f (n + 1).
(3.13)
α non sarebbe in equilibrio attraversando la catena di h archi con un colore
maggiore o pari a m + 1 poiché imponiamo
2f (n + 1) < (h + 1)f (m + 1).
(3.14)
Se l’arco {b, cı̄ } è libero, α non sarebbe in equilibrio sul percorso costituito
dai due archi {a, b} e {b, cı̄ } dove il primo colore che può utilizzare è n + 1
poiché imponiamo
(h + 1)f (1) < 2f (n + 1).
(3.15)
Se l’arco {b, cı̄ } è occupato dagli agenti β, α non sarebbe in equilibrio sul
percorso costituito dalla catena di h archi e dall’arco {b, cı̄ } pur utilizzando
il colore 1 poiché imponiamo
2f (n + 1) < hf (1) + f (m + 1).
(3.16)
Infine per la 3.11 gli agenti β non sono in equilibrio sulla catena di k archi
quando sull’arco {b, cı̄ } non è presente un colore superiore a m + 1, e non
sono in equilibrio sull’unico arco {b, cı̄ } quando su di esso è presente un colore
almeno pari a n + 1 poiché imponiamo
kf (m) < f (n + 1).
(3.17)
Mostriamo ora come l’agente α e gli agenti β non possano mai trovarsi in
una situazione di equilibrio di Nash, procedendo per casi.
• L’agente α si posiziona sulla catena di h archi con un colore pari al
più a m (per la 3.14), ed esiste almeno un agente β̄ posizionato sulla
catena di k archi.
Questa situazione non è di equilibrio poiché β̄ per la 3.11 può effettuare
una mossa spostandosi sull’arco {b, cı̄ }.
• L’agente α si posiziona sulla catena di h archi con un colore pari al più
a m (per la 3.14), e tutti gli agenti β sono posizionati sull’arco {b, cı̄ }.
3.6 Informazione intermedia
57
Questa situazione non è di equilibrio poiché α per la 3.16 può effettuare
una mossa spostandosi sul percorso di due archi utilizzando il colore
n + 1.
• L’agente α si posiziona sull’arco {a, b} con un colore almeno pari a n+1
ed esiste almeno un agente β̄ posizionato sull’unico arco {b, cı̄ }.
Questa situazione non è di equilibrio poiché β̄ per la 3.17 può effettuare
una mossa spostandosi sulla catena di k archi.
• L’agente α si posiziona sull’arco {a, b} con un colore almeno pari a n+1
e tutti gli agenti β sono posizionati sulla catena di k archi.
Questa situazione non è di equilibrio poiché α per la 3.15 può effettuare
una mossa spostandosi sulla catena di h archi.
Concludiamo la dimostrazione illustrando come sia possibile verificare
tutte le condizioni imposte.
Notiamo che alcune condizioni sono implicate da altre:
3.16 ∧ 3.3 ∧ 3.5 ⇒ 3.14 in quanto
2f (n + 1) < hf (1) + f (m + 1) < hf (m + 1) + f (m + 1) = (h + 1)f (m + 1);
3.16 ⇒ 3.7 in quanto
2f (n) ≤ 2f (n + 1) < hf (1) + f (m + 1);
3.11 ∧ 3.16 ⇒ 3.12 in quanto
2f (n + 1) < hf (1) + f (m + 1) < hf (1) + kf (1) = (h + k)f (1);
3.12 ⇒ 3.6 in quanto
2f (n) ≤ 2f (n + 1) < (h + k)f (1);
3.11 ∧ 3.3 ∧ 3.5 ⇒ 3.13 in quanto
k>
f (m + 1)
> 1 ⇒ 2f (n + 1) < (1 + k)f (n + 1);
f (1)
3.6 Informazione intermedia
58
3.17 ⇒ 3.8 in quanto
(k + 1)f (m) = kf (m) + f (m) < f (n + 1) + f (n + 1) = 2f (n + 1);
3.8 ∧ 3.12 ⇒ 3.9 in quanto
(k + 1)f (m) < 2f (n + 1) < (h + k)f (1);
3.8 ∧ 3.16 ⇒ 3.9 in quanto
(k + 1)f (m) < 2f (n + 1) < hf (1) + f (m + 1).
Dalle rimanenti condizioni 3.11, 3.15, 3.16 e 3.17 ricaviamo
2f (n + 1) − f (1)
2f (n + 1) − f (m + 1)
<h<
f (1)
f (1)
e
f (n + 1)
2f (m + 1) − f (1)
<k<
.
f (1)
f (m)
L’esistenza di h e k interi è assicurata da f (m + 1) > 2f (1) e f (n +
1) >
2f (m)f (m+1)
f (1)
che rendono gli intervalli suddetti di ampiezza strettamente
maggiore di 1.
Infine, per rispettare anche le condizioni tecniche è sufficiente scegliere



 f (m + 1) > 2f (1)
m tale che
ed
n tale che
f (m + 1) > f (m)


 m>1



 f (n + 1) >
2f (m)f (m+1)
f (1)
f (n + 1) > f (n)


 n > m.
Essendo per ipotesi la funzione f non limitata superiormente, tutte le
richieste sono soddisfacibili.
Corollario 3.6.4. La funzione di pagamento pIV non è convergente.
3.6 Informazione intermedia
59
Le funzioni di pagamento pV , pV I , pV II e pV III
Queste funzioni di pagamento sono accomunate dal fatto che il prezzo di
ogni arco viene equamente ripartito tra tutti gli agenti che lo utilizzano.
X maxk∈σEα (e) f (k)
|σ Eα (e)|
pVR=(R,c) (α) =
e∈R(α)
maxk∈σEα (e) f (k)
e∈R(α)
|σ Eα (e)|
I
pVR=(R,c)
(α) = max
Nelle funzioni pV e pV I ogni arco è prezzato in funzione del massimo
colore ad esso associato. La funzione pV fa sı̀ che ogni agente paghi la somma
dei prezzi ripartiti degli archi del proprio percorso di routing, mentre nella
funzione pV I ogni agente paga il massimo prezzo ripartito degli archi del
proprio percorso di routing.
P
II
pVR=(R,c)
(α) =
X
e∈R(α)
k∈σ Eα (e) f (k)
|σ Eα (e)|
P
III
pVR=(R,c)
(α) = max
e∈R(α)
k∈σ Eα (e) f (k)
|σ Eα (e)|
Nelle funzioni pV II e pV III ogni arco è prezzato con la somma delle immagini (secondo la funzione di prezzatura f ) dei colori ad esso associati. La
funzione pV II fa sı̀ che ogni agente paghi la somma dei prezzi ripartiti degli
archi del proprio percorso di routing, mentre nella funzione pV III ogni agente
paga il massimo prezzo ripartito degli archi del proprio percorso di routing.
Teorema 3.6.5. Nei giochi indotti dalle funzioni di pagamento pV e pV I
non è assicurata l’esistenza dell’equilibrio di Nash per nessuna funzione di
prezzatura f tale che ∃k : f (k) > 2f (1).
Dimostrazione. Mostriamo come nel problema determinato dal grafo in
Figura 3.2 e dall’istanza
I = {{a, ci }, {b, ci }|i ∈ {1, 2, . . . , n}}
3.6 Informazione intermedia
60
2
1
Figura 3.2: In questo grafo tra ogni coppia di nodi b e ci ci sono due archi.
3.6 Informazione intermedia
61
l’equilibrio di Nash non esiste per nessuna funzione di prezzatura f tale che
∃k : f (k) > 2f (1).
Il parametro n dipende dalla funzione di prezzatura f e deve essere scelto
opportunamente: sia n il più piccolo intero che verifichi f (n) > 2f (1).
Si noti che in ogni routing deve esistere un agente {a, ci } che utilizza un
colore almeno pari a n. Sia α = {a, cı̄ } uno di questi agenti e sia β = {b, cı̄ }.
Chiaramente β deve utilizzare in un routing in equilibrio di Nash un colore
strettamente minore di n.
Mostriamo ora come l’agente α e l’agente β non possano mai trovarsi in
una situazione di equilibrio di Nash, procedendo per casi.
• L’agente α e l’agente β si posizionano sullo stesso arco.
Questa situazione non è di equilibrio poiché β può effettuare una mossa
in modo da non condividere l’arco con α, in quanto
f (1) <
f (n)
.
2
Si noti che dal punto di vista di β le due funzioni di pagamento pV e
pV I sono indifferenti poiché tutti i possibili percorsi di β sono costituiti
da un solo arco.
• L’agente α e l’agente β si posizionano su archi differenti.
Questa situazione non è di equilibrio poiché α può effettuare una mossa
in modo da condividere l’arco con β, in quanto
f (n)
< f (n).
2
Si noti che in una situazione di equilibrio di Nash l’arco {a, b} deve
costare per ogni agente {a, ci } esattamente
f (n)
.
n
Dunque α può effet-
tuare la suddetta mossa banalmente con la funzione di pagamento pV ,
e poiché
f (n)
n
< f (n) con la funzione di pagamento pV I .
3.6 Informazione intermedia
62
Corollario 3.6.6. La funzioni di pagamento pV e pV I non sono convergenti.
Teorema 3.6.7. Nei giochi indotti dalle funzioni di pagamento pV II e pV III
non è assicurata l’esistenza dell’equilibrio di Nash per nessuna funzione di
prezzatura f tale che ∃k : f (k) > f (1), ovvero per nessuna funzione di
prezzatura f non costante.
Dimostrazione. Questa dimostrazione ricalca quella del teorema 3.6.5.
Mostriamo come nel problema determinato dal grafo in Figura 3.2 e
dall’istanza
I = {{a, ci }, {b, ci }|i ∈ {1, 2, . . . , n}}
l’equilibrio di Nash non esiste per nessuna funzione di prezzatura f tale che
∃k : f (k) > f (1).
Il parametro n dipende dalla funzione di prezzatura f e deve essere scelto
opportunamente: sia n il più piccolo intero che verifichi f (n) > f (1).
Si noti che in ogni routing deve esistere un agente {a, ci } che utilizza un
colore almeno pari a n. Sia α = {a, cı̄ } tale agente, e sia β = {b, cı̄ }.
Chiaramente β deve utilizzare in un routing in equilibrio di Nash un colore
strettamente minore di n.
Mostriamo ora come l’agente α e l’agente β non possano mai trovarsi in
una situazione di equilibrio di Nash, procedendo per casi.
• L’agente α e l’agente β si posizionano sullo stesso arco.
Questa situazione non è di equilibrio poiché β può effettuare una mossa
in modo da non condividere l’arco con α, in quanto
f (1) <
f (1) + f (n)
.
2
Si noti che dal punto di vista di β le due funzioni di pagamento pV II e
pV III sono indifferenti poiché tutti i possibili percorsi di β sono costituiti
da un solo arco.
• L’agente α e l’agente β si posizionano su archi differenti.
3.6 Informazione intermedia
63
Questa situazione non è di equilibrio poiché α può effettuare una mossa
in modo da condividere l’arco con β, in quanto
f (1) + f (n)
< f (n).
2
Si noti che in una situazione di equilibrio di Nash l’arco {a, b} deve
costare per ogni agente {a, ci } esattamente
(n−1)f (1)+f (n)
.
n
Dunque α può
effettuare la suddetta mossa banalmente con la funzione di pagamento
pV I , e poiché
(n−1)f (1)+f (n)
n
< f (n) con la funzione di pagamento pV III .
Corollario 3.6.8. La funzioni di pagamento pV II e pV III non sono
convergenti.
Per le funzioni di pagamento pV II e pV III abbiamo una caratterizzazione
dei giochi indotti per ogni funzione di prezzatura f . Otteniamo infatti i
seguenti risultati per f costante.
Teorema 3.6.9. Se la funzione di prezzatura f è costante, la funzione di
pagamento pV II induce un gioco convergente in al più |I| mosse.
Dimostrazione. Ogni routing (non parziale) costa ad ogni agente 1 e dunque
è in equilibrio di Nash. Ciò vuol dire che ogni agente può effettuare un’unica
mossa e il gioco converge in al più |I| mosse.
Teorema 3.6.10. Se la funzione di prezzatura f è costante, la funzione di
pagamento pV III induce un gioco G = ((V, E), I, f, pV III ) convergente in al
più |E| · |I| mosse.
Dimostrazione. Ogni arco del percorso costa 1 ad ogni agente e dunque un
agente α = {x, y} è in equilibrio di Nash se e solo se si posiziona sul percorso
minimo tra x e y, ed inoltre una mossa di un agente non influisce sui costi
degli altri agenti. Ciò vuol dire che ogni agente può effettuare al più |E|
mosse.
3.6 Informazione intermedia
64
Nota 3.4. L’assunzione di una funzione di prezzatura costante è molto forte
e in verità poco ragionevole. Il coordination ratio ottenuto in questo modo è
facilmente verificabile essere pessimo.
La funzione di pagamento pIX
pIX
R=(R,c) (α) =
X
X
f (k)
e∈R(α) k∈σ Eα (e)
Questa funzione di pagamento fa sı̀ che ogni arco sia prezzato con la
somma delle immagini (secondo la funzione di prezzatura f ) dei colori ad
esso associati. Ogni agente paga la somma dei prezzi degli archi del proprio
percorso di routing.
Per questa funzione di pagamento non si è riuscito a dimostrare la non
esistenza dell’equilibrio di Nash, anche se la non convergenza della funzione
la fa fortemente sospettare.
Teorema 3.6.11. Non è assicurato che la funzione di pagamento pIX sia
convergente per nessuna funzione di prezzatura f tale che ∃k : f (k) > f (1) +
f (2).
Dimostrazione. Nel problema determinato dal grafo in Figura 3.3 e
dall’istanza
I = {α = {a, c}, β = {d, c}},
il grafo dell’evoluzione di gioco è ciclico per ogni funzione di prezzatura f
tale che ∃k : f (k) > f (1) + f (2).
I parametri n, h e k dipendono dalla funzione di prezzatura f e devono
essere scelti opportunamente come mostrato in questa dimostrazione.
Sia q l’arco {a, b}, q 0 il percorso formato dalla catena di h archi e dall’arco
{d, b}, s l’arco {b, c}, s0 la catena di k archi e r l’arco {d, b}.
Mostriamo come le seguenti condizioni siano sufficienti a dimostrare la
ciclicità del grafo dell’evoluzione di gioco:
(k + 1)f (2) < 2f (n) + f (n + 1),
(3.18)
3.6 Informazione intermedia
65
Figura 3.3: In questo grafo tra i nodi a e d c’è una catena di h archi, e tra i
nodi b e c ci sono due cammini, uno costituito da un unico arco e l’altro da
k archi.
2f (n) + f (1) < (k + 1)f (2),
(3.19)
(h + 2)f (1) + f (2) < 2f (n + 1),
(3.20)
2f (n + 1) < (h + 2)f (1) + f (n).
(3.21)
Si consideri il routing iniziale R0 = (R0 , c0 )
R0
R0
c0
pVRIII
(·)
0
α
q, s n + 1
2f (c + 1) + f (c)
β
r, s
2f (c) + f (c + 1)
n
β effettua la mossa
(β, {r, s}, n, {r, s0 }, 2)
in virtù della 3.18, facendo evolvere il gioco nel routing R1 = (R1 , c1 )
α effettua la mossa
(α, {q, s}, n + 1, {q 0 , s}, 1)
in virtù della 3.20, facendo evolvere il gioco nel routing R2 = (R2 , c2 )
3.6 Informazione intermedia
66
R1
R1
α
r, s
β
0
r, s
c1
pVRIII
(·)
1
n+1
2f (c + 1)
2
(k + 1)f (2)
R2
R2
c2
pVRIII
(·)
2
α
q0, s
1
(h + 2)f (1) + f (2)
β
r, s0
2
(k + 1)f (2) + f (1)
β effettua la mossa
(β, {r, s0 }, 2, {r, s}, n)
in virtù della 3.19, facendo evolvere il gioco nel routing R3 = (R3 , c3 )
R3
R3
c3
pVRIII
(·)
3
α
q0, s
1
(h + 2)f (1) + 2f (n)
β
r, s
n
2(f (n) + f (1))
α infine effettua la mossa
(α, {q 0 , s}, 1, {q, s}, n + 1)
in virtù della 3.21, facendo evolvere il gioco nel routing iniziale R0 .
Abbiamo dunque individuato un ciclo nel grafo dell’evoluzione di gioco.
Per completare la dimostrazione basta notare che per verificare le
condizioni 3.18, 3.19, 3.20 e 3.21 è sufficiente scegliere
0<
e
0<
2f (n) + f (1) − f (2)
2f (n) + f (n + 1) − f (2)
<k<
f (2)
f (2)
2f (n + 1) − f (n) − 2f (1)
2f (n1) − f (2) − 2f (1)
<h<
.
f (1)
f (1)
La scelta di
n : f (n) > f (1) + f (2)
3.6 Informazione intermedia
67
assicura che h e k esistano interi poiché rende l’ampiezza dei suddetti
intervalli strettamente maggiore di 1.
Capitolo 4
Riduzione del prezzo
dell’anarchia in reti ottiche con
topologie particolari
I risultati mostrati nel capitolo precedente per reti con topologia arbitraria, nel caso non di un livello di informazione minimale o intermedio non
sono del tutto soddisfacenti, poiché non permettono di ottenere equilibri con
un prezzo dell’anarchia inferiore al peggiore possibile. Per tale motivo in
questo capitolo analizziamo reti ottiche con topologie specifiche.
In particolare vengono riportati i risultati ottenuti per il problema del
routing in reti ottiche non cooperative con topologia ad anello, catena ed
albero.
4.1
Anelli
Un anello An = ({v1 , v2 , . . . , vn }, {{vi , v(i+1) mod n }|i ∈ {1, 2, . . . , n}}) è un
grafo che consiste di un unico ciclo di lunghezza n ≥ 3.
È una topologia molto diffusa in reti ottiche di comunicazione.
Nell’analisi che abbiamo effettuato, il problema del routing è stato separato nel problema dell’assegnazione di percorsi (routing puro) e nel proble-
4.1 Anelli
69
ma dell’allocazione di lunghezze d’onda, seguendo lo stesso approccio molto
diffuso in letteratura per algoritmi on-line o dinamici (si veda ad esempio
[23]).
4.1.1
Il problema del routing puro
Si noti innanzitutto che in un anello per ogni possibile richiesta sono
presenti esattamente due percorsi, l’unione dei quali genera l’intero anello.
Nelle funzioni di costo che consideriamo nei paragrafi successivi, i percorsi
sono assegnati secondo due modalità.
Percorsi su una linea In questo caso l’anello viene privato dell’arco
{vn , v1 } e dunque l’assegnazione dei percorsi viene effettuata sulla linea
risultante.
Percorsi minimi In questo caso ad ogni agente viene assegnato un percorso
con il minor numero di archi.
Dimostriamo ora che entrambi gli approcci comportano un load, πline e
πshort rispettivamente, che è al più il doppio del load ottimo π.
Teorema 4.1.1.
πline ≤ 2π
Dimostrazione. Partizioniamo gli agenti in due insiemi, L e M , in modo che
l’insieme M contenga tutti e soli gli agenti che, in un’assegnazione di percorsi
R∗ inducente il load ottimo π, passano per l’arco {vn , v1 }.
Risulta evidente che gli agenti dell’insieme L possiedono in R∗ lo stesso
percorso che viene loro assegnato nel routing puro Rline effettuato sulla linea,
comportando dunque un load al più pari a π.
Infine, per la definizione di load, |M | ≤ π e dunque assegnando agli agenti
in M un percorso in Rline differente da quello di R∗ , il load πline può crescere
al più di π.
4.1 Anelli
70
Teorema 4.1.2.
πshort ≤ 2π
Dimostrazione. Sia e
π(G, I, Rshort , e)
=
=
{vi , v(i+1) mod n } un arco dell’anello tale che
π(G, I, Rshort ).
Se consideriamo l’arco e0
=
{v(i+b n2 c) mod n , v(i+1+b n2 c) mod n } opposto ad e, possiamo notare che nessuna
richiesta che in Rshort attraversa e può attraversare anche e0 . Quindi, in
ogni routing che non fa passare x richieste per e, queste x richieste devono
di forza passare per e0 . Dunque nessun routing puro può ottenere un load
strettamente minore di
4.1.2
πshort
.
2
Informazione minimale
Ricordiamo che il livello di informazione minimale, considerato in questo paragrafo, dà ad ogni singolo agente unicamente informazione su quali
lunghezze d’onda sono disponibili lungo i due percorsi che connettono i nodi
relativi all’agente stesso.
La funzione di pagamento p relativa all’agente α non può dipendere dall’istanza I e dallo stato della rete di comunicazione; può dipendere da σ̄ ℘α ,
cioè dallo stato dei percorsi della rete di comunicazione con dominio ristretto
ai percorsi relativi all’agente α, oltre che, naturalmente, dal percorso e dal
colore in uso dall’agente α.
Funzione di pagamento asimmetrica
Tutte le funzioni di pagamento discusse finora in questa tesi sono funzioni
simmetriche rispetto agli archi della rete. La funzione pX presentata di seguito è invece asimmetrica, nel senso che gli archi della rete di comunicazione
non vengono considerati tutti allo stesso modo, ma, nel caso specifico, un
arco è altamente costoso, in modo da ridurre di fatto l’anello ad una linea
poiché in un routing in equilibrio di Nash esso non può essere presente in
nessun percorso.
4.1 Anelli
71
(
pX
R=(R,c) (α)
=
se {vn , v1 } ∈ R(α)
1
1−
1
c(α)
altrimenti
In questo modo, nessun agente può essere in equilibrio attraversando l’arco {vn , v1 }, ed inoltre ogni agente è incentivato a scegliere il colore più basso
possibile.
Teorema 4.1.3. La funzione di pagamento pX appartiene alla classe Π.
Dimostrazione. La funzione di pagamento pX rispetta in modo banale le condizioni 3.1 e 3.2 poiché la mossa di un agente non può modificare il pagamento
di nessun altro agente.
Corollario 4.1.4. La funzione di pagamento pX è convergente.
Teorema 4.1.5. La funzione di pagamento pX induce un gioco G =
(G, I, g, p) che converge in al più |I|2 mosse.
Dimostrazione. Sotto l’assunzione che nessun agente faccia mosse stupide
assumendo un colore strettamente maggiore di |I|, il teorema segue dall’osservazione che, poiché le mosse di un agente non fanno mutare i costi degli
altri agenti, ogni agente può effettuare al più |I| mosse.
Il seguente risultato ottenuto da Kierstead è necessario per stimare il
coordination ratio del gioco indotto dalla funzione di pagamento pX .
Lemma 4.1.6 (Kierstead [31]). La strategia First-Fit colora on-line un
grafo a intervalli con al più 25.72π colori, dove un grafo a intervalli è il
grafo dei conflitti che si ottiene quando la topologia della rete è una linea.
Teorema 4.1.7. La funzione di pagamento pX induce su una rete con
topologia ad anello un gioco con coordination ratio ρ = 51.44.
Dimostrazione. Notiamo prima di tutto che un routing R in equilibrio di
Nash per la funzione di pagamento pX può essere pensato come il risultato
dell’applicazione della strategia First-Fit alla colorazione dei percorsi (fissati
4.1 Anelli
72
a priori) corrispondenti alle richieste in istanza, presentati ad un algoritmo
on-line in ordine non decrescente rispetto al colore ottenuto in R.
Per la definizione di pX , in R nessun agente può utilizzare l’arco {vn , v1 }
e quindi il grafo dei conflitti associato al problema è un grafo a intervalli.
Il teorema segue dalla composizione del Teorema 4.1.1 e del Lemma 4.1.6.
Funzione di pagamento simmetrica
La funzione di pagamento pXI presentata in questo paragrafo ha il pregio,
confrontata con pX , di essere simmetrica rispetto agli archi della rete, ma ha
il difetto di indurre un gioco il cui coordination non è costante, ma dipende
dalla lunghezza n dell’anello.
pXI
R=(R,c) = |R(α)| −
1
c(α)
Intuitivamente, un routing è in equilibrio di Nash se e solo se ogni richiesta
si posiziona su un percorso minimo con il colore più basso disponibile1 .
Anche in questa funzione di costo, dunque, un routing R in equilibrio
di Nash può essere pensato come il risultato dell’applicazione della strategia
First-Fit alla colorazione dei percorsi minimi (fissati a priori) corrispondenti
alle richieste in istanza, presentati ad un algoritmo on-line in ordine non
decrescente rispetto al colore ottenuto in R.
Esattamente allo stesso modo della funzione di pagamento pX , valgono
anche per questa funzione di pagamento i seguenti teoremi.
Teorema 4.1.8. La funzione di pagamento pXI appartiene alla classe Π.
Corollario 4.1.9. La funzione di pagamento pXI è convergente.
Teorema 4.1.10. La funzione di pagamento pXI induce un gioco G =
(G, I, g, p) che converge in al più |I|2 mosse.
1
È semplice verificare come questa funzione di pagamento, se applicata a reti con
topologia arbitraria, induce un gioco convergente ma con prezzo dell’anarchia pessimo
4.1 Anelli
73
Infine, notiamo come anche in questo caso un routing R in equilibrio di
Nash per la funzione di pagamento pXI può essere pensato come il risultato
dell’applicazione della strategia First-Fit alla colorazione dei percorsi (fissati
a priori) corrispondenti alle richieste in istanza, presentati all’algoritmo online in ordine non decrescente rispetto al colore ottenuto in R. Dunque, il
prossimo teorema segue dal risultato di Gerstel (Teorema 2.5.1) e dal Teorema
4.1.2.
Teorema 4.1.11. La funzione di pagamento pXI induce su una rete con
topologia ad anello An un gioco con coordination ratio ρ = 5.06 log2 n + 10.
4.1.3
Informazione intermedia
Ricordiamo che il livello di informazione intermedia dà ad ogni singolo
agente unicamente informazione su quali lunghezze d’onda sono disponibili e
quali occupate in ogni arco utilizzato dai due percorsi che connettono i nodi
relativi all’agente stesso.
La funzione di pagamento p relativa all’agente α non può dipendere dall’istanza I, ma può dipendere dallo stato σ Eα della rete di comunicazione con
dominio ristretto agli archi relativi all’agente α, oltre che, naturalmente, dal
percorso e dal colore in uso dall’agente α.
Mostriamo come grazie all’ampliamento del livello di informazione si riesce ad ottenere una funzione di pagamento simmetrica con coordination ratio
costante e abbastanza contenuto.
L’algoritmo on-line di Slusarek
Il nostro scopo è quello di indurre gli agenti a simulare il comportamento
dell’algoritmo on-line proposto da Slusarek e presentato in questa tesi nel
paragrafo 2.4.1; per questo motivo, faremo uso di definizioni e notazioni
introdotte nel suddetto paragrafo.
4.1 Anelli
74
0
1
2
3
4
5
...
0
0
2
5
9
14
20
...
1
1
4
8
13
19
...
...
2
3
7
12
18
...
...
...
3
6
11
17
...
...
...
...
4
10
16
...
...
...
...
...
5
15
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Tabella 4.1: Enumerazione a coda di colomba
L’enumerazione a coda di colomba
Per l’emulazione dell’algoritmo di Slusarek nel contesto di un gioco evolutivo con agenti egoisti, abbiamo bisogno di riservare un numero infinito di
livelli ad ogni ripiano.
A questo scopo, utilizziamo la tecnica a coda di colomba per l’enumerazione dei colori, grazie alla quale è possibile mettere in corrispondenza biunivoca
l’insieme N con l’insieme N2 .
L’enumerazione illustrata dalla Tabella 4.1 è realizzata dalle funzioni
dove : N2 → N e dalla sua inversa dove−1 : N → N2 definite di seguito:
(i + j)(i + j + 1)
dove(i, j) =
+j ,
2
k(k + 1)
k(k + 1)
−1
dove (n) = k − n +
,n −
,
2
2
j√
k
con k = 1+8n−1
.
2
Una funzione di pagamento con basso prezzo dell’anarchia
Partizioniamo l’insieme W delle lunghezze d’onda nei due insiemi W1 e
W2 in modo che W2 = {2i |i = 0, 1, 2, . . .} sia l’insieme delle lunghezze d’onda
dette di sfrido. Cosı̀ ad ogni ripiano è associato un numero infinito di livelli:
4.1 Anelli
75
i primi tre livelli (solo il primo livello per il ripiano 0) sono associati a colori
piccoli in W1 , e i successivi livelli a colori di sfrido presenti in W2 assegnati
ai vari ripiani secondo una tecnica a coda di colomba.
Sia sh(i) il ripiano associato al colore i. Formalizzando l’assegnazione dei
livelli ai ripiani, abbiamo che
(
dove−1
1 (log2 i) se log2 i ∈ N
sh(i) =
i−1−dlog2 ie
e altrimenti
d
3
in cui dove : N2 → N è la funzione che mappa una coppia di naturali
in un naturale e dove−1 : N → N2 la sua inversa (dove−1
indica la prima
1
componente della coppia dove−1 ).
pXII
R=(R,c) (α) =
= min
(
jnk
1
, |R(α)| + n max{0, load(α, R) − sh(c(α))} −
2
2 + sh(c(α)) −
)
1
2c(α)
dove
load(α, R) = max |{d|d ∈ σ(e) ∧ d 6= c(α) ∧ sh(d) ≤ sh(c(α))}|
e∈R(α)
è il massimo numero di richieste, presenti fino al ripiano di α, che condividono
un arco del percorso di α.
Intuitivamente, un routing è in equilibrio di Nash se e solo se ogni richiesta
si posiziona sul percorso minimo, nel ripiano che le assegnerebbe l’algoritmo
di Slusarek, e all’interno del ripiano di propria pertinenza con il livello più
basso disponibile.
Lemma 4.1.12. Il terzo livello del ripiano h ha associato un colore al più
pari a k = 3h + blog2 3hc + 3.
Dimostrazione. Consideriamo la prima approssimazione del colore associato
al terzo livello del ripiano h data da k 0 = 3(h + 1) − 2. Questa prima approssimazione non tiene conto di nessun colore destinato allo sfrido. Il numero di
tali colori presenti nell’intervallo [1, k 0 ] è j 0 = 1 + blog2 k 0 c. Possiamo ottenere
4.1 Anelli
76
quindi una seconda approssimazione k 00 = k 0 +j 0 , che però non tiene conto dei
j 00 colori destinati allo sfrido presenti nell’intervallo [k 0 + 1, k 00 ] di ampiezza
j 0 −1; mostriamo ora che il numero di colori di sfrido j 00 del suddetto intervallo è al più 1 dimostrando una asserzione più forte, ovvero che non può essere
presente nell’intervallo [k 0 + 1, k 00 + 1] più di una potenza di 2. Procedendo
per assurdo, se fossero presenti nell’intervallo [k 0 +1, k 00 +1] due o più potenze
di due, l’ampiezza di tale intervallo dovrebbe essere strettamente maggiore
0
0
0
0
di 2j +1 − 2j = 2j , poiché k 0 + 1 > 2j −1 . La contraddizione segue poiché
l’ampiezza di tale intervallo è pari a j 0 e ∀n, n < 2n .
Il teorema segue dalla considerazione che, avendo dimostrato che nell’intervallo [k 0 + 1, k 00 + 1] è presente al più una potenza di due, il colore associato
al terzo livello del ripiano h è pari a k 00 o k 00 + 1.
Teorema 4.1.13. Il gioco G = (An , I, f, pXII ) indotto dalla funzione di
pagamento pXII converge ed ha coordination ratio ρ = 6 + O( log(π)
).
π
Dimostrazione. Consideriamo una generica evoluzione di gioco, a partire dal
momento in cui tutti gli agenti sono entrati nel gioco (a partire cioè da un
routing non parziale), e mostriamo come essa debba essere finita. Partizioniamo I in due insiemi, A e B, in modo che in A sono presenti tutti e
soli gli agenti che nel resto dell’evoluzione non effettuano mosse che facciano
aumentare il proprio ripiano. Sia k ≥ 0 il numero di agenti presenti in A
all’inizio dell’evoluzione di gioco; vogliamo mostrare come ogni numero finito
di mosse il numero degli agenti presenti in A debba crescere, in modo tale da
dimostrare che in un numero finito di mosse si ha A = I e dunque il gioco
converge non essendo possibile che gli agenti effettuino una sequenza infinita
di mosse senza mai salire di ripiano.
Notiamo prima di tutto come, essendo per costruzione infinito il numero
di livelli di ogni ripiano, ogni agente α può sempre effettuare una mossa che lo
porti su un ripiano i tale che i ≥ load(α, R) ; inoltre quelle che fanno spostare
un agente con un percorso minimo e su un tale ripiano sono le uniche mosse
possibili per un agente, poiché sono le sole che rendono il pagamento per un
agente strettamente minore di b n2 c.
4.1 Anelli
77
Consideriamo una mossa effettuata dall’agente α1 che si sposta nel ripiano
s1 . La dimostrazione procede per casi:
1. α1 rimane senza effettuare mosse che facciano aumentare il proprio
ripiano per tutta la durata dell’evoluzione.
In questo caso α1 entra a far parte di A.
2. Esiste un momento nell’evoluzione degli agenti in cui l’agente α1
effettua una mossa che lo faccia salire di ripiano.
Ciò deve essere dovuto ad un agente α2 che ha effettuato una mossa
che lo ha portato in un ripiano s2 < s1 , e cioè ad un agente che si è posizionato su un ripiano più basso del ripiano di α1 , in quanto altrimenti
per definizione della funzione di pagamento, non essendo aumentato il
load fino al ripiano s1 , α1 non avrebbe potuto salire di ripiano.
Per tale agente si ripropongono i due casi, ma essendo i ripiani al più π
per l’analisi dell’algoritmo di Slusarek, deve esistere un agente αj con
j ≤ π per cui deve verificarsi il primo caso.
Per concludere la dimostrazione di convergenza, basta osservare che in
un numero finito di mosse tutti gli agenti devono entrare in gioco poiché
se x di loro non lo facessero, i rimanenti |I| − x raggiungerebbero in un
numero finito di mosse una situazione di equilibrio, come mostrato fin qui
nella dimostrazione.
Ogni routing R in equilibrio di Nash è evidentemente un possibile output
(senza tener conto dei colori di sfrido) per l’algoritmo on-line di Slusarek
a cui le richieste vengono presentate in ordine non decrescente rispetto al
colore che assumono in R. Per il Teorema 2.4.6, il massimo colore utilizzato
è dunque al più quello associato al terzo livello del ripiano π, che è limitato
superiormente da 3π + blog2 3πc + 3 per il Lemma 4.1.12. Dal Teorema 4.1.2
segue che il gioco G ha coordination ratio ρ = 6 + O( log(π)
).
π
4.2 Catene
4.2
78
Catene
Una catena Cn = ({v1 , v2 , . . . , vn }, {{vi , vi+1 }|i ∈ {1, 2, . . . , n − 1}}) è un
semplice grafo aciclico.
Come l’anello, è una topologia molto diffusa in reti ottiche di
comunicazione.
Il problema della determinazione del routing si riduce a quello dell’assegnazione di lunghezze d’onda ai percorsi unici corrispondenti agli agenti in
istanza.
Le funzioni che analizziamo per questa topologia sono ambedue simmetriche; una di esse è computabile nel livello di informazione minimale, mentre
l’altra necessita del livello di informazione intermedia.
4.2.1
Informazione minimale
La funzione di pagamento minimale è la funzione pI già illustrata nel
paragrafo 3.5, in cui è mostrata essere convergente in al più |I|2 passi.
pIR (α) = f (c(α))
Questa funzione di pagamento fa sı̀ che ogni agente paghi unicamente in
funzione del colore che usa nel routing. Intuitivamente, essendo la funzione
di prezzatura f non decrescente, si vuole indurre ogni agente ad assumere
il colore più basso possibile, in modo da tentare di minimizzare il numero
totale di colori utilizzati.
Poiché un routing R in equilibrio di Nash per la funzione di pagamento pI
può essere pensato come il risultato dell’applicazione della strategia First-Fit
alla colorazione dei percorsi (fissati a priori) corrispondenti alle richieste in
istanza, presentati ad un algoritmo on-line in ordine non decrescente rispetto
al colore ottenuto in R, il prossimo teorema segue dal Lemma 4.1.6 dovuto
a Kierstead.
Teorema 4.2.1. La funzione di pagamento pI induce su una rete con
topologia a catena un gioco convergente con coordination ratio ρ = 25.72.
4.3 Alberi
4.2.2
79
Informazione intermedia
La funzione di pagamento che vogliamo considerare in questa sezione è
nuovamente una funzione che imita l’esecuzione dell’algoritmo di Slusarek,
che naturalmente anche nel caso della catena è 3-competitivo.
pXIII
R=(R,c) (α) =
(
1
= min n, 1 + 2n max{0, load(α, R) − sh(c(α))} −
2 + sh(c(α)) −
)
1
2c(α)
dove load e sh sono definiti come nel paragrafo 4.1.3, e dunque è sempre
assicurato che un agente possa spostarsi su un ripiano, poiché il numero di
livelli assegnati ad ogni ripiano è infinito grazie all’utilizzo della tecnica di
numerazione a coda di colomba.
Per come è strutturata la funzione di pagamento, una volta entrato nel
gioco, un agente effettua una mossa solo se questa lo porta a posizionarsi su
un ripiano i tale che i ≥ load(α, R). Ripetendo la stessa analisi effettuata
nel caso degli anelli, e considerando che quando la topologia è a catena non è
presente il fattore moltiplicativo 2 per il load, si dimostra il seguente teorema.
Teorema 4.2.2. Il gioco G = (Cn , I, f, pXIII ) indotto dalla funzione di
pagamento pXIII converge ed ha coordination ratio ρ = 3 + O( log(π)
).
π
4.3
Alberi
Anche la topologia ad albero, come quelle ad anello e a catena, è molto
diffusa nelle reti ottiche di comunicazione.
Poiché un albero è un grafo aciclico, tra una coppia di nodi esiste un unico
percorso possibile, e dunque il problema del routing si riduce alla ricerca di
un’opportuna assegnazione di lunghezze d’onda alle richieste.
La funzione di pagamento studiata per questa topologia è la funzione pI
già illustrata nel paragrafo 3.5, in cui è mostrata essere convergente in al più
|I|2 passi.
4.3 Alberi
80
pIR (α) = f (c(α))
Questa funzione di pagamento fa sı̀ che ogni agente paghi unicamente in
funzione del colore che usa nel routing. Intuitivamente, essendo la funzione
di prezzatura f non decrescente, si vuole indurre ogni agente ad assumere
il colore più basso possibile, in modo da tentare di minimizzare il numero
totale di colori utilizzati.
Poiché un routing R in equilibrio di Nash per la funzione di pagamento pI
può essere pensato come il risultato dell’applicazione della strategia First-Fit
alla colorazione dei percorsi (fissati a priori) corrispondenti alle richieste in
istanza, presentati ad un algoritmo on-line in ordine non decrescente rispetto
al colore ottenuto in R, il prossimo teorema segue dal risultato di Bartal
(Teorema 2.4.7).
Teorema 4.3.1. La funzione di pagamento pI induce su una rete con topologia ad albero T un gioco G = (T, I, f, pI ) convergente con coordination ratio
ρ = O(log |I|).
Capitolo 5
Reti ottiche dirette e
conclusioni
In questa tesi è stato affrontato il problema del routing su reti ottiche con
multiplazione a divisione di frequenza (WDM ) in ambito non cooperativo.
Allo scopo di indurre gli agenti a raggiungere in modo egoistico e non cooperativo una soluzione di routing che utilizzi un basso numero di lunghezze
d’onda, abbiamo formulato diverse funzioni di pagamento, ideate per topologie generiche e/o particolari di rete, e per ognuna di esse abbiamo verificato
l’esistenza dell’equilibrio e la convergenza, e stimato il coordination ratio.
Nella Tabella 5.1 è presente uno schema riepilogativo di tutte le funzioni di
pagamento analizzate.
5.1
Risultati ottenuti
Abbiamo individuato tre scenari per la computazione delle funzioni
di pagamento, a seconda dell’informazione a disposizione degli agenti per
computare il proprio costo.
• Nel caso di informazione completa, in cui ogni agente è a conoscenza
dell’intera istanza e dello stato della rete di comunicazione, sono stati
raggiunti risultati pienamente soddisfacenti per ogni topologia di rete,
5.1 Risultati ottenuti
82
Topologia
Livello
Esist.
rete
informazione
equil.
pA
generica
completa
sı̀
sı̀, 3|I| mosse
vedi Nota 5.1
pI
generica
minimale
sı̀
sı̀, |I|2 mosse
|I|
w
pI
catena
minimale
sı̀
sı̀, |I|2 mosse
25.72
pI
albero
minimale
sı̀
sı̀, |I|2 mosse
O(log |I|)
pII
generica
minimale
sı̀
sı̀
pIII
generica
intermedia
sı̀
sı̀
|I|
w
|I|
w
pIV
generica
intermedia
no
no
-
V
generica
intermedia
no
no
-
pV I
generica
intermedia
no
no
-
pV II
generica
intermedia
no
no
-
pV III
generica
intermedia
no
no
-
pIX
generica
intermedia
?
no
-
2
p
X
Convergenza
Coordination
ratio
anello
minimale
sı̀
sı̀, |I| mosse
51.44
pXI
anello An
minimale
sı̀
sı̀, |I|2 mosse
5.06 log2 n + 10
pXII
anello
intermedia
sı̀
sı̀
6 + O( log(π)
)
π
pXIII
catena
intermedia
sı̀
sı̀
)
3 + O( log(π)
π
p
Tabella 5.1:
Funzioni di pagamento analizzate dal punto di vista
dell’esistenza dell’equilibrio, della convergenza e del coordination ratio o
prezzo dell’anarchia nei giochi indotti.
Nota 5.1.
Il coordination ratio è pari al rapporto di approssimazione dell’algoritmo
centralizzato A.
5.2 Estensione dei risultati a reti ottiche dirette
83
grazie alla funzione di pagamento pA convergente in un numero lineare
di mosse ed inducente un gioco con coordination ratio pari al rapporto
di approssimazione di qualsiasi algoritmo efficiente centralizzato A.
• Nel caso di informazione minimale, in cui ogni agente ha informazione unicamente su quali lunghezze d’onda sono disponibili lungo i vari
percorsi che connettono i due nodi relativi all’agente stesso, sono state individuate per ogni topologia di rete funzioni convergenti, ma con
pessimo prezzo dell’anarchia, ovvero con un coordination ratio pari a
quello che si otterrebbe assegnando un colore diverso ad ogni agente.
Restringendoci però a reti con topologie specifiche, abbiamo ottenuto
prezzi dell’anarchia molto più contenuti, ed in particolare costanti per
anelli e catene, e logaritmici per alberi.
• Nel caso di informazione intermedia, in cui ogni agente ha conoscenza
di quali lunghezze d’onda sono disponibili e quali occupate in ogni arco utilizzato dai percorsi che connettono i due nodi relativi all’agente
stesso, si è riusciti a migliorare sensibilmente i risultati per reti con
topologia ad anello e a catena, riuscendo ad ottenere valori di coordination ratio prossimi a 6 e 3 rispettivamente. Per quanto riguarda
invece reti con topologia generica, purtroppo, quasi tutte le funzioni di
pagamento più naturali analizzate si sono rivelate non convergenti, e
comunque sempre con un pessimo coordination ratio.
Nei prossimi paragrafi estendiamo tali risultati al modello di reti ottiche
simmetriche dirette, ed enunciamo i principali problemi rimasti aperti, che
possono essere oggetto di successivi lavori in questo ambito.
5.2
Estensione dei risultati a reti ottiche
dirette
Nei capitoli 3 e 4 di questa tesi si è fatto sempre riferimento ad un modello
di reti ottiche non dirette, in cui la rete era modellata da un grafo non diretto.
5.2 Estensione dei risultati a reti ottiche dirette
84
Ora vogliamo per quanto possibile estendere i risultati ottenuti per il
suddetto modello al modello di reti ottiche simmetriche dirette, largamente
analizzato in letteratura, utilizzato nelle reti ottiche reali e descritto nel Paragrafo 2.2.2, in cui la rete è modellata da un grafo diretto simmetrico, cioè
da un grafo G = (V, E) in cui (x, y) ∈ E ⇒ (y, x) ∈ E.
5.2.1
Reti con topologia generica
I risultati ottenuti nel paragrafo 3.4 relativamente al livello di
informazione completa sono immediatamente trasportabili al caso diretto.
Lo stesso vale per la classe Π di funzioni, descritta nel paragrafo 3.2.
Per quanto invece concerne la classe Ξ descritta nel paragrafo 3.3, e quindi
anche le funzioni di pagamento pI e pII del livello di informazione minimale,
e pIII di quello intermedio, non è possibile affermare che il coordination ratio
ρ delle funzioni di pagamento sia pari a
|I|
,
w(G,I)
~
ossia al coordination peg-
giore possibile; riusciamo tuttavia ad affermare che ρ ≥
|I|
2w(G,I)
~
modificando
l’istanza utilizzata nella prova del Teorema 3.3.3 raddoppiando il numero di
agenti: I = {(vi , v(i+1)mod |I| ), (v(i+1)mod |I| , vi )|i ∈ {1, . . . , |I|}}. Si ottiene allo
stesso modo un routing ottimo che utilizza un solo colore, e un rooting in
equilibrio di Nash che utilizza
|I|
2
colori.
Tutte le funzioni di pagamento descritte nel Paragrafo 3.6.1 sono non
convergenti anche nel caso non diretto, e tutte le dimostrazioni sono adattabili
semplicemente orientando in modo opportuno le richieste delle istanze in esse
utilizzate.
5.2.2
Reti con topologie particolari
Anelli
Quando abbiamo affrontato nel Paragrafo 4.1 il problema del routing in
reti ad anello, lo abbiamo suddiviso in due sottoproblemi: individuazione del
percorso di routing (tra i due possibili) e colorazione dei percorsi di routing.
Entrambi gli approcci impiegati per l’individuazione dei percorsi di routing
5.3 Problemi aperti
85
(riduzione alla linea e percorsi minimi) si trasferiscono in modo naturale al
problema nel caso diretto di individuazione di cammini mantenendo entrambi
il rapporto di approssimazione 2 per quanto riguarda il load.
Inoltre, è facile vedere come nel caso diretto tutte le funzioni di pagamento
presentate pX , pXI e pXII mantengono le stesse caratteristiche di convergenza,
ed inducono giochi con i medesimi prezzi dell’anarchia del caso non diretto.1
Catene ed alberi
Anche per queste topologie (analizzate nel caso non diretto nei paragrafi
4.2 e 4.3) in cui il problema di routing si riduce a quello dell’assegnazione
di lunghezze d’onda poiché i cammini sono unici, i risultati ottenuti con le
funzioni di pagamento pI per entrambe le topologie e pXIII per la topologia
a catena si estendono in modo naturale al caso diretto.
Si noti che per quanto riguarda gli alberi l’estensione è possibile poiché il
Teorema 2.4.7 di Bartal è valido sia nel caso diretto che non diretto.
5.3
Problemi aperti
Mentre il caso di informazione completa è stato completamente compreso
e descritto nel Paragrafo 3.4, negli altri livelli di informazione più ristretta il maggiore problema aperto è quello della determinazione di funzioni di
pagamento per reti con topologia generica convergenti ed aventi un prezzo
dell’anarchia contenuto: nel caso di reti ottiche non dirette, è estremamente
interessante ottenere un coordination ratio strettamente minore del peggiore
possibile, che viene realizzato assegnando un colore diverso ad ogni agente.
1
Nel caso diretto, la funzione pX deve essere opportunamente adattata disincentivando
gli agenti all’utilizzo sia dell’arco (vn , v1 ) che dell’arco (v1 , vn ):
(
1
se (vn , v1 ) o (v1 , vn ) ∈ R(α)
pX
R=(R,c) (α) =
1
1 − c(α) altrimenti
5.3 Problemi aperti
86
Per quanto concerne le reti ottiche dirette, poi, è interessante il problema
della stima precisa del coordination ratio per le funzioni di pagamento della
classe Ξ.
Inoltre, anche per topologie particolari, è auspicabile un miglioramento
del prezzo dell’anarchia, soprattutto per le reti ad albero per cui il coordination ratio raggiunto ha una dipendenza logaritmica nella dimensione
dell’istanza.
Infine, l’analisi e l’ideazione di funzioni di pagamento per le più comuni
istanze con configurazioni di comunicazione fissate, descritte nel paragrafo
2.2.4, è una interessante questione da affrontare sia nell’ambito di reti con
topologie generiche che particolari.
Bibliografia
[1] Alok Aggarwal, Amotz Bar-Noy, Don Coppersmith, Rajiv Ramaswami,
Baruch Schieber, e Madhu Sudan. Efficient routing and scheduling algorithms for optical networks. In Symposium on Discrete Algorithms,
1994.
[2] Y. Bartal e S. Leonardi. On-line routing in all-optical networks. Theoretical Computer Science - special issue for ICALP ’97, 221(1-2):19–39,
1999.
[3] B. Beauquier, J. C. Bermond, L. Gargano, P. Hell, S. Perennes, e U. Vaccaro. Graph problems arising from wavelength-routing in all-optical
networks. In Proceedings of the 2nd Workshop on Optics and Computer
Science, part of IPPS’97, 1997.
[4] M. Beckmann, C. B. McGuire, e C. B. Winston.
Studies in the
Economimices of Transportation. Yale University Press, 1956.
[5] V. Bilò, M. Flammini, e L. Moscardelli. On Nash Equilibria in NonCooperative All-Optical Networks. Dattiloscritto, 2004.
[6] V. Bilò e L. Moscardelli. The price of anarchy in all-optical networks.
In Proceedings of the 11th Colloquium on Structural Information and
Communication Complexity (SIROCCO), volume 3104, pp. 13–22, 2004.
[7] C. A. Brackett.
Dense wavelength division multiplexing networks:
principles and applications.
IEEE Journal on Selected Areas in
Communications, 8:948–964, 1990.
BIBLIOGRAFIA
88
[8] I. Caragiannis, Ch. Kaklamanis, e P. Persiano. Wavelength routing in
all-optical tree networks: A survey. Bulletin of the European Association
for Theoretical Computer Science, 76:104, 2002.
[9] N. K. Chung, K. Nosu, e G. Winzer. Special issue on dense WDM
networks. IEEE Journal on Selected Areas in Communications, 8, 1990.
[10] A. Czumaj.
Handbook of Scheduling:
Algorithms, Models, and
Performance Analysis. Chapter 42. CRC Press, 2004.
[11] A. Czumaj e B. Vöcking. Tight bounds for the worst-case equilibria. In
In Proceedings of the 13th Annual ACMSIAM Symposium on Discrete
Algorithms (SODA), pp. 413–420, 2002.
[12] T. Erlebach e K. Jansen. Scheduling of virtual connections in fast networks. Proc. of Parallel Systems and Algorithms (PASA), pp. 13–32,
1996.
[13] T. Erlebach e K. Jansen. Call scheduling in trees, rings and meshes. In
Proc. of HICSS, 1997.
[14] T. Erlebach, K. Jansen, C. Kaklamanis, M. Mihail, e P. Persiano. Optimal wavelength routing on directed fiber trees. Theoretical Computer
Science, (1-2):119–137, 1999.
[15] Eyal Even-Dar, Alex Kesselman, e Yishay Mansour. Convergence Time
to Nash Equilibria. Manoscritto.
[16] A. Fabrikant, C. H. Papadimitriou, e K. Talwar. The complexity of pure
Nash equilibria. Manoscritto.
[17] R. Feldmann, M. Gairing, T. Lĺucking, B. Monien, e M. Rode. Nashification and the coordination ratio for a selfish routing game. In Proceedings
of the 30th Annual International Colloquium on Automata, Languages
and Programming (ICALP), 2003.
BIBLIOGRAFIA
89
[18] A. Fiat e G. Woeginger. On-line Algorithms. Springer-Verlag, 1998.
[19] D. Fotakis, S. Kontogiannis, E. Koutsoupias, M. Mavronicolas, e P. Spirakis. The structure and complexity of nash equilibria for a selfish routing game. In Proceedings of the 30th Annual International Colloquium
on Automata, Languages and Programming (ICALP), volume 2380, pp.
123–134, 2002.
[20] A. Frank, T. Nishizeki, N. Saito, H. Suzuki, e E. Tardos. Algorithms for
routing around a rectangle. Discrete Applied Mathematics, 40:363–378,
1992.
[21] M. R. Garey, D. S. Johnson, G. L. Miller, e C. H. Papadimitriou.
The complexity of coloring circular arcs and chords. SIAM Journal
on Algebraic and Discrete Methods, 1(2):216–227, 1980.
[22] L. Gargano e U. Vaccaro. Routing in All–Optical Networks: Algorithmic and Graph–Theoretic Problems (in Numbers, Information and
Complexity). Kluwer Academic, 2000.
[23] O. Gerstel, G. H. Sasaki, S. Kutten, e R. Ramaswami. Worst-case analysis of dynamic wavelength allocation in optical networks. IEEE Trans.
Networking, 7:833–845, 1999.
[24] O. Gerstel, G. H. Sasaki, e R. Ramaswami. Dynamic channel assignment for WDM optical networks with little or no wavelength conversion. In Proc. 34th Allerton Conference on Communication, Control,
and Computing, 1996.
[25] M. C. Golumbic e R. E. Jamison. The edge intersection graphs of paths
in a tree. Journal of Combinatorial Theory, Series B(38):8–22, 1985.
[26] P. E. Green. Fiber-Optic Communication Networks. Prentice Hall, 1992.
[27] A. Haurie e P. Marcotte. On the relationship between Nash-Cournot
and Wardrop equilibria. Networks, 15:295–308, 1985.
BIBLIOGRAFIA
90
[28] S. Irani. Coloring inductive graphs on-line. Algorithmica, 11:53–73,
1994.
[29] C. Kaklamanis e G. Persiano. Constrained bipartite edge coloring with
applications to wavelength routing. Manoscritto, 1996.
[30] H. A. Kierstead e W. T. Trotter. An extremal problem in recursive
combinatorics. Congressus Numerantium, 33:143–153, 1981.
[31] H.A. Kierstead e J. Qin. Coloring interval graphs with first-fit. Discrete
Mathematics, 144:47–57, 1995.
[32] R. Klasing. Methods and problems of wavelength-routing in all-optical
networks. In Proceedings of the MFCS’98 Workshop on Communication,
August 24-25, Brno, Czech Republic, pp. 1–9, 1998.
[33] E. Koutsoupias e C.H. Papadimitriou. Worst-case equilibria. In Proceedings of the 16th Annual Symposium on Theoretical Aspects of Computer
Science (STACS), volume 1563 di LNCS, pp. 387–396, 1999.
[34] M. Mavronicolas e P. Spirakis. The price of selfish routing. In Proceedings of the 33rd Annual ACM Symposium on the Theory of Computing
(STOC), pp. 510–519, 2001.
[35] M. Mihail, C. Kaklamanis, e S. Rao.
Efficient access to optical
bandwidth-wavelength routing on directed fiber trees, rings, and trees
of rings. Proc. of 36th FOCS, pp. 548–557, 1995.
[36] J. F. Nash. Equilibrium points in n-person games. In Proceedings of the
National Academy of Sciences, volume 36, pp. 48–49, 1950.
[37] J. F. Nash.
Non-cooperatives games.
In Annals of Mathematics,
volume 54, pp. 286–295, 1951.
[38] G. Owen. Game theory. Academic Press, 3rd edizione, 1995.
BIBLIOGRAFIA
91
[39] Christos H. Papadimitriou. Algorithms, games, and the Internet. Lecture
Notes in Computer Science, 2076:1–11, 2001.
[40] R. Ramaswami.
Multi-wavelength lightwave networks for computer
communication. IEEE Communications Magazine, 31:78–88, 1993.
[41] Rajiv Ramaswami e Kumar N. Sivarajan. Optical networks, a practical
perspective. Morgan Kaufmann Publishers, 2002.
[42] R. W. Rosenthal.
A class of games possessing pure-strategy Nash
equilibria. International Journal of Game Theory, 2:65–67, 1973.
[43] T. Roughgarden. The price of anarchy is independent of the network
topology. In Proceedings of the 34th Annual ACM Symposium on Theory
of Computing (STOC), pp. 428–437, 2002.
[44] T. Roughgarden e E. Tardos. How bad is selfish routing? Journal of
ACM, 49(2):236–259, 2002.
[45] C. Siva, Ram Murthy, e Mohan Gurusamy. WDM optical networks,
concepts, design and algorithms. Prentice Hall, 2002.
[46] M. Slusarek.
Optimal on-line coloring of circular arc graphs.
Informatique Théorique et Applications, 29(5):423–429, 1995.
[47] A. Tucker. Coloring a family of circular arcs. SIAM Journal of Applied
Mathematics, 29(3):493–502, 1975.
[48] Jorgen W. Weibull. Evolutionary Game Theory. MIT Press, prima
edizione, 1997.
Scarica

Equilibri di Nash in reti ottiche non cooperative