O Uso de Algoritmos Genéticos na Geração de Conteúdo Adaptativo em Mobile GAMES
1. O Uso de Algoriіtmos
Genétiіcos na Geração de
Conteúdo Adaptatiіvo em
Mobiіle Games
Maurílio Silva
2. Universidade Federal de Campina Grande
Centro de Engenharia Elétrica e Informática
Departamento de Sistemas e Computação
Diіsciіpliіna de IІnteliіgênciіa
Artiіfiіciіal
Profa. Dra. Joseana Fechine
4. IІntrodução
➔
Jogos atuais
✔
Dificuldade fixa
✔
Frustação
5. IІntrodução
➔
Balanceamento de jogo
✔
Responsável por fornecer desafios
✔
Chave para o sucesso
✔
Evitar frustação
✔
Implica modificar:
●
Paramêntros
●
Dificuldade
●
Cenários
6. IІntrodução
➔
Balanceamento tradicional
✔
Dificuldades fixa
●
Fácil, normal e difícil
✔
Falha
●
Existe uma grande variedade de
jogadores
●
Cada jogador tem habilidades e/ou
conhecimentos específicos
●
Jogador pode evoluir/crescer
durante o jogo
7. IІntrodução
➔
Adaptative Game Content - AGC
✔
Balanceamento dinâmico
✔
Leva em conta o desempenho do jogador
✔
Inimigos com inteligência aprimorada
✔
Novos desafios
✔
Novos cenários
8. IІntrodução
➔
Procedural Content Generation - PCG
✔
Geração dinâmica de contéudo
✔
Importante no desenvolvimento de jogos
●
Fator replay
●
Desafios
9. IІntrodução
➔
Search-based PCG
✔
Gerar-e-testar
✔
Similar a um algoritmo genético
●
Não determinístico
●
Função de avaliação (fitness) para medir a qualidade do que
foi gerado
10. Metodologiіa
➔
Jogo “Chuver”
✔
O que é?
✔
Mecânica
✔
Dificuldade
11. Metodologiіa
➔
Nível/intervalo de dificuldade no experimento
✔
Difícil
●
0.75 até 1.40
✔
Normal
●
1.40 até 1.85
✔
Fácil
●
1.85 até 2.75
12. Metodologiіa
➔
Algoritmo genético
✔
População de 100 cromossomos
✔
Representação binária dos cromossomos com 14bits
✔
Taxa de mutação de 7,5%
✔
Probabilidade de crossover de 55%
✔
Intervalo de tolerância de 0.45 pontos
✔
Uso de sorteio
✔
Função fitness: soma da média aritmética dos cromossomos
13. Metodologiіa
➔
Aplicação do experimento
✔
Primeira etapa
●
Testers (7 a 53 anos)
●
Aparelhos Nokia C3-00/X3-02 e E61
●
Duas partidas seguidas, limitadas a 32 levels cada
Tempo de geração dos levels
Dificuldade do level gerado
Nível de dificuldade atual (na qual o jogador se encontra)
✔
Segunda etapa
● Partida simulada de 1000 levels
● Análise dos dados
14. Resultados
➔
Jogador 1
✔
Algoritmo proposto
●
Menor: 1.75
●
Maior: 1.08
●
Fim do teste: 1.3
✔
Algoritmo Random
●
Menor (início): 1.89
●
Maior: 1.05 (fim do teste)
15. Resultados
➔
Jogador 2
✔
Algoritmo proposto
●
Menor: 1.75
●
Maior: 1.30
●
Fim do teste: 1.45
✔
Algoritmo Random
●
Menor (início): 1.79
●
Maior: 1.20 (fim do teste)
16. Resultados
➔
Jogador 3
✔
Algoritmo proposto
●
Menor: 1.75
●
Maior: 1.15
●
Fim do teste: 1.24
✔
Algoritmo Random
●
Menor (início): 1.84
●
Maior: 1.24 (fim do teste)
17.
18. Análiіse dos Resultados
➔
Algoritmo proposto
✔
Comportamento similar ao Random nos
momentos iniciais
✔
Segue o desenvolvimento do jogador
✔
Ajuste da dificuldade
✔
Pode ser utilizado em outros tipos de jogos
●
Quebra-cabeças (puzzle)
●
Plataforma
●
Side scrolling