У меня есть программа, которая проигрывает Connect Four против оппонента-человека, используя либо стандартный минимаксный алгоритм, либо минимаксный с отсечкой альфа-бета. Оба алгоритма имеют ограничение по глубине, после чего они применяют функцию оценки. В рамках проекта мне пришлось создать кривые производительности, показывающие количество узлов дерева поиска, расширяемых алгоритмами, за оборот компьютера. Кривые показывают тенденцию к снижению, как и ожидалось, так как число возможных состояний уменьшается по ходу игры. Тем не менее, я не могу объяснить, почему количество узлов увеличивается во втором повороте компьютера, что особенно заметно в случае альфа-бета, как можно видеть на изображениях ниже:
![Number of nodes expanded by Minimax (millions of nodes)](https://i.stack.imgur.com/5mbAN.png)
![Number of nodes expanded by minimax with Alpha-Beta pruning (thousands of nodes](https://i.stack.imgur.com/JTKWH.png)
Эти кривые были построены на основе тестовой игры, в которой человек играл первым, а предел глубины составлял 8 слоев. Кто-нибудь знает, почему кривые не строго уменьшаются?