Le dilemme du prisonnier avec renoncement

Dans cette variante, un joueur peut se retirer de la partie en cours. Dès qu'un des deux joueurs renonce, tous les deux sont obligés de jouer R jusqu'à la fin de la partie et gagnent 2 points par coup. On utilise le tableau de gains suivant:

Joueur B
coopère (C) trahit (T) renonce (R)
Joueur A coopère (C)
(3,3)
(0,5)
(2,2)
trahit (T)
(5,0)
(1,1)
(2,2)
renonce (R)
(2,2)
(2,2)
(2,2)


Travail: le dilemme du prisonnier itéré avec renoncement

Il est relativement simple d'implémenter le dilemme du prisonnier itéré avec renoncement sous Mathematica; il s'agit essentiellement de manipuler des listes, un domaine où Mathematica est particulièrement performant. Des notions de programmation modulaire sont aussi requises.
L'idée est que chaque élève programme quelques stratégies et qu'il choisisse celle qui lui semble la meilleure. Chaque stratégie doit être écrite dans un module. Ensuite, les élèves s'affronteront deux à deux dans un tournoi (il s'agira donc de rassembler les modules dans un même programme). Chaque stratégie affrontera toutes les autres (y compris elle-même). Toutes les stratégies participeront ainsi que cinq "joueurs" invités: "Bonne Poire", "Toujours seul", "Renonce40", "Aléatoire" et "Donnant donnant", ainsi que le maître qui participera sous le nom de "Coyote".

Cliquez sur le nom du fichier ci-dessus puis enregistrez sur votre disque dur ce fichier en format Texte en allant dans le menu Fichier/Enregistrer sous...
Ouvrez ensuite ce fichier depuis Mathematica (version 3 ou supérieure), et complétez-le.
Pour les élèves:

renonce.nb (18 Ko)

Pour le maître:

tournoi_renonce.nb (15 Ko)

Tournoi 2008:

tour_ren08.nb (32 Ko)


Référence


Didier Müller, 27.6.08