intelligence artificielle aux échecs.

Soyez le premier à donner votre avis sur cette source.

Vue 10 275 fois - Téléchargée 718 fois

Description

Bon Intelligence artificielle est un bien grand mot :)

En réalité cet algorithme est de type bourrin c'est à dire qu'il va calculer tous les coups possibles sur 4 étapes de manière récursive (Lui, l'utilisateur, lui et encore l'utilisateur)
4 est défini avec la constante RECU.

La recherche de coup n'est pas encore optimal car l'algo va calculer tous les coups possibles, par exemple si la tour se déplace vers le nord et qu'elle est hors de l'échiquier, elle continuera à se déplacer vers le nord jusqu'à avoir testé tous les coups dans cette direction..
Aussi il existe 3 fonction de recherche de coup pour l'algo liée entre elle : coup, coup1 et coup2. J'essairai d'en faire une seule pour plus de simplicité.

Ensuite autre point important, la notion d'échec n'a pas encore été ajoutée, c'est à dire que pour l'algo, le roi représente 0 points donc il ne s'en soucie pas. De même s'il est en échec il ne va pas s'en soucier. Cela n'a pas encore implémenté en raison d'une difficulté quelconque mais pour le moment cette première version a surtout été axé sur la recherche de coup.

Dernier point noir le test du coup de l'utilisateur n'a pas été défini, on peut donc déplacer une case vide vers une dame par exemple. Mais bon je le repete cette version est avant tout basée sur l'algorithme de recherche de coup donc si vous avez vraiment envie de voir ce qu'il faut, mieux vaut réaliser des coups justes.

Source / Exemple :


J'ai essayé d'écrire le maximum de commentaire pour rendre mon programme le plus lisible possible ( meme pour moi :) )

Dans la prochaine version, je ferai des bibiothèques car là un programme de plus de 1000 lignes d'un seul coup c'est assez compliqué à modifier.

Conclusion :


Le fonctionnement est très simple, vous êtes les blancs (Majuscules) et l'ordinateur les noirs (minuscule). Lorsque '>' s'affiche entrez les coordonnées du pion à déplacer : (Ligne, Colonne) (et non le contraire)
Ensuite quand le second '>' s'affiche entrez les coordonnées de la cible, là ou vous voulez déplacer votre pion.

Pour toute question sur le fonctionnement ou si vous désirez apporter votre aide :
manta7 (at) msn.com

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
540
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
tien je suis tombé sur ca :
http://www.cppfrance.com/codes/MORPION-AVEC-IA-MINIMAX-OU-GENETIQUE_37899.aspx

si ca peut t'inspirer..
Messages postés
105
Date d'inscription
samedi 25 janvier 2003
Statut
Membre
Dernière intervention
13 décembre 2008

Je n'étais absolument pas au courant de cette pratique mais je trouve cela vraiment génial ! Je vais essayer de l'implémenter aussi avec un filtre sur les cases, c'est à dire pour plutot privilégier les cases vers le centre plutot que celles excentrées sur les cotés pour mettre en avant le principe qu'une piece au milieu a plus de valeurs que seul dans un coin.
En tout cas merci beaucoup du conseil !
Messages postés
540
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
En gros tu dois tester plein de valeurs pour chacune de tes pieces dans plein de parties differentes.. et tu trouve celle qui te font gagner le plus de parties...
(ca risque de prendre du temp .. avec 1s la partie et une base de 100 parties pour chaque test ... et 300 tests ... ca fait 30 000 s.. soit 10 h.. une bonne nuit..)
(j'espe)
c'est pour optimiser tes tests que les algos genetiques vont te servir :
(en s'appuyant sur Darwin !)
pour chaque generation tu fais plusieurs champions avec une modif sur l'ADN (la valeur de chaque piece) (une seule valeur qui monte ou descends.. ou plus a voire...)
tu gardes les meilleur champion et tu fais une nouvelle partie...
Il faut bien evidemment que les champions se battent tous contre la meme personne (le meilleur des peres par exmeple..)...
J'espere avoir été clair..
Messages postés
105
Date d'inscription
samedi 25 janvier 2003
Statut
Membre
Dernière intervention
13 décembre 2008

Je n'ai absolument aucune idée de ce que sont les algos génétiques...
Je vais me documenter pour voir si ça peut m'être utile
Messages postés
540
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
D'ailleur (je sais pas si tu connais ou meme si tu l'as deja fait) tu peux utiliser des algorithmes genetiques pour choisir au mieu tes valuers.. (ou alors les chercher sur internet (si c'est pas deja fait !))
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.