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

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

Framework motivacional aplicado a NPCs Autor: Marcos Vinicius Policarpo Côrtes Orientador: Esteban Walter Gonzalez Clua Autor: Marcos Vinicius Policarpo.

Apresentações semelhantes


Apresentação em tema: "Framework motivacional aplicado a NPCs Autor: Marcos Vinicius Policarpo Côrtes Orientador: Esteban Walter Gonzalez Clua Autor: Marcos Vinicius Policarpo."— Transcrição da apresentação:

1 Framework motivacional aplicado a NPCs Autor: Marcos Vinicius Policarpo Côrtes Orientador: Esteban Walter Gonzalez Clua Autor: Marcos Vinicius Policarpo Côrtes Orientador: Esteban Walter Gonzalez Clua Niterói, 1 de julho de 2009 Sonhos não são projetos. Desintrospecte-os...

2 Introdução • Áreas de pesquisa: – Vida Artificial • Agentes com emoções, Atores sintéticos – IA • Representação simbólica de conhecimento – Interface Homem-Máquina • Interação com o usuário/jogador – Engenharia de Software • Arquitetura e análise – Games • Arquitetura de Game Engines 2 • Objetivo: Simular “comportamento verossímil” em NPCs Framework motivacional Game Engine

3 Introdução • Contribuições – Análise dos modelos de agentes emocionais de base fisiológica – Aplicação de framework motivacional para controle de NPCs – Arquitetura de GameEngine por GameObjects componentizados (construção) – Arquitetura de agentes por componentes 3

4 Introdução • O que é “comportamento verossímil”? • Porque “comportamento verossímil”? • Como fazer “comportamento verossímil”? • Como avaliar “comportamento verossímil”? 4

5 • Agentes com emoção Agentes com emoção • Modelo proposto Modelo proposto • Domínio e aplicação Domínio e aplicação • Framework motivacional Framework motivacional • Jogo exemplo Jogo exemplo 5

6 Agentes com emoção • Conceito subjetivo, não há consenso • Ciência cognitiva busca relacionar os eventos emocionais com outras estruturas cognitivas, como memória, comportamento e tomada de decisão 6

7 Agentes com emoção • Classificação: – Modelos ([RODRIGUES 07], [SEP 07] e [MORGADO 05] ) • Emoções puras (Ex. Elkman) • Avaliação (Ex. OCC) • Neuro-fisiológicos (Ex. Damásio) – Agentes ([MORGADO 05] ) • Fisiológica (nossa abordagem) • Cognitiva • Arquitetural 7

8 Agentes com emoção • Modelos de base fisiológica – Utilizam uma dinâmica fisiológica para representar a motivação do sistema e simular as emoções • Exemplos: – Abbott [CAÑAMERO 97] – Cathexis [VELASQUEZ 96] – Kismet [BREAZEAL 00] 8

9 Modelo proposto • Modelo fisiológico baseado nos modelos de [VELASQUEZ 96] e [BREAZEAL 00] – Objetivo: Simplificar e minimizar os modelos anteriores – Possui histórico em utilização em jogos [POZZER 06] – Orientado a controle de ações, e não somente a seleção de expressão facial 9

10 Modelo proposto • Ontologia Compor- tamentos Drives Processo Consuma> Sensor Permite > É um > Facilita Influi Emoção 10 Compor- tamentos Drives Sensor Emoção

11 Modelo proposto • Processo – Unidade fundamental que generaliza as outras. Possui um valor associado e limites inferiores e superiores (thresholds) – Possui duas regras de operação: a)Manter o seu valor entre os limites (bem-estar, homeostase, wellbeing). Caso extrapole um limiar, se torna ativo b)Quando ativo, influenciar (excitar ou inibir) outros processos 11

12 Modelo proposto • Processo 12

13 Modelo proposto • Drive – Pulsão: desejos e vontades inconscientes ou fisiológicas – Incrementa com o tempo – Comportamentos podem consumá-lo (diminuir o seu valor) 13

14 Modelo proposto • Emoção – Estado excepcional, que demonstra uma configuração interna do agente através de uma expressão comunicativa – Emoções puras de Elkman – Decrementa com o tempo – Somente valores positivos 14

15 Modelo proposto • Comportamento – Ações ou planos que o sistema pode tomar para alterar um estado do mundo – Somente valores positivos – Decrementa exponencialmente 15

16 Modelo proposto • Sensor – Influência do mundo externo (percepções) dentro do sistema motivacional – O sensor e outros processos avaliam as percepções (marcador somático de Damásio) (a) – Pode ser simplificado ao número de percepções de um sensor (b) a) b) 16

17 Modelo proposto • Discretização 17 Compor- tamentos Drives Sensor Emoção ? ?

18 Modelo proposto • Discretização Discretização Loop formal Erro conceitualPerformanceSolução Diretanão Ignora fator temporal (ingênuo) Eficiente Direta (usa-se valores dos processos) Temporal Simples sim Aproximação temporal Eficiente Semi-direta( usa-se valores anteriores dos processos Contínuasim Exato ou aproximação formal Não eficiente ???? (algum solucionador de equações não lineares) 18

19 Domínio e aplicação • Games – RPG – Action RPG – Propõe ao jogador ultrapassar desafios para observar a história. A vitória não é um fator tão importante. Narrativa, dos personagens e dos efeitos gráficos são mais importantes 19

20 Domínio e aplicação • Engine – Sistema de apoio ao desenvolvimento de um determinado estilo de jogo: Engine = Motor + Editor + banco de dados de recursos • Motor = Desenvolvimento próprio, vários frameworks • Editor = Tiled + XML • Recursos: RPG Maker Internet – Requisitos • 2D • Jogabilidade de um Action RPG (Ex. Zelda) • Possuir recursos de percepção e atuação de agentes (para suporte do framework motivacional) 20

21 Domínio e aplicação • Arquitetura GameObject - Component – Em vez de herdar uma classe base (GameObject) para criar nossas novas entidades, usamos uma GameObject simples e adicionamos a ela os componentes que precisamos [PASSOS 08, BILLAS 03] 21

22 Domínio e aplicação • Arquitetura GameObject - Component – Problema: Manutenção das referências entre componentes gera código fora da lógica do domínio e exige manutenção complexa. – Solução: Usar Dependency Injection [PASSOS 08] //IA referencia componentes tradicionalmente public class IA: SoftComponent { public Animacao mAnimacao; public Items mItems; public bool init(Scene scene) { //Resgata o componente SoftComponent sc = parent.getComponent(“Animacao”); //Verifica integridade if(sc==null)return false; if(!(sc is Animacao)) return false; //Atribui o valor mAnimacao = (Animacao)sc; } //IA referencia componentes por Dependency Injection public class IA: SoftComponent { [Injection(“Animacao”)] public Animacao mAnimacao; [Injection(“Items”)] public Items mItems; public bool init(Scene scene) { //não precisa fazer nada } 22

23 Framework motivacional • Arquitetura do agente (IMotAgent) – Visto como um componente a ser usado pela aplicação – Uma lista de atuadores que deve ser fornecida • A aplicação implementa os atuadores – Uma lista de sensores que são oferecidas • A aplicação solicita os sensores que devem ser preenchidos com percepções (tal como um buffer) 23

24 Framework motivacional • Fluxo principal do agente (EditableMotAgent) 24

25 • Método run do Processor 25

26 Jogo exemplo • Jogo: O jogador controla um detetive e deve eliminar os assassinos em uma cidade povoada por civis 26

27 Jogo exemplo • Rede de processos SensorsDrivesEmotionsBehaviors AlvejadoCansaçoFelicidadeAndar Ouvir tiroPassearMedoConversar Ouvir paradeiroInteraçãoTristezaFugir ConversadoSegurançaContar paradeiro Receber prendaDescansar IntimidadoAtirar Intimidar 27

28 Jogo exemplo • Exemplo 1: Influência de “Conversar” em “Felicidade” 28

29 Jogo exemplo • Exemplo 2: Influência de “Ouvir Tiro” em “Segurança”, “Fugir” e “Medo” 29

30 Considerações finais • Simplificação feita em relação aos modelos de [BREAZEAL 98] e [VELASQUEZ 96] para ser usado eficientemente em simuladores e games • Análise da discretização • Arquitetura de Engine Game-Component para RPG 2D • Ganchos estabelecidos (marcador somático, seleção de comportamentos) para trabalhos futuros • Trabalho Realizado/Trabalho Esperado = 70% • Resultado Obtido/Resultado Esperado = 40%~60% 30 (trabalhos feitos)

31 Considerações finais • Tal como cita [MORGADO 05], método apresenta limitações quando a escalabilidade. Sendo necessário aumentar esta escalabilidade sem perder a performance – Adicionar algoritmos simbólicos (tornar sistema híbrido) – Alterar equação do processo para que ele possua um raio de valores fixo e o sistema gere menos oscilações bruscas • Melhorar sistema de seleção/coordenação de comportamentos – Usar políticas mais ricas e/ou ontologias de domínio – Usar algoritmos de aprendizagem – Simplificar as ações e usar planejamento • Investigar marcador somático de Damásio e aplicá-lo – Ganho: Sistema passará a selecionar alvo de atuação (um agente selecionará um outro específico para interagir, e não um qualquer ou o mais próximo) 31 (trabalhos futuros)

32 Obrigado! Dúvidas? 32 “Shinji: Então, onde começa meu sonho? Rei: Ele é a continuação da realidade. Shinji: Onde começa... minha realidade? Rei: Onde termina teu sonho...”


Carregar ppt "Framework motivacional aplicado a NPCs Autor: Marcos Vinicius Policarpo Côrtes Orientador: Esteban Walter Gonzalez Clua Autor: Marcos Vinicius Policarpo."

Apresentações semelhantes


Anúncios Google