Aucun titre de diapositive

publicité
Modèle des jeux et des mécanismes
Michel de Rougemont, LRI , University Paris II
Jeux et Mécanismes
1. Modèle de calculs, adapté à un nombre
important d’agents, suivant une fonction
d’utilité. WEB.
2. Jeux: N joueurs suivant chacun un but.
Quels sont les Equilibres?
3. Mécanismes: observons un équilibre, de
quel jeu sommes nous l’équilibre?
Exemples de Jeux
1. Dilemme des Prisonniers
Deux décisions C (collaborer), T (Trahir)
 2,2


 4 ,1

1. Version répétée.
3. Jeux de vérification. Graphes d’accessibilité.
4. MaxSAT, MaxCUT: jeux à N joueurs
4. Jeux logiques: Nord-Est, dames, Echecs.
1,4 


3,3
Mécanisme pour réduire le SPAM
1. Comment faire la différence entre un vrai mail
et un SPAM?
2. Modifications au protocole de mail (pop, smtp)
3. Valeur d’un Email?
Valeur proportionnelle aux calculs demandés à
A (Alice) par B (Bob)
Modifications au protocole de mail (pop, smtp)
1. A prend un ticket sur la page Web de B. (Entrée
x d’un problème)
2. A calcule f(x)=y
3. A envoie y et l’Email
4. B vérifie y
A
1. ticket
3. Résultat et Email
B
A calcule une fonction polynomiale
A prend un ticket sur la page Web de B.
B : génère un polynôme aléatoire de degré n
P(x)a1.x a2 x2....an xn
B: choisit n+1 valeurs aléatoires
y1 P(x1 ), y2 P(x2),..., yn1P(xn1)
Ticket=
(x1 , y1 ),(x2, y2),...,(xn1yn1)
A doit trouver P(x) à partir du ticket.
Interpolation ou Inversion matricielle
B vérifie le calcul
B garde P(x) lorsqu’il génère le ticket.
Vérifier consiste à comparer les coefficients de P(x)
avec ceux envoyés par A.
P(x)a1.x a2 x2....an xn
On peut paramétrer:
le degré, la précision des valeurs aléatoires pour
forcer A à calculer 10 minutes 30 minutes….
Interpolation est polynomiale
La vérification est triviale
Jeux à somme nulle
Deux joueurs I et II:
0
 2
3
0

2 3 0 
0 0 3
0 0 4
3 4 0 
Gain de II = - Gain de I
Jeu Morra: chaque joueur cache 1 ou 2 Euros et cherche
à deviner le choix de l’autre joueur. Il gagne s’il devine
correctement. Si 1 seul joueur gagne, son gain est le
montant caché total, payé par l’autre joueur, sinon le gain
est de 0
Gain du Jeu
n
n
  a .x y
Gain du jeu :
i, j i
i1
Miny
Joueur I :
Miny
x.A.yMin j
j 1
x.A.y
n
 a .x t
i, j i
i1
Réponse de II peut être pure
n
n
n
j 1
i1
j 1
x.A.y  y j(  ai, j.xi )  y j.tt
Donc : Miny x.A.y t
Toute solution pure doit satisfaire
n
Miny
x.A.y Min j  ai, j.xi t
i1
j
Stratégie optimale
tMiny
Conclusion
Miny
Joueur II peut jouer une stratégie
pure
n
Max Min j
n
a
i1
 x 1
i
i1
Max
z
n
z  ai, j.xi 0
i1
n
 x 1
i
i1
.x
i, j i
x.A.y t
x.A.y t
Stratégie optimale
Conclusion
Max
z
z
2x23x3
0
z 2x1
3x40
z 3x1
4x40
z
3x24x3
0
x1  x2  x3  x4 1
Solution x*= [0,3/5,2/5,0]
Résolution par simplex.
Trouver une solution initiale
Théorème Minimax
Situation pour le joueur II
n
a
Min Maxi
.y j
i, j
j 1
n
 y 1
j
j 1
Min
w
n
w  ai, j.y j0
j 1
n
 y 1
j
j 1
Problème dual du précédent. Par dualité:
Théorème (Von Neuman) : Max Min = Min Max
Dualité: Simplex
Résolution d’un système linéaire de maximisation:
Max ct.x
A.xb
x1 ,x2,...xn 0
•Introduction de variables d’écart
•Solution initiale
•Itération pour augmenter la valeur de la solution.
•Terminaison
Bases de la Dualité
Max 4x1  x2 5x33x4
x1
x2 x3 3x4 1
5x1  x2 3x3 8x455
x1 2x23x3 5x4 3
x1 ,
x2, x3, x4 0
Estimation de z > a
z>5 avec (0,0,1,0)
z>22 avec (3,0,2,0)
….
Estimation de z <b ?
Quel est le témoin?
Dualité : z < b
Max 4x1  x2 5x33x4
x1
x2 x3 3x4 1
5x1  x2 3x3 8x455
x1 2x23x3 5x4 3
x1 ,
x2, x3, x4 0
Montrons que z <275/3
2nd contrainte . 5/3
25/3x1 5/3x25x3 40/3x4275/3
4x1  x2 5x3 3x425/3x1 5/3x25x340/3x4275/3
Donc z <275/3
Dualité
Max 4x1  x2 5x33x4
x1
x2 x3 3x4 1
5x1  x2 3x3 8x455
x1 2x23x3 5x4 3
x1 ,
x2, x3, x4 0
2nd contrainte +3ème contrainte
4x1 3x26x33x458
Donc z <58
Méthode systématique.
Dualité : méthode
Max 4x1  x2 5x33x4
y1 . x1 x2 x3 3x4 1
y2 . 5x1  x2 3x3 8x455
y3 . x1 2x23x3 5x4 3
x1 ,
x2, x3, x4 0
(y1 5y2  y3).x1 (y1  y2 2y3).x2(y1 3y2 3y3).x3
(3y1 8y2 5y3).x4(y1 55y2 3y3)
Conditions pour que le membre gauche >
4x1  x2 5x3 3x4
y1 5y2  y3
 y1  y2 2y3
 y1 3y23y3
3y1 8y2 5y3
4
1
5
3
Dualité: exemple
4x1  x2 5x3 3x4z y1 55y1 3y3
On obtient donc le système dual:
Min y1 55y2
3y3
y1
5y2  y3
 y1
 y2 2y3
 y1
3y23y3
3y1
8y2 5y3
4
1
5
3
Remarques générales
Problème Primal de Maximisation donne un problème Dual de
minimisation.
4x1  x2 5x3 3x4z y1 55y1 3y3

n
j 1
 a y  x 
b y
a x y 
c j x j  j 1
n

m
i1

n
j 1
m
i, j
i1
i
m
i, j
j
i
i1
A l’optimum:

n
j 1
j
c j x*ji1 bi yi*
m
i
i
Démonstration Minimax
Considérons la dernière ligne du dernier
système du primal:
zz*k 1 ck' .xk
nm
z  j 1 c j.x*j
n
*
Posons:
yi*ci'n pour i1...m
Vérifions que y* satisfait :

n
j 1
c j.x 
*
j

m
i1
bi .yi*
Démonstration Minimax
Les variables d’écart sont définies comme:
xni bi  j 1 ai, j.x j
n
i1...m
 j1c j.x j z*k 1 ck' .xk
nm
n
yi*ci'n pour i1...m

n
c j.x j z k 1 ck' .xk i1 yi*.xni
j 1
n
*
m

 j1c j.x j z*k 1 ck' .xk i1 yi*.bi  j1 ai, j.x j
n
n
m
 j1c j.x j (z*i1 yi*bi )k 1
n
m
n
c 
n
'
k
j 1


ai, j.y*j xk
z*i1 yi*bi
Comparant les coefficients
de xj
m

n
Et on conclut:
n
j 1
c j.x*j 

m
i1
bi .yi*
Complémentarité
Contraintes saturées du dual (m=3)
et variables nulles du primal (n=2)
x3*x4*0
x1*2,x2*2, x5*1
*0, y4
*0, y5
*0
y1*2, y3*1, y2
x1*2
x2*2
Min 2y1  y22y3
y1  y2
2
 y2  y3 1
Soit xi=0 soit contrainte duale est saturée
Complémentarité
Contraintes saturées du primal (n=2)
et variables nulles du dual (m=3)
x3*x4*0
x1*2,x2*2, x5*1
*0, y4
*0, y5
*0
y1*2, y3*1, y2
y1*2
y2*0
y3*1
Max 2x1  x2
x1
2
x1 x2 1
x2 2
Soit yi=0 soit contrainte primale est saturée
Théorème : Ces deux conditions caractérisent
une solution x*,y* optimum.
Interprétation économique
Exemple de fabrication de produits
en quantité x1, x2, x3.
Chaque produit utilise des composants
e1,e2,e3,e4 et contribue à un profit
ci ($ par unité de xi)
Contraintes du primal : Ax < b
Contraintes du dual A’ y >c
yj = $ par unité de composant ej
Min y.b
: coût minimum des composants
Exemple simple
Exemple: Matrice
 3 1


 3 1 


Max z
z 3x1 3 x20
z x1  x2 0
x1  x2 1
Programme
linéaire
Solution x*=
[1/2, 1/2]
Interprétation graphique: Sommet de l’enveloppe
inférieure
1
Jeux matriciels
Deux joueurs: les gains des I et II sont définies par deux
matrices A,B de même dimension. Pour n joueurs, n
hypercubes.
 2 1 3
 1 3 2



A
B
 2 3 1
 4 1 3




Max xT.A.y
Min eT.u
E .x  e
ET.u A.y
Solution possible:
x*= [2/3,1/3] , y*= [1/3,2/3]
Jeux matriciels
xT.A.yeT.u
Par dualité:
E.xe  et xt.Et
xT.A.yxt.Et.u
xT.(Et.u A.y)0
Et.u A.y0
Pour le joueur II:
Max xT.B.y
F .x  f
yT.(F t.vBt.x)0
(F t.vBt.x)0
par dualité
Primal Dual
C.N.S. pour être un équilibre de Nash
Un couple (x,y) est un équilibre de Nash ssi il existe u,v
tel que:
E.xe
F .y  f
Et.u A.y0
F t.vBt.x0
xT.(Et.u A.y)0
yT.(F t.vBt.x)0
Programme linéaire + contraintes quadratiques de
complémentarité.
Simplex + complémentarité= Lemke-Howson
Algorithmique des Jeux
1. Etant donné deux matrices A,B, trouver un équilibre.
2. Généralisation à N joueurs: représentation compacte
de l’hypercube.
3. Approximation.
4. Vérification approchée.
Téléchargement