IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Codes sources à télécharger Pascal Discussion :

VALISOACHESS un jeu d'échecs ambitieux [Sources]


Sujet :

Codes sources à télécharger Pascal

  1. #61
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut ValisoaChess 0.1.7 Le critère le plus difficile à programmer " Protection de pièce menacée"
    Bonsoir,
    La version 0.1.7 de ValisoaChess est enfin prête. J'ai pris beaucoup de temps pour programmer cette version car c'est la plus difficile. J'ai déjà fait, des prototypes de certaines prochaines versions (jusqu'à 0.2.1) mais la seule version qui soit vraiment difficile à programmer c'est la version 0.1.7. Je vois qu'il faut encore beaucoup d'ajustement et de corrections à cette version mais je dois quand même la publier.(Il faut avancer quand même )

    ValisoaChess 0.1.7.zip

    C'est le critère : " Protection de pièce en prise " qui pose un problème. Il y a des cas où ValisoaChess n'arrive pas à protéger efficacement ses pièces.
    " Le voyage compte plus que la destination. "
    ValisoaChess

  2. #62
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut ValisoaChess 0.1.8 : Mise en vlaleur de pion passé
    Malgré l'obstacle rencontré lors de la version 0.1.7, ValisoaChess continue d'avancer. Il est maintenant à la version 0.1.8 qui est une mise en valeur de pion passé.
    ValisoaChess 0.1.8.zip
    " Le voyage compte plus que la destination. "
    ValisoaChess

  3. #63
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut ValisoaChess 0.1.9 : Mise en valeur de poussé de pion passé
    Slt ! Voici la nouvelle version de ValisoaChess. Non seulement il met en valeur le pion passé met mais il comprend aussi l'importance de pousser un pion passé afin de promouvoir en Dame.
    ValisoaChess 0.1.9.zip
    " Le voyage compte plus que la destination. "
    ValisoaChess

  4. #64
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    mars 2003
    Messages
    7 825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : mars 2003
    Messages : 7 825
    Points : 57 555
    Points
    57 555
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    Je viens de faire une partie provoquant la promotion potentielle de pions. Effectivement, le programme semble y accorder de l'importance. Mais au moment de la promotion, je n'ai pas eu le choix de la pièce de substitution (le programme m'a imposé une dame) ; si je ne me trompe pas, ne devrais-je pas pouvoir choisir ?

    Un petit détail : mon dernier coup provoquant le mat n'a pas été ajouté à la liste des coups. Et au sujet de cette liste de coups, je trouverais intéressant de pouvoir la sauvegarder.

    Sans être un grand spécialiste, je trouve que le jeu se comporte bien.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  5. #65
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut
    Citation Envoyé par Alcatîz Voir le message
    Je viens de faire une partie provoquant la promotion potentielle de pions. Effectivement, le programme semble y accorder de l'importance. Mais au moment de la promotion, je n'ai pas eu le choix de la pièce de substitution (le programme m'a imposé une dame) ; si je ne me trompe pas, ne devrais-je pas pouvoir choisir ?
    Oui, normalement t'as le choix entre 4 pièces pour la promotion : Dame, Tour, Cavalier, Fou. Disons que le fait que ValisoaChess impose directement une Dame est un défaut à corriger. Je ferais en sorte que la version 0.5 puisse laisser à l'adversaire la liberté de choisir sa promotion
    " Le voyage compte plus que la destination. "
    ValisoaChess

  6. #66
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut
    Citation Envoyé par Alcatîz Voir le message
    Un petit détail : mon dernier coup provoquant le mat n'a pas été ajouté à la liste des coups. Et au sujet de cette liste de coups, je trouverais intéressant de pouvoir la sauvegarder.
    Merci pour cette remarque. J'ajouterai le dernier coup dans la liste des coups et je ferais en sorte que l'adversaire puisse sauvegarder la partie jouée. Il y a encore des choses à améliorer
    " Le voyage compte plus que la destination. "
    ValisoaChess

  7. #67
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut ValisoaChess 0.4 L'attaque
    Bonjour !
    ValisoaChess 0.4 est la dernière version qui calcule à demi-coup. J'ai décidé de passer à l'étape suivante de développement : L'algorithme de recherche.
    Auparavant, j'ai voulu savoir la puissance de ma fonction d'évaluation et ses critères en ne calculant qu'à demi-coup seulement. Je me suis posé des questions :
    • Jusqu'à quel niveau (en ELO) peut atteindre un moteur d'échecs qui calcule seulement à Demi-coup ?

    • Pour combien de critères d'évaluation ?

    • Avec quelle valeur pour chaque critère ?

    Pour le cas de ValisoaChess, je me suis arrêté à 25 critères d'évaluation parce qu'attribuer des valeurs à ces critères est plus difficile qu'il n'y paraît. Il faut faire beaucoup de tests parce qu'il n'y a pas de règles générales permettant de dire que tel critère devrait avoir une telle valeur ( à part les pièces). Sa force est évalué à 1150 ELO correspondant au niveau d'un débutant aux échecs.
    De ce fait, pour augmenter son niveau, je vais donc intégrer un algorithme de recherche dans son code. Le MiniMax est mon premier choix parce qu'il est plutôt simple. L'amélioration viendra plus tard.
    ValisoaChess 0.4.zip
    " Le voyage compte plus que la destination. "
    ValisoaChess

  8. #68
    Membre averti
    Avatar de inspirateur
    Homme Profil pro
    Directeur de projet
    Inscrit en
    mars 2014
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : mars 2014
    Messages : 91
    Points : 339
    Points
    339
    Par défaut Lenteur de MinMax
    Bonsoir ! ValisoaChess est bloqué à la version 0.6 car il devient lent lorsque je rajoute de profondeur de calcul sur le l'algorithme MinMax. Y a-t-il quelqu'un qui puisse me donner de conseil à ce sujet ? Merci d'avance.
    " Le voyage compte plus que la destination. "
    ValisoaChess

  9. #69
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    3 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 3 938
    Points : 14 563
    Points
    14 563
    Billets dans le blog
    8
    Par défaut
    Bonjour ! Pour ma part je ne peux pas trop vous aider. Les petits programmes que j'ai écrits explorent l'arbre des coups à une profondeur (très) limitée, justement à cause de ce problème. Je n'ai pas trouvé le temps ou la motivation pour aller plus loin.

    Quelqu'un suggérait plus haut dans la discussion d'utiliser la méthode dite "alpha-beta", qui permet d'ignorer certaines branches de l'arbre. Ça pourrait être une piste.

    Sinon, vous ne voudriez pas faire une interface UCI ou XBoard/WinBoard ? C'est amusant de pouvoir faire jouer son programme contre d'autres, et ça permet de trouver des erreurs.

    Des programmes forts ou très forts, il y en a plus qu'il n'en faut. Des programmes faibles mais qui fonctionnent correctement, il n'y en a pas beaucoup.

    À mon humble avis une interface "texte" est indispensable si vous voulez vraiment aller plus loin. Ça ne vous empêcherait pas de conserver votre interface graphique.

    Je viens de réessayer la version 0.4. Elle semble plutôt bien fonctionner.

  10. #70
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    3 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : mai 2002
    Messages : 3 286
    Points : 5 525
    Points
    5 525
    Par défaut
    Salut

    cherche la méthode Mtdf c'est une variantes du minmax alfabeta
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  11. #71
    Membre averti Avatar de Galet
    Homme Profil pro
    Consultant/Programmeur Robotique industrielle
    Inscrit en
    mars 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant/Programmeur Robotique industrielle

    Informations forums :
    Inscription : mars 2010
    Messages : 292
    Points : 377
    Points
    377
    Par défaut
    Bonjour,
    Je suis d'accord avec Roland Chastain. Confronter ton programme avec d'autre te permettra de l'améliorer même s'il tourne déjà vraiment pas mal.

    Les algorithmes connus te mènerons vite au niveau des programmes que tu cherches à battre.

    Une autre piste consiste à optimiser ton code pour gagner du temps. Comme il comprend beaucoup de boucles, un petit gain par calcul se verra rapidement. Je pense à l'introduction de sous-routines Assembleur ou encore augmenter l'usage du récursif (Il y a un excellent guide sur Developpez), déjà présent dans MiniMax.
    Comme ton cahier des charges initial était de réduire le volume de code cela pourrait converger

    Bon courage,
    Windows 10 / Delphi Tokyo
    "Les choses ne changent pas. Change ta façon de les voir, cela suffit" Lao Tseu

Discussions similaires

  1. Projet Jeu d'échec
    Par Layla dans le forum Langage
    Réponses: 10
    Dernier message: 23/12/2010, 14h06
  2. [IA] jeu d'échec
    Par Leinhardt dans le forum Intelligence artificielle
    Réponses: 7
    Dernier message: 01/04/2008, 22h33
  3. L'empereur de Chine et le jeu d'échecs
    Par momo1367 dans le forum Pascal
    Réponses: 1
    Dernier message: 04/01/2008, 03h08
  4. Serveur de jeu d'échec en PHP
    Par S_Xavier dans le forum Langage
    Réponses: 3
    Dernier message: 20/10/2007, 16h02
  5. Jeu d'échec borland soap
    Par rpoulin dans le forum Web & réseau
    Réponses: 2
    Dernier message: 20/10/2005, 06h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo