2017-08-19 4 views
1

J'essaie de comprendre l'algorithme alpha-bêta-élagage, mais il y a un cas spécifique que je ne comprends pas.Alpha-Beta Coffrage spécial?

Compte tenu this tree, this est censé être la solution. Ce que je ne comprends pas, c'est pourquoi les nœuds marqués en rouge sont supposés avoir la valeur 19. Apparemment c'est un "cas spécial" et la valeur dans le nœud rouge inférieur est 19 parce que 3 19 (qui est la valeur actuelle pour alpha). Le résultat est que le nœud ci-dessus a également la valeur 19.

Cela n'a aucun sens pour moi, car cela suggère qu'il y avait une feuille avec la valeur 19 dans le sous-arbre le plus à droite. Est-ce simplement faux et les deux nœuds devraient avoir la valeur 10?

+0

J'ai essayé d'insérer les images directement, mais apparemment j'ai besoin d'au moins 10 réputation? Puisque cette affaire semble être une faute de frappe, il y a une autre chose dont je ne suis pas sûr. J'ai trouvé [cet outil] (http://proof.github.io/minimax/#tree=KCgoMTcsMiwxMCksKDEsMTksNykpLCgoMTcsMTksMTApLCgyMCw4LDExKSksKCgxMCw5LDMpLCgyNCw0LDE0KSkp) qui semble donner la bonne solution, mais je ne comprends pas pourquoi la valeur bêta à l'extrême droite sous-arbre est 19, ne devrait-il pas être 10? – user8488823

Répondre

3

Si ce nœud obtient la valeur 19 (la valeur de alpha) ou 10 (la plus grande valeur parmi les enfants) est une question de variantes qui existent dans différents algorithmes alpha-bêta. Lorsque la valeur maximisée est inférieure à alpha, certains algorithmes attribueront la valeur de alpha, tandis que d'autres assigneront cette valeur moindre (qui se trouve donc en dehors de la fenêtre alpha-bêta). Une chose similaire se produit avec la version bêta.

Quelle que soit la méthode utilisée, elle n'influence pas le choix du meilleur mouvement. La fenêtre alpha-bêta est là pour indiquer que toute valeur qui surgit d'en-dessous qui se trouve en dehors de cette fenêtre alpha-bêta ne peut pas être importante. Il y a déjà une meilleure variante connue.

Dans ce cas, la meilleure variante s'exécute via le nœud enfant central de la racine. Le joueur qui maximise peut être sûr qu'au moins 19 peut être atteint. En attribuant 10 ou 19 à la troisième option revient à la même conclusion: ce n'est pas un meilleur mouvement que nous avons déjà.

+0

Cela a du sens, merci. Cela m'apparaît quelque peu contre-intuitif, puisque lorsqu'on attribue 19 au nœud, l'arbre lui-même ne semble plus avoir de sens puisque ce nœud n'a pas d'enfant qui porte la valeur 19. Je suppose que cela signifie aussi que si un nœud de minimisation a une valeur bêta de 10 et des enfants contenant les valeurs 15 et 20, la valeur bêta de 10 sera assignée au nœud lui-même, puisqu'il s'agit de la plus petite valeur disponible entre la valeur bêta et les valeurs de ses enfants? – user8488823

+0

En effet, ce serait le cas pour la version bêta. – trincot