|
Algo de recherche de mon programme par cp***n*4953 le
[Aller à la fin] |
| Informatique | |
Voilà, à l'aide de différents morceaux de programmes libres, j'ai réalisé mon programme d'échecs. A force d'optimisation sur l'algo de recherche, j'ai réussis à ce qu'il soit correct : jusqu'à 2600 elo pour une série de résolution de 360 positions.
Je sais que ce n'est pas vraiment représentatif mais je n'ai pour l'instant pas eu vraiment l'occasion de le tester contre d'autres programmes et mon niveau d'échecs est insuffisant pour que je puisse espérer battre mon programme même 1 fois sur 100 !
Voilà ma question : vu que je suis un joueur d'échecs assez modeste, stratégiquement parlant j'ai sûrement oublié des critères d'évaluation dans mon programme. J'ai pas mal optimisé pour ce qui est de la vitesse de recherche mais certains aspects stratégiques m'ont sûrement échappés ! M'est-il possible de poster sur ce forum les différentes choses que mon programme évalue afin que vous puissiez m'aider à le perfectionner en me disant ce que vous rajouteriez?
Pour vous donner un exemple, je vais commencer par vous dire ce que j'évalue. Je ne dis pas la valeur que j'ai affecté à chaque pièce (et pions) à la base car elle reste assez classique (par rapport à d'autres programmes).
Pour les pions, j'évalue les choses suivantes :
- Les pions passés
- Les pions arriérés
- Les pions attaqués
- Les pions isolés
- Les pions doublés
- Les pions liés sur la 6e et 7e rangées
- Les pions en d et e qui n'ont pas bougés ou sont bloqués
- Les pions passés qui ne peuvent plus être rattrapés.
- Les chaines de pions
Evidemment, les pions sont souvent affectés par plusieurs de ces critères. Là je ne dis pas la valeur et le traitement que j'effectue pour chacun de ces critères, c'est juste pour voir si j'oublie quelque chose. Ensuite, si ça vous intéresse, on pourra voir ensemble pour ce qui est des modifications à apporter en fonction de ces critères. Si vous n'êtes pas intéressés ou que ce post n'a rien à faire sur ce forum, dites-le, je comprendrai mais si vous connaissez un site sur lequel je pourrai obtenir ce genre d'infos, ça me ferai plaisir de le connaitre.
|
|
Les fora 'spécialisés' Le Forum du Fou est fréquenté par quelques auteurs de programmes de langue française.
Le WinBoard Forum est surtout en Anglais et comme le nom l'indique plus spécialement consacré aux WinBoard Engines.
Le Computer-Chess Club est un forum américain. On y voit le meilleur mais aussi le pire.
La Schachwerkstatt est un forum allemand, mais peu de programmeurs, surtout des fans.
Le CS&S Forum est le forum (principalement en Allemand) du magazine du même nom.
Voir aussi ma page de liens.
|
|
Sur quels critères ton programme évalue-t-il les chaînes de pions ? Se contente-t-il d'une appréciation de la dislocation de la chaîne (nombre d'îlots) ou appréhende-t-il aussi l'éparpillement (pions sur des colonnes successives situés à beaucoup de rangées de différence) ?
Est-ce que les critères d'évaluation "pions passés" et "chaînes de pions" conjugués font que ton programme reconnait les pions passés protégés ?
|
|
Lefouduroi, merci pour les liens Grandesorcière, mon programme se contente pour le moment d'évaluer le nombre d'ilots. Si 2 pions, sont sur "des colonnes successives mais à beaucoup de rangées de différence" il n'établit aucune relation entre eux et ceux-ci ne sont affectés que par les autres évaluations (pions passés ou pions bloqués par exemple). Ils ne seront évalués ensemble que quand ils seront plus "proches". Peut-être devrais-je améliorer cette partie là.
En ce qui concerne les pions passés protégés, mon programme ajoute effectivement un "bonus" a un pion passé qui fait parti d'une chaîne de pions.
Merci pour vos remarques.
|
|
C'est alors en quelque sorte pris en compte Je suppose que lorsque deux pions sur des colonnes successives sont évalués lorsqu'ils sont proches, cela se traduit par un bonus sur l'évaluation. S'il ne sont pas assez proches, ils n'auront pas droit à ce bonus et se trouvent ainsi punis de leur éparpillement.
|
|
Et l'avantage d'éspace ? Evalue-t-il le degré d'avancement de chaine de pions ? (Structures Française, Benoni classique...)
|
|
Grandesorciere, effectivement il ajoute un bonus quand deux pions sur des colonnes successives sont proches mais dés lors qu'ils ne se "touchent" pas, il n'y a plus aucun bonus. C'est ça qui me fait dire que ce n'est peut-être pas très au point.
Sagiro, non effectivement, c'est un oubli de ma part, il se contente d'évaluer la structure de la chaine de pion et non son avancement.
|
|
|