Discussions au sujet de NI LabVIEW

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

Chess Engine - 100% LabVIEW

Merci VDUPONT.

 

Content que ce jeu t'ait plu, et grand merci pour ce "retour".

 

Désolé pour ces 3 Mat  Smiley heureux ... 

insiste ... je t'assure que mettre ce moteur Mat est tout a fait accessible.

Mais c'est vrai "qu'au départ", il peut surprendre.

 

 

quelques mots ...

Dans un moteur d'échecs, 3 choses sont primordiales.

 

-le générateur de coups

Le générateur de coups semblent parfait. (résolution parfaite des Perft .... google : chess + perft)

 

-la profondeur d'analyse

La profondeur d'analyse de 4/5 est  trop faible pour avoir un niveau élévé.

Il est surprenant de constater comme une profondeur supérieure donne immédiatement de meilleures résultats (une profondeur de 6 par exemple)

La plupart des "erreurs" en profondeur 4 sont esquivées avec une profondeur de 5 ou 6. C'est même assez spectaculaire.

 

-la fonction d'évaluation

La fonction d'évaluation est assez simple, mais fonctionne plutôt pas trop mal.

Ma fonction d'évaluation tient compte :

-du gain aux points , du contrôle du centre , de la mobilité et du tropisme (le tropisme favorise le rapprochement vers le Roi adverse)

 

Cela pourrait sembler "complexe" ... et pourtant ... cette fonction d'évaluation est "très simple" comparée aux moteurs "pro".

Il existe une multitude d'autres critères possibles. 

 

Il y a un critère de grande importance dont je ne tiens pas compte ... l'état de sauvegarde du Roi ... le "King Safety".

(je m'en suis rendu compte en potassant des docs sur les moteurs d'échecs) C'est un critère qui "oriente" fortement l'évaluation d'une situation.

Je parle du Roi noir, celui aui appartient au moteur. L'intégration de ce critère pourrait clairement faire monter le niveau du jeu.

 

Déterminer si un Roi est "safe" ou non ... et quel est le degré de sont état "safe" ? Tout cela est possible ... mais ça bouffe pas mal de code.

J'essaye de trouver une façon "simple" d'intégrer ce paramètre ... si pas en totalité, du moins partiellement.

 

Mais il faut retenir une chose essentielle :

Entre fonction d'évaluation et profondeur d'analyse .... il n'y a pas photo ... une augmentation de la profondeur sera toujours supérieure.

voila Smiley heureux

Message 141 sur 145
1 865 Visites

Bravo pour cette programmation.

Je n'ai pas réussi à le mater, presque mais quand même pas, même avec quelques "undo" !

Je ne m'avoue pas vaincu, j'y reviendrai un jour (!)

Bref, félicatation pour ce boulot.

Smiley tirant la langue

 

Révélation
 

 

 

 

0 Compliments
Message 142 sur 145
1 845 Visites

Toutes mes Félicitations Ouadji pour cette parution sur la NI News d'octobre!!

 C'est le début de la gloire... 😄

 

Je vois que tu es toujours en quête de "perfection" pour ton Chessgame, je te suggère de faire des essais de compilations en exécutable, ce qui te permettra d'obtenir un jeu plus réactif et peut-être gagner en profondeur de jeu, à laquelle tu attaches, à juste titre, beaucoup d'importance. 😉

 

Bonne continuation à toi et au plaisir de tester un exe v1.0 ! 😉

0 Compliments
Message 143 sur 145
1 812 Visites

Merci TeamJP34.

 

Les NI News d'octobre .... oui, réellement très sympa de la part de NI France.

 

un exécutable ...

 

bof, non, ça ne m'intéresse pas.

Le gain de vitesse sera de toute façon proportionnel au gain en "mode run".

Celui qui est tenté de compiler, et bien le code est "open source" ... Smiley heureux

Gagner 20 ou même 50% en vitesse ne permettra pas de monter réellement en niveau de jeu.

Il faurait un code 10 fois plus rapide ... là, oui, on pourrait envsager un changement de planète.

 

La profondeur limitée à 4/5 est un cul de sac.

Peut-être un espoir de monter d'un niveau ... en intégrant le paramètre "King Safety" dans la fonction d'évaluation.

C'est un paramètre important dont je ne tiens actuellement pas compte.

Je fais également des tests en utilisant des pièces dont le poids est variable en fonction de leur contrôle-mobilité.

... mais je n'ai pas obtenu le "gain" espéré jusqu'à présent.

 

La fonction d'évaluation est réellement quelque chose de "délicat", il est de plus très difficile de quantifier sa qualité.

Je fais jouer le moteur contre lui-même (avec des fonctions différentes) Mais faire jouer le moteur contre lui-même soulève d'autres soucis.

Cela génère des oscillations complexes sur des enchaînements circulaires parfois de 5 à 10 coups, surtout en fin de partie.

 

voilou. 

Encore merci à toi pour ce "clin d'oeil" sympa.

 

 

 

 

 

 

 

 

0 Compliments
Message 144 sur 145
1 808 Visites

VDUPONT m'a signalé un bug dans la version 5.0 ... dans le cas particulier de l'esquive d'un Mat par un pion allant "à Dame".

 

Un grand merci à lui pour ce "retour". 

 

Je viens de fixer ce bug.  (plutôt un "oubli" qu'un bug ... ceci dit, le resultat est le même Smiley clignant de l'œil  )

 

Je ne présente pas de version "5.1" (avec ce bug fixé) immédiatement.

 

Car je suis en train d'implémenter :

 

- un Redo (complémentaire de l'undo déjà présent)

- La possibilité pour le joueur blanc de choisir la pièce lors de la promotion d'un pion (Le moteur, lui, a déjà cette possibilité)

- La possibilité d'entrer une situation arbitraire de départ.

 

La version 5.1 intégrera ces nouvelles fonctionnalités ... et la correction du bug dont question.

 

 

0 Compliments
Message 145 sur 145
1 789 Visites