A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

IA em jogos modelagem de comportamento de personagens

Apresentações semelhantes


Apresentação em tema: "IA em jogos modelagem de comportamento de personagens"— Transcrição da apresentação:

1 IA em jogos modelagem de comportamento de personagens
Prof. André Campos 14/05/2004

2 Personagens artificiais
Objetivo da I.A. Reproduzir artificialmente comportamentos que *julgamos* inteligentes “A inteligência está no olho do observador” R. Brooks. Abordagens da IA Clássica (lógica, algoritmos de procura, etc). Abordagens inspiradas da biologia Agente inteligente (conceito de entidade autônoma) Agentes Melhor adaptada a jogos com personagens artificiais “Encapsula” técnicas das outras abordagens

3 Agentes inteligentes Conceito de entidade artificial capaz de reproduzir padrões de: Autonomia, Reatividade, Sociabilidade, etc. Tipos de agentes (tomada de decisão) Reativos f(estímulo)  resposta Cognitivos planejamento, memória Híbridos combinação das abordagens anteriores

4 Estrutura de um agente De um modo geral, conceitualmente, os agentes possuem módulos de: Percepção, Memória, Tomada de decisão, Ação Agente Ambiente Percepção Tomada de Decisão Ação Memória

5 Definição da arquitetura
Cognitivos / deliberativos Exemplo: BDI (Belief, Desire, Intentions) Reativos Exemplo: Subsumption Híbridos Exemplo: Em camadas Ação Camada 1 Camada n Percepção Camadas de comportamento

6 Modelagem do comportamento
Técnicas de modelagem Autômatos finitos Diagramas de máquina de estados Diagramas de Rede de Petri Controle baseado em regras Técnicas baseadas na biologia Algoritmos genéticos Redes neurais ...

7 Máquina de estado finito
Definida por Um conjunto de estados do personagem Um conjunto de transições que conectam de forma direcional dois estados Vê jogador Distância < 2m Procura jogador Persegue jogador Atira no jogador Jogador morto ou perdeu o sinal Distância > 2m Jogador morto ou perdeu o sinal

8 Implementando uma M.E.F. switch-case Padrão “Strategy” Agent Behavior
Switch(state) { case LOOKING_FOR_PLAYER: ... // comportamento X case CHASE_PLAYER: ... // comportamento Y case FIGHT_PLAYER: ... // comportamento Z } Padrão “Strategy” 1 Agent Behavior X Y Z

9 Autômatos paralelos Útil quando os personagens podem realizar mais de uma ação simultânea Exemplo: locomover e atirar O número de estados para definir ações em paralelo cresce exponencialmente Solução: Dividir o personagem em sub-sistemas concorrentes Possuir uma máquina de estado para cada um de seus sub-sistemas

10 M.E.F. sincronizadas Muitas vezes, autômatos paralelos precisam sincronizar suas ações Uso de “blackboard” Área de memória compartilhada Informações necessárias à sincronização dos estados de cada autômato Tomada de decisão de cada autômato

11 M.E.F. não determinísticos
M.E.F não representam a “realidade” de um personagem, uma vez que ninguém é máquina (matematicamente determinística) Transições podem estar associados a processos aleatórios Vê jogador – 70% Dist. < 4m – 50% Procura jogador Persegue jogador Atira no jogador Jogador morto ou perdeu o sinal Distância > 3m

12 Personalidade do personagem
Transições de estados representando ações do agente Personalidade modelada a partir do conjunto de probabilidades de transições Agressivo Maior probabilidade na transição p/ o estado de ataque Apático... Fujão... Uso de modelos psicológicos (Ex. Big Five)

13 Tomada de decisão Presente em algumas mudanças de estado
Planejamento e resolução de problemas Procura em um *espaço de estados*, onde o personagem deseja seguir até alcançar seus objetivos Busca cega Busca em profundidade, largura, não determinística, exaustiva Busca heurística Hill Climbing Search, Beam Search, Guloso, ... Busca condicionada

14 Busca condicionada Jogos de estratégia Algoritmos mais utilizados
Caminhos possíveis dependem das “reações” dos jogadores Exemplos clássicos Xadrez, Go, Dama, Gamão, etc Algoritmos mais utilizados MiniMax MiniMax + Alpha-Beta

15 Algoritmo MinMax Exemplo: Jogo dos 5 palitos
Com a situação inicial de 5 palitos, cada jogar deve retirar 1 ou 2 palitos. Perde quem retirar o último palito 5 Jogador 1 3 4 Jogador 2 1 2 2 3 Jogador 1 1 1 1 2 Jogador 2 1 Jogador 1

16 Procedimento do MinMax
Pontuação dos nós-folhas (em geral: –1, 0, 1) 5 3 4 1 2 2 3 -1 1 1 1 2 -1 1 -1 1 1 1 -1 1

17 Procedimento do MinMax
Pontuação dos nós-folhas (em geral: –1, 0, 1) Classificar níveis “Max” e “Min” 5 Max 3 4 Min 1 2 2 3 Min -1 1 1 1 2 Max -1 1 -1 1 1 Min 1 -1 1

18 Procedimento do MinMax
Pontuação dos nós-folhas (em geral: –1, 0, 1) Classificar níveis “Max” e “Min” Propagar pontuação a partir dos folhas 5 Max 1 3 4 -1 1 Min 1 2 2 3 1 1 1 Min -1 1 1 1 2 Max 1 -1 -1 1 -1 1 Min 1 -1 1

19 Corte Alpha-Beta Otimizar o MinMax tirando proveito das relações entre as sub-árvores Corte Alpha Corte Beta A  10 A  10 B C B C 10  5 10  20 D E F G D E F G 20 10 5 ??? 5 10 20 ???

20 Exercício Modelar o jogo da velha através de uma busca condicionada MinMax com cortes Alpha-Beta.


Carregar ppt "IA em jogos modelagem de comportamento de personagens"

Apresentações semelhantes


Anúncios Google