panorama da inteligência artificial aplicada a jogos
TRANSCRIPT
LBI - Microsoft
Panorama da Inteligência Artificial Aplicada a Jogos
Adriano Gil [email protected]
@adrianomgil
LBI - Microsoft
§ Mestrado em Engenharia Elétrica § Desenvolvedor Unity no INDT § Pesquisador na área de IA para Jogos § Professor na Pós de Desenvolvimento de Jogos Eletrônicos na UEA
Quem sou eu?
LBI - Microsoft
§ Inteligência ArIficial Aplicada em Jogos § Áreas de Pesquisa em IA para Jogos § Exemplo de Aplicação usando Neuroevolução § Conclusão
Sumário
LBI - Microsoft
Inteligência Artificial
LBI - Microsoft
"The ability of a computer or other machine to perform those ac5vi5es that are normally thought to require intelligence."
"This generally involves borrowing characteris5cs from biological intelligence, and applying them as algorithms in a computer-‐friendly way."
Inteligência Artificial
LBI - Microsoft
IA Aplicada em Jogos
“Anything that gives the illusion of intelligence to an appropriate level, thus making the game more
immersive, challenging, and, most importantly, fun, can be considered game AI.”
§ Física? Detecção de colisão? Pathfinding?
LBI - Microsoft
§ Entregar experiências aos jogadores § Gerar ambientes imersivos § Jogo personalizado ao jogador § Maior replayability § Ajuste de Dificuldades
Então, para que serve IA para Jogos?
LBI - Microsoft
Áreas de IA para Jogos
§ Áreas levantadas em arIgo da IEEE TransacIons on ComputaIonal Intelligence and AI in Games (2014)
LBI - Microsoft
Áreas de IA para Jogos
§ Áreas levantadas em arIgo da IEEE TransacIons on ComputaIonal Intelligence and AI in Games (2014)
§ Apresentadas pelos pesquisadores Georgios Yannakakis, Julian Togelius
LBI - Microsoft
§ NPC Behavior Learning § Busca e Planejamento § Modelagem de Jogador § Jogos como Benchmark de IA § Geração Procedural de Conteúdo § NarraIva Computacional § Game Design AssisIdo por IA § IA Geral para Jogos
Áreas de IA para Jogos
LBI - Microsoft
NPC Behavior Learning
LBI - Microsoft
NPC Behavior Learning
§ O uso de métodos de IA para aprender como jogar § Tradicionalmente, o uso mais comum de IA em games § Trata gameplay como um problema de aprendizado de reforço
§ Metódos evoluDvos são frequentemente usados
LBI - Microsoft
NPC Behavior Learning
§ Possibita novos Ipos de Gameplay § Jogador treinar NPCs
LBI - Microsoft
NPC Behavior Learning
§ Possibita novos Ipos de Gameplay § Player treinar NPCs § Criar um modelo do jogador para compeIr com outros
LBI - Microsoft
Busca e Planejamento
LBI - Microsoft
Busca e Planejamento
LBI - Microsoft
Busca e Planejamento
LBI - Microsoft
Busca e Planejamento
§ O uso de algoritmos de busca e planejamento para realizar tarefas dentro do jogo
§ Trata gameplay como um conjunto de estados de jogo § Uso de grafos ou árvore de estados de jogo § Busca em estados uIlizando A* para pathfinding § Busca em árvores de jogos uIlizando Minimax § Recentemente, muito arIgos uIlizando Busca em Árvore Monte-‐Carlo
LBI - Microsoft
§ Modelos computacionais de como o jogador percebe e reage ao gameplay
§ Um dos mais não-‐tradicionais uso de IA em jogos § Central para a experiência do jogador § Game AnalyIcs
§ Estudos de comportamento dos jogadores § Geração de perfis
Modelagem de Jogador
LBI - Microsoft
Modelagem de Jogador
LBI - Microsoft
Modelagem de Jogador
LBI - Microsoft
§ Benchmarks associados com compeIções § hfp://www.plajormersai.com/ § hfp://www.sigevo.org/gecco-‐2013/compeIIons.html § hfp://cilab.sejong.ac.kr/sc_compeIIon/
Jogos como Benchmark de IA
LBI - Microsoft
§ Benchmarks associados com compeIções § Jogos como teste de Turing
Jogos como Benchmark de IA
LBI - Microsoft
§ A criação automáIca ou semi-‐automáIca de conteúdo de jogos como níveis, mapas, missões, texturas.
§ Usa técnicas pseudo-‐aleatórias, planejamento ou métodos baseados em busca
§ Altamente relacionado com o ramo de criaDvidade computacional
Geração Procedural de Conteúdo
LBI - Microsoft
Geração Procedural de Conteúdo
LBI - Microsoft
Geração Procedural de Conteúdo
LBI - Microsoft
Geração Procedural de Conteúdo
LBI - Microsoft
NarraDva Computacional
LBI - Microsoft
§ Representação e geração de narraIvas usando jogos § Storytelling interaIvo § Enredos são normalmente contados através das lentes da câmera virtual
§ Geração de agentes verossímeis
NarraDva Computacional
LBI - Microsoft
NarraDva Computacional
LBI - Microsoft
§ IA auxiliando antes, durante ou após o processo de criação de jogos
Game Design AssisDdo por IA
LBI - Microsoft
§ IA auxiliando antes, durante ou após o processo de criação de jogos
§ Envolve diversas facetas da criaIvidade em jogos: visual, audiIva, narraIva, lúdica, arquitetura de levels, gameplay
Game Design AssisDdo por IA
LBI - Microsoft
§ IA Geral tem por objeIvo a criação de agentes capazes de realizar todo Ipo de tarefas, que são inteligentes de maneira geral
§ IA Geral para jogos: criação de agentes capazes de jogar todos os Ipos de jogos
§ Área de pesquisa crescente com a geração de diversos benchmarks
IA Geral para Jogos
LBI - Microsoft
IA Geral para Jogos
MNIH, Volodymyr et al. Human-‐level control through deep reinforcement learning. Nature, v. 518, n. 7540, p. 529-‐533, 2015.
MNIH, Volodymyr et al. Playing atari with deep reinforcement learning. arXiv preprint arXiv:1312.5602, 2013.
LBI - Microsoft
§ Computação EvoluIva § Aprendizado de Reforço § Aprendizado Supervisionado § Aprendizado Não-‐Supervisionado § Planejamento § Árvore de Busca
Métodos de IA
LBI - Microsoft
§ NeuroEvolução? Evolução de Redes Neurais? § Redes Neurais + Algoritmos GenéIcos
Exemplo usando Neuroevolução
LBI - Microsoft
Redes Neurais
LBI - Microsoft
Redes Neurais
LBI - Microsoft
Redes Neurais
LBI - Microsoft
Redes Neurais
LBI - Microsoft
Redes Neurais
LBI - Microsoft
Algoritmos GenéDcos
§ HeurísIca de busca que tenta imitar o processo da evolução natural, como herança, mutação, seleção, cruzamento
§ Define uma população de instâncias, chamadas de cromossomos, sendo cada uma, uma possível solução para o problema
§ Ao longo das gerações, a melhor solução sobrevive
LBI - Microsoft
Algoritmos GenéDcos
1 3
6
2
4
5
7
Esta é uma geração de cromossomos
LBI - Microsoft
Algoritmos GenéDcos
1 3
6
2
4
5
7
Cada cromossomo é testado e recebe uma pontuação
LBI - Microsoft
Algoritmos GenéDcos
1 3
6
2
4
5
7
Cada cromossomo é testado e recebe uma pontuação
1 3
6
2
4
5
7
8
Qual o valor da saída para que o agente a5nja seus obje5vos?
LBI - Microsoft
Algoritmos GenéDcos
1 3
6
2
4
5
7
Cada cromossomo é testado e recebe uma pontuação
1 3
6
2
4
5
7
8
Qual o valor da saída para que o agente a5nja seus obje5vos?
1 3
6
2
4
5
7
8
5
7
2
9
2
3
LBI - Microsoft
Algoritmos GenéDcos
1 3
6
2
4
5
7
A próxima geração trará melhores cromossomos!
1 3
6
2
4
5
7
8 1
3
6
2
4
5
7
8
5
7
2
9
2
3
LBI - Microsoft
Algoritmos GenéDcos
§ Operadores GenéIcos: § Seleção dos melhores canditados a cada geração
LBI - Microsoft
Algoritmos GenéDcos
§ Operadores GenéIcos: § Seleção dos melhores canditados a cada geração § Recombinação genéIca
LBI - Microsoft
Algoritmos GenéDcos
§ Operadores GenéIcos: § Seleção dos melhores canditados a cada geração § Recombinação genéIca § Mutação genéIca
(1.29 5.68 2.86 4.11 5.55) => (1.29 5.68 2.73 4.22 5.55)
LBI - Microsoft
NPC NeuroEvoluDvo
LBI - Microsoft
Percepções
LBI - Microsoft
NPC NeuroEvoluDvo
LBI - Microsoft
DEMO
CARWIN Unity Project hfps://github.com/alessandrofrancesconi/carwin.git
LBI - Microsoft
§ Para Modelagem do Jogador: § O comportamento do Jogador representado por uma matriz
Abordagem NeuroevoluDva
LBI - Microsoft
§ Para Geração Procedural: § NPCs inteligentes podem avaliar o conteúdo gerado § Neuroevolução pode ser usada na geração direta do conteúdo
Abordagem NeuroevoluDva
LBI - Microsoft
§ Para Ferramentas de Game Design: § Para avaliar o conteúdo gerado § Sugestão de conteúdo
Abordagem NeuroevoluDva
LBI - Microsoft
§ Para AI em Jogos Comerciais: § Exemplo: Creatures
Abordagem NeuroevoluDva
LBI - Microsoft
§ Relacionamento de métodos de IA para Jogos com outras áreas, ex: RobóIca
§ Métodos evoluIvos possuem alta aplicabilidade § IA Pesquisa x IA Comercial
Conclusão
LBI - Microsoft
§ YANNAKAKIS, Georgios N.; TOGELIUS, Julian. A panorama of arDficial and computaDonal intelligence in games. 2014. ComputaIonal Intelligence and AI in Games, IEEE TransacIons on , vol.PP, no.99, pp.1,1
§ RISI, SebasIan; TOGELIUS, Julian. NeuroevoluDon in Games: State of the Art and Open Challenges. In: ArXiv e-‐prints. E-‐print no. 1410.7326. Submifed Nov 2014
§ HAGAN, MarIn T. et al. Neural network design. Boston: Pws Pub., 1996.
Referências
LBI - Microsoft
www.indt.org.br
THANK YOU
LBI - Microsoft
Panorama da Inteligência ArDficial Aplicada a Jogos
Adriano Gil [email protected]
@adrianomgil
Disponível no Slideshare: -‐> hfp://www.slideshare.net/AdrianoGil/panorama-‐da-‐inteligncia-‐arIficial-‐aplicada-‐a-‐jogos -‐> hfp://goo.gl/2Df0dG
INF 1771 – Inteligência Artificial Edirlei Soares de Lima Aula 19 – Inteligência Artificial em Jogos
INF 1771 – Inteligência Artificial Edirlei Soares de Lima Aula 21 – Inteligência Artificial em Jogos
INF 1771 – Inteligência Artificial Edirlei Soares de Lima Aula 20 – Inteligência Artificial em Jogos