Если противник делает менее оптимальный ход, но затем делает лучше, чем он, делая «оптимальный ход» ... тогда «оптимальный ход» не является оптимальным ходом.
Конечно , если противник не делает ожидаемое (оптимальное) движение, то вам необходимо повторно запустить Minmax, чтобы решить, как реагировать - возможно, что оптимальный ответ на оптимальный ход противника больше не подходит (или невозможен).