Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Prima versione
3
La teoria cooperativa
serata. In città apre un nuovo locale che vorrebbe organizzare delle serate
con chitarra e voce e il proprietario del locale offre a Giulia e Paolo 170
euro per ogni serata.
v(∅) = 0,
v(∅) = 0,
v(B,D) = v(C,D) = 1,
v(A,B,C) = v(A,B,D) = v(A,C,D) = v(B,C,D) = 1,
v(A,B,C,D) = 1.
In questi giochi distinguiamo le coalizioni minimali, cioè quelle coali-
zioni vincenti che non sono più tali quando perdono un membro:
Definizione 3.1.4 In un gioco semplice (N, v) una coalizione A ⊂ N è
detta minimale (vincente) se:
• v(A) = 1
• B ( A ⇒ v(B) = 0
Nell’esempio precedente la coalizione {A,B,C} è minimale, mentre {A,C,D}
non lo è, perché risulterebbe vincente anche se A se ne andasse.
Questi esempi ci mostrano che, dato che assegnamo sempre 0 alla coa-
lizione vuota, per descrivere un gioco cooperativo è sufficiente un vettore
di 2n − 1 elementi. Ma è davvero cosı̀? In realtà non tutte le funzioni
caratteristiche che possiamo immaginare si prestano bene per descrivere
un gioco cooperativo. Un gioco cooperativo deve soddisfare la seguente
proprietà, chiamata superadditività:
Definizione 3.1.5 Consideriamo un gioco (N, v) in cui v rappresenta
una utilità. Siano A e B due coalizioni tali che A ∩ B = ∅. Il gioco si
definisce superadditivo se v(A ∪ B) ≥ v(A) + v(B).
Questa proprietà ci dice che l’utilità di una coalizione è superiore alla
somma delle utilità delle sue componenti e si può riassumere con il motto
”l’unione fa la forza”. Significa che i giocatori sono incentivati a cooperare
per ottenere risultati migliori.
se decido di dividere la corsa in taxi con i miei amici Giulia e Luca, quanto
dovrò pagare?
Definizione 3.2.1 Un vettore soluzione di un gioco cooperativo con n
giocatori è un vettore (x1 , x2 , ...xn ) che rappresenta una distribuzione di
costi o utilità. Un concetto di soluzione, invece, è una funzione che associa
a ciascun gioco un insieme (anche vuoto) di vettori soluzione.
È importante sottolineare che le coalizioni sono soltanto uno strumento
per ottenere dei risultati, una soluzione determina quanto viene assegna-
to ai singoli individui: il valore assegnato alle coalizioni dalla funzione
caratteristica serve solo a determinare quanto è ragionevole assegnare ai
singoli giocatori.
La teoria dei giochi cooperativi si applica a cosı̀ tanti contesti e situa-
zioni che non èragionevole aspettarsi un’unica idea di soluzione. Tutto
dipende da cosa abbiamo in mente, che tipo di soluzione cerchiamo, da
quali proprietà ci aspettiamo che soddisfi. In alcuni casi potremmo tro-
vare più soluzioni che rispondono alle nostre richieste, in altri una sola,
in altri nessuna...
Per iniziare, introduciamo un concetto di soluzione molto intuitivo,
chiamato imputazione.
3.2.1 Imputazioni
La prima condizione dice che ogni giocatore non deve ricevere meno di
quanto sia in grado di ottenere da solo. Quindi non ci saranno proteste da
3.2 Soluzioni di un gioco cooperativo 51
parte dei singoli giocatori. La seconda condizione dice invece che la som-
ma delle utilità individuali deve coincidere con l’utilità della coalizione
formata da tutti i giocatori, cioè l’utilità che si genera deve essere intera-
mente distribuita tra i giocatori. In altre parole, queste distribuzioni di
utilità sono efficienti. Se invece la funzione caratteristica v rappresenta
un costo, le prime disuguaglianze vanno ovviamente rovesciate. L’impu-
tazione è un concetto di soluzione molto ragionevole, ma che utilizza
solamente una parte delle informazioni fornite dalla funzione caratteri-
stica che descrive il gioco. La definizione di imputazione, infatti, prende
in considerazione il valore delle coalizioni formate da un singolo giocato-
re e quello della coalizione formata da tutti i giocatori, ma non i valori
assegnati alle altre coalizioni. Viene naturale allora tenere conto anche di
quanto possono fare el coalizioni.
3.2.2 Nucleo
La prima condizione della definizione di imputazione impone che non
vengano sollevate obiezioni da parte dei singoli. È ragionevole richiedere
la stessa cosa per le coalizioni, cosa che ci porta alla definizione di nucleo.
2(x1 + x2 + x3 ) ≥ 3
esiste una coalizione che non contiene i e risulta vincente, cioè v(Ai ) = 1.
Supponiamo che un vettore (x1 , x2 , ..., xn ) appartenga al nucleo. Allora:
X X
xj ≥ xj = 1,
j6=i j∈Ai
n
X
Ricordiamo però che xj = 1 per la definizione di nucleo. Quindi si
j=1
ottiene n − 1 = n che è assurdo.
Per l’altra implicazione, si verifica facilmente che assegnare 1 a un gioca-
tore (qualunque) di veto, e 0 a tutti gli altri, è un vettore del nucleo. In
generale, sta nel nucleo ogni vettore le cui componenti sommano a uno a
che assgna 0 ai giocatori che non sono di veto.
Il concetto di nucleo è sicuramente interessante, ma, dal momento
che non sempre propone delle soluzioni (come nell’Esempio 3.2.2), sia-
mo tentati di guardare altrove. Inoltre, anche quando il nucleo propone
soluzioni, alcune di queste sembrano ”ingiuste”. Per esempio, nel gioco
dei guanti viene assegnato 0 a chi possiede un guanto destro. È vero che
i guanti destri sono sovrabbondanti mentre quelli sinistri scarseggiano,
ma i giocatori che possiedono un guanto sinistro hanno comunque biso-
gno di guanti destri, quindi sembra poco ragionevole l’assegnazione del
nucleo. Vediamo quindi un concetto di soluzione simile che risolve alcune
di queste debolezze.
3.2 Soluzioni di un gioco cooperativo 55
3.2.3 Nucleolo
I pesi s!(n−s−1)!
n!
che compaiono nella formula del valore Shapley han-
no un’interpretazione probabilistica interessante. Supponiamo che tutti i
giocatori debbano incontrarsi a una certa ora e che l’ordine di arrivo sia
equiprobabile. Diciamo poi inoltre che il giocatore i entra nella coalizio-
ne S soltanto se al suo arrivo trova tutti i membri di S già presenti. Il
coefficiente rappresenta esattamente la probabilità che questo accada.
Vediamo ora alcune proprietà interessanti del valore Shapley.
Proprietà 3.2.1 Chiamiamo giocatore nullo un giocatore i che non por-
ta contributo ad alcuna coalizione, né positivo né negativo. In altre
parole:
v(S ∪ {i}) = v(S) ∀S.
Il valore Shapley di un giocatore nullo è pari a 0.
Proprietà 3.2.2 Due giocatori i e j si dicono simmetrici se il loro con-
tributo, quando si uniscono a una qualunque coalizione, risulta essere
identico, cioè:
v(S ∪ {i}) = v(S ∪ {j})
3.2 Soluzioni di un gioco cooperativo 59
X (s + 1)!(n − s − 2)!
+ [v(S ∪ {i ∪ j}) − v(S ∪ {j})],
n!
S∈2N \{i∪j}
X (s + 1)!(n − s − 2)!
+ [v(S ∪ {i ∪ j}) − v(S ∪ {i})],
n!
S∈2N \{i∪j}
Vediamo ora il valore Shapley utilizzato nei giochi semplici, quei giochi
in cui le coalizioni si dividono in perdenti e vincenti. Nel caso dei giochi
semplici, il valore Shapley diventa:
X (a − 1)!(n − a)!
σi (v) = ,
A∈W
n!
i
Esercizio 3.2.3 Determinare il nucleo nel caso del gioco del taxi (Esem-
pio 3.1.2).
Esercizio 3.2.4 Questo gioco estende quello dei guanti già visto con tre
giocatori (Esempio 3.2.1. Consideriamo un gruppo di 25 giocatori, di cui
10 possiedono un guanto sinistro e 15 un guanto destro. Verificare che il
nucleo contiene un solo vettore, che assegna 1 a ogni giocatore del gruppo
meno numeroso e 0 agli altri.
Esercizio 3.2.5 Determinare il nucleolo nel caso del gioco dei guanti
(Esempio 3.2.1).
Esercizio 3.2.6 Determinare il nucleolo nel caso del gioco dei tre fratelli
(Esempio 3.2.2).
Esercizio 3.2.7 Determinare il valore Shapley del seguente gioco:
N = {1, 2, 3},
s1 s2 s3 s 4 s5 s 6 s7 s8 s9
u1 q1 = 1
u2 q2 = 2
u3 q3 = 2
u4 q4 = 2
u5 q5 = 1
Figura 4.1. Un problema di matching: abbinare studenti e college.
m1 m2 m3
w1
w2
w3 )
Figura 4.2. Un matching stabile tra tre uomini e tre donne. Gli accoppiamenti sono
evidenziati dai pallini blu.
1
Si usa anche dire un matching ottimale, o una soluzione razionale del problema
66 4 Problemi di matching
m1 m2 m3
w1
w2
w3
Figura 4.3. L’esempio della Figura 4.2, col matching stabile determinato dall’algoritmo
donne in visita.
2
La dimostrazione precedente è scritta per un matching uno-uno, ma si adatta facilmente
a matching più generali.
68 4 Problemi di matching
m1 m2 m3
w1
w2
w3
Figura 4.4. L’esempio della Figura 4.2, col matching stabile determinato dall’algoritmo
uomini in visita.
molto meno per chi vuole fare storia, e cosı̀ via); inoltre dichiara la
quota di posti disponibile;
3. Ogni studente dichiara la sua classifica sui vari corsi di studio;
4. Viene implementato l’algoritmo studenti in visita.
L’ultimo punto è una variante interessante, rispetto all’goritmo prece-
dente, introdotta recentemente e quanto mai opportuna. Sembra infatti
ragionevole che siano gli studenti ad avere la sistemazione stabile migliore
possibile, perché l’Università è un servizio pagato dalla collettività, che
tra i suoi compiti ha quello di dare competenze di livello elevato, e quindi
come servizio agli studenti sembra socialmente ragionevole che siamo gli
studenti favoriti. Ma c’è un altro motivo che è ancora più interessante, e
lo descriviamo per concludere.
In tutto quanto abbiamo visto, abbiamo dato per scontato che le pre-
ferenze siano note a tutti, in particolare a chi cerca i matching stabili.
Tuttavia, in genere queste sono informazioni private, e quindi è lecito
chiedersi se è possibile che gli agenti mentano sulle preferenze, nel ten-
tativo di ottenere risultati migliori. La risposta è sı̀, è possibile che un
agente, mentendo, ottenga una situazione migliore. Però vale il risultato
seguente:
H a G a F a E b E a E c E d
F b E b G b H c F a F d F b
F c H c G c E d G a G c G b
E d H d G d F d H c H b H a