
À propos de ce manuel
Ce manuel est à destination des personnes qui souhaitent comprendre le fonctionnement des intelligences artificielles implémentées par nos soins en JavaScript.
Présentations des IA
Nous avons procédé à plusieurs test des IA afin de les comparer et de déterminer les meilleurs algorithmes.
IAs win ratio | |
---|---|
Dummy IA (0%) | |
Simple IA (0%) | |
Carsso IA (0%) | |
Morsi IA (0%) | |
Morsi2 IA (0%) | |
FLOZz IA (26%) | |
FLOZz² IA (21%) |
Best Tile | |
---|---|
Dummy IA (512) | |
Simple IA (512) | |
Carsso IA (1024) | |
Morsi IA (512) | |
Morsi2 IA (1024) | |
FLOZz IA (2048) | |
FLOZz² IA (2048) |
Dummy IA
« Dummy IA » se contente de tourner en rond (haut, droite, bas, gauche)
En résumé :
- Tuile maximale attente: 512 (très rare)
- Tuile fréquemment attente: 128
- Perd entre 100 et 200 coups en moyenne
- Ne gagne jamais
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Simple IA
Cette IA réunit à chaque tour le maximum de tuiles ayant les valeurs les plus élevés. Dans le cas où deux mouvements sont équivalents, elle choisit celui qui génère le plus de mouvements.
En résumé :
- Tuile maximale attente: 512
- Tuile fréquemment attente: 256
- Perd entre 100 et 300 coups en moyenne
- Ne gagne jamais
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Carsso IA
Amélioration de « Simple IA » visant à prévoir deux coups à l'avance.
En résumé :
- Tuile maximale attente: 1024
- Tuile fréquemment attente: 512
- Perd entre 200 et 500 coups en moyenne
- Ne gagne jamais
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Morsi IA
Tentative de solveur utilisant un système de phase de jeu. Le but étant de faire comprendre à l'IA quand réunir des tuiles et quand les « stocker ».
En résumé :
- Tuile maximale attente: 512
- Tuile fréquemment attente: 512
- Perd entre 100 et 300 coups en moyenne
- Ne gagne jamais
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Morsi2 IA
Ce solveur de 2048 part du postulat qu'il est plus difficile de perdre quand un ligne de la grille est complète. Par exemple, en prenant soin de toujours remplir la ligne supérieur on peut aisément bouger de droite à gauche tout en conservant les « grosses » tuiles dans un angle.
En résumé :
- Tuile maximale attente: 1024
- Tuile fréquemment attente: 512
- Perd entre 300 et 700 coups en moyenne
- Ne gagne jamais
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
FLOZz IA
Cette IA tente de placer la tuile ayant la valeur la plus élevé dans un angle et essaye de rapprocher des tuiles ayant des valeurs proche tout en essayant de libérer un maximum de cases.
En résumé :
- Tuile maximale attente: 2048
- Tuile fréquemment attente: 1024
- Perd entre 700 et 900 coups en moyenne
- Gagne 20% à 30% des parties en environ 800-900 coups
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
FLOZz² IA
« FLOZz² IA » est une tentative d'amélioration de « FLOZz IA » qui tente de classer les tuiles dans un ordre décroissant depuis le positionnement de la tuile dîtes « forte ».
En résumé :
- Tuile maximale attente: 2048
- Tuile fréquemment attente: 1024
- Perd entre 600 et 900 coups en moyenne
- Gagne 20% à 30% des parties en environ 800-1000 coups
Moves (win) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Moves (loose) | |
---|---|
0-99 | |
100-199 | |
200-299 | |
300-399 | |
400-499 | |
500-599 | |
600-699 | |
700-799 | |
800-899 | |
900-999 | |
1000-1099 | |
1100-1199 | |
1200-1299 | |
1300-1399 | |
1400-1499 |
Pourquoi JavaScript ?
JavaScript est un langage bien connu de tout les membres du projet. Il était donc simple et rapide de développer dans ce langage. Il est en plus portable, il suffit d'avoir un navigateur récent. (Firefox ou chrome de préférence)