Você está na página 1de 19

Aula 7

TECNOLOGIA EM JOGOS DIGITAIS


INTELIGÊNCIA ARTIFICIAL PARA JOGOS

Marcelo Henrique dos Santos


Marcelo Henrique dos Santos
Doutorado em Educação (em andamento)
Mestre em Educação
MBA em Negócios em Mídias Digitais
MBA em Marketing e Vendas
Especialista em games : Produção e Programação
Bacharel em Sistema de Informação
TECNOLOGIA EM JOGOS DIGITAIS
INTELIGÊNCIA ARTIFICIAL PARA JOGOS

Marcelo Henrique dos Santos


www.marcelohsantos.com.br
Game IA (parte II)

Prof. Marcelo Henrique dos Santos


Trapaça, a técnica mais comum

• compensa o desequilíbrio contra a inteligência


humana e deixa o jogador desafiado

• razões para trapacear:

– fingir que é “pior”: mira nos shooters (o objetivo nem


sempre é acertar)

– fingir que é “melhor”: inimigos mais rápidos, violação


nas regras, etc. (vale tudo)
Ainda sobre trapaças...

• não exagerar: o jogador não pode perceber


• trapacear demais pode deixar a dificuldade do jogo
desbalanceada
• exemplo de trapaça: em jogos de estratégia, o
computador sabe absolutamente todas as
informações sobre os oponentes humanos
(localização das bases, armamentos, etc.);
pode usar tudo isso no seu planejamento
Histórico (1)
• Não comercial - Jogo da Vida (John Horton Conway – 1970)
• Comercial - GameAI nasceu com os single-players; exs:
– “Space Invaders” (1978): padrões de movimentação e dificuldade
progressiva
– “Pac-Man” (1980): movimentação dos fantasmas
• Sistemas Especialistas - jogos de esporte (“Madden Football”1984)
• Anos 90: difusão das técnicas com o crescimento do gênero
Real Time Strategy (pathfind, planejamento, etc.)
Histórico (2)

• 1996: “Battlecruiser 3000AD”: primeiro jogo a usar Redes


Neurais
• 1996: uso de Algoritmos Genéticos na série “Creatures”
• 1997: Deep Blue derrotou o campeão Kasparov (não
exatamente um exemplo de entretenimento)
• 2001: reconhecimento de padrões em “Black & White”
Onipresença da AI (gêneros...)

• estratégia (tática dos inimigos)


• luta (padrões de ataque e defesa)
• first-person shooters (movimentação e ataque de oponentes
e aliados)
• tabuleiro (tomada de decisão de oponentes)
• RPG (monstros, NPCs)
• esportes ( ação tática de outros times/atletas, comentaristas)
• corrida (controle dos outros carros)
• outros
Onipresença da AI (... e no tempo)

De...
– controle dos fantasmas em “Pac Man”
– movimentação das naves em “Defender”
... até
– modelagem de emoções em “The Sims”
– comportamento dos jogadores em “FIFA 2012”
AI – A Fronteira Final
Impacto na capacidade de imersão:
• Computação gráfica: fotorrealismo cada vez mais próximo
(velocidade das GPUs), em alta resolução e a elevado
frame-rate
• Simulação Física: campo em forte expansão. O realismo não
é necessário (ou mesmo desejável) em todos os gêneros.
→ Quanto maior a qualidade visual e física da simulação,
maior é a expectativa do jogador quanto ao comportamento
de personagens (NPCs) e do ambiente.
Classificação (1)
Determinismo em GameAI
AI Determinística AI Não-determinística
Comportamento previsível imprevisível
Implementação mais fácil mais difícil
Teste/debug fácil, mas trabalhoso difícil
Aprendizado difícil fácil

adaptação via
algoritmos de perseguição Redes Neurais,
Exemplos e fuga, Algoritmos
máquinas de estados Genéticos
Classificação (2)
AI Reflexiva vs. AI Reativa
AI Reflexiva AI Reativa
(pré-análise) (decisão instantânea)
algoritmo exaustivo, força bruta heurístico

modelagem fenômeno “caixa preta”

resposta lenta rápida

solução ótima satisfatória


Arquitetura (1)
AI no game loop
• atualizada como parte do game loop, após a entrada
de dados e antes da renderização
• precisa ser atualizada em todos os frames ?
– as entradas da AI talvez não variem tão rápido
– AI pode ser disparada somente por eventos
• não precisa ser síncrona (atualizada
simultaneamente para todos os agentes)
Arquitetura (2)
Polling vs. Event Driven
• Polling
―AI é executada a uma taxa fixa de atualização
―sensoreamento: o que mudou no ambiente ?
―reage a partir de mudanças detectadas
―geralmente ineficiente
―bom se apenas estado atual interessa
• Event Driven
―só reage a eventos
―mensagens (chegada de inimigos, timeout, etc.)
―exige arquitetura de mensagens substituindo o sensoreamento
―imprescindível quando transições são importantes
Arquitetura (3)
Complexidade de Execução

• qual o impacto na velocidade com a adição de


conhecimento ?
• qual o impacto na memória com a adição de
conhecimento ?
• determina o custo da técnica em termos de tempo
de execução
Desafios da GameAI

• resultados menos frustrantes para os jogadores


(GameAI tende a ser lembrada mais quando falha
do que quando acerta...)
• evoluir (ou pelo menos manter) o comportamento
inteligente à medida que o realismo gráfico e físico
aumenta (pathfinding numa grade 2D com muros
retos é fácil...)
Mais desafios...

• explosão de conteúdo, mundos mais densos e mais


reativos
• nem sempre o que o mercado quer é o estado-da-
arte da tecnologia em AI
• pressão por maior uso de técnicas não-
determinísticas, mas aí estão os maiores riscos,
(ciclo de desenvolvimento mais longo, mais caro,
etc.)
Considerações

• NPCs inteligentes podem agir de forma autônoma,


mas os game designers precisam controlá-los para
manter o jogo conforme o projetado
• decisões inteligentes (mas completamente
imprevisíveis) podem arruinar um roteiro pré-
definido – para o bem ou para o mal
Bibliografia Recomendada
•BOURG, David M.; SEEMANN, Glenn. AI for Game Developers.
O’Reilly, 2004.

•FUNGE, J. Artificial Intelligence for Computer Games: An


Introduction. A K Peters, 2004.

•RABIN, Steve. AI Game Programming Wisdom. Charles Rivergg


Media, 2002

•www.gamasutra.com

•www.gamedev.net

•aigamedev.com

Você também pode gostar