Inteligência
Inteligência Artificial
Artificial em
em Jogos
Jogos Eletrônicos
Eletrônicos
Dsc. Alex F. V. Machado
[email protected]
Game AI?
“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.”
A Indústria dos Games
• O setor de jogos é uma área em crescente ascensão que
fatura bilhões de dólares.
• É hoje um dos setores mais rentáveis do entretenimento.
Seqüência de criação de um jogo
•
•
•
•
•
•
•
•
•
Definição da idéia
Criação de um game design (planejamento do jogo)
Criação do roteiro
Esboçando concept-arts (artistas 2D e 3D)
Programação
Modelagem
Criação de efeitos sonoros e trilha sonora.
Testes
Divulgação (marketing)
Papéis da IA em Jogos
Adversários
Aliados
Personagens de apoio
Comentaristas
Controle de câmera
Geração de fases
Geração de trilhas sonoras
Nivelamento da dificuldade
Resolução automática de problemas
Histórico
• 1770: “O turco”, criado por Wolfgang von
Kempelen, que supostamente jogava xadrez
com perfeição.
Histórico
• Até a década de 1970, os jogos possuíam
apenas Versus Mode
• A indústria percebeu que a inclusão de um
modo para um jogador poderia atrair um
público maior, desta forma, aumentando os
lucros
• Técnicas já conhecidas no meio acadêmico
passaram a ser utilizadas para simular o
comportamento humano
Histórico
• 1978: ??? implantou as primeiras entidades
inteligentes em jogos
Histórico
• 1978: Space Invaders implantou as primeiras
entidades inteligentes em jogos
Histórico
• 1980:
???
conta
com
movimentos
padronizados dos inimigos, porém cada
fantasma tem um modo diferente de caçar o
jogador.
Histórico
• 1980: Pac-man conta com movimentos
padronizados dos inimigos, porém cada
fantasma tem um modo diferente de caçar o
jogador.
Histórico
1990: O primeiro jogo de estratégia em tempo
real, ???, é lançado. A busca de caminho
apresentada nesse jogo era de baixa qualidade.
Histórico
1990: O primeiro jogo de estratégia em tempo
real, Herzog ZWei, é lançado. A busca de
caminho apresentada nesse jogo era de baixa
qualidade.
Histórico
1996: ??? é publicado como o primeiro jogo a
utilizar redes neurais comercialmente
Histórico
• 1996: BattleCruiser: 3000AD é publicado como
o primeiro jogo a utilizar redes neurais
comercialmente
Histórico
•
1998: ???? é lançado como
a melhor Game IA até então.
Histórico
• 1998:
Half-Life
é
lançado
a melhor Game IA até então.
como
Histórico
• 2001: ???? é alvo da mídia a respeito de
como as criaturas aprendem com as decisões
do jogador.
Histórico
• 2001: Black & White é alvo da mídia a respeito
de como as criaturas aprendem com as
decisões do jogador.
Técnicas de Game IA
• Determinística
“Deterministic behavior or performance is specified
and predictable. There's no uncertainty.”
• Não-Determinística
“Behavior has a degree of uncertainty and is
somewhat unpredictable (the degree of
uncertainty depends on the AI method employed
and how well that method is understood).”
Algoritmo A-Star
(Pathfinding)
Algoritmo A-Star
(Pathfinding)
Algoritmo A-Star
(Pathfinding)
É um algoritmo que busca o caminho em um
grafo de um vértice inicial até um vértice final.
Ele é a combinação de aproximações heurísticas
como do algoritmo Best-first Search e da
formalidade do Algoritmo de Dijkstra.
Algoritmo A-Star
(Pathfinding)
Máquina de Estados
Máquina de Estados
Máquina de Estados
Máquina de Estados
Uma máquina de estados finitos ou autômato
finito é um modelo matemático usado para
representar programas de computadores.
É composta por um conjunto de estados e regras
de transição entre estes estados.
Máquina de Estados
Redes Bayesianas
Redes Bayesianas
Redes Bayesianas
São modelos que permitem representar de
forma sintética variáveis com probabilidade e
as formas de como elas se relacionam.
Redes Bayesianas
Redes Neurais
Redes Neurais
Redes Neurais
São sistemas computacionais inspirados nos
neurônios biológicos, com capacidade de
adquirir, armazenar e utilizar conhecimento
experimental.
Redes Neurais
Aprendizagem de Máquina
Aprendizagem de Máquina
(Algoritmo C4.5 – Geração de Árvores de Decisão)
Aprendizagem de Máquina
É um sub-campo da IA dedicado ao
desenvolvimento de algoritmos e técnicas que
permitam ao computador aprender.
Utiliza técnicas de raciocínio indutivo para
extrair regras e padrões de grandes conjuntos de
dados.
Outras Técnicas para
Programar IA em Jogos
•
•
•
•
•
•
•
Agentes Inteligentes
Min-max
Processamento de linguagem natural
Séries temporais
Agentes inteligentes
Lógica Fuzzy
Algoritmos Genéticos
Conferências relacionadas a IA pra Jogos
Nacionais:
- SBGames
- ENIA
- SBIA
Internacionais:
- IEEE CIG
- Game-On
- Cgames
- CGAT
Journals:
- Transactions on Computational Intelligence and AI in Games (IEEE)
- Entertainment Computing (Springer)
Inteligência
Inteligência Artificial
Artificial em
em Jogos
Jogos Eletrônicos
Eletrônicos
Dsc. Alex F. V. Machado
[email protected]
Download

slide 1 - apresentacao