Agentes Inteligentes e Sistemas Multi-agente Personagens Sintéticas 1 Tópicos Introdução Personagens Sintéticas em Mundos Virtuais Caso: C4 – Um Cérebro Virtual • Arquitectura Embodied Conversational Agents • Modelo FMTB • REA Referências A. Paiva Introdução O que são personagens sintéticas? • Personagens que parecem vivas. • Criaturas que parecem possuir personalidade. Inúmeras aplicações • Interfaces Homem-Máquina • Jogos de computador • Entretenimento A. Paiva Introdução Várias áreas de estudo: • Animação tradicional • Computação gráfica • Inteligência artificial • Psicologia • Interfaces multimodais A. Paiva Introdução Aparecimento das primeiras personagens sintéticas nos anos 20. “Disney animation makes audiences realy believe in … characters.” – illusion of life (Thomas 1981) “It is the change in shape that shows what the character is thinking. It is the thinking that gives the illusion of life.” – illusion of life (Thomas 1981) A. Paiva Introdução Projecto de OZ - 1992 • Personagens sintéticas em ambientes interactivos. • Inspirado no trabalho dos animadores da Disney. • Baseada em: - aspectos comportamentais. - Objectivos. - Emoções - Criaturas com reacções emocionais a eventos. • Introduz o conceito de credibilidade. A. Paiva Introdução Personagem credível – proporciona a ilusão de vida, permitindo a suspensão de descrença da audiência. Emoção fundamental para criar a ilusão de vida. Três pontos chave para a representação de emoções: • Estado emocional da personagem claramente definido. • Processo de pensamento revela o sentimento. • Acentuação das emoções. A. Paiva Introdução Personagens Sintéticas em Mundos Virtuais: os primeiros sistemas Caso: C4 – Um Cérebro Virtual • Arquitectura Embodied Conversational Agents • Modelo FMTB • REA Referências A. Paiva ALIVE •O projecto ALIVE mostrava várias personagens (a principal das quais é um cão) que interagiam com um utilizador humano em tempo real •O projecto utilizava captura de vídeo para fazer reconhecimento de gestos e para sobrepôr imagens virtuais num ambiente de realidade aumentada •O utilizador podia interagir com o mundo virtual controlando directamente um agente proxy que o representava nesse mundo. A. Paiva ALIVE A. Paiva ALIVE Behaviours Controllers Motor System Motor Skills Deg. Of Freedom Geometry A. Paiva SWAMPED! A. Paiva Introdução Personagens Sintéticas em Mundos Virtuais Caso: C4 – Um Cérebro Virtual • Arquitectura Embodied Conversational Agents • Modelo FMTB • REA Referências A. Paiva C4 – Um Cérebro Virtual Trabalho desenvolvido por Blumberg no grupo de personagens sintéticas. Influenciado pela teoria da atitude intencional. Se conhecermos as crenças e os desejos de uma criatura, podemos predizer as suas acções. Noção de “ilusão de vida”. Personagens com a capacidade de expressarem o seu estado mental: • Um observador pode inferir as suas crenças e desejos. A. Paiva C4 – Um Cérebro Virtual Exemplo: Sheep|dog Duncan Pastor Ovelhas Utilizador controla o pastor, dando comandos de voz ao duncan (sit,down,away). A. Paiva C4 - Arquitectura A. Paiva C4 - Arquitectura Sistema Sensorial • • • Único ponto de entrada de informação sensorial. Garante Honestidade sensorial. A criatura só vê o que está no seu campo de visão. Sistema Percepcional • • Atribui significado à informação sensorial recebida. Árvore de Percepções. A. Paiva C4 - Arquitectura São apenas feitas transversias parciais da árvore. Permite reduzir a dimensionalidade da informação sensorial recebida. Pode-se substituir os classificadores sem afectar o funcionamento do sistema. A. Paiva C4 - Arquitectura Sistema Proprioceptivo • • • • Animais usam sensores que detectam extensão dos músculos para determinar a posição dos seus orgãos. Criaturas têm consciência do seu estado interno. Mecanismo Blackboard. Criatura pode registar eventos só visíveis a si. A. Paiva C4 - Arquitectura Memória de Percepção • • • • Simula a memória de trabalho humana. Lista de objectos persistentes. - Percepções - Predições - Hipóteses Juntos formam a vista que a criatura tem do contexto. Todos os componentes da C4 podem alterar ou acrescentar este tipo de objectos. A. Paiva C4 - Arquitectura Eventos de diferentes modalidades podem ser combinados num único objecto. A confiança num determinado objecto vai decaindo ao longo do tempo. Estrutura permite-nos questionar a memória de maneiras muito úteis. “Há comida perto de mim?” Escolher alvos de acção. “Procura um objecto humanóide e vai até ele”. A. Paiva C4 - Arquitectura Predição • • Informação sensorial vinda de um objecto pode ser interrompida temporariamente. Quando o registo de uma percepção não é observado: - O seu valor é predito. - Torna-se visível ao sistema como se tivesse sido realmente observado. • Base para surpresa. - Um objecto que tenha fornecido um estimulo surpreendente é um excelente candidato para receber o foco de atenção da criatura. • • Predição contribui para o senso comum e a credibilidade de uma criatura. Implicam expectativas acerca do mundo. A. Paiva C4 - Arquitectura Video Sheep|Dog A. Paiva C4 - Arquitectura Selecção de Acções • Responder a 4 questões: • • Quando fazer? O que fazer e como fazer? A que o fazer? Durante quanto tempo? Acção modifica estado interno da criatura Guarda na memória o objecto actual de interesse A. Paiva C4 - Arquitectura Grupos de Acções • Acções avaliadas em função do contexto corrente e do seu valor intrínseco. • As acções na “Startle List” competem deterministicamente. • Se nenhuma for relevante, as acções na “Default list” competem probabilisticamente. A. Paiva C4 - Arquitectura Sistema de Navegação • • • • Intercepta as ordens escolhidas pelo sistemas de acções. Decompõem-nas numa sequência de movimentos que envia para o Sistema Motor. Permite uma representação mais conveniente no Sistema de acções. Alivia-o de implementar as suas decisões. A. Paiva C4 - Arquitectura Sistema Motor • Responsável por tornar a criatura visualmente credível • Permite - Gestos simples - Locomoção - Simular a atenção da criatura, através do olhar. • Utiliza grafos de pose. A. Paiva Videos A. Paiva Introdução C4 – Um Cérebro Virtual • Embodied Conversational Agents • • • Arquitectura Modelo FMTB REA MACK Referências A. Paiva Embodied Conversational Agents Humanos Virtuais com capacidades sociais e linguísticas para levar a cabo uma conversação face a face. Utilizam o corpo de uma maneira muito semelhante aos humanos. Ideais para suportarem uma interacção eficiente entre pessoas e máquinas. Sistemas de diálogo robustos face a ruido no reconhecimento de fala. Não é necessário treino por parte dos utilizadores. A. Paiva Embodied Conversational Agents Propriedades: • Reconhecem e respondem a entradas verbais e não verbais. • Geram saidas verbais e não verbais. • Lidam com funções conversacionais (dar a vez, dar feedback). • Dispõem de sinais que indicam o estado da conversa. A. Paiva Modelo FMTB Objectivos: • Analisando o processo de conversação humano e centrando a nossa análise no emissor e no receptor... • ... Conseguir estabelecer um modelo que estruture a interacção entre um humano e um E.C.A. Ideias Base: • Funções vs. Comportamentos na conversação • Sincronização • Divisão entre as contribuições proposicionais e interaccionais • As diferentes Modalidades na conversação A. Paiva Modelo FMTB FMTB – Functions • Dois tipos de contribuições: - Funções proposicionais. Correspondem ao conteúdo da conversa. Discurso informativo, gestos manuais, entoação de voz, etc. - Exemplo: Gestos que indicam tamanho na sentença “era deste tamanho”. - Funções Interaccionais. Pistas que regulam e mantêm aberto o canal de comunicação. - Exemplo: Acenar com a cabeça para indicar que se está a compreender o interlocutor. A. Paiva Modelo FMTB FMTB – Modalities • Possibilidade de usar várias modalidades de comunicação simultâneamente. - Fala, olhar, gestos. • • Olhos focam a atenção do interlocutor. Mãos ajudam a retirar ambiguidades e a descrever localizações. - “O café fica ali.” - “Passa-me aquela camisa.” A. Paiva Modelo FMTB FMTB – Timing • • Pessoas assumem que acontecimentos síncronos têm significado. O significado de um simples acenar pode depender da altura em que ocorre na conversa: - Um acenar de cabeça no preciso momento em que o emissor pede feedback revela que o receptor está a compreendê-lo! - Um atraso em acenar a cabeça por parte do receptor pode significar discordância. A. Paiva Modelo FMTB FMTB – “Behaviours • • are not functions” A mesma função comunicativa nem sempre se mapeia no mesmo comportamento. O mesmo comportamento nem sempre serve a mesma função. Funções: Comportamentos: Reagir a uma pessoa Lançar um olhar breve Desviar-se da conversa Olhar em redor Despedir-se Acenar com as mãos, Acenar com a cabeça Pedir Feedback Olhar para o interlocutor, Levantar as sobrancelhas Fornecer Feedback Olhar para o interlocutor, Acenar com a cabeça A. Paiva REA REA (Real Estate Agency) é um ECA no domínio das agências imobiliárias. Tem uma base de dados com casas à venda. Mostra imagens tridimensionais das casas e quartos. Duas câmaras permitem detectar a posição da cabeça e das mãos do utilizador. Utilizador fala com a REA através de um microfone. A. Paiva REA - Arquitectura A. Paiva REA - Arquitectura Input Manager • Recolhe dados das várias modalidades. • Decide se requerem reacção imediata, ou processamento deliberativo. Hardwired Reactions • Lida com reacções espontâneas aos estímulos recebidos. • O agente pode seguir o utilizador com o olhar enquanto está a processar o que dizer. A. Paiva REA - Arquitectura Action Scheduler • É responsável pelo escalonamento dos eventos motores a serem enviados à figura que representa o agente • Uma função crucial é sincronizar as acções entre todas as modalidades, evitando conflitos nos pedidos. Deliberative Module • Gere todos os inputs que necessitem de um modelo de discurso para serem devidamente interpretados. • Isso inclui tanto os comportamentos interaccionais como os proposicionais. A. Paiva REA - Arquitectura Understanding Module • Integrar as diferentes modalidades numa única representação semântica. • Comportamento -> Funções Decision Module • Interactional Processing • Propositional Processing • Response Planner Generation Module • Funções -> Comportamento • Gera accções primitivas (gestos,discurso) • Envia-as para o Action Scheduler e monitoriza a sua execução. A. Paiva REA - Exemplo Mike aproxima-se do ecrâ. Rea está virada noutra direcção. Rea vira-se, olha para Mike e diz: “Olá, em que posso ajudá-lo?” “Procuro uma casa perto do MIT.” “Tenho uma casa para lhe mostrar.” Aparece uma imagem da casa no ecrâ. Rea olha para a casa e novamente para Mike. “Fale-me sobre ela.” Rea olha para um sitio distante enquanto decide o que dizer. “É grande.” A. Paiva REA - Exemplo Mike levanta as mão indicando que vai falar. Rea para e espera. “É muito longe?” “Fica a 5 minutos da estação de metro” “É muito grande?” “Tem 4 quartos, 3 casas de banho…” Mike interrompe Rea que para de falar imediatamente. “Onde é que fica o quarto principal?” “No andar de cima.” “E a casa de banho principal?” “Ao lado do quarto” A. Paiva Agentes Pedagógicos STEVE Carmen VICTEC A. Paiva Referências Marques, A., Personagens Sintéticos – Uma Perspectiva Panorâmica. Bates, J., The Role of Emotion in Believable Agents. Cassell, J., More Than Just Another Pretty Face: Embodied Conversational Interface Agents. Cassell, J., Embodied Conversational Agents: Representation and Intelligence in User Interface. Cassell, J., et Al., MACK: Media Lab Autonomous Conversational Kiosk. Cassell, J., Stocky, T., Shared Reality: Spatial Intelligence in Intuitive User Interfaces. Blumberg, B., et Al., Creature Smarts: The Art and Architecture of a Virtual Brain. Blumberg, B., Kline, C., The Art and Science of Synthetic Character Design. A. Paiva