Utilisateur:Metaluser666/Automate de Bexandre

Une page de Wikipédia, l'encyclopédie libre.
Automate de Bexandre

Description de l'image Automates de Bexandre.PNG.
Informations
Développé par Bexandre
Première version [1]
Dernière version ()
Écrit en Batch, assembleur[2]
Environnement Microsoft Windows
Type Automate cellulaire, jeu sans joueur
Politique de distribution Gratuit
Licence Open source
Site web http://bexandre.alwaysdata.net/automate.html

L'automate de Bexandre est un automate cellulaire (que l'on peut également caser comme algorithme probabiliste graphique) créé par le programmeur français Bexandre. Cet automate est un tour de force technique pour le Batch et utilise le hasard et le pseudo-aléatoire pour arriver à ses fins, car il utilise un générateur de nombres pseudo-aléatoires.

Règles[modifier | modifier le code]

  • Tous les 10 «frames (en)», les «têtes» lâchent des points derrière elles.
  • Tous les 100 «frames», les points sont nettoyés, mais les «têtes» restent à leur position.
  • Si les «têtes» partent trop loin, elles se font éjectés très loin (mais pas trop, non plus).

États[modifier | modifier le code]

Les cellules ont 5 états possibles, contrairement à beaucoup d'autres qui, eux, n'en ont que deux. Ces 5 états sont: vide, tête verte, tête rouge, point vert et point rouge. Des chiffres sont générés par hasard par le programme. Néanmoins, ces chiffres seront toujours compris entre −1 et 11. On peut donc définir des mouvements à partir de celles-ci: si le chiffre généré est compris entre -1 et 3, alors la tête rouge va une cellule en haut. S'il est compris entre 3 et 6, elle va une cellule en bas. S'il est compris entre 6 et 9, elle va une cellule à droite. S'il est compris entre 9 et 11, elle va une cellule à gauche. La tête verte a, elle, d'autres définitions, mais les chiffres sont les mêmes. De plus, si une tête va à 40 cellules depuis le haut, elles se font éjecter 29 cellules en arrière. Dernièrement, si elle va à 30 cellules depuis la gauche, il sera éjecté à 19 cellules en arrière.

Utilité[modifier | modifier le code]

Ce programme d'automate cellulaire permet de représenter graphiquement le hasard. Ce hasard-là est tout de même contrôlé, car il n'inclut que des chiffres entre -1 et 11. Il permet aussi de constater que le hasard peut donner des situations assez intéressantes: les têtes vont parfois se loger dans un coin et y rester pendant un moment, ou, au contraire, bouger dans tous les sens. Quand une tête est sur un point qu'il a créé, il est rare qu'il reste dessus, mais ça peut tout autant arriver qu'il n'en pose jamais à un endroit dans lequel il a déjà mit un point (durant une période de 100 frames, qinon, malgré la place, c'est impossible). Pourtant, rien n'indique dans les codes que la tête devrait plutôt se diriger autre part que là où il a posé un point. Néanmoins, il est moins rare de voir une tête mettre un point sur celui de l'autre qui se balade près d'elle.

Bugs[modifier | modifier le code]

  • Il arrive que les têtes ne bougent pas. C'est dû à un bug dans le programme. Cela a premièrement causé un énorme bug qui consistait au fait que l'une (voire les deux) tête(s) restent figées indéfiniment. Une solution fut premièrement trouvée: réinitialiser la position des têtes tous les 100 frames. Puis, par pur hasard, Bexandre a trouvé la solution qui permettait aux têtes de toujours bouger, même après un long moment où l'une restait figée: changer les valeurs, tout simplement[3].
  • La règle des chiffres compris entre -1 et 11 devraient plutôt, selon les codes, être celle des chiffres entre 1 et 9. Néanmoins, un autre bug fait que -1, 10 et 11 sont également présents[3].

L'automate de Bexandre et le jeu de la vie[modifier | modifier le code]

Points communs[modifier | modifier le code]

Le jeu de la vie de John Horton Conway a quelques similitudes avec l'automate de Bexandre – même avec 45 ans d'écart. Premièrement, les frames équivalent aux générations. Deuxièmement, c'est un automate cellulaire, comme le Conway's Game of Life, ce qui signifie que chaque cellule a des états variables. Les deux automates cellulaires imposent également des conditions aux cellules.

Différences[modifier | modifier le code]

Contrairement au jeu de la vie dans lequel les cellules n'ont que 2 états possibles ("vivants" ou "morts"), elles en ont 5 dans l'automate de Bexandre. De plus, les règles dictent les mouvements des cellules de manière contrôlée, ce qui nous permet de créer des patterns dans le jeu de la vie. Mais dans l'automate de Bexandre, aucun pattern n'est prédictible, car tout comportement y est aléatoire.

Notes et références[modifier | modifier le code]