programmation linéaire, jeux, complexité
Post on 18-Jan-2016
52 Views
Preview:
DESCRIPTION
TRANSCRIPT
Programmation linéaire, Jeux, Complexité
http://www.lri.fr/~mdr
Professeur Michel de Rougemontmdr@lri.fr
http://www.lri.fr/~mdr
Jeux et Complexité
1. Jeux, Equilibres
2. Complexité, NP-complétude
3. Programmation entière
4. Approximation
Jeux à somme nulle
Deux joueurs I et II:
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
04304003
30020320 1, 1
1, 2
2, 1
2, 2
état annonce
état annonce
état annonce
état annonce
Gains des joueurs
Résultat du jeu :
Joueur I : tx yMax Min x .A.y
,1
.n
ty j i j i
i
Min x .A.y Min a x t
jiji
n
j
n
i
yxa . ,11
Montrons que la réponse de II peut être pure
Toute solution pure doit satisfaire
ttyxayx.A.yn
jjiji
n
j
n
jj
1,
11
. ). (
,1
.n
ty j i j i
i
Min x .A.y Min a x t
Programme linéaire
Conclusion
Joueur II peut jouer une stratégie pure
1
.
1
,1
i
n
i
iji
n
ij
x
xaMinMax
t x.A.yMint y
t x.A.yMiny
1
0.
1
,1
i
n
i
iji
n
i
x
xaz
zMax
Exemple: Morra
Conclusion
1043043032032
4321
32
41
41
32
xxxxxxz
xxzxxz
xxzzMax
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
1
.
1
,1
j
n
j
jji
n
ji
y
yaMaxMin
1
0.
1
,1
j
n
j
jji
n
j
y
yaw
wMin
Problème dual du précédent.
Théorème : Max Min = Min Max
Equilibre de Nash
1043043032032
4321
32
41
41
32
xxxxxxz
xxzxxz
xxzzMax
Solution x*= [0,3/5,2/5,0]. Pour le dual y*= [0,3/5,2/5,0].
Solution (x*,y*) est un équilibre de Nash, une paire de stratégies telles que:
Les stratégies sont des meilleures réponses mutuelles (B=-A). Généralisation aux jeux à somme non nulle.
***' , .A.yx.A.yxx' **'* , .B.yx.B.yxy'
Exemple simple
Exemple: Matrice
Programme linéaire10033
21
21
21
xxxxzxxz
zMax
Solution x*= [1/2, 1/2]Interprétation graphique: Sommet de l’enveloppe inférieure
13
13
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.
Solution possible: x*= [2/3,1/3] , y*= [1/3,2/3]
Solution (x*,y*) est un équilibre de Nash.
314
231
132
312BA
exE
yAxMax T
.
..
yAuE
ueMin
T
T
..
.
Jeux matriciels
Par dualité: DualPrimal ... ueyAx TT
tt ExexE .e . t
.... uExyAx ttT 0)...( yAuEx tT
0.. yAuEt
Pour le joueur II:
fxF
yBxMax T
.
..
0)...( xBvFy ttT
dualitépar 0)..( xBvF tt
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:
. exE
0)...( yAuEx tT
0.. yAuEt
Programme linéaire + contraintes quadratiques de complémentarité.
Simplex + complémentarité= Lemke-Howson
fyF .
0)...( xBvFy ttT
0.. xBvF tt
Algorithme de Lemke-Howson
Procédure algorithmique pour trouver des équilibres: Simplex+ complémentarité.
314
231
132
312BA
LH Graphes dans les simplex de I et II• Extrémités du simplex•Points frontières
ou ..ou .. 3,3,2,2,2,2,1,1, ii
iii
ii
iiii
i bxbxbxbx
Exemple :
.. 3,3,1,1, i
iii
ii bxbx
1Soit 2
1
xx
-1yyy
Soit 3
2
1
Algorithme de Lemke-Howson
LH Graphes dans les simplex de I et II• Extrémités du simplex•Points frontières
ou ..ou .. 3,3,2,2,2,2,1,1, ii
iii
ii
iiii
i bxbxbxbx
Exemple :
.. 3,3,1,1, i
iii
ii bxbx
1Soit 2
1
xx
-1yyy
Soit 3
2
1
Algorithme de Lemke-Howson
314
231
133
312BA
Lignes de A:
5/3où d' )1(3)1(4 :2,1 Colonnes 1,2 colonnespour 11/5 valeur5/3Pour
limite.point Non 3. colonnepour 12/5 valeur5/3Pour
3/2où d' )1(32)1(3 :3,2 Colonnes 1,2 colonnespour 7/3 valeur3/2Pour
limite.Point 1. colonnepour 2 valeur3/7Pour
2/1où d' )1(32)1(4 :3,1 Colonnes 1,3 colonnespour 5/2 valeur2/1Pour
limite.Point 2. colonnepour 2 valeur2/1Pour
)1(.33. )1.(32.A dans Lignes1,2 43 2
Colonnes de B:
Algorithme de Lemke-Howson
314
231
133
312BA
Coloriage LH Graphes dans les simplex de I et II5 couleurs: (1,2) pour I et (3,4,5) pour II.
Coloriage dans le simplex de I:
2ou 1ipour i colorié )x,(xpoint ,0 x 21i Si ,(B) optimale j colonne si point x,un Pour
IIpour symétrique Coloriage
3,4,5)(j j coloriépoint x
3,4,5jpour j colorié ),y,y(ypoint ,0y 321i Si
,(A) optimale i ligne si y,point un Pour 1,2)(i i coloriéy point
Algorithme de Lemke-Howson
314
231
133
312BA
(1,0)
(0,1)
(2/3,1/3)
1 2
3
4 5
1 3
4
2 4
3
(1,0,0) (0,1,0)
(0,0,1)
(0,1/2,1/2)
1
2
4
3
1 2
4 5
1
2
Couleurs Lemke-Howson
5
3
3
(2/3,0,1/3)4
(1/2,1/2)
5
5
2
Algorithme de Lemke-Howson
314
231
133
312BA
Lemke-Howson:
Nash de équilibreun est ),y,y(y )x,(x Paire 32121
couleurs. des C ensemblel' couleurs leurs deunion l' ssi
Exemple:
Nash de équilibreun est (1,0,0) (0,1) Paire
Procédure algorithmique:
Commencer en (0,0),(0,0,0) et choisir une couleur à exclure pour x puis pour y.
On termine sur un équilibre de Nash.
Nash de équilibres autres 2 lessont )(2/3,0,1/3, (1/2,1/2)et )(0,1/2,1/2, (2/3,1/3) Paires
Exemple 2
356
320
320
401BA
Algorithme LH1. Points frontières pour I: (1/3,2/3) et (2/3,1/3)
pour II: 2. Coloriage des points: 1/3
D’après B. Von Stengel, Computing Equilibria for two-person games, Handbook of Game theory with Economic applications, 2002.
Coloriage Lemke-Howson
(1,0)
(0,1)
(2/3,1/3)
1 2 4 5
1
42
3
(1,0,0) (0,1,0)
(0,0,1)(0,1/3,2/3)
1
2
4
3
1 2
4 5
1
Couleurs Lemke-Howson
5
3
3
(2/3,1/3,0)
356
320
320
401BA
(1/3,2/3)33 4
5
1
2 5
4 5
Equilibres de l’exemple 2
356
320
320
401BA
Equilibres de Nash1. (1,0) et (0,0,1) 2. (1/3,2/3) et (2/3,1/3,0)3. (2/3,1/3) et (0,1/3,2/3)
Existence d’Equilibres
Lemme deSperner
Point-fixeBrouwer
EquilibreArrow-Debreu
Point-fixeKakutani
EquilibreNash
Preuves non-constructives.
Lemme de Sperner
Etiquetter un simplex:•Chaque point frontière ne peut pas avoir l’étiquette du sommet opposé.•Chaque point intérieur a une étiquette arbitraire.
0
1 2
1
1
0
0
0
21
2 21
2 2
Sperner : il existe un triangle 0-1-2
Commencer sur le côté gauche avec une arête 0-1 qui détermine un triangle qui admet une autre autre arête 0-1. On parcourt ainsi des triangles 1 seule fois. Il existe un nombre fini de triangles et on doit terminer sur 0-1-2.
Point fixe de Brouwer
Brouwer:
0
1 2
simplex.n-un sur continuefonction une Soit x.(x) que x telexiste Il
Soit un découpage en triangles de plus en plus fins.Déterminer un coloriage en détectant le côté traversé par . C’est un étiquettage de Sperner. Il existe un triangle ti 0-1-2 de centre mi . Pour une séquence de mi il existe une sous-séquence xi qui converge vers x, point fixe.
,...T,...,T ,T i21
1
(x).
Point fixe de Kakutani
Soit:Fonction à valeur convexe.Graphe continuité
2 S : S
(x,y), versconverge qui ),( suite Pour toute ii yx
)( alors )( , si xyxyi ii
)( que tel existe il : Kakutani *** xxx
Preuve: réduire le problème à l’existence d’un point fixe de Brouwer.Définir à l’étape i de la triangulation
Sur la triangulation. Ensuite par interpolation linéaire. La fonction est continue et a un point fixe en xi. La séquence des xi. Admet une sous-séquence qui converge vers x*.
(x)y(x) i
Existence de Nash
Soit:
Ipour y à réponses meilleuresx (y) 1
),(, que tel),( existe il :Nash ****** yxyxyx
Preuve: montrer que la fonction est à valeurs convexes et continue comme graphe.On applique Kakutani et on obtient un équilibre de Nash.
IIpour x à réponses meilleuresy (x) 2
(x) (y) (x,y) 21
Equilibre Arrow-Debreu
Entrée:•Ensemble B d’acheteurs•Ensemble A de biens divisibles•Vecteur M de valeurs mi entières pour chaque acheteur•Matrice Utilité: ui,j donnant l’utilité du produit i pour l’acheteur j.
Sortie: vecteur de prix pi pour chaque produit i•Chaque acheteur maximise son utilité•Tout est dépensé•Tout est acheté
ii mxp .
ipar achetés biens de vecteur leest ix
jjii
ax ,
jiji uxMax ,, .
Equilibre Arrow-Debreu
Arrow-Debreu: il existe un vecteur p qui résout le marché.
Preuve: définir un potentiel pour p.•Si la demande trop forte, augmenter p
C
xpapp i
jijjj
j
).( )(
,
D’après Brouwer, il existe un point fixe qui résoud le marché.
Observations: •L’équilibre peut-être non calculable au sens des réels (Richter et Wong)•Algorithme polynomial au sens BSS (Devanur, Papadimitriou, Saberi, Vazirani)
Classes PPA et PPAD
PPA : Polynomial Parity Argument
PPAD : Polynomial Parity Argument in Directed graphs
A est dand PPA (PPAD) si:Il existe une TM avec états. Graphe d’états de degré au plus 2. Etat (0,0,..0) est une feuille.
Problème: trouver une autre feuille.
(Papadimitriou, On the Complexity of the Parity argument, JCSS 1994)
Exemple: Sperner est dans PPAD
)(2 xp
NP -complétude
Existe-t-il un algorithme polynomial?
Exemple SAT (variables booléennes)
0110101
43
432
321
xxxxx
xxx
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 s’il existe une fonction f calculable en temps polynomial t.q.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
43
432
321
xxxxx
xxx
BA p
BxfAx )( ssi
Programmation linéaire en nombres entiers
Théorème. PL est NP-complet
Réduction à SAT
0110101
43
432
321
xxxxx
xxx
Pas d’algorithme polynomial connu.
Définition : Un problème d’optimisation est s’il existe un algorithme polynomial dont la solution A(x) est t.q.
43
432
321
xxxxx
xxx
)1)(()()1)(( xfxAxf
leapproximab
Théorème. Si PL est alors P=NP.
leapproximab
Couverture, Hamiltonicité, Voyageur de commerce
1 5
6 7
3
4
2
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 qui minimise
Théorème : ces 3 problèmes sont NP-complets
4
2
3
1
2 2
6
10
9
n
iic
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
Tout nœud est couvert
On en déduit :
Algorithme 0.5 approximatif.
n
iic
CCC / min
2/ min CC
2/1 / min CCC
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 à
Soit Gn donné : introduire des coûts de 1 pour les arêtes de Gn et de 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.
VC
1/n
Complexité et approximation
3 solutions possibles:•Problème est approximable pour un(Couverture) •Problème est approximable pour toutKnapsack (Sac-à-dos)•Problème est non approximable (VC)
Approximation par échantillonnageMAXCUT, 3COL.Estimer ces fonctions sur des sous-graphes 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?
top related