explication alphaBeta

explication alphaBeta - Algo - Programmation

Marsh Posté le 07-03-2008 à 18:37:38    

Bonjour tout le monde,  
 
Je ne comprends pas très bien l'algo alphaBeta (avec simplification négamax).
L'appel récursif se fait comme ceci :

Code :
  1. Val = -ALPHABETA(Pi,-B,-A)


 
Le problème est que ma fonction d'évaluation peut rendre des valeurs négatives si la position est mauvaise, or suivant si c'est moi qui commence ou le programme (ou que la profondeur est paire ou impaire) le programme est fort ou vraiment nul :-D
 
Je suis vraiment perdu là, je ne comprends plus donc ma question est peut on avoir une fonction d'évaluation qui renvoie des valeurs négatives ?  :heink:  
 
Merci

Reply

Marsh Posté le 07-03-2008 à 18:37:38   

Reply

Marsh Posté le 07-03-2008 à 20:41:02    

L'alphabeta fonctionne sans problème avec les fonctions d'évaluations quel que soit le signe de l'évaluation renvoyée par la fonction d'évaluation. Je le sais parce que je l'utilise avec des fonctons renvoyant des valeurs positives ou négatives. Le problème doit se situer ailleurs.
Comme c'est un algorithme récursif et que beaucoup de nodes sont parcourus, le debuggage n'est pas facile. Mais il n'y a pas d'autre moyen que de suivre pas à pas ce qui se passe pour comprendre où se situe le problème.
Bon courage.

Reply

Marsh Posté le 07-03-2008 à 20:50:31    

olivthill a écrit :

L'alphabeta fonctionne sans problème avec les fonctions d'évaluations quel que soit le signe de l'évaluation renvoyée par la fonction d'évaluation. Je le sais parce que je l'utilise avec des fonctons renvoyant des valeurs positives ou négatives. Le problème doit se situer ailleurs.
Comme c'est un algorithme récursif et que beaucoup de nodes sont parcourus, le debuggage n'est pas facile. Mais il n'y a pas d'autre moyen que de suivre pas à pas ce qui se passe pour comprendre où se situe le problème.
Bon courage.


 
C'est clair que ce n'est pas facile à suivre :'(
 
Merci.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed