O tópico destas aulas é a pesquisa com adversários. Pretende-se que use o algoritmo minimax, bem como a sua versão melhorada com os cortes alfa-beta, para encontrar a melhor jogada em vários jogos.
Para cada uma das seguintes árvores de jogo
Considere o seguinte jogo: há dois jogadores, MAX e MIN; em cada momento, o estado de um jogo é um inteiro N; na sua vez de jogar, MAX pode escolher uma das seguintes duas jogadas:
Na sua vez de jogar, MIN pode escolher uma das seguintes duas jogadas:
No início, N=100 e MAX joga primeiro. O jogo decorre durante quatro jogadas (duas para cada jogador), após as quais termina.
Suponha que a árvore de jogo é gerada em profundidade primeiro, da esquerda para a direita (i.e. A, B, C e D são aplicadas por esta ordem) e que se usa o algoritmo minimax com cortes alfa-beta:
Considere a seguinte árvore de jogo, cujos estados terminais têm utilidades inteiras, e n e m são variáveis.
Considere o jogo chomp. Dois jogadores (MAX e MIN) têm uma tablete de chocolate com m*n (largura*altura) quadrados. Sabe-se que o quadrado do canto superior esquerdo é venenoso. Os jogadores jogam à vez, de acordo com as seguintes regras: o jogador escolhe um dos quadrados de chocolate restantes, que come juntamente com todos os quadrados que lhe estão abaixo e à direita. Por outras palavras, o jogador retira o rectângulo de chocolate cujo canto superior esquerdo é o quadrado escolhido. Naturalmente, o jogador que comer o quadrado venenoso perde o jogo. A seguinte figura ilustra a árvore do jogo chomp 2*2.
Encontre uma estratégia vencedora para MAX no chomp 3*2 usando cada um dos seguintes algoritmos.
Para cada um dos algoritmo usados, apresente a parte da árvore de jogo gerada para o caso em que a primeira jogada de MAX corresponde à escolha do quadrado inferior direito, e que nenhuma outra parte da árvore foi previamente gerada.