026 Heuristica Damas

Share Embed Donate


Short Description

Download 026 Heuristica Damas...

Description

Universidade Federal do Tocantins

SOLUÇÕES HEURÍ STICAS STICAS PARA O JOGO DE DAMAS Diogo Rigo de Brito Guimarães Alexandre Tadeu Rossini da Silva

Objetivo ●

Implementar soluções heurísticas para o Jogo de Damas e aplicar os algoritmos em um ambiente gráfico capaz de confrontar as soluções.

O Jogo de Damas ●

É um jogo disputado em turnos por dois  jogadores, em uma matriz quadrada 8x8 (tabuleiro de 64 casas), dispondo de 12 pe ças para cada jogador.

Introdução ●

O desenvolvimento de soluções heurísticas é motivado pelo alto custo computacional de se analisar, via busca cega, todas as possibilidades.

Motivação ●





Estudar técnicas heurísticas e metaheurísticas Damas foi escolhido por possuir características semelhantes à de problemas mais complexos Utilizar as técnicas estudadas em problemas semelhantes  –

Xadrez

 –

Caixeiro viajante

 –

Passeio do cavalo

 –

Go

Métodos ●

Foram utilizados conceitos de teoria dos jogos, heurística (MiniMax com poda Alfa Beta) e metaheurística (algoritmo genético).  –

Algoritmo genético: Algoritmo evolutivo.

 –

Minimax: Algoritmo de maximização do ganho. 0,9 0,8 0,6 0,6 0,5 0,3

0100011000111001 0101001010101001 0010110101010100 0010011010101101 0101010110010101 0001010101010111

Características ●

Características do Jogo de Damas:  –

Simétrico: De mesmo peso para os jogadores.

 –

Soma zero: Competição direta.

 –

Seqüencial: Jogado em turnos.

 –

Informação perfeita e finita: Conhecimento prévio de todos os movimentos que podem ser feitos.

Algoritmo genético ●

Algoritmo evolutivo que usa técnicas inspiradas pela biologia evolutiva como hereditariedade, mutação, seleção natural e recombinação.  –

 –

 –

 –

Baseiase em uma codifica soluções possíveis.

ção do conjunto das

Os resultados são apresentados como uma população de soluções. Não necessitam de nenhum conhecimento derivado do problema. Usa transições probabilísticas.

Implementação por algoritmo genético ●

Foi modelado o cromossomo com um conjunto de genes (a peça a ser movida e seu movimento). Cada gene representa um movimento de um jogador.

Implementação por algoritmo genético ●

Exemplo de codificação:

47 39

45 37

31

43 35

29

41 33

27

25

17 23

21 15

7

19 13

5

11 3

9 1

Implementação por algoritmo genético ●

Avaliação do cromossomo (fitness):  –



Soma( jogada * (número genes índice) )

Avaliação do estado do tabuleiro:  –

Soma(peça jogador*peso) – soma(peça oponente*peso) Peso posicional 4 4

4 3

3 4

2

3

4 3

2 2

3 4

3

1

2

4

2

1

3 4

3

2

4

4

4 3

3 4

4 4

5 7 10

Implementação por algoritmo genético ●

Para o cruzamento primeiro são selecionados dois indivíduos pelo método da roleta.  –

 –

Os indivíduos estão ordenados de acordo com a funçãoobjetivo. A roleta atribui probabilidades decrescentes de indivíduos menos aptos serem escolhidos. População Indiví duo 1 Indiví duo 2 Indiví duo 3 Indiví duo 4 Indiví duo 5

Fitness 5 4 3 2 1

% 33,33% 26,67% 20,00% 13,33% 6,67%

Implementação por algoritmo genético ●

O cruzamento gera dois novos indivíduos e estes recebem o cromossomo dos pais recombinados por um corte.  –  –

O Corte pode dividir um gene ao meio ou não. Na mutação um gene qualquer recebe uma nova peça.

Minimax ●

Pode ser considerado como a maximiza ção do ganho mínimo.

Corte Alfa Beta ●

Tem por objetivo reduzir a árvore de busca.

Desenvolvimento ●



A fim de aplicar as soluções propostas pelos algoritmos desenvolvidos, foi necessária a criação de um ambiente gráfico. Nesse ambiente são feitas as simulações entre os algoritmos propostos e jogadores humanos.

Humano

Algoritmos genéti

Mi i

Desenvolvimento ●

Tanto o ambiente quanto as solu ções foram implementadas em C++.  –

Como biblioteca gráfica foi utilizada SDL.

Testes e resultados ●



Não foram realizados testes para quantificar a eficiência e a qualidade das soluções propostas. O trabalho encontrase em fase de desenvolvimento.

Teste e resultados ●



A solução por algoritmo genético foi proposta a fim de minimizar o tempo de resposta por buscas, mas não obteve resultado satisfatório. O resultado foi uma solução com defensiva baixa e ofensiva quase inexistente:  –

Peças movidas para posições seguras e de forma ingênua.

Testes e resultados ●

A solução por MiniMax com poda Alfa Beta encontrase em desenvolvimento.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF