Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -45%
PC Portable LG Gram 17″ Intel Evo Core i7 32 Go ...
Voir le deal
1099.99 €

Tester les inégalités : le Negascout/PVS

Aller en bas

Tester les inégalités : le Negascout/PVS Empty Tester les inégalités : le Negascout/PVS

Message  Admin Lun 21 Déc - 17:07

Plutôt que lancer aveuglement une nouvelle recherche alpha-bêta coûteuse en temps pour explorer les branches sœurs, une recherche rapide avec une fenêtre nulle (bêta = alpha+1) nous informerait de l'utilité de celle-ci.

l'algorithme Principal Variation Search

int alphabêta(int depth, int alpha, int bêta)
{
if (game over or depth <= 0)
return winning score or eval();
move bestMove = first move;
make move bestMove;
int current = -alphabêta(depth - 1, -bêta, -alpha);
unmake move bestMove;
if (current >= alpha)
alpha = current;
if (current < bêta) {
for (each remaining move m) {
make move m;
int score = -alphabêta(depth - 1, -(alpha+1), -alpha)
if (score > alpha && score < bêta)
score = -alphabêta(depth - 1, -bêta, -alpha)
unmake move m;
if (score >= current) {
current = score;
bestmove = m;
if (score >= alpha){
alpha = score;
if (score >= bêta)
break;
}
}
}
return current;
}
Admin
Admin
Admin

Messages : 25
Date d'inscription : 21/10/2007
Age : 46
Localisation : Argenteuil

http://perso.orange.fr/eddy.balavoine/VIRTUAL_DRAUGHTS/index.htm

Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser