62
LBI - Microsoft Panorama da Inteligência Artificial Aplicada a Jogos Adriano Gil [email protected] @adrianomgil

Panorama da Inteligência Artificial Aplicada a Jogos

Embed Size (px)

Citation preview

Page 1: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Panorama da Inteligência Artificial Aplicada a Jogos

Adriano  Gil  [email protected]  

@adrianomgil  

Page 2: Panorama da Inteligência Artificial Aplicada a Jogos

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?

Page 3: Panorama da Inteligência Artificial Aplicada a Jogos

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

Page 4: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Inteligência Artificial

Page 5: Panorama da Inteligência Artificial Aplicada a Jogos

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

Page 6: Panorama da Inteligência Artificial Aplicada a Jogos

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?  

Page 7: Panorama da Inteligência Artificial Aplicada a Jogos

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?  

Page 8: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Áreas  de  IA  para  Jogos  

§  Áreas  levantadas  em  arIgo  da  IEEE  TransacIons  on  ComputaIonal  Intelligence  and  AI  in  Games  (2014)  

Page 9: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 10: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 11: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NPC  Behavior  Learning  

Page 12: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 13: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NPC  Behavior  Learning  

§  Possibita  novos  Ipos  de  Gameplay  §  Jogador  treinar  NPCs  

Page 14: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NPC  Behavior  Learning  

§  Possibita  novos  Ipos  de  Gameplay  §  Player  treinar  NPCs  §  Criar  um  modelo  do  jogador  para  compeIr  com  outros  

Page 15: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Busca  e  Planejamento  

Page 16: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Busca  e  Planejamento  

Page 17: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Busca  e  Planejamento  

Page 18: Panorama da Inteligência Artificial Aplicada a Jogos

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    

Page 19: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 20: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Modelagem  de  Jogador  

Page 21: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Modelagem  de  Jogador  

Page 22: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 23: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  Benchmarks  associados  com  compeIções  §  Jogos  como  teste  de  Turing  

Jogos  como  Benchmark  de  IA  

Page 24: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 25: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Geração  Procedural  de  Conteúdo  

Page 26: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Geração  Procedural  de  Conteúdo  

Page 27: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Geração  Procedural  de  Conteúdo  

Page 28: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NarraDva  Computacional  

Page 29: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 30: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NarraDva  Computacional  

Page 31: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  IA  auxiliando  antes,  durante  ou  após  o  processo  de  criação  de  jogos  

Game  Design  AssisDdo  por  IA    

Page 32: Panorama da Inteligência Artificial Aplicada a Jogos

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    

Page 33: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 34: Panorama da Inteligência Artificial Aplicada a 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.  

Page 35: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  Computação  EvoluIva  §  Aprendizado  de  Reforço  §  Aprendizado  Supervisionado  §  Aprendizado  Não-­‐Supervisionado  §  Planejamento  §  Árvore  de  Busca  

Métodos  de  IA  

Page 36: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  NeuroEvolução?  Evolução  de  Redes  Neurais?  §  Redes  Neurais  +  Algoritmos  GenéIcos  

Exemplo  usando  Neuroevolução    

Page 37: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Redes  Neurais  

Page 38: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Redes  Neurais  

Page 39: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Redes  Neurais  

Page 40: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Redes  Neurais  

Page 41: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Redes  Neurais  

Page 42: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 43: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Algoritmos  GenéDcos  

1  3  

6  

2  

4  

5  

7  

Esta  é  uma  geração  de  cromossomos  

Page 44: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Algoritmos  GenéDcos  

1  3  

6  

2  

4  

5  

7  

Cada  cromossomo  é  testado  e  recebe  uma  pontuação  

Page 45: Panorama da Inteligência Artificial Aplicada a Jogos

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?  

Page 46: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 47: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 48: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Algoritmos  GenéDcos  

§  Operadores  GenéIcos:  §  Seleção  dos  melhores  canditados  a  cada  geração  

Page 49: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Algoritmos  GenéDcos  

§  Operadores  GenéIcos:  §  Seleção  dos  melhores  canditados  a  cada  geração  §  Recombinação  genéIca  

Page 50: Panorama da Inteligência Artificial Aplicada a Jogos

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)    

Page 51: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NPC  NeuroEvoluDvo  

Page 52: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

Percepções  

Page 53: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

NPC  NeuroEvoluDvo  

Page 54: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

DEMO  

CARWIN  Unity  Project    hfps://github.com/alessandrofrancesconi/carwin.git  

Page 55: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  Para  Modelagem  do  Jogador:  §  O  comportamento  do  Jogador  representado  por  uma  matriz  

Abordagem  NeuroevoluDva  

Page 56: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 57: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  Para  Ferramentas  de  Game  Design:  §  Para  avaliar  o  conteúdo  gerado  §  Sugestão  de  conteúdo  

Abordagem  NeuroevoluDva  

Page 58: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

§  Para  AI  em  Jogos  Comerciais:  §  Exemplo:  Creatures  

Abordagem  NeuroevoluDva  

Page 59: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 60: Panorama da Inteligência Artificial Aplicada a Jogos

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  

Page 61: Panorama da Inteligência Artificial Aplicada a Jogos

LBI - Microsoft

www.indt.org.br

THANK  YOU  

Page 62: Panorama da Inteligência Artificial Aplicada a Jogos

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