Buscar

IA e Jogos - Modelos de Game AI

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

IA e Jogos - Jamisson Freitas
IA e Jogos
Jamisson Freitas (James)
profjamissonfreitas@gmail.com
1
mailto:profjamissonfreitas@gmail.com
IA e Jogos - Jamisson Freitas
Apresentação
● Jamisson Freitas (James)
● Doutorando em Ciência da Computação 
(Cin-UFPE)
● Data Science Manager na Passei Direto
● Co-fundador da WeUp.ai
● Professor e Tutor em cursos de Graduação 
e Pós-Graduação
2
IA e Jogos - Jamisson Freitas
Conteúdo
● Game AI
● Inteligência artificial e Jogos Digitais
● Agentes Inteligentes
● Aplicações
● Técnicas
● Motores de Jogos
● Projeto
3
IA e Jogos - Jamisson Freitas
Referências
4
IA e Jogos - Jamisson Freitas
Model of Game AI
5
IA e Jogos - Jamisson Freitas
Modelo
● Movimento
● Tomada de decisão
● Estratégia
● Infraestrutura
● IA baseada em agentes
6
IA e Jogos - Jamisson Freitas
IA Model
7
IA e Jogos - Jamisson Freitas
Movimento
8
IA e Jogos - Jamisson Freitas
Movimento
● Algoritmos transformam decisão em movimento;
Atacar envolve um 
conjunto de movimentos:
● Evitar obstáculos;
● Entrar e sair de 
salas/ ambientes/ 
corredores;
9
IA e Jogos - Jamisson Freitas
Movimento
BOTs se 
movendo
10
http://www.youtube.com/watch?v=676BWeinoGM
IA e Jogos - Jamisson Freitas
Movimento
BOTs copiando 
o movimento do 
jogador
11
http://www.youtube.com/watch?v=vUUUUgSO_8Q
IA e Jogos - Jamisson Freitas
Movimento
● No The Sims, se o 
personagem está sentado ao 
lado mesa com comida na 
frente dele e quer disparar a 
ação de comer, então a 
animação comendo é 
simplesmente “disparada”. 
12
IA e Jogos - Jamisson Freitas
Movimento
● Se o mesmo personagem 
estiver na porta dos fundos 
quando ele quiser comer, no 
entanto, o movimento AI 
precisa guiá-lo até a cadeira 
(ou a alguma outra fonte 
próxima de comida).
13
IA e Jogos - Jamisson Freitas
Tomada de Decisão
14
IA e Jogos - Jamisson Freitas
Tomada de decisão
● Envolve no personagem ou elemento do jogo processar o que 
fazer em seguida. Normalmente, cada personagem tem uma 
gama de comportamentos diferentes:
○ atacar, 
○ ficar parado, 
○ se esconder, 
○ explorar (...)
15
IA e Jogos - Jamisson Freitas
Tomada de decisão
● O sistema de tomada de decisão precisa descobrir qual 
desses comportamentos é o mais apropriado em cada 
momento do jogo.
16
IA e Jogos - Jamisson Freitas
Tomada de decisão
● Zelda, regras simples:
● Animais da fazenda 
ficam paradas a menos 
que o jogador se 
aproxime demais, então 
eles se afastam um 
pouco.
17
IA e Jogos - Jamisson Freitas
Tomada de decisão
● No Half-life, os inimigos 
demonstram tomada de 
decisão complexa.
● Tentam diversas estratégias 
diferentes para alcançar o 
jogador: encadear ações 
intermediárias como lançar 
granadas e colocar fogo de 
supressão em ordem para 
alcançar seus objetivos.
●
●
● Inimigos e danos: 
https://www.youtube.co
m/watch?v=Teux8wQI6
NQ
●
18
https://www.youtube.com/watch?v=Teux8wQI6NQ
https://www.youtube.com/watch?v=Teux8wQI6NQ
https://www.youtube.com/watch?v=Teux8wQI6NQ
IA e Jogos - Jamisson Freitas
Tomada de decisão
● Inimigos e danos: 
https://www.youtube.com/w
atch?v=Teux8wQI6NQ
● Algumas decisões podem requerer AI 
de movimento para realizá-las. Uma 
ação de ataque corpo a corpo (mão a 
mão) exigirá que o personagem se 
aproxime de sua vítima.
19
https://www.youtube.com/watch?v=Teux8wQI6NQ
https://www.youtube.com/watch?v=Teux8wQI6NQ
IA e Jogos - Jamisson Freitas
Estratégia
20
IA e Jogos - Jamisson Freitas
Estratégia
● É possível percorrer um longo caminho com o movimento 
AI e a tomada de decisão AI. 
● A maioria dos jogos 3D baseados em ação usa apenas esses 
dois elementos. 
● Todavia, para coordenar uma equipe inteira, é necessária 
alguma IA de estratégia.
21
IA e Jogos - Jamisson Freitas
Estratégia
22
IA e Jogos - Jamisson Freitas
Estratégia
● No nosso contexto, estratégia refere-se a uma abordagem 
geral usada por um grupo de personagens.
● Há algoritmos de IA que não controlam apenas um 
personagem, mas influenciam o comportamento de um 
conjunto inteiro de caracteres. 
23
IA e Jogos - Jamisson Freitas
Estratégia
● Cada personagem do grupo pode (e normalmente irá) ter 
seus próprios algoritmos de tomada de decisão e 
movimento, mas no geral, sua tomada de decisão será 
influenciada por uma estratégia de grupo.
24
IA e Jogos - Jamisson Freitas
Estratégia
● O original Half-Life [Valve, 
1998], os inimigos 
trabalhavam em equipe para 
cercar e eliminar jogador. 
25
IA e Jogos - Jamisson Freitas
Estratégia
● Jogos como o Ghost Recon de 
Tom Clancy [Red Storm 
Entertainment, Inc., 2001] 
utilizam a mesma ideia e 
estão em crescente 
sofisticação nos tipos de ações 
estratégicas que uma equipe 
de inimigos pode realizar
26
IA e Jogos - Jamisson Freitas
Infraestrutura
27
IA e Jogos - Jamisson Freitas
Infraestrutura
● Os algoritmos de IA por si só são apenas parte do 
trabalho. 
● Para realmente criar IA para um jogo, precisamos de todo 
um conjunto de infraestrutura adicional. 
● As requisições de movimento precisam se transformar em 
ação no jogo usando animação ou, cada vez mais, 
simulação física.
28
IA e Jogos - Jamisson Freitas
Infraestrutura
● A IA precisa de informações do jogo para tomar decisões 
sensatas. 
● Na IA acadêmica é conhecido como “percepção”: 
descobrir quais informações o personagem conhece. 
● Na prática, é muito mais que apenas simular o que cada 
personagem pode ver ou ouvir, mas inclui todas as 
interfaces entre o mundo do jogo e a AI.
29
IA e Jogos - Jamisson Freitas
IA baseada em Agentes
30
IA e Jogos - Jamisson Freitas
IA baseada em agentes
● Consiste na produção de elementos autônomos que 
coletam informações dos dados do jogo, determinam 
quais ações executar com base nas informações e 
executam essas ações.
31
IA e Jogos - Jamisson Freitas
IA baseada em agentes
● Projeto Button-Up:
● Se inicia trabalhando como cada personagem se 
comporta e implementando a IA necessária para 
suportar isso. 
32
IA e Jogos - Jamisson Freitas
IA baseada em agentes
● Projeto Button-Up:
● O comportamento geral de todo o jogo é 
simplesmente uma função de como os 
comportamentos dos personagens individuais 
funcionam juntos.
33
IA e Jogos - Jamisson Freitas
IA baseada em agentes
● Projeto Button-Up:
● Os dois primeiros elementos do modelo de IA que 
usamos, movimento e tomada de decisão, compõem o 
AI para um agente no jogo.
34
IA e Jogos - Jamisson Freitas
IA não baseada em agentes
● Busca descobrir como tudo deve agir a partir de uma 
análise Top-down e constrói um sistema único para 
simular tudo.
35
IA e Jogos - Jamisson Freitas
IA não baseada em agentes
● No GTA 3, o tráfego geral e os fluxos de pedestres são 
calculados com base na hora do dia e na região da cidade 
e só são transformados em carros e pessoas 
individualmente quando o jogador pode vê-los. 
● A distinção é nebulosa, no entanto.
36
IA e Jogos - Jamisson Freitas
IA não baseada em agentes
https://www.youtube.com/watch?v=-GHFk0OGMq4
37
https://www.youtube.com/watch?v=-GHFk0OGMq4
http://www.youtube.com/watch?v=-GHFk0OGMq4
IA e Jogos - Jamisson Freitas
IA não baseada em agentes
● Analisaremos as técnicas de nível de detalhe que estão 
muito top-down, enquanto a maior parte da IA do 
personagem é baseado em button-up. 
● Um bom desenvolvedor de IA irá misturar e combinar 
quaisquer técnicas confiáveis que façam o trabalho, 
independentemente da abordagem. 
38
IA e Jogos - Jamisson Freitas
Reflexões
39
IA e Jogos - Jamisson Freitas
Sobre a complexidade
● Quanto mais complexa for a IA num jogo, melhor será a 
aparência dos personagens para o jogador?
40
IA e Jogos - Jamisson Freitas
A falácia da complexidade
● Uma boa AI consiste em combinar os comportamentos 
certos com os algoritmos certos.
● Existem inúmeras técnicas, e o correto nem sempre é a 
escolha mais óbvia.
● Técnicas muito simples usada da maneiracorreta podem 
ser perfeitas.
41
IA e Jogos - Jamisson Freitas
A falácia da complexidade
Tutorial: https://www.youtube.com/watch?v=Ps-s2GIcBc0
● Black & White
● Combina elementos de vida 
artificial e estratégia;
● O jogo envolve ensinar a um 
personagem o que fazer por uma 
combinação de exemplo e 
feedback;
42
https://www.youtube.com/watch?v=Ps-s2GIcBc0
http://www.youtube.com/watch?v=Ps-s2GIcBc0
IA e Jogos - Jamisson Freitas
A falácia da complexidade
Tutorial: https://www.youtube.com/watch?v=Ps-s2GIcBc0
● Quando as pessoas jogam o jogo 
pela primeira vez, muitas vezes 
acabam inadvertidamente 
ensinando os maus hábitos às 
criaturas e acabam sendo 
incapazes de realizar até mesmo 
as ações mais básicas.
43
https://www.youtube.com/watch?v=Ps-s2GIcBc0
http://www.youtube.com/watch?v=Ps-s2GIcBc0
IA e Jogos - Jamisson Freitas
Game Black & White
● Ao prestar mais atenção em como a criatura funciona, os 
jogadores são capazes de manipulá-la melhor, mas a ilusão 
de ensinar uma criatura real pode desaparecer.
● A versão de IA complexa nunca chegou ao jogo final;
● É uma tentação perene para os desenvolvedores usarem as 
técnicas mais recentes e os algoritmos mais badalados 
para implementar sua IA.
44
IA e Jogos - Jamisson Freitas
Falácia da complexidade
● No final do desenvolvimento, quando uma IA de 
aprendizagem ainda não consegue aprender como dirigir 
um carro em uma pista sem sair de carro a cada curva, os 
algoritmos mais simples invariavelmente vêm em socorro 
e fazem parte do lançamento do jogo.
45
IA e Jogos - Jamisson Freitas
Janela de percepção
● A menos que sua IA esteja controlando um parceiro 
sempre presente ou um inimigo um-a-um, é provável que 
seu jogador encontre um personagem por um curto 
período de tempo.
46
IA e Jogos - Jamisson Freitas
Janela de percepção
● Quando dimensionamos alguém na vida real, 
naturalmente nos colocamos no lugar deles.
○ Nós olhamos para o seu entorno, a informação que 
eles estão colhendo de seu ambiente, e as ações 
que estão realizando.
47
IA e Jogos - Jamisson Freitas
Janela de percepção
● Precisamos ter certeza de que a IA de um personagem 
corresponde à sua finalidade no jogo e à atenção que 
obterá do jogador.
48
IA e Jogos - Jamisson Freitas
Janela de percepção
● +AI a personagens secundários → pode torná-lo mais 
valioso para o jogador raro que joga cada nível por várias 
horas, verificação de comportamento curioso ou bugs, 
mas todos os outros (incluindo o editor e a imprensa) 
pode pensar que sua programação foi desleixada.
49
IA e Jogos - Jamisson Freitas
Mudanças de comportamento
● A janela da percepção não é apenas sobre o tempo.
● Vamos pensar nos fantasmas do Pac-Man novamente.
50
IA e Jogos - Jamisson Freitas
Mudanças de comportamento - Pac-Man
● Eles podem não dar a impressão de 
senciência, mas não fazem nada fora do 
lugar.
● Isso ocorre porque eles raramente 
mudam de comportamento (a única 
ocasião sendo sua transformação 
quando o jogador “absorve” um 
power-up).
Senciência é a capacidade dos seres de 
sentir sensações e sentimentos de forma 
consciente. 
51
IA e Jogos - Jamisson Freitas
Mudanças de comportamento 
● Mudanças → alertas! (mudanças são mais perceptíveis que 
o próprio comportamento;
○ Ex: Dois guardas conversando entre si e você atirar 
um para baixo, o outro guarda não deve continuar a 
conversa!
52
IA e Jogos - Jamisson Freitas
Mudanças de comportamento 
● Uma mudança de comportamento quase sempre ocorre quando 
o jogador está próximo ou foi visto.
● Isso é o mesmo em jogos de plataforma e na estratégia em tempo 
real. 
● Uma boa solução é manter apenas dois comportamentos para 
personagens secundários → uma ação normal e uma ação 
marcada pelo presença do jogador.
53
IA e Jogos - Jamisson Freitas
Referências
54
IA e Jogos - Jamisson Freitas
Referências
● Programming Game AI by Example. Mat Buckland. 
● Artificial Intelligence for Games. Ian Millington, John 
Funge.
55
IA e Jogos - Jamisson Freitas
Links
https://meiobit.com/310886/deepmind-google-inteligencia-artificial-jogos-atari/
https://www.maxwell.vrac.puc-rio.br/7861/7861_3.PDF
https://www.red3d.com/cwr/boids/
https://www.youtube.com/channel/UCC0RqWklkXJwAd_HIsxRZDg
https://github.com/idmillington/aicore
56
https://meiobit.com/310886/deepmind-google-inteligencia-artificial-jogos-atari/
https://www.maxwell.vrac.puc-rio.br/7861/7861_3.PDF
https://www.red3d.com/cwr/boids/
https://www.youtube.com/channel/UCC0RqWklkXJwAd_HIsxRZDg
https://github.com/idmillington/aicore

Outros materiais