Le logiciel d'analyse de backgammon GNU Backgammon a la capacité d'exécuter des scripts Python. Je le savais depuis longtemps, mais je ne pouvais pas l'obtenir car je ne connaissais pas Python. Récemment, j'ai appris un peu comment utiliser Python au travail, alors essayons quelque chose!
J'ai utilisé Ubuntu 14.04 LTS. La version de gnubg était 1.02, mais dans cette version, l'appel à gnubg.match ()
, qui sera décrit plus tard, ne retournait qu'un dict vide. J'ai donc construit la version 1.05 à partir des sources (http://www.gnubg.org/index.php?itemid=100&catid=10).
$ gnubg
GNU Backgammon 1.05.002 Jul 2 2016
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 by Gary Wong.
Copyright (C) 2016 by Gary Wong and the AUTHORS; for details type `show version'.
This program comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'.
This is free software, and you are welcome to redistribute it under certain conditions; type `show copying' for details.
(Pas de jeu)
import gnubg
Je veux commencer comme ça, mais je ne peux pas. La façon dont vous travaillez avec gnubg en Python est un peu différente. Avec gnubg en cours d'exécution, tapez «>» à l'invite de commande. Ensuite, vous pouvez utiliser IPython.
(Pas de jeu) >
/usr/local/lib/python2.7/dist-packages/IPython/config.py:13: ShimWarning: The `IPython.config` package has been deprecated. You should import from traitlets.config instead.
"You should import from traitlets.config instead.", ShimWarning)
IPython 4.2.1, Python 2.7.6 (default, Jun 22 2015, 18:01:27)
[GCC 4.8.2]
In <1> >
J'en ai vu beaucoup dans mon environnement, mais je m'en fiche pour le moment. Vous pouvez vous référer à l'aide avec la commande suivante.
In <1> > help(gnubg)
Importons le match de Play OK.
In <2> > gnubg.command('import mat 87027157.txt')
GNU Backgammon Position ID: AAAAunEAAAAAAA
Match ID : 8AqgAFAAAAAE
+13-14-15-16-17-18------19-20-21-22-23-24-+ O: mkisono
| | | |OOO 5 points
| | | | OOO
| | | | OOO
| | | | OOO
| | | | OOO
v| |BAR| |Match à 5 points(cube: 1)
| | | | X
| | | | X
| | | X X | X
| | | X X X | X
| | | X X X X |XX 0 points
+12-11-10--9--8--7-------6--5--4--3--2--1-+ X: cwm7296g
In <3> > gnubg.command('analyse match')
In <4> > gnubg.command('show statistics match')
Joueur MKisono CWM7296G
Statistiques de jeu du vérificateur
Déplacer le total 49 47
Mouvement non forcé 44 36
Coup non marqué 45 34
Coup suspect 1 5
Mauvais coup 2 2
Très mauvais coup 1 6
Error total EMG (MWC) -0.555 ( -8.234%) -2.515 (-34.975%)
Error rate mEMG (MWC) -12.6 ( -0.187%) -69.9 ( -0.972%)
Checker Play Rating Intermédiaire Awful!
Statistiques de chance
Rouleau très chanceux 0 1
Lucky roll 3 4
Rôle ordinaire 46 38
Rouleau malchanceux 0 3
Rouleau très malchanceux 0 1
Luck total EMG (MWC) +0.571 ( +9.871%) -0.972 (-12.880%)
Luck rate mEMG (MWC) +11.7 ( +0.201%) -20.7 ( -0.274%)
Évaluation de la chance Aucune Aucune
Statistiques du cube
Cube action total 2 30
Action de cube à peine ou réelle 2 1
Double 1 0
Prendre 0 1
Chemin 0 0
Missed doubles below CP (EMG (MWC)) 0 0
Missed doubles above CP (EMG (MWC)) 0 0
Wrong doubles below DP (EMG (MWC)) 1 (-0.042 ( -0.323%)) 0
Wrong doubles above TG (EMG (MWC)) 0 0
Mauvaise prise(EMG (MWC)) 0 0
Mauvais chemin(EMG (MWC)) 0 0
Error total EMG (MWC) -0.042 ( -0.323%) -0.000 ( -0.000%)
Error rate mEMG (MWC) -20.9 ( -0.162%) -0.0 ( -0.000%)
Évaluation de l'action du cube Joueur occasionnel Supernatural
Statistiques complètes
Error total EMG (MWC) -0.597 ( -8.557%) -2.515 (-34.975%)
Error rate mEMG (MWC) -13.0 ( -0.186%) -68.0 ( -0.945%)
Snowie error rate -6.2 ( +0.000%) -26.2 ( +0.000%)
Évaluation complète Intermédiaire Awful!
Résultat actuel+50.00% -50.00%
Luck adjusted result +27.25% -27.25%
Luck based FIBS rating diff. +474.84
Error based abs. FIBS rating 1858.7 1078.7
Déductions de notation dues à des erreurs de jeu de vérificateur 175.4 971.3
Déductions de notation dues à l'erreur de cube 15.9 0.0
C'était un match avec beaucoup d'erreurs ...
La saisie de la commande gnubg.match ()
renvoie les données de correspondance. Que dois-je faire avec ces données?
Vous êtes prêt à jouer avec gnubg en Python. J'étudie juste Python, donc c'est à la fois un passe-temps et un profit, et ça n'a jamais été aussi amusant! !!
Page référencée
Recommended Posts