summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2013-05-10 21:38:47 +0200
committerSébastien Dailly <sebastien@chimrod.com>2013-06-01 19:57:20 +0200
commit2f0f0fa1e944af2cb7647e0321068e27e0429d36 (patch)
tree63e7593256b7d09ee7f15be242841843bc8162c4
parent0280e9215fd88ab8aa1b0771d3e6a2df739efa33 (diff)
New article on game of marelle
-rw-r--r--content/Perso/marelle.rst87
-rw-r--r--content/Perso/poker.rst2
-rw-r--r--content/images/marelle/extract.jpegbin0 -> 14057 bytes
-rw-r--r--content/images/marelle/jeu.jpgbin0 -> 1694961 bytes
-rw-r--r--content/images/marelle/logo.jpgbin0 -> 3729 bytes
-rw-r--r--content/images/marelle/mini_jeu.jpegbin0 -> 93141 bytes
6 files changed, 88 insertions, 1 deletions
diff --git a/content/Perso/marelle.rst b/content/Perso/marelle.rst
new file mode 100644
index 0000000..766f780
--- /dev/null
+++ b/content/Perso/marelle.rst
@@ -0,0 +1,87 @@
+.. -*- mode: rst -*-
+.. -*- coding: utf-8 -*-
+
+==================================
+La marelle romaine : les solutions
+==================================
+
+:date: 2013-06-01
+:tags: Jeux
+:logo: static/images/marelle/logo.jpg
+:summary: |summary|
+
+.. image:: |filename|/images/marelle/extract.jpeg
+ :width: 150
+ :class: floatleft
+ :alt: Graphique
+
+|summary|
+
+.. |summary| replace::
+ La marelle est un jeu dont on ne connait pas précisément les origines. On
+ en retrouve toutefois les traces sur certains sites archéologiques ainsi
+ que dans des textes qui nous sont parvenus (Ovide). Le jeu est relativement
+ simple, et existe sous différentes formes. La version que je présente ici
+ est une version à neuf cases.
+
+On trouve cette version sous le nom de « marelle romaine » auprès de créateurs
+de `jeux historiques`_ ou médiévaux. Elle a la particularité d'avoir un point
+central, présent à l'intersection de quatres lignes de jeu.
+
+.. _jeux historiques: http://www.les7cailloux.com/jeu-de-marelle.html
+
+D'autres sites se sont déjà intéréssés au rapport entre `mathématiques et le jeu
+de marelle`_ et je ne vais pas chercher à les reprendre ici. Par contre, j'ai
+essayé de tracer l'ensemble des parties possibles dans un graphe en fonction
+des différentes actions des joueurs (en partant du principe qu'un joueur
+n'irait jamais jouer un coup qui lui est directement défavorable). Un extrait
+du graphique final est présenté ci contre, et le résultat peut être visualisé
+en ligne.
+
+.. _mathématiques et le jeu de marelle: http://bernard.koch.free.fr/Maths/Themes/Marelle/La_marelle.htm
+
+Cliquez sur l'image pour la voir en taille réelle :
+
+|visualisation|__
+
+.. |visualisation| image:: |filename|/images/marelle/mini_jeu.jpeg
+
+.. __: |filename|/images/marelle/jeu.jpg
+
+A strange game. The only winning move is not to play
+====================================================
+
+Chaque dessin représente un plateau, avec ses pions blancs et noirs. Les lignes
+permettent de suivre les coups des joueurs et d'aller à une configuration à une
+autre ; la couleur dans le cercle indique quel est le joueur qui vient de
+jouer. Le jeu commence par un plateau vide (tout en haut de l'image), et est
+rempli au fûr et à mesure par les joueurs. Une fois que les joueurs ont posé
+leurs
+pions, ceux-ci sont
+déplacés sur le plateau, selon les règles que nous connaissons aujourd'hui.
+
+Par soucis de lisibilité, j'ai retiré les jeux suicidaires où ceux qui
+conduisent à des coups inutiles, je n'ai conservé que les cas où les joueurs
+essaient d'améliorer leur configuration sans pour autant pousser la réflection
+trop loin, car le jeu devient entre alors dans une partie infinie. D'autre
+part, les différentes symétries par rotation ne sont pas représentées, afin de
+ne pas surcharger le graphique.
+
+Au final, le jeu ne présente pas trop de surprise, les deux joueurs peuvent
+jouer indéfiniment s'ils ne font pas d'erreur ; la moindre erreur signifie
+souvent la fin de la partie si l'adversaire est attentif. Je ne m'attendais
+toutefois pas à autant d'étapes et de configurations différentes dans le jeu !
+
+Technique
+=========
+
+Le calcul des combinaisons et des différents coups est réalisé en scala, chaque
+plateau est une scène povray_, et graphviz_ a servi à calculer le graphe.
+L'ensemble du code est disponible sur mon dépôt git_.
+
+Attention à la mémoire disponible si vous souhaitez recréer le graphique, dot
+est très gourmand er RAM dès qu'il s'agit de grandes surfaces à calculer…
+
+.. _povray: http://povray.org/
+.. _graphviz: http://graphviz.org/
+.. _git: http://git.chimrod.com/?p=marelle.git;a=summary
diff --git a/content/Perso/poker.rst b/content/Perso/poker.rst
index c1fac9c..db6a7d9 100644
--- a/content/Perso/poker.rst
+++ b/content/Perso/poker.rst
@@ -5,7 +5,7 @@
#############################
:date: 2013-04-19
-:tags: ocaml, Programmation
+:tags: ocaml, Programmation, Jeux
J'ai entrepris il y a quelques temps de mettre en place un moteur d'évaluation
des mains de poker. Je n'ai pas trouvé beaucoup de codes ou librairies
diff --git a/content/images/marelle/extract.jpeg b/content/images/marelle/extract.jpeg
new file mode 100644
index 0000000..e13bea7
--- /dev/null
+++ b/content/images/marelle/extract.jpeg
Binary files differ
diff --git a/content/images/marelle/jeu.jpg b/content/images/marelle/jeu.jpg
new file mode 100644
index 0000000..477f296
--- /dev/null
+++ b/content/images/marelle/jeu.jpg
Binary files differ
diff --git a/content/images/marelle/logo.jpg b/content/images/marelle/logo.jpg
new file mode 100644
index 0000000..c0d83a9
--- /dev/null
+++ b/content/images/marelle/logo.jpg
Binary files differ
diff --git a/content/images/marelle/mini_jeu.jpeg b/content/images/marelle/mini_jeu.jpeg
new file mode 100644
index 0000000..fedd96a
--- /dev/null
+++ b/content/images/marelle/mini_jeu.jpeg
Binary files differ