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

Intelligence artificielle Discussion :

[Algorithme MinMax] Application au puissance 4


Sujet :

Intelligence artificielle

  1. #1
    Membre actif
    Profil pro
    chomeur
    Inscrit en
    Août 2006
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : chomeur

    Informations forums :
    Inscription : Août 2006
    Messages : 343
    Points : 246
    Points
    246
    Par défaut [Algorithme MinMax] Application au puissance 4
    Bonjour a tous,

    Je suis en train de faire un puissance 4 et je bloque sur un point : la réponse de l'ordinateur. J'ai deux problèmes qui me minent depuis une petite semaine et qui sont liés...

    Le problème 1 : mon algo de min max n'arrive pas a bloqué le joueur lorsqu'en face il y a une potentielle victoire.

    Le problème 2 : Parfois il jouer n'importe quoi... =(

    Voici le méta code que j'ai implémenté.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    function GetPlay(bool IsMax, long Deep)
    {
     si (HaveWin)
      GetPlay=  _WIN_VAL_
     sinon
     {
       si IsFeuil ou Deep >= _MAX_DEEP_
        getplay=EvalThisPosition
       else
       {
         'j'initialise la valeur de retour a cause des min et des max
         GetPlay=si(IsMax,-1,1)*_WIN_VAL_
     
         pour chaque colonne
         {
           Play(Colonnne)
           si IsMax
            GetPlay=Max(GetPlay, GetPlay(not IsMax, deep+1))
           sinon
            GetPlay=Min(GetPlay, GetPlay(not IsMax, deep+1))
         }
       }
     }
    }
    j'en suis au fond du trou.

    Question en plus, Comment faire pour gerer le niveau de jeu de l'ordinateur ?

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    J'ai le même problème que toi, mon algorithme min-max joue très mal au puissance 4 et il joue également très mal au morpion.

    Pour gérer le niveau de jeu de l'ordinateur tu fais simplement varie la profondeur : pour que l'ordinateur joue mieux tu mets une plus grande profondeur.

    Comment as-tu choisis ta fonction d'évaluation ? Pour ma part, je m'intéresse aux lignes de 4 possibles (24 diagonales, 24 horizontales et 21 verticales) : celles qui présentent des deux couleurs valent 0, les autres valent 90 si il y a trois jetons, 40 si il y a deux jetons et 10 si il y a un jeton. Apparemment cette fonction ne marche pas très bien....

  3. #3
    Membre actif
    Profil pro
    chomeur
    Inscrit en
    Août 2006
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : chomeur

    Informations forums :
    Inscription : Août 2006
    Messages : 343
    Points : 246
    Points
    246
    Par défaut
    Salut,

    En fait mon probleme venait principalement de ma fonction heuristique. Du coup en fouinant un peu j'ai vu qu'il fallait faire un peu ce que tu dis.
    Ce n'était pas fou (mais je n'avais qu'une profondeur de 5 coups), mais ça fonctionnait (empecher un coup gagnant, et jouer quelque chose de raisonnable)

  4. #4
    Membre éclairé
    Avatar de Tournoyons
    Homme Profil pro
    Webdesigner
    Inscrit en
    Mai 2012
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2012
    Messages : 124
    Points : 777
    Points
    777
    Par défaut
    Bonjour,

    Je serais intéressé de savoir dans quel contexte vous développez des algorithmes de Puissance4 ?
    Pourrait-il y avoir une connexion avec mon projet de tournois d'algorithmes http://tournoyons.com ?
    Pierre - webmaster Tournoyons
    Un projet professionnel de site Web ?
    Contactez-moi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Algorithme pour application de gestion DVD
    Par dalma dans le forum Langage
    Réponses: 8
    Dernier message: 01/03/2012, 12h00
  2. probleme d'algorithme pour une fonction puissance
    Par john_evrest dans le forum Caml
    Réponses: 10
    Dernier message: 25/10/2011, 15h58
  3. Algorithme génétique: application à un ensemble
    Par miloon dans le forum MATLAB
    Réponses: 0
    Dernier message: 11/10/2011, 15h51
  4. Application de l'algorithme MinMax
    Par moithibault dans le forum Général Python
    Réponses: 6
    Dernier message: 11/01/2011, 14h19
  5. l'algorithme MinMax --> Evaluate() ?
    Par Miksimus dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 13/04/2006, 13h32

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