Download
slide1 n.
Skip this Video
Loading SlideShow in 5 Seconds..
Programmation linéaire, Jeux, Complexité PowerPoint Presentation
Download Presentation
Programmation linéaire, Jeux, Complexité

Programmation linéaire, Jeux, Complexité

114 Vues Download Presentation
Télécharger la présentation

Programmation linéaire, Jeux, Complexité

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Programmation linéaire, Jeux, Complexité http://www.lri.fr/~mdr Professeur Michel de Rougemont mdr@lri.fr http://www.lri.fr/~mdr

  2. Jeux et Complexité • Jeux, Equilibres • Complexité, NP-complétude • Programmation entière • Approximation

  3. 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

  4. Gains des joueurs Résultat du jeu : Joueur I : Montrons que la réponse de II peut être pure Toute solution pure doit satisfaire

  5. Programme linéaire Conclusion Joueur II peut jouer une stratégie pure

  6. Exemple: Morra Conclusion Solution x*= [0,3/5,2/5,0] Résolution par simplex. Trouver une solution initiale

  7. Théorème Minimax Situation pour le joueur II Problème dual du précédent. Théorème : Max Min = Min Max

  8. Equilibre de Nash 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.

  9. Exemple simple Exemple: Matrice Programme linéaire Solution x*= [1/2, 1/2] Interprétation graphique: Sommet de l’enveloppe inférieure 1

  10. 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.

  11. Jeux matriciels Par dualité: Pour le joueur II:

  12. 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: Programme linéaire + contraintes quadratiques de complémentarité. Simplex + complémentarité= Lemke-Howson

  13. Algorithme de Lemke-Howson Procédure algorithmique pour trouver des équilibres: Simplex+ complémentarité. • LH Graphes dans les simplex de I et II • Extrémités du simplex • Points frontières Exemple :

  14. Algorithme de Lemke-Howson • LH Graphes dans les simplex de I et II • Extrémités du simplex • Points frontières Exemple :

  15. Algorithme de Lemke-Howson Colonnes de B: Lignes de A:

  16. Algorithme de Lemke-Howson • Coloriage LH Graphes dans les simplex de I et II • 5 couleurs: (1,2) pour I et (3,4,5) pour II. • Coloriage dans le simplex de I:

  17. Algorithme de Lemke-Howson 3 5 1 3 (0,1) (1/2,1/2) (2/3,1/3) 4 5 (1,0) 2 4 1 3 4 (0,0,1) (0,1/2,1/2) 1 2 3 1 2 4 (2/3,0,1/3) (0,1,0) (1,0,0) 3 5 2 2 4 5 Couleurs Lemke-Howson 1 2 3 4 5

  18. Algorithme de Lemke-Howson Lemke-Howson: Exemple: 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.

  19. Exemple 2 D’après B. Von Stengel, Computing Equilibria for two-person games, Handbook of Game theory with Economic applications, 2002. • Algorithme LH • Points frontières pour I: (1/3,2/3) et (2/3,1/3) • pour II: • 2. Coloriage des points:

  20. Coloriage Lemke-Howson 3 4 3 (1/3,2/3) 1 (0,1) (2/3,1/3) 4 5 (1,0) 4 5 2 1 3 4 (0,0,1) (0,1/3,2/3) 2 3 1 (0,1,0) (1,0,0) 3 5 2 4 5 1 (2/3,1/3,0) 1 2 5 Couleurs Lemke-Howson 1 2 3 4 5

  21. Equilibres de l’exemple 2 • Equilibres de Nash • (1,0) et (0,0,1) • (1/3,2/3) et (2/3,1/3,0) • (2/3,1/3) et (0,1/3,2/3)

  22. Existence d’Equilibres Point-fixe Brouwer Lemme de Sperner Equilibre Arrow-Debreu Point-fixe Kakutani Equilibre Nash Preuves non-constructives.

  23. 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 0 0 1 1 2 2 2 0 1 2 1 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.

  24. Point fixe de Brouwer Brouwer: 0 1 1 2 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.

  25. Point fixe de Kakutani Soit: Fonction à valeur convexe. Graphe continuité 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*.

  26. Existence de Nash Soit: Preuve: montrer que la fonction est à valeurs convexes et continue comme graphe. On applique Kakutani et on obtient un équilibre de Nash.

  27. 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é

  28. 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 • 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)

  29. 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

  30. NP -complétude Existe-t-il un algorithme polynomial? Exemple SAT (variables booléennes) 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

  31. Programmation linéaire en nombres entiers Théorème. PL est NP-complet Réduction à SAT 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. Théorème. Si PL est alors P=NP.

  32. Couverture, Hamiltonicité, Voyageur de commerce 1 1 5 2 2 4 9 6 3 3 2 10 2 6 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 qui minimise Théorème : ces 3 problèmes sont NP-complets

  33. 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.

  34. 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.

  35. 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 sous-graphes aléatoires et faire la moyenne. G

  36. 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?