Aucun titre de diapositive

publicité
Mécanismes
Professeur Michel de Rougemont
[email protected]
http://www.lri.fr/~mdr
Equilibres et mécanismes
1. Mécanismes élémentaires
2. Mécanismes de Vickrey
3. Enchères combinatoires
4. Non approximation
Mécanismes
Jeu à N joueurs pour résoudre un problème:
•Equilibre du jeu est une solution,
•Chaque joueur essaye de maximiser son utilité
Equilibre au sens de stratégies dominantes.
Situation informatique: Protocole.
Mi
Dans quel état est Mi
Mi est dans l’état q mais
répond r.
Diner des Philosophes
Pi-1
Pi
Fourchette libre?
Pi est dans l’état q ou en
panne
Mécanisme d’Enchères
Un objet aux enchères:
Jeu à N joueurs:
•Type de chaque joueur ti valeur supposée.
•Pari (Bid) de chaque joueur di valeur affichée
Problème: Entrée (T,D)
•Allouer l’objet au joueur j
•Déterminer un paiement p
Utilité pour i:
ui = ti -p
Définition. Un mécanisme est vérace si la
stratégie D=T est dominante.
Différentes Enchères
Enchères anglaises:
Allocation à i Max di au prix p= Max di
Enchères de Vickrey:
Allocation à i Max di au prix p= Maxj dj
pour j différent de i.
D=T est dominante.
Supposons D’ dominante:
ui (D’) = ti (D’) -p (D’) > ti (D) -p (D) =0
Cas 1. d’j dominante ne change pas l’allocation.
Cas 2. Joueur i gagne l’enchère et j gagnait avec
D. Donc di > dj > ti mais u i <0!!
Cas 3. Joueur i perd l’enchère et gagnait avec D.
Donc di < ti mais u i =0.
Enchères combinatoires
K objets sont à allouer parmi N joueurs:
G ensemble objets, P ensemble des joueurs
Pour chaque s  G soit
:G  P
type du joueur i, i : 2 R ou R
G
2G
Chaque joueur annonce di pour chaque s, et garde
le type ti secret. Soit T et D les vecteurs
correspondants et P le vecteur paiement.
L’utilité pour i de s est u=t(s) - p
Le mécanisme doit:
•Allouer les objets, trouver f(D)
•Déterminer les paiements P
Enchère vérace (truthful) si D=T est dominant,
n
f(D)  MaxA di (A1(i))
i1
Enchères combinatoire de Vickrey
n
f(D)  MaxA di (A1(i))
i1
sgi (D) f(D)1(i)
Soit s alloué au joueur i:
n
n
i1
i1,i j
pj(D)  di (gi (Z)) di (gi (D))
Paiement de j:
Z est tel que
Zi Di pour i j et Z j (s)0
GVA est vérace.
Soit D’ tel que
Di 'Di pour i j et Dj 't
On veut montrer que D’ est une meilleure stratégie:
n
n
d '(g (D'))d '(g (D)) car D 'tD
i
i1
i
i
i1
i
j
j
Enchères combinatoire de Vickrey
n
n
i1
i1,i j
u j(D')t j(g j(D')) -pj(D') t j(g j(D')) - di '(gi (Z)) di '(gi (D'))
On minore la somme et
t j(g j(D')) par t j(g j(D))
n
n
i1
i1,i j
u j(D')  t j(g j(D))- di '(gi (Z)) di '(gi (D))u j(D)
L’utilité est meilleure pour D’.
Le mécanisme est vérace.
Problème: L’allocation est NP-complète et
non approximable.
Le mécanisme n’est plus vérace!!
Joueurs simples
Chaque joueur ne recherche qu’un s:
t(s')v pour tout ss'
Problème: L’allocation reste NP-complète et
non approximable.
Allocation gloutonne:
•Définir une norme pour (s,v)
•Trier selon la norme et allouer
Mécanisme non vérace. Il existe des conditions
suffisantes de véracité.
(D. Lehmann et al. , JACM 2002)
NP -complétude
Existe-t-il un algorithme polynomial?
Exemple SAT (variables booléennes)
x1  x2 x3
x2  x3  x4
x3x4
1x1  x2  x3
0
1x2
 x3 x4
0
1x3
 1x40
Pas d’algorithme polynomial connu.
Définition : Un problème est NP s’il est
vérifiable en temps polynomial.
A est réductible à B A p B
s’il
existe une fonction f calculable en temps
polynomial t.q. xA ssi f(x)B
A est NP-complet si A est NP et tout B de
la classe NP est réductible à A.
Théorème. SAT est NP-complet
Programmation linéaire en
nombres entiers
Théorème.
PL est NP-complet
Réduction à SAT
x1  x2 x3
x2  x3  x4
x3x4
1x1  x2  x3
0
1x2
 x3 x4
0
1x3
 1x40
Pas d’algorithme polynomial connu.
Définition : Un problème d’optimisation
est approximab le s’il existe un
algorithme polynomial dont la solution
A(x) est t.q.
f(x)(1) A(x) f(x)(1)
Théorème.
alors P=NP.
Si PL est
approximab le
Couverture, Hamiltonicité,
Voyageur de commerce
1
5
1
2
4
2
9
6
3
3
2
2
6
10
7
4
Couverture : ensemble (minimum) d’arêtes
qui couvre tous les nœuds.
Circuit Hamiltonien : circuit qui passe une
seule
fois par tous les nœuds.
Voyageur de Commerce
: circuit hamiltonien
n
qui minimise
ci
i
Théorème : ces 3 problèmes sont NP-complets
Couverture est approximable
Couverture minimum : ensemble (minimum)
d’arêtes qui couvre tous les nœuds.
Algorithme : prendre une arête e=(u,v), l’ajouter
à C et retirer u et v au graphe.
Comment évaluer
C  Cmin / C
Cmin  C /2
Tout nœud est couvert
C  Cmin / C 1/2
On en déduit :
Algorithme 0.5 approximatif.
n
c
i
i
Voyageur de commerce n’est
pas approximable
VC : n arêtes qui définissent un circuit
hamiltonien de coût minimum.
S’il existe un algorithme d’approximation, alors
P=NP.
Réduire HAM à
VC
Soit Gn donné : introduire des coûts de 1 pour
les arêtes de Gn et de n/1 pour les autres.
Si on approxime VC à  près, alors si la
solution est proche de n, HAM est vrai sinon
HAM est faux.
Pas d’algorithme d’approximation.
Complexité et approximation
3 solutions possibles:
•Problème est approximable pour un 
(Couverture)
•Problème est approximable pour tout 
Knapsack (Sac-à-dos)
•Problème est non approximable (VC)
Approximation par échantillonnage
MAXCUT, 3COL.
Estimer ces fonctions sur des sousgraphes aléatoires et faire la moyenne.
G
Applications
1.Recherche opérationnelle classique.
2. Analyse d’algorithmes : Simplex est
polynomial en perturbation (smoothed
complexity, Spielman 2001)
3. Jeux et Complexité. Les joueurs ont des
ressources bornées. Les équilibres changent
lorsqu’on prend en compte la complexité.
4. Mécanismes. Quel est le jeu lorsqu’on part
d’un équilibre? Enchères, enchères
combinatoires.
5. Economie de l’information. Comment
construire des modèles de valeur pour:
un site, un email, un formulaire?
Téléchargement