# **Manual de Utilizador - Fase 2**
<div align="center">
## Projeto Fase 2 - Jogo do Cavalo
### Unidade Curricular de Inteligência Artificial
Prof. Filipe Mariano e Prof. Joaquim Filipe
>Realizado por Pedro Moura (202100110) e Rui Jesus (202100279)

</div>
---
## **2. Acrónimos e Convenções usadas**
Serve o presente capítulo para fazer referência às convenções utilizadas ao longo do presente documento.
- Max - nó maximizante do algoritmo alfabeta
- Min - nó minimizante do algoritmo alfabeta
## **3. Introdução**
Num momento de evolução e crescente expansão das Tecnologias de Inteligência Artificial, é cada vez mais significativo o uso destas no nosso quotidiano, destacando-se de uma forma progressiva o seu potencial inovador, que se tem refletido em muitos aspetos da nossa sociedade, entre eles, a forma como trabalhamos e como cada vez mais atividades estão dependentes da sua presença para fornecerem os seus serviços.
É com esta premissa que no decorrer da licenciatura em Engenharia Informática do Instituto Politécnico de Setúbal, lecionada pelos docentes Joaquim Filipe e Filipe Mariano, foi solicitada a realização do presente projeto, que visa executar teoria de jogos, aplicada ao problema do Jogo do Cavalo.
A teoria de Jogos é uma importante área de estudo da inteligência artificial, sendo normalmente aplicada a jogos sequenciais e de soma-zero, como é o caso do jogo do cavalo, sendo tal demonstrado através do presente programa.
O presente relatório visa documentar toda a realização deste projeto, abordando de um ponto de vista prático o seu propósito e a forma como o mesmo poderá ser utilizado por quem o pretenda.
## **4. Instalação e Utilização**
O presente capítulo, descreverá os passos necessários para Instalação e Utilização do *software* desenvolvido, tanto do ponto de vista de execução, bem como de utilização e interpretação do mesmo.
### 4.1. Instalação
Para instalação da presente solução, estão definidos os seguintes requisitos ambientais:
| Tipo | Software |
| -------- | -------- |
| IDE | LispWorks |
| Linguagem| LISP 8.0 |
Segundo a documentação, consultada à data, destas soluções, estas possuem como requisitos mínimos:
| Requisitos Hardware | Requisitos Software |
| -------- | ---------------------- |
| 175mb de espaço em disco para a versão de 64-bits |GTK+ 2 (versão 2.4 ou superior) para executar o GTK+ GUI. Open Motif 2.2.x e Imlib para correr o Motif GUI |
Para instalação do ambiente, será então necessário efetuar o *Download* do LispWorks, através do [Website Oficial](https://www.lispworks.com/).
### 4.2 Instalação e Configuração
Para utilização do programa, será primeiramente necessário transferir os ficheiros que compõem a solução:
- **Interact.lisp**
- Carrega os restantes ficheiros
- Efetua a leitura e escrita de ficheiros
- Interação com o Utilizador
- **Jogo.lisp**
- Código relacionado com o problema específico
- **Algoritmo.lisp**
- Contém todos os algoritmos implementados no projeto
- **Log.dat**
- Contém os resultados do jogo executados
Após transferido o projeto, deverá proceder à configuração do caminho do LISP. Para tal, deverá alterar a função `caminho-ficheiro`, de forma a definir o caminho a ser utilizado ao longo da execução, tanto para leitura como para a escrita dos ficheiros:
```
(defun caminho-ficheiro ()
"Caminho para os ficheiros, colocar / no final do caminho"
"C:/Users/XXX/"
)
```
### 4.3 Execução do programa
#### 4.3.1 Ecrâ Inicial
Após a devida configuração do programa, o projeto está pronto a utilizar, sendo apenas necessário proceder à compilação e execução da função: `jogar`, no ficheiro **Interact.lisp**.
Após iniciar o programa, iremos observar a seguinte interface:
```
___
|_ |
| | ___ __ _ ___
| |/ _ \ / _` |/ _ \
/\__/ / (_) | (_| | (_) |
\____/ \___/ \__, |\___/
__/ |
|___/
_ _
| | | |
__| | ___ ___ __ ___ ____ __| | ___
/ _` |/ _ \ / __/ _` |\ \ / / _` | |/ _ \
| (_| | (_) | | (_| (_| | \ V / (_| | | (_) |
\__,_|\___/ \___\__,_| \_/ \__,_|_|\___/
Escolha um jogo:
1 - Humano vs Computador
2 - Computador vs Computador
```
O ecrã em causa permite ao utilizador escolher o tipo de jogo a realizar.
- Na opção 1 será questionado quem deverá ser o primeiro jogador e o tempo máximo que o computador tem para jogar
- Na opção 2 será perguntado apenas o tempo máximo para o computador jogar.
#### 4.3.2 Seleção do primeiro jogador
Após selecionar a **opção 1** anterior, será questionado quem deve ser o primeiro jogador.
```
Escolha o primeiro a jogar:
1 - Humano
2 - Computador
```
#### 4.3.3 Tempo máximo da jogada do computador
Em seguida é questionado o tempo máximo, em milisegundos, que a máquina dispõe.
```
Escolha o tempo limite para o computador jogar, entre 1000 a 5000 milissegundos:
```
Como se pode observar o tempo mínimo será de 1 segundo, e o máximo de 5 segundos.
#### 4.3.4 Alteração da profundidade máxima do Alfabeta
Para alteração da profundidade do algoritmo alfabeta, para aumento ou diminuição da procura na árvore de jogo, deve se alterar este excerto de código, que se encontra no ficheiro **Interact.lisp**, substituindo o "6" pela profundidade máxima pretendida:
```
(defun jogada-computador (estado jogador milisegundos)
"Jogada de um computador"
(let ( (resultado (executar-contar-tempo #'alfabeta estado 6 jogador milisegundos)) )
(append resultado (list *jogada*))
)
)
```
## **5. Output**
Outra das funcionalidades da presente aplicação, prende-se com a disponibilização do output de resolução dos problemas num ficheiro, replicando toda a informação apresentada no ecrã ao longo da execução.
Esta informação, residerá no arquivo log.dat, criado automaticamente aquando da primeira execução do programa. Este conterá todas as estatísticas relativas à execução dos problemas, e será acrescentado após cada execução.
Por exemplo, após execução de determinado problema:
```
Tabuleiro inicial:
|75|12|11|76|66|50|43|14|94|3 |
|52|15|92|65|77|53|45|98|96|27|
|82|38|30|40|37|58|87|2 |64|33|
|85|46|60|9 |62|97|93|99|17|18|
|28|31|35|55|26|7 |21|71|56|67|
|48|20|22|41|5 |25|54|63|36|24|
|42|73|13|44|79|81|23|57|69|6 |
|4 |16|59|34|68|84|19|61|95|83|
|29|49|78|70|88|72|74|47|0 |89|
|80|10|8 |90|32|51|1 |91|86|39|
-------------------------------
|75|12|11|76|66|50|43|14|-1|3 |
|52|15|92|65|77|53|45|98|96|27|
|82|38|30|40|37|58|87|2 |64|33|
|85|46|60|9 |62|97|93|99|17|18|
|28|31|35|55|26|7 |21|71|56|67|
|48|20|22|41|5 |25|54|63|36|24|
|42|73|13|44|79|81|23|57|69|6 |
|4 |16|59|34|68|84| |61|95|83|
|29| |78|70|88|72|74|47|0 |89|
|80|10|8 |90|32|51|1 |-2|86|39|
Turno do JOGADOR1
Pontos do jogador 1 : 94 pontos
Pontos do jogador 2 : 91 pontos
Nos analisados: 401
Cortes alfa: 33
Cortes beta: 132
Tempo de execucao: 1.886
|75|12|11|76|66|50|43|14| |3 |
|52|15|92|65|77|53|-1|98|96|27|
|82|38|30|40|37|58|87|2 |64|33|
|85|46|60|9 |62|97|93|99|17|18|
|28|31|35|55|26|7 |21|71|56|67|
|48|20|22|41|5 |25| |63|36|24|
|42|73|13|44|79|81|23|57|69|6 |
|4 |16|59|34|68|84| |61|95|83|
|29| |78|70|88|72|74|47|0 |89|
|80|10|8 |90|32|51|1 |-2|86|39|
Turno do JOGADOR2
Pontos do jogador 1 : 139 pontos
Pontos do jogador 2 : 91 pontos
Nos analisados: 532
Cortes alfa: 64
Cortes beta: 188
Tempo de execucao: 2.938
|75|12|11|76|66|50|43|14| |3 |
|52|15|92|65|77|53|-1|98|96|27|
|82|38|30|40|37|58|87|2 |64|33|
|85|46|60|9 |62|97|93|99|17|18|
|28|31|35|55|26|7 |21|71|56|67|
|48|20|22|41|5 |25| |63|36|24|
|42|73|13|44|79|81|23|57|69|6 |
|4 |16| |34|68|84| |61|-2|83|
|29| |78|70|88|72|74|47|0 |89|
|80|10|8 |90|32|51|1 | |86|39|
(...)
Turno do JOGADOR2
Pontos do jogador 1 : 1179 pontos
Pontos do jogador 2 : 1331 pontos
Nos analisados: 1
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.0
| |12|-2| | | | |14| | |
| |15| | | | | | | | |
| | | | | | | | | |33|
| | | | | | | | | | |
| | | | | | |21| | | |
| | | |41| | | | | | |
|-1| | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | |0 | |
|80|10|8 | | |51|1 | | | |
O jogo terminou!
Vencedor é o JOGADOR2
Pontos do jogador 1 : 1179 pontos
Pontos do jogador 2 : 1342 pontos
----------------------------------------------
```
## **6. Exemplo de aplicação**
Como se pode observar abaixo, é realizado um jogo entre dois computadores. O jogo é desenrolado de forma automática, jogando cada um na sua vez.
Em termos de dificuldade, a máquina possui um limite máximo de horizonte de profundidade 6.
```
___
|_ |
| | ___ __ _ ___
| |/ _ \ / _` |/ _ \
/\__/ / (_) | (_| | (_) |
\____/ \___/ \__, |\___/
__/ |
|___/
_ _
| | | |
__| | ___ ___ __ ___ ____ __| | ___
/ _` |/ _ \ / __/ _` |\ \ / / _` | |/ _ \
| (_| | (_) | | (_| (_| | \ V / (_| | | (_) |
\__,_|\___/ \___\__,_| \_/ \__,_|_|\___/
Escolha um jogo:
1 - Humano vs Computador
2 - Computador vs Computador
2
Escolha o tempo limite para o computador jogar, entre 1000 a 5000 milissegundos:
5000
Tabuleiro inicial:
|2 |22|89|38|13|57|0 |43|88|15|
|11|34|9 |27|44|32|79|16|53|7 |
|23|21|86|48|69|10|28|37|1 |64|
|52|66|82|63|70|80|29|93|42|84|
|59|12|78|33|51|20|25|49|24|39|
|4 |77|96|90|62|76|61|46|18|65|
|31|47|92|50|68|45|98|99|85|54|
|60|83|14|87|5 |72|73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 |94|8 |26|35|
-------------------------------
|2 |22|-1|38|13|57|0 |43|88|15|
|11|34|9 |27|44|32|79|16|53|7 |
|23|21|86|48|69|10|28|37|1 |64|
|52|66|82|63|70|80|29|93|42|84|
|59|12|78|33|51|20|25| |24|39|
|4 |77|96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| |99|85|54|
|60|83|14|87|5 |72|73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 |-2|8 |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 89 pontos
Pontos do jogador 2 : 94 pontos
Nos analisados: 364
Cortes alfa: 34
Cortes beta: 213
Tempo de execucao: 2.192
|2 |22| |38|13|57|0 |43|88|15|
|11|34|9 |27|44|32|79|16|53|7 |
|23|21|86|-1|69|10|28|37|1 |64|
|52|66|82|63|70|80|29|93|42| |
|59|12|78|33|51|20|25| |24|39|
|4 |77|96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| |99|85|54|
|60|83|14|87|5 |72|73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 |-2|8 |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 137 pontos
Pontos do jogador 2 : 94 pontos
Nos analisados: 797
Cortes alfa: 79
Cortes beta: 203
Tempo de execucao: 3.361
|2 |22| |38|13|57|0 |43|88|15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86|-1|69|10|28|37|1 |64|
|52|66|82|63|70|80|29|93|42| |
|59|12|78|33|51|20|25| |24|39|
|4 |77|96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| |99|85|54|
|60|83|14|87|5 |-2|73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | |8 |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 137 pontos
Pontos do jogador 2 : 166 pontos
Nos analisados: 561
Cortes alfa: 54
Cortes beta: 352
Tempo de execucao: 2.904
|2 |22| |38|13|57|0 |43|88|15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
|52|66|82|63|70|-1|29|93|42| |
|59|12|78|33|51|20|25| |24|39|
|4 |77|96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| |99|85|54|
|60|83|14|87|5 |-2|73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 217 pontos
Pontos do jogador 2 : 166 pontos
Nos analisados: 713
Cortes alfa: 95
Cortes beta: 189
Tempo de execucao: 2.853
|2 |22| |38|13|57|0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
|52|66|82|63|70|-1|29|93|42| |
|59|12|78|33|51|20|25| |24|39|
|4 |77|96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| |-2|85|54|
|60|83|14|87|5 | |73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 217 pontos
Pontos do jogador 2 : 265 pontos
Nos analisados: 411
Cortes alfa: 32
Cortes beta: 311
Tempo de execucao: 1.983
|2 |22| |38|13|57|0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
|52|66|82|63|70| |29|93|42| |
|59|12|78|-1|51|20|25| |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| |-2|85|54|
|60|83|14|87|5 | |73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 250 pontos
Pontos do jogador 2 : 265 pontos
Nos analisados: 296
Cortes alfa: 48
Cortes beta: 104
Tempo de execucao: 1.133
|2 |22| |38|13|57|0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| |29|93|42| |
|59|12|78|-1|51|20|-2| |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47|92|50|68|45| | |85|54|
|60|83|14|87|5 | |73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 250 pontos
Pontos do jogador 2 : 290 pontos
Nos analisados: 609
Cortes alfa: 75
Cortes beta: 332
Tempo de execucao: 2.253
|2 |22| |38|13|57|0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12|78| |51|20|-2| |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47|-1|50|68|45| | |85|54|
|60|83|14|87|5 | |73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 342 pontos
Pontos do jogador 2 : 290 pontos
Nos analisados: 478
Cortes alfa: 56
Cortes beta: 268
Tempo de execucao: 1.701
|2 |22| |38|13|57|0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12|78| |51|20| | |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47|-1|50|68|-2| | |85| |
|60|83|14|87|5 | |73|91|30|71|
|97|75|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 342 pontos
Pontos do jogador 2 : 335 pontos
Nos analisados: 526
Cortes alfa: 94
Cortes beta: 254
Tempo de execucao: 2.003
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12|78| |51|20| | |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47| |50|68|-2| | |85| |
|60|83|14|87|5 | |73|91|30|71|
|97|-1|40|19|58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 417 pontos
Pontos do jogador 2 : 335 pontos
Nos analisados: 183
Cortes alfa: 26
Cortes beta: 104
Tempo de execucao: 0.634
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12|78| |51|20| | |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47| |50|68| | | |85| |
|60|83|14|87|5 | |73|-2|30|71|
|97|-1|40| |58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 417 pontos
Pontos do jogador 2 : 426 pontos
Nos analisados: 114
Cortes alfa: 9
Cortes beta: 67
Tempo de execucao: 0.334
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | |96|90|62|76|61|46|18|65|
|31|47| |50|68| | | |85| |
|60|83|14|-1|5 | |73|-2|30|71|
|97| |40| |58|36|6 |55|95|67|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 504 pontos
Pontos do jogador 2 : 426 pontos
Nos analisados: 242
Cortes alfa: 46
Cortes beta: 42
Tempo de execucao: 0.515
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| |69|10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | |96|90|62| |61|46|18|65|
|31|47| |50|68| | | |85| |
|60|83|14|-1|5 | |73| |30|71|
|97| |40| |58|36|6 |55|95|-2|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 504 pontos
Pontos do jogador 2 : 493 pontos
Nos analisados: 90
Cortes alfa: 0
Cortes beta: 97
Tempo de execucao: 0.276
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| | |10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | |-1|90|62| |61|46|18|65|
|31|47| |50|68| | | |85| |
|60|83|14| |5 | |73| |30|71|
|97| |40| |58|36|6 |55|95|-2|
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 600 pontos
Pontos do jogador 2 : 493 pontos
Nos analisados: 112
Cortes alfa: 32
Cortes beta: 4
Tempo de execucao: 0.223
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21|86| | |10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | |-1|90|62| |61|46|18|65|
|31|47| |50|68| | | |-2| |
|60|83|14| |5 | |73| |30|71|
|97| |40| | |36|6 |55|95| |
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 600 pontos
Pontos do jogador 2 : 578 pontos
Nos analisados: 115
Cortes alfa: 6
Cortes beta: 125
Tempo de execucao: 0.336
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21| | | |10|28|37|1 |64|
| |66|82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | | |90|62| |61|46|18|65|
|31|47| |50|-1| | | |-2| |
|60|83|14| |5 | |73| |30|71|
|97| |40| | |36|6 |55|95| |
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 668 pontos
Pontos do jogador 2 : 578 pontos
Nos analisados: 105
Cortes alfa: 27
Cortes beta: 19
Tempo de execucao: 0.137
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79|16|53|7 |
|23|21| | | |10|28|37|1 |64|
| | |82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | | |90|62| |61|46|18|65|
|31|47| |50|-1| | | | | |
|60|83|14| |5 | |73| |30|71|
|97| |40| | |36|6 |-2|95| |
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 668 pontos
Pontos do jogador 2 : 633 pontos
Nos analisados: 101
Cortes alfa: 12
Cortes beta: 94
Tempo de execucao: 0.221
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79| |53|7 |
|23|21| | | |10|28|37|1 |64|
| | |82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | | |90|62| |-1|46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | |73| |30|71|
|97| |40| | |36|6 |-2|95| |
|81|56|41|74|17|3 | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 729 pontos
Pontos do jogador 2 : 633 pontos
Nos analisados: 54
Cortes alfa: 20
Cortes beta: 8
Tempo de execucao: 0.108
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79| |53|7 |
|23|21| | | |10|28|37|1 |64|
| | |82|63|70| | |93|42| |
|59|12| | |51|20| | |24|39|
|4 | | |90|62| |-1|46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | |73| | |71|
|97| |40| | |36|6 | |95| |
|81|56|41|74|17|-2| | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 729 pontos
Pontos do jogador 2 : 636 pontos
Nos analisados: 31
Cortes alfa: 4
Cortes beta: 31
Tempo de execucao: 0.092
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79| |53|7 |
|23|21| | | |10|28|37|1 |64|
| | |82|63|70| | |-1|42| |
|59|12| | |51|20| | |24| |
|4 | | |90|62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | |73| | |71|
|97| |40| | |36|6 | |95| |
|81|56|41|74|17|-2| | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 822 pontos
Pontos do jogador 2 : 636 pontos
Nos analisados: 77
Cortes alfa: 31
Cortes beta: 8
Tempo de execucao: 0.131
|2 |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | |-1|42| |
|59|12| | |51|20| | |24| |
|4 | | |90|62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | |-2| | |71|
|97| |40| | |36|6 | |95| |
|81|56|41|74|17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 822 pontos
Pontos do jogador 2 : 709 pontos
Nos analisados: 25
Cortes alfa: 0
Cortes beta: 32
Tempo de execucao: 0.071
| |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
|59|12| | |51|-1| | |24| |
|4 | | |90|62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | |-2| | |71|
|97| |40| | |36|6 | |95| |
|81|56|41|74|17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 842 pontos
Pontos do jogador 2 : 709 pontos
Nos analisados: 4
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.004
| |22| |38|13| |0 |43| |15|
|11|34|9 | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51|-1| | |24| |
|4 | | |90|62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | | | | |71|
|97| |40| | |36|6 | |-2| |
|81|56|41|74|17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 842 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 4
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.002
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | |-1|62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | | | | |71|
|97| |40| | |36|6 | |-2| |
|81|56|41|74|17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 932 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | |-1|62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|14| |5 | | | | |71|
|97| |40| | |36|6 | |-2| |
|81|56|41|74|17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 932 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 6
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.003
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | | |62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|-1| |5 | | | | |71|
|97| |40| | |36|6 | |-2| |
|81|56| |74|17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 946 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32|79| |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | | |62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83|-1| |5 | | | | |71|
|97| |40| | |36|6 | |-2| |
|81|56| |74|17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 946 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 4
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.001
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | | |62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83| | |5 | | | | |71|
|-1| |40| | |36|6 | |-2| |
|81|56| |74|17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 1043 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | | |62| | |46|18|65|
|31|47| |50| | | | | | |
|60|83| | |5 | | | | |71|
|-1| |40| | |36|6 | |-2| |
|81|56| |74|17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 1043 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 1
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.0
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | | |62| | |46|18|65|
|31|-1| |50| | | | | | |
|60|83| | |5 | | | | |71|
| | |40| | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 1090 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
|4 | | | |62| | |46|18|65|
|31|-1| |50| | | | | | |
|60|83| | |5 | | | | |71|
| | |40| | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 1090 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 1
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.001
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46|18|65|
|31| | |50| | | | | | |
|60|83| | |5 | | | | |71|
| | |-1| | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 1130 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46|18|65|
|31| | |50| | | | | | |
|60|83| | |5 | | | | |71|
| | |-1| | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 1130 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 5
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.002
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46|18|65|
|31| | |-1| | | | | | |
|60|83| | | | | | | |71|
| | | | | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 1180 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| |38|13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46|18|65|
|31| | |-1| | | | | | |
|60|83| | | | | | | |71|
| | | | | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 1180 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 2
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.002
| |22| | |13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46|18|65|
|31| | | | | | | | | |
|60|-1| | | | | | | |71|
| | | | | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR2
Pontos do jogador 1 : 1263 pontos
Pontos do jogador 2 : 804 pontos
Sem jogadas, ceder jogada!
| |22| | |13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46|18|65|
|31| | | | | | | | | |
|60|-1| | | | | | | |71|
| | | | | |36|6 | |-2| |
|81|56| | |17| | | |26|35|
Turno do JOGADOR1
Pontos do jogador 1 : 1263 pontos
Pontos do jogador 2 : 804 pontos
Nos analisados: 1
Cortes alfa: 0
Cortes beta: 0
Tempo de execucao: 0.0
| |22| | |13| |0 |43| |15|
|11|34| | |44|32| | |53|7 |
|23|21| | | |10|28| |1 |64|
| | |82|63|70| | | |42| |
| |12| | |51| | | |24| |
| | | | |62| | |46| |65|
|31| | | | | | | | | |
|60| | | | | | | | |71|
| | | | | |36|6 | |-2| |
|-1|56| | |17| | | |26|35|
O jogo terminou!
Vencedor é o JOGADOR1
Pontos do jogador 1 : 1344 pontos
Pontos do jogador 2 : 804 pontos
----------------------------------------------
```